Google SearchMore ContentAds / SponsorsGoogle AdsSite RankMy FOSS Work |
Why I Love Open SourceWednesday, July 16. 2008
Every user of an application has run into small but irritating characteristics of that application. Most of the time, they can be easily ignored. But sometimes they are part of a repetitive task, and then they become problematic. They have a disproportionate effect on both productivity and the user's overall impression of the application.
Just about every enterprise makes nice noises about how they listen to their customers and how customer service is important to them, but the odds are very low that comments about small irritations will result in code changes. This is partially because most companies don't actually care as much about customer service as they pretend to, and partially because tracking these small things and then sorting through them, removing duplicates, and distilling them down to something that can be easily understood is a very complex and expensive task. Most of the time the effort involved simply doesn't justify the results. This is something that always attracted me to open source. As a developer, the odds are pretty good that I can find a fix for that thing that irritates me. Then I can change the code to fix my version. If the irritation is idiosyncratic — basically if I'm the only one who doesn't like it the way it is — then that's where the process ends, and I'm happy. The first credo of open source is that you try to give back to the community. So even as a non-developer there is an incentive to find the bug tracker or support forum for the project and to suggest a change. Sometimes that works[1], but a lot of the time good comments and patches simply fall through the cracks. After all, if tracking details like this is difficult for a for-profit corporation, it's not going to be any easier for a project run by volunteers! What is really satisfying is getting sufficiently involved in a project to be able to have a direct influence on it, as I am with "Joomla!". It's great to be able to identify a minor irritation, to fix it, and to get it to a production release. This has been my experience twice in recent weeks. I've implemented small changes to the system that make it just a little easier to use[2, 3]. Not only will I enjoy the product more as a result, I'll have the satisfaction of knowing that thousands of systems administrators out there might think just for a moment, "oh, they fixed that – great!" It is an interesting experience. These small tweaks and fixes that I get to make aren't the biggest contribution I make to the project in terms of lines of code or hours of work, but they're tangible and real. The direct impact on the user is visible and easy to understand. Implementing unit testing and contributing to the building of a "Culture of Quality" in the project are more complex and significant contributions, but they're also more abstract. The small tweaks are actually kind of fun, and it's nice to know that here and there, they is me. Notes:
Posted by Alan Langford (developer blog)
in It's a Code, Code World
at
19:08
| Comments (0)
| Trackbacks (0)
Web 2.0 and the One Page Web SiteTuesday, June 24. 2008
I'm busy working on my first major web site using "Joomla!" 1.5. One of the things I did for the site was to install a simple component that provides an index of articles in a side panel. Simple enough, you click on the index link and it fetches the page with that article.
The problem is that it's quite a page. There's a nice graphics-rich template that wraps the site, then there's the Javascript. A full copy of mootools comes with every page. Sure the browser has most of this stuff cached, and Joomla has the actual page content cached, but still the browser has to do a lot of work to reload the page and recompile mootools, just to change a relatively small portion of the page. The user gets to watch as everything is (re)displayed, most of it exactly the same as it was before the request. The obvious solution would be to have the index link send an AJAX request for the relevant content and then to simply repaint the area that needs to change, but that only works in this specific case and it deprives the CMS of the ability to update other parts of the page in response to the request or to other events at the server. I'm big on generalizing ideas like this, so why not make the entire site a single page? The first time the browser requests something from the site, send the structure of the template, and most of the Javascript needed to run the site down to the browser. Then make every internal site link send an AJAX request. The server can respond with a list of the areas of the template that need to be updated, along with either the HTML or the data needed to perform the update. Now my index request could respond with a new menu, any updated news items, the content I requested, or even a completely new page layout. The client-side application then applies these updates, possibly issuing secondary requests. Only the data that's changed comes back from the server, and most of the Javascript loads just once with the first request, so the page updates much faster than it did before. Best of all, the user doesn't have to watch the template being regenerated, which is visually disturbing no matter how quick it is. Now the page is an application in itself, and the browser is playing the role of the operating system. The user gets a platform independent, end-device sensitive interface that can be rich, intuitive, and more interactive. It's an idea worth implementing. Not for this particular site, but it would be nice to build this capability right into Joomla!
Posted by Alan Langford (developer blog)
in It's a Code, Code World
at
09:34
| Comments (2)
| Trackbacks (0)
Microsoft Security Fix Clobbers Two Million Password StealersTuesday, June 24. 2008
Normally I'm no fan of the "blog by repeating news" style, but in this case I have to make an exception. The headline above is from a Computerworld Security article dated June 20, 2008. Discussing a recent upgrade to Microsoft's Malicious Software Removal Tool, this excerpt caught my attention:
One password stealer, called Taterf, was detected on 700,000 computers in the first day after the update. That's twice as many infections as were spotted during the entire month after Microsoft began detecting the notorious Storm Worm malware last September. This may be mind-boggling to someone who lives deep in Microsoft culture, but to everyone else, it's barely a surprise. The missing part of McCormack's quote should have been "The Linux/Unix guys are right, Windows security still sucks at a deep structural level." Good thing regular doses of Microsoft Cool-Aid prevents that.
Posted by Alan Langford (developer blog)
in It's a Code, Code World
at
09:06
| Comments (0)
| Trackbacks (0)
Firefox 3 is Ready, Bug 183689 Intact. Duh.Saturday, June 14. 2008
The good news is that Firefox 3, one of the best web browsers available, is set to release version 3 in a few days.
The weird news is that it's shipping with Bug 183689 fully intact. Under mysterious (or at least elusive) circumstances, Firefox fails to close a file that the user uploads to a web site. The file is locked and unusable until Firefox is restarted. This has the ring of familiarity. Any user of Firefox 2.x who has lots of extensions installed will have noticed that it tends to get more and more sluggish over time. A quick look at the process will reveal that memory consumption continuously rises until the best thing to do is restart it. That's not really a problem that the Firefox developers had a lot of control over. If an extension is leaking memory, there's not much the core can do to stop it. In fact this is one of the major improvements in Firefox 3. A new, sophisticated memory manager now finds a lot of these unreferenced data structures and cleans them up. On my system, the memory footprint for Firefox 3 is nearly 200Mib smaller at start up, and if it grows, it doesn't grow very fast. That alone is reason to upgrade on June 17, 2008 – Firefox Download Day. The point of this digression is that I've become used to Firefox losing track of resources. But losing a file handle? Really. Can that be too hard to find? Apparently the answer is "yes", since Bug 183689 has been open since December, 2002! There are some good reasons why the browser needs to keep track of the file, for example if you refresh the resulting page, the file is part of the Post data that needs to be re-sent. But eliminating memory leaks is hard, and it's easy to just rely on increasingly sophisticated garbage collection tools instead of finding the cause. Unfortunately, a garbage collector has no way of knowing that something it's cleaning up represents an open file, so the memory leak is fixed, but the file handle leak remains. Five-plus years is far too long for a major bug to remain open, even for an open source project. But don't go updating that bug! Despite the fact that there's no explanation that the issue is independent of the user's specific circumstances, any provision of additional information will be considered spam by Jonas Sicking, the fellow who has been assigned the bug. Considering that the bug seems difficult to reproduce, the contradiction is obvious. One would think that more examples might lead to the discovery of a pattern, but that seems to not be the case as far as Mr. Sicking is concerned. Hopefully he was just feeling a little stressed with a major release coming up so quickly, and his comment will be clarified or withdrawn. If not, I'm guessing this one is going to remain open for quite some time to come. [Note: it has since been determined that an extension, LiveHTTPHeaders, is the culprit for this bug. My "duh" is withdrawn. My disdain for Mr. Sickling's response remains unchanged, however.]
Posted by Alan Langford (developer blog)
in It's a Code, Code World
at
06:16
| Comments (0)
| Trackbacks (0)
Malware Injection: More Fun With SkypeThursday, May 29. 2008Skype screen capture This one probably isn't new, but it's worth noting. An associate recently got this bogus "security warning". Appropriately named "irony", the message warns the user that "Security Center has detected Malware" and directs the user to a site where they can download a patch. Click on the image for a full sized version. The "patch" will install malware on the user's computer. At least they can't forge the link as belonging to Microsoft, but this could easily fool an unsuspecting user. Ubuntu is an African Word...Friday, May 23. 2008
...that means "Gentoo is too hard for me."
This line came from a chat with another developer, and I had to write it down. It has a lot of truth to it, as I watch my system compile the latest point release of KDE, while telling me I need to compile a new kernel and rewrite my MBR with the latest version of grub. Sigh. Maybe it's not so much "too hard", but just "too much trouble." Don't get me wrong, I love Gentoo. I've made my Gentoo box do some really neat things, and most of the time I know I have the latest and greatest installed and ready to go. On the other hand, my Kubuntu laptop is a lot easier to maintain, even if it's not right up there on the cutting edge. An Ubuntu maintenance update takes minutes; KDE will be compiled in 5 hours or so, and there will be manual steps to be done after that. Then there's the matter of "not by me" maintenance. If I put Gentoo into a production server, how long will it take me to train someone else to take care of it? What are the odds that they'll fail? If they quit, how easy will it be to find a replacement? It used to be that I planned to build a stable binary build on a stand-alone machine, then use it to send binary packages to production servers, but even that still needs someone willing to deal with Gentoo's quirks and complexities on the back end. Tossing Gentoo and moving to Ubuntu may be copping out, but it's a lot simpler. It's not the "best" solution from a bit-head's point of view, but from the management side, it's "Keep It simple, Stupid" in action. The biggest problem will be moving all the development tools and demos across. Switching distributions isn't something to be taken lightly. It's a job for when I have a few days to play... like that's about to happen.
Posted by Alan Langford (developer blog)
in It's a Code, Code World
at
08:39
| Comments (0)
| Trackbacks (0)
"Joomla!" Goes PHP5Monday, May 12. 2008
The decision to drop PHP4 support in the next version of Joomla was made yesterday.
There's going to be some controversy over this one, but in my opinion, it's the right move. It's actually something I've been (gently, I hope) lobbying for for months. Top reasons to move to PHP5:
Very happy.
Posted by Alan Langford (developer blog)
in It's a Code, Code World
at
14:47
| Comments (0)
| Trackbacks (0)
Online Shopping versus Traditional ShoppingMonday, February 25. 2008
It's interesting how often the question of online versus traditional shopping comes up. A friend asked me this earlier today and I gave him the same answer I've been providing for a decade now.
These days the response seems reasonable, but back in 1998 it was heresy. It used to be guaranteed to make a room full of start-ups and venture capitalists go dead quiet. Of course back then we were in the middle of the dot-com boom, when somehow geeks who don't like daylight managed to convince everyone that their concept of a good shopping experience was somehow universal. So here it is: Continue reading "Online Shopping versus Traditional Shopping"
Posted by Alan Langford
in Business, Environment, Internet Technology
at
13:36
| Comments (0)
| Trackbacks (0)
Steve Jobs Just Loves Windows Vista!Tuesday, January 29. 2008
As more Windows users cry "Help, I've been Vista whipped!", I thought that the introduction of the oppressive Windows Vista was going to be a boon for Linux.
I got the first part right. As Vista subverts your computer into a Microsoft Peripheral, subject to whatever whim "Balmer and The Boys" cook up, users have resisted. A large number of not-so-technical people I've talked to want to avoid Vista like the plague. [And in my opinion, rightly so.] My assumption was that given reasonably priced hardware from several suppliers and completely free Linux distributions like Ubuntu, the discomfort with Vista would be the kick that finally pushed Linux into the consumer mainstream. Not so. Continue reading "Steve Jobs Just Loves Windows Vista!"
Posted by Alan Langford
in Business, Open Source Software, Technology
at
22:55
| Comments (3)
| Trackbacks (0)
Open Source Changes Software AcquisitionsTuesday, January 29. 2008
It used to be that when one software company acquired another, it was frequently as much an acquisition of a customer base as it was one of technology. Often it was a "strategic acquisition" which frequently meant taking a competitor out.
These sorts of acquisitions are the worst: Some innovative company gives a major player a hard time by delivering a great product. It develops a fiercely loyal customer base. "Majorco" users start to ask "when are you going to implement feature X like 'Smallco' does"? Unfortunately feature X requires a complete re-write of the major company's fragile solution, and being constantly reminded of this is no fun. So what does the major player do? Simple, acquire Smallco and throw their technology away. All the customers who hated you now really hate you, but they now have no choice and the customer bleed stops. As a customer I've had this happen to me more than once, and it sucks. I've dropped entire lines of business partially because I couldn't bear working with the purchaser's sorry-ass excuse for a product. The integration process must be something else in these situations too. The guys who run Smallco are now rich. They have a contract that makes them hang around and say nice things about Majorco for a couple of years. Then they can go off and do what they want. The rest of the staff, at least those who survive "cost efficiencies", have a choice of working with a product they probably hate, or finding new employment. In the open source era, customers are defended from this sort of thing. Continue reading "Open Source Changes Software Acquisitions"
« previous page
(Page 2 of 6, totaling 59 entries)
» next page
Competition entry by David Cummins powered by Serendipity v1.0 |
Syndicate This BlogCategoriesRecent Entries"Joomla!" Goes PHP5
Online Shopping versus Traditional Shopping Steve Jobs Just Loves Windows Vista! Open Source Changes Software Acquisitions OpenProj: Proprietary Spin Meets Open Source Product Diagnostic Output Class Gets Even Niftier AP5L Gets a Nifty Diagnostic Output Class Elegant Runtime Configuration RapidForm Refactored for AP5L Geek BlogOn the Enforcability of the GPL
More Controversy: the Joomla Extensions Directory (JED) and the GPL Simplifying Joomla Template Layouts How to: Ubuntu PHP Remove Suhosin Joomla 1.5.8 is... is what?? "IBM May Quit Technology Standards Bodies" WSJ Screams In Search of an Application Framework: PHP GTK Python XULRunner Why I Love Open Source Web 2.0 and the One Page Web Site Microsoft Security Fix Clobbers Two Million Password Stealers Links
Top Exitswww.extensionprofessionals.com (21)
www.ambitonline.com (16) www.theglobeandmail.com (11) www.joomla.org (10) www.abivia.net (8) www.google.com (7) www.softwarefreedom.org (7) www.funnyordie.com (6) www.techcebu.net (6) community.joomla.org (5) Administration |

