Long Live VB!!! or not?

Ok, first a disclaimer: I’m a Microsoft MVP with a competency in Visual Basic.

Normally I would not give this much thought, I’ve always favored VB (I started using it back when it was in version 3) over all other languages and thought very little of the debates that went on online comparing it to other languages.

Even when I read columns like this one, I felt nothing of it. ‘VB will prevail’ I used to tell myself, after all, no sane company in its right mind would alienate its ‘largest group of developers’. I still think so.

However, when I am asked to ‘consider’ switching over to C# by my company, and specifically my boss and friend, who he himself is a former VB MVP, a few different thought-storms are brewing in my mind.

But probably the most important question is: how did this happen?

That is when I decided to write this blog. The fact of the matter is, there are many reasons for this to happen. The migration of developers from other platforms, J2EE for example, find a more familiar face in C#. VB6ers NOT migrating to the .Net world is another factor. And perhaps, the mere fact that VB is dumbed the hobbyists language of choice (after all, it is the most downloaded setup of Microsoft’s ‘express’ editions) is yet another reason why ‘professionals’ are migrating.

But perhaps most importantly is universities worldwide offering C# as the development language of choice (or any semicolon language for that matter).

All the rest, is merely the chain reaction set in motion. C# books becoming more popular and better selling. C# developers becoming more desirable and thus paid better. Resources for C# are becoming much more available than for VB. And now Microsoft, the company that popularized the language, are treating it as a second-class citizen.

I don’t mind becoming ‘multilingual’, but I’ve grown to love and respect VB throughout the years, and I won’t go down without a fight! In my opinion, VB is and will remain the ‘easiest’ most efficient language to develop applications in; plus I don’t think it is fair. Bill Gates: help!!

Anyway I’ll take C#, with a grain of salt.

What do you think?


Search Command Ribbon for Office 2007

Don’t know about you, but personally I love Office 2007. Despite what I hear and read about it, it is much easier than its predecessor (which ultimately means it is more efficient).

Having said that, the number one problem users new to Office 2007 face is the ‘ribbon’. To them, everything’s NOT where they used to have it and that actually reduces efficiency.

Therefore, the guys at OfficeLabs (online at http://www.officelabs.com, BTW powered by SharePoint) have come up with what they think would be the solution to some of their troubles; the search command ribbon.

What this does, is allow you to search for whatever command you’re looking for and the search result will actually be displayed in the ribbon itself.

A picture is worth a thousand words:

Search Command Ribbon

Search Command Ribbon with Results

Remember, if you decide to download and install this, you should bear in mind that Microsoft will be gathering information with regards to your usage, and you can NOT disable this.

IMHO we ‘developers’ should be doing more with regards to integrating solutions into Office using the new ‘VSTO’ (Visual Studio Tools for Office). Right?

Visual Basic Power Packs 2.0

Line and Shape controls, PrintForm component, and Printer Compatibility LibraryMicrosoft Visual Basic 2005 Power Packs 2.0 includes a new set of Line and Shape controls and updated versions of the two previously released Visual Basic 2005 Power Packs, the PrintForm Component and the Printer Compatibility Library. All three are now included in a single assembly making them even easier to use and redistribute with your application.


Partnership: Microsoft & Facebook

Hey, all you Facebook fans out there, Microsoft and Facebook have launched a partnership and Microsoft has released a ‘Facebook Developer Toolkit’ which allows you to create applications for Facebook using Microsoft Popfly and Visual Studio Express.

You can even create a Windows Forms application that connects to Facebook using Facebook’s API!! Now that I like!



Microsoft releases: VS2008 Beta 2, .Net Framework 3.5 Beta 2 and SilverLight 1.0 RC

New releases from Microsoft for all you developers out there:

Happy downloading!


A developer’s best friend is…

Two years ago, my friend, mentor, manager and fellow MVP Omar Shraim and I were on a Whidbey (now Visual Studio 2005) and Yukon (now SQL Server 2005) ‘Train-the-Trainer’ course in Paris, France.

And I can remember our trainer for the Yukon course was ‘Richard Hundhausen,’ an MVP and an RD, who gave us a few tips from ‘real life’ so-to-speak about development in the ‘real world’. And, according to him, ‘a developer’s best friend is Google’.

Well, not particularily Google, but back then your best choice for online searching was, in fact, Google. Things have changed since then.

The moral of this blog is not to try to debate which search engine is best, but to show developers out there the light of way. When developing applications and stuck on the best way (or any way) to write a particular piece of code, don’t bang your head against the wall and attempt to read every book there is on the shelf (you can use that as a last resort).

Literally, almost everything, related to software development or otherwise, is available on the internet. All you have to do, is search. I say this from experience. Never underestimate the power of ‘internet search’.

Now, the next time you face a problem, any problem, ‘Google it!’ or best still ‘Live it!’

Quickie: MSDN Nuggets

‘Don’t have the time to read a 10-page how-to article or watch a full length webcast? Try an MSDN Nugget, a webcast that takes you step-by-step to discovering new functionality or exploring a hot developer topic, all in 10-15 minutes. View them online now or download for later reference.’


Live.com: Search Dot Net

I just came back from Friday prayer, my kids are out with their Aunt (probably at McDonald’s), my wife’s in the kitchen prepping something up for lunch, so I have the study room all to myself. I went in, and instead of firing up my laptop, I logged on to my desktop, which I don’t usually log on to because my kids have it monopolized.

I fired up IE7 and was about to go check how Spider-man 3 did in the box office, when I was sort of taken aback by the home page; www.live.com. Its been a while since I’d done any searching on Live (yes, I confess, I usually search on Google; I’m sorry :-)). So, for the sake of humanity, I decided to go ahead and give it a try.

Being a self-centered geek, and an MVP, I decided to search for ‘Bashar Lulu’, and boy was I amazed by the results. Not by the number of hits, as many as they were, but by the organization, the relevance, the readability and the fact that I could actually use this as a reference. These are things I could never have done a while ago, because I saw Live as lacking, frail and simply un-usable. The results where out of order (by relevance, or importance), the engine itself seemed buggy; not any more.

Mind you, I’m not saying that Live is perfect, or that it is better than Google, I’m just saying that its getting better, much better.

Now, let me continue my story. One of the search results took me here; a list of Visual Basic MVP blogs. Yes, my name was there, and a few names down, was Dan Appleman’s. I’ve always been a fan of Dan’s, back from the days of VB5 and his book on the Windows API. Under his name was a link to his blog which I immediately clicked on.

To cut a long story short, it was on Dan’s blog that I learned about SearhDotNet a search site for .Net developers. Based on Google’s custom search facility (which allows you to create your own search engine), SearchDotNet gives .Net developers information relevant to .Net only.

Dan puts it as: ‘Many typical developer search terms (like “cryptography” or “Url”) apply to many technologies, not just .NET. When I search for cryptography, I don’t want to know how to do it in PHP, nor am I interested in the latest government policies on the topic. I want to know how it works in .NET.’

Not only that, but Dan also allows users to suggest ‘inclusion criteria‘ where we can suggest what sites to add to the search results.

My kids are back, they want the PC, got to go!


XML Notepad 2007

From an online download website: ‘Microsoft XML NotePad 2007 assists developers in creating XML applications. It allows authors to rapidly build and edit small sets of XML data as a test bed during the development of XML-based applications.

With XML Notepad, you can create XML document prototypes quickly, easily, and in an iterative fashion, using familiar metaphors. XML Notepad offers an intuitive and simple user interface that graphically represents the tree structure of XML data.

Working with the standard building blocks of XML (Elements, Attributes and Text), authors are able to create reproducible data structures that can be easily filled. It also includes XMLDiff to visually compare the differences between 2 two XML files.’

Download here!

Read more here:

Visual Basic Power Packs

Ever since it introduced Visual Basic .Net some six years ago, Microsoft has been striving to have developers jump the VB6 wagon and onto the .Net one. Being a VB6er myself I can sympathize with all those who still find it difficult to do so.

Migrating VB6 code to VB .Net is at best, a helluva task. Especially if you were like me, everything in one EXE file. No DLLs, no business logic and no stored procedures. In other words no logical architecture of any kind. All SQL statements where adhoc (inline SQL statements) which means amongst other things poor performance and almost no security whatsoever.

I started with VB3 as an amateur and things kinda evolved from there. Proper solution design was not something to look for in an application. Does it work? Does it do the job? Performance and security came in at a distant second.

The truth of the matter lies in realizing that VB .Net is NOT the same language as VB6. It looks the same, tastes the same but isn’t the same at all. In my opinion it is, almost always, best to rewrite the entire application. But that is not always feasible. Some of these applications have been years in the making, with literally thousands and thousands of man hours in the making.

Microsoft realizes that and have therefore introduced the ‘Visual Basic Power Packs’, later herein VBPP. Officially ‘Power Packs are free Add-Ins, Controls, Components, and Tools for you to use with Visual Basic 2005 to make developing great applications even easier.’ In simple English, they’re new tools to ease the transition from VB6 to .Net. To sort of, phase in the transition. To create a familiar environment for VB6ers, one that was alienated by Visual Studio 2002 and 2003.

VBPP includes the ‘Microsoft Interop Forms Toolkit’ which allows you to open .Net forms in VB6 applications, thus ‘instead of upgrading the entire code base, (VB6) applications can now be extended one form at a time’. VBPP also includes the ‘Microsoft Printer Compatibility Library’ which ‘allows projects that used the Printer and Printers Collection in Visual Basic 6.0 to be upgraded without having to re-write your printing logic’.

Now, Microsoft will also bring the ‘Data Repeater Control’ to VBPP which ‘is similar to DataRepeater control found in Visual Basic 6.0 but it’s even simpler to use because you do not need create a UserControl first. All you do is simply drag and drop your dataset to the Repeater control and the designer will generate the controls for you’.

And ‘Line and Shape Controls’ with which you can ‘add graphics to your Windows Form at design time just like you did in Visual Basic 6.0’. You can vote on which of these you’d like to see first.

Find out more about Visual Basic Power Packs here http://msdn2.microsoft.com/en-us/vbasic/aa701257.aspx.