Re: Selling Software Written In Euphoria
- Posted by ghaberek (admin) Mar 10, 2012
- 1856 views
I've been reading a lot lately about professional software development, selling your own software, and how to form a software company (e.g. Micro ISV). And I'll tell ya, it ain't easy! I agree with everything Derek already said above, so I'll build on that and add in my own two cents.
A few points I've gathered so far that I find compelling:
- People do not necessarily want to buy software, they only want to solve a problem and/or make their life easier. If your software can do those things for them, do it well, and is affordable, then you're a shoo-in. Don't look for software that needs written, look for problems that need solved (even if that problem is poorly written software).
- You're generally better off trying to appeal to a mass market rather than a small niche (e.g Euphoria is a niche language compared to Python or Ruby). However, there is a balance here because your software may start with a niche and grow into a much larger market (e.g. Facebook went from college students to the entire world).
- Let your interface build your code, not the other way around. Too many programmers "design" their own interfaces and it shows. Every now and then you see a few folks who can program and design, but it's rare. Find a partner who can help build the look-and-feel of your application so you don't over-programmer-ize it.
- Documentation is key! Design everything on paper first: the interface, the event handlers, the file and/or database I/O routines, etc. Every aspect should be outlined first so you have something to refer back to while coding. This step is very difficult to get started on but well worth the effort!
- If you are writing software for a client, you must draft a specification and have them agree to it before you begin writing any code for them. Clients are picky and don't know what they want, so things have to be in writing or you'll end up in development hell. If you're writing a program for someone else, you'll here the phrases "I just need to" or "can't you just" so many times your ears will bleed.
A few things I think Euphoria needs to become a "prime time" development language (excuse me if I'm reiterating anything, but these are still topics I'm concerned about):
- Lower cost of entry. I don't mean monetary cost, but cost of time and effort. Getting started on Windows is pretty simple, but for Linux it can turn into a nightmare very quickly, especially if you're trying to use wxEuphora as well. This would be much easier if we had release packages available and public repositories for the major distros.
- A modern, mature, stable, and professional IDE, complete with a strong GUI designer. I really think this can be Euphoria's bread-and-butter and it seems quite possible with wxEuphoria. Something like Visual Studio, but for Euphoria, complete with project management, syntax highlighting and error checking.
- Exception handling (throw/catch, etc.), better reflection (variable_id(), direct access to the symbol table, etc.), and better support for external libraries. One thing I would really like is the ability to build and then directly include a Euphoria DLL.
-Greg