CodeMash is a unique event that educates software developers on current practices, methodologies, and technology trends in a variety of platforms and development languages such as Java, .Net, Ruby, Python and PHP. Different than most conferences, this three-day event ‘mashes’ together ideologies and individual developer experiences to discuss, learn and even attack certain problems. Grand Rapids based, CQL, sent seven of its developers to this large software development conference. Following is our Codemash Installment #8 of 10.
Creative Problem Solving
I was interested to hear this presentation on creatively solving problems. The presenter started by making the entire group do a ton of improv…trying to get everyone to be free with speaking out and feeling stupid, yet comfortable. Her message was that developers must remove a fear of failure, so they can learn to bounce back faster. While many of her concepts were not new, applied to the craft of software development provided different ways to explore the following:
- Idea Gathering – create an environment where team members feel empowered to contribute ideas, but be careful not to diminish creativity with “no, but…” or “yes, but…” answers,
- Brain Storming – allow/support ‘crazy’ ideas from team members, as it will likely trigger the next great idea
- Cross Team Idea Generation – as a way to promote the generation of new ideas, split your team into odd functionality groups, and present a problem for them to address
- Mind Games – challenge your team members to exercise their mind by forcing the brain to do multiple things while listening (e.g., respond with last letter of last word said in a conversation).
All in all, these exercises are intended to challenge the static flow of software development by interjecting a culture of creative idea generation
It’s the Little Things
In this session, the presenter talked about his experience designing interfaces for mobile devices and looking at how little changes can have a big impact on how we use them. We were briefly introduced to the world of human interface guidelines for mobile devices. What can we learn by comparing and contrasting the guidelines of these mobile players and how can we incorporate it into the mobile applications and websites we develop? What are the main differences in developing for these platforms and what do user experience designers need to take into account before starting a project? In essence, the presenter discussed his opinion that the secret to creating a great user experience is giving care to the ‘little stuff.’ Don’t get stuck in the clients’ vocabulary, but understand who is the ‘end user,’ as the client might not be able to express their needs.
When looking for a good web designer, find out what they use as a 404 page to see if they take care in their concept of this simple error page. He used an example of www.Highrisehq.com where they provide a game for you to play while you are downloading their software. Taking care in these little things, makes the user experience that much better. When designing mobile applications for different platforms, make sure you understand the hardware so your design best suits how the hardware interface is designed (e.g., buttons). Android development vs. iPhone development vs. Windows Mobile 7 development can all be very different, but you need to embrace the little things in order to make your mobile application great, no matter the mobile platform on which it resides.
Check back for Codemash Installment #9 of 10.