Pull in Viget posts
This commit is contained in:
93
content/elsewhere/around-hello-world-in-30-days/index.md
Normal file
93
content/elsewhere/around-hello-world-in-30-days/index.md
Normal file
@@ -0,0 +1,93 @@
|
||||
---
|
||||
title: "Around \"Hello World\" in 30 Days"
|
||||
date: 2010-06-02T00:00:00+00:00
|
||||
draft: false
|
||||
needs_review: true
|
||||
canonical_url: https://www.viget.com/articles/around-hello-world-in-30-days/
|
||||
---
|
||||
|
||||
I'll say this up front: I love my job. I love the web. I love Rails. And
|
||||
I love working here at Viget. But lately, I've gone through periods
|
||||
where web development feels a bit stale. Hugh Macleod has a great post
|
||||
called [Beware of Turning Hobbies into
|
||||
Jobs](http://gapingvoid.com/2008/01/10/beware-of-turning-hobbies-into-jobs/)
|
||||
that sheds a bit of light on this problem: once you make a career out of
|
||||
doing what you love, it's not solely yours anymore. There are clearly
|
||||
[bigger problems one could
|
||||
have](http://news.nationalgeographic.com/news/2010/06/100601-sinkhole-in-guatemala-2010-world-science/),
|
||||
but I think this is something all developers struggle with at some point
|
||||
in their careers.
|
||||
|
||||
This problem was weighing on my mind one morning, combined with a
|
||||
looming speaking engagement I'd committed to for [DevNation
|
||||
Chicago](http://devnation.us/events/8), when it hit me: I would spend a
|
||||
month trying a new technology every day, and then share my experiences
|
||||
in Chicago. Learning is a core value here at Viget, and my coworkers
|
||||
were incredibly supportive, adding to the list of technologies and
|
||||
asking to join me in learning several of them. With their help, coming
|
||||
up with the list was no problem --- it was actually harder to get the
|
||||
list *down* to 30. Here's what I finally committed to:
|
||||
|
||||
1. [Cassandra](http://cassandra.apache.org/)
|
||||
2. [Chrome Extensions](https://code.google.com/chrome/extensions/)
|
||||
3. [Clojure](http://clojure.org/)
|
||||
4. [CoffeeScript](https://jashkenas.github.com/coffee-script/)
|
||||
5. [CouchDB](http://couchdb.apache.org/)
|
||||
6. [CSS3](http://www.css3.info/)
|
||||
7. [Django](https://www.djangoproject.com/)
|
||||
8. [Erlang](http://www.erlang.org/)
|
||||
9. [Go](https://golang.org/)
|
||||
10. [Haskell](http://www.haskell.org/)
|
||||
11. [HTML5](https://en.wikipedia.org/wiki/HTML5)
|
||||
12. [Io](http://www.iolanguage.com/)
|
||||
13. [Jekyll](https://github.com/mojombo/jekyll)
|
||||
14. [jQTouch](http://www.jqtouch.com/)
|
||||
15. [Lua](http://www.lua.org/)
|
||||
16. [MacRuby](http://www.macruby.org/)
|
||||
17. [Mercurial](http://mercurial.selenic.com/)
|
||||
18. [MongoDB](http://www.mongodb.org/)
|
||||
19. [Node.js](http://nodejs.org/)
|
||||
20. [OCaml](http://caml.inria.fr/)
|
||||
21. [ooc](http://ooc-lang.org/)
|
||||
22. [Redis](https://code.google.com/p/redis/)
|
||||
23. [Riak](http://riak.basho.com/)
|
||||
24. [Scala](http://www.scala-lang.org/)
|
||||
25. [Scheme](https://en.wikipedia.org/wiki/Scheme_(programming_language))
|
||||
26. [Sinatra](http://www.sinatrarb.com/)
|
||||
27. [Squeak](http://www.squeak.org/)
|
||||
28. [Treetop](http://treetop.rubyforge.org/)
|
||||
29. [VIM](http://www.vim.org/)
|
||||
30. [ZSH](http://www.zsh.org/)
|
||||
|
||||
Thirteen languages, most of them functional. Five datastores of various
|
||||
[NoSQL](https://en.wikipedia.org/wiki/NoSQL) flavors. Five web
|
||||
frameworks, and seven "others," including a new version control system,
|
||||
text editor, and shell.
|
||||
|
||||
Once I'd committed myself to this project, an hour a day for 30 days, it
|
||||
was surprisingly easy to stick with it. The hour time slot was critical,
|
||||
both as a minimum (no giving up when things get too hard or too easy)
|
||||
and as a maximum (it's easier to sit down with an intimidating piece of
|
||||
technology at 7 p.m. when you know you'll be done by 8). I did have some
|
||||
ups and downs, though. High points included Redis, Scheme, Erlang, and
|
||||
CoffeeScript. Lows included Cassandra and CouchDB, which I couldn't even
|
||||
get running in the allotted hour.
|
||||
|
||||
I created a simple [Tumblr blog](https://techmonth.tumblr.com)
|
||||
|
||||
and posted to it after every new tech, which kept me accountable and
|
||||
spurred discussion on Twitter and at the office. My talk went over
|
||||
surprisingly well at DevNation ([here are my
|
||||
slides](http://www.slideshare.net/deisinger/techmonth)), and I hope to
|
||||
give it again at future events.
|
||||
|
||||
All in all, it was a great experience and proved that projects that are
|
||||
intimidating when considered all at once are easily manageable when
|
||||
broken down into small pieces. The biggest lesson I took away from the
|
||||
whole thing was that it's fundamental to find a way to make programming
|
||||
fun. Working my way through [The Little
|
||||
Schemer](https://www.amazon.com/Little-Schemer-Daniel-P-Friedman/dp/0262560992)
|
||||
or building a simple webapp with [Node.js](http://nodejs.org/), I felt
|
||||
like a kid again, pecking out my first QBasic programs. Learning how to
|
||||
keep programming exciting is far more beneficial than any concrete
|
||||
technical knowhow I gained.
|
||||
Reference in New Issue
Block a user