Archives
-
SRT in the News
SRT (the company I work for) is making the news! First off, we were awarded a "FastTrack" 2007 award by the Ann Arbor Business Review. Dianne posted details about this.
-
Day of .NET is HOT!
This Saturday's Day of .NET is quite the hot item. In fact, it's so hot, we've hit our maximum of 250 attendees (we have to place a cap somewhere since we're providing a free lunch and a t-shirt). We currently are not accepting any new registrations, which is kind of a bummer. So I need your help.
-
Tim Landgrave at GANG Tonight
I meant to blog about this earlier but have been so busy (especially this time of year -- I'm one of those wierdos that likes to dress up the front yard for Halloween).
-
SRT's ActiveRecord Coding Sprint (and a "gotcha" to watch out for)
After our open house, a few of SRT's consultants stayed to have a little Coding Sprint with Castle -- specifically, ActiveRecord.
-
SRT Open House
We had our open house last night to show off our new office space to friends, clients, co-workers and family. Lots of people showed up, even our 36-weeks pregnant Microsoft DE Jenifer Marsman -- what a trooper! A fun time was had by all and the food was just about all gone in the end. Here's a few pictures:
-
Halo 3 Pre-Launch Party
I attended the Halo 3 Pre-Launch Party on Monday. It was fun a lot of fun. XBox 360's set up all over the place with Halo 3, PGR 3 and Forza Motorsports 2 -- and lots of good food and company! I signed up for the tournament even though I'm not that good. About 95% of my FPS experience has been on a PC, with a mouse and keyboard (DOOM, Quake, Half-Life, etc...). My brother-in-law got me Halo 2 for the XBOX for Xmas a couple of years ago. I played it a little bit, but I just couldn't transition from the fluidity of a mouse to the "stiffness" of a joystick.
-
Halo 3 Pre-Launch Party @ Microsoft!
Thanks to Microsoft for the invite to the Halo 3 Pre-Launch event. Everyone is talking about this. I get the opportunity to play a little Halo 3 while other people are sitting in long lines waiting for the clock to turn to 12:01am! Too cool. I spent a few minutes and created a little "I'll be there" tag. Feel free to copy/swipe/modify/abuse as you see fit!
-
A Good Time At GANG!
Last night was our monthly GANG meeting and we had local DE Jennifer Marsman giving a talk on Windows Workflow (WF). It was a great talked and we had really good turnout. Here's some pictures!
-
Where are things heading?
Since I've got about zero hours of experience using AJAX and haven't done a "serious" ASP.NET app in over a year, I found Joel Sposky's latest post pretty interesting. It'll be fun to see how all of this stuff plays out...
-
More Windows Workflow (WF) Goodness!
Local Developer Evangelist Jennifer Marsman will be presenting at GANG tomorrow on Windows Workflow. Here's the abstract:
-
Mike Wood's WF Presentation
I was at SRT's offices for their first "major" (as in more than 5 attendees) hosted event last Wednesday. The Ann Arbor .NET Developers Group had Mike Wood in town to give a talk on Windows Workflow (WF). The presentation was awesome and opened up my eyes to WF. I saw an immediate benefit to some work I'm doing at a current client. But, alas, it is not meant to be. This client still runs Windows 2000 on the majority of their machines so .NET 3.x is out of the question (for now).
-
SRT's New Offices
Bill Wagner talks about why we finally got some office space. I've got some pictures here that I took when I visited our new offices for last weeks AADND meeting. The office space is really nice and I wished I lived closer so I could visit more often. It just doesn't make sense to commute for 70 - 80 minutes (one way). That's a lot of billable time lost! However, I plan on being there from time to time for special events and other things that SRT will be hosting.
-
The Beauty Is In The Simplicity
This is so simple, it's beautiful. A very elegant way of dealing with Enums.
-
Change Is Constant
I thought that once school started, I'd be able to get caught up on blogging since the kids would be at school most of the day. But since then, work has gotten busier and my evenings are packed with after-school activities and sports...
-
Anonymous methods and Control.Invoke
I saw an interesting question posted in one of the Microsoft newsgroups today. I'll paraphrase here:
-
The next Day of .NET
It's scheduled! October 20th has been picked for the next Day of .NET. Here's the scoop:
-
Thanks for the tip Nino!
I wanted to do a little research on using SQL Server Compact Edition (SSCE) today. I downloaded it and installed it. No problem. I then downloaded the SSCE tools for Visual Studio 2005 SP1. I tried to install these and was greeted with a most unpleasant message:
-
Saving Color values
Here's an interesting thread on saving Color values to a database as integers. The original poster was having issues going back and forth between the Color structure and the database integers. In the end, it turns out .NET has a class designed to help you out in this scenario: The ColorTranslator class. Check it out if you run into this type of situation.
-
Julie Lerman coming to town!
I just found out that Julie Lerman will be speaking here in Michigan at our local .NET User Group on Wednesday, July 18th! She'll be giving us an overview of Microsoft's ADO.NET Entity Framework. I've heard so many good things about Julie's presentations and I can't wait to see it.
-
New version of Windows Live Writer
From Robert Scoble's blog, I see Microsoft has released Beta 2 of Windows Live Writer (which I'm now using for this post). I've been using this tool since September 2006 and really like it.
-
My Presentation Last Night
I should have blogged about this sooner but I've been so busy lately. Compuware hosted an IT Exchange Forum last night at their headquarters in Detroit, Michigan. I was contacted by Compuware's Mary Johnson as a possible speaker. After trading emails and getting the details, I had the date open and told her I could present. The night went great!
-
Tablet PC Day 2: Installing...
I spent some time this morning installing software on my new tablet -- then I had to get to work (you know -- "billable" work -- the stuff that pays the bills). I think I'll be able to switch to the tablet full time in about a week.
-
Tablet PC Day 1: Blogging in Ink.
-
The updates begin...
So my new Lenovo X60 tablet is here and I'm stoked!! I played around with the pen functionality for just a few minutes. It's docked now in the UltraBase downloading a ton of updates (Updated 22 of 43...). Yikes -- this is grueling...
-
50 More Miles
It shipped!! According to UPS tracking, my new Lenovo X60 Tablet is only 50 miles away from me. Scheduled delivery date is this Monday the 26th. As (bad) luck would have it, I'll be at a client site most of the day. Must be patient...
-
GottaBeMobile.com
Dennis Rice from GottaBeMobile.com commented on my choosing the Lenovo X60. While Dennis doesn't know me, I'm familiar with his work as GottaBeMobile and its InkShows have been a big part of my research into the Tablet PC world. I read a number of positive reviews on the X60 (they're easy to find), but seeing Warner Crocker and Dennis Rice actually using the X60 and showing its features was really nice.
-
So Excited!
After months of research, the time was right. Lenovo was having a nice St. Patrick's Day sale on their notebooks, my wife's old 866mhz P3 was showing its age and my 4 1/2 year-old Thinkpad (while still working fine) was just too slow to be useful for any development.
-
Congratulations Darrell!
I linked to this in my last post but I wanted to officially congradulate fellow SRT-consultant Darrell Hawley on being elected the new VP of Marketing for INETA NorAm. Darrell was the original secretary for GANG when it first started and is now Program Chair of the Ann Arbor .NET Developers group. I know he'll do an excellect job in his latest position. Congratulations Darrell!
-
Introduction to Windows Communication Foundation
At this month's GANG meeting, we'll have Darrell Hawley (new VP of Marketing for INETA NorAm) giving us an introduction to WCF -- Windows Communication Foundation. He's going to get into the Where, Why and How to use WCF in your .NET 3.0 applications. If you're in the area, stop by for some free pizza and a great talk!
-
Day of .NET
-
Local Type Inference, Anonymous Types, and var
Bill Wagner explains a bit about C# 3.0's local type inference:
-
Day of .NET Pushed Back 1 Week
Jason Follas announced that Day of .NET in Ann Arbor, MI will be pushed back one week to May 5, 2007. The University of Michigan (also in Ann Arbor) is holding commencements at the same time as Day of .NET. Consequently, a hotel room for visiting speakers/attendees is nigh impossible to find.
-
Do not use timers that prevent power state changes
Ran into an interesting FXCop rule today: Do not use timers that prevent power state changes. According to the rule description:
-
Reflector 5.0 is out.
Just saw this on Jason Bock's blog. Lutz Roeder has released version 5.0 of Reflector. And getting it is so easy: Just launch your current version of Reflector (I assume you already have it!), go to the Help menu and select "Check for Updates". It will download, install and re-start!
-
Feeling queasy about lambdas?
If the new C# 3.0 "=> operator makes you feel uneasy, check out Dustin Campbell's post where he gently introduces you to lambdas by taking a simple C# 2.0 algorithm using anonymous methods and converts it to lambdas in C# 3.0.
-
Using the StrongNameIdentityPermissionAttribute
In a recent thread on the .NET newsgroups, someone asked how they could create a "utility" assembly, but they only wanted their applications to be able to use the assembly. I couldn't think of a good way, but Dave Sexton replied with an interesting little gem on the StrongNameIdentityPermissionAttribute. After reading his response I made myself a little "to do" item to implement his idea and post some sample code.
-
Day of .NET in Ann Arbor, MI - 2007
This year's Day or .NET is scheduled for Saturday, April 28th 2007 at Washtenaw Community College in Ann Arbor, Michigan. This all day event is organized by developers for developers. The event is FREE ($0, no cost!) to all of those interested in .NET development!
-
A Generics Command Pattern Implementation
At this weeks GANG meeting, Martin Shoemaker will be presenting "Do, Undo, Redo, Do Over: A Generics Command Pattern Implementation". He's going to use generics to build simple yet powerful implementation of the Command Pattern. You won't want to miss this if you're in the area.
-
COM Interop does NOT like uninitialized arrays!
I've created a simple reproduction case highlighting a problem I recently had with COM interop. I've got a VB6 app using a .NET 2.0 component exposed to COM. The component in this sample is pretty simple:
-
Using Generics To See If A List Is Ordered.
I had some pretty simple code that checked if an array of integers was in ascending order. I needed to check a second list to see if it was also in ascending order. The only problem was that is was an array of doubles. The logic is identical for both lists. The only difference is the type of data acted on. This is where generics shine!
-
Would Zune 2.0 pack a phone?
From CNET News:
-
Close your web connections too!
In an earlier post, I had talked about a Windows service I was working on. This service periodically performs an HTTP GET request to check if a device that accepts incoming HTTP requests is still working. It was pretty simple to perform the GET with .NET -- something I'm sure many of you have done hundreds of times before.
-
Using ILMerge on Compact Framework Applications
Neil Cowburn has a very interesting post on using ILMerge with Compact Framework apps. It seems that, by default, ILMerge always uses the .NET Framework Assemblies. Neil talks about the targetplatform and platformdirectory command-line arguments that can be used to tell ILMerge to use the proper assemblies (the Compact Framework Assemblies in this case).
-
Windows Service stops updating event log
I've got a small project that involves a windows service. The service is still in the development stages so I'm using the Application event log to keep track of what it's doing. There's a lot of messages that get sent to the log right now (and yes, I know there's better ways to log but for this work, the EventLog is quick and easy).
-
SVN and BerkeleyDB.
In my post on setting up Subversion, I had written to use FSFS as your repository type because "I've been told the Berkeley DB version is a little buggy". I have no experience using BerkeleyDB with SVN (or BerkeleyDB by itself) so I was going on information I had heard.
-
Setting up Subversion
As noted in a previous post, I'm now using Subversion (SVN) for source code control of my mobile blogging app (along with a couple of other projects sitting on my hard drive). Here's a quick "how to" on getting Subversion running under Windows XP with VS.NET integration.
-
My First Amazon Order
After reading Steve Makofsky's post about his first Amazon order, I checked out my order history. To make it interesting, here's the first three books I purchased at Amazon:
-
Codemash: Off with the hair!
Alexey Govorin posted a comment about the shaving of Josh Holmes and Brian Prince at Codemash. Alexey has posted a video so you can see them keep their promise of shaving their heads! Thanks Alexey!
-
Update on Mobile Blogging App
Although Keith Elder recommended I put my mobile blogging app up on CodePlex, I'm going to hold off on that for a while. Here's why:
-
Claiming my blog on Technorati
As part of getting better exposure of my blog, I'm updating it more often (January has already been better than any month in all of 2006), I'm also "claiming my blog" on Technorati. As part of this process, I need to post a special link on my blog.
-
Codemash: Putting a face to the name
Thanks Keith Elder -- I made it on his "Who's Who at CodeMash" list. Scroll all the way to the bottom and you'll see me slouching in my chair. I also made a brief appearance in his Zune Squirt Video with Jason Follas -- I'm the guy sitting behind Keith unpacking my lunch and getting ready to feed my face... :)
-
The iPhone. I don't get it...
Thursday night, after the first day of Codemash sessions, I was sitting around with fellow SRT consultants Alex Gheith, John Hopkins, co-founder Bill Wagner and Microsoft DE Jennifer Marsman. The subject of the iPhone came up. My response -- "I don't get it". Steve Jobs is a master at marketing and getting people "pumped up". We all agreed that the iPhone has some interesting capabilities (like automatically switching between portrait and landscape modes when you flip the phone or turning speaker-phone on and off when it detects it's proximity to you). But as a whole, it's not a revolutionary device. According to Apple's website, the iPhone is a combination of three devices:
-
Codemash: Follow up
Ok -- back home and back blogging on a regular keyboard again!
-
Codemash: Summary on Scott's Keynote
Fantastic!
LINQ is really cool. I've read about it a little bit, but after today's keynote I'm going to download the CTP.
How will DBA's accept LINQ? Will they accept some "tool" generating the complex queries that can be easily built with LINQ? What about DBA's that require all DB access to go through a stored proc?
It will be interesting to see how all this plays out. -
Codemash: Scott Guthrie Keynote
Scott Guthrie is about to give his keynote on LINQ. I'm excited! So far, Codemash has been a very enjoyable experience.
Josh Holmes just made a reference to Codemash 2008! Can't wait! -
Codemash: A crowd gathers around Dustin Campbell
Dustin Campbell is showing off DevExpress' tools. He's got quite a crowd gathered! And these people are missing out on free food so it must be good stuff!
-
Codemash: End of the white board?
Christopher Gant is fielding questions on SCCM with Subversion. He's got a tablet PC and is marking up his slides with ink as he explains branching, merging and versioning. How elegant. No worries about having a whiteboard available, having pens/eraser, etc...
Most presentation facilities have some sort of video projection equipment. Not all have a whiteboard. Sure, you can do the same thing with a mouse, but using the stylus on a tablet is so much more intuitive. -
Codemash: "You will respect my unit tests!"
Ben Carey is talking about TDD and is using Southpark characters in some of his slides! It got my attention!
-
Codemash: Bruce Eckle Keynote
As I finish lunch (sitting with Keith Elder and Jason Follas), I'm listening to Bruce Eckle talk about why we should get together in this type of format (i.e. Codemash) when much of this information is already available on the web.
Great pictures from Bruce's recent trip to Burning Man. He's talking about early assumptions when designing software -- and how they're usually wrong! -
Codemash: Josh Holmes' Appointment for a Shave
Microsoft AE Josh Holmes has agreed to shave his head onstage at the end of Codemash if we get 500 blog posts about Codemash (as counted by Techboratii).
Get blogging! :) -
Codemash: Keith Elder & Smart Clients
Keith Elder had to wait for a video cable before starting his presentation, but the wait was worth it! His slide deck and demos on Smart Clients was awesome. I think I'll be attending his second session where he's going to get more in-depth on the technology.
-
Codemash: Blogging
By the way, I left the laptop in my room. All of my Codemash blogging is being done from my Samsung i730 and my PPC blogging app.
-
Codemash: Keynote
Great keynote by Neal Ford. He talked about Domain Specific Languages and how we as developers can use these to increase our communication with business analysts.
Off to a Smart Client session. -
First Official Post
This is the first post from my new PocketPC blogging app -- last night was from the emulator.
I've got a few options for URL inserting (Weblogs.asp.net) and setting styles. -
Test Post
A test post for my new PocketPC blogging utility. We'll see how well it works if this actually gets posted!
-
Blogging in the car.
Test post using Diarist. And no, I'm not doing this while driving!
Updated: 1/15/07 11:18:30 PM -
Women, Beer and C#
I'm a simple man so I couldn't think of any way to mix these three (especially since I've cut back on beer consumption as it can aggravate my heart arrhythmia). However, local blogger David Redding (VP of the Ann Arbor .NET Developers) has found one. And to top that, he's even weaved it into a wonderful tutorial on C#'s "yield return" feature. Check it out!
-
Documenting Private Methods
At my current contract, I've done three brand new applications from scratch and have been involved in modifying a couple of others. Every developer has their own coding style and it can be sometimes difficult to come up to speed on how someone else has decided to code a particular application. What I've found myself doing more and more is documenting (using XML comments) the private methods of these apps I need to modify. When I find a method and the name isn't descriptive (to me) as to what it is doing, I jump to it, review the code to see what it's doing and then add an XML comment for the method. The next I run into a call to this method, Intellisense will pop up my summary description and I won't need to leave my current spot. This gets me up to speed quicker on how the app is architected and makes it quicker for me to do my modifications.
-
New Thumbdrive
Yeah, I know. These days, new thumbdrives are about as exciting as a new tank of gas. But I thought it was kind of cool since it's coming from the company I'm subcontracting with, SRT Solutions! SRT is going to have a booth at CodeMash next week and I'll probably be there from time to time. Stop by and say "Hi" if you get a chance.
-
CodeMash Attendee Google Group Created!
I just got an email regarding next weeks CodeMash:
-
My Copy Arrived!
Today, I received my copy of Windows Developer Power Tools. It was a "thank you" for contributing to the book (<shamelessplug>I wrote an ILDASM section for Chapter 16.</shamelessplug>). Thank you to Jim Holmes for inviting me to contribute to this project. It was fun and I really enjoyed it!
-
CCW's and Duplicate Names
I had a short project during the Christmas/New Year's break. I had to create some CCW's (COM Callable Wrappers) for a client that wanted to replace some existing COM objects with new .NET objects. The requirement was that the existing COM clients (built with early-binding) would not need recompiling. They have a product that allows their customers to write their own extensions. So requiring hundreds of clients to recompile all of their extensions was something they wanted to avoid.
-
Mike Calligro from the Windows Mobile Team blog
After getting my new phone in November, I started searching all over for information about mobile development. I ran across the Windows Mobile Team Blog and was fascinated by the articles written by Mike Calligro (or "MikeCal" as displayed on the blog). I read one and had to read his next, and next, etc... With titles like "The Emporer Has No Close" and "Paging Dr. RAM", how could you go wrong? The articles are a fun and entertaining look into the mobile form factor and the issues Microsoft has worked on for many years.
-
Making IE7 more palatable
I switched to Firefox about 8 months ago. That was after using Firefox and IE6 together for a month or two to determine if I liked Firefox. I haven't used IE6 much since then.