Want to talk about dead ends.
I am a software guy. I have used open-source software quite a lot. I have contributed to some open-source projects (CVS, Apache Tomcat, Mortbay Jetty, and others).
While the present web is critically dependent on open source software, the simple fact is that most open source software projects fail. Some never get interest beyond their creator. Some get an initial pulse of interest, then fade.
A very, very few make it to large use.
As a software guy, when I choose to use open source software, I am placing a bet. If the project behind the software dies, that will prove a problem for my work. So I need to be able to estimate the long-term future of an open source component.
There are tell-tale signs…
If I am going to invest the time to build a printer or write software for a particular set of hardware, I would like that investment to pay off over a meaningful period. So I want to avoid things that are about to die, or that simply have no real future.
To be clear, I am not interested in the extreme low end of the market.
My time has value. I want a printer a notch better than the current crop. I want a faster, larger, more accurate printer at a modest price. That is my current design exercise / challenge.
A better printer is going to need a lot more compute.
When a ~$35 Raspberry Pi 3 offers quad 1.2Ghz CPUs, and 4GB of memory (very nice), I will be hugely skeptical of a platform that offers much less, and costs much more.
The 8-bit Arduino is stretching out to 32-bits, but is still scarce on memory, compute, and market. This looks a lot like the story with 32-bit Z-80s.
There are niche boards … that do not seem likely to go anywhere.
Smoothieboards are pretty cool. Better than an Arduino, but still skimpy on CPU and memory. After an impressive start, the project seems stalled.
This is a common pattern in open-source software projects. The sort of pattern I want to avoid when adopting a component into my work.
There is the “Duet” board, which is also rather nice at the hardware level, though there seems to be issues with the software. CPU and memory are rather limited. Adoption is also limited. Taken together, this looks like pattern to avoid.
Keep in mind, a ~$35 Pi 3 is running about a billion dollars worth of software. If your new board requires new software, what is the cost?
From a hardware perspective, these choices may look equivalent. From a software perspective, they are not at all equivalent. And software most always wins, as was dramatically shown as far back as the introduction of the first PC from IBM.