Saturday, May 28, 2005

N.A. KDE developer camp

seems like an age since i last blogged, probably because it has been in relative terms. i dropped from my usual 4-6 blogs a weeks to ... silence. but i feel my energy returning again. i've had a number of projects on the go over the last several months and they managed to exhaust me, so i took one of my few-times-per-year moments to hide under a rock ;)

my work situation has shifted a bit this month. i'm starting on a project that should help to bring Linux into the SMB market in my region a bit more. i'm not quite ready to blog to much about it at this point, other than to say that it involves creating a package of software that is appropriate for regional IT companies whose bread 'n butter market is the SMB community. i'm working with Kubuntu as a base, which is probably the interesting story here. why not SUSE? why not Red Hat? etc.. in 3 words: reproducibility, branding and clarity. yeah, i'll probably write a good long blog about this at a later date =)

right now i'm more excited by the ability to tell everyone about something i've quietly been discussing with Linspire for a few weeks now: a North American KDE developer camp. as opposed to most such events around the world, this one will not be aimed at those of us already well versed in the Open Source vernacular.

we need more Open Source desktop developers in general, and in particular, i'd like to see more KDE developers and i'd like to see more of them in North America. but this simply is not going to happen unless we help people get the tools they need, which is to say the information and skills they need. this is a small step in that direction.

to be held on the the 13th and 14th of October in San Diego and sponsored in part by Linspire, and hopefully others by the time all is said and done, a series of KDE development sessions will be offered to developers who would like to crack the code on how to develop and ship software efficiently and effectively for the Open Source desktop.

this is still a work in progress, but the event has been confirmed as a go. details on speakers, lodging and registration will appear over the coming weeks.

Friday, May 20, 2005

working with new coders; artists needed

over the last couple of months i've had the dinstinct privilege of working with a large number of new KDE hackers. this week a new hacker, Jaison, stepped up with some patches for KJots and will be working on that application. this is great as i really don't have time for it right now. Marc Cramdell, as i mentioned in my previous entry, got his first kicker patches into svn.

these newer people often need a bit of hand-holding and a lot of patch review, much as i did when i joined the project. it's not that they aren't good developers, it's just that KDE is a big code base. if you tuck yourself right into the middle of it, there's a fair amount of things to learn. i consider the time i am able to spend helping these new comers learn the KDE ropes a terrific investment. while many new patch contributors fade away after a week or a month, a few stick around for a good long time. i know for a fact that people i've had a hand in helping into KDE development have written a lot more code for KDE than i have when you sum it all up. probably an order of magnitude more code, in fact. so i see an hour here or an hour there of my time translating into dozens or hundreds of hours of new input into the project. this is a good thing and helps keep KDE a vital project.

i see people such as Matt Rogers and Scott Wheeler doing the same sort of thing, and this is just brilliant. this is one of the more effective ways that we grow our community of developers and keep it healthy.

of course, it's not all about developers, either ... for kicker, i need artists too =) with the new KDE artists site around the corner, or so i've heard, i'll be leveraging that to look for people who can help with the look issues around kicker and the desktop. i'm not a visual artist, i'm a coder, so i need all the help i can get there ... =)

i also snagged a new laptop via work ... nothing spectacular, but >3x faster than my old one, a display the doesn't suck and without the form factor of a boat anchor. i've been using it as a way to sneak out to the coffee shop and plunk way on the FreeNX client libraries. i've spiffied them up a bit on so i can finally do a freakin' release of my NX client, which i need to do so other people can work on it as well. i get way too board working on it by myself. i'm too social, in that sense.

killing 2 birds

watching the KDE4 porting effort over the last couple weeks has been inspiring. the number of commits and the amount of stuff that's already working is insane. for instance, Christoph got kate running, albeit a bit b0rk3nlike, in under two hours of work! holy crap!

however, i'm still mostly concentrating on work in trunk, which means targetting KDE 3.4.1 and 3.5. still, i've been doing things like weaning kicker off of the QPtrList crack and moving to more STL-like value based lists. thousands upon thousands of lines of diff that create numerous subtle changes in semantics that, when all gos well, result in zero visible difference. no 2 hour hack here, unfortunately, but it needs to be done eventually for KDE4 anyways. doing this in trunk gets me more testers, improves 3.5 and paves the way forward to KDE4. two birds, one svn commit.

this isn't to say that none of the stuff that i've been doing hasn't been visible. i reworked the panel context menu a bit to make more sense (you don't add panels to panels, now do you? ;) in preparation for a new "add applets" dialog:

purdy! yep, you can search and filter and add away. the difference between applets and special buttons evaporates from the users POV, too. drag and drop isn't implemented yet, and there are a few other TODOs left, but it's pretty much there.

this is in large part thanks to Marc Cramdal who sent me an early draft of the dialog which we worked into shape over the course of a couple days (being 8 timezones apart makes such collaboration more interesting =). i think we passed the patch back and forth a half dozen times before putting it into svn. so kudos and merci to Marc for taking the initiative here, i look forward to more good stuff from you in the future =)

Wednesday, May 18, 2005

galaxy.osnews.com

my blog is now being syndicated at galaxy.osnews.com as well as at planetkde.org. unlike pk.o, however, g.o.c doesn't support atom xml feeds, which is what the blog engine i use spits out. fair enough.

a quick search on google and i found some xlst by a fellow named Mark Gardner. pair that up with wget and xlstproc, stuff it into a cron job on my webserver and i now have an rss feed of my blog. huzzah!
yet another group of readers to inflict my inability to use the shift key upon ;)

Tuesday, May 17, 2005

aye, karamba!

the meeting on sunday with the superkaramba team went quite well. the developers will continue working on a new release to coincide with KDE 3.5 and will be moving superkaramba development into KDE's svn repository. for KDE 4, as we rework kicker and kdesktop, support for karamba themes will be integral and become an extension to applets as we know them today, really.

there is a vibrant community around karamba today, in part because it lets you make really cool looking things and in part because it's relatively easy to make a karamba theme. i want to make it even easier leveraging KJSEmbed. with KJSEmbed and perhaps some HTML, it should be possible to create a nice looking applet that can appear on the desktop, on a panel or float above your windows. language bindings to languages such as javascript also help limit the portability problem: no compiled binaries, no large runtimes needed.

also, i must have missed this, but according to K3B's website they were given a number of drives by LaCie who will be shipping K3B on their support CD's that come with new hardware. wow! that's awesome. way to go guys!

reading about a really cool project involving autonomous, swarming flying robots that run linux (it sounds so sci-fi, doesn't it?) i saw this picture:

hey! that computer is running KDE! =)

a movie was being filmed on my block this week. they were here shooting "on location" for 3 days. lots of very large trucks with lots of equipment, cable snaking along the sidewalks, street parking shut down for a three block radius ... crazy. it's apparently written by the same guy who wrote Stealing Harvard, but since it's a Canadian production, you probably won't see it. =)

Monday, May 16, 2005

André Somers

yesterday André Somers, the author of Cumulus and one of the active KFlog project developers, flew into Calgary from Amsterdam. if you're not familiar with KFlog, it's an amazing set of programs. it's primarily of interest to glider pilots, but it certainly showcases KDE's flexibility and power in the hands of application developers. some features of note are the complex mapping functions, interoperability with handhelds via a custom data acquisition application and waypoint calculations. even if you aren't a glider pilot, but want to see an example of what KDE-the-development-platform can do, you should look at KFlog.



André had emailed me before his flight out of Amsterdam, and we managed to meet up in the early evening. after exchanging GPG signatures (tres geek!), we strolled down Calgary's 17th Avenue taking in the sights, such as they are. Peyton rode his bike alongside and we ended up having a nice dinner at the Coup, a cool little vegetarian restaurant with a modern interior and live DJs mixing the audio mood on the turntables. after a quick pit stop at home we sat on a deck and had some beverages:


for the record, Peyton was drinking chocolate milk


i asked André what he thought we were doing right and what we needed to improve upon as a project. from the perspective of an application developer, he said that he loved the KDE framework. he couldn't say enough about it, though i think he tried pretty well to do so. =) on the improvement side, he noted that our documentation needs work. the API docs are great, but our tutorial style documentation which composes that critical body of information that teaches you how to use all those bits of wonderful APIs to create applications that take advantage of what's available, is sorely lacking. of course, Lyceum is aiming to address that and André was upbeat about it.

interestingly, at one point André lived across the street from Waldo, as they went to the same University. they didn't know each other at the time, however. what a crazy little world this is. =)

and yeah, André is a great guy. i wish him all the best on his trip across western Canada, particularly Yellowknife. ;) he's even going to be passing through my birthplace on his trip through the inside passage. bon voyage!

Sunday, May 15, 2005

why i love wooden cutting boards

i like to cook, and i love wooden cutting boards because
  • they are bacteria resistent (yay for health!)
  • they don't take the edge off of knives (esp the end grain variety)
  • you can put hot things on them without them melting or spreading the heat around too much
  • they look nice
  • chopping on them produces a nice, non-irritating noise
  • working with natural materials somehow comforts me
  • they look nicer than plastic

Saturday, May 14, 2005

"ethics? what are those?"

recently over at LinuxWorld Magazine a vicious article was published about Pamela Jones from Groklaw which was written in the poorest of taste. you probably even read it. they eventually yanked the story, as i understand it, due to a courageous stand taken by the LinuxWorld staff or journalists and editors.

Free Software Magazine held published an interview with Fuat Kircaali who is the CEO of Sys-Con, LinuxWorld's publisher, about this incident. i was reading it, fairly unimpressed with Fuat's general disconnect, and then i came upon this jaw dropper of a bombshell about half way through:

"What does ethics have anything to do with professional reporting and journalism?" - Fuat Kircaali


that pretty much sums up the problem with today's publishers, now doesn't it?

**sigh**

Friday, May 13, 2005

not invented here?

here is my promised blog entry looking at various possible cases of Not Invented Here syndrome within the KDE project. i asked for people to offer examples, and that i would address them. so let's get down to business.

KOffice. KOffice predates OpenOffice by some years. why didn't the developers just abandon ship when OpenOffice arrived? besides the fact that those involved had already put a few years of passion into it, they did so because KOffice has a broader scope of applications, is lighter on resources, is better integrated and provides a very fertile ground for developing KDE technologies that useful outside of KOffice. office suites are very demanding consumers, and so it's not uncommon for bugs to be sqashed and new features emerge in KDE's libraries due to KOffice.

note that KOffice uses, and will continue to extend its usage of, the OASIS file formats that OpenOffice uses. KOffice abandoned its own file formats to do this, to create defacto standard to back up the paper one. this is the exact opposite of NIH and shows the strength of having multiple, cooperating projects in the same space.

if you, the reader, are tempted to ask why KOffice doesn't pull in OpenOffice code, then you probably haven't looked at the two code bases. however, it is important to note that KDE developers are integrating OpenOffice with KDE via icons, widget styles and use of KDE dialogs. we can all just get along.

KHTML. as with KOffice, KHTML predates other open source HTML renderers. additionally, it is used by non-browser applications that require a light-weight, integratable and programmatically configurable HTML widget. these range from KControl to KMail to Kopete. KHTML is not just about web browsing, it's about creating a widget for applications. ditto for the JavaScript engine, which is being used for application scripting among other things. these are things that we just can't get anywhere else.

i'd also note that efforts to integrate gecko and XUL with KDE have taken place. it's not complete yet for a number of reasons, none of which are technical in nature. i'll leave the explaining of that to those closer to those goings on, however.

DBUS. one person mentioned DBUS. well, DBUS doesn't have a stable API yet, and we're only now in a position (KDE4 devel) to start thinking about those kinds of massive structural changes. these things have huge impacts on our user base, and we don't take lightly messing with them =) so it's too early to call which way this one will go.

at the end of the day, it will come down to quality and interoperability. it is equally true that just because the code isn't yours that you shouldn't use it, just because code is out there doesn't mean you should. it's a matter of weighing the benefits vs the costs. and for DBUS we've had only preliminary discussions. so far, the discussion has slanted in favour of DBUS.

and of course, 3.4 did ship with at least one component (the media ioslave, used by a panel applet, konqueror, desktop icons, etc) that optionally used DBUS.

Multiplicity of functionally similar apps. the issue of having a number of applications that do similar things within the KDE universe was raised. this isn't "NIH", however. there are many, many reasons for this happening ranging from "differences in scope" to "a developer wanting to have fun". but this is not what NIH refers to. =)

the evening tally

finally got kolab2 up in a test environment and kontact working with it. now to figure out all the ins and outs of it. i'm dissapointed that rc1 doesn't ship with the web mail client by default. the admin interface has improved since kolab1, though it could be easier to use. multi-domain support is a killer though. i'm hoping to convince some local business to take an interest in supporting Kolab2 with the aim of installing it into their client's networks. we'll see.

did a bit more work on Lyceum, though nothing that's work rushing over and checking out quite yet. 15 beta testers have signed up so far, which is terrific. if i keep up my pace i'll be ready for them this weekend.

the weekend will be a busy one. the superkaramba meeting, 3.4.1 readiness, Peyton...

Thursday, May 12, 2005

Lyceum II

i get asked now and again about KDE Lyceum, so tonight i spent a couple hours working on it. it's very nearly there. a few more evenings of drudgery.

i don't know if i made it clear enough last time, but my aim is to document KDE4 technologies with this. so it's sort of important that i have this together in time for that =)

if you'd like to be a beta tester, please create an account on the beta site and i'll up your account privs so you can play around with things. as i reach completion i'll send out an email with requests for you to start abusing it. a few weeks of that and hopefully most of the bugs and stupidities will be ironed out and the documenters of the world can go at it.

Wednesday, May 11, 2005

no time like the present

from the there-are-no-miracles-like-the-small-miracles dpt, KDE4 is getting a new XEmbed class. finally! the one in KDE3 has been my bane! thanks to Andreas for making it happen, and to Zack Baby for keeping us abreast on its progress on kde-core-devel. smooches to the both of you.

on Sunday i'll be attending an online meeting with the SuperKaramba developers to discuss the future of kicker and SuperKaramba for KDE4. my hope is to merge them along with kdesktop into one coherent, beautiful and efficient application. imagine if you could write an applet in C++, ECMAScript (KJSEmbed), Ruby or Python and have it appear on the desktop, on a panel or on a top-level floating plane (think dashboard). now imagine if sandboxed applets written in interpreted languages could be one-click installed via GetHotNewStuff. with the help of the KDE artist community, eye-candy developers and hopefully people such as the SuperKaramba developers superkickerdesktop will be a sight to behold. done right, it will even be more performant than what we have in KDE3. i have half an eye on basKet, too. KDE4 is going to be fun.

this morning it snowed. May; snow; wtf. and then, just to mess with me some more, it got sunny in the afternoon. so i stepped out and took some pictures of the tree in my front yard. from there i went a block down the street to meet up with some KDE users.

i received an email from a fellow named Douglas who had questions about KWallet and had found me via google. after finding out the company he works uses Linux for the operating system in the devices they make and that the developers use KDE on their machines, i visited their website to find out that they are literally a block away from my house. hah. funny that it took google to find out about KDE users a block away.

so i stopped by (unannounced) with a cup a coffee and Douglas and i had a great visit. he showed me what they were working on, and it's some pretty cool stuff indeed. turns out he's a pilot as well; we might end up going flying in fact. woo!

tonight Mahlah phoned me in a state because Peyton was having a screaming fit. in fact, he'd been having a cry for around an hour and she was at her wit's end. being a parent is not all rewards all the time. so, dripping wet sitting naked on a towel in the middle of my living room (i had been soaking in a hot bath), i got on the phone with him and he calmed down pretty much immediately. i told him a story about Roo and the hefalump and he tucked himself into bed. AA Milne, you rocked man.

not as much as Zack, of course. but pretty damn close.

Tuesday, May 10, 2005

... a-a-a-and they're off!

KDE4 development has begun! there has been a flurry of activity in SVN to get kdelibs working properly with Qt4. huzzah! exciting times! unfortunately i'm a bit busy right now to join in the fun immediately. i've got kicker for 3.4.1 and 3.5 to take care of, a growing amount of UI consultation for 3.5 applications and a fair amount of work with the Appeal project.

speaking of which, expect some updates from the Appeal project in the next couple of weeks too as we unveil our organizational and early development efforts.

the next 6 months are going to be very busy ones for me and, i expect, most other KDE developers. fun ones, though!

Peyton and i went to the local dollar store the other day to pick up some boxes of Lego to play with. the store is only half a block away and what it lacks in Lego selection it makes up for in pricing. Peyton picked out a couple of boxes of Lego and started chatting with one the stock-girls who ended up giving him a back of 75 army men. talk about your positive reinforcement for being social. we came home and promptly put together a race car and a space ship. Peyton did the vast majority of the construction on his own, with me helping put together the occasional tough piece. when we were done he said that he loves to build things, and on the way home from school today he proclaimed that his favourite toy was Lego. not only does this bring back great memories from my own childhood, but it elicits a certain joy and pride that i can't quite explain. which is fine, because i don't feel the need to. Peyton is a reason enough.

a good friend of mine sent pictures of herself with her new hairstyle: a 20's style bob. this is a wonderful woman who, in all the time i've known her (over a decade now) has had amazingly long, stupidly luxuriant hair. the bob looks wonderful, though, so i guess i'll get used to the change. very Louise Brooks, really.

i downloaded a non-Profit Star Wars fan film on the weekend called "Revelations". i was blown away by the quality of it. it's an amazing testament to what people can create given few resources other than their own imagination and a bunch of technology and then give away.


this blog entry was brought to you by the letter "big oh" and the numbers e, i and pi. oscar rocks. who's your favourite sesame street character? and please don't tell me you don't have one; i don't want to know that! =P

Saturday, May 07, 2005

random twidlebits

peyton came home from school with a bead necklace today. i asked where he got it, and he said he got it from this girl. i asked if she was his teacher, and he said no she was a little girl in his class and that she loved him a lot. i asked him if he loved her, and he said he wasn't sure but that he liked the necklace. nice.

i decided to get in on the brilliant button craze and did up a few KDE-related brilliant buttons and stole^Hborrowed some more from other KDE people's pages. i didn't want to litter my home page with a whole row of the little buggers, as that always strikes me as somewhat tacky. so i decided i'd put just one in the top navigation bar. but which one? so i decided i'd add in a little image rotator thingy to the framework i use to run my site.

the framework is a home-brewed content manager, document manager, shopping cart, FAQ, blah blah dynamic, modular PHP app that a friend and i have hacked on here and there over the last couple of years as we needed such things for clients and our own work. at the time we started there weren't any really nice open source CMS's out there, and even now most of them tend to be a bit "big" for our needs. we wrote something that was simple, highly componentized, has exactly what we need yet easily extensible.

adding the image rotator meant adding an extension to the document management library. 21 lines of code (not counting whitespace) of error-checking code in the lib, and 6 lines of code in my website template and voila ... rotating brilliant buttons with URL links. adding or removing buttons is a simple matter of adding or removing files from the Brilliants folder via the admin web interface. less than 15 minutes of work, and worked first go. it's nice when things Just Work(tm).

kicker, on the other hand ..... ;) Stefan added support for dragging applets between panels, but it's still a bit buggy. we discussed some options and have decided that left mouse button dragging will work like middle mouse button dragging unless you leave the panel at which point it becomes a regular DnD maneuver. throw the mouse back into the panel and voila, old-skool move. Stefan's whipped up a proof of concept. i think it'll be good. but please ignore the semi-rough state of applet dragging in HEAD for a few days.

there are also a few annoyances left in the taskbar which i'll get to this weekend.

i have an outer ear infection in the left ear which is pissing me off. it doesn't hurt per say, it's just like i have a perma-clogged ear. bizarrely, mahlah has the same thing in the same ear. cue twilight zone music

oh, and I Heart Huckabees. wow. damn. "i'm still geeking out over it." (kudos if you get the movie reference)

Friday, May 06, 2005

promoting free software on non-free platforms

well, looks like Free Software Magazine has gotten into the act of commenting on my infamous blog posting about KDE on non-Free platforms. better late than never.

but i would like to ask for some accuracy. with all due respect to the author, Chris J. Karr, it's pretty lame to soapbox your opinion on the matter by mischaracterizing the entire conversation. in other words, if you can't be accurate in your dealing with the topic, please don't bother.

ideological?

now, i'm not sure how many times i stated that my position is purely pragmatic and has nothing to do with ideology. i do know that it wasn't enough times, however, as Chris managed to go on and on about how the only people who don't want Free software on non-Free platforms are the ideologically obssessed. the pragmatists, he claims, don't care. and yet, my position isn't ideological.

what my position is is long-viewed. it is certain that you can get a larger user base by supporting more platforms. but i've gone further and asked, "what happens 5 years down the road?" but before answering that, we need to realize that not all non-free platforms are equal.

friendship

what i care about more than "non-Free" is "friendly". Solaris, for instance, is friendly to Free software. i don't agree with everything Sun does or has done, but it's hard to argue that the company behind Solaris or the product Solaris itself is Free software hostile. heck, they are finally opening up Solaris itself! Apple is less Free software friendly, but not to the point of antagonism or posing any sort of threat to Free software on their platform. more like they just don't grok the culture completely, but nothing a few more years of hit and miss can't solve.

Microsoft tends to be quite unfriendly, however. and in the future, they are likely to be even less friendly as they lose more of their market share to Free and Free-friendly platforms. unlike Sun or Apple, it is not within Microsoft's business plan to see Free software grow unfettered. their business plan and our efforts are generally at odds with one another. needlessly so, but so it is.

so posing it as a "Free vs non-Free" discussion is to completely miss the point of my original conjecture. because i never spoke about non-Free platforms as a generality. i spoke of Microsoft Windows specifically. this is because i don't care about non-Free, i care about long-term sustainability. this is because i'm pragmatic.

it really disappoints and frustrates me to see people like Chris derail the discussion by focussing on an aspect that isn't relevant nor even part of the original discussion. you do us all a diservice by doing so, Chris.

telling people what to do

Chris also implies that i was trying to tell others what to do. i clarified that this was not my intention at all. i was attempting to encourage people to think about the consequences of their actions by creating a discussion. what anyone does is utimately up to them.

to try to imply that by offering a dissenting opinion is to tell people what to do is a rather slimy way of trying to discredit people who dissent. democratic discourse means sometimes disagreeing with each other, and you can do that without trying to tell each other what to do. again, i'm left saddened by Chris' position here as he shows a disturbing thought pattern: toe the party line or you're fighting against us. life is not so black and white, my friend. and my intentions are not so myopic or counterproductive as to try and dictate behaviour to others.

the benefits

Chris did list a number of benefits to working on non-Free systems, and he is correct on several points: there are larger user bases to be had on non-Free platforms (Windows specifically), proprietary (non-portable, often) capabilities exist on the platforms, etc. there are also many disadvantages, and i'm highly suspicious of taking advantage of propreitary features which often lead to lock-in.

i'd sooner see us improve our Free systems capabilities than shrug off our limitations. this is a bold position to take, no doubt about it. but nearly every time i've ever had a capability offered to me, as a programmer, on Free terms i've had a better time of it. my experience may be different than yours, granted.

but again, this was not the point of my original conjecture, which was: the benefits that exist are short term benefits and that we ought to be aware of that. Microsoft Windows (again, not all non-Free platforms) represents a unique challenge that we need to be prepared for. we are making the migration off of that incredibly hostile company's platform harder to sell as a business proposition, not easier, by adding our commodity applications to it.

applications

speaking of applications, i would like to stress that the largest blocker to moving off of Windows when it comes to applications is not actually the commodity applications. it's the custom applications. this includes those written in MS Access and the like. many people don't seem to understand this point. perhaps because they haven't actually tried to get many largish companies off of MS Windows before.

validation

interestingly, while discussing a possible move to KDE on Linux with the IT manager at a Very Large Multinational Corporation™ he, without any prompting from myself, reiterated exactly my concerns about throwing Free software applications on Windows. he had examined the market from a business person's perspective and identified the future trap, and was not comfortable betting his enterprise's future on avoiding that trap. it's a little scary when management sees eye to eye with a hacker, but i think this is because it is a management issue and not a technology issue.

a little secret

by the way, here's a little secret about my choosing FireFox as the example in my original blog entry on this topic: i chose to do so for two reasons, neither of which was that FireFox on Windows is a bad idea. first, FireFox was (and is) ranking high in the community meme bank; by discussing it i knew i'd broaden my reach. second, by picking what i see as the most defensible piece of Free software on windows nobody could say i was picking on a weakling and that there were "more defensible" products. i took the most difficult position i could so that people would stop and think hard rather than dismiss the topic as simply picking on bad examples. i'm not sure i was successful with the latter point. =)

Thursday, May 05, 2005

reading between the lines

the two writers who pen the ZDNet blog "Between the Lines" have once again written a bit about Open Source and, once again, managed to botch it.

am i the only one who is reminded of a certain line from The Breakfast Club by that title? because it really does seem appropriate.

the title of the piece in question i s "why the third world won't save open source". and so starts the mischaracterizations right out of the gate. last time i checked open source was growing and thriving. it's not exactly in need of saving.

they go on to state that just as English is the lingua franca of business, so is Microsoft Windows, and that just as developing nations do business with the West primarily in English they will mirror the IT networks of the West to be able to communicate with them.

they are right that these emerging economies will want to be able to communicate with the west digitally. but they are wrong that it requires Microsoft Windows. email, instant messaging, PDFs, web apps and Microsoft Office format files are handled very gracefully using Open Source software. even if it's required for some odd reason to join a Microsoft-centric network as a peer, Samba does just fine. what do they think we've being doing all these years, our own little incompatible world of software? no, that's what Microsoft does. we have a different game plan.

they then state that attempts to create local software economies by promoting Open Source will fail. the writers said such initiatives are really just an attempt to hide domestic interests from foreign competition, and liken it to the PC initiatives of Brazil in the 1980s which were failures (largely because the developed world punished them for it). but unlike trying to set up your own hardware manufacturing and saying nobody else can service you, adoption Open Source does not block out foreign competition or technology. quite the opposite in fact: it invites the technology of the world in. i mena, where do they think Open Source comes from? here's a hint in case they need one.

no, adopting open source allows and encourages international businesses like IBM, HP, SUSE/Novel, Red Hat and many others who are leaders in Open Source business to service them. it just also happens to not lock out domestic business the way closed source does. so it isn't protectionism of domestic companies; in fact, it's ceasing to unduly protect foreign interests. seen for what it is, it's a move towards more truly free global markets where everyone gets to compete.

they do get one thing right at least: the cost for moving from Windows to Linux needs to be lower. this would be true no matter how little it costs: the cheaper it is to migrate to Open Source software, the more that people, companies and governments will do so. unfortunately, migration always costs money, even between two versions of the same platform. so a dream of zero cost is just that: a dream. but it can be inexpensive enough to be worthwhile.

the good news is that for many scenarios we're already there, and we're pretty darn close to being there for many more.

p.s. if your read their article, you'll notice they mention Brazil a lot. i guess Brazil's moves towards open source really have some people taking notice. and worrying. good on you, Brazil!

Wednesday, May 04, 2005

fun, ZeD, svn

i've been reading the "is GNOME still fun?" blogthread over on planet.gnome.org since it started a few days ago. it's interesting reading. introspection is generally a good thing, and i hope that those GNOME hackers who aren't finding it as fun as it was or as fun as they want it to be find that spark. we need fun, which is to say enjoyable fulfillment, in our lives. especially in the things we do with and/or for passion.

the most interesting part of that discussion for me has been reading about all the different ways GNOME is interesting or fun for different people. everyone seems to have a different answer for the question, each equally 'correct' as they are a reflection of each person's experience, which just... is

so i asked myself, "is KDE fun?" after pondering that for a bit (quick answers to questions that profound can be deceptive) i've decided that it certainly is fun for me. the challenges of the technologies are enjoyable and hacking on things in KDE's code base is, well, fun. on top of that, the other project members generally kick ass; the creativity, intelligence and general humanity is constantly refreshing (and occasionally challenging!) for me. exciting things are happening all the time in the audience as well: new users, new deployments, new submissions for art and what not. i get to travel as part of my KDE things, which is also fun. i get to speak to people, which i enjoy doing.

so ironically, the bit of work i just finished up the other night on kicker was very, very boring. basically switching away from QPtr* collection classes, partially to trim some unnecessary memory bloat but also to prep for Qt4 porting. and boy, do i wish Qt3 had foreach. a 2069 line patch for not one single visible bit of difference, assuming it's all correct.

and svn is finally here. we all get to re-check out everying and rebuild. an unfortunate burn of time, but over time probably well worth it. unfortunately for those of us who haven't used svn much, it means learning new tools. fortunately svn is fairly similar to cvs, but it's also quite different. hopefully more projects will switch to svn this year so that the knowledge of how to use svn becomes as common as cvs know-how is in the larger community of open source developers. every tool that a new contributor has to learn to contribute to a project lowers the chance that they will.

in Canada, we have "open source television". aka Zed. i think i've blogged about it before, a long time ago and on a different blog. so i figured i'd plug it again. Zed isn't really Open Source television, though. it's more of a community driven content site that runs on Open Source software (which they released a year or more ago now). they have a weekly show on T.V., which i never see because i don't have cable (a decision i made in January of last year), but i still get to see the content via the web site. it's really cool. i recommend checking it out, even if you aren't Canadian. ;)

Monday, May 02, 2005

not invented here

first, major props to the koffice developers for a wicked release! i've been using koffice for some years now and really appreciate it. i need to rant.. er... blog someday about why koffice will have a very bright future. but that's not what is on my mind today... NIH is.

i was reading the Open Source news today and saw once again an all too typical scene: kde gets accused, primarily by people who do not use or develop with kde, of being riddled with Not Invented Here, or "NIH", syndrome. NIH is that state of mind where you do not accept anything that you didn't create, no matter how good or sensible the decision to use it would be.

while this claim gets bandied about as a means to jab at kde's good reputation, i simply can not see the truth behind it.

for every technology that kde uses where there is an external alternative, the reason for the choice to use something homegrown can be brought down to one of a few reasons: the option didn't exist when kde started using that functionality (e.g. kde was there first), the options were or are not mature enough for use in kde, the options were somehow encumbered so that they were not usable within kde or that the item is so trivial that NIH never entered into it (it was simply faster to do something new than use something existing; e.g. "trivial").

i look at kpdf using popplar (have i mentioned how inane i find that name, yet? and how i can never remember how to spell it? ;), koffice using OASIS, the huge number of cross-desktop standards kde has adopted and authored, the use of libraries like libxml2, the grass-root adoption of gstreamer by some of our multimedia apps ... and on and on .. and i ask myself, "ok, where is this NIH exactly?"

perhaps i'm all to close to the scene to see it. so, here is my request to all those who feel KDE exhibits NIH:

provide me with concrete examples of this in action. you can reply to this blog entry or send me email (aseigo at kde dot org). i will collate these examples, examine them one by one and then address each of them in a blog entry at a future date.


please, spread this request to all your open source using friends who have expressed this sentiment. pass it on to your kde friends, your gnome friends, your mac friends, your aunts and uncles and cousins and dogs. i really want to flush this one out once and for all. i want to correct misconceptions where they exist, and address real examples of NIH where they exist.

Sunday, May 01, 2005

amaroK: first impressions

Max Howel recently wrote about the percieved complexity of amaroK and his surprise at this.

i don't think the first run wizard is such a bad thing, at least not for those who run out and install amaroK themselves. personally, i'd change the name of it to the "Setup Wizard" (otherwise why is it there under the tools menu for use after the first run? ;) and if i were a distribution that included amaroK on the default desktop i'd ship with this wizard having been run already so that the user doesn't have to deal with it. they can always get to it via the Setup menu themselves, of course.

as for the "how do i get my music there?" question, that's a fair question and one i brought up a while ago with the amaroK developers. most people are going to want to listen to their music, period. it's a casual event. not everyone wants nor needs extreme control or an immersive experience when it comes to their media collection. the playlists, drag 'n drop, Actions menu, etc. are all nice, but requiring that the person using amaroK must interact with them means putting obstacles in the way of the most common desire: play my freakin' music.

so to that end i would simply have the "all collection" playlist be the default. if the user wishes to change that, bully! but that way the user would be able to quickly get to the task of playing their music no matter what and go about exploring the interface after having their immediate needs satisfied.

right now they have to figure out the interface first. that's an unfortunate burden to put upon the casual (majority?) music listener. personally i'm a fan of the concept of "instant gratification, gradual education".

that said, it's really great to hear the experiences of developers who are writing their software with a serious ear tuned into their user community. i think this is far more common than the negabots who like to moan about developers not listening to users would like to make out. =)