Makerbot blatantly steals and patents a community design.

The original quick release extruder by whpthomas

In a stunning display of madness, makerbot industries files a patent application on a mechanism clearly derived from content created by their users. What’s almost worse is the article they wrote praising the invention, presumably while they were filing the paperwork.

Thing #42250 “Replicator 2 Extruder Upgrade” by whpthomas, is one of these very useful designs. It’s based on an extruder mod from Thingiverse superstar emmett, who based his design on one from another star user, whosawhatsis. The basic idea of this series of designs is to use a spring-loaded arm to squeeze the filament between the drive gear and a bearing.

After extensive testing, we’ve decided that this approach is too good to ignore. [...]

We will be selling an upgrade kit that involves all the parts, including the printed part online this spring. We could have waited to tell you until we have enough to start selling them, but we decided that it would be good to tell folks about the mod.

Screencap, in case they remove the article.

Definitely too good to ignore… And apparently too good to let their competitors use as well, whatever the content creators want.

For those counting, that’s 3 separate thingiverse users (whpthomas, emmett, whosawhatsis) who presumably hold some rights to the creative commons licensed designs makerbot is patenting.

You can read the whosawhatsis’ thoughts here.

EDIT: apparently this isn’t a terribly new thing. You can read a more thorough overview of makerbots history here.


Keeping in mind that I am in no way a lawyer…

The creative common Attribution-ShareAlike 3.0 license. It’s a very liberal license. If makerbot was selling the designs that would be completely fine, as long as they

provide appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.

But they’re not just selling it. They’re patenting it. That means they can sue anyone who tries to use a similar design or method. Not just if they use that file, but any similar methods of feeding filament.

The creative commons is very clear on what you’re allowed to do to restrict other people from using CC licensed works, namely

No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.

A patent is definitely a legal term restricting what you can do with the work. It violates the CC license, which means either any of the contributers could theoretically revoke makerbots permission to use it.

In actuality, makerbot has a large legal budget, and their terms of service probably say something about providing a license to the content anyway. They’ve used semi-legal trickery to steal thingiverse users designs, and without a large legal fund there isn’t really any recourse.

Or at least that’s my laymens understanding of the situation. Some people have suggest that the prior art will make the patent application fail. But it’s not clear one way or the other.

Reddit user obsidianechoes gives an excellent overview of how to submit a prior art claim, which may be our best shot at getting this particular patent overturned.


Makerbot has shown time and time again that they’re willing to screw over the community. Are we really that surprised? But their marketing budget and sleek design continues to convince the uninformed to buy makerbot. To add insult to injury, their printer is overpriced, has reliability problems, and compounds that with sub par support.

For me, personally, I look at a move to closed source as the ultimate betrayal. When I was forced out, it was a normal, if unfortunate, clash of wills where one person must stay and one person must go. I swallowed my ego and left, because I knew that the company I founded would carry my ideals further into the world. Regardless of our differences, I had assumed that Bre would continue to follow the principles that we founded the company on, and the same principles that played a major part in the success of our company. Moving from an open model to a closed model is contrary to everything that I stand for, and as a co-founder of MakerBot Industries, it makes me ashamed to have my name associated with it.

Zach Hoeken – MakerBot vs. Open Source – A Founder Perspective

A lulzbot taz

With apologies to Zach for continuing to associate his name with it.

Makerbot is an increasingly toxic company, and stealing designs so openly frankly implies that their management has their heads up their asses. But as long as non-technical people continue to be won over by marketing hype and pretty cases they’re going to continue to drag us down. Not surprising from a company that sat on the patents that make modern 3D printing possible until they expired, freeing us up for the current 3D printing revolution. It demonstrates how a few well placed patents can cause an entire industry to stagnate.

I’m disappointed more people don’t go with the rock solid designs of lulzbot or makertoolsworks, companies that seem to be able to make a profit without employing anti-competitive practices.

Posted in 3Dprinting | 14 Comments

How feasible are mesh network backbones?

TL:DR, $50 Nodes with 1km+ range. Look at the map.


Halifax-windsorMeshnetwork


So today I was playing around with the idea of mesh network backbones. All the decentralization guys talk about a distributed and democratic internet. But how reasonable is it?

Not very. At least not with current hardware.

I used the specs of the flutter wireless board when figuring all this out. It’s great for mesh networking because

  • It has good encryption
  • It’s cheap ($20 per board).
  • It’s a microcontroller, which means adding in solar charge controller and battery monitoring is easy
  • It has a whopping 1km+ range, at 900Mhz (just look at the comparison picture).
  • It has 1.2Mbps worth of bandwidth. Which isn’t nearly as good as wifi, but isn’t bad for that kind of range.
  • The power requirements are low enough that it’s feasible to run them off solar.

Overall, it’s probably the best board I’ve ever seen for doing meshes that cover a large area. The bandwidths not great, but it’s a lot better then the very long range hobby stuff. It’s relatively cheap. It gets good range.

So I mapped it out. This shows a relatively simple connection between halifax and a nearby town.

Presuming we manage to build flutter nodes for 50$ (which is probably conservative, but might be doable). It would take around $3000 to cover the approximately 60 nodes between halifax and windsor. And a single point of failure would take them all out.

Not a good price for a 1.2Mbps network. But pretty good for a scientific sensor network, or as a way of getting drone telemetry.

The prices are similar if you wanted to just blanket halifax in nodes. At the point it might be usable as an indie cellphone network, although more then a few voice calls at once would saturate it. It would be great for email and text though. Maybe some light web browsing.

But the amount of money involved would be pretty nasty for a community backed project. A lot of money for something that isn’t even close to competitive with existing infrastructure.

Posted in Uncategorized | Leave a comment

Computable Magic

Reality is computable. Everything can be represented by math. But a lot of magic isn’t. It relies on weird intermediate steps, like the user “wills” something to happen. Steps that are equivalent to having a new limb, or in some cases an advanced neural interface.

I tried to figure out a magic system that doesn’t rely on any, well, magic. That is, any point where you can just say “the mage wills” or “the wizard pushes”. No irreducible steps.

Something closer to physics, but that still feels like magic. My big inspirations were smoothlife, which is a way of doing cellular automata smoothly, as a set of differential equations. At the other side of things is wireworld, which is cellular automata that’s very good for creating machines. And of course ra.

You can see an example of a wireworld computer here. It’s a pretty good analog for what a computer implemented in my magic system would look like.

At the moment, this is mostly just an overview. There’s not much about the how or the why, or what a world that had this magic system would look like. I tried to make something that would result in something close to Vancian magic, where you prepare spells ahead of time through concentrated effort. Keeping that from turning into an industrial revolution where wizards and machines simply turn out spells for mass consumption every day was tricky. As was figuring out some way to still allow for healing spells.

I think it’s a pretty self-consistent and reasonable cosmology. That is if you ignore social insects like bees. As one /r/magicbuilding commenter pointed out

The local K-T event didn’t have an asteroid strike on top of flowering plants and bees changing the landscape – it was just the bees and their honey-eating-seeker fireball spells. Social insects are good at developing finicky little physical routines based off of simple rulesets – they would be naturals and running active mana flows as part of hive maintenance.

Magic, a high level overview

Mana is a weightless, invisible, fluid. It forms an ocean over the lands. This ocean permeates pretty much everything. It may collect in valleys, it would be thinner at the top of mountains.

In order to weave a spell you compress and shape the mana using special tools. Woven mana is more “solid” then the backround mana of the earth, although it still doesn’t interact with physical reality at all. These weaves are locked to the earth. You can’t move them without more effort. Primitive cultures didn’t know how to move their spells, so what magic they did have was fixed to where they created. Generally just simple light spells.

Now days a magician wears a piece of lodestone. Generally a fist sized talismen. Active (charged) spell matrix paths will attach themselves to any lodestone they pass through. Mages will temporarilly activate part of their spell, in order to attach it to their personal lodestone.

A castle with walls made of lodestone would cause active spells to slip off of their masters lodestone. There are ways to move a spell weave without a lodestone, but they’re all active. Passing through lodestone will slow them down.

A spell weave by itself doesn’t do anything. You need to alter a part of the weave. Passing part of an active weave through volcanic obsidion will cause that part of the weave to be permanently altered. Now whenever that part of the weave is activated, it will heat up the enviroment.

There’s no definitive list of what substances alter spell weaves.

Mages and war

Mana regenerates over time, but you can drain a battlefield pretty quickly. One of the simplest spells simply drains surrounding mana until it runs out. You don’t need anything beyond the most basic of tools to make an area a virtual desert.

For this reason, mages tend to be pretty solitary. There are a number of ways you can get around this limitation however. You can transport natural mana in giant, immaterial, spell-woven cages. The problem is that the cages needs mana to continue to function. Those cages will drain their contents in a few days if there’s no backround mana at all. You also need to strongly anchor the cage, becouse it has a lot of “weight”. It will slip off a common lodestone.

The gods can gift you mana, and will occasionally give mortals mindbogglingly complicated spell weaves.

Magic and healing

Magic is no better then a surgeons knife when it comes to healing, it all depends on the skill of the surgeon. The gods are very skilled, and will gift mortals with very complicated spell weaves. Trying to reproduce a god’s spell-weave would be like trying to build a microchip when all you have is steam engines. At the very least you’d need a microscope that can see spell weaves.

Magic and bees/gods

This system has an obvious flaw. Mana is basically a source of free energy, and evolutionary processes would have acted on that. You’d see very complicated biochemical mana weaving. Which quickly upsets the entire power balance, as evolved mana weaves would be a hell of a lot more intricate then anything a human could create. Not counting things like pure mana entities and other over-powered creatures.

My solution to this was the gods. At some point in the past beings of mostly pure mana found themselves running out of what is a limited resource. So the fought, and eventually ascended, leaving earth largely barren of mana for millions of years. That allows for evolution to more or less take its normal course, and gives us a reason for gods.

Viewing magic

Wherever water intersects a spell weave, it acts as a window into the world of mana. Immerse a spell in water and you can clearly see the whole of it. Naturally, when it’s raining you can see all of a mages prepared spells floating around them.

You can also craft lenses. Simply weave some mana into a vial of water. You can’t see very far through one of these lenses however. Beyond 3 feet there’s only darkness.

Magic an tribes

There are a huge number of materials that can affect a spell weave, in the same way as volcanic obsidian affects a spell weave. There are materials that turn a weave into a sort of “sensor”, activating a part of a weave when something is nearby. There are materials that alter a weave to it moves things in the physical world, or so that it moves itself.

There are a lot of different materials, and some tribes have a monopoly on them. For example, perhaps only one group can create lighting?

Posted in Uncategorized | Leave a comment

Will 3D printing survive patents?

The 3D printing revolutions is only just beginning. But why is it only just beginning now?

The modern 3D printing craze is all about FFF (fused filament fabrication) based 3D printers. It’s brought the price of 3D printing down from hundreds of thousands of dollars to a few hundred dollars. There’s no messing around with expensive photosensitive resins, or toxic powders and expensive lasers like in previous generations of 3D printing. It’s a technology that has taken 3D printers from the offices of elite engineering firms into high-schools, libraries, and hospitals.

But the revolutionary new technology isn’t new, and the only thing revolutionary about it is that it’s no longer being priced out of your reach.

The earliest documentation we have on that methodology is the 1989 stratasys patent. Since then they’ve decided to focus on more expensive 3D printing technologies, catering to elite clients and pricing most people out of their offerings.

So why the focus on high cost technologies? Why does stratasys consistently choose a big piece of a small pie? If the technology has existed for decades, why did we have to wait until their patents expired to get reasonably priced 3D printers into our schools?

I don’t know. I can only imagine that it’s something to do with their corporate culture. Whatever the reason, the result is the same. They have a history of choosing strategies that hurt consumers and the world. I know that may sound drastic, but I’ve seen 3D printers used to lower the cost of prosthetics in third world countries, and to replace thousand dollar instrument adapters for disabled musicians. It makes a very real difference in real peoples lives.

They certainly changed how makerbot industries does business. Since they acquired makerbot, makerbot has implemented a price discrimination scheme and ended almost all of their community collaboration. Changing it from a project about helping humanity into a project solely about making money.

For me, personally, I look at a move to closed source as the ultimate betrayal. When I was forced out, it was a normal, if unfortunate, clash of wills where one person must stay and one person must go. I swallowed my ego and left, because I knew that the company I founded would carry my ideals further into the world. Regardless of our differences, I had assumed that Bre would continue to follow the principles that we founded the company on, and the same principles that played a major part in the success of our company. Moving from an open model to a closed model is contrary to everything that I stand for, and as a co-founder of MakerBot Industries, it makes me ashamed to have my name associated with it.

~Zach Hoeken, co-founder of makerbot industries.

What would the world have been like if they hadn’t locked that idea up for the 20 years it takes for a patent to expire?

What happens if they decide to lock another idea up for 20 years?

It’s a lot easier to write a patent then actually develop new technology, and they’re churning out new patents at an alarming rate. Including patents on 3D printing prosthetics. They’re most likely building up a patent base in order to litigate their competitors.

Patents are supposed to encourage innovation, but they’re not encouraging innovation if a company is just setting on them in order to maintain some kind of legal superiority, and continue their price discrimination scheme.

Right now the 3D printing world is very competitive, with a ton of small companies competing. But how are those small companies supposed to compete now that stratasys and their legal team have turned their attention to that emerging market? When stratasys doesn’t need to innovate, they can simply litigate? When they can simply purchase the industry leader and tell it to use their methodology?

The future of 3D printing looks more and more like it’s going to be ruled by one company and one vision. Sadly it’s a vision that’s known more for lining their own wallets then producing technology that makes the world better.

Posted in 3Dprinting | 1 Comment

Creating a new web stack for collaboratation and dynamic content.

People are finding that the current web stack (html,javascript,css) isn’t getting the job done. The old paradigm of thick servers and thin clients is becoming obsolete as people want more reactive app-like web pages.

In the next few years we’re probably going to be dealing with virtual/augmented reality (see the castAR and occulus rift) and 3D printing. Inevitably we’re going to try to adapt our existing web infrastructure to deal with problems in those fields. They’re both actually pretty similar problems, collaborate CAD and virtual spaces.

We’ll hack away at the existing web stack, develop new standards, and get something that more or less works. I’ve seen all kinds of very clever solutions to these kinds of problems. We’ll get something that works eventually.

But the web isn’t exactly clean or easy to develop for. It’s riddled with strange design patterns and weird legacy behavior. I’d like to use the momentum from those two fields to develop something a bit more reasonable, with design patterns that naturally compliment 3D and collaboration, instead of being a hacked in afterthought. The web is a pretty well tested set of design patterns, and we don’t want to stray too far, but we could definitely make this easier.

I think we can get a pretty awesome environment by combining a few off the shelf systems.

A shared/editable html inspired “scene” data structure

Basically, html where code can change the values, and where multiple users can interact with the same html “scene”. Similar to how javascript and the DoM works now, but with support for multiple users editing the same instance simultaneously.

Verse 2.0 is network protocol for real-time sharing of 3D data. It is intended mostly for graphical applications of collaborative virtual reality. It could be used for sharing data between applications like Blender.

The verse protocol.

Integration with blender and other design tools is an obvious asset. Editing your 3D models or your textures in real time on your development server is a very natural and easy workflow.

It uses a tree data structure just like xml. If you want to do very fast simulation stuff, you can talk to it using C. If you want to use it in your web app, there are javascript bindings. We’re mostly going to be paying attention to the python bindings though.

Fast sandboxed python code

We need a scripting language. Python has popular support, and it’s pretty easy. We can do sandboxing via pypy. Why we need sandboxing should be pretty obvious. We don’t want the web server to be able to run arbitrary code or install viruses or anything.

Of course eventually we want to support other languages, perhaps via something like llvm bytecode. But we need a standard base to work from, and splitting effort this early would be counter productive. We’re going to need a lot of higher level abstractions in order to make this really easy to program for.

Services design pattern

We still need a way for out sandbox to talk to libraries outside of its sandbox. It would also be useful to be able to talk to the server in a pythonic way, instead of just watching for changes in the verse tree. What we lose in network performance we make up in ease of programming.

RPyC lets us create remote “services” that behave like normal python functions. Implement a server side function that simply returns the users hit points, or implement a non-sandboxed service that let’s you access very fast simulation tools written in C.

For example, you could set your verse scene to be read only, and make it so the client needs to ask the server to move its avatar for it. Simplified programming, but more network overhead.

It makes implementing a secure plugin as simple as writing some python code. I’d like to see this evolve into an android style capability based security permissions model.

Rendering with scene graphs

sg-road-truck-shared-crates
Image from Leandro Barros’ intro to open scene graph, which nicely explains exactly what a scene graph is.

Scene graphs are a popular way of rendering a 3D scene. There are scene graph implementation in javascript, and open scene graph runs on everything from desktop computer to android tablets. A scene graph lets us separate our presentation from our logic. That means that by simply recording changes in the scene graph we can create 3D screenshots or videos, changing render setting or camera position when we view them. We could do all the heavy lifting on a desktop or cloud computer, and forward the scene graph to a mobile device or a specialized rendering cluster.

Of course we’d provide access to our scene graph rendering via a service, and you could easily replace it with proper opengl bindings.


Right now I don’t have the time to really work on all that though. I’ve got some code working but there’s a lot to do, and I’m spending most of my time working on 3D printing related stuff. Any devs feel like talking about it? I’m still refining the system architecture. Drop me a line or just comment.

Posted in Uncategorized | Leave a comment

How government?

If you haven’t already, take a look at “why government?“, where I take a look what a government actually does, as far as the economy is concerned anyway. It introduces some of the terms I’ll be using today and talk about why we need a government for a healthy economy.

Once again, we’re largely going to be focusing on the economics. With that it mind, here’s my recipe for a healthy economy.

Most importantly.

  • Monopolies/oligarchies are bad.
  • Experimentation/risk taking is good.

In other words, too much market power is bad. However too little can be bad as well, if you don’t have a more intelligent way of handling risk. If my suggestions run counter to those goals, then they’re not good suggestions.

Innovation

A lot of innovation comes from the hobbyist market, or from research done on the government dime. Pure research is risky, you’re not likely to get a good return on investment. It’s almost always better to spend your money on advertising, or other ways of capturing more of the existing market.

Making small incremental improvements to your existing products/revenue streams is a common tactic, and is often mistaken for innovation. I’d call that optimization.

Optimization is an important part of the process. But you don’t see multinational corporations creating any sort of disruptive innovations. It’s just not a good return on investment when you could be putting that money into advertising or optimization.

There are a number of ways we could make innovation happen more.

We could make it easier for companies to take risks. If we just give them more money it will probably still be better for them spend on advertising and optimization, so we have to figure out some way to reward innovation itself. Kickstarter works pretty well for that.

Personally, I like the idea strong social safety nets. It empowers individuals to take more risks in general. A strong social safety net makes it easier to quit your job and start your own business. A lot of those business will fail, but they’re all trying new stuff. When we absorb that cost across all of society, the return on investment looks a lot better.

Representation

This isn’t so much related to the economics, but I figure I’ll throw it in here any way.

The American people’s views are not being represented by their representatives.

Right now if a politician makes a bad decision, they don’t feel the effect for a while. Four years at worst. By then, many of their constituents will have forgotten about it. If a politician goes back on campaign promises, you have no recourse.

There’s also the problem inherent in the two party system. People don’t actually get their view represented, they have to pick whatever party most closely matches their views. Hopefully that party continues to most-closely-match their views during their entire term.

The pirate parties’ LiquidFeedback system solves both of those problems. It’s a “direct representation democracy”. You can select a representative, or you can vote on any given issue yourself. You can change who represents you at any time. It’s the best democratic system I’ve seen so far, and it exists today. I’d love to see a liquidfeedback based political party show up in the US.

Bounded Markets instead of government fiat

The government is slow and unwieldy. I hope some of that can be fixed by having it more accurately represent the will of the people, but that will take a long time.

When handling a natural monopoly, the government tends to reach for the bluntest tools available. They set prices themselves, say “you have to charge this much money for this much service”. That’s a band-aid over a larger problem. You need to set conditions on a market that make them more competitive. For example, you could set up grants for people trying to enter a market, negating some of the barriers to entry.

I like how they handled common carriers in the Interstate Commerce Act of 1887. A few firms were using the concepts behind limit pricing/dumping to have the railways only carry their stuff, driving their smaller competitors out of business. The government stepped in and said that all freight had to be charged at the same rate. This meant that the various railways were still in direct competition with each other, but stopped all the predatory pricing and made a lot of Anti-competitive practices tenable.


This is where I’d put a specific call to action, if I had one. It’s complicated and we need to do a lot of research to figure out what to do. But I think we’ll be okay if we just keep working hard and trying new strategies.

Posted in economics | Leave a comment

Why government?

It’s a bit of an odd question. Government has existed forever. There are a lot of common sense reasons, but more and more people are questioning exactly what role the government should fill, and if we’d be better off if we limited it to the absolute minimum.

I’m going to mostly ignore the safety/policing issues and focus on the economics of government.

Proponents of minimal government generally say that the government is slow and unwieldy, doing its job very poorly.

Markets are great at optimizing a process. Basically, they want to apply survival of fittest to the roles being filled by government agencies. At the crudest level that means taking bids on road work instead of running your own road team. They’d like to expand on that, getting contractors to compete for who gets to run the DMV for example.

They hypothesize that a lot of government regulation gets in the way of the core “survival of the fittest” tenet. A lot of regulation makes it more difficult for new people to get involved in the industry. Raises the barriers to entry into a given market sector. Less people mean the existing players have more market power. The FDA certainly makes it more difficult to start producing medicine, and patents make it harder to make all kinds of stuff.

A firm with total market power can raise prices without losing any customers to competitors. At the core, a monopoly or oligarchy are examples of what happens when a firm gets too much market power. On the other hand, if a firm has too little market power they can’t take any risks at all, or support any inefficiencies. That’s why we have patents. They’re a (broken) system to try and make the risk of new research less risky.

There are also a lot of cases where a government handles a situation that would quickly turn into a natural monopoly. A natural monopoly is a when it’s most efficient for production to be concentrated in a single firm. Once you have all the market power that comes with being in a natural monopoly, you can abuse the hell out of it.

Governments also regulate against backroom deals and other forms of collusion. A lot of that comes from the Interstate Commerce Act of 1887, which was very sensibly done. It’s where we get a lot of our ideas about common carriers, and a model I thoroughly endorse for the internet. Network neutrality is a big issue.

Finally, governments help in situations where there’s a lot of value created across an entire society, but where it’s very hard to capture that value. University is the prime example. A university creates a lot of value across society, but it doesn’t really have any way of accessing that value. Right now we use government backed student loans. It gives the universities a way to capture some of the value they create, albeit in a sort of strange backwards way that doesn’t really connect success to profit properly.

I’ve heard employment contracts suggested as an alternative that doesn’t involve the government. Essentially having a firm pay your way through university if you agree to work for them afterwards. This seems pretty rife for abuse to me.

There’s a lot of stuff we need a government for, but there’s no doubt the current system is completely broken. In my next post I’ll be talking about what a government should be doing, and how to do it efficiently.

Posted in economics | Leave a comment