Updated: 24/07/2003; 1:01:26 AM.
stevex's stuff
Some code, some writing about code. Some writing not about code.
        

April 11, 2002

Got some work done on my bathroom and now the tub takes 3x as long to fill.  Hmm.  Guess I'll give the contractor that did the work a call tomorrow.
8:19:03 PM    comment []

I'm reading the book "C++ Performance and Optimization" on Safari and it's a pretty good book, talking about how to make code smaller and faster.  These two things have always been important to me.

These days, however, nobody cares if your code is small.  Downloads are fast enough that it doesn't matter, and nobody distributes software on floppies anymore.  Hard disks are big, and stuff that ships with your application (help files, data files, etc) is usually larger than the size of the code anyway.

The reason software keeps growing in size isn't because programmers aren't writing good code.  If I write an algorithm with an eye to code size, I might be able to get it to be half the size of the same algorithm written by someone who just isn't paying attention. 

What really bloats an app is reusing code. 

With shared libraries that's not really how it's supposed to work, but I think a lot of programmers don't trust shared libraries, because of the versioning issues involved.  I read somewhere recently that there were 26 different shipping, production versions of the Common Controls DLL that's part of Windows.  Yikes.

So when it comes time to distribute my app, if I had to choose between putting SomeFeature.DLL in a shared directory or statically linking with it, well, I'd statically link with it.  My app's less likely to be broken by some other app installing an older or incompatible version - but by statically linking with it, my app's gotten bigger.

If I'm a 100k program, and I decide that I want to let the user, say, rotate an image, then I could write some code to rotate a bitmap.  That might be 20k, and my app's now 120k. 

Or, I might find (or buy) a bitmap utilities library that supports image rotation, and link it in - which could easily drag in hundreds of kilobytes of code.  At least if I statically link with it the linker will try to throw away code that doesn't get called; if I ship it as a DLL then I'm shipping all the functionality of the library I've decided to use, which could be megabytes.

So through a bad choice of what components to link with (or perhaps when to use an external library vs when to roll your own feature) I've made my app many times the size it was previously.  An extreme example but you get the picture.

I think a solution to this would be to use DLLs, but to use many smaller DLLs instead of fewer large DLLs - and to use DLL names that are unique, similar to what .NET does, to ensure that updates to the DLL don't break anything.

 


4:53:38 PM    comment []

It's hot in my office.

Isn't this the kind of stuff I'm supposed to write on my weblog?

Nevertheless, it's hot in my office.


4:36:40 PM    comment []

I also hate getting stuck between two software companies, each claiming the other is responsible for the problem I'm having (and both charging for support).  I didn't think this sort of thing actually happened in real life..
4:06:45 PM    comment []

I hate having to pay for an upgrade when I only need it to get bug fixes.
12:06:01 PM    comment []

Strange as this may sound, I actually prefer a web where content isn't free.

I'm going to subscribe to Radio in a few days (before my free month runs out, anyway), and I know that in exchange for some dollars from me, I'll get free hosting for a year of up to a fixed limit... And I have a warm fuzzy feeling that they'll still be around in a year because I actually paid them for the service I'm getting.   No banner ads, no threats if I don't pay extra to "upgrade" to "premium" service, no surprises.

Other sites I've been to lately, like The Sims Resource or Salon or even CNN tell me up front that if I want their content, I have to pay for it.

The more up front a site is about it's policies, and how it makes money, the more comfortable I am with it - I don't have to constantly be on the lookout for the trick they're using to make money off me. 

Instead of a privacy policy (which is generally meaningless these days), I'd like a site to have a business policy posted, that tells me what their standards are for selling advertising, for raising money, for protecting the information I post, and so on.  If a site's model is "make money by selling advertising" then that's okay.. but if it's "make money by building a big customer list and then sell our services sending them spam", well, no thanks.


11:36:24 AM    comment []

This is a sneaky way to get evil apps installed on your computer... Going on the fact that people tend to click "Yes" if they're not sure which option to choose, and also the fact that who knows how many people will just accidentally click on the button (hey if you throw up the download request on a million machines, it's going to happen).

Web advertising is so sleazy, for the most part.. But it makes you wonder how many people there are out there that actually DO arrange their business's credit card processing with the nearly-anonymous person that sent them spam..


11:22:24 AM    comment []

© Copyright 2003 Steve Tibbett.
 

April 2002
Sun Mon Tue Wed Thu Fri Sat
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        
Mar   May


Other sites by me:
Linky
The Restaurant Thing
Syndicache
MapX
Misc Writings


Powered by Radio
Click to see the XML version of this web page.