VB? WTF? :(
May 17, 2006 12:57 PM   Subscribe

After spending so many years in *nix environments, I need to get up to speed with Microsoft products (specifically vb.net) without losing my sanity.

I'm graduating this weekend with a BS in computer science and am on the prowl for employment. I've been working primarily in a Linux environment for most of my life and was employed as a *nix admin at my university during the entire course of my stay there, dabbling with Microsoft products only when absolutely necessary.

Unfortunately there are very few opportunities for tech work in my area, and I can't immediately jump ship for a number of financial and personal reasons. In other words, I'm looking for just about anything now, hoping that I'll be able to perhaps move and find something more ideal in two years or so. The best prospect I've found so far is an almost exclusively-Microsoft shop. The pay is decent and I know a few of the employees who seem to be pretty happy there, but I was told that if I were hired, one of my first projects would be assisting in porting a pretty large application from VB5(!) to VB.NET. So, I guess I'm going to need to learn pre-and-post .NET VB. There are going to be a few more experienced developers on the project, but I'd like to get up to speed as quickly as possible in order to do my fair share. They're aware of my lack of experience with the environment, but have expressed interest in me anyway.

I'm aware of VB's rather.. lackluster reputation and so I ask you, dear mefites, if you can suggest anything to make this process less painful. What are some good VB/.NET books? Are there any IDEs besides visual studio worth checking out? (currently, I use emacs + gnumake + sometimes ant) What's up with unit testing in a .NET environment? Any other words of wisdom?

I want to make it clear that I'm not totally inexperienced with application development in general, just with VB or pretty much anything else Microsoft. Most of the graphical standalone applications I've had a hand in were Qt based, written in either c++ or one of the higher level languages with qt bindings (python). Thanks!
posted by (lambda (x) x) to Technology (9 answers total) 1 user marked this as a favorite
 
Before you go over to the Dark Side, have you ever considered telecommuting opportunities? I've been doing linux work remotely for 5 years and it has worked out great.

You clearly have the skills to make the jump to M$ if you want to, but the question you have to ask yourself is do you want to. From the tone of your question, I'm not sure you do. If you consider telecommuting, your options for *nix employment should increase.
posted by mcstayinskool at 1:20 PM on May 17, 2006


I've been in a sort of similar position. You're going to start out hating it. The key is to adopt a useful attitude. Instead of hating Microsoft and Microsoft's products realize that there's a whole world out there using them. Yes, it's going to be lame, going from autotools to VS.net, but that's life. I wouldn't go as far as to say that you're going to enjoy it, but exposure to a different sort of environment is a good thing in the long run. Learn all that you can, if worse comes to worst you could always come back to a Microsoft shop with the experience that you'll get. Bottom line, it's won't be too bad.
posted by aeighty at 1:40 PM on May 17, 2006


You might want to get to VB.NET through C# they're practically identical except for syntax, and C# is available on linux via the Mono project.

Anyways, one of your best bets for learning VB.NET would be to pickup a Microsoft Press book (preferably something on their MCSD.NET certification track)

Also, grab Visual Studio Express, it's free.
posted by blue_beetle at 1:44 PM on May 17, 2006 [1 favorite]


Oh, and I wouldn't worry too much about learning VB5/6, if you learn VB.NET you'll be able to figure out most of the old stuff fairly easily on the job.
posted by blue_beetle at 1:46 PM on May 17, 2006


Definitely start with VSE. If you come from a C/C++ background, you'll immediately understand VB. I refer extensively to The Code Project for C# (coming from C++/Java background), and they have a large VB.NET section as well. YMMV.

I have minimal personal experience with VB, but from what I've seen, it's not a bad language, it's just more forgiving of sloppy practices. A well-written VB app should be easily readable.
posted by mkultra at 2:02 PM on May 17, 2006


SharpDevelop is a free IDE, but so is VisualStudioExpress.

mkultra, there are some slight differences between VB.Net and C# (I believe generics are only available to C#), but I think they will disappear over time (e.g., the upcoming VB.Net release and C# 3.0). All the same, C# looks/ feels more like a big boy language. Actually, it just feels like Java, but YMMV.

The one thing I can suggest to make things less painful if you do wind up at an MS shop is to see if you can write your pieces in C# since they all compile down to the same thing. I realize this is completely unlikely at a VB-only shop for someone just out of college, but some (good) places let you pick your own tools and C# is hardly miles away from VB.Net.
posted by yerfatma at 2:56 PM on May 17, 2006


Others have pointed out Visual Studio Express as an IDE. Honestly, VS is a pretty great IDE, I highly recommend delving into it's macro functionality if you ever find it lacking in something. As for unit testing, NUnit is the standard unit testing plugin for Visual Studio, and it's free.

As much as I dislike VB.Net, it's honestly almost the exact same syntax-wise and functionaly as C#, which is pretty similiar to Java (though also pretty different on occasion). I do recommend though that even if you start doing a lot of VB, don't let your C++ skills get too rusty, they're handy to fall back on.

As for learning it, I've got a ton of VB.Net books that I've never looked at (I keep getting them for free), but the best way to learn it, like any language, is to write something in it.
posted by KirTakat at 3:08 PM on May 17, 2006


I need to get up to speed with Microsoft products (specifically vb.net) without losing my sanity.

I am sorry to tell you, but that will not be possible.
posted by StickyCarpet at 8:22 PM on May 17, 2006


Doesn't Vim have a way to talk to Visual Studio? Which could be good if you like Vim...
posted by lhauser at 9:58 PM on May 17, 2006


« Older Does MS Access have Triggers?   |   Want some? Newer »
This thread is closed to new comments.