Critical Section

Re: Software

everything you need to know about COM

Sunday,  04/20/08  08:53 PM

Everything you need to know about COM:

//
// Success codes
//
#define S_OK    ((HRESULT)0x00000000L)
#define S_FALSE ((HRESULT)0x00000001L)

For more than everything you need to know, please click here...

the lost art of desk checking

Tuesday,  04/01/08  11:08 PM

Okay, I’m going to date myself here.  I’m 49 years old, and I started programming in Junior High, when I was 13, so my story begins 36 years ago.  The dawn of time, metaphorically speaking.

Please join me for a gentle rant about the lost art of desk checking...

Oleosaurus: the dispose pattern

Tuesday,  03/11/08  10:03 PM

You all know how much I love .NET.  And you all pretty much figure I’m a hopeless dinosaur, and I just don’t get it.  And you’re all pretty tired of hearing me rant about it.  So, sorry…  but yes, here’s another one.  You may click "back" and get on with your life as appropriate.

In which we investigate that wonder of .NET programming, the dispose pattern...

managed memory leaks

Monday,  03/10/08  08:39 PM

This is another in my series of foaming rants whereby you the reader become convinced of my status as a coding dinosaur. So be it.

Today's subject is memory management, the old "bad" way, and the new "good" way using garbage collection in managed code.  Please click to read more...

pissed off in Peoria

Sunday,  03/09/08  09:39 AM

You all know I can't stand .NET’s virtual machine architecture, and you probably think I’m a hopeless dinosaur who just doesn’t get it.  Everyone knows Microsoft is great, everyone knows .NET and Java are the future, etc.  Someday Ole will retire from railing at progress.  (And everyone will be spared Sunday morning rants :)

Let me give you a clean example of what I can't stand about .NET’s CLR: Visual Studio 2005.

Please click here to read more...

as the memory turns

Wednesday,  01/16/08  06:21 PM

You all know my status as a dinosaur; I can remember when all we had were zeros, and how great it was when we first got ones.  (There are 10 kinds of people in the world, those who understand binary, and those who don’t.)

Anyway here's a rant about virtual memory vs physical memory as the constraint du jour...

the metric magic

Tuesday,  01/08/08  09:00 PM

I've been spending a few days worrying about measuring stuff.  Like productivity and predictabilty.

Way back in late December, 2006, I worried about this, too, and wrote a long rambly email to my team about it.  I just reread it, and thought it might be worth sharing.  So here it is.

dynamic page sizing

Tuesday,  05/15/07  09:29 PM

This is a nerdy exposition, for those of you creating web apps and for me to be able to find it later :)

The subject is dynamically sizing web page elements based on the size of the browser window.  Please click to read more...

almost famous design and stochastic debugging

Wednesday,  05/09/07  10:19 PM

In which I screw up a programming change, devise an almost famous design, and engage in stochastic debugging, and philosophize...

file permissions

Friday,  02/03/06  07:01 PM

I have a question.  Have you ever used OS file permissions?

I have not.  Ever.

Please click to continue reading...

On the Persistence of Bad Design...

Wednesday,  02/01/06  09:36 PM

As a programmer you are constantly making design decisions.  Some are small, some are big.  Some have little effect, some have larger effect.  And every once in a while you make some decisions which seem small, but have a huge effect.  If these decisions are made badly, then it affects many other people for years to come.

Please click to read more...

Web 2.0, "Live" and other meaningless jargon

Saturday,  11/26/05  12:42 PM

Do you hate business jargon as much as I do?  Blech.

A classic example of meaningless jargon is "Web 2.0".  Nobody knows what it means, it doesn't mean anything.

And for an unbelievable example of jargon run amuck, consider Microsoft's recent "Live" announcement.  Talk about meaningless blather.

Please click to read more...

wrapping up Apple on Intel

Wednesday,  06/08/05  10:21 PM

Okay, I was wrong.  Completely.  So be it.

The "good call" award goes to Gary Lang, who emailed on Sunday:

BTW Apple's move is not about video or a WMC combatant, it’s about notebooks.  Most PCs sold, including Macs, are notebooks.  IBM has not made a competitive fast chip for notebooks.  It’s as simple as that.

Apple - still juicy after IntelNo doubt it isn't quite as simple as that, but Gary nailed it.  You can watch the Stevenote here, or view Engadget's liveblogging here.  Not Mr. Jobs best performance, IMHO, but he did a good job with a tough message.  Left unsaid (but certainly not unanalyzed) is the extent to which Apple will be "Osborned" by this.  The Economist published a good analysis (including the stock price graph at right, entitled "still juicy"), and you may enjoy this Slashdot thread.  Scott Loftesness thinks new laptops will be out soon (this year?), and John Gruber tries to cover up his bad guesses :)  Tom's Hardware drinks in the irony of an Apple - Intel alliance.

[ Later: my favorite take so far comes from Robert X. Cringley: Going for Broke, in which he suggests Apple and Intel are taking on Microsoft.  Hmmm.... ]

Now, as someone working on porting Windows software to the Mac, I wonder, what does this mean?  In the short term, not much.  In the slightly longer term, use Xcode instead of CodeWarrior.  And in the longer term, who knows?  Stay tuned :)

even more Apple on Intel

Sunday,  06/05/05  10:39 PM

I know you're probably sick of the Apple on Intel speculation and you don't care anymore or maybe you never did.  Please skip the remainder of this post.  Thank you.

Here's the bottom line: I have to believe the next big play at Apple is online video.

Click here to continue reading...

more apple on intel

Sunday,  06/05/05  09:27 AM

I have nothing brilliant to add to my musings yesterday about Apple on Intel.  I still feel the key reason must have something to do with binary compatibility with Windows applications.  All the other things Apple gets from this transition - efficiency, cost savings, branding - just don't see worth the trouble.  Especially in games, Apple trails Windows dramatically in the availability of software titles; this factor is holding back the Mac platform more than any other.

Click here to continue reading...

apple on intel

Saturday,  06/04/05  12:18 PM

Earlier today I posted about the rumors that Apple is planning to support Intel CPUs.  I'd wrote "probably 'support' not 'switch to' but after one bike ride's worth of cogitation I think this is exactly wrong...

Maybe it will be possible to run Windows programs "as is" without any changes on top of some kind of runtime emulation inside OS X?  Now that would be a reason to do this!

Please click to continue reading...

Shorthorn

Saturday,  05/28/05  11:10 AM

This is going to be a long post.  I can tell.  I have all these thoughts, jumbled together, and it is going to take a lot of words to get it all out.  Sorry.

The subject is Windows...  Microsoft has now spent four years building Longhorn, the "next" version of Windows, and it looks to be spending two more years at least.  When Longhorn is released, it will have been at least six years since XP came out.  That is a long time in computer years.  What will we get?  If it were up to me, Microsoft would stick to its knitting, and instead of trying for more and more functionality - which is properly the province of application software anyway - it would fix paging and fix networking.  Do the things Windows should do well.  I won't get my wish, but that's what I want.

Click here to continue reading...

solving bongard problems

Monday,  11/22/04  11:52 PM

I found a great site from Harry Foundalis about his Research on the Bongard problems.  What's a Bongard problem?  Well, here's one:

Bongard problem #6

Read on for more...

C++ method pointers

Thursday,  06/17/04  08:57 AM

Have you ever wanted to use a pointer to a class method?  This might be basic C++ but I couldn’t remember how to do it, and spent some time Googling and messing around to figure it out.  So here’s the way...

RSS cookbook

Saturday,  05/15/04  09:38 AM

Okay, today we are going to get YOU to use RSS.  Follow the simple steps, and you'll be using RSS, and loving it.  I promise this is worth it.  You will thank me.  More...

nph and mod_gzip

Saturday,  05/01/04  08:14 PM

If you write nph CGIs, be sure to exclude them from mod_gzip.  That's the message of this post; feel free to skip the rest if this is geek to you.

Simple is Good

Saturday,  12/27/03  03:22 PM

I always have so much to do in December, don't you?  So many social events, Christmas shopping, year-end deadlines.  But somehow I love it.  The cold crisp air, lights everywhere, a sense of excitement, music...

And since I have so much to do, naturally I'm procrastinating by working on something I don't have to do at all.  Yep, I redesigned my blog.  And you probably can't even tell!

I Switched! [temporarily]

Sunday,  12/07/03  11:00 PM

So, for the past four days my [Windows] laptop was down, and I switched to using my iMac as my "main" computer for a few days.  Overall the experience was pretty good.  I thought you might find a brief review interesting.  continue reading...

The Little Boy Explains

Wednesday,  11/12/03  05:18 PM

The other day I posted The Emperor's New Code, a heretical critique of "Longhorn" Microsoft's upcoming version of Windows.  I expected to get a lot of links, and I did - thanks Dave, Tim, and Robert! - and I expected to get a lot of criticism, and I did.  I am like the little boy who cried "the emperor's not wearing any clothes", and of course some noblemen cannot admit this; it would be too embarrassing.  Or maybe the little boy just can't see the clothes :)  So.  Dialog is always healthy, right!

I'd like to take a moment to discuss the most prevalent reactions...

The Emperor's New Code

Sunday,  11/02/03  10:25 AM

... In which the author proves himself a hopeless heretic by disparaging Longhorn ...

I attended the Microsoft Professional Developer's Conference in Los Angeles last week.  Microsoft formally unveiled "Longhorn", the next version of Windows, along with a bunch of new underlying technology.  My first day's reaction was PDC = Moo!; a positive impression of a lot of cool new stuff.  But my takeaway is...  there's a lot less here than it would at first appear...

PDC = Moo!

Tuesday,  10/28/03  01:26 AM

I'm at the Microsoft Professional Developer's Conference (PDC) in Los Angeles.  Today Microsoft formally unveiled "Longhorn", the next version of Windows.

I left for the PDC at 5AM, and got home at midnight.  Cool.

Continue reading ...

Really Moving Mount Fuj

Wednesday,  09/17/03  11:27 PM

Everyone wants to know "How would you move Mount Fuji"? 

Here's how I would do it...

Third-Party C++ Children

Sunday,  07/27/03  06:09 PM

Suppose you have an application which provides a "core" for other developers.  Suppose you wan to provide functionality as classes, rather than APIs, but enable extension.  Supporting third-party children is not easy...

The Lead Bullet - Writing Specs

Thursday,  07/24/03  01:28 AM

In which we talk about writing specs, the subject near and dear to every programmer's heart...

Even More Bridgework

Thursday,  07/17/03  11:45 PM

Okay, here it is, the optimal solution for 25% flashlight carry...

More Bridgework

Wednesday,  07/16/03  09:28 AM

We're back at the bridge of the four programmers, as we consider variations in flashlight "carry".  There is more complexity in this problem than you thought.  Yay!

Revisiting the Bridge of the Programmers

Friday,  07/11/03  09:11 AM

Remember the bridge of the four programmers?  An interesting technical interview problem, with an unexpected answer.  It turns out there is more complexity in this problem than I had thought.  Yay!

The Two Switches

Friday,  05/30/03  07:17 AM

I solved it!  And it is great!!  The infamous "two switches" puzzle does have a solution, and it isn't a trick; it is a pure logic puzzle.  Read on for more...

The $21 Question

Thursday,  05/29/03  11:34 AM

A few days ago I reviewed How Would You Move Mount Fuji, a great new book about the logic puzzles often used in technical interviews.  I received a lot of feedback - thanks! - and herein consider Chris Lightfoot's different and better answer to the $21 question...

Moving Mount Fuji

Saturday,  05/24/03  01:22 PM

I just read "How Would You Move Mount Fuji", a great new book about puzzles as technical interview questions.  I enjoyed it a lot - it is an easy read, and kind of "fluffy"; I blew through it in two days.  I'm often in the position of asking these questions, and I found it terrifically helpful.  Here are my thoughts about the book, and also some examples taken from it...

Emergent Properties

Tuesday,  05/13/03  12:56 PM

In which we discuss emergent properties vs. explicit properties, take Marvin Minsky to task about artificial intelligence, diss RDF and the semantic web, and relate image processing to water.  Read more...

Google and Blogs

Sunday,  05/11/03  11:26 AM

There's been considerable discussion in the blogosphere about Google "dropping blogs" from search results.  What's the truth?  Here's some educated guesswork...

Outbound Trackbacks

Friday,  05/02/03  02:44 PM

I implemented "outbound trackbacks" today.  Essentially a trackback is a way to tell someone: "hey, I linked to your site".

Site Optimization

Sunday,  04/13/03  05:29 PM

If you're a web nerd like me, you might be interested in Site Optimization...

Starting to Get .NET

Thursday,  03/20/03  08:42 PM

Everyone agrees that .NET is at least two things: a development environment and a marketing concept.  The net net: .NET is a development environment positioned as a follow on platform to Windows...

I Don't Get .Net

Wednesday,  03/19/03  02:27 PM

Hello, my name is Ole, and I don't get .Net...

"Tyranny" Revisited

Sunday,  03/16/03  02:29 PM

A week ago I posted a little article called The Tyranny of Email, giving some tips for improving personal productivity.  It generated a terrific response, and I herewith post the most interesting observations and comments...

How to Write C++ Classes II

Thursday,  03/13/03  11:48 AM

A little while back I posted How to Write C++ Classes.  There was more which could be said, and so I did; here's How to Write C++ Classes II...

The Tyranny of Email

Saturday,  03/08/03  11:41 AM

If you're reading this, you're online, which means you may be a victim of the tyranny of email...

Frames, Too

Thursday,  03/06/03  11:16 PM

Today I made a couple of slight enhancements to the way this site uses frames, please click here if you're interested...

Weighting Links

Sunday,  02/16/03  09:21 AM

Wow, so Google has bought Pyra, the company behind Blogger.  This really puts 'blogging on the map.  It also creates some potentially interesting conflicts of interest (will Google searches preferentially find Blogger 'blogs?).  At first glance, actually, it doesn't seem a great fit.  Google did buy Deja News about a year ago, but that made more sense; Deja archived all the Usenet groups, wereas Blogger only has about ¼ of the blogosphere...  Perhaps the synergy is at the link level.  Google indexes links, Blogger makes links. 

I've asked them if they'll support <A HREF= WEIGHT=>...

Simple Search

Saturday,  02/08/03  08:12 PM

Every website needs a simple search facility, including this one...

How to Write C++ Classes

Sunday,  01/26/03  10:14 AM

If you're a programmer today, most likely you are writing in Java or C++.  In which case you may be interested in How to Write C++ Classes...

Tracking Visitors

Sunday,  01/05/03  03:56 PM

You are being watched...

Turning Over Software

Thursday,  01/02/03  11:26 PM

The programmer's dilemma, turning over software...

Frames

Wednesday,  01/01/03  01:56 AM

Yeah, this site uses frames.  I explain why - and how...

Home
Archive
One Year Ago
Two Years Ago
Three Years Ago
Four Years Ago
Five Years Ago
All Articles
Re:Cycling
Re:The Book
Re:Software
Re:Philosophy
About Me
W=UH
Email
Search

RSS   OPML

Greatest Hits
Correlation vs. Causality
The Tyranny of Email
Unnatural Selection
Lying
Aperio's Mission = Automating Pathology
On Blame
Try, or Try Not
Books and Wine
Google and Blogs
Emergent Properties
God and Beauty
Moving Mount Fuji Ceci n'est pas Mimi
The Nest Rock 'n Roll
IQ and Populations
Are You a Bright?
Adding Value
Confidence
The Joy of Craftsmanship
The Emperor's New Code
Toy Story
The Return of the King
Religion vs IQ
Most Spectacular Photos of 2003
In the Wet
the big day
visiting Titan
unintelligent design
Shorthorn
the nuclear option