Being a great designer requires discipline. Most designers love to create, and design is an end in and of itself. This is fine when you design as a hobby. After all, the point isn’t getting the project done more than it is to enjoy oneself.
When you design as a business, this all changes. Usually there’s some sort of clock ticking, like you only have so much money saved up before your business needs to start generating some income to pay for itself. Having fun can still be a priority, but it isn’t The Priority anymore.
Consider the following. You can build your own board for the price of components and a bit of time. It’ll be fun to solder all the parts down and make the board yourself. On the flip side, you can buy a board off-the-shelf for less than $100, depending upon what you need. You spend a bit more cash, but you get to spend your time writing code instead.
From a business perspective, it probably makes more sense to buy the board. Many developers probably think this way. But the board is only one part of a design. If you are designing for IoT, you’ll need a radio and a protocol stack. This might still be an easy decision: buy a wireless module that comes with a preconfigured stack. After all, why would you reinvent a stack? That would take hundreds of hours.
Perhaps you see where this is going. There’s a line where you begin to think it’s worth doing the design yourself. Does your application need signal processing? If so, do you write your own algorithms or use a library? Want to add artificial intelligence? Do you implement your own neural net? How about creating a multiprocessor platform for video processing?
Here’s where discipline comes in. It takes a mature developer to tell the difference between “It’s worth my time to design this” and “I want to design this.” The Design Siren’s call can be difficult to overcome. Surely you could write a better algorithm. You’ve already got an idea of how to do it. In fact, you could start outlining the code right now.
The reality is, we are in a Golden Age of development. Chip manufacturers used to just make chips. Now if they want to compete, they need to supply an excellent development environment, drivers, sample code, evaluation boards, and reference designs. To sell chips today, they need to provide more of the final design than ever before.
The most successful platforms have an extended ecosystem. An ecosystem extends beyond the component manufacturer to third parties who build on top of the platform, offering hardware, software, and application designs. Arduino and Raspberry Pi are perfect examples of this. There is a huge ecosystem of companies who have taken on developing specific capabilities for use on these platforms.
You, as a developer, have the option to use this IP or develop it yourself. If you leverage the ecosystem, you can put together a fully-capable system in a short amount of time. You’ll need to pay something for the IP, unless you can find it as open source.
An ecosystem can significantly change where your “I’ll design it myself” line is. So can moving from designing as a hobby to designing as a business. It’s a balance between doing it all yourself and what you think your time is worth.
Where’s your line?
Take a look at some Gumstix customer success stories or contact Gumstix today to learn more about their products, design tools, and services. Or try out Geppetto, their customized module design tool, for yourself.