

Building a Web App From the Ground Up - kevinmcf

You are a blank slate and want to learn how to build a web app from the ground up.<p>1. What language(s) are you learning?
2. What Tools are you using?
3. What Infrastructure&#x2F;Programs are you building it on? (ie What database, hosting, web&#x2F;app server, etc)
======
kirang1989
Language - Python

Framework - Flask

Database - MySQL (since I've learnt about it from my university)

Hosting - AWS or Webfaction

No particular choice of infrastructure. Since I'm learning to build a web app
from scratch, I'll tend to focus more on getting various pieces together.

------
havanna993
I'm a fan of PHP, it was the first scripting language I've learned and I still
feel pretty comfortable using it.

When developing web applications I still stick to a LAMP stack:

Language: PHP on server-side, JS on client-side

Server: Apache

Database: MySQL

Frameworks: Basically any MVC framework

Hosting: Completely up to you

If you want to built a good web application you have to deal with:

Object-orientation, Dependency Injection, MVC, Design patterns, etc.

If you follow the most common coding principles, DRY, Separation of concerns,
etc. you'll produce clean, maintainable code.

------
malandrew
Javascript. You have to know it for a web app, so start there. Build the
front-end in it. Once you get decent at the front end, you'll know a lot more
about programming so you then make a much more informed decision regarding a
backend language and framework that works for you. Could be ruby, python, php,
clojure, scala, etc. or even more javascript. Delay the decision of which back
end to learn to the last responsible moment.

~~~
askar
That's a great advice. I would say, in this day and age, if you are starting
to learn then learn it correct. Learn a JS framework like Angular and build
your client as purely browser based and learn another framework such Ruby-on-
Rails or Laravel or CodeIgniter to just serve JSON data for your JS client. I
think that's the route to go as your data feeds can be leveraged on many
different mobile clients as well.

------
rartichoke
I'd definitely go with AWS for deployment only because if you never signed up
before you get a micro instance for free for a year in most cases.

This gives you an ability to deploy multiple toy projects without having to
fork out $5-10/month which isn't a ton but it's still an expense.

------
akhaumeallen
java/jsp, JSF framework, Mysql, apache server.

