Thursday, August 14, 2003

Intelligence, yes you can fake it! 

Although AI was here long before the creation of computers, today it generally falls under the domain of computer science.

Artificial Intelligence interests me more then any thing else in CS. I truly believe that AI exists and is only limited to how we define it. When asked in the class (yup we are studying this at the university) I defined AI as 'The phenomena on which something (man\machine) interacts with its environment learns from it and adapting to it.' For my definition I got an OMG from the teacher and quite a few eye raises from the pupils present in the class. I can't tell you how pleased I was.

So much for the above rant, lets get to the point. Have your ever had a chat with a chat bot? Well I have! I find it rather amusing. Try chatting with HAL (I adore the concept of a-i.com) and ALICE available at alicebot.org (three time Lebonar prize winner), you will soon come to the conclusion that there is a lot of potential of AI in linguistics.

There have been a lot of advances in linguistics and natural speech recognition which all fall under the umbrella of NLP or Natural Language Processing.

At one time I had two tiny chat bots one each for the web and MSN Messenger chatting with other people. I lost interest in the project mid way (unfortunately this is what I usually end up doing) and since then they are lying dead, pushed back to the northwest corner of my hard disk. You can add the IM chat bot raisbot@hotmail.com to your MSN messenger on the hope that it comes alive one day.

Some interesting resources for the developer community will be the .NET IM classes by devhawk.net and the IM API by activebuddy.com.

The one who laughs last, probably made a backup. 

They all talk about making backups. Every one advices you to do it and when you are least expecting it, it happens... , by then its too late to do anything about your lost data (remember: it's no use crying on spilt milk).

It happened to me when my hard disk went down in sparks of glory (I would say two samll puffs of smoke) one beautiful summer day this May. In retrospect I had lost around three years worth of work, hundreds and hundreds of man hours went down the drain. It was terrible, no wait it was tragic, a major castrophy. The loss was undoubtedly enormous and what's ironic is the fact that all this happened when I was about to backup my disk on to some CDs.

I have recovered since. A few back ups on my other pc through the network saved my ass (not to mention a few hundred hours of work) but the majority of the data was lost forever, which probably is floating in outer space as some sort of magnetic energy by now.

Here are a few tips for the people who feel they have some thing important sitting on there hard disks:

- Have a DRP (basically, make a damn backup plan). Use existing backup tools such as the backup utility in windows for your goal.

- Open up the Backup utility (Start> Programs>Accessories> System Tools> Backup). Mark out all the important folders or even a complete partition. Create a backup schedule according to how you update your data to once every day, week or month. You also have the option of choosing between overwriting or incrementing (in the future) to your one large back up file ending with a .bkf extension.

- Run the utility and once your .bkf file is created, copy it on to a network device or (trust me, trust only the expert hands even if it costs some buck) have the data copied onto CDs.

- Lastly! Do it today.... don't even think of leaving a backup job for tommorow...

Note: Backup utility comes with Windows 2000 & above only.

Good luck! With your backups.

Wait Gain… Hair Loss, I am Doomed! 

What keeps me up at nights and dull in the days is hair loss and wait gain respectively, they are growing out of proportions for the past few months.

I have to admit that my face is turning into a skinned football (except for the modern goatee is supports).

The two concerns simply top the list of things which I have complexes and insecurities about. But what can I do… It’s hard to acknowledge, a lot. I figure if I simply start eating less, control what I eat and exercise my problem will end in a reasonable amount of time say six months. I am begining to feel I that I better heed to the advice of my parents and initiate with the mcuh dreaded 10-20 rounds of walking (in the clay tracks) fo the ground kwnon as the ‘hockey ground’ (the ground is used more for picnics then hockey).

Doing all this is not will not be easy for me. So wish me luck in my grand endeavor.

Hookey Ground Here I Come...

Wednesday, August 13, 2003

What .NET Language are you using? 

Surfing my usual way across the web I came to this Interesting survey a couple of months back. I trotted of to it today once again to put its results in here:

The survey asked: What .NET Language are you using?

5255 voters replied…

- C++.NET 3% - 186 Users
- C#.NET 47% - 2510 Users
- VB.NET 43% - 2302 Users
- Jscript.NET 0% - 44 Users
- J#.NET 0% - 39 Users
- Perl.NET 0% - 38 Users
- Cobol.NET 0% - 40 Users
- Other 1% - 96 Users

As expected C# and VB.NET have taken the lead from the other languages… but what’s not so clear is winning margin between the two giants. The survey is live and the trend can turn in any direction… I have my money on the table for C#. Let’s wait and see what happens.

Feel like sharing your vote, be my guest... just visit:

And for all the folks thinking about The .NET Language Paradigm well here it is all clarified in one to the point article by guess who (me!!!).

Tuesday, August 12, 2003

Running default programs in .NET 

The .NET Framework Classes (FCLs) are notorious for reducing heavy duty tasks to a simple one liners. Opening the default program is no exception either. All you have to do is call up System.Diagnostics.Process.Start() and feed the Process.Start() static method with the name of the file (along with it's path) you want to open, incidentally you can even place a link like the famous "http://www.gotdotnet.com" and have it open in the default browser. Use this with the 'Label' control's 'OnClick' event and voila! you have a hyperlink.

A trivial example will be opening a mp3 file in a mp3 player like WINAMP…

System.Diagnostics.Process.Start(@“c:\Linkin Park – In The End.mp3”);
catch(Exception ex)
// whatever you usually do here, e.g. MessageBox.Show(this, ex.ToString());

Monday, August 11, 2003

DNUG Karachi goes LIVE 

Today is a happy day for me. After all the grumpy planning I was able to launch the .NET User Group Karachi… The online extension for the group is at http://groups.msn.com/dnug/. So if you live in Karachi… Just hurry up and register online before our inaugural meet on Saturday, August 16, 2003 at SZABIST, 100 Clifton.

Are you profiling your code? Heh... 

Yawn… The hectic schedule is squeezing the lights out of me. My first Numerical Analysis class was out of the world. The teacher was great and guess what I managed to get half of what he was hard at explaining to the rest of the class.

A point I feel like sharing from the class is ‘Profiling’. So what’s profiling you ask? Well in simple words its making sure that your code is the fastest and tightest it can be... and with profiling, you can immediately see if you talk-the-talk as a good developer and see if your code walks the walk as good code.

In numerical analysis we do this activity to find the best of the best (algorithms with high ‘Onotations’) when subjected to average problem sizes which incidentally falls under the domain of empirical analysis.

You can profile your code using your bare hands and your naked brain but then it might as well take a decent amount of light years to complete your studies. So use them when all available first-class profiling tools fail. First-rate profilers will be the Ants Profiler (which unfortunately is not free, but comes with a 14 day trial) or the build in .NET Profiler that comes packed with VS.NET 2002/03 (Enterprise Edition).

To get your hands on the ants profiler and tutorials visit: http://www.red-gate.com/. A nice little article on Ants Profiling will be ‘Ants in my Pants’ available at: http://tiberi.us/view_article.aspx?article_id=42

And for the .NET Profiler be content with watching a 16 minutes MSDN TV video (free for download) at: http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20030729CLRGN/manifest.xml

This page is powered by Blogger. Isn't yours? Site Meter Creative Commons License