The Untold History of Arduino
arduinohistory.github.io
arduinohistory.github.io
Not to belittle the contributions of Hernando, he did great work. But so often each incremental step in technology is made with the help and inspiration from those who came before. It is the very nature of open source that it will be embraced and expanded.
Anyway, I was gratified to see now, that something I worked on 18 years ago would intersect with a such an interesting story, even if only in a tangential way.
He has always gone by the quote: "If I have seen further it is by standing on the shoulders of Giants" (from Isaac Newton). He fully recognizes that none of the work he did would be possible without the amazing work done by people before him.
So, all I have to say is: Thank you! Without people like you, the state of electronics and education in technology wouldn't be where it is today.
BTW, the Javelin Stamp, and it's predecessors, were all incredible feats of engineering and science. As well as the Propeller!
Their real innovation was social. They built a community around the thing and provided documentation that wasn't addressed to EEs.
I'm so glad they didn't choose the PIC.
Disclaimer: I'm a long time PIC user, going all the way back to the PIC16C84. Long before anything like Arduino came out, I always found Microchip's documentation to be much easier to crack. Of course, I admit to a certain amount of mental inertia and familiarity with the platform as well.
The PIC16 at the time at least definitely didn't have GCC support, I recall having to boot Windows to compile my code for it. Pretty sure that's still the case.
The 16- and 32-bit chips are more mainstream, and after using their proprietary compiler for a while, they switched over to GCC. Now from my standpoint, it's still "their" GCC, in that I download and use their tools. And there are some features that you still have to pay for such as optimization. I'm certainly not in love with those aspects, but it's good enough for me to wait it out until something else comes along that's compelling enough for me to switch. Folks have demonstrated building their own GCC toolchain for PIC, but I haven't bothered.
Somebody without my mental inertia and legacy projects might make a different choice.
My uses aren't critical enough to require considering the smallest, cheapest parts, so I simply avoid the 8-bit chips.
From back when I was working on AVRs at university (2003-2004), I remember there were a ton of programming settings to choose from, different ways to program it (SPI, parallel), and you could easily screw up something if you set the wrong fuses, used the wrong oscillator frequency etc. All of this complexity was taken away by Wiring / Arduino, so you could focus on your project without digging through datasheets.
So the simplified IDE and social aspect was only part of the story.
The idea that the mere fact that Banzi was my thesis advisor
gives him some sort of higher claim to the work done on Wiring, is,
to say the least, frustrating to read.
i dated an interior design student when at universitythere was a competition and my so was given second place
my so was crushed and honestly thaer entry was far superior.. the ideas were more interesting and applied, and the effort was more pronounced
i quipped, 'the best entries always get second place because everyone forgets who got second place.. which makes it easier to steal your ideas'
it was meant to console with a bit of humor, but since then i have found the notion poignantly evidenced
academia can be a scary place for ideas
Also: not an entirely unusual case. There is always a race for credit for a true success, and it is not always due to real malice (not saying this is the case here.) People have a hard time remembering what came before they were involved, and lack the incentive to find out.
>"Success has many fathers, while failure is an orphan."
1. Be the supervisor for a thesis that will become a open-sourced project
2. Use this open sourced project in one of the classes you teach at University
3. work together with and ask for help from the creator of the open-sourced project
4. see the value of the open-sourced project
5. fork it
6. claim it as yours
7. get rich by selling it
8. write super douchy email to a previous maintainer of the project you forked.
"Sorry JC but you had nothing to do.with this…. You can’t possibly try to get credit for.something you hadn’t been involved with"
9. Lie to media
".. In two days, Mellis banged out the code; three days more and the board was complete. .."
10. Tada - you are the biggest scumbag of all times.
Man, these guys deserve some shit. Why don't you send him a tweet? https://twitter.com/mbanzi/
Not so. You just have to drill ten holes, using another piece of tenth-inch perfboard as a drilling guide. I've done it; it works.
EDIT: Yep - the first speaker in that doc is Banzi
I would say, as open source developers, we have no right against commercial forks of our code lest we choose a more restrictive license. I believe OP is tormented by the lack of valor in the quite prickly situation but as hackers and devs we need to defend fair use of what code is licensed by. Fair licensing, fair commercial endeavor. It sucks when someone forks without even making contact but part of me feels like open source should be a little bit wild west. The rules are sharp square and leave little for interpretation, thats how we want our freedom
The Wiring developer is not upset about someone forking the project, but the lack of acknowledgement and deliberate misinformation, even lying by the Arduino developers.
Steal is when I take something private, locked down, under patent and use it to profit. Show me what was stolen that wasn't given for free.
Arduino did give them credit, they said it originated from Wiring. The other factual details where relatively minor, something that could easily be confused by most people.
I love how the voting system in Hacker News is used as a weapon to suppress all dissent. What did I say that was trolling? Creating a new account because I work too near this field.
The team behind Arduino hasn't made its lineage clear enough, that's why this article is newsworthy. I also think it's worth knowing about as it adds a new perspective to the recent legal issues surrounding the rights to Arduino.
I actually did read the entire article. Most people seem to be reacting to the title, Arduino clearly attributed Wiring, they didn't just steal it and not say anything:
34. Banzi is the creator of the Programma2003 Development Platform, a precursor of the many ARDUINO-branded products. See: http://sourceforge.net/projects/programma2003/. Banzi was also the Master’s Thesis advisor of Hernando Barragan whose work would result in the Wiring Development Platform which inspired Arduino.
This was probably written by a lawyer and not Massimo himself. Its a legal filing. It says clearly Arduino is inspired directly by Wiring. What else do you wan't from an attribution of credit? Should Massimo get a tattoo that says "Wiring" on it and put it on his forehead?
That quote attributes more credit to programma2003 than wiring (precursor vs. inspired by). Is that an accurate portrayal of the history?
And there's a middle ground between stating inspiration and getting a tattoo. Inspiration implies idea not substance. Since it was a fork, 'based on' may be more appropriate.
The most infuriating part of the story is the usurpers painting themselves as geniuses with the claim that they "banged it out" in a few days.
The real innovation of Arduino has always been the Wiring programming system. Personally I prefer the low-level interface the AVR chips provide and document very well in their datasheets. I find it frustrating to have another layer, like wiring, between me and the hardware. As an embedded systems programmer my perspective is different.
To me Arduino has always been little more than a really good marketing campaign.
Being readily available for Mac doesn't hurt for the design/art crowd either- Wikipedia suggests that Basic Stamp didnt have first-party Mac support? Also looking visually similar to Processing (both the IDE and the code style) eases the switchover for people who are new to coding. Ive heard Arduino described as "Processing for Hardware" which is a bit of a stretch in a technical sense, but perhaps exactly correct in a spiritual sense.
[1] http://www.nydailynews.com/archives/nydn-features/autumn-city-merry-menageries-big-stores-put-sugarplums-glass-article-1.746083
[2] https://www.youtube.com/playlist?list=PLcajvRZA8E0_ckfjqU1irYzOwbsYa2AjCSo the "little more" part is the difference between some art student being able to create something cool vs. giving up after three days banging his head against a wall. But when you're an expert in a field it's hard to appreciate that.
There were serious issues with the board design and fabrication - the location of the caps were pretty and aligned, but not "smart" for power distribution. Faulty signals, bad timing, and other issues were common with those boards. It was a terrible PCB by any measure (but looked awesome, like 2015 gamer mobos).
However the ideas behind "Wiring" and the "Sketch" were really innovative ideas for non-techs designers who mostly wanted to servo-blinky-sensor artsy stuff. And it really did open up embedded development to a whole new semi-technical audience.
It's no longer a Windows-only compiler. The standard compiler package includes binaries for OSX and Linux, too. It will even run on ARM if you compile it from source using the appropriate modifiers.
JALv2 is has a PASCAL-like syntax that is easy to learn and allows you to write some very elegant code.
The JAL libraries (jallib) are incredibly extensive, covering virtually every 8-bit PIC made and every possible peripheral function.
Vim supports syntax highlighting for JAL, making it a good text editor to use for writing code. I use Vim on a Raspberry Pi 2 to write and compile my code, then upload it to the PIC using the Pi's GPIO port and Pickle (http://wiki.kewl.org/dokuwiki/projects:pickle). No external programmer is necessary.
I prefer using JAL and one of the USB-capable PICs for my projects instead of an Arduino since I can build the entire project on a breadboard using one chip. I don't need to add a second serial-to-USB converter that's not available in a DIP package, nor require my users to install special serial driver from some unknown third party just to make it work.
Creating technology is part of the work, but sadly not the part that makes you successful. To be successful you need to get out and about and get in people's faces.
Marketeers undervaluing developers work.
push request #800020201 "Hey, Hernando, think you can push that update to Wiring now, we're paying quite a lot in support time here. The LEDs aren't blinking since you pushed that update to support EEPROM chips from the 80s"
It's the same reason Apple keeps their code to their hardware. I think it's a brillant business move, and anyone thinking of releasing low-level open-source code as a primary component of a hardware project should imitate it.
Also, did I miss the part in the article where Wiring and its boards were set up to become a huge success without Arduino's clever marketing and business plan? It seems like it was doomed to have "huge successes", like one class in one university out of thousands.
The guy should 100% get more credit, and if this happened to me I would always be a little hurt about it, but at the same time, would it be a big deal if it had never extended past a thesis somewhere? Would it matter if Arduino hadn't been a bunch of really clever people?
It's telling that Arduino is flailing now that they've extracted as much value as they possibly could out of the ideas they stole.
That's not the argument. He's not upset Arduino was a huge success, nor is he all that upset that he is not involved with Arduino (as far as I can tell from this article, as it's written very professionally). The argument is that there is a rather significant fight between the co-founders of the Arduino project about who owns what of the Arduino brand. This article paints a picture that in reality, the product behind the brand was essentially ripped off of someone else's hard work with very little contributed back to the original project. I don't think anyone wouldn't start to feel rather frustrated if someone forked their open source project, made it hugely successful (while complying with licenses and other conditions, but without directly contributing back) and then started fighting within themselves over who "started the project all on their own".
Forking an open source project != ripping it off people. I feel like Hacker News is the last place this distinction should have to be made.
The point of writing a thesis in academia is to share an idea and encourage other people adopt it. Other people did adopt it, that's what an effective thesis is.
Everything that was "stolen" here was either code or an idea which was made freely available for others. What people in this thread need to understand is that if you want to build a business, don't give away all your source code and ideas and act surprised when someone listens to you...