Cant figure out what this process is...

by KKM017
5 replies
I have an idea for a much-needed software product. The only problem is that I don't know where to start researching how to make it or to outsource it.

An example of this is when you fill out a government form. There is a web page where you fill information into boxes (i.e. name, date of birth, etc.). Then, after pressing continue or enter, you are given a pdf to download that has the form you were filling out along with the info that you submitted.

Can someone point me in the right direction here?
#figure #fill out form #fillable #process
  • Profile picture of the author Janet Sawyer
    There is no need to create this, there are some good scripts out there already that do this.

    Take a look at machform MachForm – PHP HTML Form Builder
    {{ DiscussionBoard.errors[7674495].message }}
  • Profile picture of the author kevintb7
    I dont think either of your responses was what the OP was talking about. They were saying convert commonly used paper forms to be a web form, and when you complete the form it gives you a pdf to print so you can mail it in, etc?

    You would probably want to outsource this work, its not super difficult, but yet it would take you more pain and frustration than its worth to get it going if you have never coded a web app before. You could get a developer to make you a system that you can use to produce these webforms, I assume this isnt a one time use? You want to make this a web app or software for lots of forms?

    I actually think this is interesting, I've never written a web app that creates pdfs, Im going to look into it .
    {{ DiscussionBoard.errors[7877679].message }}
    • Profile picture of the author cfountain
      I am a professional web programmer for a Fortune 50 company by day, and an internet marketer by night. After 15+ years working from both sides of these things, I have some advice to help you get it done right the first time.

      You should consider outsourcing this from the start. This seems to be a fairly complex application. This is probably a not a good project for a beginning programmer.

      You should spend considerable time working out the exact requirements and capabilities of your software before you start shopping for a programmer.

      1. Application Mockup

      Create a mockup of your application. I highly recommend Evolus Pencil for this. I use it before I start coding any project. It helps to work out the screens and workflow or an application. It's free. It's open source. It's awesome.

      2. Document Everything

      This is the most critical step. Many people tend to make shortcuts here. They just want to kind of tell the developer what they want and expect it to magically appear exactly as they immagined it. This is the most important step. The better you document going in, the smoother your outsourcing experience will be. It could really make or break it. You and the developer need to be on the same page. This documentation will help you ensure that your application functions correctly and it will help the developer give you a realistic quote and timeline.

      All of the functional requirements should be very well documented. This is the heart of your project. If it isn't listed here, then don't expect it to be in the final result the developer comes up with. You should base any contractual agreements around this functional requirement/feature list.

      You should also document the screens, actions, and fields in your mockup as much as possible to give the developer a clear idea of your idea. You should really conisder this information to be a guideline. You need to leave flexibility here for the developer to add/remove/rearrange specific fields or behaviors to best acheive the desired functional requirements with the greatest user experience. This is a programmer's area expertise. Your input is important and welcomed, but understand that there are limitations and difficulties that may require things to be implemented a different way than you imagined.

      Your Application Design document would ideally include the following items:

      Overview
      - (What) Application Description: What does it do.
      - (Who) Users: Who is the intented user audience.
      - (How) Target Architecture:
      + Desktop (PC, Mac, and or Linux)
      + Web Application
      + Mobile

      Features and Requirements:
      - Name/ID
      - Description
      - Inputs/Prerequisites
      - Outputs/Desired Results
      - Importance (must have, nice to have)

      Workflows:
      - Document related user workflows, business processes, checkpoints
      + Example: user logs in -> enters xx into screen 1, app produces xx, user downloads xx on screen 2.
      + Order is received -> agent processes order -> order is shipped

      Screens:
      - Name/ID
      - Purpose/Description
      - Fields
      - Actions
      - Next Screen
      - Related workflow

      Actions:
      - Name/ID
      - Related Screens
      - Related Fields/Buttons
      - Type: Save, Delete

      Fields:
      - Name/ID
      - Purpose/Description
      - Type: text, checkbox, combobox, radio, button, etc.
      - Label
      - Data Type (Text, number, phone numbers)
      - Any Special Formatting
      - Validations (Required field, must contain only numbers, etc)
      - Related Screen
      - Related Action


      3. Locate a Developer

      Elance.com, Freelancer.com, and Odesk.com are great places to find potential developers on the global marketplace. This may work out well for you, especially if you have done a good job of documentation. However, it can sometimes be difficult to work with offshore or foreign developers. Communication and time differences may pose headaches. It is not for everyone. You may find it more confortable looking locally for a developer.

      A great place to find economical local developers, is to locate a computer user group. User groups are local events where professional developers, students, and other technically minded individuals get together to discuss programming or general computer related topics. They are usually organized as an educational and networking events. They are almost always open to the public and welcome to new members who might be curious or just want to learn something. Many of the folks that attent these events are experienced professionals with a day job who are open to moonlighting on the side. Many will be open to working for less or accept an alternative payment arrangement.

      The best place online to search for a computer user group is Meetup.com. Ideally, you should look for a group focused on web and/or application programming languages such as: Microsoft .NET, PHP, Perl, Java, Cold Fusion, or C++.

      If you don't find one on meetup.com or other online search, you can ask around at your local bookstore or search local independent newspapers. You might also consider organizing one on Meetup.com if their is not one already around.

      You may also have great luck asking around on a programming focused forum or even your LinkedIn or Facebook contacts. Chances are somebody you know has a good candidate in mind. If you keep at it, you will locate potential candidates near you.


      4. Protect Yourself

      Regardless of how you find your developer candidates, you should still properly screen them. Try to pick one that has programmed some complex software before and ask them to show you a demo.

      I would recommend having them sign a non-discloure / non-compete agreement before you provide specific details. Don't worry about offending them. This is standard business process. Anyone who is not comfortable with this is not a professional and would not be a good candidate. Just go on to the next candidate.

      You need to properly protect yourself from someone stealing your idea after they see your application design. A talented developer could just run with your idea on their own. They need to know you are serious about protecting your idea. Legal agreements are the best way to send that signal.

      5. Write a Contract

      You should sign a contract with your developer to protect both parties. This contract should contain your functional requirements, deliverable timelines, payment methods. You could be flexible with the timelines and payment if needed. Instead of a specific end date, you could have monthly status checks and leave yourself an option to cancell if progress is not acceptible. Flexible payment could be a percentage of profits from sale instead of upfront payments. You could use a service like JV features at JVZoo.com to ensure propery percentages are divided properly.

      Good luck to you!
      {{ DiscussionBoard.errors[7887749].message }}
  • Profile picture of the author David V
    @KKM017 - This is a html to pdf that is commonly used in many themes, websites and plugins to do what your asking.
    It will help you convert an html form to pdf after submission.

    * HTML2PDF Library - main class
    * HTML => PDF convertor
    * distributed under the LGPL License
    * @author Laurent MINGUET <webmaster@html2pdf.fr>


    ....which can be found on their website.

    @cfountain is correct, you will need to hire someone to integrate this, it's not turn-key.
    {{ DiscussionBoard.errors[7888447].message }}
  • Profile picture of the author Andrew H
    HTML to PDF is an option. However you could simply just submit the form fields to a class like fpdf to create the pdf for you (using PHP).

    I use FPDF for client systems that require pdf's for things like invoices (although you can make any PDF with it).

    FPDF
    Signature
    "You shouldn't come here and set yourself up as the resident wizard of oz."
    {{ DiscussionBoard.errors[7888513].message }}

Trending Topics