Books, screencasts, learn by doing, or…?
i like to start by reading books, specifically tutorial-style books, like Michael Hartl’s or Russ Olsen’s DPIR. Then I will try to solve a problem or build a project of my own and I’ll use some reference-style books for help, such as the Pick-Axe or the well-grounded Rubyist. Finally, I’ll watch some screencasts for some specialized knowledge or just for a different perspective on things.
If it’s within my grasp; hands on experimentation. Otherwise:
If I can pick up something from a conference talk that’s the way I prefer it. But most talks aren’t as in-depth as I like. Teaching videos are great with examples such as Jim Weirich (on Youtube) and GoRails.com . My next biggest source of learning is from blogs. Followed by documentation from API Dock and Omniref (firefox plugin available). If none of those work out for me I go to the published source code on github.
I really WANT a podcast that will teach. I could listen and learn anywhere. I personally believe that you can teach a lot about code with just audio. I’m not one of the many “doubters”
I am probably a doubter, haha. I think maybe it’s because I find it difficult to concentrate on things that don’t force you to focus - and for me that is always visual stuff.
If you do some I will give them a go tho! (Btw, in case anyone is not aware, Dan is a singer in a band - so definitely has the voice for it!)
I really WANT a podcast that will teach. I could listen and learn anywhere. I personally believe that you can teach a lot about code with just radio. I’m not one of the many “doubters”
I was thinking about why there aren’t any such podcasts a few days ago, and I’ve concluded that it’s impossible because programming is very visual: You need to show lots of examples for people to get it.
Imagine reading out aloud the code in way that the listener could follow along, and be able to replicate. You’d have to list the code in a show notes, and if you’re going to do that you might as well make a video.
I listen to lots of nonfiction books, and its hard to describe diagrams,equations, illustrations etc. They always point to other resources. Perhaps, we need a new kind of audio player with built in presentations. (Slideshare + Audio)
- Interactive exercises like RubyMonk
- Good conference videos / blog posts
(Quite random to encounter a good one)
I could make it work. Any concept understood can be spoken. But instead of just speaking out characters you speak out specs and purpose. “The method foo takes one string parameter and capitalizes every other character in a different color. Then simply returns the result.”
Or when teaching a new concept you can use symbols, and maybe humor, to teach and make it memorable. “A lambda is like defining a method. A method which can postpone its execution and encapsulate local data. But instead of writing define you use variable assignment with an equals sign followed by an arrow written with minus-wakka (aka Pacman), then an optional parenthesis if you’d like to define parameters for it. And lastly you give it a block to execute with mustache symbols around it.”
Visual cues for symbols help like mustaches and pacman.
Then you can use the new concept anywhere. “I created a paragraph method that takes two parameters which is the paragraph and one of any filter in the form of a lambda. This lambda gets called within the method to perform the filter operation on the paragraph.”
A lot of programming has to do with concepts. And that is easily teachable via audio. For example I’ve been familiar with Object Oriented Programming but I’ve been in the practice of writing Objects that only pass around standard Ruby Objects like Strings, Hashes and Arrays. It’s only recently occurred to me to create my own custom Objects to hand around instead of standard Objects. This is one reason why the NullObject pattern hasn’t yet fit into my development strategy as I have been doing more of a rudimentary Message Oriented Programming.
If I can make it work then others can as well. I really want a programming podcast to listen to.
Even if you don’t catch everything that is said or understand it all you will definitely learn or be inspired by ideas.
- Good ruby screencasts: PeerToPeer, DestroyAllSoftware, Railcasts or Confresks talks.
- Reading code from gems that are under 100 lines of code, such as the ones from @soveran, @cyx and @poteland.
- A huge RoR 2.x which need to go 4.x (that what i do on my dayjob )
A huge RoR 2.x which need to go 4.x (that what i do on my dayjob
Oh my goddddddd
For anyone learning Rails there is a great new course that started today by John Hopkins University online for free at Coursera.org!
Hope to see you there!
I prefer reading books and making tiny projects. Now I’m learning CoffeeScript and made a project http://evmorov.github.io/ruby-coffeescript which can help me (and to anyone I hope) to move from Ruby to CoffeeScript and back.
Have to agree - I always seem to learn more from failure than I do from success.
I also think you need to be willing to stick you neck out a bit. Take on something a little out of you safety zone. It’s the best way to learn. It can be hard, and you’ll make mistakes, but you’ll gain hugely from the experience.
Hi, I am new to Ruby programming.
Searched Jim Weirich, unfortunately and sad he passed away in Feb 2014.
Yeah, he is greatly missed by all who knew him in the community.
So there is a podcast that has actually done this and guess what… it’s for the Rust language. A language that has much heavier use of syntax and one that you here would think is least likely to do well as a podcast. You can check it out at https://newrustacean.com/ . We need more podcasts like this for more programming languages.
Definitely learn by doing, there’s something about practically doing the work that makes it register in your mind, the movements, the patterns and all that needed to actually learn something new.