Are you new to the world of Ruby on Rails, trying to find a way to break in? Are you an experienced developer from the .NET or Java world trying to find a way to break out?
Two years ago, I was in a management role with a medical device company, moving slowly away from something I love, writing software. My experience was heavy on the embedded and desktop side, primarily in C#, with little web experience.
I loved TDD and agile, but didn't find much love for XP practices in those communities. I had heard a lot about how these ideas were valued in the Ruby community but how was I going to break in.
This talk will go into some of the things I did to gain a toehold. Along the way, we'll talk about fear, imposter syndrome, leveling up your skills, and getting involved in the community. We'll also talk about some of the roadblocks you will face and some unspoken, and not so unspoken, negative aspects of the industry.
3. What Is This Talk About, Anyway?
• Based on my experiences as:
-
Developer
Manager
Director
• I needed to be writing software
• Change is hard
-
Wednesday, November 13, 13
Dealing with fear, uncertainty, & doubt
4. How Did I Get Here?
• Ten years ago....
• I was feeling pretty good
-
Wednesday, November 13, 13
Senior developer
OOD
Learning new languages
5. How Did I Get Here?
• Ten years ago....
• I was feeling pretty good
-
Senior developer
OOD
Learning new languages
• Truth was, I had a lot to learn
Wednesday, November 13, 13
7. Failure Can Be Good
• Kicked off a long and still ongoing
learning journey
• Immersion into Agile and XP
-
Pairing, TDD, Continuous Integration
Incremental Requirements and Design
Led to more successful projects
• Got Out In The Community
-
Wednesday, November 13, 13
Gave my first public talk
-
Introduction to TDD at Nashua Scrum Club
8. How Does This Get Me To Ruby?
• Growing dissatisfied in .NET world
-
No love for XP/Agile
• Listening to podcasts, reading blogs
-
.NET developers defecting to Ruby...
What was that all about?
• Moving away from code and into
management
Wednesday, November 13, 13
9. Why Were People Moving To Ruby?
• Focus on Quality and Testing
• Good use of Design Patterns
• Rich, Open Source Community
• Well-suited to Agile and XP
Wednesday, November 13, 13
10. Why Were People Moving To Ruby?
• Focus on Quality and Testing
• Good use of Design Patterns
• Rich, Open Source Community
• Well-suited to Agile and XP
These all sang to me, I had to be part of this
Wednesday, November 13, 13
11. What About You?
• What brings you to Ruby?
Wednesday, November 13, 13
12. Decided To Learn Ruby “In Anger”
• -Declared a Season of Ruby
http://mdenomy.wordpress.com/category/season-of-ruby/
• 3 months intensive study
Wednesday, November 13, 13
~12 hours/week on top of my real job
-
Treated like an agile project
Ruby Koans
Michael Hartl Tutorial
Pickaxe Book
Ruby Rogues
Courses at thoughtbot
13. It’s Good To Have a Support System
Wednesday, November 13, 13
14. Left My Cushy Job
• OK, it wasn’t all that cushy, but I
had to give this a try
• Scared S**tless
-
Leaving a space I was established and
successful in for an uncertain future
Did I still have my developer chops
Would my “experience” work against me
• Got lucky in finding a company
that saw my full body of work
Wednesday, November 13, 13
Agile background helped pave the way
15. Getting Started in Boston Ruby
• What’s the big deal, can’t you just
show up?
• Had no idea what to expect
• Had no contacts in the Ruby world
• Had some catching up to do!
Wednesday, November 13, 13
16. Gaining a Toe Hold - Community
• Get involved
-
I volunteered to run Google Hangouts
• Improve the community
-
What would make Boston Ruby better?
• Grow your network
-
Wednesday, November 13, 13
Meet people
Ask questions
Build relationships...
17. Gaining a Toe Hold - Community
• Building Relationships
Wednesday, November 13, 13
18. Gaining a Toe Hold - Community
• Building Relationships
Wednesday, November 13, 13
19. Gaining a Toe Hold - Community
• Building Relationships
Wednesday, November 13, 13
20. Gaining a Toe Hold - Community
• Building Relationships
Wednesday, November 13, 13
21. Gaining a Toe Hold - Open Source
• Where To Start???
• Ruby Documentation Project
-
http://documenting-ruby.org/
Zach Scott’s “Contributing To Ruby”
presentation at Boston Ruby got me started
• Where can you start?
Wednesday, November 13, 13
Talk to fellow rubyists about projects they
know or maintain
The Boston Ruby website
22. Gaining a Toe Hold - Speaking
• Speak at a meetup or project night
-
Get your name out there
Become an expert
Tame your fear
Use your fear
• Project Night workshops
-
Wednesday, November 13, 13
Getting Started With Rails Testing
Debugging With Pry
23. Gaining a Toe Hold - Speaking
First time speakers in 2013*
Kevin Incorvia
Myke Cameron
Johnny Boursiquot
Alex Jarvis
Alex Wheeler
Bob Gilmore
Mike Munro
Peter Degen-Portynoy
Ken Mazaika
Chris Lee
Matt Daubert
Luke Bergen
Dave Jachimiak
Octavian Neamtu
Thijs de Vries
Liana Leahy
Rob Park
Quinn Lee
Matt Mongeau
Daniel Grippi
Michael Denomy
*Apologies if I missed anyone
Wednesday, November 13, 13
24. Gaining a Toe Hold - Speaking
• What could you possibly have to
talk about
http://thisisindexed.com/2012/05/two-annoying-problems/
Wednesday, November 13, 13
25. Gaining a Toe Hold - Speaking
• What could you possibly have to
talk about
•
Beginners
-
http://thisisindexed.com/2012/05/two-annoying-problems/
Gems you’ve used, or your “breakable toy”
• Intermediate and Advanced
-
Wednesday, November 13, 13
Something from a project you’ve worked on
27. Will This Really Work For You?
• No guarantees
• Skill-set, network, past experience,
and luck all come in to play
• What can you do to put yourself in
the best position
Wednesday, November 13, 13
28. Closing Thoughts - Take Risks
• Put yourself out there
http://thisisindexed.com/2010/11/stretching-is-good-stuff/
Wednesday, November 13, 13
29. Closing Thoughts - Open Source
• Try your hand at open source
• Check out Zach Scott’s
“Contributing To Ruby”
-
Wednesday, November 13, 13
http://bostonrb.org/presentations/
contributing-to-ruby
30. Closing Thoughts - Build Skills
• Keep Your Skills Current
• Study good design practices
-
SOLID
Design patterns
• Learn TDD and Pairing
-
Wednesday, November 13, 13
Try them out at project night
http://www.jamesshore.com/Agile-Book/
31. Closing Thoughts - Community
• Be Involved
• What do you think will improve
the community
• Meet new people
• Build relationships
Wednesday, November 13, 13
32. Closing Thoughts - Community
• Be Involved
• What do you think will improve
the community
• Meet new people
• Build relationships
This
Wednesday, November 13, 13
is not a network