All posts by PhilWheat

Arduino Yun and Serial.println()

Just a note as this was almost IMPOSSIBLE to find information on. Hopefully it’ll help someone else.

Converting a small program from Arduino Uno to Arduino Yun, one of the functions is using a Serial connection. Works great on the Uno, will work with the Aruduino IDE Serial Monitor no problems. But won’t send data with X-CTU or Parallax Serial and my C# program can send data, but never receives data.

Fun. Well it turns out that Yun (and evidently Leonardo) requires you to use DtrEnable – otherwise you get undefined functionality.

Set DTREnable = true and everything works great!

3d_touch_3d_printer

Personal Manufacturing and the changing world of Capital

There was a pretty lively discussion on one of the mailing lists I’m on and I got a bit carried away with one of my responses.  So of course, after I did all that writing I didn’t want to see it go to waste, and here it is!

This post is in response to a reference to http://www.nytimes.com/2014/03/16/opinion/sunday/the-rise-of-anti-capitalism.html (Paywalled NYT link, limited free access)

_____________________________________________________________

Here’s the issue I have with the article.  It’s all about torturing the facts until they support your own arguments or just over simplifying things until you can’t recognize the arguments any more.  The whole concept of “Zero Incremental Cost” is just right enough to seem interesting but once you look at it, it’s a completely different concept than he’s basing his argument on.  Let me explain.

What he’s talking about is that automated manufacturing processes means that once you have the plans for something, it’s basically machine time, energy, and materials to make another one.  This is the big lightbulb going off moment that happens when I give people something off my 3D printer – first people tell me “I don’t want to take your <item>.”  My response “Oh, I’ll just print another” allows them to see – I just go in and push the button and another appears!  So Zero Incremental Cost – things just appear now in the economy and we all move to a commune and grow our collective garden with our printed shovels and spades, right?  Not so fast.

It turns out that each item done with a 3D Printer or a CNC Mill or an Automated Router will cost MORE than one created by traditional methods.  That’s right – it’s more expensive to 3D print an item than to make one in the way that all that stuff on the retail shelves today are made. (Talking same to same – remember, current personal automated manufacturing is limited in materials and complexity as well.)

So what’s the big deal then?  If it’s always more expensive to make one yourself than to get one-off the production line, doesn’t that mean that mean that this whole Maker/3D Printer/etc movement is doomed to failure as it’ll always be undercut by traditional manufacturing?  Nope – the differentiator is that my item is higher cost (maybe twice the price) but all I have to pay for is that one item.  That production line item is so cheap because all the design and setup costs were amortized over a production run of 10’s of thousands, or more!  So in order to get that individual cost down to half the cost of one-off my personal 3D Printer, I’d have to buy 10K.  (There’s a scene in Batman Begins where Alfred mentions they have to order 10K Batman helmets – the joys of being a multi-billionaire.)  With my Personal 3D printer each item is more expensive, but I only pay for the ones I need.

And this is where the whole Anti-Capitalism happens.  And why it’s not Communism.  And why it’s another layer rather than killing Capitalism.

If you have a market for 10-100K of an item, you’re going to use traditional manufacturing processes – the cost savings means you’ll end up paying maybe half what you would with more “cottage” production processes, and that’s going to be a big chuck of change.  Unfortunately you must have a LOT of money to save that much money – you have to buy that production run of 10-100K up front – which means you need capital to cover your inventory.  So Mr Banker loans it to you and takes his cut say 5% as interest.  You’re happy with that, you’re still saving 45% after paying the interest.  So you know you have at least a 45% margin over my personal production system, time to head down to the Ferrari dealership and see what the latest model is!

Except what happens if your market is 5K and your minimum run is 10K?  Well, you can expect there will be a “Long Tail” need and warehouse the other 5K – but now you’re running at a loss short-term (remember your Banker takes his 5%, so you’re not breaking even at this point) and now you have to warehouse that second half while you find buyers for them.  So not only are you holding inventory, that inventory is costing you money the longer it sits.  Then there’s insurance, shrinkage (things falling off the back of trucks), samples…. The list goes on, the longer you hold that inventory the more costs happen and generally the less you’ll take for them just to get rid of them.  This is the fun of automotive parts and why there’s such a big industry for them (and why a gas cap for your K-Car costs $100 when the car itself may not be worth that.)

But if you start from the ground up – you pick up your $1-3K 3D printer and you need an item, you make it.  It costs you twice what it would be to get it made in a production line, but you don’t have to do that.  You’ve filled your need with that one (or two, or a dozen) items.  Which means even though you’re paying more per item, you’re only paying for those items as you need them and you’re also able to customize each of those items for your task, so you may actually be able to get better value from them.  And thus the anti-Capitalism part – you don’t need that loan on the 10-100K product run.  You may need a loan on that $1-3K printer (or maybe more if your business expands and others want you to make stuff for them) but that 5% is going to be MUCH smaller.

So now you see that the personal manufacturing revolution is simply about taking “just in time” to the next logical level.  And the lowered infrastructure and skills costs that have been happening are actually helping drive down the need for Big Capital, just like Cloud is driving down the cost of doing a software startup.  You just don’t need to build a production line or Data Center until you’re pretty sure you have the market to support it.  And if you have a market to support your business, then those deals you do make with Big Capital are going to be much less like the Silicon Valley VC world and more like a traditional business loan or investment.

Visual Studio, Azure development and where’s my project?

I’ve been running into this lately – not a showstopper, but something to keep in mind as you work with projects.

The components:

Visual Studio 2012 with Azure SDK 2.1 installed

Hosted TFS (VisualStudio.com) as ALM/Source control.

Windows 8.1 Pro – running as a standard user account separate from the machine Admin account.  LiveID is set up with Azure services, TFS, O365 so everything is synched.

 

The fun:

To do local debugging with Azure Services, Visual Studio must be run as administrator.  No problems there, I’m just breaking things out so all the accounts line up and keeping my projects on the right services.  So run Visual Studio as administrator, enter in the password and, since it’s a new box, “Open from Source Control.”  Put the project in the Visual Studio folder under Documents, code, debug, deploy, repeat.  Then go to just review the code, so simply run Visual Studio.   The project is now missing!   So what happened?

Exactly what you’d think would happen if you thought about the process as it went along.  The key factor is “Run as Administrator.”  This is a bit of an ambiguous statement as Administrator is a role AND an account.  What happens is that it seems you’re not merely running with Administrative rights but you’re actually running Visual Studio as the Administrator account you entered.  So the Documents folder you saved your project to is actually on another account – you can test by logging into that account and seeing all your code sitting there.  Makes perfect sense when you think about it, but sometimes when you’re looking for your code, that one step may not jump out at you.

Easy solution?  Elevate your dev account to Administrator rights.  Probably the right solution?  Change Visual Studio preferences to drop your code in a location where both the administrator account and your dev account can both access.

LIDNUG Kinect for Windows Development.

Just a quick post to have a spot for any additional questions from today’s LIDNUG presentation.  We had a lot of great Q&A, but I wanted to make sure we had a spot for anything that we couldn’t get to or that popped up after we wrapped up.

I’ll update here when the slides are up on Slideshare.

Recording is up at http://www.youtube.com/watch?v=0arzMSlqnHk and slides are up at http://www.slideshare.net/PhilWh/lidnug-phil-wheat-kinect-the-how-were-and-why-of-developing-with-it-12887102

“Just slip out the back, Jack. Make a new plan, Stan”

I’ve gotten a number of questions through the blog about BizSpark and various other Microsoft programs.  I’ve updated my info but haven’t called out explicitly until now – I’m unable to help with Microsoft programs these days as I’m no longer with Microsoft.  As a Startup Evangelist, my challenge was always to balance my enthusiasm with startup ideas with my loyalty to Microsoft.  As often happens, I found an idea that couldn’t be denied.  I moved from Microsoft in December of 2011 to manage the Labs group at Chaotic Moon (a startup here in Austin that has been rocking the mobile world for the last two years.)  If you’ve seen what we’ve done in the last 90 days (Board of Awesomeness, Board of Imagination, and the Smarter Cart ) you’ll see why I had to make the move. 

If you have any BizSpark questions, go ahead and shoot them my way – I’ll be glad to try to help you connect to the right people in Microsoft, but I can’t guarantee that I’ll be able to respond as quickly as when I was an employee or get you to the specific person you need to talk to these days.