I read the Microsoft Frontpage 2000 book from cover to cover and returned to it regularly. I read this book not because it was the most riveting literature out there but because it was the only book I had. In Nigeria at the end of high school, finding books about making websites, programming languages and computers was hard. I would either find very old books in dusty bookshops or buy a book whenever my family went on vacation to other countries. I coded websites in Microsoft Frontpage because that was what came with my computer, I was lucky to have anything else. I studied the book in and out, I learned how to make tables, change the color of text, make words scroll across the screen, I mastered the software. Starting college in America was different, I had high speed Internet, a college campus with a ton of books and this thing called amazon.com where I could find ANY book I heard about. It was paralyzing! Where do I start? Should I pickup a Java book to get ahead in class, or a CSS book to design sites better? What is this thing called AJAX? Should I buy the book? There was too much choice and that was a big problem, I had to work on my discipline, my focus and in the process learned a skill called prioritization. This was my first experience facing the problem of abundance.
As time past I started to miss the scarcity of resources I had in Nigeria. I mastered things because it was the only thing I had, when we lost electricity I would be forced to take a break cause I cannot work anymore. Things I once viewed as hindrances looked like freedom to me now, freedom from the guilt that I could be doing something "productive" at any given time, freedom from the guilt that I am not learning that new framework that came out yesterday.
I did not understand why now, with all this "freedom" and "resources" I felt more in bondage than ever before, I was not sure why I felt trapped. It was only later I realized that the scarcity of resources freed me to innovate, it freed me to be creative about solutions, it freed me to be make decisions. Innovation and creativity are born from a lack of resources and having an abundance of resources stifles creativity if not checked.
I have found I do my best work when I am on a deadline and my best design when I am constrained to a pallet or a set of graphics. Having too much choice places the burden of perfection on you. You feel with all these options you have to come out with the best possible result in whatever you are trying to achieve and in the process of finding this perfection it is easy to lose your way.
I am now a big fan of constraints and I welcome it with open arms. In every project I do now there is always a constraint, either self imposed or imposed by the client. I have to finish a project in a month because of an investor meeting. I have to use only the colors of the brand. I have to use this framework so it can be easily handed over to the companies Dev team. Today I enjoy constraints because they allow me to be more creative with solutions, to be more practical and also more efficient about solving problems.
Subscribe to The Art of Coding
Get the latest posts delivered right to your inbox