-
Notifications
You must be signed in to change notification settings - Fork 0
Ruby Rogues Live Keynote
Presenter: Ruby Rogues Live
Ruby's favorite podcast comes to RailsConf! Join the Ruby Rogues (David Brady, James Edward Gray II, Avdi Grimm, Josh Susser, and Charles Max Wood) for this live episode on What Rails Developers Should Care About.
If you've listened to the show, you probably know that the Rogues favor:
- Good Object Oriented design
- Patterns
- Test Driven Development
- The Law of Demeter and Tell, Don't Ask
- Open source
- Beautiful code
- Pair programming
- Code metrics
- Scaling performant code
- and more
Since this is a live episode, we want to interact with the audience. Each Rogue will give a brief introduction on what's important to him as a Rubyist on Rails, then we will turn the session over to your questions. We will take them over the Internet and/or live, before and during the show.
All that AND we promise to wear amazing hats!
- Send questions to [email protected]
TODO
What should a Rails Dev care about? FIREFLY
Dan Kubb: "All code is experimental." @jeg2's favorite rogue moment.
How does something get invented?
Example: tracking Sputnik, using the doppler effect with its beeps, to reverse-engineer its path through orbit; that was reverseable, and then was used to track nuclear submarines through the ocean, then Regean opened it up.
Controlling Asperger's: imitating proper behavior. "The Journal of Best Practices," by David Finch - he learned how to imitate empathy. But, sometimes, things just go wrong. "Here's your new best practice: not everything is a best practice."
Introspection
He spent a recent week at Hashrocket, and was asking himself, "why me?" Because "you don't just have an idea, you speak up, you give a name to it, you explain why."
Mindful coding
(its opposite, "shut up and code")
...which is acceptable, sometimes, in the dev team room, but terrible for online discussion. Look at how good c2.com/wiki is. "Thank goodness they didn't shut up & code."
"Pattern: a decision an expert makes over & over." -Kent Beck
So: when you decide something, name it.
- Write code
- Think about it
- Explain it to someone else
- Not just what, but why
Antipatterns!
Being fresh off the PHP boat (not an actual anti-pattern)
Don't program FORTRAN in Ruby. Ruby is not a BOLS language: block-oriented, lexically scoped. Learn Ruby, as if it were a whole new language.
Know that JavaScript is CRAP. Know JavaScript. Know CoffeeScript.
Let Rails do the OO for you. Don't join in the community: learn, and then teach.
Prudence
Prudent: acting with, or showing care and thought for the future. Most of the cost of owning code is the maintenance cost.
Fear of Progress? DHH said loss aversion is the pillar of conservatism. tenderlove said experienced devs have a lower tolerance for technical debt. Instead: we have a limited budget for risk in our projects. I hate having other people spend my risk budget for me. Asset Pipeline spent my risk tolerance, bundler saved me some risk budget.
"Be regular and orderly in your life like a bourgeois, so that you may be violently original in your work." - Gustave Flaubert
Hey, we need more Rails devs, right? Let's go make some converts! We need missionaries and evangelists. We should convince devs to try ruby & rails, and convince companies to try it. We don't want to slow down for them to come up to speed, but we should "put the ball in front of them, & help them score." We need to start w/ the devs, & then convince them to convince their companies.
ShowMeDo - a learning community for python pluralsight JPassion.com - java guys O'Reilly school of tech - no strong ruby material
Reach out, teach people, and make them our skunks-works, our moles. Then, we'll have more devs, more companies who'll train devs, etc. As you do this, speak up at http://parlay.rubyrogues.com.
Photo: John Parker (urgetopunt) (CC BY-NC-SA 2.0)
A crowd-sourced RailsConf wiki!
Working together is better. :)