The nameless is the origin of Heaven and Earth, while naming is the origin of the myriad things.— Lao-Tzu
We live in a complex world and one of our first challenge is to structure it so that it seems simple. Obviously, we will not be left to ourselves facing this major challenge. Early on, our parents will provide us with the foundations. Among other things, they will teach us a language and the meaning of words. We often forget that the simplest way to reduce complexity is to name things appropriately. A Chinese proverb says that the beginning of wisdom is to call things by their right names.
Slingboards Lab is not the first company that I founded. In 1991, after completing my master's degree in management of technology from the Ecole Polytechnique de Montreal, I founded a software company to market a drawing program for value engineering. Unfortunately, my company did not had the expected success. This is explained by the fact that my product, whose name was Fastdraw, found himself competing against the Visio drawing software. I had customers, but not enough for this to be very profitable. After a few years, I closed the business. Oddly enough, 24 years later, I still have an old client using my product. They still consider Fastdraw as a better option than Visio. Lately, they contacted me because they wanted me to program a modern version. I politely refused while freely providing them with the original source code.
A few days ago, I took a look and I was amazed by the structure of the sources. This program was a 16-bits Windows 3.1x app written in C ++ using the Borland C++ v4.0 IDE and OWL library. Each object has its own CPP and H files. The naming convention makes it easy to identify visual objects such as windows and dialogs.
For those too young, in early 90’s the filenames were limited to 8 characters (a MS-DOS constraint), here is why we find names like TOOLBARW instead of TOOLBARWIN.
As you can see, already at the beginning of my career, I was from the school of those who believes that words have meaning and names have power. By setting up an appropriate structure such as the combination of words with a convention, you can reduce complexity and make your code easily understood even 24 years later. Success is all about structure.
Herbert A. Simon (Nobel Prize - 1976) was interested in the role of knowledge in expertise. He was the first to say that becoming an expert required about 10 years of experience. He and his colleagues estimated that expertise was the result of learning roughly 50,000 chunks of information.
Malcolm Gladwell highlighted this rule in his book, Outliers: The Story of Success. He states that men and women who have spent more than 10,000 hours to learn something end up being out of the ordinary in this area. In the same vein, regarding software development, Scott Hanselman recommend to ‘'read lots of code and lots of books, pick a language that fits your brain and helps you learn how to think, and when you do think, think about abstractions.
How do you become an expert in architecting mobile applications? Understanding of UX interaction patterns is a key learning for sure. You could read books (and you should) but do not underestimate first hand experiences with real devices. I firmly believe that, of the 50,000 chunks of information to acquire, the most important are the actual experiences with mobile OS. Every year you should experiment with a new mobile OS.
I used to change phones every 6 months. From the initial launch of the iPhone in 2007, I moved to IOS and I have been an enthusiastic user for many years. In 2013, having learned everything I needed to know about IOS and in a need for a phablet, I moved to Android. Last year, I wrote about my experience with a 7-inch tablet Android as a phone.
Nine months ago, at the beginning of 2014, I have migrated to Windows Phone. My current phone is a Nokia Lumia 1320. I am extremely pleased with this 6 inches device and I love the Windows operating system. I agree with Scott Hanselman Windows Phone 8.1 is now definitely as good as Android or IOS.
I would have kept this phone for a while longer, but, unfortunately, I will changed for an iPhone 5 in the coming weeks. For the upcoming months, I will thoroughly test the Personal Task Manager that we develop with IOS8. Since we expect that the vast majority of our customers will use IOS8, I want to ensure that the user experience will be perfect. In addition, this will allow me to experiment and update myself with the latest functionalities of IOS8.
So do not be surprised if you see me these days with an old iPhone 5. One day, I will be back with a Windows Phone. In the meantime, my focus is the good of my product.