
The REPL for Hardware - rmason
https://www.feld.com/archives/2018/07/the-repl-for-hardware.html
======
Animats
_I’ve decided that 3D printing is the REPL for Hardware._

That sounds so 2005. 3D printing is sometimes useful, but it's not magic. It's
a prototyping process, far slower and far more expensive than high-volume
methods of making things. Injection molding is so cheap. The former CEO of
Autodesk, Carl Bass, thought 3D printing was going be a much bigger thing than
it is. He thought every home would have one, because his daughter was printing
dollhouse furniture. Didn't happen. He's gone now.

What this VC seems to be doing is buying up marginally successful 3D printing
companies. That's OK; some of them were just going too slow due to lack of
money. It's probably a good time to pick up some of the overenthusiastic ones
that were going zombie.

Glowforge (formerly a Kickstarter) finally shipped, but they were too late.
Now others have laser cutters in their $2500 price range. Laser engravers are
now below $200 on Amazon. This might work out if tariffs prevent Chinese units
from getting into the US.

It's not a "3D Laser Printer", it's a 2 or 2.5D laser cutter for flat
materials, like all the the other low-end machines. There are real 3D laser
cutters.[1] Glowforge isn't one. Laser cutters are quite useful, but they're a
tool, not magic. Also, despite what Glowforge says, they need a serious
exhaust system.

This fund also bought Formlabs. Formlabs has a nice stereolithography 3D
printer. It doesn't really matter what they charge for the printer, because
the resin cartridges are $149/liter.

You want to change manufacturing, make injection molding dies as cheap and
simple to make as printed circuit boards. Or a low-end laser cutter with
enough power to cut light sheet metal.

[1]
[https://www.youtube.com/watch?v=1NsM0-9_n3Q](https://www.youtube.com/watch?v=1NsM0-9_n3Q)

~~~
contingencies
Agreed. We are a hardware company (invest in us, Brad, we're raising). I
banned 3D printers from the office, and we just gave away the ones we had this
week. Why?

1\. Waste of engineer time fiddling about to get things to print right.

2\. Often people have to alter settings or material to suit a part, then we
tend to never know what settings were actually used therefore we cannot
replicate the same part reliably unless we add additional documentation/burden
to the process.

3\. If the spec hasn't been sent out to a third party fabrication house then
we aren't sure the spec is good. Using third party makes the spec de-facto
validated and our interface to third parties standardized, thus supply chain
becomes redundant.

4\. We get free upgrades as industry iterates, with no capital down. It's like
cloud services for hardware, except safer because it's transaction oriented
with no technical debt or dependencies tying us to running instances.

5\. If we need finishes, materials or processes that are expensive to acquire
in a printer, instead of buying new gear or obsessing over integration we can
just use a more expensive outsourced process.

6\. A 3D file is possible to duplicate, view and diff remotely, a custom made
physical part with unknown settings/material isn't. I've actually lobbied
Github to enhance visual diff for 3D files, and they're considering it
internally.

Already we have used many processes: CNC machining, milling, laser cutting,
sheet metal forming, thermoforming, 3D printing, injection molding, blow
molding, various coatings/treatments, etc. Would hate to have to fork for all
that hardware! Luckily, we don't. Also, we've just moved offices for the
second time. It would cost many times more to move and we'd need many times
more space if we had fabrication equipment in-house.

~~~
iammaxus
Comments 1 and 2 sound like you have only experienced hobbyist-grade printers
and not high quality, easy-to-use, professional tools. Engineers can waste
time fiddling and there are many things that make sense to outsource during
development, but try a Form 2 and see if you still feel this way.

3 is actually an excellent suggestion. It's important to communicate with
production suppliers early and often. But outsourcing early stage prototypes
to prototype shops usually doesn't help that much (unless your final
production volume is low)

4 and 5 are not true for low cost systems if you have even a small amount of
printing and value the speed of your development team.

6\. Doing as much digitally/on paper as possible is also an excellent
suggestion. Too many engineers rush to build stuff Simulation and other tools
are constantly improving. But for full functional testing, ergonomics,
industrial design, etc, there is still no substitute for physical prototypes.

Full disclosure: I work at Formlabs
[https://formlabs.com/](https://formlabs.com/) and our mission is basically to
solve all of these problems.

~~~
contingencies
Re. 1/2\. If you send me a Form 2 for a few months or a discount code I'll be
happy to give you detailed feedback. Otherwise, at USD$5000+postage it will
take a good while outsourcing production for this to make sense. (Typical
third party fabrication cost for us is around USD$30-100 per part or part-set
delivered via courier.)

Re. 3. We typically use 3D printing to prototype for injection molding. We
don't use it as a production process.

Re. 4/5\. Your comment makes the false assumption that iterating rapidly on a
single component is the sole bottleneck for product design iteration, and thus
that failing to optimize iteration speed amounts to bad management. While this
is occasionally a requirement, in fact we mostly find there is substantial
parallelization potential per module, meaning that even within a single
assembly mechanical engineers can place an order and then move on to another
part or concern. Also, nobody selling printers ever calculates for support
removal and finishing time/space/tools/chemicals, noise, smell/indoor air
pollution, human presence requirement in order to transfer parts to automated
washing/curing units, or additional overhead and loss due to slack materials
stock.

------
jasode
For some interesting examples of what can be done with the Formlabs 3D
printer, Ben Krasnow has a recent video:

[https://www.youtube.com/watch?v=7Z8uPHL52Q0](https://www.youtube.com/watch?v=7Z8uPHL52Q0)

~~~
huntie
That's really impressive. I'm always amazed at what people are able to do with
3d printers. The other day I read someone used his 3d printer as a plotter,
and was working on getting it to write letters.

~~~
blacksmith_tb
With stepper motors on 3 axes, most FDM printers are really overkill for 2D
plotting. But it might be tricky to get a nice drawing, the standard slicer
software that turns a design into g-code makes all kinds of interesting-
looking choices for efficiency's sake. Evil Mad Scientist Labs make a nice
robot for painting with watercolors[1], and the patterns the slicer it uses
picks are odd to my eye, if sometimes fun.

[1] [https://watercolorbot.com/](https://watercolorbot.com/)

------
lispm
Just because something happens when you enter a command, this does not make a
REPL. The original idea of a REPL was that one reads Lisp code as data,
evaluates it and returns the result as Lisp data, which gets printed as such
and stored as a side effect.

~~~
na85
Agreed. A true hardware REPL would be incredibly wasteful, and you'd be
throwing even more plastic waste away that would eventually end up in the
oceans killing wildlife.

~~~
lispm
It would mean that the hardware material could be read and executed.

~~~
jononor
One can engrave QR codes with a lasercutter. I've used them to provide a link
to where to download the source files, for making more or to integrated the
design with other objects based on the CAD sources. This was primarily to be
read by humans, but one can imagine the same structure readable by machines.

------
regularfry
Heh, I thought this was going to be about JTAG.

~~~
nixpulvis
Same, at first.

And I'd have rather read something about openscad.

~~~
nerpderp83
What is the Young's Modulus of an analogy?

------
3rdAccount
I always think Forth when I think of REPLs and hardware

~~~
PeCaN
I still wish OpenFirmware caught on a bit more. Unfortunately it:

\- was supported by Sun and IBM \- had "Open" in the name

which is a great way to ensure that Intel never uses it.

~~~
jclulow
One imagines it's hard to create a rent seeking racket on somebody else's open
technology, too.

