The power of sponge learning or: why I read Hacker News even though I understand very little of it

Posted: May 7th, 2011 | Author: | Filed under: learning | 64 Comments »

I love the Internet and technology in general, but when it comes to the core technical knowledge, I’m definitely a n00b. This is in stark contrast to my roommate, who I mostly chose to live with based on his deep knowledge of web development. jk! (sorta). I didn’t study computer science in college or anything formal like that, but I’m doing my best to learn as much about web architecture as I can, because a) it’s cool and b) I’m never going anywhere in this industry without doing so.

Despite not understanding most of it, I take a great amount of pleasure in reading articles about programming topics. Besides being plain interesting, doing so has helped me absorb (if only the surface) of these topics, and I’ve slowly begun to assimilate them into my vocabulary and way of thinking.

I’ve found the most useful place for this knowledge grazing to be hacker news. Hacker news, for those of you who haven’t heard of it, is a community driven link and discussion site run by Y-Combinator. People post links or short posts and others comment and vote them up or down, much like reddit or digg. The level of discourse is unusually high. There’s an active, engaged community, and perhaps most importantly, their interests align quite closely with mine: the internet and other technical topics. On any given day, there will be discussion about javascript, startups, ruby on rails, job postings, current events (usually with a science slant), productivity hacks and much more. Worthwhile posts get voted up quickly, and the comments are always a good place to dive in to gauge reactions.

I get a lot of what I call ‘sponge learning’ out of hacker news. For example, today I followed an innocent enough posting: A CoffeeScript Intervention. I didn’t know what I’d find, but now I know CoffeeScript is a syntax that compiles into javascript, that it seems to have some following and that global leakage is quite a problem in js. I’m not really going to do anything with that right now, but next time I start working on a project, I might give it a look. At the very least, I know there’s such a thing as another javascript syntax, that such a thing is possible.

There’s been examples of this type of learning too numerous to list, things I file away and come to me at the right time later: vim (didn’t get it, still don’t get most of it, but thought to start learning it the either day when I had to do some server file editing), django vs. ruby on rails (which to start with — the community seems split but my friend jake and I decided to go with django since we knew a little python), types of servers (apache, nginx and the like — helped me recently when I was setting up an app), what web host to go with (I chose web faction)…the list goes on.

Even if I don’t dive into the vast majority of what I read it, definitely reduces my unknown unknowns. Plus, it’s just damn inspiring and has pushed me to learn more. The level of passion and talent on that site is staggering. Being exposed to other people going after that dreams day in and day out, building incredible things, and having an awesome time doing it tends to rub off on you.

My strategy to conquer n00b-dom doesn’t stop with just reading hacker news, of course. Mostly through being inspired by sites like this and friends, I’ve started to learn python the hard way, setup a django test app, hacked around with css and javascript, and setup my own server.

I’m a level zero on this road to code journeyman, but it’s certainly been fun. Viewing the world through the eyes of Hacker News has been the most helpful to start to familiarize myself with what’s out there. Can’t wait to keep going.

Update: Realized I forgot to post the first ‘real’ programming project I put this learning to use on: twordsie.com which Jake and I built to visualize your top tweeted words.

 


  • sh

    this is exactly me at the moment too. hacker news is proving to be invaluable. techcrunch, alley insider, mashable are great sites too if you get a chance to reads their numerous articles. 

  • http://www.facebook.com/Jonathan.A.Stanton Jonathan Stanton

    **slow clap** couldn’t have said it better myself. My main goal (and it sounds like yours too) is just to drown myself into the pool of programming as much as possible until one day I realize I am finally swimming in it!

  • http://blog.perfectedperspectives.com/ acedrew

    I recommend this book as highly as I possibly can, not only will it teach you python, it will teach you Object Oriented Programming (OOP) in a very intuitive way. 

  • Rbeale

    Great post, alex. I’ve been reading hacker news for a few years and have wanted to get my hands dirty with python, django and js but simply haven’t found the time to do so. Soon enough time will run out on me. Glad to see you are taking action and learning by doing. Best of luck!

  • http://jackcanty.com jackdanger

    Way to go! You’re gonna do great and before you know it you’ll be explaining advanced concepts to beginners who think you’re the most brilliant person ever.

    If you want to make some really satisfying progress with web development I recommend spending about 20 minutes with Sinatra. It’s a small commitment but you’ll learn how to quickly put up a simple web interface that spits out some text.

    As an example, try running these two commands in your terminal:
    sudo gem install sinatra
    ruby -rubygems -e ‘require “sinatra”; get(“/”){“Hi!”}’

    That’s all it takes. Zed’s book is awesome too, that’ll get you a long way.

  • Anonymous

    Thanks! I’ve wanted to try out sinatra so will definitely give this a shot.

  • http://profiles.google.com/slezica89 Santiago Lezica

    You seem to have the one and only skill required to conquer n00b-dom: hunger for knowledge. The best and most talented programmers I’ve known all had that in common: they were always eager to learn.

    Thank you for this inspiring post!

  • http://insurancedose.com Dose

    I’m very much in the same boat as well. I used to waste too much time on sites like reddit. However, I’ve found that when I spend time on Hacker News I actually learn something new that I can apply to one of the few websites/other projects I’m working on.

  • http://blog.martindoms.com Martin Doms

    Everyone on hacker news is motivated by money. It gets old. There’s a huge vibe of “I don’t care about this technical mumbo jumbo any more than I have to to make a quick buck”. It’s VERY trendy/hipster culture there. They jump on all of the silly buzzword bandwagons and distrust tried and true technologies.

    I’m not saying I don’t read the site – some of the articles are very good. But I don’t like to be around people primarily motivated by money. Those kinds of people make me very uncomfortable.

  • Gera

    You should start learning Vim NOW. Seriously.

  • http://hearfeel.com Jon Bizri

    May you never change.

  • TDL

    Just adding that I am also going down this path as well.  Good luck to you.

    Regards,
    TDL

  • Anonymous

    ha, I actually started a few weeks ago with vimtutor. I still find it hard
    to use all the time, but it’s strangely enjoyable in a ‘holy crap, this is
    powerful’ type of way.

  • http://twitter.com/gorikain Zack D

    inspiring post. maybe you’d like to add on your twordsie site that it will not work with private twitter accounts.

  • Anonymous

    good idea!

  • Anonymous

    This post was inspiring to me! Great first post…I wish I could come up with a inspired first blog post like you! Any ideas/suggestions? Great design too!

  • Anonymous

    ha, I actually started a few weeks ago with vimtutor. I still find it hard to use all the time, but it’s strangely enjoyable in a ‘holy crap, this is powerful’ type of way.

  • Anonymous

    ha, I actually started a few weeks ago with vimtutor. I still find it hard to use all the time, but it’s strangely enjoyable in a ‘holy crap, this is powerful’ type of way.

  • http://dami.me Damilare Onajole

    My situation is not very much different from yours, and I was beginning to get worried of my addiction to reading from Hackers New, especially when I don’t understand every topic, but dive in to read. 

    I must say reading from Hackers News will prepare you more for starting up or building something useful as against moving up a career ladder.

  • http://dami.me Damilare Onajole

    My situation is not very much different from yours, and I was beginning to get worried of my addiction to reading from Hackers New, especially when I don’t understand every topic, but dive in to read. 

    I must say reading from Hackers News will prepare you more for starting up or building something useful as against moving up a career ladder.

  • Anonymous

    Great work.  I’m mostly there with you even if I did get a CS degree.  It turns out that the knowledge required to do one thing in CS is much different from the required to do another, when those things are pretty far apart.  The good news is that if you can master one, the next one will at least be leagues easier.

  • Gera

    I know EXACTLY what you mean :) . It was like that for me at first.
    Keep going. You will eventually master it and trust me, it is going to be awesome.

  • Anonymous

    The theme is clean home if you want to steal it: http://wordpress.org/extend/themes/clean-home. I found that setting it all up on my server was a good lesson in and of itself.

    I’ll have to think of some more post ideas now, I guess…let me know if you have any.

  • Tom Carey

    So you are gay as well as stupid.  Enjoy your “spooge learning”.

  • Tom Carey

    So you are are gay then.

  • Cyph0n

    I read Hacker News for exactly the same reason. Great post by the way.

  • Tom Carey

    So gay.  Just admit you love the cock.

  • Tom Carey

    I’ll come back when you aren’t watching.

  • Bobcarey78

    Spoogze learning intrigues me.  Tell me more.

  • Erkhembayar Gantulga

    Good luck, Just remember “If you don’t know where you want to go, you will never get there”

  • Tom Davey

    Great post, great self-awareness. I’m in the same boat as yourself. My advice: don’t learn vim. Learn emacs. It’s the best gateway to functional programming you could want. The day you have your emacs epiphany, when you become eager to bend this protean tool to your own path through tech, you’ll no longer deserve to call yourself a n00b.

  • Manaj

    BTW I also started  python the hard way in chapter 6 so far :)

  • Anonymous

    I feel like I wrote a post under another name and forgot about it, because this perfectly sums up my own experiences and feelings about HN :D (and of course I found your post on HN).
    I love your work. Twordsie is a great app too btw!

  • hugo

    You are a very aggressive guy:) I also often read hackers news,and also a noob,and and also learning python now,Let’s keep going~!O_o by the way,are you learning Linux too?

  • Hugo

    Your reply also inspired me,thanks! :)

  • http://www.askthepony.com/blog/ Marcin Mincer

    This was my and my co-founder way of reading HN like 3-4 years ago. Be cautious it may lead you to starting own venture as it was in our case ;)

  • jz

    Well honestly, all these people gravitating towards Hacker News and web entrepreneurship are probably motivated by money as well, the return of big ticket dotcom IPOs being a big factor. So that community is probably perfect for him.

     

  • Dag Henrik Fjær

    Fellow Norwegian and Python/Django developer here. Good luck with your endeavours, and don’t give up!

    A word of advice: Don’t get stuck in limbo for too long. In a fast-paced place like HN, you’ll discover new technologies every week. You can’t master them all, so pick a few tools and master them well. It’s great to keep yourself updated, but you can easily end up in a position where you suddenly lack the time to learn anything properly because you drift between all the new stuff. Also: don’t wait for “the next big thing” (Apache’s Harmony, Python’s Unladen Swallow etc), because they often don’t succeed.

    Pick a set of tools and use them on a daily basis!

  • http://twitter.com/ZenoArrow Zeno Arrow

    Hi Alex,

    I read HN too, and have certainly learnt from articles and comments posted there. However, I don’t limit myself just to HN, I recommend picking up tech information from as many sources as you can manage. Obviously the other sites you visit will depend on your personal focus, but if you want to have a deeper understanding of web tech, just start to code! Good introduction to HTML and CSS can be found at htmldog.com, JavaScript and others can come later.

    As for Vim, the most helpful post I’ve ever read on Vim was the response to this question on StackOverflow:
    http://stackoverflow.com/questions/1218390/what-is-your-most-productive-shortcut-with-vim
    The response I’m referring to is the first one listed, ‘Your problem with Vim is that you don’t grok vi.’, to sum it up it’s all about understanding that Vi commands are constructed like a language, read the post and it should help you understand.

    Keep up your enthusiasm, your learning will pay off. :-)

  • http://twitter.com/dorkitude dorkitude
  • http://twitter.com/dorkitude dorkitude
  • Kenny sphxc

    Great Post!

  • http://twitter.com/JessiDarko Jessica Darko

    Hacker News is a very heavily censored site, and thus it tends to have a very strong group-think.  The irony, of course, for a site ostensibly about the capitalist enterprise of startups, is that it relfects the hard left ideology of the San Francisco marxist scene. (You know, the kind of leftists who haven’t read any marx but are sure that anyone calling them marxist must be wrong.) 

    If you advocate for capitalism, for running a startup, for good business practices, you get banned.  If you’ve worked at startups since before Paul Graham founded his (one and only) startup, and bring any of this experience to bear, you get banned.

    Basically, it is PG little crew of kids who are into the personality cult thing, and it is very creepy.  Paul Graham is sort of a startup pedophile.  Anyone whose actually worked at a startup, well, they don’t last long on that site.

    So, what you see is a very highly filtered, very short sighted, set of emanations from a personality cult.

    It is really a shame, cause these kids they don’t know any better.  Like you they assume the site is legitimate.

  • http://twitter.com/JessiDarko Jessica Darko

    Never hire anyone who advocates for VI or Vim. 

    I don’t care if someone uses emacs or vim.  But anyone who tells other people that they should learn a specific one is not someone to let within your organization.

  • http://twitter.com/JessiDarko Jessica Darko

    Notice how your unapologetic praise for hacker news has resulted in a lot of support from the hacker news community.  Of course… the moonies like people who endorse them too.

  • James Sanders

    Where do you and your legitimate start-up experienced capitalist friends hang out and talk about running companies?

  • Jmillr
  • CupOfTea

    Thumbs up for this post. I’m in the same boat although I am doing a technical degree. There is just so much to learn.

  • CupOfTea

    Can you recommend any other sites?

  • markm

    Great approach Alex. A decade ago I was working for an investment bank and wanted to learn about economics and finance. A colleague (with an economics degree) suggested I simply read the financial times every day. I’ve been doing that for about a decade and have become passionately interested in macro economics and have a good grasp of other areas of finance and eco. 

    As Robin Tunney’s character said in The Craft: “You are who you hang with.”

  • Hoopz

    A laudable approach, but simply reading is no substitute for actually doing. Don’t become a person who just knows a lot of tech words. It creates a false sense of knowledge since you know the conclusions, but have no feeling of where they come from.

  • Anonymous

    Nice! I’m in the same position, love reading Hacker News and am mostly there to listen, since a lot of it is new to me. Well worth the time. I tell my entire team to check it at least once a day.

  • http://jarinudom.com Jarin Udom

    I would guess that a good portion of the HN crowd is not saying “I MUST LEARN THESE THINGS IN ORDER TO GET RICH”, it’s more like “If I absorb as much knowledge as possible, I can build the great things I want to build, and hopefully they will eventually pay off.”

    Plenty of people on HN also just build things for fun, too.

  • http://jarinudom.com Jarin Udom

    There’s a famous quote: “emacs is a great operating system, lacking only a good text editor”.

    In the end though, it really doesn’t matter what editor you use, as long as you get good at it.

  • http://blog.martindoms.com Martin Doms

    I’m primarily a .NET developer so the blogs I read probably aren’t relevant, but honestly my favourite source these days is Twitter. Follow a bunch of people from the community who you know and respect and just soak up their links. The Reddit programming site is also pretty good, but Twitter gets me much closer to personalized links because I only follow people who I know are interesting.

    Also, listen to podcasts. I listen to about 10 different programming podcasts and good ones will provide lots of detail and show notes always contain relevant links to what was discussed.

  • bbr

    Don’t get too sucked into HN.  Its a good launchpad, but never stop mixing in other sources, your slashdots, stackoverflows and programming related reddits are a start.

    HN is a window to a very small portion of the tech world, and above all else it is an advertizing platform YC and their startups.  Many of the posts there are trite or drivel, with the air of knowledge misleading you into giving them more credence then they are worth.  The opinion is even worse, you do yourself a real disservice by reading too much into it (unless you’re into technology hipsters parroting ideas about the inane and insignificant) .  I still read it, but I do so carefully.

  • bbr

    It is very disheartening once you learn whats really going on there.  In a comment I posted my criticisms of a YC startup, it was on very valid points explaining why I don’t trust them, apparently the community agreed with the points I raised because it was my highest rated post there, getting over 50 points and sparking a lively discussion. Then the powers that be saw it and shadowbanned that account.

  • http://www.facebook.com/angelarfong Angela Fong

    I also am in the same boat – love that there are similar non techie – but totally wannabe techie folks out there… am in the tail end of Python the Hard Way (stuck on lesson 43)… will take a look at setting up a django test app, and am thinking of learning javascript and ajax next. fun times :)

  • http://twitter.com/inspiredworlds Matthew Ho

    I’m on the same path as you =) also discovered hacker news and learning the same python course!

  • http://www.quora.com/What-are-some-of-the-good-and-bad-things-about-the-Cincinnati-StartupDigest#comment469495 Quora

    What are some of the good and bad things about the Cincinnati StartupDigest?…

    Totally get what you are saying and I was in a similar position in the past. Check out this post about “sponge learning” http://alexrosen.com/blog/2011/05/sponge-learning/. I am totally biased but I feel most startup people are really open to meeting…

  • Judah Meek

    I would like to hear your reasoning on how a simple suggestion equals a hiring fail.

  • http://www.icbs-peclub.com/ Andrew Shannon

    Thanks for the post Alex. I’m in the same boat as you – n00b but like tech and trying to learn code. Keep us updated on your progress and please share any other learning tools you come across.

  • http://seanhayes.name/ Seán Hayes

    Checked out Twordsie, pretty cool. Just 2 things:
    1. First time I put my Twitter username in there was a Python stacktrace related to some Google App Engine component. Sorry I forgot to copy it down. My guess is you just need a try/except block somewhere to catch any intermittent problems with GAE and print a friendly error message to the user.
    2. If at all possible avoid letting users see raw error data and stacktraces since it can be a security issue.

    After getting the error I reloaded the page and it worked fine. :)

    Also, when you try a private Twitter username it throws the following error:
    Traceback (most recent call last):
    File “/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/__init__.py”, line 700, in __call__
    handler.get(*groups)
    File “/base/data/home/apps/twordsie/1.347280040146141318/main.py”, line 55, in get
    ‘rows’: [{'c': [{'v': tweet["text"]}]} for tweet in tweets]}
    TypeError: string indices must be integers

    Each tweet in tweets is probably an error message instead of a dict, or maybe tweets is an error message instead of the list you were expecting. Hope this helps.

  • http://www.arikg.co.il/blog/%d7%a7%d7%95%d7%93-%d7%a0%d7%99%d7%a0%d7%92%d7%94/uknown-unknowns/ Uknown unknowns

    [...] בהשראת הפוסט בקישור תגיות : code ninja, unknown unknowns, ארכיטקט, מהנדס, מתכנת בכיר, [...]