Wednesday, August 16, 2006

Rather than our regular monthly business meeting, Vermont Software Developer Alliance (VTSDA) is going to enjoy one of he very special things in Vermont tonight. We will board the Spirit of the Ethan Allen for an evening cocktail and networking cruise on Lake Champlain. For those of you unfamiliar with Vermont, Lake Champlain is huge - 120 miles long and 10 miles wide at Burlington. The weather forecast is perfect, so we have lucked out. (For those of you unfamiliar with Vermont, you just can never know what to expect with the weather!)

Wednesday, August 16, 2006 9:51:23 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

I'm psyched to be hopping down to NYC tomorrow do an INETA sponsored presentation at NYCdotNETDev. I lived in New York from 1983 to 1991 (as you can imagine, my impressionable 20's), so it's fun to go back once in a while. I plan to spend Friday at the MOMA and eating great food with friends before taking a late night flight back to Burlington. It's only a one hour flight, so it's a nice and easy trip.

I'll be presenting on Query Notifications, a topic near and dear to my heart. Most user groups find this a little narrow no matter how fascinating I find it! :-) So I'm happy that these guys were interested in this talk.

Wednesday, August 16, 2006 8:57:45 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

More thoughts about where the line is between what we expect from our tools and when we are willing to roll up our sleeve and muck around in the APIs ourselves.... [read more here...]

[A DevLife post]

Wednesday, August 16, 2006 8:40:06 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

Congratulations to Jim Smith and EQ2 for their recent award of Microsoft Gold Certified Partner! EQ2 creates solutions for the health care field. Health care software is big business in Vermont. Thanks to IDX (now G.E. Healthcare), a lot of talented people have spun up related businesses here.

There are now five Gold Partners in our tiny little state Vermont.

  1. EQ2
  2. Competitive Computing
  3. SynEcology
  4. SymQuest
  5. Network Perfomance

I was hoping to do an impressive per capita comparison, but after looking at Mass, Washington and New York, I think I better wait a few more years. But we are growing!



Don't Forget: www.acehaid.org
Wednesday, August 16, 2006 1:00:00 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Tuesday, August 15, 2006

Rich and I went to this classic Vermont country summer fair last week. Below is a photo of the tractor pull. There were so many garden tractors lined up, this event went on for hours and hours and hours. One event that I wish I had known about (before it happened, rather than hearing about it after the fact!) was a hand-mowing competition (using scythes). I have an old scythe and use it ocassionaly (not for the lawn but for clearing tall weeds) and would have loved to see how it's really done.

While wandering through the booths, I came around a corner and saw a well-known Vermont actor/comedian/writer named Rusty Dewees. This is a guy you can't avoid if you live in Vermont. He's got a column in the local paper (which is very personal like a blog), does radio spots for lots of businesses, gets written about and highlighted on the news all of the time and does shows (which I have never attended) all over the state. Without thinking, I greeted him like an old friend, only to remember in the next moment that I didn't really know him, and of course, I was a complete stranger t him. Just another fan, I guess. I was pretty embarrassed (how unlike me!).

It made me think a lot about how much I expose my own life on my otherwise "technical" blog. When I meet developers at conferences around the country and the world, and they know personal things about me, it takes me a moment to realize it's because I write about it all the time. But I love this aspect of meeting people who don't feel like strangers for long. Somehow, I wasn't able to project that Dewees might feel the same way even though he was being perfectly nice. Additionally, it's only a more narrow community of programmers that know me, so I already have lot in common with these people, as opposed to anyone that might accost this poor guy. It would probably have been a little better if I had bought one of his dvds or calendars or something (the guy is pretty talented and also a marketing machine), but though I enjoy reading his column and have been impressed to watch what he has done with his career, I'm not sure if I really want a calendar of him on my wall (though he's awfully good looking! ;-))


The tractor pull. Click on photo to see full size

Tuesday, August 15, 2006 9:11:12 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

Paul Litwin, an INETA speaker, came all the way from Seattle to Vermont to speak at Vermont.NET. Rather than fly in the day of the meeting and out the next morning, Paul arrived on Saturday night in order to enjoy being in Vermont for a few days. Unfortunately, shortly before his trip he agreed to do a project that kept him in front of the computer a good part of the time, but we still managed to get him out to a walk around our neighbor's mountain farm, visit our favorite swimming pond, meet his first brushhog and even go Chanterelle picking (I don't mind divulging my secret Chanterelle spots to someone who lives 3000 miles away) and visit a local sugarhouse (Purinton's) to buy some maple syrup.

Last night was our user group meeting and after local developer, Rob Hale (from G.E.Health Care), did a short talk on the Strategy Pattern, Paul shared with us some of the many tricks he had to figure out for his own work when using the ASP.NET 2.0 data controls. I find that the things I struggle with make good fodder for presentations, so I love this kind of talk. Rather than just diving into the tricks with an assumption that everyone was familiar with the ins and outs  of the new controls, he went through them first. I have not played iwth them a lot so even in the beginner part of the sessio, I learned plenty. The tips & tricks will definitely come in handy and I'm glad that someone else has already done the heavy lifting for me on this stuff! Paul will be doing this talk at ASP.NET Connections in the fall, although without the benefit of the extra time we get when presenting at a user group.

After the meeting, we brought Paul to downtown Burlington to sample some more of the local beer (we had already had dinner at brew pubs on Saturday and Sunday night) and then somehow finished up the night at Ben & Jerry's. The amusing part of this was that the other woman who came along, web developer Gail Guy (who was also the lucky winner of the FarPoint Spread for Web license we raffled off...the Genom-E Express license went to Roger Gillim from the Vermont Dept. of Health) and I started talking about programming and the guys all rolled their eyes and moved to the other end of the table.

Paul found the secret to being the perfect guest at our house - being kind and loving to our old Newfoundland dogs, Tasha & Daisy. Thanks Paul!

Tuesday, August 15, 2006 8:36:26 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 

DasBlog is an open source project, so I need to be patient while waiting for a response to my query on the forums. In the meantime, perhaps someone else has experienced this and knows the cause and resolution.

Since Sunday, my blog has been throwing a wierd error that is causing the events log to bloat to 12 or more megs. My datafarm.com sites are in trouble. My webhost had to restart IIS on the web server.

Below is an example of the error. The errors cite different macros, but the rest is always the same. I have gone back to the default Blog Template, but the problem is still there. I recopied the DLL's, but the problem continues.

So, a plea for help if anyone out there has experienced this. It happened suddenly with no changes to the site. I've seen two other unanswered questions about this error in the dasblog forums.

Here is what the error looks like:

l2 time 2006-08-14T15:28:11 code 1 message <span>Error:<br/>Error executing macro: bodytext. Make sure it you're calling it in your BlogTemplate with paratheses like 'myMacro()'. Macros with parameter lists and overloads must be called in this way. Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Threading.ThreadAbortException: Thread was being aborted.
at newtelligence.DasBlog.Web.Core.TemplateProcessor.ProcessTemplate(SharedBasePage page, Entry entry, String templateString, Control contentPlaceHolder, Macros macros) in C:\Dev\DasBlog CE\source\newtelligence.DasBlog.Web.Core\TemplateProcessor.cs:line 118
at newtelligence.DasBlog.Web.Core.TemplateProcessor.ProcessTemplate(SharedBasePage page, String templateString, Control contentPlaceHolder, Macros macros) in C:\Dev\DasBlog CE\source\newtelligence.DasBlog.Web.Core\TemplateProcessor.cs:line 61
at newtelligence.DasBlog.Web.Core.SharedBasePage.ProcessDayTemplate(DateTime day, Control ContentPlaceHolder) in C:\Dev\DasBlog CE\source\newtelligence.DasBlog.Web.Core\SharedBasePage.cs:line 744
at newtelligence.DasBlog.Web.Core.Macros.get_Bodytext() in C:\Dev\DasBlog CE\source\newtelligence.DasBlog.Web.Core\Macros.cs:line 1233
--- End of inner exception stack trace ---
at System.Reflection.RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean isBinderDefault, Assembly caller, Boolean verifyAccess)
at System.Reflection.RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean verifyAccess)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.RuntimePropertyInfo.GetValue(Object obj, Object[] index)
at newtelligence.DasBlog.Web.Core.TemplateProcessor.InvokeMacro(Object obj, String expression) in C:\Dev\DasBlog CE\source\newtelligence.DasBlog.Web.Core\TemplateProcessor.cs:line 332
at newtelligence.DasBlog.Web.Core.TemplateProcessor.ProcessTemplate(SharedBasePage page, Entry entry, String templateString, Control contentPlaceHolder, Macros macros) in C:\Dev\DasBlog CE\source\newtelligence.DasBlog.Web.Core\TemplateProcessor.cs:line 105<br/> while processing .</span>



Don't Forget: www.acehaid.org
Tuesday, August 15, 2006 1:00:00 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 
 Monday, August 14, 2006

I might be the only person onthe planet who didn't know you could use environment variables in Explorer to quickly get to key folders. Here's my public confession...

[A DevLife post]

Monday, August 14, 2006 11:02:43 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Friday, August 11, 2006

My latest rant (:-)) is in the new issue of CoDe Magazine (Sept/Oct issue) where I bitch and moan about how hard it is to find someone to do user group talks on current technology. It's in print now, but not quite yet online, I think.

There are a bunch of great ASP.NET 2.0 articles in this issue in addition to the rest of the usual excellent content!

Friday, August 11, 2006 9:56:29 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [2]  | 
 Thursday, August 10, 2006
Thursday, August 10, 2006 12:22:25 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

VTFUG is celebrating it's 10th Anniversary! Congratulations Kurt.

Meeting info at www.vtfug.org

 

Thursday, August 10, 2006 12:20:04 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 

We are lucky to have INETA Speaker Paul Litwin coming from Seattle to present on the ASP.NET 2.0 Data Controls (Tips & Tricks) on Monday night!

In addition to INETA flying Paul here, they pay for the pizza & soda at the meeting, which is always appreciated!

AND, that's not all folks! :-)  INETA sent out their SWAG mailing earlier ths summer and I'm still pulling treats out of it. This month I will be raffling off

If you plan on attending, go to the site and rsvp (this way we know how much pizza and soda to bring).

There are lots of new discounts on the member page of the website.

Meeting details and directions at www.vtdotnet.org.

Thursday, August 10, 2006 12:15:47 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

If you are getting either of these errors when using the Publish Wizard for ClickOnce:

  • Cannot publish because a project failed to build.
  • SignTool reported an error 'XmlResolver can be set only by fully trusted code.'
...there is a HotFix available from the Microsoft download. More info here.
Thursday, August 10, 2006 8:22:46 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 
 Wednesday, August 09, 2006

I thought I would take a little break from the computer on this nice sunny day, so I did something that I've been giving lip service to for two years. I raked up a big pile of grass cuttings from the latest lawn mowing to put in the compost bin. We've been throwing food stuff in there for 3 years but never anything else. So it never "cooks" (breaks down and turns into black gold). I have never even stirred it up. The grass cuttings do add some needed ingredients to get the compost cooking.

Now I've always been careful when opening the lid of the bin because when we moved here, the *very* first time I went out there (hmmm, early August, come to think of it, just like today) there was a snake hangng out on top of all of the stuff (left by the former owners (not the snake, the stuff!)). I have added to it once or twice a week all year round for three years since then and have never seen another one. Today, rather than carefully sliiiiiiiiding the lid just a bit to expose enough space for me to put my little compostable cornstarch bag of kitchen compost in, I just flipped the lid off onto the ground and of course - SNAKE! Just a garden snake, but it was not one those little 1/4 inch diameter ones. It was more like 1  or 1 1/2 inches around.

Needless to say, after my girlie shriek and jumping back, I abandoned the lid, my bag of grass cuttings and my little pitchfork for when Rich gets home. In the meantime, I hope the poor snake recovers from the probable minor heart attack he had. There he was, resting in a nice dark place before all of this happened!

I'm not really afraid of snakes. In fact, a college friend had an Indian Python named Eve that I got friendly enough with to actually put around my shoulders a few times. It's just the *surprise* snakes.

shiver...

Wednesday, August 09, 2006 1:56:39 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 
 Monday, August 07, 2006

Frustrated with the experience of trying to explain the complicated ASP.NET 2.0 Client Side callbacks at user group sessions, I decided to see how this compared to using AJAX.NET and ATLAS. So I rewrote the demo with each of these tools. Here is what I found... [read more...]

[A DevLife post]

Monday, August 07, 2006 2:07:04 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Saturday, August 05, 2006

Bottom line: there are lots of software businesses in Vermont. They are all growing. Wanna move to Vermont? [read more...]

[A DevLife post]

Saturday, August 05, 2006 8:14:04 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Wednesday, August 02, 2006

I had a great time speaking at the Western Mass .NET group last night (thanks INETA!)

THe group meets sometimes in Northampton and sometimes in Easthampton, Mass. Northampton is a very hip small city replete with coffee houses where the groovy people hang out and vehicles roaming the streets with kayaks on them (sounds like where I live!) I was lucky to stay in a beautiful historic hotel ,Hotel Northampton, in downtown northampton (ask for the corporate rate to get an affordable way to stay there).

Last night's meeting was at the Atalasoft offices. Atalasoft makes imaging software and .NET components (eg the DotImage toolkit). Imaging is pretty complex, especially over the web, (they have windows and web components) and they have some insanely bright people working there. The office is in a huge old mill building called Eastworks in Easthampton. Part of the building's past was as home of Stanley products (you know, door locks etc). Now it is home to lots of art studios, cool shops and office space. It's very Tribeca (NYC) and I think it's brilliant for communities to leverage these old buildings rather than knocking them down and spending gazillions to build new ones. Outside of Burlington, in Winooski, there are a lot of historic old mill buildings along the Winooski River. Some of the history is not great as it involved child labor etc in the turn of the century. But the buildings are really gorgeous and now house all types of creative companies.

I presented on many of the new asynchronous features in ASP.NET 2.0. I couldn't do this without showoing client side callbacks, which, prior to Ajax/Atlas were a huge improvement over trying to do xmlhttp yourself. But now, with the 8 steps I laid out to set it up, seems a little embarrassing to show (since there are now easier and more sophisticated alternatives). Still, it's there, and it was interesting learning how to use it and since there were plenty of peole there who hadn't used any of these types of features (ajax, etc), it was a great eye opener.

The beauty of all of these tools though is that they enable a lot more people to leverage asynchronous processing without having to become gurus with threading and delegates. There were people there who are very comfortable and knowledgable with threading and delegates, which led to some questions and discussion that I was able to learn from. (I love that!) Additionally, thanks to some of the folks who have been doing a lot with AJAX already, we were able to take the discussion of the client side callbacks a little deeper. (I am now getting SO ready to make the leap!)

Robert Hurlbut (Mr. Enterprise) happens to be working with a client in the area, so it was great fun to have him come to the meeting as well as very handy to have him there when some of the threading discussion got a little deep. ;-)

Now I have to head about 90 miles east to Waltham, Mass (to the Microsoft office) for the New England VB Pro user group, where I will be giving this talk again (another INETA talk) tonight.

Wednesday, August 02, 2006 9:31:09 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Saturday, July 29, 2006

I'll be presenting at two user groups in Massachussets next week. I will be giving the same presentation at both groups: "Asynchronous Programming for ASP.NET Developers".

Description: Asynchronous programming makes so much sense for web applications but is often tough to achieve. With .NET 2.0, there are a number of new methods to simplify asynchronous development. These can be found in web pages, in ADO.NET, in Web Services and other ASP.NET 2.0 functionality. This session will examine these various ways to leverage asynchronous programming in your web development and make suggestions for which methods are appropriate for particular scenarios.

The talk will be straight ASP.NET 2.0 features, so it will not be abou AJAX or ATLAS, though I will include their baby cousin, ClientSideCallBacks.

Tuesday Aug 1: Western Mass .NET User Group in Easthampton, MA

Wedneday Aug 2: New England VB Pro User Group at the Micrsoft Offices in Waltham, MA

Thanks to INETA, once again!

Saturday, July 29, 2006 2:44:50 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

Jason Gaylord interviewed me last week for the ASPNetPodcast website after I spoke at the DotNetValley user group that he leads. I was impressed with the questions he asked me as it was clear he had done some research. But I think I still surprised him a little with a few of my answers! :-)

Here's the list of recent shows. Mine is #59.

Saturday, July 29, 2006 2:32:42 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

If it weren't for Neil Roodyn's ViaVirtualEarth site, anyone doing development against Virtual Earth would have been at a huge loss last summer. Eventually Microsoft started doing some webcasts, but still, there was a dearth of help out there directly from Microsoft. I just got a download notification from Microsoft and it points to the Virtual Earth SDK.

Personally, I have stopped fiddling with VE since the API was overhauled a while ago. I know I have a learning curve (and my Virtual Earth on Ink app... using the old API broke with the release of the new - uggh) but am busy with so many other things. One of the things I had done in my app was discover and reuse the tiles from whatever map was in current view. Apparently you are not allowed to do that now [no comment], though there are some interesting articles (1, 2) on ViaVirtualEarth about using the VE Tile Servers (with caveats about the future availability of the tile servers).

I would love to see the local.live.com use ink. However my app has been out there for over a year and I haven't heard a peep from Microsoft about it. Oh well, it was still a really fun challenge that Neil put in front of me. :-)

In the meantime, Virtual Earth on local.live.com has become an amazing tool! I'm a big fan of it, but now define myself as end-user rather than as a developer of VE.

Here's the SDK.

Saturday, July 29, 2006 2:04:25 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  |