Leveraging synergy in this championship year
Michael Davies
Local
News
Software
Utility
Powered by PyBlosxom
Copyright © 2003, 2004, 2005, 2006, 2007, 2008 Michael Davies, |
Very close now...Today is Wednesday. This means 2 more working days until the STA begins. Mostly things are going well, accommodation seems to be arranged, I have full company approvals, visas to work in the USA, tickets booked but not yet received, no car to pick us up yet, suitcases bought, USD purchased, internet banking organised, house-sitters found, movers booked etc. So while there is still lots to do (both at work and at home) we're getting there. Must...keep...energy...levels...up... P.S. California Pizza, Champs, Stir Crazy, Star Bucks, and Krispy Kreme - here we come! :-)
Schaumburg's weatherLifted from Mikal is the weather in Schaumburg.
Black DayToday is a black day. That is all :-(
When all you have is a hammer...
Stop the world, I want to get offJust discovered something cool - a real-time open-source software activity log which monitors CVS checkins. Amazing to see CVS checkins going on around the clock. Open-Source Software really is a global phenomenon. But it's more than just information, it's a real indication of project activity. I mean I've known about Planet GNOME News for a while, but this sort of planet-style aggregation of CVS commits is a great idea. The next step? How about security patch information? LWN and Linux Today have security pages and feeds, but not quite in the right form. LWN has good security info, but not in an RSS feed. Linux Today have advisories mixed in with general security articles, but one big RSS feed. If we had LWN security advisories for the major distributions available as an RSS feed, that'd be sweet.
Windows Command-Line CompletionSomething I can never find when I have to play with the devil: Command-Line completion on Windows.
The Essential ListWhenever I go anywhere I always take a selection of technical books with me - with the number of books being proportional to the time I'll be away from home and the rest of my collection. As Chicago is only a week away I had to make my selection.
The Essential Books Why these books? Some are reference books - what perl operator do I need?, some are for passing on to the unenlightened - Read Chapter 17 of Peopleware and then we can discuss. Others, like HHGTTG and Latin for all occasions provide inspiration for release names. I'm currently playing with C# using Gtk#, so Mono - A Developers Handbook and The Official GNOME 2 Developers Guide are essential. P.S. Yes, all are mine except Object-Oriented Design Heuristics and C# in a Nutshell which are my employers.
michaeldavies.org upgradedmichaeldavies.org has moved from www to bree. www, a Cyrix 686 120Mhz (120.01 bogomips) with 64Mb RAM and 6Gb of disk, has certainly earned retirement.
Linux Australia overview presentationSpoke at LinuxSA on Tuesday night, with a 20 minute overview of Linux Australia. Slides here. Received well, as was Geoffrey's talk on setting up basic services (www, sendmail, pop etc).
Beagle and DashboardThe Beagle project had a hackfest with the Ximian^WNovell dudes visiting Novell in Bangalore. Results look good. I really like the Beagle/Dashboard projects because adding implicit search as a fundamental feature of the desktop is a great leap forward. Being able to find artifacts of any type, cross-referencing between them, and to do this as you work, leaps over the competition. As I've blogged before, the idea is so grand Microsoft and Apple have started their own projects to replicate what the OSS community is doing. rml started PlanetBeagle to track this stuff. Woohoo! I'm looking forward to hearing rml talk on Project Utopia at Linux.Conf.Au 2005 in April next year.
Sun and Linux contributionsSun complained about the difficulty of getting their patches into Linux, Greg K-H rebuts well. I think it's important that Linux keeps on doing what works. There has been, and will continue to be, lots of groups that want to integrate their code into Linux as they see the strengths of this operating system. They will try and make Linux adopt their techniques. And that's ok, just so long as that doesn't make Linux transmogrify into something it isn't and lose the qualities that have made it so successful. SCO have whinged about IP, so now Linux has responded with better IP assignment, and Groklaw has been pointing out the errors in the acqusations. Novell, IBM, SGI etc have successfully adopted their mature development practices to fit in with the community - the question is, will Sun? They have cool stuff to contribute, but that's only going to get in if they do it Linux's way, and is clean good code, and gets there by meritocracy rather than bullying. Sun has done it in the GNOME community, they just need to do the same with the Linux kernel community.
Why is the iPod for sale in Australia?Kim Weatherall talks about how putting music on your iPod is illegal in Australia. She also references the Builder AU article on the MPAA acting like a big ignorant bully in Australia. I'm really glad that people like Kim are taking the time to point out what our laws say - and point out where they conflict with what people think the law says.
US Visa acquiredUp at 5am, took the family to Melbourne to apply in person for the US Visa required to spent 6 months in Chicago. Big day, home about 6pm, but worthwhile since I was told that the Visa was approved. All go...
Voted!So yesterday I voted due to the upcoming trip. In my electorate of Makin there were 7 candidates wanting my vote, but only the 2 major parties were handing out How to vote cards. Interestingly enough they both asked for them back, "you know, recycling and all that." I'll be only just over jet lag by the time I get to see who won.
Hardware wranglingHad fun trying to get a DLink DFE-528TX+ PCI Ethernet Card working with a motherboard with an AMD 1Ghz processor. The PCI card and motherboard refused to negotiate an IRQ no matter which PCI slot was used, even though there were no other PCI cards on board. The 8139too driver didn't give me much I could fiddle with after Linux booted. This is very strange since I've used these cards before with absolutely no problems. To get it working I needed to disable PnP on the motherboard and allocate an IRQ via the BIOS. In the good ole days when ISA was king I could play with driver settings in software rather than needing to deal with this at the BIOS level. So much for PnP. Why is PC hardware so bothersome?
MD5 Collision FoundA report of an MD5 Collision on Aug 17, 2004:
Consider these 128-byte files, which only differ in six bytes (in fact
their Hamming distance is only six bits, too):
file1.dat:
00000000 d1 31 dd 02 c5 e6 ee c4 69 3d 9a 06 98 af f9 5c
00000010 2f ca b5 87 12 46 7e ab 40 04 58 3e b8 fb 7f 89
00000020 55 ad 34 06 09 f4 b3 02 83 e4 88 83 25 71 41 5a
00000030 08 51 25 e8 f7 cd c9 9f d9 1d bd f2 80 37 3c 5b
00000040 96 0b 1d d1 dc 41 7b 9c e4 d8 97 f4 5a 65 55 d5
00000050 35 73 9a c7 f0 eb fd 0c 30 29 f1 66 d1 09 b1 8f
00000060 75 27 7f 79 30 d5 5c eb 22 e8 ad ba 79 cc 15 5c
00000070 ed 74 cb dd 5f c5 d3 6d b1 9b 0a d8 35 cc a7 e3
MD5(file1.dat) = a4c0d35c95a63a805915367dcfe6b751
file2.dat:
00000000 d1 31 dd 02 c5 e6 ee c4 69 3d 9a 06 98 af f9 5c
00000010 2f ca b5 07 12 46 7e ab 40 04 58 3e b8 fb 7f 89
00000020 55 ad 34 06 09 f4 b3 02 83 e4 88 83 25 f1 41 5a
00000030 08 51 25 e8 f7 cd c9 9f d9 1d bd 72 80 37 3c 5b
00000040 96 0b 1d d1 dc 41 7b 9c e4 d8 97 f4 5a 65 55 d5
00000050 35 73 9a 47 f0 eb fd 0c 30 29 f1 66 d1 09 b1 8f
00000060 75 27 7f 79 30 d5 5c eb 22 e8 ad ba 79 4c 15 5c
00000070 ed 74 cb dd 5f c5 d3 6d b1 9b 0a 58 35 cc a7 e3
MD5(file2.dat) = a4c0d35c95a63a805915367dcfe6b751
This clearly shows that the resistance of MD5 against collision attacks
is significantly lower than 2^64 indicated by its 128-bit digest. Since
the attack allows free selection of IV, these attacks mean that MD5
should not be used for any serious cryptographic purpose.
Note for that because MD5 is a chained hash function, you can generate an
infinity of new collisions from these by simple process of concatenation:
$ echo 'Hello, World!' > hello.txt
$ cat file1.dat hello.txt | md5sum
158701224aef36986648d9f0dfb0ca3c -
$ cat file2.dat hello.txt | md5sum
158701224aef36986648d9f0dfb0ca3c -
Time to patch passwd(1)? :-)
EnvyGot around to installing Ubuntu on shadowfax alongside Fedora Core 2. Very nice... P.S. I want this.
Briefly back homeReturned from holidays at Kyneton today. Relaxing.
Worlds apart.Joel writes on the Five Worlds of software development - how you need a different mindset as a developer depending on which category you are developing for. The categories he defines are: Shrinkwrap, Internal, Embedded, Games, and Throwaway. Shrinkwrap is easy. It's what I do for a living and its what the open-source world produces everyday. There's two main variants, the one that Joel recognises when he says, "we have higher bars for ease of use and lower bars for bugs", which is the Windows-world. The other side is the open-source way which is the less emphasis on ease of use and more emphasis on being bug free. These two extremes don't seem to get bridged very often in our industry. Most open-source projects aren't very focused on the user experience - and ad hoc evidence from my Windows-focused work colleagues tells me that this is a common complaint with open-source software. What do we do about that? As Joel also writes, "things that are not considered "fun" often don't get done in an all-volunteer team", which is why the contributions that Sun and other corporations make to GNOME are very important - they do the boring stuff that the enterprise expect. Perhaps this is the model for successful open-source software development in the large - let the enthusiastic volunteer coders trail blaze, and let the paid developers do the polishing. Testing, documentation, cross-platformness, i18n are all things that paid developers do better that volunteers. Internal software is all about stuff you develop or contribute to, so that you can concentrate on producing the real software that you want to sell. This is the Larry Augustin story about building a Linux box so he could complete his Masters thesis (but instead founded VA Research). This is a great space for open-source projects by the way - twiki, samba, bugzilla, apache, php etc etc etc which are all in common use where I work. The line here blurs, is this really just internal software? What's definately internal software are the cgi-based meeting room bookers, meeting minutes registry, software metrics database systems etc. They all share the following attributes: One purpose, custom built, often shoddy user interface. Internal software is quite often write-only software. The projects I mentioned don't fall into that category but are very much behind the scenes players. Do they form another category of software - shared internal - which is higher-quality, single-purpose, internal software that is so good that it gets shared? Internal software is a good candidate for open-sourcing. It's non-core business for your employer, and gaining external developers and testers can improve the quality of the code, not to mention finding uses for it that you hadn't thought of. Afterall, that's how things like patch started out. Embedded. No comments on this right now :-) Games. Interesting mindset that I hadn't really thought about. Games are just like movies from the financing perspective. Either they fly or they flop. There is no inbetween. Create too many flops in a row and you're dead. Create a couple of high flyers and that gives you the ability to create flops for a while. Interesting. Joel then comments that, "id software is not about to hire Ed Yourdon to talk about structured analysis". This just shows that each of these catagories of software need to be approached differently. Throwaway. What struck me immediately on reading this was Tridge's junkcode. Of course junkcode isn't totally throwaway, but stuff you write once that might be useful again. All code might find another use, hence why I listened to Tridge (even though it's very meager right now). Joel's main point in his article was that: Whenever you read one of those books about programming methodologies written by a full time software development guru/consultant, you can rest assured that they are talking about internal, corporate software development. Not shrinkwrapped software, not embedded software, and certainly not games. A very good observation.
Poor office environmentsToday has been phone conference day. Up early, arrived at work just after 0630 to talk to a customer in the USA. Then a short break, and more phone conferences with other developers in several different timezones. My ear hurts, my shoulders ache, my co-workers dislike me (today) because I've been talking louder than usual to be heard over the conference bridge. There must be a better way. I've mentioned this before, but Fog Creek appear to have a very nice work environment. If you look at the design of their offices you can see how it's a better way to work. It just could be Programming Paradise. Joel on Software also has an online discussion area. Here is where office design is discussed, including some other nice references. These articles remind me that I need to read chapters 7 through 13 of Peopleware again - last time I did that I changed jobs :-P It's nice to dream... P.S. I'd even appreciate the ability to plug my Linux laptop into the network here at work. *grumble*
GNOME 2.8 almost herejdub announces the GNOME 2.8 Release Party. So if you are in Sydney, this is what you should be doing on Sept 15.
About huginThere are some early packages available, but they don't seem to work yet Did I listen? No. Did the pre-built packages work for me? No. Brain in gear? No.
Creating Panoramic PhotosWhen I was in Chicago recently I took a few panoramic shots - specifically of the White Sox and Willow Creek Church. Haven't got around to stitching them together because the panoramic software that comes with my camera doesn't run under Linux. Recently Chris wrote up how he did it, but I still didn't get around to it. Today I just found this article, which looks pretty good as well. I'm running out of excuses :-)
Non-breaking hyphens in HTMLEm width hyphens, en width hyphens, non-breaking hyphens. Why isn't this documented anywhere common? The Trouble With EM ’n EN (and Other Shady Characters).
ALP make noises on the AUSFTASenator Kate Lundy of the ALP released this statement to placate the angry Australian open-source industry. A good start, but who knows what this means in practice. Will the ALP provide surety for OSS over software patents? Will circumvention for the purposes of fair use be legislated? Is there wiggle room in the AUSFTA to allow this? Will they have the intestinal fortitude to enact legislation that better balances the rights of end users and big multinational companies? Does actively monitor mean something will happen? Or is it political speak for do nothing?
Linux.Conf.Au 2004 Conference CD/DVD onlineAt last the conference DVD and CD iso's are available online. Online browsing at: http://www.linux.org.au/conf/2004/eventrecord/LCA2004-cd/ and http://www.linux.org.au/conf/2004/eventrecord/LCA2004-dvd respectively. iso downloads here: ftp://ftp.linux.org.au/linux.conf.au/2004/LCA2004-cd.iso and ftp://ftp.linux.org.au/linux.conf.au/2004/LCA2004-dvd.iso, not to mention BitTorrent too.
More from SCO at 10.In this article, Jonathan Corbet summarises IBM's latest request for a summary judgement. It's pretty damning for SCO - as a relatively objective observer, it appears SCO are stuffed. No matter which way the case goes, they can't win. Given that SCO are also saying that Linux doesn't exist, it's a matter of trying to fit both feet in your mouth at the same time. As mbp says, "I want to see Boies explain to a judge that SCO has spent man-years and millions of dollars suing over something that doesn't exist." Thanks to Groklaw, mbp, and LWN. You guys do well.
tivo-stage-1Imaged a 120Gb hard disk, installed it, plugged in ethernet, booted, pinged, telneted. All good. Now "all" I need to do is to route some ethernet through the walls to the adult retreat room, and do some IR mangling for my PAL source.
Busy little beesOn top of working flat out doing the technical stuff for the Chicago short-term assignment, I've been very busy doing the organising of the trip itself. Passports for family - done, Organising accommodation - started, Booked flights - done, Joined frequent flyer - done, Organising a second personal credit card - done, Organising transport of personal effects - started, Company approvals - still in progress, US visa application - once I get the family's passports, US visa interview - once I submit the application, go crazy - done. Not long to go now...
Avalon APIsmiguel makes good comment on the delays for Longhorn and what Avalon might be like when it arrives. From the Free Software perspective, I like how Miguel contrasts API stability and how GNOME has learnt how to ship things that aren't set in concrete until real developers have been using them in anger. i.e. haven't become part of the platform. This is important, no-one writes perfect code (except g it seems :-) so giving APIs time to settle before solidifying them is a good idea that has emerged in GNOME. We don't want .NET 1.0/1.1 style incompatabilities going forward with Avalon. Learn from GNOME - the desktop to rule them all :-) From the software engineering perspective, I don't envy those guys writing Avalon. Overnight it appears they've inherited two target platforms - Longhorn and XP, with similar delivery dates, meaning compromises between compatability issues or functionality trade-offs. Given the bugs my team found with differences between .NET on Windows NT, Windows 2000, Windows XP and between the English and Traditional Chinese versions of each of these, I can't see them avoiding this sort of debacle again.
Audiombp writes: Hopefully LCA2004 audio and video will be up someday. Well, it now is :-) |
||
|
This web page is optimised
for standards. |