Developing For .NET

Real World .NET Methods, Tricks, and Examples

Archive for the 'Rants and Raves' Category

Rants and Raves #6

Have you ever had a problem you couldn’t complain about?  Me too.  I have been so busy I haven’t had much time to post.  Between working like mad on a new project at work, learning several new technologies, traveling to Nashville for my first DevLink 2009, and a super-secret side project I’ve just been too swamped to post.

And I can’t complain: being this busy is a good thing, especially in this economy.

Rants

nHibernate – first crack

I was finally given the impetus to learn nHibernate, which I had heard about but never tried.  I’ve always assumed that cool kid tools like these are not for me since I am currently married to the AS/400 as a database.  I found at this past weekend, though, that I can in fact connect to the AS/400 using nHibernate, so I could finally have a decent OR/M tool for our database.  Getting rid of straight ADO.NET would be a dream come true!

Back at work this week, one of the first things I wanted to dive into was of course nHibernate, so I downloaded the code and began following the example touted on the nForge site.  The article is long and seemingly thorough, but it suffers from some serious organizational flaws. As I worked through it, my experience was decidedly different than the article suggested, although I was able to get it working with the help of the comments thread and a lot of Binging.

My biggest issue was the apparently recent requirement for adding a “proxyfactory.factory_class” xml element in the hibernate.cfg.xml file.  After doing so, you’ll find that you require a reference to NHibernate.ByteCode.LinFu.dll, which was not included in the SharedLibs list in the article.  After that, you’ll discover that you also require a reference to LinFu.DynamicProxy.dll, also not included in the SharedLibs list.  You can find both of these in the nHibernate subdirectory Required_For_LazyLoading/LinFu. (This can be altered to use Castle or Spring, both of which are included in the download).

I know I’m picking on one article, but if it is your go to “Hello World” demo, I expect it to be more refined.  Not to mention, it shows a lot but explains little.  I think it is especially difficult for someone with very little Unit Testing experience. There is going to be a lot of work ahead to grok the application, but so far it seems worthwhile.  Now I just need to get it hooked into my AS/400 and see if I can do some real work.

Raves

DevLink 2009

My list of “must-attend” Community Events is growing at a rapid pace, a little too rapid based on how busy I am, but what’s a geek to do?

This event was a little different than usual: my community buddy Kevin Griffin and I took our wives along to Nashville.  We had a great time, usually the two of us at conference and the two of them out sight-seeing.  I did get to go to the Gibson Showcase, where they make all the Gibson Mandolins, and the Country Music Hall of Fame.  My trip ended on a bit of a sour note: our family van of 10 years passed away and we had to get a rental for the ride home.

But the event was great!  As always, Open Spaces rocked, and I also saw some great presentations, which leads me to my next rave…

Shawn Wildermuth

Today is a first for Rants and Raves: I am raving about an individual person.

If you are remotely interested in Silverlight you’ve probably heard of Shawn Wildermuth.  C# MVP, INETA Speaker, Silverlight Insider, author, speaker, teacher, and much more: Shawn is a Tour de Force when it comes to Silverlight.

Fortunately for me, he was not only present at DevLink, but he sat in on my Open Space session about Silverlight.  I really appreciated the chance to discuss Silverlight up close and personal, and he gave me some great ideas for moving forward with my project. 

I then got to see his presentation called “Silverlight + MVVM = Easy”.  Meeting Shawn and learning at the foot of the master was the highlight of the trip for me (followed closely by getting to play a $25,000 Gibson F-5 Distressed Master Model” mandolin!)

I really admire that he is so involved in the community and that he freely shares his knowledge and skills. Thanks Shawn!

1 comment

Rants and Raves #2

Wow, it’s been a busy few weeks since the last Rants and Raves: Silverlight Firestarter DC, CHODOTNET, RVNUG, and CodeStock (not to mention two Craft shows!)

Rants

Microsoft Certification Exam

Along the way I have also been studying for my very first Microsoft Certification Exam, 70-536 “Microsoft .NET Framework – Application Development Foundation”. I am pursuing my Microsoft Certified Technology Specialist (MCTS) and this is the core exam for all Microsoft Visual Studio and Microsoft .NET Framework technologies tracks.  If you want to prove to yourself just how little you know, try studying for this exam.  I realized a couple of weeks ago that I would be fortunate to pass, and I was right: unfortunately I was not so fortunate.

I realize that failing Cert exams is nothing new, and in all honesty I think my 669 was a respectable first go.  My Rant is not that I failed the test, but rather the nature of the tests and the focus of this particular one.  I am bound by NDA not to discuss the contents of the exam, but I will say that I was completely unprepared for how irrelevant and out of date the contents were: (hey MS, .NET 1.1 called and wants its questions back).

I will, however, discuss the format.  My biggest Rant is the amount of memorization.  MS has given us a fantastic IDE, Visual Studio, with an unparelled feature: Intellisense.  I’ve become so accustomed to it that I almost can’t code without it, and it’s all Microsoft’s fault.  That being said, why am I expected now to memorize available methods and signatures? Test my core knowledge, absolutely, but perhaps you could do so in more of a real world environment.

Speaking of not very real world, the Test center itself left something to be desired. While the environment wasn’t great, the worst part was the actual exam software.  I don’t think it has been updated in quite some time: the UI is classic “Developer Art”. This was aggravated by the fact that the monitor I had was so large that I had to move the mouse a half acre to click a button.  It was functional, but far from pleasant.  Then again, perhaps that’s the idea.  Mostly I’m just disappointed: the UI was as out of date as the questions.

So maybe I sound like the nerd in class who wants to argue his teacher up to a higher grade, but really I’m OK with my score if this is the kind of stuff being tested.  I’ll take it again (and maybe again), but I will pass and move on to something near and dear to my heart: Microsoft .NET Framewor 3.5, Windows Presentation Foundation Application Development.

I Hate My Cell Phone

I have a Verizon PN-820 flip phone.  My phone before was a Palm Treo 700W, which I loved.  I switched to this POS last time our plan expired because I wanted the Internet Tethering feature.  While I have used it a few times, I have not needed it nearly as much as I thought I would, so it hs largely been a waste of money.  I miss the QWERTY keyboard, the better Calendar and Contacts.  My friends are sick of hearing it, although it provides a certain level of entertainment when they see me tweeting on my flip phone.  All I can say is “7777-222-777-33-9 999-666-88″ (with love, of course!)

While I am happy to provide laughter for all involved, I eagerly await the day I can get a new phone, hopefully in the next couple of months.  Now comes the dilemma: my company has Verizon, and the coverage is excellent, but I want an iPhone, which means switching to AT&T.  I’ve heard that Verizon is in talks with Apple to also have the iPhone, but I’m sure that will not happen before my time of choosing arrives.

Verizon has some interesting phone options, like the enV-3, Samsung Omnia (5MP Camera!), and Blackberries Storm, Curve, and Tour.  While I want an iPhone, I’m leaning towards a BlackBerry.  Not wishing to start a Holy War or anything, but I could use some feedback on this one, so leave your comments below.

Raves

CodeStock 2009

Over the last few years I have become a huge fan of our Developer Community, and I love going to events.  Last weekend I had the pleasure of attending CodeStock 2009.  This was a great 2 day event with almost 400 people registered.  The speakers and topics were excellent, as was the food and SWAG.  I want to commend the organizers for putting on a top notch event.

By far, my favorite part of these events has become Open Spaces.  In short, the attendees create the agenda and hold unprepared meetings about their chosen topic.  Discussions are open and vibrant, not to mention completely unpredictable.  Some people contribute, some just listen, but everyone learns, and they do so in an atmosphere of complete openness.  If you haven’t experienced this format yet, then I encourage you to search it out.  More and more Code Camps and larger events, like DevLink in August, are hosting Open Spaces.  As I told Alan Stevens, an Open Space champion and organizer, they have become my primary reason for attending such events.

Our .NET Community

If you are reading this and wondering what all this Community stuff is about, let me say this: it’s about YOU.  We are very fortunate to have such a passionate group of developers: all over the country there are User Groups, Code Camps, Developer Conferences, Geek Dinners, Roadshows, and much more.  Microsoft is certainly part of the community, but it wouldn’t exist without the volunteers who organize it and the developers who attend the events.  And the one trait I’ve found to be universal is a desire and willingness to share knowledge with others.

This is where you come in: if you have never gone to a User Group, or a Code Camp, or a Developer Conference, I challenge you to find one and attend.  Give it a chance: it could change the Developer you are into the Developer you could be.  Not to mention, it’s always a blast!

Until next time, Happy Coding!

2 comments

New Vista Machine follow up

I let VS2008 finish installing last night while I was at home. I got in this morning, and the system had done an automatic update. It loaded a ton of updates from Microsoft, some were Vista specific but most were not. I was able to confirm that VS2008 installed just fine and I have spent the rest of the morning installing other software.

My experience today has been much different than yesterday. Everything seems to be sailing along: I’ve installed a number of applications, configured some network connections, a printer, installed FireFox and extensions, and did some other configuration. All in all I have nothing to complain about: it seems the Windows Update did a lot of good for this machine.

I’ll probably spend the rest of the day setting up some other goodies, and at lunch time I am picking up my new 22″ Widescreen LCD monitor. After that, I have some SPROC development to do. I promise I’ll be getting to LINQ soon.

No comments

New ThinkPad T61 with Vista Business

My new laptop arrived today. I’ve been playing with it for a few hours now and thought I would share my initial reactions with you.

This is a Core Duo 2.2Ghz processor with 3GB of RAM. It has a 15.4″ widescreen LCD display, which is gorgeous. My favorite feature so far is the integrated fingerprint reader: logging in is super easy and secure. But software installation is shocklingly slow. It only took an hour or so to get the initial Vista install configured, but everything after that has been less than optimum.

I was so excited by my new machine that I went to Staples at lunch time and picked up a new Logitech wireless mouse and keyboard. I bought a docking station with this laptop for the office, one goal of which is to switch back to a regular mouse, keyboard, and monitor. The keyboard part is largely to restore my hands, which hurt quite a bit after working day in and day out on a laptop keyboard. Of course, I know I could have used a regular keyboard with my old laptop, but I found that it pushed the screen to far away. With the new display, that is not an issue. I’m also hoping to use both the built in LCD and an external 22″ widescreen monitor, which should give me loads of space for Visual Studio and related tools. Anyway, I connected my new mouse and keyboard (I haven’t bought the monitor yet) via the USB connector and they worked immediately. I did not even need to push the device “Connect” buttons.

After that, it was time to start installing software. First, I tried to install IBM’s iSeries Access for Windows, V5R4. This was the first task for the CD drive, and it sounded like a rocket ship taking off. It got about half way through the install, whirring, buzzing, and scraping all the while, and then it just quit. I tried to bring up Task Maanger, but it would not show itself. Finally, I popped the disc out and reset it. I don’t think I had it seated all the way although it seemed fine. I resumed the setup and the noises were gone. At the end of setup, I received a “Updating software, please wait” message that never went away. Eventually, I succeeded in bringing up the Task Manager and the process showed running but 0% CPU. I ended it, thinking the install failed, but it appears to have worked.

I closed Task Manager, but in my shortcut tray there were now 2 task manager icons that would not go away, and clicking on either did not reactivate the Task Manager. Sigh. I decided a reboot was in order.

Except the machine would not reboot. I tried restart, log off, and shut down. I tried them from the Start menu and from Task Manager. Each responded to the mouse click yet accomplished nothing. Finally, I did the old push and hold the power button technique to get the machine to shut off. When I brought it back up, I received no errors or warnings about a previous incorrect shutdown.

While it was coming back up, I hit the Google Highway and found that this is a fairly typical problem: the USB devices connected to the machine were preventing it from shutting down. Now, the only two devices connected are my printer and the Mouse and Keyboard connector mentioned above. According to the complaints I found on the web, the Mouse was most likely the culprit and the solution was to update the drivers. Now, I’ve used Logitech accessories for about 7 years, and I’ve never been a fan of their software. I just want a stinking mouse and keyboard that work, I don’t need to use them to program my dishwasher. The last few times I’ve installed their products I have been able to forego installing their software, but this time I figured I’d better do it if I want to be able to shut down my machine, so I did.

The good news is that installing “Logitech SetPoint 3.3a” seems to have solved the problem. After the install I was able to restart from the Start menu just fine. The bad news was that it took almost 15 minutes to install.

I have a stack of other software to install, including of course our erstwhile Visual Studio 2008 and Expression Blend Preview 2. I’ll let you know how these go as well.

Update:

Xara Xtreme, an awesome (and inexpensive) vector based graphics tool installed no problem and took less than 5 minutes.

New problem: I can’t get to the Network. It appears that Norton Internet Security, which came preloaded and is active on this machine, is preventing me from seeing my network. I’m investigating this problem now, but I can’t get on with the installs until I can get to the network path where they are stored.

Update 2:

OK, annoying, but I basically had to disable the Norton Personal Firewall, at which point the network location I was seeking became visible. I established a connection and the system offered to remember the password, which I said yes to. Then, the Fingerprint reader asked me to verify who I was with a swipe of a digit. Way cool! Anyway, it’s off to VS2008 next.

Update 3:

New problem: I am using Microsoft’s Virtual CDRom Control Panel to mount the VS2008 ISO files to a local drive. When I execute the program, it denies access to the needed files. I found in Vista you can right-click and Run the application as Administrator, which worked. I was able to install the driver and mount the file to a local drive letter. The problem now is that the Computer window will not show or find the mounted drive letter. I guess I’ll either need a different emulator or to try and find a Vista update for Virtual CDRom.

Update 4:

OK, I found a freeware utility called Virtual CloneDrive that appears to work on Vista. I was able to install it and mount the ISO file to a drive. Immediately, the Autorun.exe started (which never worked on Virtual CDRom XP for me) and I began installing VS2008. It is 3.5 GB (after I removed C++ and Crystal Reports), so it might be a while. I’m going to let it run and head home. I’ll check in tomorrow.

3 comments

MSDN Notes from a first time subscriber.

If you’ve been following my journey, you’ll know that Monday morning, after 4 years as a .NET developer, I finally subscribed to MSDN. I did so in anticipation of the release of Visual Studio 2008, which occurred Monday afternoon. Needless to say, I was very excited by all this. My excitement began to dwindle though, the longer I had to wait to get confirmation of my MSDN subscription.

Finally, Tuesday afternoon, I was able to get confirmation over the phone and received my Subscriber Benefits Number (the magic number that lets you in to all of MSDN’s goodies). Oh, and I still haven’t received any kind of email notification that the process has been completed, so if I hadn’t gotten impatient and called I’d still be waiting.

So yesterday afternoon I began the VS2008 RTM download. It is 3.31 GB, so it will naturally take a long time to download. When I left to go home, it was about 30% finished. I figured that it would finish downloading, and that this morning I would be knee-deep into installation. Unfortunately, at 2.01 GB, the Download Manager experienced a fatal error. I could not resume the download and had to restart it again from scratch this morning. I feel like Charlie Brown when Lucy pulls the football up on him at the last second. Good Grief!

OK, so I’m just full of complaints today:

  • It seems I have to reenter my Live password every 3-4 pages. I’ve reenterred it at least three times in the last 40 minutes (and that is with the “Remember my userid and password” box checkd on the login page.
  • One time when I reentered the login, I was sent to a “Session expired page” and had to log in AGAIN.
  • I like the MSDN interface better than the MSDN Subscriber interface, it would be nice if they standardized the two.

OK, so I’m just nitpicking this morning because I’m frustrated. I really hope I can finish this download today so I can play over the holiday! (Sheesh, now I’m rhyming. Time to quit for now…)

No comments