Learning To Code On The Street

It’s 7:33 AM. Leo is leaning over his laptop writing some practice lines of code while I sit nearby on leftover sandbags from Hurricane Sandy. It’s cold, but it is a great morning.

A little less than three months ago, Leo became an Internet icon when he declined my offer of $100 in cash in favor of learning to code. You can catch up on his story with this video interview. Every morning for an hour before work I meet with Leo to help him learn a software engineering language called JavaScript. As part of his agreement to code, he has a refurbished Samsung Chromebook to work on and three JavaScript books to study.

While there was significant criticism about the offer at the beginning, thousands have rallied around his story on Facebook in what has become one of the most loving and supportive communities I have ever seen online. What started one morning as a jogger ran by shouting, “Saw your story, go Leo go!” has now turned into daily encouragements, cheers, and even strangers walking up to share their excitement for what Leo is doing.

To “learn to code” is not the point. Learning to code is not a destination, it’s not an end result; learning to code is a direction. For Leo the direction is very simple. “We need to care about our planet,” he said as his goal in lesson four. Leo’s idea is to build a carpooling mobile app which counts how much CO2 emission you are saving, calling it, “Trees for Cars.”

He will be announcing the rest of the details as soon as it’s right (and he figures them out). I use this as the end goal of our lessons covering everything from database architecture to location services.

Leo’s direction is not just building programming an app. Leo has the drive to make a difference. Here I thought I was the one helping, but Leo’s goal is to help everyone many times over by spreading awareness to make the planet a better place. From coral reefs to declining forests, Leo has told me his one goal is to bring back public attention back to our planet. While I hope his app is very successful, his focus on the big picture is truly inspiring.


Put yourself in Leo’s shoes. He walks four blocks to reach a place to charge his laptop and six blocks to use the restroom (in the opposite direction). He sleeps sitting up and sometimes, if it was a rough night, he is still asleep when I get there to find him draped over his laptop case to keep it safe. He must get food, stay warm, guard his things, and somehow manages to study a very difficult subject for hours with a cheery spirit.

Many times during this project, especially in the second week, I would have packed up and left if I were him. In the first week, we had to cover things like copy-and-paste, installing programs, and even basic email. Despite the huge mountain to climb he has stuck to it day-by-day. Each morning when I show up, he is there with a smile, “Top of the morning to ya’ patty my boy!” he often says, knowing I am Irish. Beyond being my friend, these sessions have become the best part of my day.

Seth Godin, startup guru, says there is always a “gap” or “dip” before you do something very big. The dip is the lowest point, the point when many give up.

“Give a man a fish and feed him for a day. Teach a man to fish and watch him change the world.”

Two days before his interview with the Today Show, we hit the first major dip. When I arrived Monday morning for our daily lesson I found his hat on a bench and his cup knocked over with coffee spilled on the pavement. Immediately, I thought something was wrong. After talking to his friend, a traffic guard, and two policemen I discovered Leo had been arrested for trespassing on a public bench and was on his way to central booking. Despite presenting receipts to the arresting officers at the precinct, Leo’s electronics (cellphone, laptop) were also confiscated. Through incredible support, the Facebook community and many press outlets took his story to the public urging the NYPD to expedite his release with “#FreeLeo” started going up on Twitter.

Early Tuesday morning, 24 hours before his interview with the Today Show, Leo was released on what I was told was an incredibly fast processing time — the judge also taking a special case. In spite of being requited, due to a “clerical” error Leo’s laptop and cellphone were filed as investigatory, which means that it can take up to six months to be returned.

We were frustrated, but somehow the arrest was motivating, Leo had no laptop, no phone to test the app on. He also got sick, but remained unfazed. We continued studying off of the JavaScript books and he used my computer to continue when we had to have a machine.  I was told by the officer in charge of the arrest that a letter to the District Attorney would speed up the return of his laptop and cellphone. And in the meantime, a kind member of the Facebook community provided her Chromebook.

In Leo’s words to the Facebook community,  he wrote, “’Leo the Lion’ loves you all and it’s all going to be ok.” Of the two of us, he is definitely the more peaceful one.

The lessons are exactly what you might assume with two key parts: The first part is to focus on the mind. Due to our time constraint, Leo must retain the enormous amount of new vocabulary and memorizes using a trick from ancient Greek orators called “Memory Palaces.” This method was used by the Greeks to memorize entire speeches, hours in length, by visualizing a different room or object in the room for each part of the speech. For Leo, accessing rooms of JavaScript allows him to learn faster and to retain more.

The second is not a process or tool at all. It is the humanization of the process of learning to code. Imagine if you had a personal mentor to walk you through each line of code, someone who believes in you and holds you accountable, I believe this is something critically missing from online education and subsequently the free software engineering courses online.

In my mind, I see a social network for mentors and mentees. This is where you can only have one friend (your mentor), where you can layout your ideas together, do video sessions, and set up times to meet. I see it as a safe place, where coders are vetted for commitment, and students are truly eager to learn. This place is just a dream for me but dreams are made alone; it’s reality we have to build together.

I am asking for 10 software engineers who would be willing to choose from among the thousands who have emailed about Leo, asking to learn to code themselves. These software engineers would commit two months, one hour a day, to teaching one student how to build an app or a website in the language the engineer is comfortable with. Lessons would be conducted over Google Helpouts, Hangouts, or Skype, with every lesson recorded. Ultimately at the end of the two months, we combine and organize all 10 engineers sessions (400hrs of material) into a massive video database that anyone can explore and learn from for free. Upon reading this, if you feel called to help hundreds by truly helping one, please sign up.

Look at your clock. Leo is out there now in NYC typing on a small Chromebook. Winter is arriving and with it we are now racing time and the cold. A member of the community put it best, “Give a man a fish and feed him for a day. Teach a man to fish and watch him change the world.”

PS: Remember this exact time, day, hour, and second when you got to this point. If you are an engineer and want to teach, we are using that as your “Guardian ID” (Monday Oct. 21, 2013 11:53:21 AM = 10212013115321). It’s a very important time, it’s the moment when you decided to help. Thank you.

[Editor’s Note: Patrick McConlogue is a startup founder that drew much ire for offering to teach a homeless man how to code, including from us, specifically me. To follow Leo’s story and the launch of his upcoming app, visit his Facebook page. To get on the mailing list to help teach coding, visit www.journeymancourse.com/iamtheothercoder.]