Outliers – A non technical book every freelancer/developer should read
Outliers “The Story of Success” by Malcolm Gladwell is a popular book. I heard about the book in a freelance discussion group at a developer conference. I quickly ordered a used copy from Amazon. It’s popularity became very apparent when multiple people, that saw me reading it in an airport terminal, asked if it was any good because they had heard it was. My answer is yes. The book has been reviewed many times (795 on amazon alone) so to avoid duplicate statements I will give my brief summation along with my comments about how the theories in the book apply to software development. If you have read the book please comment with your thoughts. If not I suggest you do because it’s a quick, thought provoking read.
Summary: The book is NOT a 12 steps to success type book, I really hate those books. Gladwell presents the theory that success is not a trait or a gene that only some people have. Gladwell proposes that there are no simple rags to riches stories where a person builds an empire solely on their own. With scientific studies and research to back up the theories Gladwell explores how opportunities and advantages provide the gateway to success.
- 10,000 hours (very popular topic from the book)
- No one succeeds without many, many hours of preparation. No one.
- Examples from Bill Joy(co founded Sun) to The Beatles are given.
- My thoughts: Turn off the xbox360 and the TV and learn a new language, framework, or pattern. Then repeat.
- Luck
- Some people that prepare will be rewarded with incredibly rare opportunities.
- My favorite example in the book is a list of the richest people ever. A large number were from a 10 year period in the mid 1800’s. That time period gave a few lucky individuals the opportunity to become tycoons because of culminating economic and technical advances.
- My thoughts: So if you are not lucky enough to be learning the types of technical skills that will benefit you, then take it upon yourself to make your own luck and find a position that will.
- IQ is not all you need
- The book covers in depth the story of Chris Langan who has an IQ of 195, but has never attained a college degree or high profile professional career.
- My thoughts: To succeed in software development you need communication skills, imagination, and technical skills(IQ). You need to know how to inform/educate non technical people and how to debate effectively with colleagues.
- It takes a village
- No body makes it alone. We all need support from family, friends, and colleagues.
- Every freelance book or article I read says to have a partner.
- Love what you do
- Great quote from the book: “Hard work is a prison sentence only if it has no meaning”
- My thoughts: You know if you love your job or not. Stop thinking about finding a satisfying job. Update your resume and go find a job you will love. It won’t find you, unless you are one of those really lucky people the book mentions.
Another excellent review of Outliers: http://www.markhneedham.com/blog/2009/01/06/outliers-book-review/
Software Review: ForeUI Prototyping Tool
I was looking for a good prototyping tool the other day and I came across ForeUI. This little gem packs quite a punch. Whether you want to create mockups of a desktop application or a web application, ForeUI has everything you need. A six minute demo of the application is available. ForeUI is available for Windows, Mac, Linux, or Solaris.
The canvas where all the work is done is called a plot. Each plot can have 1 or more pages of mockups, similar to Microsoft Excel workbooks. To assist with prototyping of cross-platform applications, the mockups can be drawn in four different modes – Hand Drawing, Wire Frame, Windows XP, and Mac OS X. The canvas width and height can be adjusted and can even be made to look like wrinkled paper for that real hand-drawn prototype look.
Just about anything your imagination can come up with, can be mocked up. The palette comes with over 40 widgets and whatnots that can be used to mockup anything from a simple windows application to a complicated web site. Frequently used mockups such as dialogs and navigation panes can be saved as custom widgets in the palette. Go check out some screenshots and samples of the software in action. Anything placed on the canvas can have an action associated with it. This allows for the creation of an interactive mockup that can be used to simulate what the application will do in a real environment.
Plots can be exported as an image, PDF, or DHTML. A plot can be ran as a slideshow. In slideshow mode, the mockup can be marked up with a red pen. This mode is good for demonstrations and team discussions. Plots can also be run in a simulation mode. In simulation mode, a new window is opened in the default web browser. If any actions were setup for the mockup, such as clicking buttons and activating menus, those things can be interacted with in the browser window.
At $79 for a single user license, ForeUI is a great deal. There are also pricing plans for multiple users. A 7 day trial can be downloaded for evaluation.
Strange Loop 2009 – Day 2
My notes and thoughts about day two of strange loop 2009.
Also be sure to check out my Day one notes.
jQuery – Matt Taylor
- http://weblog.dangertree.net/
- Showed numerous examples how easy jQuery makes it to select and edit HTML elements. Made me realize I should use jQuery even in small apps.
- Also showed examples of the jQuery AJAX functionality
Mobile Development 101
- http://www.slideshare.net/michael.galpin
- http://fupeg.blogspot.com/
- This session was full which doesn’t surprise me since mobile development is about to get easier thanks to Android.
- Started off going how to develop apps for the iPhone
- The emulator and development software only run on a Mac
- Has to be written in Objective C
- I wanted to throw up when I saw the objective c examples
- No garbage collection. Memory is limited on phones so this is an important issue.
- Maybe I’m just to much of a simpleton, but I really don’t ever want to write any objective C
- MVC framework – cocoa touch
- No background processing on iphone
- Android
- Can run any language that is built on the JVM
- XML format for UI develoment
- Does not use standard MVC pattern. Uses something called Activities and Intents.
- There are multiple android emulators
- Mobile dev best practices (not specific to android or iphone)
- Need lean web services
- Limit network traffic
- Limit audio/video/images
- Mobile Web Application
- Alternative to writing an iPhone/Android app
- A lot of phones have the same browser now
- Some mobile browsers leak memory
Entrepreneur Talk – Panel Discussion
- This book was mentioned, Outliers: The Story of Success
- Someone said that you need irrational arrogance to start your own company.
- Another person said that start ups are all offense and no defense. Just keep putting stuff out, early and often
- The idea was presented that everyone has risk even the person working for a company because you can be fired at any time
- The current work culture is sort of like having one client at a time because developers change jobs so often.
Polyglot Grails – Jeff Brown
- http://www.nofluffjuststuff.com/conference/speaker/jeff_brown
- http://javajeff.blogspot.com/
- You can use many languages with Grails. Jeff even gave an example of Grails with a simple language he created
- methodMissing(string name, args) is a very interesting feature of Groovy
Minimalism – Alex Payne
- http://twitter.com/Al3X
- http://al3x.net/books_talks.html
- Interesting talk about little m minimalism and how it be applied to code
- Alex made a few comments about how programming is a young field

