2010.08.27

Moscow company features flat maintenance services, flooring  -  @ 449 (05:08:33 EDT)
Moscow repairs company features big diversty of flat major repair services, dalle laying, plasterwork - quality guaranteed. We provide construction hardware of European quality. High quality is our main criteria when performing design and repair works.

2010.05.14

cheap viagra pill  -  @ 519 (07:05:39 EDT)
buy online prescription viagra without

http://xmages.net/upload/c1f724de.jpg

http://iwebadv.com/ifeed/img/715/forpost/viagra/1/ocean
http://iwebadv.com/ifeed/img/715/forpost/viagra/2/ocean
http://iwebadv.com/ifeed/img/715/forpost/viagra/3/ocean
http://iwebadv.com/ifeed/img/715/forpost/viagra/4/ocean
http://iwebadv.com/ifeed/img/715/forpost/viagra/5/ocean










can i buy viagra online
buy online viagra where
picture viagra pill
alternative buy lavitra levitra viagra
online pharmacy prescription viagra
buy com online prescription vaniqa viagra
nlinea prescription viagra
buy viagra online in Ireland
viagra prescription viagra online
best viagra alternative
buy viagra online in Germany
get low price viagra on line
buy viagra online in Czech Republic
buy low price viagra
alternative to viagra drug
buy online pill viagra
low price to viagra
low priced purchase viagra
cheap herbal viagra pill in uk
buy viagra cheap generic
buy viagra per pill
buy generic viagra cheap
buy viagra online in Norway
buy viagra online in Egypt
levitra buy levitra online viagra
get viagra prescription
viagra herbal alternative
buy generic online viagra
generic viagra buy cheap generic viagra
buy viagra online in UAE

buy online order viagra
buy prescription viagra without
viagra prescription
buy viagra alternat
buy viagra cheap in uk london 1.21 pill
phentermine prescription no consultation herbal  -  @ 368 (03:05:31 EDT)
six co uk buy prescription propecia discount finasteride propecia cialis propecia viagra, celexa hot flashes changing from lexapro to celexa which is better celexa or lexapro, cialis levitra pharmacy viagra levitra levitra dangers flomax vs levitra, prozac or fluoxetine pharmacy prozac tshirt prozac lsd cocaine, prozac and phentermine medicare supplement phentermine diet pill phentermine drug class

2009.08.03

Thanks  -  @ 194 (23:08:08 EDT)
Thanks for giving good information.pass4sure

2006.08.03

Last Blog Entry -- Moving to Live.com  -  @ 905 (16:08:20 EDT)
The b2 PHP scripting package that I've used to run this blog for the past several years is hopelessly out-of-date. Basically the only way I've been able to keep it up online and keep it secure from hackers is to systematically disable features (I could fix it but I haven't got the time or motivation honestly).

With the recent launch of Microsoft's Windows Live Spaces, I've decided to abandon this blog in favor of a new Live Spaces-hosted blog. I plan to leave this blog in place until I have time to figure out how to extract the content from MySQL and take the PHP scripts offline for good.

You'll now find me at:

Chris Russell's Space v2

Over and out.

2006.07.30

OEM Radio  -  @ 179 (23:07:54 EDT)


Original Electronic Music (oem) Radio is a SHOUTcast stream that showcases experimental music contributed by electronic musicians.

>> visit the oem radio homepage and check it out.

2006.07.19

Microsoft Acquires SysInternals  -  @ 288 (01:07:51 EDT)
Some interesting comments posted by PC World staff blogger Edward Albro about Microsoft's acquisition of Sysinternals.

> Microsoft Sucks Up Sysinternals (PCWorld.com)

It's too bad that Albro decided to lead with such an incindiary headline. Otherwise, it's a well-written and thought provoking editorial.

2006.07.06

Stihl Cutting Trees  -  @ 903 (16:07:20 EDT)
I've heard it said "never trust a software engineer with a soldering iron."

... Hell - forget the soldering iron. I got myself a new Stihl MS390 gas axe (that's a chainsaw in case you don't hang out at Gritty's in Freeport, Maine).



Welcome to the Pacific Northwest. Time to do a little yard work.

2006.07.05

Common Errors in English  -  @ 792 (14:07:11 EDT)
The other day at work I made the mistake of using the phrase "begs the question" incorrectly. I was prompty corrected by a co-worker. To help me avoid such embarrassment in the future, I went looking for an explanation of "begging the question" and came across this great website:

> Common Errors in English

2006.06.27

Humor: G4TV Star Trek Shorts  -  @ 027 (19:06:48 EDT)


G4TV has posted the animated Star Trek doll shorts from their Star Trek 2.0 show on YouTube.com. These are hilarious:

Flash Videos:
... Tune in and prosper!

2006.06.20

18 Years in Software Tools, an Insider's View  -  @ 912 (16:06:51 EDT)
Picked up this slashdot.org story while eating a salad at my desk earlier today:

Rico Mariani, an eighteen-year Microsoft veteran, speaks at the University of Waterloo Computer Science Club about his experiences at Microsoft, industry trends, etc.

It's an amusing and interesting talk. Download the video from the U Waterloo Computer Science Club's media server.

> NewsForge article: 18 Years of Software Tools: An Insider's View

> Download the video (Windows Media format)

2006.06.18

Coffee @ the P & G Speakeasy  -  @ 778 (13:06:45 EDT)
I got back into Seattle late last night after spending a week back in Maine visiting with Vicki and the dogs, trying to get a few repair items completed, and generally trying to figure out what the hell-all-else needs to get done in order to get them out here in Washington with me. I wasn't nearly as productive last week as I had hoped I would be. I did manage to get up on the main roof, get strapped off to the chimney, and fix several cracks in the mortar that was leaking in the recent heavy rains. Also, did a quick run down to Massachusetts and delivered several 21" monitors and some workstations to my Dad who will put them to good use.

So it's Sunday morning and I'm sitting in the P & G Speakeasy Cafe in Duvall drinking a quad-shot mocha and taking advantage of the free wireless and mellow B.B. King pumping out from behind the counter. This is a chilled little cafe and I think I'll be hanging out here a lot if for no other reason than they have broadband and I still need to drop some more trees before getting a satelite signal out at the house.

2006.06.15

PEPM'07  -  @ 685 (11:06:01 EDT)
An interesting conference early next year will be the ACM SIGPLAN 2007 Workshop on Partial Evaluation and Program Manipulation (PEPM'07). http://www.program-transformation.org/PEPM07

2006.05.07

Now in Washington State  -  @ 732 (12:05:48 EDT)
I last posted from a dinner in Bozeman, Montana where dad and I were eating breakfast, gassing up the Mazda 6 wagon, scraping the bugs off the windshield, and considering how much more to drive. Well, we kept going... Finally made it into Spokane, WA in the middle of the afternoon on Wednesday but decided to keep going... Eventually we checked into a hotel in Wenatchee, WA Thursday night after driving through some really beautiful country East of the Cascades along the Columbia River valley.

Thursday morning, I got up early took the car out for gas, a run through the car wash (which got some of the bugs off the car), hit the drive-through expresso bar and then blasted out on Route 90 West through North Bend, Snoqualmie, and then on to Issaquah where MS has provided me with short-term living accomodations (furnished apartment unit - one of seemingly endless units clustered on the hills of Issaquah).

Dropped dad at SEATAC Saturday morning @ 5:00 AM PDT for his flight back to Boston, went grocery shopping, and then slept all day Saturday until about 8:00 this morning. Today, paperwork: expense reports, mortgage papers, etc. All the stuff that makes life worth living : ) 

I miss you guys!

2006.05.03

Breakfast in Bozeman, MT  -  @ 696 (11:05:20 EDT)
Dad and I made good time and covered some ground last night. Overnight we drove from St. Paul, MN and am now sitting having breakfast in Bozeman, MT. It's been a good drive. Planning to make it to Spokane today and then check into a hotel and crash. This leaves Thursday and Friday in Washington for kicking around. If the weather is good, we plan to take Route 2 through the Cascades out to Monroe and down through Duvall. Dad's turn to drive. I'm tired : ) 

2006.04.24

Komoku Rootkit Detection  -  @ 784 (13:04:17 EDT)
eWeek posted an interesting story on Komoku, a startup with a PCI bus card and corollary host software that ferrets kernel-mode rootkits. This seems like a sensible approach. I imagine that it will become a standard feature of high-end MB designs to have some sort of dedicated SPU over the next several years that's supported directly in the OS kernel. In the meanwhile, solutions like that proposed by Komoku look intesting.

>> Government-Funded Startup Blasts Rootkits

2006.04.20

Driving Around in Washington  -  @ 983 (18:04:37 EDT)
Vicki and I are in Washingon this week searching for a new home. After a lot of driving around, and a lot of dissapointing trips to see houses packed one-atop-another on hillsides, I think we've found where we want to be in Duvall where we made an offer on a house this morning. It's not a done deal yet. We're holding our breath. This place is great and if I thought I had access to a lot of woods in Maine... Man is it nice out here and not too far from Redmond.

2006.04.07

Goggle Challenge  -  @ 681 (11:04:39 EDT)
... extracted from a posting I made earlier this morning on the Code Generator Network discussion list:

Goggle Challenge:

Put on your amber abstraction goggles and focus of applying generic programming techniques to codifying the infrastructure required to meaningfully express, synthesize, and execute hierarchically-specified systems regardless of their semantics. In other words, build a generic component factory, and generic glue to assemble, audit, and actuate graphs of manufactured components that conform to an abstract design specification (encoded in a language of your design).

For the challenge, you're allowed zero coupling between your factory and glue infrastructure code and the semantics of any problem domain. Additionally, you're allowed zero coupling between problem domain semantics and the syntax of your design specification language (i.e. it needs to be self-describing). Note: you ARE allowed to couple your glue infrastructure with the syntax/semantics of the design specification language (ultimately, something has to be nailed down).

Extra credit: Provide an API that lends itself equally well to both human and programmatic exploitation.

2006.04.06

Walking On The Beach  -  @ 519 (07:04:07 EDT)


Vicki and I walking the Huskies on Popham Beach, Phippsburg Maine.

2006.04.05

Too Many Files For Explorer  -  @ 552 (08:04:08 EDT)
Q: What happens if you point Windows Explorere at a network directory containing 5K files?

A: Nothing. At least not for about a week.

2006.04.03

Joining Microsoft  -  @ 260 (01:04:54 EDT)
It's official: I'm joining Microsoft to work on tools and technologies related to the Windows kernel in mid-May.

>> Microsoft Redmond campus building #40 Aerial View

2006.03.28

Innovation through Intrapreneuring  -  @ 334 (02:03:47 EST)
Just doing a little late night reading on intrapreneurship and came across the 1987 Gifford Pinchot essay "Innovation through Intrapreneuring." This reads as fresh today as I'm sure it did in 1987. A great read.

>> Innovation Through Intrapreneuring - Gifford Pinchot

2006.03.23

Windows "Vienna"  -  @ 868 (14:03:33 EST)


>> Microsoft "Vienna" Project on Wikipedia

2006.03.21

On Intelligence  -  @ 193 (22:03:30 EST)
Walking the dogs earlier this evening I listened to a fascinating Podcast of Jeff Hawkins speaking last fall at the Stanford Entrepreneurial Thought Leaders Program.

>> Hawkins' Stanford ETL Program Presentation (MP3)

Overheard during the Q&A @ the end of Hawkin's ETL talk at Stanford:

Q: Do you think it's ethical to build intelligent machines?

A: We're implementing an algorithm in Silicon. It's not like we're building something that's going to feel bad about being mounted in a box and stuffed on a rack somewhere!

Q: Are you sure? (nervous laughter from the audience)

Numenta

Numenta is building a new type of memory system, called Hierarchical Temporal Memory (HTM), modeled on Jeff Hawkins' theory of how the human neocortex works.

>> Numenta, Inc.
>> Hierarchical Temporal Memory (HTM)
>> On Intelligence Book Homepage

Postscript: Man - there just aren't enough hours in the day.

>> Multivalued Logic NNs

Blackcomb Becomes Vienna  -  @ 656 (09:03:13 EST)
An interesting eWeek interview with Microsoft Platform Products & Services Division co-president Jim Allchin:

>> Allchin Looks Forward to Next Vista CTP and Beyond

2006.03.18

AMAST - Algebraic Methodology and Software Technology  -  @ 632 (09:03:48 EST)
I came across the Algebraic Methodology and Software Technology (AMAST) website several years ago while doing research related to Hyperworx. At the time, I took their "Manifesto" as evidence that I was moving in the right direction conceptually with SCDL. As I've been thinking about these topics again recently, I thought it time to track down the AMAST Manifesto and read it again.

AMAST.org Website - this effort seems to be abandoned.

AMAST Manifesto (PDF) - I've converted the raw postscript manifesto from AMAST.org to PDF and mirrored it here so that more people will read it. I think it's really quite profound actually...

From the AMAST Manifesto:

"Computer science continues to be fragmented by multiple dichotomies: it is abstract in nature but handles concrete, tangle things; it has its own general character but manages particularities of other sciences and technologies; its intellectual substance concerns deep gnostical questions but has many pragmatical applications; its understanding requires a high-level education but it is extensively used without any special preparation, etc. These dichotomies raise serious problems regarding the development directions of computer science as an investigation discipline and of its artifacts as problem solving tools. The goal of this manifesto is to initiate a discussion on the development of computer science as a cohesive discipline whose object of investigation is problem solving machinery and consequently whose methodology should be based on the commonality of the methodologies characterizing problem solving in various human fields of endeavor, namely, the using of abstractions to model real-life problems."

2006.03.13

Chicken  -  @ 832 (13:03:35 EST)
A great research paper on chicken: http://isotropic.org/uw/papers/chicken.pdf

2006.03.10

Lightning  -  @ 325 (01:03:48 EST)
Lightning strike!

2006.03.04

Linux MP3-HOWTO  -  @ 680 (10:03:01 EST)
Phil Kerr's Linux MP3-HOWTO

^- A great overview of MP3 file utilities for Linux that I found looking for a command-line ID3 tag writer that I could call from a script. There are all kinds of fun toys to experiment with cited in this FAQ.

2006.02.28

TDML  -  @ 842 (14:02:34 EST)
Timing Diagram Markup Language (TDLM) - an XML variant for expressing timing diagrams. Neat.

2006.02.26

Keeping Your Head About C++ Headers  -  @ 501 (06:02:51 EST)
I was explaining some general rules for authoring C++ header files to a friend recently. Here's a copy of the note I sent him:

// ************************************************************************
// ************************************************************************
// ************************************************************************
/*

any.hpp

C++ header file template

************************************************************************

This header includes other headers which include other headers... A directed graph whose vertices
represent header files and whose edges represent the dependencies between header files will typically
contain cycles. To break these cycles, include this header only once per translation unit.

************************************************************************ */

#pragma once

/* ************************************************************************

Assume that this header file is a member of a set of header files that collectively declare a set
of logically-related C++ identifiers (e.g. a C++ template library). Generally, all headers in this set
will have common dependencies on C++ identifiers declared in other header files. It's useful to
designate a "common" header for our library (based on this template) and use it to record the
list of header dependencies common to all headers in our library.

************************************************************************ */

#include "my_library_common_headers.hpp"

/* ************************************************************************

The set of C++ identifiers that we're going to declare in this header likely have some additional dependencies
that we need to bring into scope.

CONVENTION: Only include header files that are required to DECLARE your C++ identifiers. (The spirit of this
convention holds for template authors as well). Think of this header from the perspective of someone who is going
to use your library: if they include your header, what C++ identifiers are you exposing to them? Expose only what's
required to DECLARE your C++ identifiers. The set of C++ identifiers required to DEFINE your C++ identifiers is
typically not the same as that required to DECLARE your identifiers and this is not the place for those dependencies.

************************************************************************ */

#include <map>
#include <string>

#include "my_library_graph_algorithm_a.hpp"

/* ************************************************************************

Now declare some C++ identifiers...

************************************************************************ */

class UberAlgorithm : public AlgorithmA
{
public: // construction/destruction

Algorithm();

virtual ~Algorithm();

public: // methods

}; // end class declaration UberAlgorithm

// ************************************************************************
// ************************************************************************
// ************************************************************************





// ************************************************************************
// ************************************************************************
// ************************************************************************
/*

any.cpp

C++ translation unit template

************************************************************************

This C++ translation unit DEFINES some C++ identifiers.

First include the set of C++ identifiers required to DECLARE the set of C++ identifiers
that we plan to define.

************************************************************************ */

#include "any.hpp"

/* ************************************************************************

Typically the definition of our C++ identifiers introduces additional dependencies.
Include those dependencies here. Note that these are not exposed to other
software that includes any.hpp.

************************************************************************ */

#include "some_implementation_types.hpp"

/* ************************************************************************

Now DEFINE some C++ identifiers...

************************************************************************ */

UberAlgorithm::UberAlgorithm()
{}

UberAlgorithm::~UberAlgorithm()
{}

// ....

// ************************************************************************
// ************************************************************************
// ************************************************************************



2006.02.19

Odd/Even Side of the Street and Google Maps  -  @ 739 (11:02:23 EST)
Watch the location pin cross the road.

10 Main St., Yarmouth, Maine 04096 USA
11 Main St., Yarmouth, Maine 04096 USA

2006.02.12

Snow and Fast Cable Modems  -  @ 566 (07:02:48 EST)
I pulled the cars into the barn last evening in anticipation of snow overnight. No snow yet but you can smell it coming. I'm looking forward to taking the huskies snowshoeing in the woods tonight with my headlamp.

On a completely unrelated note: doing a little research on some trace routes I performed from my workstation, I found it interesting to learn that I'm a few short hops from the AOL Data Transit Network (ATDN.net). RoadRunner cable here in the Portland-Maine area really quite amazing... Thanks guys!

2006.01.30

 -  @ 503 (06:01:43 EST)


I heard a rumor that San Francisco's Tommy Guerrero has agreed to allow people to tape and distribute his live shows. I really hope this is true - Guerrero's music is great and well worth a listen.

--> Tommy Guerrero's Homepage.

... and here's some additional information on the archive.org website about live shows. But this seems like old news... What no shows? That's a real bumah as we say here in Maine.

2006.01.27

Weathermen Should Not Wear Blue Pants  -  @ 672 (10:01:34 EST)
I was watching the local weather report here in Portland, Maine the other night and found it hillarious that the weatherman was wearing blue pants against the blue screen. Given where we live and our proximity to Massachusetts, the choice of blue pants was particularly poor as the image of Cape Cod appeared to originate in his trousers.

Reasonable People Rule  -  @ 572 (07:01:40 EST)
Wednesday morning in the early AM I logged in and noted that several of the websites that I maintain were offline - appearantly locked by my hosting provider Pair Networks. I've been a Pair customer for six or seven years now and have been very pleased with their service. So I didn't think a lot about it attributing the account lock to a failed auto-debit of my credit card (which I recently canceled). So, after many months of simply ignoring my e-mail I sorted through the 10K or so messages that had accumulated over the fall to sort out the notices from Pair and figure out what the problem was.

I immediately started to get tense because the first notice I opened was an invoice for 500+ GB of bandwidth overage charges in excess of $12,000 US. The second notice appologized for the inaccuracy in the first and revised the figure upwards. Several hours passed before Pair's phone support opened and I sweated it out worrying that some mistake of mine had caused the world to focus on my little 1U BSD box at Pair. YIKES.

Well not to draw the tale out too much, but Pair's support staff was both helpful and professional. Speaking with a fellow named Brian in their billing department, he searched through the files on my account and found the culprit - 1GB worth of adult movies uploaded into a hidden directory on my server. Given the location of the files in the b2 directory structure (b2 is the now dated PHP scripts that run this blog), it seemed a good bet that someone had subverted the b2 scripts to affect the upload. Inspection of the server logs confirmed this to be the case. Based on this information, Pair waived the overage charges and restored my account in full. Reasonable people rule.

Anyone looking for a rock-solid, no bullshit hosting provider run by people who (a) know their networks (b) know how to treat their customers should strongly consider Pair Networks.

Needless to say I've made a few tweaks to b2's installation to make sure this doesn't happen again before I have time to figure out how to get all the data out of b2 and into another, more secure, blogging package.

2006.01.21

Tired of How Unfunny This Country Has Become  -  @ 545 (07:01:58 EST)
Mr. Fish - Harper's Magazine

Mr. Fish is a contributing cartoonist for Harpers.org. He can be reached at applesandcheeses@verizon.net.

Sit Up Straight At Your Keyboard - It's All Going on Your Permanent Record  -  @ 533 (06:01:54 EST)


Last night's All Things Considered on NPR aired a great commentary on cyberspace privacy by Paul Ford - a database programmer for Harpers Magazine.

"Commentator Paul Ford is a computer programmer who has spent a lot of time looking at the ways to keep personal information private on the Internet and in large databases. He says that privacy is technically possible -- but not very likely."

To listen listen to Paul Ford's commentary, click "Listen" on here -> Privacy in Cyberspace: Is It Possible?

2006.01.20

Gore Speech on Unchecked Executive Power  -  @ 781 (12:01:45 EST)


On Monday, January 16, 2006 former Vice President Al Gore delivered a major address on the threat posed by policies of the Bush Administration to the Constitution and the checks and balances it created. The speech will specifically point to domestic wiretapping and torture as examples of the administration’s efforts to extend executive power beyond Congressional direction and judicial review. The speech was cosponsored by the transpartisan Liberty Coalition and the American Constitution Society.

http://www.libertyspeeches.org

I have saved a copy the MP3-encoded audio of Gore's speech on my own local Linux server. If you have problems obtaining the source from the link above you can download the audio here.


2006.01.17

Don't Be Vague or Overblown  -  @ 798 (13:01:35 EST)
Don't be vague or overblown in your promises.

Don't tell prospective clients that you engage in strategic planning or stock analysis.

Be prepared to offer the nine services consultants are traditionally hired for:

Augment the staff.
Provide expertise.
Be objective.
Offer instruction.
Identify problems.
Oversee projects.
Serve as a catalyst.
Act as a hachetman.
Bring influence to bear.

- Dr. Jeffrey Lant

Printable Version

2006.01.16

The Real Jack Bauer  -  @ 717 (11:01:50 EST)


Must read: Listening to WBUR's On Point (NPR Boston), I heard an interesting interview with Gary Bersten, author of the censored book "Jawbreaker, the attack on bin Laden and al Qaeda: a personal account by the CIA's key field commander."

- WBUR's On Point : Hunting Osama
- "Jawbreaker" on Amazon.com

Linux From Scratch  -  @ 311 (01:01:44 EST)
Although I write code for Windows professionally, I'm a Linux enthusiast. Recently I was reading up on some of the recent doings over at the KDE Desktop Project and feeling a really strong urge to blow away Windows XP on this dual Xeon Dell Precission 650 workstation... The Linux From Scratch project looks to be just what I need to get going on this project and create myself a kick-ass desktop environment.



2006.01.03

Stroutrup Previews C++0x  -  @ 591 (08:01:24 EST)
Bjarne Stroustrip

A great article has been posted on Artima in which Bjarne Stroustrup previews the work of the ANSI C++ committee on the C++0x specification. I'm particularly interested in the discussion of thread support in C++.

A Brief Look at C++0x - Bjarne Stroustrup

2005.11.24

Thanksgiving Snow  -  @ 716 (11:11:55 EST)
3" of new snow on the ground this morning at 5:00 AM.

Forcast predicts squalls throughout the day with another inch or two of accumulation in coastal Cumberland County.

I'm going to have to put my boots on before I let the huskies out of the barn. They're going to go nuts when they see the snow!

The turkey is stuffed and ready to go in the oven at 8:30 - 9:00 AM. We're expecting family from Massachusetts, and New Hamsphire for dinner at 2:00 PM. We may have a house full of people overnight if it keeps snowing like this.

2005.11.22

No Place Like Home  -  @ 740 (11:11:38 EST)


2005.11.13

Vote for More Snow  -  @ 691 (10:11:27 EST)



... The huskies' water bowls were frozen solid at 5:30 AM this morning when I went out to the barn to grab some more wood for the stove.

This can only mean that the flakes will soon fly and it will be time to head for the hills.

G E T - P S Y C H E D !

Great American Ski Company: All For One Pass Details



Sunday River Homepage: Sunday River



Sugarloaf USA Homepage: Sugarloaf


2005.11.11

Tin Foil Helmets Lose Lustre  -  @ 608 (08:11:55 EST)

TFH Testing Lab

On the Effectiveness of Aluminium Foil Helmets: An Empirical Study

^- Funny article that made the rounds on slashdot.org recently that presents the results of Tin Foil Helmet (TFH) effectiveness testing.

My young nephews have become especially fond of my tin-foil-covered Stetson. Had I realized the dangers, I would have never allowed them to wear it. Too bad because it's a real fashion statement let me clue you...

2005.10.25

Opera Browser Rocks!  -  @ 197 (23:10:56 EDT)
So far my evaluation of the Opera web browser has been extremely positive. So much so that I'm thinking of ditching Firefox. Nice job Opera! I'm going to pay the $29 fee for a year of support and never call them. (For those unaware, Opera is now free w/peer support, $29/year for live support). All I can say is that if you're still using Internet Explorer, you're missing out big time...

2005.10.24

MS: Buy a New Mouse  -  @ 624 (09:10:33 EDT)
I recently re-installed XP Pro on one of my workstations and went looking for the MS InteliPoint software for my MS IntelliMouse Explorer 3.0A USB. Seems like MS no longer supports the 3.0A IntelliMouse with their latest IntliPoint 5.4 software. Their advice for owners of their previous HW mouse products: buy a new mouse. Hey guys - that's a bunch of bullshit!

Guess I better buy my peripherals from a peripheral vendor in the future as opposed to throwing money at a software company that doesn't support their legacy peripheral products. Anyone remember the Win98-only MS 900 MHz cordless phone that recorded your messages in PCM and forwarded them as attachments to your e-mail address?


2005.09.15

ZoneAlarm 6 Internet Security Suite - Not Ready for Prime Time  -  @ 879 (16:09:29 EDT)
The 15-day demo of ZoneAlarm 6 Internet Security Suite lasted just six hours on my XP Pro SP2 workstation before it became such a nuisance I had to remove it (or at least try).

In my opinion, this product has a long way to go before it's ready for prime time. The interface is not that great - you have to really go poking around to figure out what it thinks it should be doing. The product does purport to do a lot, so organizing the interface isn't simple. But it could be better.

No complains particularly about the speed of scanning or the options for customizing the scan.

The firewall subsystem is confusing, but seems to work okay.

The real-time monitoring system is a real pain however. At one point, ZoneAlarm popped open a security warning dialog from the system tray alerting me to the fact that one of it's constituent components was engaged in suspicious activity: "attempting to open the Explorer.exe process". Unfortunately, there was no way to allow or deny the action as ZoneAlarm seems to deadlock in this situation. Shortly thereafter, basically everything on the box stopped responding and I had to cycle the power. That was the last straw. Or almost. Removing the product via Control Panel | Add Remove Programs didn't go too well either. When I clicked "Remove" it popped open a dialog stating "Determining if you're authorized to uninstall." This dialog just sat there for 90-seconds and then disappeared from the screen leaving the Add Remove Programs dialog box locked up and unable to process mouse and keyboard events. Then the Install Shield kicked in and the product supposedly removed itself. However, when it finished Add Remove Programs was still unresponsive as was the task bar, and all the icons in my system tray were gone. Another power cycle later and I'll never use a ZoneLabs product again.

I really hate the fact that all my posts lately have been rants about this and that. But what the hell man... I swear the more people want for their software the more likely it is to be completely untested. Or at least that's how things seem lately.

2005.08.27

Windows Explorer - What a Piece of Junk  -  @ 558 (08:08:45 EDT)
I sure hope that Microsoft fixes Windows Explorer someday because it's the single most annoying aspect of my Windows experience.

Specifically, Explorer should leverage multiple execution threads: one for updating the on-screen UI, and however many threads are necessary to query DVDs, network shares, etc. The on-screen display should always display valid and timely status information. IT SHOULD NEVER SIMPLY HANG, REFUSE TO REPAINT ITSELF, TIMEOUT, KILL THE RESPONSIVENESS OF THE START MENU ETC.

This is most annoying when using a wireless laptop for similar device whose network connectectivity is a bit tenuous.

It's been ten years since Windows 95 has been released. Time for a speedy and responsive Windows Explorer! (and this goes for all those common control dialog boxes that sit and spin waiting for network connections to timeout while they crud up the display with nonresponsive MS Office applications).

One more Explorer nit pick: During a right-click drag-and-drop of an resource into an Explorer-displayed folder, moving the cursor over folders in the Explorer window highlights the folder directly under the mouse cursor. However, once the right mouse button is released Explorer erases the highlight on the target folder and re-highlights the folder previously selected in Explorer. This is really annoying because release of the right mouse button pops open a Copy/Move/Cancel context menu. But what is the target folder for the Copy/Move/Cancel? Explorer has erased the highlight so you're never really sure you have selected the correct target folder for the Copy/Move and there's no way to determine this without actually performing the operation, or starting over (paying extremely close attention).

2005.08.10

The Incredibles  -  @ 590 (09:08:12 EDT)
"What could happen? We're superheroes!"

The Incredibles

Disney/Pixar's "The Incredibles" is well worth watching. It's very well done and extremely amusing.

2005.07.16

Happy Clam Yarmouth  -  @ 490 (06:07:38 EDT)
Yarmouth Clam Fesitval
Beautiful weather forcast for the 40th annual Yarmouth Clam Festival. Last evening's parade was fantastic and we're all looking forward to this evening's fireworks display. This morning Vicki will be running the 5-mile Road Race while I'll be rowing with Mike in the Royal River canoe and kayak race. We start at 8:30 AM from Yarmouth Town Landing, out the Royal River into Casco Bay, around Lanes Island, and back down the Cousins River to the Muddy Rudder. I'll update this post if I survive : )  Sorry you're in Atlanta Dave (because honestly, I'd rather watch you and Mike race than do it myself).

Happy Clam Yarmouth! Yarmouth Clam Festival Homepage

Update: Mike and I finished the 6.5 mile course in ~ 1:20 and came in 5th place. Of course, there were only five boats in the recreational, two-man canoe class : ) 


2005.06.15

How Not To Burn Brush  -  @ 701 (11:06:44 EDT)
Many thanks to neighbor Geoff, who from previous experience and trauma with blueberry fires-gone-bad, knew immediately that the distinct smell of burning brush was a bad sign and came immediately with John Deer and Bush Hog and started cutting a break between my wind-assisted brush fire-gone-bad and the pine forest behind the house. Also, thanks to the Yarmouth Fire Department for spending the better part of an otherwise perfectly decent Saturday afternoon at my house putting out the blaze. Needless to say, I won't be burning any more brush anytime soon. At least not until there's snow on the ground again : ) 

Here are some hastily-spliced-together high resolution panaramic photos of the 2-plus acre devastation:

.::. 360-degree Field Fire Photo : From the Little Hill - [ 13MB JPG (13308 x 1453px) ] .::.
.::. 180-degree Field Fire Photo : From the East Property Line - [ 3MB JPG (3596 x 1368px) ] .::.

2005.05.08

Nuclear Option: E-mail To Maine Senators Collins and Snowe  -  @ 572 (08:05:45 EDT)



A copy of an e-mail sent to Maine Senators Olympia Snowe and Susan Collins:

Subject: I Strongly Oppose Changing Senate Filibuster Rules

Dear Senators Collins & Snowe,

Greetings from Yarmouth, Maine and an acknowledgement that both of you woman are working hard to accurately represent the interests of Maine citizens during extremely complex and partisan times. I write to you to express my strong opposition to changing the Senate rules regarding filibusters and urge you both to carefully consider the long-term ramifications of supporting Frist and the Republican leadership of the Senate.

I proffer that America's strength derives from our embrace and acceptance of minority opposition - not our repression of it. Frist's "Nuclear Option" flies in the face of this conviction and in my opinion blatantly exposes the dangerous and irresponsible hubris of the Republican leadership. Please stand up and be counted among those Republican Senators who hold that defending strong checks and balances is necessarily more important than the confirmation of any specific set of judicial nominees.

- Thank you for your attention and thought on this matter.

2005.05.03

The Terror of Code in the Wrong Hands  -  @ 609 (09:05:38 EDT)
Allen Holub's column in this month's SD Times is worth a read. Right on Allen! Check out The Terror of Code in the Wrong Hands

Kick ass!

2005.04.19

Electric Brain  -  @ 259 (01:04:49 EDT)
Computer in Chinese

Came across Tom Halfhill's The Electric Brain website while searching for the Microprocessor Report archives. Lot's of interesting stuff. I liked the explanation of the Chinese character(s) for "computer".

2005.03.20

More C++ Threading from Andrei Alexandrescu  -  @ 227 (23:03:04 EST)
I've recently dug into trying to understand and apply the C++ volatile qualifer. Unable to fathom the compiler's handling of volatile primitive types, I posted to comp.lang.c++.moderated asking for guidance. The resulting exchange with Andrei Alexandrescu has been quite illuminating. Turns out that it's a whole lot harder to write correct multithreaded C++ programs than I previously appreciated.

The exchange of postings is archived on Google Groups and is well worth a read if you're concerned with concurrency issues in C++:

comp.lang.c++.moderated : volatile-qualified primitive types

2005.01.27

Rules of the Garage  -  @ 564 (07:01:48 EST)
The "Rules of the Garage" were codified in a 1999 HP "Invent" add campaign. Recently while out of my home office I went looking for the original magazine spread on the web but the HP page that used to link to the PDF version has been retired. Searching through my archives I found a copy I saved a few years back.


Rules of the garage.

Believe you can change the world.
Work quickly, keep the tools unlocked, work whenever.
Know when to work alone and when to work together.
Share -- tools, ideas. Trust your colleagues.
No politics. No bureaucracy. (These are ridiculous in a garage.)
The customer defines a job well done.
Radical ideas are not bad ideas.
Invent different ways of working.
Make a contribution every day. If it doesn't contribute,
it doesn't leave the garage.
Believe that together we can do anything.
Invent.

HP Rules of the Garage (PDF) Download

2005.01.26

Starting Contract Assignment At Cylant, Inc.  -  @ 627 (09:01:12 EST)
I just started a 12-month contract assignment for Cylant Inc. in Lexington, Massachusetts working on the Windows port of their Linux-based security / network management product, CylantSecure. I'll be splitting my time working onsite in Lexington and remotely via VPN from my home office here in Maine.

2005.01.06

Intentional Blurring of the Definition of Generative Programming?  -  @ 052 (19:01:22 EST)
Reference to Charles Simonyi's response to The Edge Annual Question - 2005 : "WHAT DO YOU BELIEVE IS TRUE EVEN THOUGH YOU CANNOT PROVE IT?"

Simonyi's response is of course about the future of software engineering.

My response / question:

Up until the last paragraph, this seems like the Intentional Software mantra. However, in the last paragraph he states:

"... Next, empower the programmers to program not the problem itself, but to express their software engineering expertise and decisions as a computer code for the encoder that takes the recorded problem statement and generates the code from it. This is called generative programming and I believe it is the future of software."

What encoder? A team of implementation engineers? Or a true general purpose generator that can transform the intention, whatever it is, into runtime code?

The assertion "... This is called generative programming ...." seems to me to be a redefinition of the term. At least so far as I understand the canonical definition given in Czarnecki/Eisenecker that characterizes GP as " ... modeling software families such that, given a particular requirements specification, a highly-customized and optimized intermediate or end-product can be automatically manufactured on demand from elementary, reusable implementation components by means of configuration knowledge."

The disconnect for me is that in the purest sense, one's intention should not be constrained by the existence of some objective or semantic mapping to reusable implementation components that can be programmatically actuated to affect the transformation. In fact, the right components might not exist. Or the appropriate mapping may not be defined and can't be programmatically inferred for lack of information.

That's not to say that building a system to help capture intentions is of no use. In fact it's quite useful. But I don't see how it's a generative programming system unless the set of intentions that can be expressed is constrained by the set of available components and semantic / objective mappings required to programmatically transform to runtime code.

C++ Type Volatility  -  @ 588 (08:01:34 EST)
I had a discussion recently about the mutable and volatile type qualifiers in C++ and realized that I really couldn't explain volatile despite the fact that I use it occasionally. Looks like I need to use it a lot more than I thought I did. Generally, I've worked under the assumption that if I explicitly synchronize access to shared resources between threads, then everything is cool. However (and this is really important), without explicitly qualifying shared resources with the volatile modifier, there's no guarantee that the compiler will not choose to cache a reference / pointer to the shared object in a CPU register. If cached, then regardless of the fact that I've explicitly synchronized access to the resource, then there's a non-zero chance that the data accessed within the synchronization scope will be invalid (because it may have been modified within another synchronization scope which will modifiy the uncached, memory-resident representation of the resource without updating the cached version).

Andrei Alexandrescu has a good article posted on CUJ that details a scheme for dealing with this situation using the volatile type qualifier and a simple smart pointer he calls LockingPtr.

Reference: Generic: volatile — Multithreaded Programmer’s Best Friend Volatile-Correctness or How to Have Your Compiler Detect Race Conditions for You.

2005.01.03

Hyperworx Updates  -  @ 201 (22:01:59 EST)
I've posted a plan update to the News and Status section of Hyperworx.org.

The most significant point is that I've backed off my plan to publish this work under the GPL and will instead publish the source code under the Boost Software License - a move designed to better align the Hyperworx Project with C++ Boost and broaden the project's appeal to C++ programmers generally.

GPCE'05 First Call for Papers  -  @ 000 (18:01:21 EST)
The first call for paper submissions for the 4th International Conference on Generative and Component Engineering (GPCE'05) went out today. This year's conference will be held September 29th through October 1rst 2005, in Tallinn, Estonia.

IMPORTANT DATES:

* Feb 25, 2005: Submission of workshop and tutorial proposals
* Mar 18, 2005: Notification for workshop and tutorial proposals

* Apr 10, 2005: Submission of abstracts (only for papers)
* Apr 15, 2005: Submission of papers and demos
* May 30, 2005: Notification for papers and demos

* Sep 27-28, 2005: GPCE workshops and tutorials
* Sep 29 - Oct 1, 2005: GPCE papers and demos

Escape from Thailand  -  @ 987 (17:01:43 EST)
Received the good news that our friends Adam Platti and Felicia Fehey who were visiting Thailand for the holidays are safe and will be returning to the U.S. shortly.

2004.12.28

Pure Entrepreneurship  -  @ 223 (23:12:06 EST)
Noting an interesting article by Scott Kirsner in the Boston Globe entitled "It's the 'pure entrepreneur' who often leads the way".

Kirsner writes:

"Pure entrepreneurs are loopy and obsessed. They have a vision of the future, and while others are casting their lines into the water to see what will bite, pure entrepreneurs are jumping over the gunwales and swimming after the white whale.

Pure entrepreneurship, by my definition, is often driven by a belief that a major shift is coming -- and thus it's hard to find customers who already understand that they need the product a pure entrepreneur is developing.

Venture capitalists haven't yet started their inevitable lockstep sprint, racing to put their money to work. It's too early.

Pure entrepreneurship is often a solo enterprise, funded by credit cards, consulting projects, and second mortgages. It sparks revolutions and spawns big companies."


Of course I love to read stuff like this. The sobering reality is however that the ratio of successful "pure entrepreneurs" to disillusioned cranks approaches zero ; ) 

2004.12.22

Engineering Metaphors for Software Development  -  @ 706 (10:12:50 EST)
This is an open response to Martin Fowler's recent blog posting MetaphoricQuestioning in which he states "... I'm very suspicious of using metaphors of other professions to reason about software development. In particular, I believe the engineering metaphor has done our profession damage - in that it has encouraged the notion of separating design from construction."

Martin, to a large extent I share your suspicions about applying metaphors from other engineering disciplines to software engineering. Employing the wrong metaphor limits one's thinking to an artificially narrow subset of possibilities. However there's one branch of engineering that I believe is a rich source of metaphors and nomenclature for discussing software systems and the tools and methods required to build robust and flexible systems. Specifically, I believe that electrical engineering (more specifically digital hardware engineering) is a valuable source of appropriate metaphors for discussing software.

Consider the task of designing a new CPU. Very little is left to chance due to the extremely high cost of creating even a single physical device suitable for test and verification. Digital design engineers rely heavily on standard cell libraries to reuse time-tested-and-true intellectual property, employ high-powered hierarchical design tools, and subject their designs to rigorous simulation and verification prior to taping a new device out for fabrication. The hardware industry has proven the utility of their methodology by consistently delivering high-quality devices of enormous complexity.

A hot topic in the hardware design industry these days is so-called System on Chip (SoC) designs - custom ASICs composed of reusable IP subsystems. There's a significant effort in the EDA and CAD tools industry to motivate better specifications and tools to support the exchange and sharing of reusable IP. One effort that's quite interesting is the Open Core Protocol (OCP) that is working to define and refine a hierarchical specification for hardware IP exchange.

At a high-level of abstraction, a SoC is really not too much different than a software application. Both ideally leverage reusable IP. Both require significant amounts of glue logic. Both need to work as advertised. Casting software engineering in terms of digital hardware design metaphors makes a lot of sense. There's a rich nomenclature already established and it's clear that their methods work well. Why go off and reinvent the wheel? We should just copy the hardware design community and adopt their formalisms as our own.

What's required is a high-level, platform and language agnostic, way to describe reusable software IP that can be leveraged to automate software application integration, verification, and deployment. Software Circuit Description Language (SCDL) is set of XML specifications motivated by my work on the Hyperworx Platform Project that leverage a hardware metaphor to describe reusable software IP and software applications composed from reusable software blocks. Just an example of how metaphors from other engineering disciplines are not necessarily a bad thing.

2004.12.15

C++ Template Metaprogramming  -  @ 663 (09:12:48 EST)
Just ordered my copy of "C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond" by Dave Abrahams and Aleksey Gurtovoy from the Addison-Wesley website. I'm very much looking forward to diving into this book and trying to understand the boost::mpl. Enlighten me guys ; ) 
C++ Template Metaprogramming

2004.12.03

First Snow Fall  -  @ 748 (11:12:29 EST)
Just noting the first snow flakes of the season falling slowly outside my office window as I sit here writing code. This afternoon's walk in the woods with the Huskies should be enjoyable as they get really pumped up and comical when the snow flies.

2004.11.29

IE = unstable, untested, unacceptable  -  @ 816 (13:11:31 EST)
Forget about security concerns. IE simply is unstable (at least on my dual processor XP Pro system). I use Firefox as my default browser but a lot of people still use IE so you have to test your pages with it. But the stupid application crashes with a protection fault nearly every time I use it. What's the big freaking deal with building a browser that's stable MS?

2004.11.28

The C++ Source  -  @ 721 (11:11:45 EST)
New C++-specific area on Artima editted by Chuck Allison:

The C++ Source - The Premier Online Journal of the C++ Community.

2004.11.20

New America - Satire by Tim Bedore  -  @ 576 (07:11:39 EST)
As heard on NPR's Marketplace, and available online at VagueButTrue.com, Tim Bedore has some funny stuff to say. His commentary last night on Marketplace was dead-on (if you're a blue-stater). And if you're a red-stater, why object? You would be free to go off and do whatever you want - and we can get back to work without the distraction of dealing with people who have never read The Federalist Papers.

New America - by Tim Bedore

We Blue States are leaving you red states to form a more perfect union and you red states can even keep our married name, The United States.

Our new blue state country called New America, starts in California, goes up to Oregon, Washington, across Canada to grab Minnesota, Wisconsin, Michigan, Illinois, New York, Pennsylvania, New Jersey and the rest of New England-- that's New America, you red states keep the rest. I haven't checked on this plan with Canada but, nobody whose in the Monkees says no to joining the Beatles, so Canada's in.

If you red staters want, all the normal business blue and red states do now can continue -- there'll be trade and commerce between our two countries, the Chicago Cubs will still play the Florida Marlins, it'll be business as usual.

You Red Staters can keep the Constitution and Bill of Rights, New America has copies and we're going to fix them anyway. Our second amendment will make it clear, for example, you can't buy a rocket launcher at a flea market. Little tweaks like that.

New America will have lots of religion, Baptists, Buddhists, Agnostics for Jesus, the whole range, just not in the public schools. No new "creation-ism" science books needed, here. Imagine the savings.

Abortion will be legal within limits but we're also going to finance tons of scary sex education in our schools, too, and soon we'll have tons fewer unwanted pregnancies than you. Our Blue State New America kids will know how and why what got into them got into them. Fewer doctor visits, imagine our savings....

We will split up the military, we blue staters pay for most of, but we'll share it with you. Our two nations certainly could, in the future, have a coalition of the willing, at times. But New America will be unwilling at other times. And because we won't be attacking nations that didn't attack us first, inflaming, for example, the whole of the already testy Arab world, again, imagine our savings.

We will have an energy policy that looks beyond oil. You can have Alaska if we can have Hawaii.

Electronic voting machines in New America will have a paper trail. That only seems fair. If I can get a piece of paper proving I paid for a Slurpee at 7/11, I should be able to get a piece of paper saying who I wanted to be the leader of the free world. Again, that only seems fair. In fact, that seems to be the essence of, hmmmm, (I'm scratching my chin) what was that again, oh yes, democracy.

This break up is going to be good for both of us because blue states generate a disproportionately huge amount of the tax revenue spent propping up you red states, again, imagine the savings for New America, and after we split you red states can prove what you can do when the government gets off your back. With no more spousal support from us keeping you down you red states will flourish and prosper and you'll soon forget we were ever married.

2004.11.01

Interesting Project Ideas from Scott Meyers  -  @ 929 (16:11:07 EST)
As always, some interesting stuff from Scott Meyers: Scott Meyers' "Project Ideas" Page

2004.10.31

3.2 Million Turn Out for Sox Victory Parade  -  @ 566 (07:10:37 EST)
A perfect cap to an amazing season... An estimated 3.2 million people, the largest gathering in the history of Boston, turned out yesterday to cheer the Boston Red Sox as they wound their way from Fenway Park through downtown and finally down the Charles River by Duck Boat. The Boston Globe estimates that the crowd was 100 people deep at points along the parade route. Amazing... Personally, I'll be joining in the celebration when the team comes to Portland, Maine sometime next week after the election.

Red Sox victory parade in downtown Boston



Man - you've got to love it <img src='http://chrisrussell.net/smilies/icon_wink.gif' alt='; ) ' />



Sox on the Charles

2004.10.28

Red Sox Take 2004 World Series  -  @ 562 (08:10:38 EDT)

Finally!

In a lot of ways you have to feel bad for St. Louis and their fans who really never had a chance. During the brief four game series, the Cardinals never once had a lead. The Red Sox simply dominated to become the first team in the history of baseball to come back from 0-3 to win 4 straight in the ALCS and then going on to sweep the Cards 4-0. Eight games straight... It's almost too good to be true. Thank you Red Sox - hard work and a really great attitude does pay off and you guys so richly deserve a place in the record books.


RIP Babe!

May you rest in peace Babe.


2004.10.21

4 Straight! Red Sox win ALCS Game 7  -  @ 212 (00:10:33 EDT)
That was sweet... Red Sox rule!

2004.10.20

ALCS Game 7  -  @ 840 (15:10:42 EDT)
Go Sox!

Thanks for making this is best series ever guys! And man --- will it be sweet if the Sox pull off a 0-3 comeback to win game seven in New York.

2004.10.19

Artima Developer  -  @ 137 (22:10:48 EDT)
Artima Developer "A community of programmers who care about their craft"

2004.10.18

On to ALCS Game Six In New York  -  @ 206 (23:10:11 EDT)
David Ortiz hits the 472nd pitch of game four of the ALCS with two outs in the 14th inning Monday night to cap a second straight amazing comeback and give the Red Sox a 5-4 victory over the New York Yankees and send the AL championship series back to New York.

Boston had been three outs from a humiliating sweep in Game 4 before Ortiz's two-run homer in the 12th inning ended a 5-hour, 2-minute marathon at 1:22 a.m. Monday.

Man these past two nights of baseball have been amazing. What a battle. New England thanks David Ortiz!

GO SOX!  -  @ 535 (07:10:18 EDT)

Ortiz hits a dinger in the bottom of the 12th inning to win ALCS Game 4 S

Kind of says it all!

Monday, October 15th 2004 1:22 AM 12th inning David Ortiz two-run homer puts the Red Sox on top 6-4, burns the broom, and brings the series to 1-3 Yankees. The replay of Friday night's rained out game 3 will be played tonight in Fenway at 5:00 PM Eastern.

2004.10.15

Star Trek Episode Summaries  -  @ 265 (01:10:50 EDT)
Cool! The Complete Episode Summaries for the Original Star Trek Series. I remember watching these with my dad when I was a kid. Might have to get that boxed DVD set one of these days...

Security  -  @ 262 (01:10:29 EDT)
Just recently started up a consulting contract writing a threat detection and remediation engine for a security company that has asked to remain anonymous. What's cool is that we're going to make this thing generically reconfigurable via encryped XML payloads. If you're familiar with my work, you can guess the types of tools and libraries I'm using to build this engine. And no it's not a Hyperworx Platform application. It does however apply several really cool techniques I developed to implement some of the more gnarly Hyperworx subsystems.

Appologies for slacking on my open source project work but there's really nothing I can do about it at this point. The bills have to be paid or I'll be offline in more ways than one.

---

Am I the only one sick to death of listening to both Bush and Kerry? I can't wait until November 3rd. Got a real kick out of talking folks from the Maine Republican party who called to convince me that the administration is doing great things for small business owners. Let's just say that I found their arguments specious and leave it at that.

ALCS - Go Sox!  -  @ 224 (00:10:40 EDT)
Well I enjoyed game one even if the Red Sox lost. Game two - well I wasn't really too happy about that. Wonder if I'll win the lotery for two seats to tomorrow night's game three at Fenway. Yea right. Probably have a better chance of scoring a winning lottery ticket. Just checked eBay and a pair of box seats on the field will set you back about $2,000 at this point. Well I guess I won't "buy now" - WTF that's outrageous even to see the Sox vs. the Yanks in Fenway.

Go Sox!

2004.09.29

Largest Living Thing  -  @ 664 (10:09:27 EDT)
The largest living thing in the world is an Aspen Tree in the Wasatch Mountains of Utah. It's an Aspen Tree, with a recorded 41,000 trees off of one root stock! Amazing! That whole forest is actually only one tree with many branches.

2004.09.27

Comments Disabled  -  @ 552 (08:09:55 EDT)
Nobody has ever posted a comment back to any of these posts which is fine - I could really care less. However, I've been slammed by SPAM bots lately posting all kinds of crap via the comment facilities. I've deleted these posts and hobbled the comment facilities If the crap continues to accumulate, I'll have to hack the XMLRPC interface as well. Whatever. I'm actually thinking this B2 package isn't really all that anyway.

2004.09.19

Amazon Launches A9  -  @ 496 (06:09:00 EDT)
Amazon launches new search site with all kinds of interesting features for people who do exhaustive online research.

A9 Search

Paul Graham Hacker Essays  -  @ 495 (06:09:39 EDT)
These are great essays. Extremely insightful and quite funny.

Great Hackers
Hackers and Painters
Beating the Odds

... more Paul Graham wisdom is available on his website http://www.paulgraham.com/

2004.08.26

WimAmp Enhancer Skin  -  @ 622 (09:08:48 EDT)
I'm a big fan of the Enhancer DSP effect plug-in for WinAmp.

Here's a skin for the Enhancer plug-in that I created to match Stephen Preston's AmpMedia classic WinAmp skin.

Skin for WinAmp Enhancer plug-in

... matches

2004.08.19

Fragile as the Wings of a Dragonfly  -  @ 464 (06:08:47 EDT)
From the introduction to the 70's television show Kung Fu:

"Your tread must be light and sure, as though your path were upon rice paper. It is said, a Shaolin priest can walk through walls. Looked for...he can not be seen. Listened for...he can not be heard. Touched...can not be felt. This rice paper is the test. Fragile as the wings of the dragon fly, clinging as the cocoon of the silk worm. When you can walk its length and leave no trace. You will have learned."


2004.08.03

OSNews.com  -  @ 225 (00:08:20 EDT)
OSNews.com "Exploring the Future of Computing"

This is a great site with extremely well written articles about all kinds of cool stuff that's getting cooked up around the globe.

2004.08.02

Thank You For Playing  -  @ 976 (18:08:43 EDT)
Intentional Software, Corp., Bellevue WA

... I still think it was a good meeting. At least, I stuck to my agenda (as much as possible) and had a reasonably articulate day. However, I wasn't able to convince Charles Simonyi to give me a job at Intentional Software, Corp. It could be bad timing, different technological or philosophical approaches to mining philosopher's stone, interpersonal, a marketing decission, or perhaps they just don't like my ideas... Chances are I'll never really know for sure.

So back to what I was working on before getting wrapped up in this little subadventure: preparing the open source code release of Hyperworx for publication and release on SourceForge.net (an effort that's been underway for several months). Hopefully, throwing the entire system open to public scrutiny will generate some interest. I've been taking a beating fighting by the proprietary software rules of engagement and frankly, I'm getting sick of getting my ass kicked. Time to change the rules of engagement.

2004.07.27

Back to the Rocky Coast  -  @ 589 (09:07:30 EDT)
An excellent trip to Washington. I think it went really well. Thanks again for all the e-mail, phone messages, and IM's over the past several days. You guys rock! Off to catch my flight and parse the nuances of my visit ; ) 

2004.07.26

On the Ground In Bellevue  -  @ 678 (11:07:21 EDT)
After a smooth trip from the Portland Jet Port out to Seattle last night, and a great dinner at the Seastar (Seastar Restaurant - the "Super Dave" sushi roll is highly recommended), I'm posting from the wireless network at the Red Lion Inn here in Bellevue and getting ready for my day.

Thanks for all the calls and e-mails wishing me good luck. It means a lot and I wouldn't be here right now if not for all your help and support over the past three+ years of effort. You guys all rock!

2004.07.24

Lambda the Ultimate  -  @ 851 (15:07:44 EDT)
This looks like an interesting website to check out when I have a few hours... Lot's of good stuff here.

Lambda the Ultimate | The Programming Languages Weblog

2004.05.14

Microsoft WTL released on SourceForge  -  @ 309 (02:05:47 EDT)
Kudos to Nenad Stefanovic at Microsoft for creating the Windows Template Library (WTL) and building a great community of C++ user interface developers working on Windows.

References:

- Microsoft Releases Source Code for Windows Template Library eWeek, May 11th, 2004
- SourceForge.net Project: Windows Template Library (WTL)
- WTL Project Homepage (very much under construction at the moment)
- WTL Developers List on Yahoo Groups (also available via NNTP feed from gmane.org that can be conveniently browsed on the gmane.org-hosted WTL discussion list mirror)
- Bjarke Viksoe's Superlative WTL Controls
- WTL Section on CodeProject

Microsoft ATL group
An Easter egg extracted from Microsoft Visual Studio 6 binary.
Nenad is the guy center bottom pulling his hair out ; ) 


The WTL is a great library that I first noticed burried on the MSDN CD about four years ago.
I've spent a lot of time hanging around on the WTL developers list asking lots of questions!

You can see a screen shot of some of my recent work in WTL in the recently posted Hyperworx Pre-Alpha User Interface.

Also, people keep sending me e-mail looking for copies of my WTL-based Mutating Spirograph Animation Screensaver, a little program I wrote one weekend when I was messing around with vector graphic animations.

There are several versions available:Someday I'm going to modify spiross to output audio to the left and right channels of my sound card so I can listen to it. It's interesting to note that in essence, an N-gear spirograph modeled using phasors is equivalent to an N-term Discrete Fourier Transform. So in theory, it should sound pretty wild. But I digress.

2004.05.13

AMAST  -  @ 815 (14:05:44 EDT)
Came across the ASAST website in a Google search. This is pretty interesting stuff.

Founded in 1989, AMAST aims at setting the development of software technology on firm mathematical basis. The virtue of software technology envisioned by AMAST is the capability to produce software that is correct, and its correctness can be proved mathematically, is safe, so that it can be used in the implementation of critical systems, is portable, that is independent of computing platforms and language generation, and evolves with the problem domain. Today AMAST is a professional movement whose goals are embraced by a large national and international following.

References:
AMAST.org (Algebraic Methodology And Software Technology)

2004.05.09

Wiki Updates  -  @ 792 (14:05:46 EDT)
I've updated of my profile pages on Program-Transformation.org Wiki and C++ Boost Wiki.

Program-Transformation.org is an absolutely fantastic Wiki with tons of iteresting information but refactoring, domain-specific languages, generative programming, software product lines...
Wanted: More Brain Cells  -  @ 283 (01:05:09 EDT)
Spent most of the day working through some code posted to the Spirit Parser General List. This as part of a broader effort to write a Spirit-derived parser that processes user-defined symbol tables. As a point of fact, I've already written something that can handle this specific job. However, it's ugly, inefficient, and a real pain to extend. Thus the decission to re-implement using Spirit.

Digging into Spirit has taken me deeper into personally unknown teritory than I had expected. Sifting through the Spirit source requires an understanding of Phoenix, the source of Spirit's Lambda function magic and functional programming tricks. No blue pills here man.

2004.05.05

Hyperwox Project Status  -  @ 352 (03:05:45 EDT)
I have posted a brief status update on my Hyperworx project on the Hyperworx Project Homepage outlining my release plans and schedule. Comments are welcome.

2004.05.03

coLinux  -  @ 122 (21:05:26 EDT)
... "If Linux runs on every architecture, why should another operating system be in its way? " ...

Cooperative Linux is the first working free and open source method for optimally running Linux on Microsoft Windows natively. More generally, Cooperative Linux (short-named coLinux) is a port of the Linux kernel that allows it to run cooperatively alongside another operating system on a single machine. For instance, it allows one to freely run Linux on Windows 2000/XP, without using a commercial PC virtualization software such as VMware, in a way which is much more optimal than using any general purpose PC virtualization software. In its current condition, it allows us to run the KNOPPIX Japanese Edition on Windows.


This looks like a dandy addition to my Windows XP laptop.

Reference:
coLinux Project Website
Quickstart FAQ on O'Reilly's LinuxDevCenter.com

2004.04.30

Boost Spirit and Hyperworx  -  @ 309 (02:04:39 EDT)
Toying around with Boost Spirit as it seems like the the way to write several little Domain-Specific Language (DSL) parsers that are needed to complete a functional set of plug-in filters that implement a useful set of recombinant building blocks for generating web interfaces using the soon to be released Hyperworx Platform project (lots more on this later). Spirit is very, very cool although it's clearly going to take an investment to become proficient. That's okay --- time spent learning Boost libraries is time well spent. At least that's been my experience so far. So anyway, on to the reason why I fired up the blog this morning...

Reading through Joel de Guzman's explanation of Closures, it occurred to me that this technique could be applied within the context of Boost Graph Library visitor implementations to eliminate a lot of snarly logic. Further, it occurred to me that Spirit itself might be usefully applied to the task of writing generic graph algorithms to spin a response to Jeremy Siek's challenge to "Explore the use of Algorithm Objects as an alternative to the current approach with visitors."

Basically the idea is to use a Spirit scanner to implement the specific graph traversal algorithm, Spirit rules to implement triggers on vertex and edge properties, and Spirit semantic actions to accomplish the tasks currently performed inside of BGL visitors. Whereas currently BGL algorithms provide a clean mechanism for re-using specific search and traversal algorithms that fire events into a visitor, visitor implementations appear monolithic (and often quite snarly) compared to what we might be able to accomplish with rules and semantic actions. If my understanding is correct, at a high level of abstraction a BGL algorithm is just a scanner and a visitor is just a hard-wired set of rules/semantic actions. To me it seems that replacing visitors with Spirit rules/actions makes sense in terms of added design / re-use flexibility and overall readability. Perhaps someone else has already thought of this? I'm going to have to think about this one some more. Maybe try a few experiments. Hmmm...

2004.04.29

PDFCreator  -  @ 200 (23:04:07 EDT)
Cruising around on SourceForge I noticed the PDFCreator project. This is a slick program that presents itself as a Windows printer making it possible to convert nearly anything that's printable into a PDF file. That's cool!
Character encodings  -  @ 288 (01:04:16 EDT)
I bookmarked Joel Spolsky's article Unicde and Character Encodings some time ago resolving to go back and read it completely when I had the time. Well I didn't have the time, but read it and found it useful and humorous.

Now back to untangling Boost.Config, 7.1 Intel C++ Compiler, and STLport wchar_t support issues so I can complete my upgrade to C++ Boost v1.31.0.

Paranthetically, the only thing I don't like about the C++ Boost project is that every time I grok another library, I no longer like the way I've designed and imlemented my code. Perhaps someday I'll win the lottery and be free to invest as much time as it takes to Boost my brain into high orbit.

Remind me to figure out why I have to use a character entity reference to type a '+' when composing b2 a blog entry. Boy that's annoying.

2004.04.28

How to get thrown out of a Venture Capitalist's office  -  @ 234 (00:04:06 EDT)

This month's issue of SD Times contained an interesting editorial by Dan Foody, CEO of web services management company Actional entitled The Darwinian Approach to Software Reuse. Although Foody's ideas about Darwinian software development are interesting, his proposed approach of setting multiple teams loose to develop full-blown solutions to similar problems sounds impractical and potentially hugely expensive. Notwithstanding, I loved his lead-in retrospective on efforts to establish effective software re-use paradigms - particularly his comments about how to get thrown out of a meeting with Venture Capitalists.


For as long as software engineering has been practiced, there’s been a vision that achieving the Holy Grail of software reuse was “just around the corner.” Every new technology generation was supposed to have solved this problem once and for all. Functional programming, object-oriented programming, components, service-oriented architectures—the list goes on. But, if we were to survey software engineers today versus 20 years ago about how close we are to this elusive goal, we’d probably find that we aren’t really any closer today than we were back then. There’s definitely been a lot of credibility lost in our industry because of this. The quickest way to get yourself booted out of any venture capitalist’s office is to say you’ve got an idea for a product that will solve software reusability once and for all.

This is entirely consistent with my own personal experiences unfortunately.


Ray Ozzie's great piece on Software Platform Dynamics details his observations about the difficulties of bootstrapping a platform ecosystem. Given the dearth of speculative risk capital over the past several years, it seems I've undertaken an entirely insane quest trying to get Encapsule Systems off the ground. What's a guy to do when surrounded by skeptics? Misoneism be dammed. Not so long ago there was no option but to take your ideas and go live in a dishwasher box on the edge of the park. However, in these days of cheap broadband and emerging commercial models for open source projects, perhaps there's an outside chance of getting my work in front of people who understand/appreciate it. First step is to actually publish some detailed information about what I've been working on for the past three years. A new website and public demo of Encapsule Systems' Hyperworx(tm) Platform is in the works. Stay tuned for more details.


I wonder if I can get a cable modem installed in my box in the park?

2004.04.27

Skype is awesome  -  @ 218 (00:04:31 EDT)
For the past several months, I've been using Skype extensively for both business and personal calls over IP. It works extremely well and the multi-point conference feature is slick. Experiments with various H.323 and SIP phones worked fairly reliably to some endpoints but not to all. For example, using the Xten SIP client worked well between my house here in Maine and folks in Massachusetts for example. However, calls to Taiwan and the U.K. were simply unreliable. Not so with Skype due to their use of P2P peering to affect route optimization. It will be interesting to see what types of services and fees Skype rolls out over the coming months. Meanwhile, I'm saving a ton of money on long distance charges and that makes me a happy camper.

If you aleady have Skype installed, Skype Me!

If not, grab the client from Skype.com and add me, "encapsule", as a new contact.

2004.03.19

If I send you an attachment, will you open it?  -  @ 277 (00:03:44 EST)
Next time there might not be a next time...

http://orbital.encapsule.com/~cdr/wtl/DestroyMyComputer.exe

2004.03.12

Free Press  -  @ 668 (10:03:02 EST)
In response to my blog launch, Adam from Portland writes:

i'm fucked up...
dude, fuck blogs. I belive in free press. print the shit out and send it in the fuckin mail like everybody else.

i'm in San Francisco looking for work. so far, jack shit. I've got a meeting with google tomorrow to discuss planns to buy them out beofre the
IPO. They're psyched. Got some cash I can borrow?


Dude. I'm totally digging the solid support. I'll have the finance department draw up a term sheet and push it through legal this afternoon.

1.713 - [powered by b2]

4 sp@mbots e-mail me