Instead, most of a program’s overall functionality is coded into a single “all-knowing” object, which maintains most of the information about the entire program and provides most of the methods for manipulating this data. Because this object holds so much data and requires so many methods, its role in the program becomes God-like (all-encompassing). Instead of program objects communicating amongst themselves directly, the other objects within the program rely on the God object for most of their information and interaction. Since the God object is referenced by so much of the other code, maintenance becomes more difficult than it otherwise would in a more evenly divided programming design. […] While creating a God object is typically considered bad programming practice, this technique is occasionally used for tight programming environments (such as microcontrollers), where the slight performance increase and centralization of control is more important than maintainability and programming elegance.
– SHOW ME THE MONEY
Money is important. When you start your own company, (i’m talking normal company here and not web2.0. There is no angel, VC or other convenient fluffy forms of funding here) you’ll realise how much cash flow rules your world and every decision you will ever make. Want to do r&d? Where’s the money coming from? Want to make stickers, buy a printer, pay people? Where’s the money coming from? Get an accountant fast and get one who cares about your business. If you’re around 10 people, get a part-time CFO, just a few days a month will do, you’ll need someone to be the bad cop with money, otherwise, you’ll end up spending your days chasing after people.
– EDUCATE & LEARN
Don’t fool yourself, the types of people who understand what you do are few and far between. You will spend 80% of your time explaining to people what you do and trying to make that come to life for them. Be prepared. The fact that there are over 50 schools around the world that teach interaction design and physical computing does NOT mean that there is an established industry to settle in. You’re the weird kid on the block. Hang out with people from the advertising industry, they will teach you a lot. Learn about what people who are high up in companies need to hear and what their comfort level is. Make yourself understandable and flexible enough to not seem too risky or threatening. Otherwise, people won’t know what to do with you.
– FORGET CHILDREN
When you start a company, it becomes part of you in (i’m assuming) the same way a child does. Weekends are a write-off, you’ll work every evening and time “away” will be hard as you try to grow a business that eventually doesn’t need you to feed it everyday. That will take years. I’m not there yet.
– DON’T GET BORED
Never forget what motivated you to do this, if you start sounding “bored”, then you’re doing something wrong, stop right now and get a regular job.
– PEOPLE MATTER
I’m blessed to be surrounded with the absolute most wonderful, talented, creative, weird people I could imagine. You’ll spend more time with these people than with your significant other, so choose them well and build a team you can rely on. This will be crucial when times get rough and you’re running out of steam.
– CHOOSE YOUR CLIENTS
Having a good relationship with our clients will matter A LOT. Choose them as carefully as you would choose a girlfriend/boyfriend and remember that good business is when there is a benefit for both parties. If you’re being bullied, something’s gone wrong.
– CREATIVITY TAKES A BACK SEAT
As a creative person, if you decided to be at the head of a company, you’ll have to quickly accept the fact that your creativity will only be required 5% of the time. The rest, you will spend paying bills, meeting clients, handling invoices, sending reminders, arranging meetings, going to conferences and other things that will inject life into your business. I spend more time on Powerpoint, Excel and Word than I do using any creative suite. It’s part of the game, and you’ll learn to enjoy it. It makes the creative times that much more intense and precious.
So there. I’m sure I’ll think of more later, but I these are probably the most important things I can think I’ve learnt in the past 2 years.