I want to build a web blog from semi-scratch. I consider myself an experienced software developer, but I have tiny knowledge in web programming.

"You have no power here." But seriously turn back now before you get sucked into the black hole of web development and the hipster world of framework/library fanboyism.

For a blog I suggest learning how to use CSS grid systems such as bootstrap or yahoo's purecss, bonus points for not using bootstrap. There are a ton out there, pick one and learn how to place elements on the page. And make it mobile responsive for bonus points.

From the javascript side: Actually first you'll probably want to set up some sort of web server using something like Node... Might as well use Express while you're at it. Do you have NPM? Better be using some version control too. Sweet now that you have a simple web server set up you'll probably want to hook up a database to store your s.o.'s posts. Time to decide between SQL or NoSQl. For sake of simplicity let's say you go with MongoDB. Cool (or is it not cool anymore? who cares). Now you'll want to make some templates for the types of documents you'll be storing. Enter Mongoose. To tie it all together you'll probably want to use Mongoskin. Speaking of middleware, it's probably a good idea to toss Connect in there. Now there are of course some missing things but you pretty much have all you need to get something up and running but wait, what's all this talk about angular and react, what about ember, knockout, meteor, jquery etc etc? You probably want to render something client side right? And what about routing and login credentials...Passport? wait there's routing on both the front and back end? Build automation? Testing? But I just want to make a simple web blog man...

What happened to just one file for html, css, and js? Wtf is this monster?

Anyways, sorry for the rant, I just needed to vent. The aforementioned is partially a joke and partially the dark reality. Looking back on this hell that I trudged through I just want to give you a fair warning that you can make it easy on yourself or you can make it hard.

I have a skeleton web app setup you can fork/clone/look at on github. It's not a one person blog so much as a potential scalable web app starting point. It is more complicated than it needs to be, which will force you to look back and forth between things to see how certain pieces of code interact. It's not fully functioning or pretty to look at:

https://github.com/dangerrangerous/mean-api

I suggest checking out free it ebooks for web development in the language of your choice. Godspeed.

/r/learnprogramming Thread