Webster’s Falls

Webster’sFalls is an interesting little conservation area located (you can actually see the falls right in the center ofthat map – follow the river coming in from the left, and in thecenter of the page it disappears below the trees) just North ofHamilton (alittle West of Burlington),featuring landscape courtesy of the NiagaraEscarpment. Offering two pretty impressive waterfalls (this isthe more traditional, but shorter, falls), you can even go up underthe falls on one of them. Visiting there with two small children,that option was ruled out when we visited last Saturday.

On the topic of photos, why does every blogger imaginethemselves a photographer Is it the accessibility, or is it theability to claim some credit for easily capturing a snippet of thebeauty that our world drops in our lap every day?

Improved .NET Remoting in 2.0

Along with garbage collection, another element of the .NET wavethat I always thought wasn’t entirely thought out, and perhapsrushed to market, was .NET Remoting. There are just so many things about it that seemwrong (not the least that it has a relatively short lifespan beforeit is supercededby Indigo), and it seemed to be a downgrade from the so-called .dllhell of DCOM/COM+.Not only was it lacking many of the historic enterprise features ofCOM+ (even seemingly critical features like nativeauthentication and encryption), but the performance was deficientcompared to legacy communications technologies, and little quirkslike each channel being unidirectional just seemed absurd.

Thankfully, the performance issue has been improved dramaticallyfor same-machine communications with the addition of a newcommunications channel called IpcChannel. Using classic named-pipes, IpcChannel hasdemonstrated dramatic speed improvements even over the binaryTcpChannel. If you’ve properly configured remoting declaratively inyour config file, it’s a simple change to switch to IpcChannelwhere both ends of the conversation exist on the same logicalmachine. IpcChannel even lets you specify an Access Control List(ACL) to limit who can connect, which makes sense as authenticationand authorization is a native feature of named pipes.

Couple this with the new, easy to use authentication and encryption of .NET Remotingin 2.0 and it has turned into a pretty nice out-of-the-boxsolution.

Web Services Getting More Accessible

Microsoft to Release New Developers Tools (AP). AP- Microsoft Corp. is releasing several new tools to help developersbuild software applications that work with its online search andcommunication products. [Yahoo! News: TechnologyNews]

Fascinating seeing competition changing the marketplace. A yearor so ago I considered some business ideas that were heavilydependent upon the ability to map data through some sort of webGIS. At the time youcould either buy a very expensive product that you ran on yourown servers, serving rather craptacular raster graphics, or youcould sign-up for MapPoint Web Services (MWS). MWS was very expensive (I can’tremember the details, but I believe it was something like $50,000up front, and then a considerable per transaction fee -considerable relative to the extremely low yield of most webventures, though it would have been very worthwhile for manyinternal asset tracking style apps). I abandoned the idea as it wastoo speculative.        

Of course now countless sites are popping up utilizing Google Maps as their GISback-end system. That seems like a very tenuous decision to me (atleast until Google figures out their mapping revenue model), butthe result is some outstanding graphical mapping apps that lookspectacular and respond fantastically. I find it remarkable thatGoogle Maps offers a more responsive (and more aestheticallypleasing) experience than running a thick-client MapPoint applocally.

Proper Typing Technique

This isn’t a very hardcore developer tip, but it cansignificantly affect productivity and communications: Learnhow to type properly.

A good portion of two-finger typists, when advised todo this, will reply that they can type faster than any”formal” technique already, often referencing dubious onlinetests that affirm their mastery (claiming some ludicrous number togo along with their 170 IQ). It’s highly unlikely – notimpossible, but unlikely. I say this with inside information, as I,too, started as a two-finger typist, teaching myself all thewrong techniques on my Atari 800XL. I becameso confident in my mastery that in my first year ofhigh-school I signed up for a course called “keyboarding”- basically training for a classic prototypical 1970ssecretary (learning margins, various letter layout standards, andof course typing…err “keyboarding”). It satisfied the needfor a business credit, and I figured it’d be an easy period, sothere I was.

This course taught proper form, and it was no time at all beforeI was typing with the best of them. My accuracy and speed increaseddramatically, and I could spin off paragraphs with a minimum offuss and spectacle. So much so that they sent me to the county-widebusiness “Olympics”, where I won the lucrative and heavily soughtafter typing contest. How nerdy is that Yes, very.

Of course the rate of data entry for software development ishardly the limiting factor when you consider that mostdevelopers complete a couple of dozen lines of code a day(averaged over a year, and that’s actually overstating theaverage): Instead good development often entails a lot of research,planning, and thought, and a minimum of actual coding. Nonetheless,once you factor in communications (e.g. emails, IMs, and so on),comments, and documentation, the average developer actually typesan enormous amount of information intotheir PC every day, and the capabilities of their person-machineinterface becomes extraordinarily important: The last thing youwant is negligent documentation, deficient comments, or spartan andpoorly communicated emails, all because one can’t efficientlyand effectively turn their thoughts into digital form.

So if you want to maximize your ability to use this medium, andreduce the amount of shock and awe (and time) required to convey apoint, make sure you’re using proper form when you’re typing. Don’tget bogged into debates over Dvorakvs QWERTY tojustify poor form — just pick one and do it right.

System.Net Suggestions

Much of the development on .NET 2.0 is wrapping up (the releaseis closing in on us fast), and the teams are setting their mandatesfor the next release (Orcas).Now is the time for the development community to convey theirwishes to the teams, letting them know where there are gaps, andwhat doesn’t provide the solutions it should. The System.Net teamis activelysoliciting for input. Take a moment and let them know what youthink. The results will be a better long term development platformfor all of us.