Two proposed sessions for SRCCON 2015

SRCCON was my favorite conference last year, and in the running for favorite conference of all time. I liked it so much I’ve submitted two proposals for this year. You should too! Submissions are open until April 10th.

Continous Integration for Content

There’s lots of little attributes which define the “quality” of a piece of content — just like there are attributes which define code quality. Developers have continuous integration to run automated checks on their code, but journalists have editors — who are prone to human error. It’s easy and quite common to forget to add a photo credit, or spell the SEO title incorrectly. What are some ways we can automate these errors out of existence? Let’s get together, present some real world “quality” problems to work on, prototype, wireframe, and define algorithms, and then share our results.

Code review takes two

Code review is single-handedly the best way to level up your development skills. It’s also really hard! Let’s discuss code review methodologies as a group, and then pair up to practice.

Post-Mortems at HubSpot: What I Learned From 250 Whys

Post-Mortems at HubSpot: What I Learned From 250 Whys:

This is a somewhat specific detail, but it comes up a lot, so I wanted to pull it out. If you run a bunch of 5 Whys, you’ll find that a lot of times, the developer who made the first-order mistake (forgot to copy configs from QA to Prod, or deployed two apps out of order, or whatever), will say “Look, this was totally my fault, I screwed up, that’s the whole story. I’ll be more careful next time.”

The very short summary of which is: We’re going to fix this problem by being less stupid in the future.

Which, well, you can guess how that’s going to turn out.

Why do some developers at strong companies like Google consider Agile development to be nonsense?

Why do some developers at strong companies like Google consider Agile development to be nonsense? Most points resonate — particularly this one:

10. Simplicity–the art of maximizing the amount of work not done–is essential. – Most teams simply don’t spend enough time on this. A sense of urgency often overrides careful planning. The problem here is careful planning makes things get done faster. During the planning stage it feels like you’re not getting anywhere, but you are setting up for a quick sprint. This setup is often overlooked, and we end up with not only complicated software, but complicated development habits, complicated code, and generally poor software design. This slows down maintenance and new development, as we try to fit into poorly designed structures that become ingrained and impossible to improve.