Dev of the Week: Doug Rathbone
Some of Doug's most recent DZone posts include:
Hi Doug! Thanks for talking to us. What have you been working on lately?
Lately I've been pretty busy with work but in my home time I have been working on a Windows Phone app (InTheKnow Google Analytics - http://intheknowapp.com) and a small start up I'm putting together with some friends. The start up is still running in stealth mode so I can't mention much, but I can let you know that it aims to put Continuous Delivery and Deployment within everyone's reach. We aim to make it so easy to setup Continuous Deployment for your site that all you need is 5 minutes of your time. I'm really excited about it - feel free to register for the upcoming beta: https://oncheckin.com
What are some of your current favorite development tools?
My three current favourite tools right now would have to be:
- Entity Framework Code First Migrations.
I simply love this way of working with your domain/data layer - .Net finally has an equal to Active Record migrations in Ruby on Rails. With the new work coming through in EF6 it is now fast enough to use on things that aren't just small personal projects, so I'm loving it. As long as you keep a few things in mind when working with remote developers, I've seen it work well in teams as well. (http://www.diaryofaninja.com/blog/2012/12/04/fun-with-code-first-migrations-in-teams)
- Jetstrap - http://jetstrap.com/
Coming from a primarily backend developer history, I've always had to spend a lot of time when it comes to ripping out prototypes that look good. Design does come to me, but a lot more slowly than most. Jetstrap is just awesome as you can design your site's wireframes and have it produce boostrap HTML code out the back. This means that you can get your next project up and running (and looking awesome) in literally no time at all. It also means that if you can convince your UX folk to use it you skip a step as jetstrap allows you to save half of your design and cut time.
- Adobe Brackets - http://brackets.io/
This awesome little HTML/JS Editor has seriously become my tool of choice for front end web development. As a primarily static/compiled language developer for most of my career and all the tooling that has come with that space, I've found that tools like Brackets and Firebug lead the way in making HTML and JS a first class development experience. Just give the Live Preview features a go and you'll be sold.
What does 2013 hold for DevOps?
Many people have differing opinions on what DevOps means to them. For me it really is Infrastructure and devs both learning and taking more responsibility over the other's specialty, and working a lot more closely together. If you're a dev I believe it's your job to understand more about networking, DNS and the foundations of how things work outside of your code. The same goes for the other guys.
I've noticed a really exciting trend over the last year in that it is not only becoming more common that both sides understand each other more, but that tooling and techniques people are using are driving more towards things like continuous integration and deployment, and cross technology stack usage (*nix and MS working together). As a Microsoft guy it's been great to see a lot of the DevOps tools like Chef start to be used on Windows more and more.
As a developer I've also seen a lot of the start up attitude surrounding "I'm not just a dev, but can do all sorts of things" come through into the corporate world with a lot of developers I've spoken to out in the community stepping outside just one language or technology. In 2013, I can only see this continuing as both communities start to understand that having IT and development teams pulling in the same direction and collaborating instead of pointing fingers gets "it" done faster with less stress than in times past.
Do you have a favorite blogger? If so, whom?
I would have to mention a few people. It may be unoriginal, but Scott Hanselman would be first: http://hanselman.com Scott seems to be the most productive industry person i've seen in the web space - does this guy even sleep? I like to think i'm a pretty passionate developer and computer guy but reading his blog always makes me want to learn something new and try something different. Most importantly he pushes all of us to share more.
On a local front I really enjoy following a number of developer community in Australia. Troy Hunt (http://troyhunt.com), Luke Lowrey (http://lukencode.com), Aaron Powell (http://www.aaron-powell.com), and the venerable kitteh lover Nick Hodge (http://www.nickhodge.com/blog/).
A while back, you floated the idea of "build-driven deployment." Could you tell us a little bit about that?
I think you might be referring to a post I wrote a couple of years ago where this was in the title. I was referring to the use of Automated Build in your process (CI), but taking it further than just building and using it for automating deployment as well. It was an agile technique that was growing in popularity at the time. Since I wrote this post, Continuous Deployment has not only risen in popularity, but appears to have now attained a status that makes it a subject that developers judge each other by -- "Do you do use continuous deployment? You don't? That's crazy!"
This kind of change in average Jo developer's point of view can only be a good thing as it means our industry is accepting on things that are not only awesome, but allow you to get you and your team safely home on time when it's deployment time.