Learning Web Development

6 thoughts
last posted Nov. 3, 2014, 8:01 p.m.
get stream as: markdown or atom

A friend of mine is trying to transition out of typical corporate/enterprise development into cloud-based web application development. He is a top-notch engineer and I have no doubt he can make an excellent web developer but just doesn't know how to start learning and building up an online presence demonstrating his capabilities.


I was advising him on the phone of how to go about this and thought it worth while to brainstorm here for others.


My suggest centered around the idea of project-based learning. This is how I learn best and how I think most experienced engineers learn other technologies best as well.


I told him that he should do the following:

  • Start a blog, or even better, get signed up on ThoughtStreams.
  • Announce your plans and goals (e.g. create one new web app per week or per month)
  • Generate a list of ideas to implement. This do not need to be unique. In fact, they should be, the point is to not create new things but to simply build what is already easily understood so you can focus on the technology stack; instead of what to build, you focus on how to build.
  • Create a new GitHub repo for each project.
  • Make unit level commits as you learn and build each project.
  • Document what you do through a weekly blog post and/or as-you-go stream of thoughts for each project.
  • Consider screen-casting tips as you get more comfortable.

This will give him:

  1. Experience
  2. Learning
  3. Content that helps other people learn and demonstrate your capabilities.
  4. Fun things to do in his off hours that are a reinvestment in himself.

Some initial ideas I gave him for projects in learning AngularJS and/or Django/Flask:

  • Chess Game
  • Twitter Clone
  • Blog

I suggested his brainstorm up a dozen or so web application/game ideas that are well known and that interest him before he starts so he doesn't get blocked on coming up with a new idea. Focus less on an idea being good or bad, the what it is is not important.