Premature synchronicity

Premature synchronicity


I have noticed in life when you have issues that often a solution appears from the same environment at the same moment. Synchronicity challenges you to move to the next level of efficiency and quality. Problems force you to reroute and grow in new ways and directions. Once the fields have burnt the wheat may grow. Of course I would love to be able to pick my problems, hum, I mean potential solutions and have them pitched at only a slightly higher level than that of the background noise. This week I was lucky to find myself in such a mild training situation. Not a problem, but rather a lack of a communication method. As a developer in my professional life, sometimes, admittedly rarely you have to fit square shaped software into a round shaped organization.

I am involved at the fringes in helping to deploy a dynamically growing almost free software product. The product is defended by an educational license that has an open, positive ecosphere. The code is being developed by really nice, warm and intelligent people at a velocity that would have been frowned on by software engineers ten years ago. The velocity of code change is high compared with the normal definition of a stable branch. Worst still is that there is a real need for the product now, this minute, leaving me with a feeling of sitting on a code base equivalent of a roller coaster with explosives attached to the wheels. Luckily, beyond any reasonable doubt, the developers know what they are doing and the roller coaster is more like a tank and the explosives fire crackers, but this will not always be the case for free software deployments. Quality can vary tremendously.

Being a deeply experienced professional (I would say that I am writing the article!), I don't like taking unnecessary risks. However, the difference in knowledge domain between the various decision making types can cause difficulty in overriding deployment cycle expectations. This is a truism for any organization above a certain critical mass. Yes, I realize that the functional requirements are fulfilled. However, you know that bugs will exist in some products at some point. You know until the equivalent of service pack 1 that the pain factor (or should I say fear factor)--especially for the help desk people--may be loud and brash.

So how would you communicate this historically repeated obviousness? Scratching my head and my virtual toes, I decided to change the conversation. Not that this kind of effort is required in this particular case, but maybe in the future... How about using metrics with units not associated with the size of the Universe or the numbers of atoms so in? How about throwing real numbers at people and see if they would react objectively? Very lucky for me, myself and I, I had just read a book about code quality. You may read the review of it soon. The book is very detailed and points to excellent tools. Unbelievable, software engineering has advanced since my computation engineering education seventeen years ago! Yes the immortal youth is now old and weather worn to a hardened core. I found within minutes the brilliant, elegant, and (most important for me) simple to use tool sloccount,and parsed the source code for various branches of the code's prehistory.

So there was a base of 40,000 lines for a specific component of the 400,000 line product. Aha, so 900 extra classes were added in the last QA cycle. Now we can communicate! Applying sloc compare I can send intuitively obvious pretty pictures to the people that count. The lesson for me as a free software biased engineer is that although premature optimization of code is the root of all evil, premature optimization of communication is a valid approach to organizational bliss. The next time I need to inform deployment decision makers I will send a picture!

Category: 

Author information

Alan Berg's picture

Biography

Alan Berg Bsc. MSc. PGCE, has been a lead developer at the Central Computer Services at the University of Amsterdam for the last eight years. In his spare time, he writes computer articles. He has a degree, two masters and a teaching qualification. In previous incarnations, he was a technical writer, an Internet/Linux course writer, and a science teacher. He likes to get his hands dirty with the building and gluing of systems. He remains agile by playing computer games with his kids who (sadly) consistently beat him physically, mentally and morally.

You may contact him at reply.to.berg At chello.nl

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!