The Artima Developer Community
Sponsored Link

Agile Buzz Forum
The wages of assumption

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
James Robertson

Posts: 29924
Nickname: jarober61
Registered: Jun, 2003

David Buck, Smalltalker at large
The wages of assumption Posted: May 2, 2005 7:51 AM
Reply to this message Reply

This post originated from an RSS feed registered with Agile Buzz by James Robertson.
Original Post: The wages of assumption
Feed Title: Cincom Smalltalk Blog - Smalltalk with Rants
Feed URL: http://www.cincomsmalltalk.com/rssBlog/rssBlogView.xml
Feed Description: James Robertson comments on Cincom Smalltalk, the Smalltalk development community, and IT trends and issues in general.
Latest Agile Buzz Posts
Latest Agile Buzz Posts by James Robertson
Latest Posts From Cincom Smalltalk Blog - Smalltalk with Rants

Advertisement

One of the worst things you can do in software development is assume things. You see it a lot - developers assume that they know why software is slow, so they don't profile. They assume they know what the problem is, so they don't test. They assume they know what the requirements are, so they don't ask.

I fell into that trap on the bug side over the last 3 releases of BottomFeeder. Starting with version 3.7, I integrated Software With Style's XHTML viewer (and more recently, their editor) in the application. The viewer doesn't handle general HTML - it really wants XML (which means XHTML for general web content). Now, most stuff out there just isn't XHTML. In fact, a lot of the stuff out there is really bad, because browsers have been built to be lenient. What to do?

Well, the first thing we did was use the parser in Twoflower. That worked ok, but - as it happens (and I knew this, having used Twoflower for all the previous releases of BottomFeeder), it doesn't handle every possible breakage in HTML. There was plenty of content that the Tf parser wasn't cleaning up well enough to view. So, we looked at LibTidy - an existing C library that cleans up HTML quite nicely.

Michael built a Smalltalk wrapper for it - Windows and x86 Linux - and I started shipping it with BottomFeeder. That's where I got into trouble. It's been years (over a decade now) since I worked regularly in C. All of the knowledge I once had has rusted away, and I'm now very reluctant to delve down to the level. So, when we got occasional crashes in BottomFeeder, I made an assumption - I decided to add an option to the application that allowed the user to toggle libtidy on/off, and chalked the error up to general C level instability.

Well. As you can see from this post, the problem was much, much simpler, and involved a stupid mistake in the Smalltalk wrapper code - one that popped out at me as soon as I sat down and looked seriously at the code. So by making an assumption - rather than actually looking at the code - I cost myself 2 releases of a less stable application. That's the kind of problem that you can buy yourself by not actually looking.

Read: The wages of assumption

Topic: Smalltalk Solutions Daily Update: 4/27/05 Previous Topic   Next Topic Topic: Two way journalism

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use