Try-Catch-FAIL

Failure is inevitable.

The New Year

clock January 5, 2009 02:38 by author Matt

Well, it's Monday, so I guess I am officially back on the job and in the thick of things.  I've been off work for about two and a half weeks, but it doesn't feel like I've been gone at all.  That's probably because of the hectic holidays combined with lots of time spent on my thesis over the break.  As usual, I didn't accomplish nearly as much as I wanted to over my vacation, but I made a nice dent in my thesis, and I managed to catch up on a lot of things that I'd fallen behind on, such as house maintenance (home ownership is for suckers; anyone who says otherwise is a homeowner and is lying to themselves and to you). 

Moving forward, I have set some pretty lofty goals for myself in the new year.  Some aren't tech related, but here are the ones that are:

  • Get the new layout integrated into this blog.  A friend of mine was nice enough to do a sweet layout for this site, but now it's up to me to turn it into a BlogEngine.NET theme. 
  • Learn Silverlight.  I have read quite a bit about Silverlight, but I've yet to write a single line of Silverlight code.  I want to change that in 2009.
  • Learn XNA.  Again, I have read quite a bit on XNA, and I've been in the XNA Creator's Club since it was launched, but I've done almost nothing with XNA.  I really hope I can change that this year.
  • Continue to make three blog posts per week, minimum.  My goal since this blog launched was to make three 'meaningful' posts per week.  I've managed to do pretty well on that (not counting my recent vacation), and I hope to continue the trend in 2009.
  • Write more.  I want to expand beyond just blog posts, perhaps with a couple of Code Project articles or something similar.
  • Maintain a more positive attitude towards work.  I've become pretty negative with regards to my day job if you couldn't tell by the frequent posts on the goings-on here, but I'm really going to try to turn that around this year.  Yeah, this place isn't perfect, but no job is, so I might as well make the best of it.

Got any tech-related new year resolutions?  If so, please share them in the comments.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Having a baby is like a software release...

clock December 5, 2008 02:17 by author Matt

A friend just made me realize that having a baby is exactly like releasing a software product.  It starts by someone else picking an arbitrary release date, then you kind of drift along with unclear requirements for a while (is it a boy or a girl?).  Periodically, the release date gets changed for no apparent reason.  Is it April 20th or isn't it?  Management is just throwing a dart at a calendar, I think.  There are lots of stakeholders that you aren't really sure *why* they are stakeholders (in-laws).  The requirements constantly shift, too.  First, it's just about cleaning out a spare room, then someone decides that the room needs to be pink.  But not that color of pink!  No, this other color of pink.  Hmm, that doesn't look good, so the requirements are augmented, and you now have to add polka dots.  Oh, and by the way, the system has to be a dancer, not a jiu-jitsu champion, even though dancing is a useless feature.  It culminates with a sprint to finish, lots of pain and screaming, and finally the actual deployment.  Unfortunately, there was no time to implement the preference for the cry feature, and someone decided that feature should be enabled by default for some reason, and now you get to spend many days and nights cleaning up all the crap that the deployment causes while repeatedly patching the system (changing diapers).  :D

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Must-have software: VirtualWin

clock November 25, 2008 02:14 by author Matt

If you are like me and have to do a lot of multi-tasking, you may find yourself wishing that you had more room to work.  One thing I've found recently that's really helped is VirtualWin, a virtual desktop manager for Windows.  It's free and open-source and works with both XP and Vista.  To navigate between virtual desktops, you simply hold the Windows key while pressing one of the directional keys.  Right now, I have one desktop where all my test-related stuff is living, another where I'm doing a deployment, and one where I'm doing my development work.  I can shift from my development work over to check on deployment or testing without screwing up my window layout.  My desktop feels less cluttered, which makes me feel more effective.  Anyway, check it out.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Why Microsoft should abandon Internet Explorer and go open source

clock October 1, 2008 09:21 by author Matt

The big news of late is that Microsoft has announced that the open-source jQuery JavaScript library will soon be bundled with .NET and Visual Studio.  More than that, they announced that they would actually support jQuery: if you run into a bug, you can call up Microsoft support just the same as you would for any other .NET bug.  They'll also be providing improved Intellisense support for the library.  This is a brilliant strategy.  Microsoft has taken a great product, adopted it, and provided additional value on top of it.  If only the rest of Microsoft would smarten up and follow that lead...

Let's look at Internet Explorer.  Five years ago, this was by far the dominant browser; there wasn't anything else that was even close.  Fast forward to today, and the landscape has changed: Firefox is steadily chewing up market share, and Google is jumping in to the fight with Chrome.  Why is this happening?  Well, to be blunt, Internet Explorer is an inferior product.  Its rendering engine is buggy, and even the new-and-improved IE 8 is going to come out of the gates with the worst JavaScript performance of any of the contenders.  Mark my words, IE 8 will do nothing to reverse the current trend: Google and Mozilla will continue to gain market share in the browser wars at the expense of Microsoft and Internet Explorer.

So what is Microsoft to do?  In most markets, if your competitor puts out a better product than you, you have only a couple of options: lower your price to make your product more attractive, or build a better product.  Well, you can't go lower than "free", and building a better browser than the competitors is *hard*, especially when you have the baggage of seven previous versions of Internet Explorer.  But in this case, there's actually a third option: take your competitor's product and add value on top of it.  That's what Microsoft is doing with jQuery, and that's what they should be doing with Firefox.  They could put a custom skin on top of it, maybe throw in some add-ons to allow it to switch easily to IE7-mode in order to maintain backwards compatibility, integrate it strongly with Microsoft Live... who knows, but I'm sure they could come up with some cool ways to make the Microsoft version of Firefox a compelling choice. 

Microsoft is in real danger of falling behind on several fronts right now.  Internet Explorer is a mess; Open Office (and their widely-supported formats) are a threat to Microsoft Office; and Linux and Mac OS each have strengths (and weaknesses) that Windows doesn't have.  Instead of trying to compete so fiercely with open-source, why not try to leverage it to build better products?

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Oh great, another browser!

clock September 2, 2008 00:01 by author Matt

I'm super pumped (not really)! Google has decided that designing for two browsers (three if you count Safari, which I don't) simply wasn't enough, so they're going to up the game and release their own browser.  Factoring in the various versions of the dominant browsers, we already have Firefox 2, Firefox 3, Internet Explorer 6, Internet Explorer 7, and Internet Explorer 8, and none of them are anywhere near perfect, so yeah, why not go ahead and throw another turd in the bowl?!? Thanks, Google, for making life even harder for web app builders and web designers.

Sure, some of the announcement sounds cool, like a new super-fast JavaScript engine, but couldn't they build those things without building a brand new browser?  Why not just contribute heavily to making Firefox 3 suck less? 

Currently rated 3.0 by 2 people

  • Currently 3/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Using Windows Live Writer on Windows XP x64

clock August 15, 2008 03:35 by author Matt

It looks like Microsoft, in their infinite wisdom, has decided that the Windows Live suite of tools shouldn’t install on Windows XP x64.  Apparently we don’t need to do things like manage our blogs or something.  Fortunately, there is a way around this: just install the technical preview release.

Brought to you by Windows Live Writer, running on Windows XP x64.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Essential Development "Tools"

clock August 6, 2008 07:17 by author Matt

I've had the unfortunate pleasure of changing out two of my machines in the last week.  First, my trusty Dell Inspiron is being phased out in favor of the lighter, sturdier, sexier VistaMac.  Second, my ancient workstation at my day job is finally being replaced by an HP xw6600 workstation with a quad core Xeon (NICE).  While new toys are great, setting them up and getting them to feel "right" is a challenge.  I've found that to perform at my peak, I need some essential tools, utilities, and other misc. items.  Some of these are not free, but I've found their cost to be way, way more than justified by how much effort they save me.

Development Tools

  1. Visual Studio 2008 - This is a no-brainer.  With this single IDE, I can work on web projects, desktop apps, backend services, client-side JavaScript, XML, and just about everything else that I run into during a "normal" day.  With a few additional addons, you can even work with some of the lesser languages (I'm looking at YOU, PHP! :P).
  2. NUnit - Developing without unit testing is not developing, it's programming.  You don't want to be "just" a programmer.  Unit testing may start out feeling like a hassle, but you will soon realize how much time you're saving by creating solid code the first time.  If you want to benefit even more, try doing actual test driven development.  I've found that I create cleaner, more intuitive, and more concise APIs by driving everything top-down from my tests. 

    One alternative to NUnit is MsTest, but I strongly recommend against it.  It's slower, clunkier, and all-around inferior to NUnit (your mileage my vary).
  3. TestDriven.NET - There are lots of ways to run your NUnit tests, but I've found that TestDriven.NET is the way that works best for me.  I can right-click and run tests on anything from a solution, to a project, to a namespace, to a class, to an individual test case.  It can also run ad-hoc tests and methods, which makes it very handy for testing the output of some obscure base-class library function that isn't documented very well.
  4. Resharper - When they say "Develop with pleasure", they mean it.  The latest version works great with Visual Studio 2008.  It suggests useful ways to improve code as I'm writing, and it makes it very easy to refactor my designs as I'm practicing test-driven development.  If you have never tried Resharper before, you owe it to yourself to give it a go.  If you use it for a week and aren't addicted, you are a stronger man than I am.
  5. TortoiseSVN - Subversion is a very powerful source control system, but source control is only as good as its tools.  Fortunately, Subversion has TortoiseSVN, an excellent shell-integrated tool for managing your local checkouts. 
  6. Notepad++ - A lot of times I need to open a log file or something else that Visual Studio isn't the best fit for.  For these times, I turn to Notepad++. 
  7. SQL Server 2005 Developer - Very few applications these days don't have to deal with a database.  SQL Server 2005 Developer has all the capabilities of the enterprise version of SQL Server, but it is designed for workstation use.  You may be tempted to use SQL Server Express with the Express Manager, but if you ever need to debug a database larger than 4 GB, it will leave you out of luck.

Other Essentials

  1. Launchy - Even with the search box in Windows Vista, I still much prefer the elegance of Launchy.  No matter what I'm doing, I can just hit Alt+Space, type what I want to run or open, and BAM, I'm set.
  2. Foxit Reader - After a format/reinstall, I usually make it without a PDF reader for all of about 15 minutes.  Adobe Acrobat was terrible at its best, and now... well, I don't use it.  Instead, I use the freely available Foxit Reader.  It launches very quickly, it's lightweight, and I've never found anything that Acrobat would do that Foxit won't.
  3. Firefox - I'm really not an Internet Explorer hater, but I hate IE 7. I don't know why opening a new tab takes so much longer than Firefox, but it does.  IE also doesn't have the diversity of plug-ins that Firefox does.  While Firefox 2 was definitely a memory hog and required restarts every few hours if you were hammering it, Firefox 3 is much more solid and much lighter in terms of memory footprint. 
  4. Virtual CloneDrive - ISOs used to be rare outside of the shady world of piracy, but they are everywhere today.  Odds are you will want to mount an ISO at some point (if you have an MSDN subscription, pulling an ISO from subscriber downloads is usually faster than digging through the 50,000 discs you have accumulated).  Virtual CloneDrive is a my favorite virtual CD drive.  The only downside is that it won't work on x64 versions of Windows.
  5. WinRAR - A lot of people swear by WinZip/7-Zip/PowerArchiver/whatever, but for me, I really like WinRAR.  It can open everything I throw at it, and it seems to perform faster than some of its competitors.

Anyone have any essentials that they can't imagine developing without?

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


LogMeIn.com problems with Firefox 3 and Vista

clock August 4, 2008 01:28 by author Matt

I'm not sure who to blame, but after switching to Windows Vista on one of my development workstations, I've been unable to get the Firefox 3 plug-in for LogMeIn.com to work.  No matter how many times I tried to install it, no plug-in files appeared on my computer.  I even tried running Firefox 3 with elevated privileges, but that didn't help. 

So, instead, I manually installed the plug-in by performing these steps:

  1. Download the XPI from https://secure.logmein.com/activex/npRACtrl.xpi.  You may need to use Internet Explorer since Firefox will probably just try to install the plug-in for you.
  2. Extract the XPI to a temporary folder.
  3. Copy the following files to the plugins directory of your Mozilla Firefox folder: unicows.dll, LMIProxyHelper.exe, npRACtrl.dll, ractrlkeyhook.dll.

Enjoy!

Currently rated 5.0 by 2 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


About Matt

I am an overworked (and apparently overpaid) software developer that moonlights as a graduate student in computer science. I started off coding in C over a decade ago.  Since then, I've migrated from C to C++ and branched out to C#, PHP, VB.NET, JavaScript, and worked with a wide assortment of other languages that I hope to never deal with again (I'm looking at you, COBOL). Oh, and yes, I've written some Java.  Does that make me a bad person?

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in  anyway.

© Copyright 2008

Sign in