4 ms·
I will not provide an exhaustive list, but I will give a single example. I also wish I had the source code to the controller software to a large motorized rock
by schaefer 10y ago
I will not provide an exhaustive list, but I will give a single example.
I also wish I had the source code to the controller software to a large motorized rock climbing wall that was produced back in 2002. The "Assent fun rock".
Alas, I don't. So... I've reverse engineered the protocol between the device and the native computer controller and implemented my own controller stack from the ground up on linux.
Why? because I wanted to add an algorithm that lets the speed of the device respond to the reading on my heart rate monitor.
Here's a photo of me on the thing, courtesy of my friend.
https://www.instagram.com/p/48WVcbkT6x/ https://www.instagram.com/p/48WVcbkT6x/
- reitanqild 10y ago>> Can you point to all the things you have modified in programs where you do have source access? Good question. Just ask it respectfully because.. > Alas, I don't. So... I've reverse engineered the protocol between the device and the native computer controller and implemented my own controller stack from the ground up on linux. ... it gets better everytime it actually is a hacker on the other end. Have my upvote!
- ksk 10y agoWhy have you assumed it was not respectful?
- reitanqild 10y agoMostly poor wording from my side I hope; I mean generally when asking that question it should be done respectfully. That said: Can you point to all the things you have modified in programs where you do have source access? Can easily be interpreted as slightly disrespectful.
- ksk 10y agoI think that example blurs the lines between open source, and adding functionality to a piece of hardware, and having an open data protocol. People are not purchasing the hardware and software without integration. This is less about open source, and more in the hardware hacking category. Otherwise, since every piece of modern electronics has some kind of firmware/microcontroller in them, that would make anything at all to do with them, about 'open source'. I think its fair to say you obviously understood the spirit of my question since the context was open source operating systems. So, let me ask again, what have you changed about the OS at a system level?
- schaefer 10y agoYou and I have very different working definitions of the phrase "open source", and the philosophy behind it. I'd be curious, If I asked you to pinpoint the start of the open source movement - the exact moment - what you'd choose. If asked the same question, I'd offer up Stallman's "printer parable". http://www.oreilly.com/openbook/freedom/ch01.html http://www.oreilly.com/openbook/freedom/ch01.html I chose my "climbing wall" example because IMO it's the closest a story of my own comes to Richard's experience (granted there are differences). To me, that makes it very much an "open source" example. Between both Richard's printer, and my climbing wall both of us are basically happy with a hardware/software combo. We just want to make a tiny change. But - we can't. (Unlike Richard, I feel absolutely no righteous anger, but like Richard, I did roll up my sleeves and get to work and now - Yay! the thing I wanted exists in this world!) --- If you still would rather I give a different example that might be better in line with your expectations and personal definitions... fine. When I was a teen, I got a copy of Gary Nutt's book: "Kernel Projects for Linux", using the book, I modified the ext2 file system to allow for "tagging" of file entries (As much as it pains me to say it: think hashtags). I would tag source code with the project name it belonged to. I used that file system for years and years. I enjoyed this minor feature and found a lot of joy in having done it myself.
- ksk 10y agoI don't want to advocate for a more "pure" definition of open source. You can widen or shrink the scope of anything at any time. I am perfectly OK with a vague definition of open source that encompasses hardware too. But that is not an opensource definition that I personally (and I would argue most) care about all that much. Few people, if any, are interested in modifying the firmware inside their microwave or refrigerator. Sure, at some point such firmware could become burdensome (e.g. coffee maker with DRM'ed k-cups) to the point where opensourcing the firmware would be something I could get behind. For you that tipping point is different. Now coming back to the example, that is a great example. I think we can learn a lot from that. One thing is that 'open' is a large cafeteria. You would agree that simply opening the source is not sufficient in most cases. If the spec for EXT2 changed after every minor update to the kernel that would make your addition pointless. Same thing with the API at the I/O level. If that changed all the time, it would make your addition brittle and prone to breakage. So what is it that's really beneficial here? I'd argue that the source is the least important here. Open protocols, open data formats, defined interface boundaries, and the like are _much_ more valuable, really, several orders of magnitude than simply dumping several million lines of code onto someone. Also.. its funny that you mention RMS since he is so vehemently opposed to using the term open source :P