traveling on the job and my life’s shortest flight

Last week I had the opportunity to travel to Chicago and Wisconsin for National Instruments’ LabVIEW Developer Education Days. This is basically an event that NI holds throughout the country in several different locations to spread awareness of a few new features in the LabVIEW environment and how users may use it. There are two tracks–an intermediate track and an advanced track. This is usually an event put together by the regional sales staff, and they usually fly out an R&D Engineer to head up the advanced track sessions. This is not only because R&D works on the features being demonstrated on a day-to-day basis, but because it offers an awesome opportunity for R&D to see how customers actually react to their product.

So, I was flown in to Chicago on Monday morning as part of this effort. On Monday I met one of our customers in the Chicago area, DMC, and had an opportunity to see what sorts of things they are working on. I also gave a short presentation and demo of the feature I’ve been working on, which is basically the ability to add third party licensing & activation to users developing extensions to LabVIEW.

Tuesday was the first developer education day, in Chicago, hosted at Harper College. Harper is a community college but it had a pretty large campus. In fact, they even had a lake! Their convention center was very slick, and had an amphitheater. Anyhow, the developer day itself went pretty well. In the morning, I presented Graphical Scripting, which is a LabVIEW feature that allows users to generate LabVIEW code from LabVIEW programs. This may not make a lot of sense, and unfortunately I cannot think of any analogies outside of the programming domain. Think of it as similar to writing Java code that generates Java code. This basically allows you to automate certain repetitive code patterns.

The afternoon session that I presented was on Advanced Control and PID. I will confess that this is not a topic that I am very familiar with, but the presentation gave me the opportunity to learn about the topic. As software engineers (especially a new one like myself), I don’t really have the opportunity of seeing a real world usage of LabVIEW. The control presentation and a few chats with the attendees afterwards showed me how LabVIEW users use the various parts of the LabVIEW system in their work. It was pretty cool.

After the event on Tuesday, we packed up and shipped our presentation materials to Milwaukee. Ended up having dinner at an Asian restaurant near our hotel (I think it was called Big Bowl or something like that). Since there was nothing else to really do, we ended up catching a movie at a nearby theater–She’s Out Of My League. It was a pretty funny movie… not on the level of The Hangover or Hot Tub Time Machine, though!

On Wednesday, unfortunately the customer visit I had scheduled got cancelled. In the morning I went with the Chicago sales engineers to a company called EcoloCap, which has apparently been developing a high-efficiency, low-cost, environmentally-friendly fuel called “M-Fuel”. They have a bunch of information published, if anyone wants to read more about it. In the afternoon, I visited the public section of Fermi Particle Acceleration Lab. Fermi can be considered as the precursor to CERN. It was a pretty interesting outlook, and gave me an idea as to how NI technology can be used in big physics. Unfortunately, we had no visits scheduled there so I couldn’t get a deeper understanding of how everything worked.

We then drove to Milwaukee (or maybe it was a place called Waukesha… I don’t know) where our Wisconsin Dev Day was going to be held. Luckily we could set up at any time (at Chicago we had to set up at 6:30am on the day of the conference). After checking into our rooms, we waited for all the sales engineers to arrive before setting up. It did not take that long to set up, luckily. We rounded the day off by having dinner at a nearby seafood grill. The food was quite delicious!

Thursday followed much of the same schedule as the Tuesday Developer Day. The turnout was a bit smaller, but higher than the normal Milwaukee Dev Day, I was told. Nothing spectacular/unique to report on that day. After the event we packed up, said good bye to the Chicago sales engineers and relaxed for most of the rest of the evening (except for dinner, of course).

Friday, the last day of my trip, featured three customer visits. I visited Dyne Systems in the morning, FasTek over lunch and Soliton after lunch. Each of the three customers gave me an idea of what they did with their products and with NI technology and then I gave them a short presentation and demo of how the feature I was working on could help them make some moolah. After all that was done, I was dropped off at the Milwaukee General airport (MKE), where I took the shortest flight of my life.

The flight was between Milwaukee and Chicago O’Hare. Our plane left the ground at 4:07pm and touched down at O’Hare at 4:25pm. An 18 minute flight. I don’t want to think about how much that cost! Unfortunately, the wait at Chicago was a little more than 3 hours. I spent the time in one of the restaurants where I had a leisurely-paced dinner with a couple of beers while watching some baseball. Probably the only baseball I’ll watch all year!

I touched down in Austin at around 10:30pm and got a SuperShuttle pretty quickly (which is weird, kinda, usually the wait is around 20 minutes). Got back home at around 11:15pm and was very tired but ended up watching the Tuesday episode of Lost. Still have to catch up with HIMYM, Modern Family and 24, though.

Anyways, after two back-to-back 9-hour sleeping nights, I feel good again! Unfortunately for my health, the NBA Playoffs began this weekend which means 20 hours of basketball (a quadruple-header each day)!

karma?

Filed under: technology — Tags: , , , , , , , , , , , , — sohum on October 25, 2009 at 11:10 pm

I’ve been riding the Microsoft high for the last week or so, so it was only fair that they would let me down and really screw up. Oh well, thankfully I’m not a Microsoft fanboy, so I will go ahead and call them out on their faults.

This story has to do with the Windows Installer framework and how poorly it is designed. On or around October 14th, Microsoft released a “critical security patch” that fixed SQL Server 2005–KB970892. Great… I always keep my patches up to date–or try to–so I went ahead and downloaded it. I didn’t actively do it, of course, since Windows Update takes care of all that. Unfortunately, the update was poorly designed and kept failing. All the time. Every time I opened my start menu, the little “Updates will be installed on shut-down” shield was winking at me. I didn’t realize it was the same update over and over again, and thought that perhaps updates are being triggered by each other, so that different updates are being installed.

However, a visit to the Windows Update page showed that the same KB970892 patch kept failing. With the descriptive error code of “Unknown error”. Awesome. If I had been a lazier, less obsessive person, I would have ignored the problem and let it fix itself. However, I decided to use “teh Google” to help me out. Apparently I wasn’t the only one with the issue. Apparently lots of people were having the problem. Solutions ranged from registry fixes to starting/stopping SQL services to many other random options. All suggested by third parties, since Microsoft didn’t think this was big enough to address. Even on their own damn forums.

The option I chose, that was marked the answer on one particular MSDN forums thread, involved downloading the Microsoft Windows Installer Clean Up utility and getting rid of all the installers for SQL Server products. This seemed like a viable solution since I haven’t and don’t plan to ever use SQL Server, so I set about my business. Now, a word of warning (unfortunately from hindsight). Just because it is called a “Clean Up utility” doesn’t mean that is what it does. I thought “clean up” had to do with cleaning up temporary files and the like that were generated on program installation. In actuality, clean up means to actually delete the installer files for the products you choose. Why anyone would want to do this is something I won’t understand, but why the utility is called clean up is something I’m pissed off about now. Very.

So I went through and removed all the installers for SQL server, inadvertently. I then happened upon a post later in that thread saying that following those steps broke Office. Hmm… interesting. I opened up Microsoft Word and sure enough I was greeted by a flurry of installer dialogs followed by an error message saying that Office wasn’t installed for this user. No Office. Fine… I’ll just repair it, right? Wrong. No repair allowed. Apparently you need to have the installer for SQL server to repair Office. Okay, gah, I’ll just uninstall and reinstall it. With a flashy new computer, the process is going to take 15 minutes tops.

Strike 3, I’m out. I can’t uninstall Office either, using the installer. Apparently to uninstall Office, you need to have the installer for SQL Server 2005. The logic here was beginning to baffle me. How many freaking dependencies did I have to fulfill to remove a freaking program? I Googled and found Microsoft-provided instructions for removing Office 2007 manually. There was an automatic utility I used first that seemed to succeed but I still wasn’t able to install Office since it was apparently still “installed”. But not for me, for some mysterious user that didn’t exist, so I wasn’t able to use it.

I used the manual-manual instructions, finally, and backed up the registry and set about deleting files here, there and everywhere. It took about 30 minutes to do and once I was done, I restarted. And the freaking SQL Server 2005 update was still sitting in Windows update, accompanied by a “Microsoft Office 2007 System Update”. WTF? I just went through and REMOVED MS Office… how the hell could I now be getting an update for it? Nonetheless, I selected both to install and it seemed to… WORK! I restarted my computer and guess what? Failed update… again.

Getting thoroughly annoyed, I decided to try and use System Restore to restore to before I had tried any of these shenanigans. No deuce there, either. Apparently system restore depended on some file that had been removed, and hence kept failing. I was under the impression that system restore files were stored in some alternate location so they could be used to usefully recover from a system “failure”. Apparently, not. So now I’m left with a computer with a mysterious version of Office 2007, an update for a program that doesn’t exist and a major headache.

Microsoft’s installer framework has baffled me. It seems like a ridiculous prerequisite for an installer to depend so heavily on another component such that it cannot even uninstall a program. I mean…. any program I install should be completely uninstallable, right? If I remove ALL Microsoft Office products, it should handle all the dependencies and remove EVERYTHING, not leave things here and there. This is nothing new, of course. If you install Visual Studio 2008 and then the service pack, you cannot actually uninstall the IDE without manually uninstalling the service pack first. And they don’t even tell you that… the uninstaller just goes through a process and then fails with a generic error message. Ridiculous.

Thankfully, I had made a backup of my entire registry before I set about removing any installers. So my plan of action tomorrow will be to restore the entire registry and hope things work from there. Of course, I’m not hopeful, since I have technically removed all the files for the Office installation now, so having the registry recovered is probably going to create a ton of deadlinks. Whooptee doo daaa!

On another note, I started re-watching Lost. I figured if I started now I would be all refreshed by the time the new season rolls around next year.

power to drive

Filed under: life — Tags: , , , , , , — sohum on May 07, 2009 at 1:05 am

Today, I finally achieved my New Year’s goal of obtaining a Texas Driver’s License, approximately 2-3 months after I had originally planned to. Oh well, I will not gripe about the delay as I have finally got it! The ZipCar has stood by as a good friend (although a somewhat expensive one). I was able to pass my road test this morning but had to come back later in the day to complete the license process since the computers at the DPS were down. However, I made it back at around 4pm courtesy of Johanna and the process took only about 10-15 minutes. I was actually surprised by the speed and friendliness of the staff.

The rest of the day was kind of stretched out because of traffic on both the road as well as the KFC where I had dinner. Ended up watching the newest episode of Lost at J&J’s place. I felt kind of meh about it. It seems to be dragging on the story very slowly and the whole time travel past-future nonsense is seriously making my head hurt a bit.

To ease the pain I focused in on the Rockets-Lakers game. Kobe came out fired up and shooting the lights out. The Lakers hit almost 40 points in the first quarter itself but only managed 18 in the second and at half-time the score was tied up at 57-57. Then the second-half blues hit the Rockets (again) and Kobe kept it going in a dirty, rough game with ample help from Gasol’s uncontested shots and Odom’s rebounding. Our defense in the paint has left a bit to be desired, although I suppose that comes from having to defend several long players (Gasol, Bynum, Odom) concurrently. The Rockets ended up losing but they still have the home-court advantage at the moment.

I spent the evening concurrently packing my belongings. I have managed to pack all my old textbooks away (hopefully the first step in the process of selling them off on eBay or Amazon). I also packed up my printer, so hopefully I won’t need anything from that soon… It appears that I do not have that much to pack. Packing clothes will take a long time, obviously, but I cannot really do that immediately. I hope to wake up tomorrow at around 10am and pack the rest of my non-cloth belongings away into my boxes. I have booked the ZipCar at a bit after noon tomorrow (since we have a Baker seniors lunch) and hope to sign up for my room and transfer a fair few boxes, then. It will also be my first time driving alone!

That’s all for now. Going to continue packing (or at least mentally organizing the packing).