Building Web Applications from Scratch
Building a web application can seem like a daunting task. There's so much to to learn! But it can be simple, if you take it step by step.
Who am I?
I started programming when I was quite young - before, in fact, my family got their first computer (an Apple //c in 1985).
Over the years I moved through many areas in computing: embedded MCUs, OS internals, demo scene, networking, web development, and more.
I've been developing with Django since not long after 0.91 was released. I used the old ORM API, and saw the landing of the "magic removal" branch, which was probably the largest change to Django ever. For most of that time, I've been helping out in the #django IRC channel on freenode.net.
Why this book?
Over those years, I found I was answering the same questions time and again, and often having to point out the same obvious things to people. I finally decided it was time to write these things down in a form that let people run through from start to finish, and let me get on with helping people with the hard stuff.
Oddly, I've found the biggest hurdles for people to overcome are pre-conceptions and misconceptions they've learned from other frameworks. The pre-conceptions tend to be: the documentation isn't worth looking at, things are going to be complex/hard.
The misconceptions tend to revolve around how the web works. Crazy as it sounds, many people still don't grasp even the basics of how HTTP works, or the separation of Client Side and Server Side. This is why this work starts with a basic overview of HTTP; some people really need it!