During my half-batch at RC I avoided web stuff like a plague. I wanted to break out of old habits and patterns that (I thought) web pushed me to in the first place. As it turns out, web had nothing to do with this.

Of course, when it comes to web technologies, there are many low-quality examples of code out there and they are being copy/pasted all over the place, there’s W3Schools, there’s JavaScript and PHP. (They are regarded by many as worst mainstream languages ever.) There’s often a need to hack something together and make it work, rather than to learn something in depth and then implement whatever it is you needed. I discussed this with Vaibhav Sagar – he ran away from his PHP job to learn Haskell at RC and can’t be happier.

My time at RC – learning Python and programming in general, studying interpreters, low-level networking, distributed systems, advanced algorithms and data structures, applying functional paradigm to procedural code to make it easier to test and reason about, using TDD and pairing a lot – ended up teaching me about web in a way I didn’t expect.

I am excited about web again. I want to dive deeper into JavaScript. I want to learn React, along with Redux and whatever else comes along with it. I’m excited about Elm. (Thanks to Adam Borowski for introducing me to it.)

One major thing that I realized looking back on my experience in web development and my time at RC: it helps to be part of a community. God knows how many hours pre-RC I spent doing stuff on my own, reinventing the wheel on one hand, and writing sloppy code on the other (because no one will see it anyway).

And I am happy to be part of RC community and will make sure to have my code reviewed and continue pairing with other alums and recursers to learn new things and gain new perspective. In the meantime, I was looking at the official React page and noticed the examples are in ES5 so I thought I’d rewrite one in ES2015… Here’s my codepen, critique is welcome. Thanks!

Share →
  • Aissam Belhachmi

    I love the dangerouslySetInnerHTML attribute 😀

    • gudnm

      it’s a funny name 🙂

  • Aissam Belhachmi

    And btw, do you you need this.handleChange = this.handleChange.bind(this) at line 5?, it seems to me that this will work fine since you’re inside the class.

    • gudnm

      If I remove that line, the output is not updated on change