Suckage

This is in response to a blog post made by one of the developers of Flash for Linux. After months of anticipation, it seems they finally dropped the ball and it looks like Flash 9 on Linux will never be or at least will take a lot more time than ever (Mike has updated his blog to add “Undaunted, the ragtag Linux Flash team presses forth…”).

In this [blog post][suckage], Mike Melanson once again complains about the lack of coherent API’s in Linux distributions. API’s that he says they need to implement much of the functionality in Flash 9. I’ve been silently following his blog for months now, aside from mundane ramblings, all I ever read about was one excuse after another. It would seem that one post on that blog would get excited about one thing and another post would complain about three things.

So what happened?

Lame Excuse number 1

Things are not going so swell right now, at least for my development tasks. My favored Linux distribution — which I previously claimed rarely fails me — failed me. I may need to shop around for another distribution soon (perhaps along the lines of Mac OS X or Windows).

And what is his “favored Linux distribution”? From what I can gather from his previous posts it seems out of all the hundreds of distros out there, he chose [Gentoo][gentooweb]. Why oh why did he choose a source-based Linux distribution for developing Flash on Linux? WHY?!? Not that I’m dissing Gentoo (I’ve used it as my desktop OS way back when Daniel Robbins was still in charge) but using a source-based distribution like Gentoo for C or C++ development will only slow you down.

The problem with source-based distributions is that they are “always up-to-date”. While this can be a good thing for the end-user, this is a bad thing for the developer. You need a “stable base” to build upon when you are developing software. Bringing your system up-to-date on a source-based Linux distribution not only updates your applications, it will also update libraries that your project depends on. These updated libraries could bring updated (or deprecated) API’s that will force you to update your code. So you end up looking like a puppy who has seen his tail for the first time.

Why not choose to develop on something that does not move around as much? Like, oh I don’t know, [Debian][debianweb]?

Lame Excuse Number 2

Though we have been diligently working towards getting all of the Linux features in line with the Windows and Mac counterparts, we have been hitting some capability walls. I.e., there are some standard facilities and APIs that Windows and Mac operating systems provide to applications that Linux simply doesn’t. To be sure, it’s not that Linux can’t do XYZ, it’s that there are so many ways to do XYZ. And forget about making these different methods interoperate where conducive.

I have to say touché on that one. Yes, Linux does provide you with a lot of ways of doing one thing. But how can that be a problem? Why not just choose one way of doing XYZ? It’s not like that one way of doing XYZ is not available on the major distributions. For one thing, the Linux user community is always willing to install strange and foreign dependencies in order to get software to run. I mean, come on! Do a quick search on the popular Linux forums and you will see many of the questions there are about how to get something to work under Linux. If you look at the answers, most of them suggest doing esoteric things like tweaking a config file or compiling and installing things from source.

As with my answer to the first excuse, choose one API and standardize on that. Make that a hard dependency for Flash 9. And as for the different API’s “interoperating”, get the source for those libraries. Modify them to make them work together better and do a custom build. Then submit the changes back to the library authors for inclusion in the next library release.

As to what API’s he’s talking about, only he knows. He never mentions what API’s he’s complaining about.

Lame Excuse Number 3

Though many of the Flash 8 and 9 features are in place now, the Linux Flash Player currently crashes. A lot.

Never heard of [Electric Fence][efenceweb], [Valgrind][valgrindweb], or [strace][straceweb]? They’re very useful in finding what’s causing your program to crash.

So there you have it. At the time I wrote this, there has been no response from Mike to the comments on his blog. Most what the comments have to say pretty much sum up what I have to say. And perhaps one comment there sums it up more than most:

MIKE STOP MESSING AROUND , WASTING TIME WITH GENTOO!!!

Honestly Mike! Get a hold of someone at Redhat, Suse, Ubuntu, etc.etc..etc… Go to the forums, join the mailing lists.

They WILL help you! They will do the work FOR YOU!

Linux is what it is, because of the community. No one is alone. Stop writing software for linux like you write software for windows, becuase[sic] LINUX IS NOT WINDOWS.

I don’t know if it’s just Mike’s pride or a fricking NDA from Macradobe that prevents him from working with the Linux community and allowing the community to help him with the problems he is having. I would suspect that it’s the latter. For one, he rarely says anything that would even help in identifying what is causing all these hangups. Secondly, it’s only a matter of sending out an email or sigining up to a forum to get help with Linux. Yet it seems he has done neither. I surely hope that it’s not his pride that keeps him from doing his work properly.

I’d still like to see Flash 9 on Linux, though I would not hold my breath. It has already been demonstrated with Flash 7: IT IS POSSIBLE. NO MORE EXCUSES!

[suckage]: http://blogs.adobe.com/penguin.swf/2006/07/stoppage_1.html “Excuses, excuses…” [gentooweb]: http://gentoo.org/ “Gentoo Linux Website” [debianweb]: http://www.debian.org/ “Debian Gnu/Linux Website” [efenceweb]: http://perens.com/FreeSoftware/ElectricFence/ “Electric Fence Website” [valgrindweb]: http://valgrind.org/ “Valgrind Website” [straceweb]: http://www.liacs.nl/~wichert/strace/ “Strace Website”

Leave a Reply

Comments are moderated by the administrator. If this is your first time posting a comment, your comment will go to a moderation queue and it may take a while for your comment to appear. Or it may get deleted.