Archive | August, 2005

Joel disses XP, Andrew echoes

Andrew MacNeill – AKSEL Solutions points to Joel on Software – The Project Aardvark Spec with the note “Joel explains why XP isn’t the answer to everything”

I can’t tell you how strongly I believe in Big Design Up Front, which the proponents of Extreme Programming consider anathema.

That would be fine if Joel was making a fair comparison. He’s not. He’s in the camp of detractors who view eXtreme Programming (XP) as “Code Like Hell and We’ll Figure Out What The Customer Wants Later” (CLHWFOWTCWL) which is certainly a less attractive acronym and idea. Reading through the rules and practices of XP, you’ll see that Joel was following most of the tenets of XP is his analysis and design. Good XP practitioners design up front, a sufficient design necessary to begin work and work up a series of user stories just as Joel describes, identifying the overall design and likely architecture of the work before the coding begins. This is just a cheap shot, and far below Joel’s usual outstanding efforts.

Joel’s “Big Design Up Front” is a 20-page PDF espousing some general design principles, coding and naming standards, a quick text-based mockup of the user interface and an overview flow diagram. This is the perfect starting point for an XP project, but completely misses the target of “Big.” Joel’s doing some aspects of XP, he just doesn’t know it.

Managing Hierarchical Data in MySQL

On the MySQL developer’s support site, Mike Hillyar has an article on hierarchies in relational databases. “Most users at one time or another have dealt with hierarchical data in a SQL database and no doubt learned that the management of hierarchical data is not what a relational database is intended for. The tables of a relational database are not hierarchical (like XML), but are simply a flat list. Hierarchical data has a parent-child relationship that is not naturally represented in a relational database table.”

As I pointed out last week in Chris Date’s interview, it may not be intuitively obvious that flat files linked with relations are appropriate for structures like this, but in fact this is what they were made for. Relational databases excel at storing complex structures, as long as the designer understands the structure they are trying to represent. Despite a questionable start, Mike goes on to write an interesting and insightful article.

Cringely: Congress threatens patents

Robert X. Cringely (the pseudonym not the registered trademark) writes in his weekly column, “Patently Absurd: Patent Reform Legislation in Congress Amounts to Little More Than a “Get Out of Jail Free” Card for Microsoft.”

Late last month, shortly before the U.S. Congress shut down for its summer recess, the Senate Judiciary Committee’s Intellectual Property subcommittee held an unusual hearing — unusual because the only committee member attending the hearing was the chairman, Orrin Hatch, a Republican from Utah. Why would such a prestigious committee hold a hearing in Washington attended by only one member? To slam through some controversial legislation, of course. Senator Hatch was trying to pass a new law “reforming” the U.S. patent system and apparently felt it would all go much more smoothly without the presence of the other committee members.

Legislation to remove the rights of citizens and small businesses to innovate need to stop. Congress needs to get back to doing what the Constitution empowered it to do: “To promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right to their respective Writings and Discoveries;”

Chris Date on Relational Databases

Chris Date has an interview over on the O’Reilly site that’s well worth the time to read. A favorite quote, one of many:

To a first approximation, “object/relational” just means the domains over which relations are defined can be of arbitrary complexity. As a consequence, we can have attributes of relations–or columns of tables, if you prefer–that contain geometric points, or polygons, or X rays, or XML documents, or fingerprints, or arrays, or lists, or relations, or any other kinds of values you can think of. But this idea too was always part of the relational model! The idea that the relational model could handle only rather simple kinds of data (like numbers, and strings, and dates, and times) is a huge misconception, and always was. In fact, the term object/relational, as such, is just a piece of marketing hype … As far as I’m concerned, an object/relational system done right would simply be a relational system done right, nothing more and nothing less.

Passed MySQL Core Certification

Powered by <ySQLI took the MySQL Core Certification exam yesterday, and passed. It was a tough exam, a bit too picky about edge cases, I think, but I passed. The NDA pretty much forbids me saying more about the exam. Fair enough. The exam is only valid if the Q&A aren’t published, otherwise, the value of the exam and certification plummets, as happened with “paper CNEs” and “paper MCSEs”.

MySQL Core Certification logo

I have earned the MySQL Core Certification

The MySQL folks don’t seem as constrained by the NDA, and post a “real life story” as well as point to two blog entries. That ought to give you a pretty good idea of what’s involved. I’ll wait a while before taking the Pro certification, as it’ll require a few weeks of dedicated night and weekend studying, but I think that’s the proper level of certification for a software development consultant like me to have.

Clay Shirky: Ontology is Overrated: Links, Tags, and Post-hoc Metadata

Recorded at the O’Reilly Emerging Technology Conference in San Diego, California on March 15, 2005, and available for you to download and/or listen online at IT Conversations, Shirky cites several examples of why hierarchical representations of the web (Yahoo, dmoz) don’t work as well as the freeform “tagging” of Google, del.icio.us or Flickr. Worth an attentive listen or two.

Database-centric application designers need to be thinking about this, too. We often present workflow and data entry entry that’s linear or branching. Relational database design by its nature is hierarchical. Think about how flat tagging can apply.

OTOH, if you have a Mac G5 and run (rare) 64-bit apps, hold off on patching…

OSNews reports Latest OS X Update Breaks 64-bit Support. “The most recent Mac OS X security update from Apple Computer includes a glitch that prevents users from running 64-bit applications on the company’s new Tiger operating system, AppleInsider has confirmed.” 64-bit apps are still rare in the Apple world, limited mainly to console or background tasks, according to the linked AppleInsider article.

Microsoft’s patched UPnP vulnerability continues to be exploited

InfoWorld: Top News reports Experts see new variants of Windows 2000 worm.

(InfoWorld) – Security vendors have reported several new variants of the worm infecting PCs running Microsoft’s Windows 2000 operating system. Groups of virus writers are competing to cause the most damage, according to one security company, although the worm appears less severe than some first feared.

So far. Many media outlets are reporting they were hit. It’s hard to tell if we’re at the crest of the wave just yet. In the meantime, ensure all machines are patched, scan all foreign machines coming into your network (laptops, VPN, etc.) and shut down any unnecessary services that require these ports open.

Max OS X Tiger gets patch today

Computerworld News notes that Apple releases security update for Mac OS X. “Apple has released a security update for Mac OS X 10.4 “Tiger” that updates several of the components and technologies in the operating system.” In Apple’s Software Update, it goes on to say:

“Security Update 2005-007 delivers a number of security enhancements and is recommended for all Macintosh users. This update includes the following components: AppKit, BlueTooth, CoreFoundation, cups, Directory Services, HIToolBox, Kerberos, loginwindow, Mail, OpenSSL, QuartzComposerScreenSaver, Security Interface, Safari, X11, zlib For detailed information on this Update, please visit this website: http://www.info.apple.com/kbnum/n61798”

Yikes. Get patching

Acxiom robbed of 1.6 billion customer records (old news, new details)

InfoWorld: Top News notes Hacker found guilty in massive data theft case.

(InfoWorld) – “A Florida man was found guilty of stealing data from customer information management company Acxiom Corp. Friday. The prosecution estimates that Scott Levine and his defunct bulk e-mail marketing firm Snipermail.com Inc. stole more than 1.6 billion customer records by hacking into an Acxiom server.”

… “Levine and other Snipermail staff downloaded around 8.2 gigabytes of personal data from the Acxiom server between April 2002 and August 2003, according to the DOJ.

… “Acxiom said in the statement… “There is no evidence that any individuals are at risk of harm due to the breaches. It is also important to note that only one external server was accessed, and there was no intrusion of Acxiom’s internal security firewalls or internal databases.”

Could someone please explain to me why Acxiom was storing 8.2 gigabytes of personal data in an external server!!!???

Powered by WordPress. Designed by Woo Themes

This work by Ted Roche is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 United States.