|
title: Put the knife down and take a green herb, dude. |
descrip: One feller's views on the state of everyday computer science & its application (and now, OTHER STUFF) who isn't rich enough to shell out for www.myfreakinfirst-andlast-name.com Using 89% of the same design the blog had in 2001. |
|
x
MarkUpDown is the best Markdown editor for professionals on Windows 10. It includes two-pane live preview, in-app uploads to imgur for image hosting, and MultiMarkdown table support. Features you won't find anywhere else include...
You've wasted more than $15 of your time looking for a great Markdown editor. Stop looking. MarkUpDown is the app you're looking for. Learn more or head over to the 'Store now! |
|
| Tuesday, July 31, 2012 | |
|
Apple doesn't rely on market research, says marketing chief Phil Schiller: "We don't use any customer surveys, focus groups, or typical things of that nature," Schiller said. "That plays no role in the creation of the products." Or, as they say Jobs said, "it's hard for customers to tell you what they want when they've never seen anything remotely like it." Even if that's a little reality distortion, the point's a very good one. You can't listen to customers when you're aiming for the masses. You have to give them what they want in spite of what they believe. (Much different story when you're doing custom software development, but at that point, you're either advancing corporate culture ("This system will help us plan projects!") or helping them give their customers what they what in spite of themselves. Give the users what they want, not what they say they want. (I'd probably extend this to all the forum posters that say, "Well, this is great, but if it had Feature X, I'd DEFINITELY buy it!" No, no you won't. When X is in, Y will suddenly become the dealbreaker. I can't sell to you [easily]. I need to sell to those who are quiet. What do they want, even if they haven't visualized it?) EDIT: Let's put it more kindly -- Don't design for what the user knows they want now. Design for what the user doesn't know that they will want tomorrow. Labels: apple posted by ruffin at 7/31/2012 10:11:00 PM |
|
| 0 comments | |
| Monday, July 30, 2012 | |
|
Former Apple Ad Man Slams 'Genius' TV Spots as "Landing With A Thud" - Mac Rumors: This is different. These ads are causing a widespread gagging response, and deservedly so. I honestly can’t remember a single Apple campaign that’s been received so poorly. It's probably time to start collecting the Apple Fails. I know that's tired, but the post-Jobs Apple is starting to act more like a typical company. As long as there's no serious brain drain (though Mansfield leaving isn't good), they'll remain above average, but things just don't feel the same from my poor vantage point. There was the issue sending out OS X Server codes for Up to Date folks who wanted straight Mountain Lion. There's, well, there's Bob Mansfield selling stock and leaving. There's Tim Cook's claim that Apple will start paying more attention to business users. There's a smaller iPad rumored to be on the way, something Jobs claimed wouldn't happen not because there wasn't money in it, but because it wasn't The Right Way to create hardware. Jobs left money on the table to stay idealistically committed to his concept of great devices. Cook's taking more of that money off. I don't know, perhaps it's even sustainable. I must think so on some level; I haven't sold all my stock yet. But it is time to start collecting Apple fails. And no, Ping, though a fail, at least works. It was a lost gamble, but at least it was a gamble. Apple needs social. Worth a shot. Labels: apple, apple fail, hats of money, iPad, Jobs posted by ruffin at 7/30/2012 11:25:00 PM |
|
| 0 comments | |
| Sunday, July 29, 2012 | |
|
So far, it's... // Settings in here override those in "Default/Preferences.sublime-settings", and Labels: noteToSelf, sublime text posted by ruffin at 7/29/2012 09:47:00 PM |
|
| 0 comments | |
| Monday, July 23, 2012 | |
|
Recently, there was an OSNews article called "Sparrow's acquisition highlights the dangers of closed source". I think there are issues enough with the logic in that statement alone, so I got baited into reading. Sparrow, I guess I should add, is a pretty neat (though low featured, afaict) stand-alone email application for OS X. People like it. Google bought it. Now there will be no new Sparrows and, more importantly, no Sparrow for iPad, which they'd been working on recently. Buying Sparrow was very likely, I believe, a talent acquisition move for Google. They're buying the programmers as much or more than the code. Regardless, apparently the OSNews author believes that if Sparrow had been open source, it'd be reasonable to expect the next version of Sparrow to come out on time and under budget in spite of the developers leaving. And I guess the implication is that Sparrow would have grown just as quickly and been just as personally lucrative for the developers if it were an open source project as it did as a closed source one (wait... what?). Such an argument is pretty sad. Open Source only protects you from your favorite app's going kaput if you have programmers ready to contribute, and usually to contribute for free. I've posted a couple of times that I'm reading Dreaming in Code, the book about the Chandler Project. Some folks seem to enjoy the app. It's open source. Chandler's also essentially dead. Thunderbird is open source. It's in stasis mode too. Open source does not protect you from a project's death. It does allow a group of programmers to pick up where the original team stopped. And if you've ever inherited code, you know what a bear coming to a brand new codebase can be. Let's just say it's often a theoretical possibility, but practical nightmare. Every program is a cyborg. Completely remove the original human element -- the original developers -- and the cyborg likely dies. Google's hiring Open-Sparrow's developers kills Open-Sparrow just as surely as this kills Closed-Sparrow. The difference? At least Closed-Sparrow's programmers made enough cash to keep them interested to this point in the game. Show me a project that went -- entirely unfunded -- from commercial to successful open source project. Closed source protects small programming shops. There's no way around it. There are a few exceptions that prove the rule where donations fund projects, but I don't know that any were initially closed-source commercial projects. More importantly, it's hard to sell software as a business model using free software. Services, fine, you can sell yourself as someone who provides services for OSS, but there's not a huge market for email-app-related services. Not many calls from people waiting to spend $120/hour for you to configure Sparrow. Lots more willing to pay for the app or to click your, in my case at least, surprisingly well-targeted ads. Regardless, replying to a comment to the OSNews post, I believe I convinced myself of why BSD is evil in nine words or less. OSNews > Thread > "RE: Whining because they are Apple fanboys?" by Macrat: RE: Whining because they are Apple fanboys? And that's really the rub for me. BSD allows a situation where it was open source, but it isn't any more. Thank you, me, for putting that succinctly. Based on the length of your typical post, including the preamble to this one, I'm surprised you were able to come through like that for us. Labels: apple, bsd, copyright, gng, licensing, open, os x, OSS posted by ruffin at 7/23/2012 10:38:00 AM |
|
| 0 comments | |
| Wednesday, July 18, 2012 | |
|
AT&T to Begin Offering Shared Data Plans in Late August - Mac Rumors: AT&T undercuts Verizon at the simplest level with a single smartphone on a 1 GB data plan costing $85 per month ($40 data $45 device), compared to $90 on Verizon ($50 data $40 device), but adding additional smartphones to that 1 GB plan is more expensive on AT&T ($45 versus $40). Verizon's and AT&T's pricing are identical at the 4 GB level, while AT&T again takes the lead on higher-level plans with more data and devices. As an example, an account with four smartphones sharing 10 GB of data would cost $240 per month on AT&T ($120 data 4 x $30 devices) versus $260 on Verizon ($100 data 4 x $40 devices). Which is a very complicated way of saying they cost exactly the same. Labels: competition, hats of money, iphone posted by ruffin at 7/18/2012 11:04:00 AM |
|
| 0 comments | |
| Monday, July 16, 2012 | |
|
You know you're kludging when... There are native SQL techniques to display multiple columns onto a single row Labels: kludge, noteToSelf, oracle posted by ruffin at 7/16/2012 12:56:00 PM |
|
| 0 comments | |
|
I've been using git for a while now. It's not bad. The distributed "everyone's a server" setup is really pretty impressive. It's the Gnutella of version control, and that's not necessarily a bad thing. The one place where I've been unimpressed is in its conflict management. I don't know why, but kdiff3 and SourceTree won't play nicely together on my boxen, and I've had WinMerge save stuff wonkily on Windows as well using git from the command line. With all the merging you're going to be doing in git (no CVS invites merging and conflicting quite like git), conflict management becomes Job 2, second only to coding. Once all goes to heck when I'm diffing and merging, I usually just want to grab a conflict file and start editing the problems out, save over whatever was there, and then commit normally without any mergetool wonkiness. WinMerge does this -- sorta. You can only edit the "Yours" file, which is bizarre. If you want to use edits from the "Theirs" file, great. But if you want to use anything from yours, you'll never get the pop-up saying the files are identical. Theirs is read-only. Bizarre. As if there's no such thing as temp files or a Documents folder to put those files. I don't think WinMerge handles things when you turn on the original in your conflict files (another example) either. Edit: I'm right. Here's the sample conflict file: Shared headAnd here are the results. Wrong. ![]() I'd really like to have mergetool calls from git work with WinMerge and kdiff3 so I'm not kludging my workflow, and I'd like to handle conflict files with the original. So what do I do? Starting writing my own conflict file handler, of course. There's no git mergetool written in C#, I don't believe, so that's a legitimate need, right? I'll at least let that push me away from learning enough C to fix WinMerge. ;^) But first, I just want something that'll let me handle conflict files in a dependable fashion. After putting in a few fun hours over a few weeks (maybe 4-6 horus, sadly enough), I finally have a line-by-line diff engine that seems to be working okay. I need to add something to create markup for intraline changes, but I'm on the way. Which means it's finally time to slow down and see who else has already invented a better wheel in C#, right? And though I missed it in my initial Googling, as if on cue, it turns out that there is a much better wheel: This library implements Myer's diff algorithm which is generally considered to be the best general-purpose diff. A layer of pre-diff speedups and post-diff cleanups surround the diff algorithm, improving both performance and output quality. Okay, well, actually it's an overkill wheel. It's not precisely set up to do line-by-line diffs (though the docs say they're "really easy" to do, which I don't doubt). And I don't think I need fuzzy matching -- do I? I mean, you want to see if the code's the same or not, FULL STOP, right? Now the dude who wrote it (that is, who wrote the original, which was ported from Java to various other langs by others) has a very geeky and very cool blog, and seems like a great, conscientious fellow, so it's certainly nothing personal. That is to say, this guy looks like he's doing good stuff, so I want to use his code, all other things equal. It's just that here, I just want an insanely accessible codebase. /shrug Leaves me wondering if not my using the lib is for simplicity's sake or simply my abuse of The Programmer's Prerogative. I'm going to put it here so I don't forget about it, and keep plugging away without it. I'd really like to foreground readability in the unconflict codebase, so that a relatively new but skilled programmer can take a look and very quickly understand what's going on without having to plod through it all and create a mental map first. The above lib is 2300 lines of this: /**(Honestly, that's not all that bad, but I think the point -- that it takes a pretty hefty mind rethreading effort before the code is skimable -- stands. Ah, good ole m.Groups, you know? Didn't we set m to patchHeader.Match(text[textPointer]); earlier? Ah, perfect sense. But wasn't patches your cat's name?) Some day, I'd like to write Moore's Relational Database that uses plain text files to store the information and whose engine was written just as cleanly as I'm proposing here. If it's too slow, too bad. Eventually the processors will catch up with us. But I want it to be easily readable to the point that it can be used heuristically. So little operational code can be. As a self-test, I'll try to keep this unconflict codebase pretty clean as I slowly, painfully find free time to work on it. EDIT: Looking back over, it sounds like I'm critiquing the beautiful code from the "Diff Match and Patch" lib. I'm not. It's honestly wonderful stuff, which is part of why I'd like to keep this noteToSelf so that I don't lose it. I've even, about a decade ago, taken a few months off to challenge myself to write an app with nobody to blame and no deadlines to force myself to compromise to see how close I could get to well-commented, exceptionally encapsulated code. Eventually, though, I got impatient, picked a few places to take shortcuts (not bad ones, but shortcuts), and BAM -- OMGWTFBBQ!!!1! the stuff's no longer idealistically pure. The Diff Match and Patch library's code actually stays pretty pure -- excellently factored, afaict, fast, whitespaced, well thought out stuff that even bothers, most of the time, to have descriptive variable names. Doing large things (or small things in a well thought out, slightly complex way) requires some interesting compromises by virtue of being code, I think. We'll see how well I do, but let me go ahead and admit my code here won't be anything as nice as "Diff Match and Patch"'s. The DMP lib is, afaict after a while looking through it, The Right Way to do diffs. And Matches. And Patches. Meow. (Ha, I should probably also submit a patch for // text.split('\n') would would temporarily double our memory footprint..) Labels: c#, git, unconflict posted by ruffin at 7/16/2012 12:19:00 AM |
|
| 0 comments | |
| Friday, July 13, 2012 | |
|
I was recently hoping Sublime Text's Vintage (vi-emulation) mode would allow me to do a search and replace over specified lines, one of my favorite time-savers from VIm. You know, something like... :212,216 s/combobox/varTemp/g No dice. I typed it, and SB2 stood there, looking at me. Dumbly, I might add. But I thought I remembered it could do multiple cursors: The shortcuts Look, that's essentially regular expressions for dummies. It's really really cool. Don't get me wrong. And there are times I'll be using this instead of regexp. But, at the same time, I'll be learning a lot less about regexp doing things this way. Oh, and it doesn't play especially nicely with Vintage's command mode. Regardless, score 1 more for ST2. Labels: regexp, sublime text, vim posted by ruffin at 7/13/2012 04:09:00 PM |
|
| 0 comments | |
| Thursday, July 12, 2012 | |
![]() After reading how the ADM-3A gave rise to vi's strange movement keys of hjkl, it's hard to use VIm without picturing that keyboard and being happy it didn't have arrows. Can you imagine how much more finger movement we'd do and how much more arthritis there'd be if that hadn't luckily been the case? ![]() Labels: vim posted by ruffin at 7/12/2012 10:53:00 PM |
|
| 0 comments | |
| Wednesday, July 11, 2012 | |
Scott Hanselman: Yeah. I’m looking at Jason Gorman’s Twitter feed and he has a wonderful re- tweet from R. Tyler Croy who says “Let's all argue about whether Haskell or Clojure is better while someone else ships a product with PHP and duct tape.” Though that's a pretty funny (and wise) tweet, much of the rest of the podcast it comes from is pretty far from the mark. Ironic, as it's talking about how the irony that programmers are far from the [management] mark. If AMD and Intel can agree to build processors to the same spec, why can't coders agree on CRUD? RLY? That's a valid parallel? Look, we know how to rebuild Microsoft Word, don't we? In fact, nothing rebuilds as well as code. Folks run EXACTLY the same thing everywhere the code's deployed. Look, medical devices with software don't crash not [exclusively] because the programmers are wonderful, but because they know how to test. You don't need accredited programmers. You need accredited testing plans. Scott Hanselman: I wonder if, you know, there's been books on software architecture that have drawn long and extended analogies with software design, with building design, and they do... I think that buildings and how you put up a building and these kinds of things, how do you put up a building without it collapsing, are pretty well understood. Is that because we've got 2,000 years of practice, and with software we've really only got maybe 50 to 100 years? Oh, please. Construction workers can build buildings that don't fall down because little mistakes in my house don't stop it from compiling. Nobody was building my house the way they do it now 2000, 1000, even 400 years ago. That's a clown statement, bro. Have these guys ever not built but owned a house? It's a mess of screw-ups and bugs. The hot water doesn't reach the kitchen sink quickly. One window is a different size than the rest. The commode leaks after two months. Light switches are unintuitive. Wiring is faulty and comes lose. The dryer duct is blocked. Years later, the exterior walls gain too much moisture. The problem, of course, is what I hinted at earlier: Copying software is so easy software development teams forget it happens. Look in some cookie cutter neighborhood that has 5 plans built over and over. Now go into each of those houses and ask their owners (well, knock first if you're overly literal) how quickly the master constructors made each. Find out from the foreman what mistakes were made on each house, and how different those problems were from house to house. And these guys were working from explicit plans. If I gave you the code to The Gimp and had you type it in all Compute! Gazette style, even if you weren't a programmer at all, it could work. Unlike construction, you need exactly zero experience to reproduce code beyond understanding how to read, type, and hit save a lot. Every new app requires making new plans. Get it? Every new program, every new library, every new plugin is a brand new plan. And a brand new construction effort. And something that builds a new commode essentially from scratch. Programmers are architects, R&D workers, construction workers, and housing inspectors. That's the reason every programmer feels more like an artist than a laborer. It's all new. They're not reproducing somebody else's clear plan, even when they amazingly have great mock-ups and test plans. If they had plans, anyone could hit copy & paste. Houses require constant upkeep. So does code. Drop the metaphor. Or, better yet, get it right. Labels: code, metaphors, pseudo-academic posted by ruffin at 7/11/2012 12:47:00 PM |
|
| 0 comments | |
|
Bad. Better. (Zip with only the images.) To save, overwrite the images of the same name in... ~/Library/Application Support/Sublime Text 2/Packages/Theme - Default (To get there, Command-Shift-G in the Save As dialog, then paste the above path) In Windows, that path is: C:\Users\Ruffin.Bailey\AppData\Roaming\Sublime Text 2\Packages\Theme - Default\ Labels: sublime text posted by ruffin at 7/11/2012 10:45:00 AM |
|
| 0 comments | |
I've been searching for the most efficient text editor/IDE combo, well, forever. I started with Visual Studio years ago (okay, well, I started with MPW, and even before that some random Pascal compiler on an Apple IIe, and BASIC on a Commodore before that, but professionally I started with Visual Studio) with classic ASP, moved to, well, a heck of a lot of others, but for the web it's been...
PhpStorm is actually the best I've used so far, Sublime Text 2 excepted from the comparison. PhpStorm has tons of great features that, once you've had them, you can't leave behind -- Go To Declaration in javascript, javascript error identification in editor, identification of unused javascript variables, and a fairly robust VIm emulator (except for this serious bug I reported about 14 months ago, apparently). Its only weakness? Slow performance and huge memory reqs. Why? I cringe when I say it, but it's in Java. I like Java. I've championed Java on the desktop. Maybe I shouldn't've. Coda 2 is native. But it's not a great editor/IDE. It's slick for what it is, but it's not great. And it's decidedly not cross platform. Sublime Text is native. It is crossplatform. It's fast and has good VIm keymap support. And it has the groovy code overview on the left of this post. Beside your scrollbar is that mini-version of how your whole code file (give or take) looks. How cool is that? Which brings me to my point: I like to have whitespace and flowerboxes, which makes my code easy to eyeball. Now, that neurosis is paying off again, as I can use Sublime Text to skip right to where I know I want to be in my files. Even before Sublime Text, I'd started using ASCII art headings to find pieces of commonly used code. Check this out: ![]() ![]() That's pretty cool. Labels: Coda, sublime text, text editors posted by ruffin at 7/11/2012 09:17:00 AM |
|
| 0 comments | |
| Tuesday, July 10, 2012 | |
|
Is it wrong of me to be upset that my old Protected AAC files sound like crap once I've burned to CD and ripped as mp3s? I mean, heck, I bought these things from Apple for full price, and though they still sell the same files without DRM (and, painfully, now at twice the bit rate I got), I'm strangely stuck. You're supposed to be able to pay 30¢ a track to get the DRM removed, but for whatever complicated licensing reason, I can't. I've got albums from Rolling Stones, Rich Robinson (not really a big change there), No Doubt, White Zombie, and Alison Krauss, all on protected AAC that can't be cashed in on iTunes Plus. This didn't used to be a huge deal. I usually listened to iTunes while working and often an iPod while I was moving around. And it's not like I don't have plenty of other albums. On my MacBook now, Protected AAC tracks less than 3% of my music collection. What bugs me is that 1.) I do like these AAC albums more than average and 2.) Now iTunes allows you to download your DRMless tracks as many times as you'd like, to whatever machine you're on. Reread the second. One thing that always bothered me was that I could lose the AAC files, and I usually burned albums to CD pretty quickly in case I had a hard drive failure. Amazon and iTunes both have mini-clouds now, where tracks you buy from them can be downloaded over and over. Amazon would also like you to consider streaming your music, though I don't see the advantage of streaming files that small to your phone at inferior bit rates when you want to listen to music. It's worth the SD card space to avoid stuttering music, imo. iTunes of course has iTunes Match as well, where you shell out $30 a year to access all of your files over the cloud, and occasionally at a higher bitrate that the files than you initially owned. So if you ripped The Cranberries at 128 bits/sec on your bondi blue iMac and threw the disc away, you can get them at 256 bits/sec now. And for those of you that pirated files, well, shame on you, but you can get copies of those from Apple's cloud wherever you are as well. Instead of being mad about Apple laundering pirated files, apparently the music companies consider this "found money". Finally, since Apple apparently pays some royalties for each time a Match subscriber downloads a track, copyright holders are getting a small cut of cash from the schmoes that pirated the files before. (This attitude also suggests that the companies really do understand each album stolen does not constitute a loss at retail prices, though that's not a surprise.) You can get copies of all the music in your library that's on the Store, that is, unless you initially bought them from Apple during The FairPlay years. Painfully, those files, unlike the ones you grabbed years ago from Limewire or the original Napster, aren't going to show up on Match. Now I have to imagine the files I just ripped from a CD made from 128 bit/sec AAC files that sounds like crud would count for Match. Which also makes me wonder how strict Match is about the files you say are legitimate. If I want a new, expensive album, can I simply make mp3 files that are the proper length with the right names/ID3 tags and have iTunes Match do the pirating for me, virus free? Or is the check more complicated, double-checking the sound in the file against an original's signature? If we have iPhone apps that can "listen" to what's playing and find that song for you to buy, well, you'd hope iTunes Match is at least as complex. And would my mp3's from Audacity-recording of cassettes match that cut? If you can make mp3s simply of the same length with ID3 tags and confuse Match, well, it's a real irony that legitimately purchased, DRM protected files are now in practice less legitimate than a kid with Audacity. posted by ruffin at 7/10/2012 10:55:00 PM |
|
| 0 comments | |
| Monday, July 09, 2012 | |
|
Software Inventory - Joel on Software: When you look closely you realize that months or years of work has gone into preparing those bug reports, and you ask yourself, how could we have 3000 bugs in the database while our product is delightful and customers love it and use it every day? At some point you realize that you’ve put too much work into the bug database and not quite enough work into the product. Ah, the old Joel is back, if only briefly. And he's back to using metaphors from his (iirc) bakery job again too. Edit: And by "briefly", I mean that by the end of the post, he's shamelessly going into full-bore sales mode for Fog Creek Software. posted by ruffin at 7/09/2012 02:59:00 PM |
|
| 0 comments | |
|
From the "leaked memo" previewing today's announcement that Thunderbird's development is ceasing: In summary, we've been focusing efforts towards important web and mobile projects, such as B2G, while Thunderbird remains a pure desktop-only email client. One important bit of information: B2G is Mozilla's Boot to Gecko project, which quickly appears to be a Mozilla suite for mobile devices. And from this, I think we have our answer why Thunderbird's "dying" -- which, you should note, it's not; it's simply going from development to maintenance. And what's the last bit of innovation you saw from Thunderbird anyhow? How anything really changed in 10 years? Since the Netscape client, what's changed minus better rendering, encryption perhaps, and a passable junk mail filter? Our answer? There's not a lot of corporate adoption of Thunderbird. Show me one desk job where a desktop email client isn't a necessity. If there was, this announcement would have never happened, even if Mozilla still wasn't going to do more development on Thunderbird. That is, this "announcement" is very bad press for Thunderbird. If your company was considering using it before, well, after hearing the spin that it's toast, you're not now. Thunderbird failed at business, so they've not only stopped planning to make it better but have also announced to the world that it's essentially dead. This announcement is more important/telling taken as part of a media relations strategy than what it means for Thunderbird in the future. And let's face it: Thunderbird is a good client, but it's never been great. I think Mozilla finally figured out they didn't have the resources to change that with this codebase. Now if they'd just start porting libmime to more programming languages... ;^) EDIT: Here's a nice description of how much of Thunderbird is being reused in the B2G project. Hello, Chandler 2.0? (Which is to say, they're reinventing 90% of an already solid wheel.) Labels: email, mozilla, thunderbird posted by ruffin at 7/09/2012 09:25:00 AM |
|
| 0 comments | |
| Friday, July 06, 2012 | |
|
How to create and apply a patch with Git - Ariejan.net: Applying the patch To apply, he's got some fancy way of signing it. You (where "You" == "I") can use: git apply fix_empty_poster.patch (no "check" any more) Labels: git, noteToSelf posted by ruffin at 7/06/2012 12:18:00 PM |
|
| 0 comments | |
|
Recently, Real Software posted a blog post that said that Real Basic works with MySQL, but that you'd have to open source any Real Basic app that used it. Real Studio is able to connect to the Community (free) edition of MySQL, but this edition usually requires you to open source software that connects to it (due to its GPL license). I didn't think that was right. Obviously, you can use MySQL without open sourcing code the same way you can write an app with GNU/Linux and release it closed source. If MySQL was that "viral", almost every two bit app on some cheap php hosting environment is now GPL'd. Turns out it's more complicated, apparently. It might be that the Real Software plugin that talks to MySQL is GPL'd. I don't know how that'd happen. Can't Real just get a MySQL commercial license and start coding? Regardless, the post got me thinking about MySQL licensing. And that, though I'm over two years late to the party, seems to be a lot of fun. Groklaw - Monty Program AB's Suggestion to EU Commission to Get Rid of the GPL on MySQL - Updated: So that is why they care. They have big plans for a business around MySQL, and they want to make some money from it. MariaDB is their fork of MySQL. Of course, there's nothing wrong with making money. Notice the role of the Open Database Alliance in all this, in case anyone tells you there is no connection. There is. I'm not sure I understand how the sort of dual-licensing many open source but commercially funded apps work. There's no way that MySQL-Cash isn't somehow benefitting from impressive changes and fixes to MySQL-Altruism. (My guess is that they pretend to have a "clean room", have someone walk in, view the OSS MySQL code, then walk out, across the hall, and do the same thing from memory to the closed version.) But companies do this, pretending that the open source version is completely and irrevocably downstream of the closed source version, and one of the MySQL co-founders apparently wanted to have his cake and eat it twice. He wanted to relicense MySQL under the Apache license so, essentially, he could do whatever the heck he wanted to do with the closed MySQL codebase at his new company without releasing that code rather than have to open source his fork of MySQL. That is, unless he bought a license to develop MySQL from the closed source, his only avenue to fork was to fork the GPL version. Oh noes! Which, of course, suggests that there's a fair bit of code in MySQL-Cash that we're not seeing in MySQL-Altruism. Apparently that threw the world on its ear. IBM said that Oracle could buy Sun (and, with it, MySQL), but some little schmoe (above) disagreed. The sale was held up, and millions of bucks allegedly lost during the deliberation. Fine. The worst part? Some wicked pixelers started saying stuff like this: And in the ultimate irony, Richard Stallman himself joined the fray against... Richard Stallman? /sigh No, no he didn't. But that didn't stop the world from deciding that the GPL prevented you from forking code. WTF? RLY? Come on. Get a new job writing about whatever it is that you're really interested in, because it sure ain't the GPL. Here's a quote from a horribly written piece on CNet called "Stallman: GPL doesn't guarantee software freedom". Even Richard Stallman, co-author of the GPL and founder of the free-software movement, and not someone that spends much time worrying about monetization of open-source software, gets this. Come on, that wasn't enough for you to wonder what was going on? You really thought RMS was arguing for Apache over GPL? To what ends? (Sorry -- I don't usually bash like this, but the FUD here is insane, and so easily seen through.) A commenter on this story has a much better answer/handle on this situation. It's so good, I'm posting it all, in case the story disappears. "mbenedict" is the author. There are many issues here getting mixed up. Okay, okay, okay. Let's stop mbenedict at one spot -- BSD? Insane. "Please steal my code! Make hats of cash! Give me nothing! Just know that you can't sue me." Or, as I've said before, those licenses "essentially enable legalized plagiarism". That's crazy. Well meaning, perhaps (more likely too business oriented and not written by a guy who actually contributes to open source code), but crazy. There's a perfect license for releasing code into the world for commercial companies to use: The LGPL. It's fair. It encourages passive collaboration (OSS' biggest boon) from commercial enterprises (a rare but powerful thing). And, get this, it fairly requires that if they improve the functions you gave them, they must give back to you those -- and only those -- improvements. Brilliant! That's what The GNG Manifesto is all about. I think you get the point. RMS is anti-GPLv2 insofar as it's not the GPLv3. He likes GPLv3, but thinks it should have more flexibility for users to change their project's license as changes to the GPL are made. He does not like Apache licenses more than GNU licenses. MySQL should, for RMS, be licensed under GPLv3, though v2 and v3 allow you to fork. What a media fail. posted by ruffin at 7/06/2012 09:20:00 AM |
|
| 0 comments | |
|
|
All posts can be accessed here: Just the last year o' posts: |
|||||||||||||||||||||
|
||||||||||||||||||||||
|
|
|
|