Categories

Links

Meta

Design Debt

-- Bryan Jordin | Filed under: code, design

7 days ago

I just ran across this term and thought I would share. From Wikipedia….

“Technical debt and design debt are synonymous, neologistic metaphors referring to the eventual consequences of slapdash software architecture and hasty software development.

Ward Cunningham first drew the comparison between technical complexity and debt in a 1992 experience report:

Shipping first time code is like going into debt. A little debt speeds development so long as it is paid back promptly with a rewrite…. The danger occurs when the debt is not repaid. Every minute spent on not-quite-right code counts as interest on that debt. Entire engineering organizations can be brought to a stand-still under the debt load of an unconsolidated implementation, object-oriented or otherwise. [1]

In his influential 2004 text, Refactoring to Patterns, Joshua Kerievsky presents a comparable argument concerning the costs associated with architectural negligence, which he describes as “design debt”.2

Activities that might be postponed include documentation, writing tests, attending to TODO comments and tackling compiler and static code analysis warnings. Other instances of technical debt include knowledge that isn’t shared around the organization and code that is too confusing to be modified easily.

In open-source software, postponing sending local changes to the upstream project is a technical debt. “Interest payments” are both in the necessary local maintenance and the absence of maintenance by other users of the upstream project. Ongoing development in the upstream project can increase the cost of “paying off the debt” in the future.”

Comment

---

A familiar trope

-- Fletcher Moore | Filed under: css

45 days ago

Here is an interesting piece about Boing Boing’s recent @font-face experiment. In a nutshell, Boing Boing tried to use the new CSS3 font-specification and was kneecapped by — wait for it — Windows XP.

It staggers the mind how one company can so relentlessly impede the progress of technology.

Comment

---

Enfilading fire

-- Fletcher Moore | Filed under: IE

55 days ago

Mozilla has now weighed in on the ongoing Chrome Frame controversy, saying that Chrome Frame will result in browser soup.

According to [Mozilla Chairman Mitchell] Baker, Chrome Frame’s browser-in-a-browser will confuse users and render some of their familiar tools useless. “Once your browser has fragmented into multiple rendering engines, it’s very hard to manage information across Web sites. Some information will be manageable from the browser you use and some information from Chrome Frame. This defeats one of the most important ways in which a browser can help people manage their [Web] experience.”

Baker also suggests this will negatively affect developers because of fragmentation of the browser market. Personally, I don’t buy it. Chrome Frame must be specified by the site developer — it can’t just spring up unexpectedly. And none of this would be an issue if browsers were coded to adhere to standards, which is one of the aims of Chrome. How long have we been told by the W3C to code to the standard, not the browser?

Moreover, it’s not as though IE is splitting into a bunch of completely new browsers. It’s splitting into two knowns. Is that really a split, or is it effectively share growth for Chrome?

As for users, I expect the predominant reaction will be “why do some websites work so well and others work like garbage?” I’m not sure what Baker is talking about with this notion of managing information across Web sites. Bookmarks? I don’t really know enough about Chrome to know whether or how the plugin uses IE’s meta-browsing functionality, but I suspect if it doesn’t, Google will have an elegant solution to the problem soon enough.

The real reason for this criticism, I suspect, is that Mozilla knows that their niche as the only major alternative to IE is threatened. It’s easy to snatch market share from weak software like IE6 or even IE7. It’s harder when those browsers effectively become cutting edge.

Comment

---

Blowin' in the wind

-- Fletcher Moore | Filed under: code, IE

56 days ago

HTML 5 is coming, and we’re all going to have to wrap our heads around it, so here are a couple nice resources to help you along:

Introduction to HTML 5

Dive into HTML 5

And for those that are slavering over Canvas, here’s a little appetizer. An enterprising fellow by the name of Paul Brunt wrote a little side scroller called Bert’s Breakdown. It’s not exactly a good game, per se, but it’s a credible technology demonstration and a harbinger of things to come.

Finally, on a pair of tangents related to Friday’s Chrome Frame posts, I discovered that the plugin was developed by none other than Alex Russell, the genius behind the first major Javascript library, Dojo. Well played, Alex. Then there’s this: Google responded to Microsoft’s criticisms, saying that Chrome Frame makes IE more secure, not less.

Microsoft, your serve.

Comment

---

Salvation, addendum

-- Fletcher Moore | Filed under: IE

59 days ago

Apropos of my previous post on Chrome Frame, it’s worth noting that Microsoft would be fools to fight this. They keep their UI, all their meta functionality, and the big blue logo. And they outsource their rendering engine development to another company — a competitor — for free. It’s four aces for Redmond.

But then, this is the company run by Steve Ballmer.

Comment

---

Salvation

-- Fletcher Moore | Filed under: IE

59 days ago

If you’re like me, you’ve been wandering around for a week or so with a vague awareness of Chrome Frame floating around in your head like a dust bunny on the kitchen floor. What I first read about it was essentially this:

Chrome Frame is a plugin created by Google which injects Chrome’s renderer into Internet Explorer.

Meh, I thought. No one installs the browser. Why would anyone install the plugin?

I totally missed the point, though, and Farhad Manjoo set me straight in his Thursday Slate column. You should read this in its entirety, but for those of you who would prefer to GOSUB, here’s the key graf:

Why is Google pushing these Chrome injections? For one thing, it will help the company roll out Wave, the much-anticipated collaboration app that it unveiled earlier this year. Because Wave aims to mimic the responsiveness of desktop programs like Outlook inside your browser, it needs a lot more power than old versions of IE can muster. On their blog, the Wave team says that they’ve spent “countless hours solely on improving the experience of running Google Wave in Internet Explorer.” Apparently they’re abandoning all that—when Wave opens its beta program at the end of this month, IE users will be presented with a warning either to install Chrome Frame or to use Safari, Chrome, or Firefox instead.

If you’re not shivering with joy, you’re not paying attention. What Manjoo is saying is that Google is throwing its full weight into a project dear to all our hearts: the vanquishing of Internet Explorer. It’s easy to see a day not so far in the future — particularly if they start doing this with other apps like Gmail and Google Maps — when that 60%-70% of IE installs are IE in name only, wrapped around a truly modern browser — and not just the next iteration of IE with marginally more support for web technologies that were introduced five years ago.

It’s a little hard to see Microsoft being real happy about this, since Google is essentially eating the guts out of their software. But it’s also hard to see what they’re going to do to stop it other than closing down their plugin architecture. I wouldn’t put it past them, but for the moment they’ve simply resorted to FUD, suggesting that the plugin will double the target size for malware. While the security of Chrome Frame is hardly a total non-topic, the notion of Microsoft slamming another company’s security practices is laughable.

So get ready to celebrate.

Comment

---

Everybody makes mistakes

-- Fletcher Moore | Filed under: code, Javascript

66 days ago

The trick is validating them.

Enter Vanadium. Pretty neat software, but frankly, it’s the idea behind it — using classes to specify validation logic — that fascinates me. What a great idea. Why did I never think of this?

Comment

---

Image Captions with jQuery Plugin

-- Bryan Jordin | Filed under: Javascript, tools

95 days ago

Just found this rather cool jQuery plugn called jCaption. It builds captions off of the alt text attribute of an image. All you have to do is call the .jcaption function on your sector.

Comment

---

Thanks Lew!

-- Bryan Jordin | Filed under: community, drupal

222 days ago

“There seems to be a growing number of people on campus who are interested in migrating an existing website to a CMS and are seriously considering Drupal. There are also several existing sites around which are (or will be) partially or fully leveraging Drupal (including www.gatech.edu).

I decided to create a sympa list called drupal@lists.gatech.edu. It is intended to be a discussion list aimed at people who are building, maintaining, or interested in migrating to a Drupal based site at GT. You are encouraged to subscribe and post if you’re interested.

I realize there may be some overlap with the webmasters list and even the CSR list. I am also aware that there are other content management systems in use on campus (e.g. plone) and there may be some overlap of interests there. The drupal mailing list is just a simple starting point to serve as a way for those in this growing micro-community to communicate and share ideas. Share-it and T-square are also possible places for this community to gather online if anyone wants to go that route, too.”

— Lew Lefton

If you are at all interested in Drupal you should join the new list that Lew has established.

Comment [1]

---

CSS3 Multiple Backgrounds in Firefox

-- Fletcher Moore | Filed under: css

238 days ago

This just in: The development version of Firefox (Minefield) has support for CSS3 multiple backgrounds. So says bugzilla. If you’re not on top of this issue, get ready for a direct injection of pure cool. In brief, you can supply multiple background images for an element. This means you can give an element four corners and a fill without having to write any additional markup.

No word as to how many backgrounds. I’d be happy with four, but Safari supports eight. Of course, we all know that IE will support exactly one until we’re all retired or dead, but hey, this is still a good thing.

Comment [1]

---