Learning from the Wider Developer Community with PJ Hagerty
When I think about what goes into the transition from junior to senior developer, a few different attributes come to mind. One of the foremost of these is perspective. When you broaden your perspective on the software development field, it becomes easier it to relate your problems to lessons that have been learned by others in the past. And when you’re stuck, you’ll be more likely to know where to look for guidance.
In today’s episode, guest chef PJ Haggerty joins with a story about how he gained perspective, and a tip about one of the best and most fun ways to increase your own. Enjoy!
Video transcript & code
Learning from the Wider Developer Community
PaperCall One of the most enduring parts of Ruby is, without doubt, the community. It's welcoming, inclusive, and gives those of us who have been in and around for awhile, a sense of home. I'd like to tell a story about the Ruby community and lessons I've learned from outside the community.
My first Ruby conference was an interesting one. For years, I had been a MicroSoft developer. FoxPro, VisualBasic, ASP, with a bit of Perl and PHP was pretty much my life. The company I worked at moved to Ruby and the new hires thought I should go to a conference. So in 2008, I headed to Boston for Voices that Matter. Note the sweet Dell laptop I was sporting to take notes.
I was lucky enough to be introduced to 3 really amazing people the first day. These three not only welcomed me in, not caring that I barely knew a gem from hole in the wall, but also served to help begin my learning of Ruby outside the safe environment back home. This was a feeling I hadn't experienced in my programming career up to this point. I'm happy to say, by the way, I'm still friends with all three of these awesome people today.
So of course you want to be part of a community, part of a group of folks coding on similar things - a place where everyone knows your name. Kind of - I mean not everyone does...yet
So you learn from a community, and you up your skills. Eventually one of your community friends convinces you to give a talk - and you do. But is it enough? Are you truly giving back yet?
NO! Start throwing events - go to all the conferences, meet all the people, start your own conference with friends...enough yet?
NO! Teach your 11 year old to code. Find that somehow she gets a keynote slot at RubyConf, a place you've never spoken, but who cares? This great community accepts her like they accepted you! What's next? Can the Greatness last?
Well...through this whole time, I had switched jobs and had become a Community Engineer. I got invited to speak at some non-Ruby Conferences. This is where the learning really began.
Sometimes you don't realize what it is you have until you don't have it as much any more. Some of us came to Ruby after long careers in programming.
Others learned Ruby and Rails in a Bootcamp and it may be all they've ever known.
That said, we miss what's outside of our Ruby sphere. This could be anything from tips and tricks in code to the advent of Mental Health in Tech. We love our community but without outside perspective, we miss out.
So we travel to other places. Other conferences and other meet-ups. Head to the Functional Programming communities and learn about how Object Oriented concepts aren't the only option. Go to pure Open Source conferences to learn the beauty of contributing and the importance of collaboration. It's not to say we don't have these things in the Ruby Community, but we can always benefit from outside perspective.
The point of all this is getting involved. Not just in the Ruby community, but in the tech community as a whole. If you need help finding places to go, check out these great resources.
- PaperCall for speaking at Conferences or just to see what's out there.
- TechMeme has a great conference listing
- Ruby Conferences for all your ruby needs
- OpenHack - to work on projects for fun regardless of language or experience
- To get started, checkout Meetup to find awesome local events in tech you can get to easily. And of course, if there isn't already a meetup near you, start one
Learning is constant when it comes to technology. There is no graduation, no completion date. We are on a never ending quest to learn new things and gain new perspectives, to expand our horizons. The Ruby Community is a great place, it's home to so many people. And we should keep bringing people into our circles, to learn - not just code or tech tips and tricks, but how to make a bigger and better community around the world. So now you know, what are you going to do with this knowledge?