How do you become an expert coder? It’s often suggested that you read good code — that by reading examples of good code, you internalize the right ways of doing things, and improve your own understanding and style. But where do you find good code? And how do you decide what’s good? In this talk, Saron Yitabarek describes her own journey toward code mastery, and what techniques she and a growing community use to improve. If you don’t yet know everything about coding (which means all of us), this talk introduces some ideas and techniques that you can (and probably should) adopt to improve how you see things.
Let’s say you have a really popular open-source project. Let’s say that you want to provide the greatest possible performance, but that the basic installation of Ruby on Rails limits you. What can and should you do? How do you deal with this, without breaking Rails, requiring too many customizations or monkey patches, or hurting your application? In this talk, Discourse cofounder Sam Saffron describes how they handle such situations in their (amazing, in my opinion) discussion application. How do they use Rails, how do they go around it, and how do they try to improve performance?
We know that UX is an important part of software design. But the high principles associated with UX design can sometimes fall somewhat short of the real-world situations in which designers find themselves. How can you reconcile real-world constraints with the your UX plans? In this talk, Janne Jul Jensen brings a case study from a mobile banking system on which she worked.
What are some of the red flags that should indicate to a programmer that they are walking into a scam (or an unfair working environment)? In this entertaining talk, Zed Shaw describes the warning signs that you should recognize — at work, in an open-source community, or in any social situation.
Many programmers eventually find themselves taking on management roles, leading other programmers. It turns out that management is a completely different skill than programming — and as a technical lead, you need to worry more about people than about technology. In this talk, Patrick Kua describes what it takes to be a good team lead, how to think about management, and things that you can do as a developer to be a positive, helpful resource for the people on your team.
Gerrit is an open-source, Web-based application designed to help teams to review and approve commits in Git.
Many developers are familiar with GitHub, in which each programmer maintains his or her own, separate repository. Collaboration in such an environment is based on “pull requests.” Gerrit has a completely different paradigm, one in which commits are submitted for review and comment. After reviewers have given the commit a passing grade, it is merged into the repository. A number of open-source projects, such as Wikipedia, use Gerrit in order to manage contributions.
This talk , by Gerrit maintainer Shawn Pearce, introduces Gerrit, and shows how you can use it to improve your team’s communication and usage of Git.
Angela Harms gave this talk at Ruby Midwest 2011, and addressed the issues associated with pair programming. If you have ever considered pairing, but were reluctant to try it, then this talk may give you some good food for thought on the subject.