PDA

View Full Version : Looking for programming/development help



Spittybug
05-21-2012, 11:03 AM
I've had an idea for a while now and I'm thinking it's time to act on it. There are a lot of talented people in this community and I'm sure somebody out there may be interested or knows someone that would be.
Without yet discussing content details (would want some paperwork in place first), generally speaking what I'm looking to do:



USB stick based
Self contained - no need for user to have specific software on their machine. Anything needed to for app must be on stick
Preferably platform indifferent (Mac or PC)
No web interaction
No phone app
MUST be aesthetically pleasing
MUST be super easy to navigate (think,could Grandma do it?)
Must be able to capture and retain input from user "A" in the form of free form dialogue boxes and/or simple forms. Must be editable
Inputs will be text or numbers but perhaps jpegs or or .mp3 files (not an initial requirement)
User "B" must then be able to see user "A"'s inputs. User B is merely a recipient of the information that user A has chronicled. No need for edit protection or anything fancy
Would be great if it were to auto run, but not an absolute requirement
Possibly have one "page" that needs password protection (not an initial requirement)
I envision this as something like a multi page website contained on the stick. The main screen serves as a giant navigation page, each page has a different topic. User "A" will be providing information on those various pages. User "B" is educated by user "A"'s content
Think of this as anti-web. A means of transferring information from one user to another with the perceived benefit of no cloud, no internet security concerns...... the old fashioned way


Pretty straightforward, right? Obviously this isn't about wiz bang technology. It's ultimately about marketing the application of it. The development cost is low, but the marketing more challenging. The potential market is very, very large.

What's the next step in terms of exploring something like this? Please, even if you aren't interested in getting involved, can you help me out by educating me on what skill sets/languages or specific talents I should be looking for in the right person? Thanks!

Owen.

Dangermouse
05-21-2012, 01:42 PM
The potential market is very, very large.
Owen.

well, it's not DeLorean specific then ;)

ccurzio
05-21-2012, 01:54 PM
Pretty straightforward, right?

No. Seriously, no. Not at all.

The "content" is what matters here. Your requirements are dead simple for something like a photo browsing app, but extremely complicated for something like a collaboration tool.

Without knowing what it is, it's impossible to determine what kind of effort would be required to implement it, or even if it's feasible.

Spittybug
05-21-2012, 02:22 PM
No. Seriously, no. Not at all.

The "content" is what matters here. Your requirements are dead simple for something like a photo browsing app, but extremely complicated for something like a collaboration tool.

Without knowing what it is, it's impossible to determine what kind of effort would be required to implement it, or even if it's feasible.

Thanks for pointing that out.....let me see if I can clarify.

The "data" that user A would be filling in would be textual. Think something simple like Q: What is your address? to which he would provide the answer in a text box. The answer in the text box now resides on the stick so that user B can see it. There is no collaboration in that user B is only reading what user A has documented. Not supplementing it, not changing it (no need to protect it).

The best analogy that I can come up with is basically the form you fill out when you first go to a doctor. It asks a bunch of questions on a page, you answer them. Some are check boxes, others are free form text entry. The "handing back" of the clipboard to the receptionist is akin to giving the stick to user B who then reads the answers. They will NOT be pulled off the stick or be made to integrate with any other system. The idea of .mp3 or .jpeg files was just in case there was a need to provide a means to archive a file on the stick. Again, no interaction other than viewing it.

Does that help? I'n not trying to be elusive or anything, it's just that the few individuals that I've shared this with really think that it has a good market potential and I don't want to be specific on the content in a public forum! With the right developer, a simple confidentiality agreement would be forthcoming.

ccurzio
05-21-2012, 03:40 PM
Think something simple like Q: What is your address? to which he would provide the answer in a text box. The answer in the text box now resides on the stick so that user B can see it. There is no collaboration in that user B is only reading what user A has documented. Not supplementing it, not changing it (no need to protect it).

The best analogy that I can come up with is basically the form you fill out when you first go to a doctor. It asks a bunch of questions on a page, you answer them. Some are check boxes, others are free form text entry. The "handing back" of the clipboard to the receptionist is akin to giving the stick to user B who then reads the answers. They will NOT be pulled off the stick or be made to integrate with any other system.

That already exists. PDF documents can do this. Text fields, checkboxes, dropdowns, every kind of form element can be embedded in a PDF and can be edited with anything that can read PDFs. Plus you can encrypt them, password protect them, all that jazz.

Spittybug
05-21-2012, 04:07 PM
I can build a spreadsheet to model the cash flow of a multi-billion dollar petrochemical complex (been there, done that), but I have no experience in creating things like I'm asking for.

How do I go about learning more?
Can it be made easy to navigate and free of menus, ribbons, etc. that would confuse Grandmas?
Freeware or must it be licensed?

Citizen
05-21-2012, 04:10 PM
A good-looking user interface could be easily done with html, but you need something to store the data. Something like MS Access, MySQL or SQL Server, only those would require storing an App on the stick, so that’s out.

Then I thought of maybe a Visual Basic App, because you could place the runtime (compiled) code on the stick. But you’d still need some sort of database. Access has both a good user interface and the DB behind it, but it too would need to be on the stick. The requirement that you can’t store any type of application on the stick (or locally on one’s computer) is the real stick-ing point, no pun intended.

So then I thought maybe straight text (non-indexed) data files would work, and so then the VB .exe file technique would work. But only for small amounts of data (wouldn’t be good for lots & lots of users, questions, answers & other data, etc.), as you need a real database management system for that.

Thomas

...

ccurzio
05-21-2012, 04:13 PM
I can build a spreadsheet to model the cash flow of a multi-billion dollar petrochemical complex (been there, done that), but I have no experience in creating things like I'm asking for.

How do I go about learning more?
Can it be made easy to navigate and free of menus, ribbons, etc. that would confuse Grandmas?
Freeware or must it be licensed?

Since it's a PDF, it can be and look like pretty much anything you want. And since it's a regular old form, grandmas that use computers already know how to use them. Point, Click, Type, tab to advance to the next field, whatever.

There are both free versions (PDF Forms Designer) and pay versions (Adobe Acrobat) of software to actually create the forms. Anyone with software that can read PDFs can generally open, edit, and save data in PDF forms.


Then I thought of maybe a Visual Basic App, because you could place the runtime (compiled) code on the stick. But you’d still need some sort of database. Access has both a good user interface and the DB behind it, but it too would need to be on the stick. The requirement that you can’t store any type of application on the stick (or locally on one’s computer) is the real stick-ing point, no pun intended.

So then I thought maybe straight text (non-indexed) data files would work, and so then the VB .exe file technique would work. But only for small amounts of data (wouldn’t be good for lots & lots of users, questions, answers & other data, etc.), as you need a real database management system for that.
So much for that whole platform-agnostic approach then, eh?

Citizen
05-21-2012, 04:18 PM
So much for that whole platform-agnostic approach then, eh?

I'm not much of an "Apple" guy, but I understand all of these can run on either platform...could be wrong though, I'm not too proud to have someone correct me on this point...

ccurzio
05-21-2012, 04:19 PM
I'm not much of an "Apple" guy, but I understand all of these can run on either platform...could be wrong though, I'm not too proud to have someone correct me on this point...

Unfortunately you're incorrect. Windows applications run on Windows. Mac applications run on Mac. A program created in Visual Basic is a Windows application, and will only run on Windows.

A PDF is just a document.

Citizen
05-21-2012, 04:26 PM
Unfortunately you're incorrect. Windows applications run on Windows. Mac applications run on Mac. A program created in Visual Basic is a Windows application, and will only run on Windows.

A PDF is just a document.

True enough. But depending on the OS & drivers on the host computer, Windows apps can run on Macs, and (some) Mac apps can run under Windows. Or so I hear. Again, I'm not the expert, and I'll kindly yield to your expertise, that's just what I've heard.

On the PDF idea, you still need an Adobe App to develop the thing, and at a minimum a PDF reader. So doesn't that defeat the purpuse of not have an app stored on the stick? Perhaps I don't have all of the requirements.

ccurzio
05-21-2012, 04:35 PM
But depending on the OS & drivers on the host computer, Windows apps can run on Macs, and (some) Mac apps can run under Windows. Or so I hear.

Sorry. Still wrong. Windows apps run on windows and Mac apps run on Mac.

(There's emulation and virtualization of course but those things are waaaaay outside the scope of this discussion.)


On the PDF idea, you still need an Adobe App to develop the thing, and at a minimum a PDF reader. So doesn't that defeat the purpuse of not have an app stored on the stick? Perhaps I don't have all of the requirements.

You don't need an Adobe app to develop them (I already pointed out an open source package to do so) but even still, you also need apps to do program development. That is a silly argument.

And aside from the fact that OS X has always had the built-in ability to view/create PDFs, you would extremely hard pressed to find a windows box that didn't have Acrobat Reader installed.

Citizen
05-21-2012, 04:38 PM
All good points, no argument here! I yield to your expertise.

T.

Spittybug
05-21-2012, 05:18 PM
Wow that exploded quick! But wait a second..... there can be anything necessary ON THE STICK, just not needed to already be on the user's computer. It must be self contained - on the stick. If that means that something must temporarily load off the stick into the computer, I would think that would be OK as long as it did it without user involvement and then removed itself.

As far as quantity of data is concerned, were talking the rough equivalent of what 2 or 3 patients worth (going with the same analogy) would fill out. There is only 1 user "A" that is providing data. Any user "B" that is in possession of the stick would be able to see what's on it. It really is only intended for 1 user "B", but it's plausible that they would take it somewhere else and pop it into a different machine to show someone the contents..........

I need to go back and digest what you guys have been saying..... thanks, and keep asking for clarification if I'm not being clear enough.

Kevin
05-21-2012, 05:52 PM
I'd say from some of the requirements, a PDF might not be enough, especially for these:

- "Inputs will be text or numbers but perhaps jpegs or or .mp3 files"
- "Possibly have one 'page" that needs password protection" - sure you can password-protect entire PDFs, but single pages?
- "Must be able to capture and retain input from user" - the user experience for this isn't ideal and may involve having the user create whole new pages in the PDF, grandma may be overwhelmed

Plus just from the sound of the workflow and what all is expected of the user experience, this may need to be a custom app.

The conversation about cross-platform apps is correct, but that doesn't mean you can't have two apps developed, one for Windows, one for Mac, then have the USB stick's auto-launch the correct one, happens on CD-ROMs all the time. You can create cross-platform applications using the common practices (data logic is shared, UI logic is unique), so it's not like you're asking for two apps to be written from scratch. You may be able to achieve this even simpler on the development end by writing the app in Java (whose goal is to write code once, and run it on any platform), but then that's assuming everyone has Java installed.

So I'd say you'd need to talk to a developer who can write cross-platform applications.

Or, you can make this a web application, which can be much more accessible to your users and be much cheaper to develop and maintain. I understand if it can't be online for various reasons, but it really is the more flexible, cheaper way to go, especially if you need it to work cross-platform and user experience is so important.

Spittybug
05-21-2012, 06:12 PM
Sorry if this is a stupid question, but can a "web app" be created locally and not on the web? A key selling point is the perceived security of NOT going to web.



Don't worry about .mp3 or .jpgs at this point. They wouldn't be "answers" to any of the form questions. I was just thinking ahead that one of the features might be simply a parking space for some files or maybe letting user "A" set the background from an existing .jpg file. Don't let this be a deal killer
If password protection had to be at whole file level, not at the page level, not a deal breaker
Capture & retain; crucial

Kevin
05-21-2012, 06:27 PM
Sorry if this is a stupid question, but can a "web app" be created locally and not on the web? A key selling point is the perceived security of NOT going to web.

No, in order to execute the code that handles the data logic, it would need to run software that would be hosted on a web server, unfortunately.




Don't worry about .mp3 or .jpgs at this point. They wouldn't be "answers" to any of the form questions. I was just thinking ahead that one of the features might be simply a parking space for some files or maybe letting user "A" set the background from an existing .jpg file. Don't let this be a deal killer
If password protection had to be at whole file level, not at the page level, not a deal breaker
Capture & retain; crucial


In that case, a well-designed PDF may work, something that can guide the user along so they know what to fill in and how to save the document once they're done. You'll then need a way to "reset" the USB stick, which can simply be dragging a fresh PDF on to the stick for a new "patient".

If you need anything extra, like a way to search a database of captured data, or data exporting, or anything extra outside of what a PDF is meant to be, you'll need to find a developer with cross-platform experience. I guess I'm just worried about you being limited by a PDF, but I also want you to save on development costs by going with a PDF.

Spittybug
05-21-2012, 06:50 PM
Sorry, didn't mean to take the analogy too far. There is only 1 user "A" that will be inputting data. It was just an approximation as to the quantity of data that I was making reference to.

Spittybug
05-22-2012, 10:28 AM
I've been looking at some YouTube videos and other training tutorials for PDF forms. I think that is the correct direction from what I can tell. All of the data gathering requirements look like they can be accommodated using such. How they are all managed, navigated to and generally encompassed into a cohesive package to work off the stick is what I can't immediately get my head around. It can't rely on "Grandma" knowing how to do anything other than stick it in the computer and follow some VERY basic on-screen navigation.

So does it look like I need to find someone with Adobe Acrobat skills along with JavaScript? If I can't find the right person(s) here in these forums, can you guys help me use the right words and the right skill set requirements so that I can intelligently search elsewhere? Thanks.

Kevin
05-22-2012, 11:01 AM
How they are all managed, navigated to and generally encompassed into a cohesive package to work off the stick is what I can't immediately get my head around. It can't rely on "Grandma" knowing how to do anything other than stick it in the computer and follow some VERY basic on-screen navigation.

I was also a bit worried about this part. You can set programs to auto run off the USB stick, but opening documents won't work on some versions of Mac and Windows. You would also need some sort of way to prompt the user to install Adobe Acrobat if they're on Windows and don't have it installed. A possible solution is to have a program written to launch the PDF and also check to see if Acrobat is installed, and have that program run when the USB stick is inserted. There just has to be something seamless between the user and opening the document for editing.

As far as navigating within the PDF, you may need someone with design/user experience (UX) skills to make this easy and intuitive. You should be able to make links within the document to jump to other parts of the document that can serve as on-screen navigation.


So does it look like I need to find someone with Adobe Acrobat skills along with JavaScript? If I can't find the right person(s) here in these forums, can you guys help me use the right words and the right skill set requirements so that I can intelligently search elsewhere? Thanks.

Yes I'd say Adobe Acrobat skills and cross-platform development skills, which is typically with Java (not JavaScript) or C, and possible design/UX skills. You may want to talk to a consultant, someone who you can get to sign your NDA and then advise you, maybe there will end up being a better solution out there that we didn't cover.

ccurzio
05-22-2012, 11:36 AM
I was also a bit worried about this part. You can set programs to auto run off the USB stick, but opening documents won't work on some versions of Mac and Windows.

Autorun.inf has always supported auto-run of registered file types.


I'd say Adobe Acrobat skills and cross-platform development skills, which is typically with Java

I'm going to put this out there and say you'd have a much easier time finding a machine without Java installed (or at least the required JRE) than you would a machine without a PDF reader installed.

Kevin
05-22-2012, 01:05 PM
Autorun.inf has always supported auto-run of registered file types.

According to my research, documents don't seem to work on earlier versions of Windows. Either way, you'd have to count on PDF being a registered file type.


I'm going to put this out there and say you'd have a much easier time finding a machine without Java installed (or at least the required JRE) than you would a machine without a PDF reader installed.

True, may need to focus on someone who can create a native app for each platform. So to alter the language requirements, maybe say "native cross-platform development experience". You don't want a bloated Java program anyway.

skynet
05-22-2012, 01:17 PM
A virtual machine and a portable vmplayer for linux, win and mac?

Spittybug
05-22-2012, 02:41 PM
So does this mean that you helpful guys answering my questions do not have the correct skill sets, or you just aren't interested? Know anyone?

Kevin
05-22-2012, 03:54 PM
So does this mean that you helpful guys answering my questions do not have the correct skill sets, or you just aren't interested? Know anyone?

I don't really have desktop application programming skills, I'm more of a web/iOS developer by day. And honestly, I don't know of any freelance or agency cross-platform app developers personally, I mainly just know other web, iOS and Mac developers. Wish I could be more helpful and point you to a good development shop. You could try posting on a few job boards, developers in my field at least tend to look at these in particular:

http://www.authenticjobs.com/
https://jobs.github.com/
http://careers.stackoverflow.com/ (less-friendly toward freelancing)

DMCVegas
05-23-2012, 07:36 PM
In order to make it Mac & Windows Friendly, you've got the following things to consider:

*USB Stick must be formatted for FAT-32 (Windows can't read OS Extended-Journaled, and NTFS is itself a proprietary file system by Microsoft that Apple will not include a license for, though you can obtain one from 3rd parties).
*For Windows you'll Simply need an autorun.inf file to start the executable.
*For OS X you'll just need the auto launch that automatically launches the internal folder that contains .app file.
*Auto-launching you files is a great idea to keep the extensions by Spotlight and others hidden from the user.

Now Java is a great platform to run software on, because it is universal. That's great and all, but there is one HUGE thing that you're overlooking with a USB stick as a distribution platform, and that is that unlike a CD or DVD that are Read Only by default, you're leaving yourself open for some serious problems here:

You might end up spreading a virus from an infected Windows machine. Aside from financial liability, that also risks your reputation.
People are stupid. Most don't know that you're supposed to unmount a USB drive before manually ejecting it. Because of this you're gonna end up constantly re-imaging USB sticks because of corrupt data. And if you write-protect it, you're not going to be able to store data on the drive. Which leads me to...
Writing customer/client data onto shared/publicly accessable drives opens your ass up to some SERIOUS liability. If I were you I'd simply rather write a Java-based piece of software that simply transmits the data directly to a remote server rather than storing it on the drive. Which also leads me to...
You're gonna have confused people when their firewall/security software starts triggering alerts about this 3rd party app that is trying to connect to an external server. You could easily overcome that with a brief set of instructions though, but be prepared for some extra tech support for some people.


I'm not a programmer, but I have spend several years doing QA for various user interfaces in hotels and can tell you what hurdles you're going to run into based upon what you've provided. That way you'll save on development spending by already knowing what you need.

Tillsy
05-24-2012, 05:23 AM
*For Windows you'll Simply need an autorun.inf file to start the executable.


Not for more than a year now - Microsoft finally realised having something automatically execute on an operating system that is usually running with full administrative rights and on a platform with an archaic and easily exploited architecture is a pretty stupid idea, and pushed out an update that disabled that functionality in all versions of Windows. :nono:

skynet
05-24-2012, 07:06 AM
Not for more than a year now - Microsoft finally realised having something automatically execute on an operating system that is usually running with full administrative rights and on a platform with an archaic and easily exploited architecture is a pretty stupid idea, and pushed out an update that disabled that functionality in all versions of Windows. :nono:

...if the update is installed. A lot of users simply disable automatic updates.

Tillsy
05-24-2012, 07:58 AM
...if the update is installed. A lot of users simply disable automatic updates.

We all know what you're up to skynet - we're ready for you :gun: