Three Weeks an Apprentice

Carl Thuringer, May 05, 2011

This being my first post on the Obtiva blog, allow me to introduce myself.

My name is Carl Thuringer. I'm 28 and the newest apprentice at Obtiva. I come from a background primarily in PHP and Drupal and have been studying Ruby and Rails for the past two months leading into my current engagement with Obtiva, and having a blast doing it. I come from Troy, Michigan and while I lived in Ann Arbor for the past several years, I've never lived in a big city. Coming to Chicago has been a blast and I love the city and the endless opportunities it offers. 

The apprenticeship, too, is bursting with opportunities and every day I am excited, confused, frustrated, elated, and thankful for all the learning material and coaching I have been getting from fellow Obtivians. Some days I even feel confident, though it doesn't last long. I have a long way to go yet and there is always something new to learn, digest, implement and understand.

As an apprentice I am responsible not only for my own education, but also a self-determined project though which I have the chance to experience the stages of product planning, pitch, development, iteration, review, refinement, and delivery. It really is a great way to get myself acquainted with the tools and practices of a professional consultant, and it gives me ample opportunity to apply what I learn immediatelly to my product. In addition, I can work on the bleeding edge of Rails and Ruby and gradually as I approach core competency begin to find and integrate the most exciting new technologies and practices just emerging in the community.

Speaking of community, I'm taking over Obtiva's weekly Geekfest get-togethers. Alongside my education in coding I'm getting a full-immersion experience in organizing and planning for the Obtiva extended family. And not just catering and setting up chairs, but getting in touch with developers and scheduling presentations on subjects such as scaling an application and the pros and cons of the most popular text editors.

Always having the opportunity to pair with developers at the office on real-world problems and client projects has been a really great experience. Especially following the thread from client meeting and the drafting of Stories, through to the planning and implementation, bug-squashing, test-writing and the final rush of pushing to a staging server once all the tests pass and seeing the resulting functionality in the UI. Then the code is refactored until it is lean, concise and readable. Watching this process greatly influences on how I approach my own project's stories and their implementation.

I've only just begun here but I'm also surprised it's been three weeks, nearly a month! I plan to continue pushing myself to learn and experience all that I can, meet more of my peers and begin to involve myself in the community as a participant. Thanks Obtiva! I'm looking forward to many more months of learning and working as I travel the road to mastery.

Finally, some of the best resources I've found so far that have helped me hit the ground running here. 

The Agile Samurai by Jonathan Rasmussen

This book is a great primer for anyone getting into an Agile process for the first time. Chapter by chapter Rasmussen walks through the process of planning and organizing an Agile project from inception, planning, iteration and delivery to, in later chapters, the details of how to avoid pitfalls during development through practices such as Continuous Integration and Test Driven Development. I would have had a much harder time putting together my initial presentation if it weren't for the inception deck.

Eloquent Ruby by Russ Olsen

I got my start with Ruby via '_why's Poignant Guide to Ruby' and followed up with the 'Programming Ruby' guide, but you know what's almost as clever as the former and much more readable than the latter? That would be Olsen's book. It's not often that I read a programming book and really feel like the organization and pacing are just 'right,' and that's exactly what Eloquent Ruby offers. It's equal parts walking through basic expressions, control structures, methods, higher concepts and casual advice and suggestion as to where to manipulate the casual syntax requirements in ruby, and how best to write the solution to a given problem. I haven't finished it, but once I do I think I'll read it again for good measure.

Rails for Zombies by Envy Labs

These days it seems that everything is better with zombies. Red Dead Redemption, a game about the wild west got a zombie story as downloadable content. There's Pride and Prejudice and Zombies. According to Wikipedia, there were 50 or more zombie movies in 2010 alone! But now I know what I really want. More zombies in my programming languages. Rails for Zombies is free, fun, and can be completed in a weekend easily, or powered through in a few hours. And you might as well go through it again, just in case you missed some zombie-related functionality the first time. It's a great little introduction to Rails that pretty much anybody can enjoy.

Ruby on Rails 3 Tutorial by Michael Hartl

If Rails for Zombies whet your appetite for Rails, then this is the next stage. The tutorial walks through the creation of a few applications, starting with some basic demonstrations of the power of Rails generators for getting applications off the ground, and then steadily walking through the development of a Twitter clone made completely from scratch without the use of automated scaffolding and fully supported by test driven development, augmented by some excellent tools and advice for establishing the development environment. Without the help of this tutorial I would have found it much more difficult to get my project off the ground and it would have had far more issues than it does.

Rss-icon Rss-icon-over
Archive

Archive