4 ms·
I was just like you, only I was just lazy in college and high school. Now, I take the train to work, and try to keep up a github streak with projects and learn
by JackMorgan 13y ago
I was just like you, only I was just lazy in college and high school.
Now, I take the train to work, and try to keep up a github streak with projects and learnings. I suggest you download SICP, and try to get done one exercise a day. If there is too much reading to finish in one day (I only spend about 25 minutes a day) then type up the sample code and a paragraph about what you read, and commit that.
The streak is a powerful motivator.
https://github.com/steveshogren https://github.com/steveshogren
The trick here is SICP is easy to start and stop, and by chapter 4 you'll have a huge amount of general purpose programming skills. Don't let the lisp scare you, SICP is the best JavaScript/PHP/Java/C#/Python/Ruby book I've ever read (assuming you already know the syntax of those). Once you've put some good milage on that, you can mix in other great books too. The goal here is to build up your skills slowly over years, not cram over weeks. Just like lifting weights or becoming a world class musician, becoming a world class developer takes dedicated time and deliberate practice.
I've been sailing the good ship Github Streak for 300+ days, and in just that time I feel like I've doubled my skills and speed. The best part? It's not just SICP, I've done a half dozen great books in that time (25 minutes a day * 300+ days adds up fast) and I have no intention of stopping.
Message me if you have any questions, I'm always happy to help a fellow person on the journey to being a better developer.
I wrote up a longer form here: http://deliberate-software.com/streaks/ http://deliberate-software.com/streaks/
- japhyr 13y agoI'm curious, you ended a 330-day streak two days ago. Did you intentionally end the streak, or did something keep you from committing? Or maybe you commit locally and just haven't pushed the last few days' work? I think the decision to end a streak can be as important as the decision to start a streak. Consistent work is good, but work out of a sense of obligation can hinder progress. I accidentally broke a streak a while back, and it was really freeing to not feel like I had to make a commit every day.
- JackMorgan 13y agoI haven't pushed. That is the benefit/detriment to coding on the train: no internet. Right now the streak is still valuable and not oppressive. As long as I'm taking the train to work and have a working laptop it's not hard to keep up, perhaps if things change I'll consider ending it. I think there is some obligation, but usually I only feel that about the book or project, not the streak. I did about a month solid of SICP, and last week started to feel a little burnt out, so I started a "for fun" project to help take the edge off. I'll do that to "recharge" until I'm feeling more energy to tackle the next minor section of SICP.
- pkinsky 13y agoThis is great advice, I took a similar path out of $BIG_JAVA_CO about a year back. For me it was Functional Programming in Scala Coursera courses and books instead of SICP, but what matters is that you find it interesting. With your background in math/physics, the category-theory aspects of FP (Monads! Monoids! Semigroups!) should be easy to grasp. (Look up summingbird & algebird on github if you think this stuff is irrelevant)