Android Programming for the More Curious: Diving into Concepts from the Big Nerd Ranch Guide

Last month, The Big Nerd Ranch released the second edition1 of its guide to Android programming. The book leads the reader through developing several Android apps. In addition, it brings up concepts that readers don’t need to understand to write the apps in the book, but might nevertheless find interesting. To address these concepts, the authors have sprinkled skippable sections throughout the book called “For the More Curious.”

I liked that idea, so I decided to extend it! This is the first of several posts that serve as an extended “For the More Curious” reading companion to Android Programming: the Big Nerd Ranch Guide, 2nd ed. 

Continue reading “Android Programming for the More Curious: Diving into Concepts from the Big Nerd Ranch Guide”

What Software Teams Can Learn from Improv Comedy

I work as a software consultant at a company that does almost 100% pair programming. I have also performed improv comedy, in classes and onstage. I’ve realized that the skills needed to improvise with other people can also help us pair program better with pairs of all kinds.

Here in Chicago, Second City is famous for its comedy theater and its school of improvisation. However, the business also consults for Fortune 500 companies on developing better teamwork. Two of its executives, Kelly Leonard and Tom Yorton, have published a book on the subject: Yes, And: How Improvisation Reverses “No, But” Thinking and Improves Creativity and Collaboration–Lessons from The Second City. The book discusses the business value of improvisational skills, and it also prescribes exercises to develop those skills.

From this book I’ve identified some relevant improv tenets for pair programming and some improv exercises that might make us better at pairing.

Continue reading “What Software Teams Can Learn from Improv Comedy”

A Reading Companion to Steve Krug’s “Don’t Make Me Think”

Steve Krug’s book Don’t Make Me Think, Revisited: A Common Sense Approach to Web (and Mobile) Usability takes an 80-20 approach to user experience design.

Though it does not serve as a textbook for UX design, I would recommend it to any developer who wanted to improve the usability of their products with relatively little effort.

In it, Krug goes over how to organize the material on a web page, how to display links to be most helpful to the user, and how to adjust one’s approach to usability for a mobile device. These are all fantastic things for programmers to understand. Many of the concepts seem obvious (and the author warns readers about this right from the get-go), but the book helps to clarify why we do those things the way we do them.

I want to emphasize three astute points from the book that I suspect could be easily missed. These points merit reiteration for a crowd of programmers:

Continue reading “A Reading Companion to Steve Krug’s “Don’t Make Me Think””