Wednesday, October 24, 2007

Microsoft's Zune: Round 2

Ok for all of you out there who take their music seriously; Zune 2 is out. Yes, and it comes in new sizes, colors, capacities and of course, prices.

Here are a few of the update details for Zune 2 (source: ZuneScene):
  1. Glass: The plastic screen has been replaced with actual glass. On a hardness scale of 1-10 where 10 is a diamond and 1 is an iPod, glass is 5.5. This is a major improvement over the Zune 30.
  2. Video Out: The new Zune 80 will have a video out resolution of 720x576 maximum. This is for TV output and easily beats the original Zune's 320x240 output. The LCD itself is the same 320x240 however. Warning to Zune 4/8 shoppers, there is not video output to TV on those flash memory units.
  3. Smaller: Yes the Zune 2 is much smaller in size this generation. It actually weighs less than the latest 80gb iPod. This weight difference could be and advantage for Tour de France competitors and people who don't like to weigh down the school backpack with hefty devices.
  4. WiFi: Would you like to be the first on the block to sync your player from the car in the driveway? Very 007-ish, Q would be proud.
  5. FM: Most players require an expensive ($49) add on accessory that sticks out the bottom of the player. Built in FM is just smart.
  6. Squircle: The Zune Pad offers both tactile d-pad type control and also touch sensitivity. Have your cake and eat it too.
I'm actually considering one!

Links:
http://www.zune.net/en-US/meetzune/
http://www.zunescene.com/
http://www.news.com/2300-1041_3-6211316.html?tag=ne.gall.rbcs

Tuesday, October 23, 2007

MSDN Roadshow: Gaining Insight Tour 2007

I've just received an email (actually I received the email yesterday but this sounds better) about Microsoft's upcoming MSDN and Technet Roadshow. This is Microsoft's technology promoting tour of the Gulf region. If you've never attended one, this is your chance to do so.

This time their sideline is 'Gaining Insight Tour'. Insight into what? Here's the list:

  • Windows Server 2008
  • SQL Server 2008
  • Visual Studio 2008
  • Silverlight

Plus, there are sessions on:

  • Unified Communications
  • Virtualization, and
  • IIS7

Coming to a theatre near you! Check it out!

Links:
https://profile.microsoft.com/RegSysProfileCenter/wizard.aspx?wizid=e1dcb941-a365-4d4b-8e0f-1c3a8946ecb1&lcid=1033

Saturday, September 22, 2007

Visual Basic Power Packs 2.0

Line and Shape controls, PrintForm component, and Printer Compatibility Library Microsoft 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.
Links:
http://msdn2.microsoft.com/en-us/vbasic/bb735936.aspx

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!

Enjoy!!

Links:
http://msdn2.microsoft.com/en-us/express/bb510381.aspx

Tuesday, August 28, 2007

New Baby Boy: Khaled

It is with great joy and happiness that I announce the birth of my new baby boy, Khaled Bashar Lulu. Weighing in at 2,960grams he is the smallest of my three children.

Wish you and your families a long and prosperous life.

Enjoy!

Wednesday, July 25, 2007

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!'

Sunday, July 22, 2007

Quickie: 10 hiddens gems in SQL 2k5

I know its been so long since I last blogged, but I've been extremely busy. I promise to come back, with a vengeance.

Meanwhile, enjoy this wonderful article Top 10 Hidden Gems in SQL Server 2005, courtesy of my MVP friends Moustafa Arafa and Alirez Aliabadi (who's now in Canada).

Enjoy!!

Links:
http://www.microsoft.com/technet/prodtechnol/sql/bestpractice/gems-top-10.mspx

Monday, June 25, 2007

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.


Links
http://www.microsoft.com/uk/msdn/nuggets/

Wednesday, June 13, 2007

Quickie: Microsoft's XPS

I know its been so long since I've blogged, but I've been really busy, ever since my promotion. :-)

I'm blogging a quickie now, but will come back for a regular, full length, blog through the weekend inshallah.

Now, I was attending a Microsoft Office SharePoint Server class and realized that the instructor, another MVP, did NOT know about (not that it demeans him in any way shape or form, it just shows that not too many people know about it; thus my blog) Microsoft's open file format XPS (short for XML Paper Specifications), which in my opinion competes directly with Adobe's PDF file format.

Microsoft describes it as 'XPS describes electronic paper in a way that can be read by hardware, read by software, and read by humans.'

Unlike Adobe's PDF which opens in Adobe's Acrobat Reader (or other software downloads), XPS documents open in IE.

Developers! You can integrate XPS in your applications. 'Your application can seamlessly integrate with enterprise-wide workflows by implementing XPS publish, import, and view functionality. The Windows SDK and .NET Framework 3.0 provide the APIs to enable you to use XPS technologies in your Windows Presentation Foundation (WPF) application.'

I like!

Links:
http://en.wikipedia.org/wiki/XML_Paper_Specification
http://www.microsoft.com/whdc/xps/default.mspx

Wednesday, May 30, 2007

Senior Information Systems Architect

Oh yeah... I've been promoted: Senior Information Systems Architect. Guess I take after Bill Gates after all. :-)

I have to thank my manager for this, I guess.

I happy!

New Microsoft Technologies

I was sitting at the office earlier today going about my day-to-day business when I received an email from my MVP Lead, that contained one word and a URL. The word was 'WOW' and the URL was http://www.microsoft.com/surface.

I quickly clicked on the link.

At the risk of sounding too much like 'Janus' from 'Friends': Oh... my... God!!! I think the innovation issue for Microsoft has finally paid off. No longer can anybody claim that Microsoft copycats ideas from other technology companies. They can steal ideas from sci-fi films, this time, 'Minority Report'.

This is the outcome of approximately US$7 billion spent every year on research and development.

In other news, Microsoft has introduced an alpha of its new mashup (mashup various stuff from various Web services like Twitter, Flickr, Virtual Earth, etc) service, PopFly, which can help people create websites without writing code.

Now, many companies have introduced similar services, so, not too much innovation here. However, the way you create the mashup visually is pretty impressive. Remember this is all rendered in Silverlight. Check it out, and the screen cast.

BTW PopFly is still in Alpha so not everybody will get a chance to try this.

Enjoy!

Links:
http://www.microsoft.com/surface
http://www.popfly.ms
http://go.microsoft.com/fwlink/?LinkID=91175
http://www.popfly.ms/Overview/

Friday, May 18, 2007

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!

Links:
http://www.live.com
http://msdn2.microsoft.com/en-us/vbasic/ms789067.aspx
http://www.danappleman.com/
http://www.google.com/coop/cse/overview
http://searchdotnet.com/about.aspx#choose

Saturday, May 12, 2007

Ready.... boost!

A little known fact about Windows Vista, is the ReadyBoost feature which allows you to use a USB memory stick (amongst other things) as virtual memory to enhance performance. Yes, you can plug in your memory stick into your USB port on the computer where Vista is installed and you can use the empty on the stick to increase your virtual memory.

According to Matt Ayers Program Manager in the Microsoft Windows Client Performance the 'feature is designed to improve small random I/O for people who lack the expansion slots, money, and or technical expertise to add additional RAM.'

However, there are a few things you have to have in mind before using this feature:
  • Not all USB devices can be used; it has to be fast enough in RANDOM reads and writes.
  • You can only use up to 4GB of flash for ReadyBoost, with a minimum of 256MB.
  • Microsoft recommends a ratio of 2.5:1 flash to system memory for best performance.
  • You CANNOT use a harddisk for ReadyBoost; it simply is NOT fast enough.
  • You CANNOT use your MP3 player.
  • You can only use 1 device per machine.
  • You can any type of device, this includes compatible SD/CF/memory stick/MMC.
  • Microsoft uses 'AES-128 to encrypt everything that (they) write to the device.'

Now, you might think what Vista is doing is putting the paging file onto the flash disk and if the USB device is removed unexpectedly all hell will break loose. Nope, Microsoft simply caches parts of the paging file (for performance purposes ONLY) and if the information is not found, they fall back to the harddisk.

I like!

Read more:
http://blogs.msdn.com/tomarcher/archive/2006/06/02/615199.aspx
http://windowsvistablog.com/blogs/windowsvista/archive/2006/11/20/windows-readyboost.aspx
http://www.microsoft.com/windows/products/windowsvista/features/details/readyboost.mspx

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!
http://www.microsoft.com/downloads/details.aspx?familyid=72d6aa49-787d-4118-ba5f-4f30fe913628&displaylang=en
http://www.snapfiles.com/get/xmlnotepad.html

Read more here:
http://msdn2.microsoft.com/en-us/library/aa905339.aspx

New SQL Server in 2008?

Microsoft is trying to make good on its promise of introducing a new version of SQL Server every two to three years.

SQL Server 'Katmai', which is the upcoming version of SQL Server, promised in 2008, has many new enhancements, including but not limited to the ability 'to handle, store and manage all data types natively rather than converting them into Binary Large Objects (Blobs).'

This sends SQL Server beyond relational data to include 'documents, geographic information and XML.' Which means you 'could search YouTube based on an image rather than keywords, or a shopper wanting a red, V-neck T-shirt could search multiple sites using a scanned image rather than typing a bunch of keywords into a search engine.'

Other new stuff includes 'emphasis on scalability for BI,' while that doesn't say much, it still remains to be seen what else will the new version bring in.

Enjoy!

Resources:
http://www.crn.com/software/199500344
http://www.regdeveloper.co.uk/2007/05/10/microsoft_bi_conference/
http://www.microsoft-watch.com/content/business_applications/katmai_to_anchor_microsoft_bi.html
http://www.microsoft.com/presspass/press/2007/may07/05-09KatmaiPR.mspx
http://www.newsfactor.com/story.xhtml?story_id=52147
http://www.microsoft.com/sql/prodinfo/futureversion/default.mspx

Sunday, May 6, 2007

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.

Enjoy!

Saturday, April 28, 2007

Animator vs. Animation

The same has this popular flash:

http://www.albinoblacksheep.com/flash/animator

Enjoy!

Enter into the Matrix!

A friend of mine was trying to get in contact with me but could not because my phone's battery was dead. I later bumped into him coming back from Friday prayer and as soon as he saw me he said; "Did you see the email I sent you?" and I go; "No, what email?" and he goes: "Well, check your email. I'm expecting your call 8 minutes later." and he gives me a big smile.

In my left hand there is the blue pill...

It turns out he sent me the link for a movie, or a look into the future (by a Google fanatic). It really does feel like I'm in the Matrix! Or the first 10 minutes of the 'Terminator' movie. Anyway, I'll leave you to see for yourself: http://www.albinoblacksheep.com/flash/epic.

You think this is air you're breathing...

Enjoy the movie!

Monday, April 16, 2007

Take Control of Your System

First a personal piece of information: my MVP status has been renewed! Wooohooo! I'm happy :-)

Now for the real stuff; the other day I was trying to uninstall WDS (Windows Desktop Search) and since I did not find the uninstaller in 'Add or Remove Programs' I had to do it manually. I found an entry on the net that explains in detail how to remove WDS and it involved removing the installation folder in the 'Program Files' directory.

When I tried to delete the folder, I could not because it was 'locked'. A quick search online turned up this utility that enables you to unlock ANY folder and subsequently delete it. Lovely tool indeed. It will also give you a list of all locking threads and you can decide which to kill / remove.

On other news, remember a company called Sysinternals? Well, Microsoft acquired the company back in 2006. (You will be redirected to a Microsoft Technet site.) Sysinternals had some extremely wonderful tools that enabled you to monitor literally everything on your computer. You can monitor the entries to your registry (RegMon) in real time! You can monitor your hard disk activity (FileMon). You can monitor the processes running on you computer (Process Explorer); it even shows .Net assemblies and other JIT (just in time) information.

The one I liked most, was Autoruns which allows you to view and switch on or off all the applications that start with Windows. Please note that RegMon and FileMon have been replaced by Process Explorer which, apparently, will do the same job.

Check it out!!

Links:
http://ccollomb.free.fr/unlocker
http://www.sysinternals.com
http://www.microsoft.com/technet/sysinternals/ProcessesAndThreads/Regmon.mspx
http://www.microsoft.com/technet/sysinternals/ProcessesAndThreads/Filemon.mspx
http://www.microsoft.com/technet/sysinternals/ProcessesAndThreads/ProcessExplorer.mspx
http://www.microsoft.com/technet/sysinternals/ProcessesAndThreads/Autoruns.mspx

Wednesday, April 11, 2007

A lesson in Project Management

I've had my fair share of failed projects. Not as little as I'd wanted, but nonetheless, fair. One day, I realized I've had one too many and have since then embarked upon a number of project management courses.

My main area of trouble was properly estimating the timeframe for a project, and then sticking to that timeframe. Seems easy enough, only it ain't. You see, there is a very large number of unforeseen variables, that kinda pop up on you.

First of all, allow me to introduce 2 facts. One: a project is a set of tasks. Two: a successful project is one that is completed on time, within budget and meets the defined specifications / features it was set out to complete. Anything other than that is deemed a failed project.

According to that latter piece of information, almost 75% of all software projects are failures. In fact, according to that fact, all my projects are failures.

Now, when planning for a project, the simplest and perhaps the most important piece of information you should know is that there are 3 pivots to every project; features, timeframe and resources.

  • Features: what is the project set out to complete. In other words 'the scope of the project.'
  • Timeframe: the period of time within which the project should be completed.
  • Resources: the budget within which the project is to be completed and / or the number of people involved.

When communicating with project sponsor (the owner of the project and most importantly who will pay for it) you should say "You have 3 important factors; features, timeframe and resources; pick any two?" What this means, is that if 2 factors are set, the third factor is affected either upwards or downwards.

To explain this better, here's an example. A project has 20 tasks, and must be completed within 3 days. This means that the number of people to work on this project should be increased to 5. The same project, but to be completed in 10 days would require only 2 people.

Another project with 50 tasks, where ONLY 4 people (maybe because of money shortage) can work on, would require 30 days to be completed. Get the drift?

Another issue to take care of is: scope creep. Scope creep is when the number of features / tasks in the project seems to increase as time goes by. This would result in a never ending project, and a sure failure.

One parting piece of information: if you fail to plan, you plan to fail.

Enjoy!

Monday, April 2, 2007

Quickie: SQL 2005 Service Manager

Remember the service manager in SQL 2000. Yes, that nice little icon near the clock in the system tray that showed the status of the SQL Server service. Well, it went missing in the 2005 version of SQL.

Well, some cool dude has created one for SQL Server 2005. I have to say, WOW! It looks absolutely astounding and supports versions 2000 and 2005 of SQL.

Now, this guy is an SQL expert and he's even posted a few articles such as 'SM0 2005 - Populating a list of SQL Servers' which I've always wanted. How cool would it be to add it to your application?!

Enjoy!

Links
http://www.sqldbatips.com/showarticle.asp?ID=46
http://www.sqldbatips.com/showarticle.asp?ID=45

Quickie: Paint .Net

I just received an email telling me about this. Apparently this is a "free image editing and photo manipulation software designed to be used on computers that run Windows. It supports layers, unlimited undo, special effects, and a wide variety of useful and powerful tools."

Download it from www.getpaint.net.

Enjoy!

Sunday, April 1, 2007

Hold on sugar!

Mahed Chand blogged about why he thinks developers should choose C# over VB.Net here. I commented on his blog and am hereby repeating my response here.

I'll cut to the chase. I strongly disagree. I have nothing against C# but VB is still the language of choice.

Here is what I think;

  1. If you are migrating from VB, then migrate to VB.Net. You're still gonna have to learn a lot, but the syntax is still 70% the same. Unlike C# where the syntax is 90% different.
  2. The VB developer environment is at least twice as productive as that of C#. A bit more verbose, but still more productive.
  3. Compiled VB code is smaller than that of C# (even though by a very small margin).
  4. Where I live, VB developers average salary is MUCH higher than that of the C# counterpart.
  5. Both VB and C# can do 99% of what the other can do.
  6. In Orcas (the new Visual Studio from Microsoft, set to be released later this year) VB.Net supports a wider range of Lambda expressions.
  7. More people have downloaded the Express edition of VB than C# (Source: Microsoft at MVP Global Summit).
  8. Your sister site is VB .Net Heaven :-)


Enjoy!

Links
http://www.c-sharpcorner.com/Blogs/BlogDetail.aspx?BlogId=151

Quickie: SQL 2000 with SQL 2005

Here's a quickie; if you need to interoperate two SQL servers, one version 2000 and the other version 2005, then you must ensure that Service Pack 4 is installed on the 2000 version.

Otherwise it won't be able to recognize the other SQL server.

Just thought I'd let you know.

Thanks!

My.Settings

Back in the VB6 days, when creating applications that required specific settings unique to a particular machine (such as screen sizes, fonts or even connection strings), I used to use either an INI file or the registry for storing these settings.

A few days ago, when writing an application on .Net v2, I needed to store similar settings and it had me thinking; should I use an INI file, the registry or even an XML file. The logical answer seemed to be to use an XML. So, I started searching the internet for possible solutions.

For the better part of half-an-hour I went through a number of articles, knowledge bases, forums and blogs and then it struck me. A pure and simple answer on the Microsoft MSDN forums (http://forums.microsoft.com/msdn). Why not use My.Settings?

When using My.Settings, you are actually saving the settings in the app.config file in XML format. Simply double click on 'My Project', select the 'Settings' tab and enter the settings you require for your application. Remember these settings are unique for the local machine and shall NOT be available on any other machine.

Now, when adding new settings, you need to add a name for the setting, which cannot include spaces. You need to select the type, which is the data type. You also need to specify the scope. For this you have 2 settings, either 'User' which means that this setting is a 'read-write' setting, or 'Application' which simply means that this is a 'read-only' setting. You also need to specify a value.

Now, in code, whenever you need to read a particular setting then simply use My.Settings to access the setting value. You can also save a new value to pre-defined setting. Lost? Well, so was I at the beginning; so lets show an example. Lets assume we have 2 settings, named 'Username' and 'Password' (you would NOT usually save the username and password in a settings file; this is only for demonstrational purposes). Lets also assume that we have a textbox called 'tbUsername' and another called 'tbPassword'.

In code, to read the settings into the textboxes you would simply write:

tbUsername.Text = My.Settings.Username
tbPassword.Text = My.Settings.Password

Now, assuming the user changes these and you'd like to store the new values, you'd write:

My.Settings.Username = tbUsername.Text
My.Settings.Password = tbPassword.Text

and then you'd type:

My.Settings.Save()

Read more here and here

Enjoy!

Links
http://msdn2.microsoft.com/en-us/library/saa62613(VS.80).aspx
http://msdn2.microsoft.com/en-us/library/ms379611(vs.80).aspx

Wednesday, March 28, 2007

Back from the dead!

It is amazing how big an effect jet lag has on ones body. Ever since my return from Seattle I've only come around to blogging, today!

Enough said. When I'm coding (and I'm doing a lot of that nowadays) I always have a problem with connection strings. I cannot seem to remember the darn things. A quick search on the Internet later and viola! www.connectionstrings.com. It is amazing how many database servers there are out there (and I thought I knew them all!); what in the world is Mimer SQL?

Anyway, the site also provides connection string information on how to connect to data files such as Excel and FileMaker. Plus other database structures such as Active Directory and Exchange. Cool!

On other news, I was chatting with brother (he's in Jordan) and I mentioned the fact that a friend of mine bought a Zune and an Xbox from the States. And he asks me; what's a Zune? Gasp!!! Whats a Zune!!! My own flesh and blood! Nooooooooooooooooooooo!

For all of you out there who don't know what a Zune is, its the latest ubber hot gizmo from Microsoft that's gonna kick iPods !censored!. Check it out online at www.zune.net

No, really, its got 30GB, comes in 3 colors, black, white and brown(?), has a 3 inch screen for video and pictures and wireless connectivity. Plus its the only one (thus far) that works well with Windows Vista (of course).

Oh yeah, it retails for around US$ 250.

Enjoy!

Friday, March 23, 2007

Parallel Processing?

If any of you is interested in what BillG had to say in the MVP Global Summit in Seattle, here's the transcript.

http://www.microsoft.com/presspass/exec/billg/speeches/2007/03-13MVPSummit.mspx

Now, here's a guy who actually understood what Bill was saying (too rich for my blood).

http://www.theserverside.net/news/thread.tss?thread_id=44714

Read'em and weep!

Friday, March 16, 2007

Farewell Seattle...

This summit has been tremendously successful and lots of fun. I got to meet some wonderful people, Billy Hollis (we had a lengthy but lovely chat over lunch, thank you Billy!!), Shaun Walker (the founder of DotNetNuke) and Sean O'Driscoll (the MVP boss of them all). I also got to establish a connection with the people responsible for VB at Redmond who promised that my voice will be heard; I like!

I'm sad to have to leave Seattle. It is a lovely city. Lost of rain, yeah you heard right, I love the rain. From where I come it rains approximately 5 days a year; while in Seattle it rains 300 days a year. It's not just that, everything seems to be so easy in Seattle, or for that matter, the whole of the United States. And the American people (not the American industry) are so setback, easygoing and relaxed. At one point, I thought I could get away with almost anything. That's a little different from the way it is back home; different culture I guess, but less forgiving, at least initially.

I'll be back soon for more techie data.

Enjoy!

Wednesday, March 14, 2007

I saw Bill Gates!!!

Yep, its true, I saw the man himself. Wild experience to say the least.

Here are a coupla things I found out about Mr. Gates. He watches 24 (the TV series), his hair was not combed when he came in (I just came out of bed not combed), he doesn't laugh out loud, he doesn't grin either. He simply smiles. Kinda confirms the fact that he is mildly autistic and that he is definitely a geek!!

He has a good sense of humor; when asked if he had a favorite product, he started out as saying "you know, I love all my children".

On other news; remember the two guys I told you about that were recording a session on the airplane, turns out they were both MVPs and one of them is called David McMohan. On Monday, as part of our MVP tour, Microsoft took us to the Museum of Flight and Dave, along with his friend Richard, took the opportunity to record a session with us (Loay, Moustafa, Hammad and I). Turns out Dave and Rich run a user group back in England, online at www.nxtgenug.net. You can the recorded podcast at http://www.nxtgenug.net/Podcasts.aspx?PodcastID=28. I start talking approximately 30 minutes in.

I know I sound awful, it's my first podcast, but I hope to improve my skills as I create more and more of them. :-)

Enjoy!

Monday, March 12, 2007

Go Seattle!!

Here are some information I've found out about Seattle:
  • It is home for Microsoft, Boeing, Amazon and Starbucks!!
  • It rains 300 days of every year.
  • Its icon is the 'Space Needle'.
  • It is awfully quiet at night, even downtown.

In other techie news: it took me a while to discover how wonderful a technology AJAX is. I've been reading ScottGu's weblog and have discovered that there are now new "How do I?" vidoes up on the ASP.Net site. Just click this link http://www.asp.net/learn/videos/default.aspx?tabid=63 and enjoy the wonder of video.

Enjoy!

Sunday, March 11, 2007

I'm in Seattle!!

Ok, lets see. I left Kuwait at 9am. 7 hours later I was in Heathrow. Left London at 6pm Kuwait time and more than 10 hours later... I'm in Seattle. After a total of over 18 hours of fly time!!! I'm here to attend the MVP Global Summit 2007.

I am exhausted to say the least. I flew British Airways all the way (supposed to be one of the best), and I have to say this, if this the best the aviation industry can provide, then we have a LOT of work to do. The plane itself was way overcrowded, mind you NOT in first or business class. But the stewardesses, or flight attendants or whatever they call them nowadays are downright rude! British! And I paid good money for that flight!

The exciting part was discovering the MVPs onboard as time went by. Some of them had MVP shirts, some had MVP bags, some had MVP emblems on their laptops and some looked like MVPs! 2 were actually recording an 'Infrastructure Security' (whatever that is) session at the back of the plane.

Seattle weather is wet and a bit on the cold side. The cab driver from the airport said it has been raining for the past coupla days.

I'll keep you posted on the events of the summit as time goes by.

Enjoy!

Saturday, March 3, 2007

The Year of the Mobile!!

That's it! Its official! I'm calling 2007 the year of the mobile!

First Apple announce their upcoming iPhone, then Nokia announces their new E90 Communicator. Then i-mate announces their Ultimate range. And the cherry on top off the cake, Microsoft announces their new Windows Mobile 6.

There's a Windows Mobile 6 Pro Video 1st Look that shows some of the new things in WM6, which I think should be called WM5.5 instead, because the enhancement are NOT worth a major version upgrade (I do, however, think you should upgrade your mobile device should you be given the chance). Here's the unofficial "What's new in Windows Mobile 6".

The things I like most are (in random order):

  • Vista effects: almost everything looks like everything in Vista.
  • Enhanced security: you can encrypt the contents of your storage card.
  • HTML email support: no more that ugly text.
  • Enhanced Office Support: office documents look almost as good as on the pc.
  • Windows update!!!!
  • Internet sharing!!!!
For those developers out there here's the 'What's New for Developers in Windows Mobile 6' and finally another 'Review of Windows Mobile 6 - Codename Crossbow'.

Links (for those of you who like to copy & paste):
Enjoy!!

Thursday, March 1, 2007

Understanding: Interfaces

When creating applications, there sometimes comes the need to use interfaces. An 'interface' is one of the types available in the VB .Net language (and for that matter almost all other OO languages). Interfaces are perhaps one of the most difficult types to explain. Most writeups or articles explain it as a contract; a contract that binds two classes together.

I, on the other hand, prefer to say: Interfaces can be best explained as a 'language'; like English or Arabic. Sometimes classes need to communicate between each other, if written by the same person, that would not be much of a problem. But sometimes these classes are written by a number of different people, probably people from another firm, country and/or continent.

In order to communicate with each other, like us humans (at least those of us who call themselves that :-)) classes need a common language they all speak. This language must be understood by all and follow the same rules and regulations everywhere.

In programming this is called an interface. It is a way of ensuring all related classes speak the same language. For example, if class A wants class B to do a certain task, the only way for class A to insure that class B can do the task, is by checking if class B implements the ICanDoTask (for example) interface.

Unlike inheritance, a class can implement an unlimited number of interfaces.

Perhaps you can understand more if you read this: http://www.vbip.com/books/1861004915/chapter_4915_10.asp.

Enjoy!

Wednesday, February 28, 2007

Vista Speech Recognition

I've always been a fan of speech recognition. I don't really know why though. I'm a touch typist and I don't really need voice recognition to speed things up, so that never was the reason. Something about its sci-fi appeal I guess.

I always wanted to develop speech recognizing applications, but the problem was, the commercial uses for such software has been less than dismal.

Anyway, Microsoft has released a "Windows Vista Speech Recognition Step by Step Guide". In which, Microsoft has detailed such things as how to;

Create, dictate, and save a document
  1. Say "Start Listening."
  2. Say "Open WordPad."
  3. Say "This is a test of speech recognition period." Note:Remember to pronounce punctuation.
  4. To correct mistakes, say "correct" and the word that the computer typed by mistake, and then pick the correct word from the list offered by Speech Recognition, repeat the correct word again. For example, if the computer misrecognized "speech" as "peach," say "correct peach," and then choose the right word from the list, or say the word "speech" again.
  5. To save the document, say "File", then say "Save As."
  6. Say "Test document."
  7. Say "Save."

Nice, real deal sci-fi!

Check it out here, http://technet.microsoft.com/en-us/windowsvista/aa905128.aspx.

Enjoy!

Saturday, February 24, 2007

MVP Global Summit 2007

I am very anxious to be going to the 2007 Global Summit. The Global Summit will take place March 12-15, 2007 in Seattle at the Washington State Convention Center and at Microsoft Corporation’s main campus in Redmond, Washington.

Bill Gates will deliver the keynote!! Yes, I'm gonna meet Bill Gates!!! Very very excited!

I'm gonna do a lot of shopping too. A lot of shopping!

Meanwhile, Virtual PC 2007 is available and it is absolutely free. "Virtual PC 2007 is a powerful software virtualization solution that allows you to run multiple PC-based operating systems simultaneously on one workstation, providing a safety net to maintain compatibility with legacy applications while you migrate to a new operating system."

Check it out here http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx. Download it here.

Enjoy!

Thursday, February 22, 2007

Nokia E90 Communicator

Oh... my... god!!!

That is the first thing that came out my mouth when I saw Nokia's upcoming new communicator. I've always been a sucker for gadgets; I don't go for everything, I have a budget to keep.

My favorite gifts have always been gadgets, any gadget whatsoever. My wife knows this of course, that's why she got me an i-mate JasJam for my birthday last.

Nokia have a very good offering here with a 3.2 mega pixel camera, 3G support and integrated GPS!! Alas, no Windows Mobile.

Check it out http://www.engadget.com/2007/02/12/nokias-e90-communicator-launched/.

Tuesday, February 20, 2007

Geeks 2 - the Return of the Code

It seems the rumors of a major Microsoft event in the Gulf area at the end of March is becoming more and more fact. A speaker at the presumed event has disclosed to a fellow MVP that there is in fact an event on the way.

Here is what else we know about the event;

Title: Geeks 2, Return of the Code
Date: March 27th - 29th, 2007
Location: Dubai, UAE
Venue: Cinestar Complex

Enjoy!

Monday, February 19, 2007

CLS Compliancy

Over time, the number of .Net languages has increased drastically. In addition to the languages provided by Microsoft there is a very large number of new languages being added everyday. Don't believe me, check it out yourself; http://www.dotnetpowered.com/languages.aspx.

Now, each of these languages has its own syntax, and when run on its own will work perfectly well. However, a problem arises when you wish to interoperate between these languages. For example, you might want to write a DLL in Visual Basic .Net (VB) that will be used by some other developer using C#. Sounds simple enough, only its not.

VB is NOT case sensitive (aka case insensitive), therefore, I cannot have two methods that read the same but have different casing; such as SomeMethod and SOMEMETHOD. However, C# is case sensitive and the above example is perfectly OK in C# land. Now, if I were to write a C# class that has these methods, I would NOT be able to use those methods in VB.

Therefore, the need arose for a set of specifications or rules, to govern the way code is written, so that it may be used by all .Net languages; these are called 'Common Language Specifications' or CLS for short. You can all the relevant rules at http://msdn2.microsoft.com/en-us/library/12a7a7h3.aspx.

Code that adheres to these specifications is said to be, CLS Compliant.

Enjoy!!

Friday, February 16, 2007

Vista vs. OS X

The question has been asked again and again, and again. I've read so much about it; in fact, I've seen a coupla videos on You Tube that mock the similarities between the two operating system. In last weeks InfoConnect 2007, I've had people come up to me and ask that, with a 'gotcha' grin on their faces. Is Microsoft imitating OS X; or any other operating system?

To answer this question I refer back to a video I saw a few years ago, of Steve Ballmer, Microsoft's CEO talking to a gathering of over 30,000 Microsoft employees. In the video, Mr. Ballmer came hopping on to the stage and for the better part of 3 minutes, all he did was jump around and shout; developers, developers, developers, developers.

Yes, arguably, Microsoft may have borrowed :-) features from other operating systems, but the main difference here is the humongous support Microsoft provides to its developer community. After all, an operating system is ONLY as good as the number of applications running on it.

The .Net framework is debatably the most widely used development framework in the world; and it is ONLY 6 years old! It is very important to realize that Microsoft has never released a new product or technology before providing developer support earlier. Almost everything in every Microsoft technology is programmable.

As a matter of fact, you can download developer tools, from the Microsoft website, that will enable you to create applications for all versions of the .Net framework, for free. Plus, Microsoft provides every means of developer support thinkable. The documentation is extensive (a Microsoft tradition) and there are at least a gazillion forums online that will provide you with every bit of information you want.

Yes, at face value, both operating systems are similar, but that is the extent of the resemblance.

Thursday, February 15, 2007

Viva Vista!!

I've been a user of Windows Vista ever since its initial beta stages. Being an MVP I had access to bits early on, and I never hid my affection for the operating system. As far as I'm concerned Windows Vista has been enhanced in every aspect and manner I can think of. Everything is new; they maybe named the same, like the Recycle Bin for example, but it somehow isn't the same, at all!

Today, I setup my new machine at work with Windows Vista pre-installed. I never thought it would happen, but I am in love with Vista all-over-again!! What's the difference you say; why the newly hiked enthusiasm? What made this Vista so different from all the others?

I have a simple-one-word-answer for you; hardware. This new PC has a 256MB NVidia graphics card installed, 2 gigs of RAM, over 100 gigs of hard-disk-space and 2GHz processor. With the proper drivers installed this machine rocks!

Everything is working sooooo smooth, it simply takes my breath away. The 3D flipping, Window transparency, sidebar, windows media player, the new start menu and the gazillions and gazillions of new options, settings and preferences you can manage. Even IE7, which I've been skeptic about in the past, works perfectly.

All-in-all, this operating system is here to stay.

Tuesday, February 13, 2007

Kudus for the Data Dude

Visual Studio Team System for Database Professionals (of VSTS DB Pro for short) has been released, according to the February 2007 edition of the MSDN Magazine.

VSTS DB Pro will assist you to "create, manage, or build solutions that connect to SQL Server™."

Here is a number of features that I found GREAT in VSTS DB Pro;
  • Database Versioning: You can have multiple versions of the same database. For example, you can decide to revert to an older version of the database structure if your recent modifications are not up to your standard.
  • Database Comparing: Once you decide to go from a test environment to a production one, VSTS DB Pro will compare the two databases and generate a DDL change script for you.
  • Unit Testing: This is usually used for testing VB and C# code, but is now available for testing all forms of database code, such as "stored procedures, functions, and triggers".
  • Data Generation: As we all know, empty tables are really useless, especially when you have stored procedures that require considerable data. VSTS DB Pro will generate random test data for you based a data generation schema you decide.

Read more here; http://msdn.microsoft.com/msdnmag/issues/07/02/TeamEdition/default.aspx

Enjoy!

Monday, February 12, 2007

AJAX 1.0 Released, Finally!!

Microsoft has finally released AJAX 1.0.

AJAX stands for 'Asynchronous Java And Xml'.

One of the most important things I like about AJAX is the fact that it allows you to refresh a part of your website without having to do a complete postback. This means, for example, that you can have a photo gallery, slideshow through a collection of photos on your hard disk without refreshing the entire site.

Check the website, http://ajax.asp.net/default.aspx and find out more about it.

Enjoy!

Sunday, February 11, 2007

Introducing ILMerge!

Have you ever dreamed of bundling 2, or more, .Net assemblies together into a single .Net assembly. Well, your dream has come true.

Introducing ILMerge, a tool which is officially described as 'ILMerge is a utility for merging multiple .NET assemblies into a single .NET assembly'.

Read more here; http://research.microsoft.com/~mbarnett/ILMerge.aspx and download it here; http://www.microsoft.com/downloads/details.aspx?familyid=22914587-b4ad-4eae-87cf-b14ae6a939b0&mg_id=10095&displaylang=en.

Enjoy!

Friday, February 9, 2007

Speaking Of Vista...

Since Vista is the new buzz nowadays, I guess its important for us to see what new Windows releases are coming our way from Microsoft.

Reading a friends' blog, I came accross this http://jameskyton.wordpress.com/2006/12/29/beyond-windows-vista-fiji-and-vienna/. It seems Microsoft is planning new Windows releases throughout the coming few years. Namely, codenames Fiji and Vienna.

I'm excited, all over again!

Thursday, February 8, 2007

Building Custom Types

When creating applications, I predominately use 'Classes' (sometimes, where appropriate, 'Structures') to model real life problems. However, to set things straight, it is important for everyone to realize that the .Net Framework offers 6 (5 in C#) types to build custom types.

They are in random order; Class, Structure, Enumeration (Enum), Delegate, Interface and Module (not available in C#). All of which, except for the 'Interface', inherit from the Object data type, which is the root type of all types in .Net.

Just a thought for you developers out there.

Wednesday, February 7, 2007

InfoConnect 2007, Kuwait - Part II

A couple of the guys where searching through the internet for links to the Windows Vista launch in InfoConnect and they found pictures of me... online!!!

http://www.flickr.com/photos/farroos/380702789/

Yes, I was there presenting Windows Vista in the Microsoft booth!!

I like!

Tuesday, February 6, 2007

InfoConnect 2007, Kuwait

InfoConnect is Kuwait's version of Gitex (Dubai) or Cebit (Germany). For the better part its a whos-who of IT and telephony in Kuwait. InfoConnect is currently on until the 9th of February.

So, when Microsoft asked me to present Vista to the visitors of their booth, as an MVP, I was ecstatic.

I spent most of yesterday afternoon at the booth. I am AMAZED at the kind of hype Windows Vista has in the market. Everybody wants to know everything about everything about Windows.

Funny thing is, whenever I see the booth with only 2 people, I would simply demonstrate the 3D flipping on the 42-inch display screen and 'viola', people would come storming in!

Will give you more on this later.

Monday, February 5, 2007

My First Post on New Blog

This is my first blog entry on this new blog I've setup.

I'll be importing all my previous blogs from all other sites into this one.

Enjoy!

Big Buzz from Microsoft

If you live in the Arabian Gulf area then you will probably be interested in this. Rumor has it that a colossal event is coming our way from Microsoft "near the end of March". Stay tuned for more soon...

Wednesday, January 3, 2007

Even More MVPs

A couple of my friends just became MVPs. I would like to congratulate them all on their great achievements and wish them the best in their future endeavors.

One word of advice guys, enjoy it as much as you can, you never know what'll happen next year ;-)

Fadi Atteya - MVP Microsoft Office SharePoint
http://www.mywebpart.net

Mohammed AbdulHaleem - MVP Live Communication Server
http://www.everythinglcs.net