Practice Makes Perfect: Learning to Code by Building 180 Web Applications in 180 Days

there is no try

Jennifer Dewalt is on a mission: to learn to how to code. She’s doing it by building a web application and then posting it online, every day, over 180 days. Day 1 was on April 1st this year, and on that day, her assignment was to make the home page for her learn-to-code project. Since then, she’s gone on to make web applications of increasing complexity, from a dice game (day 12) to Pong (day 47) to a weather app (day 49) to a commenting system (day 75) to an animated terms of service (day 99) to a game where you get to shoot flying strips of bacon (day 115).

She could’ve signed up for a course or “boot camp” — there are no shortage of these things in San Francisco, where she’s based — but she instead to Yoda’s advice to “do, or do not”. She made sure that she’d set aside enough money to live on while teaching herself programming full-time, then set out to create a small web application every day, using each assignment as an opportunity to learn something new. She set the following rules for herself:

  1. Build a different website every day for 180 consecutive days.
  2. Every website must be accompanied by a blog post.
  3. Any code I write must be made publicly available on GitHub (open source) so that everyone can see it.

Her project recently became one of the most-discussed topics on Hacker News for the week. In the discussion, Derek “CD Baby” Sivers posted this comment:

There’s this great story from the book “Art and Fear”, that’s very appropriate here:

The ceramics teacher announced on opening day that he was dividing the class into two groups.

All those on the left side of the studio, he said, would be graded solely on the quantity of work they produced, all those on the right solely on its quality.

His procedure was simple: on the final day of class he would bring in his bathroom scales and weigh the work of the “quantity” group: 50 pounds of pots rated an “A”, 40 pounds a “B”, and so on.

Those being graded on “quality”, however, needed to produce only one pot — albeit a perfect one — to get an “A”.

Well, came grading time and a curious fact emerged: the works of highest quality were all produced by the group being graded for quantity.

It seems that while the “quantity” group was busily churning out piles of work-and learning from their mistakes — the “quality” group had sat theorizing about perfection, and in the end had little more to show for their efforts than grandiose theories and a pile of dead clay.

Advance congratulations to Jennifer. This is amazing.

Simply put, Jennifer’s taking the old adage, “practice makes perfect”, and putting it into practice. I think it’s time to borrow a trick from her book.

3 replies on “Practice Makes Perfect: Learning to Code by Building 180 Web Applications in 180 Days”

She should really add a linkedin link to her site. She’s displaying a level of tenacity & self-starting that would be incredibly valuable to employers. You can teach coding; you can’t teach passion.

[…] A couple of weeks back, I wrote about Jennifer Dewalt, who took on a big challenge. She had little or no programming education or experience but wanted to become a web developer, so she set out to learn  the hard way: by making “180 web sites in 180 days”. She put aside enough money to work on this project full-time in some space in San Francisco in a developer-rich workspace. […]

Leave a Reply

Your email address will not be published. Required fields are marked *