So how do we balance the need to become proficient in the latest technologies while avoiding fads or spreading ourselves too thinly?
Easy. “Beware the shiny,” said Martha Rotter (@martharotter).
In an entertaining and very practical talk, Rotter outlined an approach to help navigate the onslaught of shiny. And, by the way, this web site is best viewed in Internet Explorer 6*.
Drawing on her experience as practitioner and lecturer at NCI (@ncirl where I also teach part time), Rotter said a solid grounding in an existing and widespread technology is needed first.
Once a level of mastery has been obtained, you will be better able to evaluate the tech’s strengths and weaknesses and its suitability for different projects, she said.
When embarking on a quest to learn new stuff, Rotter had the following advice:
- Have a project in mind where you will use the technology. Tutorials are helpful — up to a point. “Find something that you want to create and use those tutorials to support you,’ Rotter said.
- Shiny changes often. Bug fixes and new versions can be issued frequently, and can be a constant source of frustration.
- Beware of outdated documentation, blog posts and tutorials. “This is a real time sink,” Rotter said, because people are trying solutions that will never work. Looking at the audience, she noted, “I see a lot of people laughing because we all have wasted time this way.” She advised setting time limits when attempting new approaches.
- When looking at something new, think about how you might use it.
- Build on top of what you already know. “If you switch too much you don’t become expert in anything,” Rotter said. Constantly switching between technologies makes “you feel like you are starting over every time,” she said.
- Find a partner in crime. That is, find someone else who wants to learn same thing. Join user groups. There are plenty around Dublin, Rotter said. “It’s just a matter of asking around.”
- Find the hideouts: “By this, I mean where do the experts hang out?” she said. Examples can be Twitter, Stack Overflow or a Quora channel. Don’t be afraid of asking questions. Experts love sharing their knowledge, she said.
- Don’t try to learn it all at once. “This is the hard one,” Rotter said. People are often tempted to put a day or weekend aside to learn a new programming language. It should be done in manageable chunks spread over weeks.
- Don’t be afraid to invest in yourself. There is an online educational revolution happening, Rotter said. She cited Code School and Team Treehouse, as examples. “These are really inexpensive ways to build your skills.” Another advantage is that professional organizations usually have up-to-date documents and tutorials.
- Pay attention to the world around you. Keep an eye on websites that feature tech news, comments, etc.
Asked what to do when customers or management are clamoring for new technology, Rotter suggested finding out the motivation and also pricing the project. “The quicker you put a price behind it the better,” she said. The price may not be worth implementing experimental technology.
Asked if a startup or established company is better for newly minted programmers, Rotter said it depends more on the manager. They need to have an interest in developing and mentoring the new hire, she said. A graduate could get lost in a large group in a big company or struggle in a startup “that is still hip and horizontal (in the business sense).”
* Only joking.
Image of Martha Rotter taken from her website www.martharotter.com.