Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

The rule I try to follow is to keep things as simple as you can. So, the levels of complexity for writing an app might look like this:

Level 1: command line program. Usable for yourself and others who know their way around the shell. Great for simple tools.

Level 2: Desktop GUI. More complicated, but necessary when you have non-technical users.

Level 3: Webapp with simple browser interface. When you need a GUI and need to allow access to many users all at once (possibly access to the same instance of the app). Drawbacks are that it's slow (much slower than a regular desktop GUI app) and relatively clunky. Also, you need a webserver to run it on, and the setup time that goes along with that. Also keyboard commands probably won't work and so there will be a lot of mousing around for the user.

Level 4: Webapp with some kind of Ajaxy or Javascripty client side. So, you need this even higher level of complexity when you have non-technical users who demand a prettier interface but the app also needs to be usable by lots of people on the net at once. Drawbacks are the same as with a regular webapp but also include a much more complex design, more maintenance, and more testing with different browsers.

The rule is, you don't go up the complexity ladder if you don't have to.



Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: