Hacker News new | ask | show | jobs
by workingandtired 4094 days ago
The fortunate thing is that you have a fair amount of options when it comes to technologies for a web app. I personally have used php for years and have been working extensively with ruby and python recently. Here are some general things to consider.

Language choice.

For a long time PHP was the defacto standard. It has a lot of resources and tutorials plus the advantage of a huge amount of hosting options. However, I'm the last five to ten years, the field has opened up. Ruby and python both have strong communities and with app hosting solutions like Heroku, it is just as easy to get them up and running. All three are fine choices and if you're looking to make a career of web programming, you'll find plenty of jobs for all three.

Frameworks.

Frameworks are essentially scaffolding you can build your app around. The benefit is that you can get up and running pretty fast with them. Ruby has rails, python has django, and php has a plethora, with laravel being my favorite right now.

The downside of these is that they add another level of complexity to your app. In addition to learning the basics of a programming language, you also have to learn about routes,models, controllers, etc. While this information is very beneficial to have, it could overwhelm when you're just starting out.

If you want an app working fast, you can try one of the frameworks. However, if you want to understand the language more fully, at the cost of time, you may want to try your hand without a framework. If you do choose that route, php may be the best choice, since it was the only one designed specifically with web programming in mind. I'd reccomend php with mysql (using PDO for database interactions).

I'm currently on mobile right now, but if you'd like any more resources I can reply when I get to a real computer.

1 comments

Thanks for the answer. Yes, the ammount of solutions is staggering, however it makes the choice a little harder.
Well, if you have any additional questions or need a direction to start in, I'd be more than willing to help.

From your basic description, the simplest way to be to just have straight PHP with MySQL/postgresql. And I believe you mentioned in another response thinking about using a Raspberry Pi, it looks like a LAMP stack might be easiest to set up, so another point in favor of PHP.