free html hit counter
Posted on: Tuesday, November 21, 2006 by Rajiv Popat

Skin PowerShell (Monad) to Customize it's Look and Feel

If you feel that typing "Start / Run / Notepad.exe" is faster than clicking on the Notepad icon or if you spend more than 15 minutes on the Command Prompt everyday you probably know a lot about Monad / Powershell by now. I fell in love with this one the day I saw it in it's Pre-Release versions. Of course I didn't see the light instantly, but it grew on me - slowly - over time.

I won't waste a lot of your time posting about the things that can make you fall in love with this tool - for example - the fact that it returns objects instead of strings, or the fact that it could change the world (No kidding!), or the fact that you can access .Net DLLs from within PowerShell. I won't even state the fact (ok, personal opinion :)) for example, that it's way cooler than any Linux console I've ever worked with.

I could write tons of posts on PowerShell because I've been hooked on to it, but then in all probabilities, if you're here (and are still reading this), you're hooked on to it too and you probably know all that stuff already. And if you aren't hooked and you're just the curious type, go ahead, click some of those links I mentioned above and read a little. The learning curve will be a little steep at first but I guarantee that you'll "see the light" soon. Honest!

I can go on and on about Powershell basics, for a very long time. But then, I've been busy, and now I realize that I'm a little late on posting about that. People everywhere have been doing an awesome job at writing about PowerShell and most of the basic stuff anyone wanted to find out about, is already out there.

People have been building Utility Scripts, Powershell Analyzers and some are even developing Sharepoint Providers for PowerShell (neat idea!). But being the stupid guy that I am, for the past couple of months that I've been playing around with PowerShell, there's just one thing that has been pinching me:

"Okay, All this is cool and I get-it, but on a slightly different note, How do I Skin this thing and make it look nice so that I can show-it-off to everyone else while I am working inside a Powerhsell window?"

And then there were others who were asking similar questions. On the Powershell team blog there are remarks like:

"Absolutely no improvement over the ugly looking command window. With the name change if someone in your group maybe can push for tabbed Power shell?"

And the reply is pretty much a shout to the 3rd Parties to build-this-thing that lets you Skin PowerShell:

"We share your pain. We Really do. This just fell into the 'to ship is to choose' category. We designed it so that 3rd parties could do this. (3rd parties - do you see how many people would be interested in a great PowerShell Host?)!"

That's how most of us are - aren't we? We just want to see the Dancing Banana in our Development IDEs! What the IDE or the Product does is just so irrelevant! If it can't show the dancing banana we just aren't happy! :)

And I've been looking for this thing, because this-thing-that-lets-me-customize-PowerShell-Look-and-Feel is something that "has to be developed" by someone! I mean, come on! People have written IDEs for this thing! Somebody must have written something that let's me skin Powershell!

Since Google started crawling this site I'm seeing a jump in visitor counts from around the world which is kind-of interesting and fun. So, If you've landed on this page from Google just because you were looking for a similar answer you're in luck! Yes, it's possible to skin PowerShell and make it look like the way you want it to look like.

Turns out, there is, in-fact an Uber-cool free and open source application that let's you do just that. It's called Console and even though I've used console before, for quite some time, I didn't quite figure out that Console is NOT just a Command Prompt replacement. Console works with Virtually anything - CMD.EXE, Cygwin and a host of other Shells. So basically, there's no reason what-so-ever why it shouldn't work with Monad / Powershell.

Since I like the Mac look so much - Let's make Powershell have some background-transparency so that we can see my Mac'ish wall-paper behind it. Long story short, Let's make Powershell look something like this:

The steps are pretty simple and straight-forward:

  1. Get Console.exe (Don't get the 2.0 "Demo" version because that's WIP and doesn't do much. Get the stable release instead.)
  2. Go to Control Panel / System / Advanced Tab / Environment Variables and create a new variable called "COMSPEC". Set it's Value to "Powershell.exe"  (Assuming you have PowerShell installed already. You can also do this from Console Configuration Files, but this is the easy way).

That's it. You're Done. Start Your Console and it starts up by skinning Powershell instead of the usual command prompt. You should now be able to skin it and theme it using all the rich options Console provides in it's configuration files. And if this isn't enough, go ahead, see if you can have The Dancing Banana in PowerShell! :)

posted on Tuesday, November 21, 2006 11:23:29 AM UTC by Rajiv Popat  #    Comments [2]
Posted on: Sunday, November 12, 2006 by Rajiv Popat

A Different Perspective to Programmer-Poetry

A few months ago, I was presenting in a New Employee Orientation Seminar. I was expected to speak about my professional experiences in past 7+ years of software development and 4+ years of work @ eFORCE. It was the last presentation in a three day program and everyone looked a little tired and bored so I decided to speak about my stupidities in the past 7+ years of software development and 4+ years at eFORCE instead. It was all about all the stupid mistakes I had made in the past 4+ years and what I had learnt from them. It was fun giving that presentation and the audience was great.

During the presentation I asked a few fundamental questions to the audience:

  1. What do you do?
  2. Why do you do it?

Answers like - "I'm a Tester", "I am an Engineer" or "Because it's what my job requires me to do" were not allowed. It's always interesting to hear some other answers. Some of the other answers I've heard are quite interesting. Once you remove the standard answers out, the question becomes as interesting as "Why do people write open source software?" (ok, that post is for some other day :)).

Michael Hunter seems to answer the first question right on his blog title. What does he do? He has been Making Developers Cry since 1995. That's the kind of answer that makes my day! :) Seriously!

People writing / testing / coding / designing and analyzing software today, are here for different reasons. I've discussed this with friends, strangers, colleagues, acquaintances and pretty much anyone who has anything to do with Software, that I've had a chance talk to. What do you do? And Why do you do what you do?

Most answers are interesting. Not all sound as interesting as Hunter's blog line, but I "get them". They make sense. I've been lucky. I have never met a programmer, tester, technical architect, project manager or business analyst who is really sorry that he is, what he is. Most of the ones I've met or talked to, like what they are doing.

Some haven't really thought about it. That's ok. But I've not yet met a software-person who's sorry or apologetic about being a programmer or what-ever he / she is. Maybe it's just because of the place I work at. Maybe it's because our interview process kind-of makes sure you like what you're doing before you get in!

So, long story short - I don't know any programmer who's pathetically sorry about being a programmer and I don't know what it would be like to meet one.

A couple of days ago however, I received this email forward which had been sent by a Senior Engineer I know. This was just a casual forward of a random poem he had found somewhere on the web. It was sent to a dozen other good developers, good testers, good business analysts and other people who were pretty good at what they do. You know, the kind of forwards that you get, and then you forward them to others because you find something in it interesting, funny or casually amusing. Yes I did find it a bit funny which is why I guess it was sent to all of us so that we could get some kick out of it! Here is the poem from the email which was signed by the name of "Author Unkown":

If I could meet the guy who wrote this poem, I would have a lot to say to this "Author Unknown". Here's how it would go:

"Wow! You sound so pathetically helpless, you're almost funny!! Dude! You joined Software Development for all the wrong reasons! Actually, you would have written similar poems for anything else that you might have done in life.

Let's Analyze the above lines a bit, shall we? On one hand you claim that the software world has made you wealthy and on the other you 'need' the money this profession pays you! Even you poem lacks logic, I'm sure your code is no better.

You need to stop everything else and start learning how to code. Now! But I don't think you'll do that, because you don't seem to like anything that requires any form of hard-work anyways. Which kind-of explains why you can't get away and find something else to do.

You're just a good for nothing, confused little cry-baby. But don't worry, if you keep composing contradicting poems like these, which we all find funny, and can forward to each other, we'll all have a charity fund for you so that you can go out and have fun with your honey and not have to work too hard!

On a side-note: I think there are plenty guys in India who could genuinely use that charity fund. So cancel that idea. You don't deserve it, you depressing insect who doesn't even have a name!!" :)

Jokes apart, that just sounds like a mean and controversial thing to say and I'm not a mean person. And of course, there was no way I could meet this "author unknown" guy and fix him like a major bug resulting out of bad design should be fixed. So I decided to pack my objectivism in a box and not even try to think about what I would say to this guy if I could meet him. It was nearing Friday and I had builds to push and work to do!

It was within a few hours, yet another email dropped from in my inbox. Apparently, I was not the only person who had problems with this poem. This was from a mentor, who also happened to be in that list of all people who just happened to have received that email. He had seen the poem, and had hit the reply-to-all button.

His email was a really motivating poem he had composed in a short span of time (I'm not sure if he would be ok, with me posting his poem on my blog. So, I'll just wait till he says it's ok to post it here or till he posts it on his blog or something and then I'll update this post with the text / link or something more about it.)

Okay, now that we had a discussion going, and my build had been pushed, it was time to hit a reply-to-all and post my very own personal version of this poem, which would have otherwise remained in my personal journal. Here's how my poem / email went:

After seeing the poems, this one was mostly composed for my personal journal. But since we have 2 versions of the same poem already – here’s mine. It’s a little long though… I get carried away when I write for myself :)

I start my mornings
Thinking about last night's error-codes and warnings

It's an hour's trip to the workplace.
The streets are like a mad rat race.
But I am happy, a smile on my face
Because last's night bug...
Oh, that was just the database!!

I figured it out!!
I'm a better coder now.
When I see the same bug again,
I'll know the “why” and the “how”.

With 32 new emails, my laptop is finally on.
Good! I say. 32 new battles that can be won.
Time is short; I must pick the wars I fight,
And just like my life, keep my code,
Processes and philosophies light :)

I must manage, I must learn,
Make mistakes, and definitely earn,
No, not money! The money will come!
Let me chase something that's chased by none.

The crazy day moves on, I take a pause.
To look back at the day that "was".
Teachers, Friends and strangers say,
That I should follow their way.

But I took a turn I wanted to take
For No-one else, but my own sake.
I think It was the monitor's light,
Or maybe the curly brackets and the semi-colon’s might :)
But it felt, and still feels like, love at first sight.

With no big degrees and no big college names to write,
I knew it would be a difficult fight,
But why do easy crap, I thought...
I'll simplify and get the difficult stuff right!

Then I snap out of reflections and stop thinking about the past.
It's time to get up and move ahead. Steady, yet fast.
Mustn't think way too much,
Just solve anything, that’s thrown my way, as such!

Give Presentations, Contribute, Argue, Write Blogs, Articles, Code, Document,
Design stuff and be an Analyzer.
The day moves on and I'm just a little wiser.

Its late at night and the street-dogs bark at my car.
As it speeds towards my home that's far,
I wake my family up at midnight,
And on their faces, I see a smiling light.

We laugh, we joke, we eat and talk.
The weekend's near, we’re planning a long walk.

The day finally ends…
With a tired body, a heavy head,
I go to sleep and sleep like the dead.

But the sleep brings me bliss.
Because doing my karma, is what I didn’t forget or miss.
Tomorrow is going to be another day,
And if you've got a thousand new battles for tomorrow…
well, bring them on, my way!

The way the divine and me choose together,
And at times, it’s a little bumpy just like bad weather.
But fighting the bad weather is just a part of the game.
If I did anything else I would go insane.
Little, but Quality time, spent with the ones I Love,
tell me that my efforts aren’t in vain.

(Ok, that was the philosophy part – now, just like life, let’s have some raw objectivism… :))

And then there are guys that say –
“But you work for money and fame”
“Yes”, I say – I bloody well do!
Money, fame and a big fat name,
And I wish anyone, who loves what he does,
just the same! :)

It’s not “just a profession”! It’s who I AM!

And It goes on and on for many more lines… but I think I’ll stop here! At the end of the day it’s all about the perspective :)

Cheers,
Rajiv.

P.S. – I think I’ll blog this! :)

And then I received more than one emails telling me that I should in fact, seriously, blog this.  I’ve seen other poems in the past that are a little depressing, (some of them are even cute or funny in their own way and they mean no harm) but this one was just way too depressing to not criticize blatantly. So, here it is. Officially blogged. My poetic reply, thoughts, views and stand on the so called, Programmer-Poetry from Mr. "Author Unknown" who is nowhere close to being a programmer. Something that would otherwise go to my personal journal, published live.

This poem, which started as a fun-email-forward, helped. Becuase it gave a chance to everyone in the mail trail, to take a pause, and ask themselves the two important questions, which I'm going to ask again, to everyone reading this post.

So, what do you do? Why do you do it? Have an interesting answer? Drop me a comment poem! :)

posted on Sunday, November 12, 2006 5:21:40 PM UTC by Rajiv Popat  #    Comments [4]
Posted on: Saturday, November 4, 2006 by Rajiv Popat

It's a Mac Mac World!

Since the rest of the Software, Hardware (and Nothing-To-Do-With-Both-Hardware-And-Software guys too), seem to be talking about this I thought I might as well chime in and put in my insignificant two cents. This is the picture of my desktop:

A couple of years ago I worked on a Mac for an hour or two. I liked a thing or two about the UI and went searching for utilities and tools that would let me tweak my windows and let me have the parts of the Mac's UI that I liked. I came pretty close to the Mac. Then In a few months I missed my start button. So I changed the skin, tweaked a couple of things, and a little bit of the Windows flavor started showing up again on my Windows desktop which was now looking pretty close to a Mac.

After about two years, the desktop of my work laptop is a perfect Hybrid that looks somewhat like Mac but is 100% PC (running on 100% Windows). For me that's going to stay like that (At-least till Microsoft throws a Vista Release at me. Not running Beta and RC Versions of an OS on my work machine. Just not that adventurous, anyways, I digress... so I'll come back to the point!).

There was a time when Mac Ads used to have a little bit of "something" in them. Remember the "Here's to the crazy ones" Ad? Ok, I'll admit, I never figured out what that Ad had to do with Apple but I kinda liked it. I was always into Microsoft Tools and Technologies so I wasn't going to spend cash on anything which doesn't run Visual Studio (or QuickBasic at that time)! But to an outsider like me, who has nothing to do with the Apple world, Apple looked like it was decent company making good products (that had nothing to do with my life) and good Ads.

Recently, Mac seems to have a sequence of Ads which the entire world seems to be talking about. Why? You have to see them to figure out why. Go ahead, click on that link! But if you just want a quick one line description of these Ads, the most accurate one I've found till now is Rory's comment on his own Blog:

"The ads aren't witty. They aren't clever. They aren't creative... with such a small market share, I suppose they have to be careful with their marketing budget, eh?"

Some of these Ads try to depict that a Mac never crashes. Honestly, I've never used one long enough to figure out the truth, but Greg Riaz shows a Screen shot of the Blue'ish Screen of Death on a Mac.

Rory explains his reactions to this Ads using his Artistic Skills. Hilarious! But Not as funny as some of the other Reactions out there. He says, he's trying to be the "Nice" Rory instead of the "Mean" Rory. He keeps his Artistic Skills objective and makes a perfectly valid point, quite elegantly and humorously. Well, others haven't been as Nice on Apple as Rory and Greg have managed to be.

Take a look at this spoof for instance. I was a little confused about this spoof though, It starts off with Mac being better at PodCasts and PC's being better at Pie-Charts and then turns into a confusing fight between... well, are Pie-Charts more important or Pod-Casts. None-the-less, it's two minutes of completely insane entertainment worth wasting your time and Bandwidth on. And if you have more than 2 minutes, go on, read the comments under the spoof. You might see a couple of Zealots - both from the Apple and the PC side (you'll be able to spot them easily).

Entertaining? Wait, there's more! There's a whole host of spoofs at YouTube. For Example, there's one on Gaming on PC Vs. Gaming on Mac. No Offence to the Linux guys (I was one, almost for a year) but the inclusion of Linux in this spoof is "Sofa King" (to be read very fast, three times over) Hilarious! If you've made it this far you just have to waste some more time and see it to understand what I mean.

So you thought that's the end of it? No way! Follow the links on the Connected Video or just search for 'Mac Ad Spoof' on YouTube and you'll find tons of them. Some of them seem to be as good as the Originals (only much more funnier). In fact, with Linux and BSD in there for the added humor (example: this one), some of them seem to have a bigger Marketing Budget than Apple's Advertisement which just have the Mac and PC. :)

And I'm sure by this time, if you're into humor that's completely void of sense but really funny you would have found some Spoofs like this one. Keep browsing on YouTube. There are more!

In one of his comments Rory remarks:

"They make me embarrassed to be a Mac owner... I've still spent about $10,000 on Macs over the past several years, and these ads have actually strongly negatively impacted my capitalist-driven consumer joy... It's just Apple throwing its own feces at the other side of the fence, and it's ridiculous."

But then, every action has an equal and opposite reaction. And if you want to get some kick out of some of this feces being thrown back into Apple's backyard go visit YouTube and see the spoofs! It's a Mad Mad Mac Mac World!!

And Btw, I'm keeping my slightly Mac'ish Desktop till I move to Vista. Why? Because I like mixing the best of all world when-ever I can. If there's a Mac Zealot somewhere who feels that Mac is better just because I used some UI tools and skins that look like Mac, go ahead, get happy! I won't make a spoof! Honest! :)

posted on Saturday, November 4, 2006 12:01:29 AM UTC by Rajiv Popat  #    Comments [5]
Posted on: Tuesday, October 31, 2006 by Rajiv Popat

Analyze This!

When I first came across Microsoft development Platforms, in the QuickBasic days, I was hooked. Because the tools allowed me to produce results. Single handedly. In a short span of time. I could write proto-types and see things happening.

Even today, my reasons for sticking to Microsoft tools and technologies (and trying to bring developers from the "other side" over to Microsoft tools and technologies :)) remains the same - Productivity.

A couple of days-to-a-week and I can cook up POCs that convey the fundamental vision of a huge module to everyone involved. We can have brain-storming sessions, take notes. They don't like what they see? I can move big chunks around and give them something they want in a matter of hours!

Whiteboard meetings / Conference calls > light weight documentation > quick releases (every month or so) > Feedback (cycle). That's how most Microsoft Developers (me included) love working.

A few days ago, an ex-army officer who is now a HR person in a software development firm, wanted some help on how to do Business Analysis asked for my help. He wanted me to review the detailed Use-Case Documents he had written for an internal project that he was analyzing for his company.

This was his First Attempt at Business Analysis and he had already prepared:

  1. Lengthy Use-Case documents.
  2. Visio Wire-frames that were as detailed as capturing widget level validation!
  3. Detailed Visio Flow Diagrams.

He was a smart individual taking his first steps towards Business Analysis and has asked for genuine advice. It was time to take a pause and have a little bit of discussion. My sole objective was to convince him about a few things:

  1. Writing complicated documents and making complicated diagrams, has nothing to do with "Business Analysis".
  2. Business Analysis is no different then rest of Software Development, where Occam's Razor and Kiss are the only two principals that work. Not Waterfall.
  3. Knowing what you are doing is more important than making really complicated diagrams on what you are doing.
  4. Use simple tools. (Unless of-course, in very rare situations, when you have to use complicated ones!)
  5. The best Analysis and Design tools ever are White boards, PostIt Notes and the Human Brain! :)

Steeve Yegge is his long Rant about agile says:

"Most great software developers around the world don't use Agile. They just work hard, they stay lightweight, and they ship great stuff. Most developers still have no idea what Agile even is. Think of that!"

It's interesting to know that even something as light and flexible as Agile doesn't sound light enough to Steeve. I wonder what he would have to say about Waterfall, RUP and writing a detailed 12 page Login Use-Case document :) Anyways, I digress. On a serious note however, isn't the same statement valid, in practically anything you do in life, including Business Analysis?

Being lightweight in a Software Development firm like wearing casuals at work. In a more mature organization / teams / work-cultures they'll understand. In lesser mature ones - they'll look at you with knitted eye-brows when you walk into office with that black T-shirt and Blue jeans. But that's OK. As long as you keep shipping quality builds on time.

I've always believed in putting some thought into what you're building before you start building it. But, I was never quite a Use-Case document guy myself. So what do I feel about some other techniques of documenting requirements:

  1. White board diagrams? - Definitely!
  2. User stories? - Sure, as long as they don't go more than a couple of paragraph each.
  3. HTML Mockups? - Sure! (As long as someone else makes them based on white board diagrams :)).

Scott W. Ambler makes an interesting point:

"The longer your project team goes without the concrete feedback of working software, the greater the danger that you're modeling things that don't reflect what your stakeholders truly need"

I've heard of projects, in so called Huge Indian Software Consultancy firms, where there are specialized teams for synchronizing Use-Cases with code, Specialized guys for just filing bugs (These are guys who file bugs NOT find them!) and specialized guys for Formatting these Use-Case documents and versioning them. I've heard stories of projects failing in these environments from friends and I am told that when they do fail it's a very ugly process basically focused towards: "We have the documentation and the proof! Let's track down the culprit!"

A friend who works in one such Large Indian Software Development Firm describes their check-in process:

"We're not allowed to check-in code or fire builds. We check-in to a different source control and email the Build Manager. Who reviews our changes and commits them to a QA source control system. A Business Analyst runs those changes and verifies that they confirm to his Use-Cases. Then the tester runs Test-Cases, which are built based on Use-Case documents and does manual testing after which the Build Manager checks our changes into the Primary Source Control System which only he has access to. All changes including caption changes of labels go through this process. We build based on Requirements that have been analyzed carefully!"

I had to quote him on this one. It's been weeks since that discussion with him and even though the words aren't exact, but the idea is precisely that.

Then there are companies where people have one meeting and start writing code. A person I was interviewing explains their Process and how they Analyze Requirements and Develop software:

"Some of us use Visual Studio 2003 while some have moved to Visual Studio 2005. We are all free to choose our own IDE, frameworks and do our thing with code. We have a couple of meetings with the clients... and then we code."

Wow! Both aspects sound equally scary to me. The first one, more often than not, leading to Analysis Paralysis followed by a search-for-the-guilty phase every time something unexpected happens and the second one... let's not even talk about that. 

Walking on the middle path is difficult. You need focus, balance and a team that takes work seriously. At the end of the day, if you really think about it:

  1. Shipping regular weekly builds and having Continuous Integration and letting everyone "see the status" is difficult - Sending weekly status reports in word files is easy.
  2. Shipping a fully functional POC is difficult - Making Use-Case diagrams and Flowcharts (which, most of the time, don't cover all flows) is easy.
  3. Having a white board brainstorming session with the stake holders and managing scope are difficult - Writing a 26 page Use-Case document that confuses your client is easy.

Didn't we all come here because we wanted simplify and get the difficult stuff right? Analyze this! And btw, please don't write a detailed lengthy Use-Case document on this Post! :)

posted on Tuesday, October 31, 2006 8:02:56 PM UTC by Rajiv Popat  #    Comments [4]
Posted on: Friday, October 20, 2006 by Rajiv Popat

A huge Trace.Log file deleted and a couple of Gigs reclaimed!

There is one thing good about windows. What can be done, or sometimes... what happens ("seemingly automatically"), can be undone (and explained). Last week one of the 3 power-horse machine that I work on mysteriously slowed down. I'm a multi-tasker who has three instances of Visual Studio.NET open with at-least 10 other applications running simultaneously at any given point of time.

So, initially, this slow-down seemed "normal" and the tendency was to monitor the RAM usage. But Task Manager and Process Explorer did not reveal anything peculiar. After some more investigation and using FileMon it was evident that the bottle-neck was actually the HardDisk which kept constantly thrashing. The Instant reaction was to Defrag the disk which pointed out the real problem. The Defragmenter completed "successfully" with an error :)

The error (included in the Defragmenter report) was that it wasn't able to move a particular file "C:\WINNT\system32\LogFiles\WMI\Trace.log" (No, I'm not using the primitive Windows NT - that's just how I like to name my Windows folder :))

But the real shock came when I tried to get to the file using explorer and see what's going on. Here's what I mean:

Now, I have three problems with this picture here:

  1. That is a 80 gig disk that has cost Money to buy. If there's going to be a 2.5 gig file somewhere on that disk, I'd better know about it.
  2. What-ever wrote that darn thing on this disk, wasted quite a bit of processor and RAM writing it.
  3. I couldn't delete it. Apparently, some process seemed to be using it and locking it!

A little more Googling on Large trace files revealed that there's some utility out there let's you disable trace logging and then allows you to delete these files. Back, in my MCSE days and days of NT 4.0 people like me, who were both into IT and Development, used to talk a lot about Resource Kits and Option packs and things like that. But not a lot of people seem to be talking about Resource Kits these days.

As it turns out, there's a Resource Kit for Windows 2003 available here. And in that long list of tools and utilities is a tool called TraceLog.exe. A quick "TraceLog.exe -l" told me what was occupying the file and writing away to it. A quick "TraceLog.exe -stop" allowed me to stop the NT Kernel Logger from Trace Logging.

Once trace logging stopped I was able to Delete the Log file off my disk and re-run the defragmenter successfully without any errors.

What really bothered me was not knowing what had Enabled Trace logging and the creation of a 2.5 Gig file on my disk. With the file now wiped off and the problem solved I decided to read a little more and do some investigation into the possible causes of this problem.

Discussion threads like this one revealed that the real problem was BootVis

BootVis is a tool which is supposed to provide faster Boots with Windows XP. I Had played with it a few days ago and realized that it does NOT work very well with Windows 2003.

BootVis had started Trace Logging. And in all probabilities, the NT Kernel Logger had diligently continued logging since then (even after BootVis was uninstalled) just because no-one told it that it was ok to stop logging now.

Long story short, I have a couple of gigs won over from a Zombie file that I wasn't going to need / read anyways and the Defragmented disk seems much faster than yesterday; and that makes me a happy man for today.

posted on Friday, October 20, 2006 10:53:08 PM UTC by Rajiv Popat  #    Comments [5]
Posted on: Thursday, October 19, 2006 by Rajiv Popat

DeskTask - It's all about the "Feel Good Factor"! (Freeware)

There are Software, there are Shareware, there are Freeware and then there are FeelGoodware (ok, I think I just invented that term :)).

It's not about a tremendous productivity hike, becoming tremendously efficient with tasks or any of that... Of-course you could reach out for your Outlook to check your calendar and task-list but there's a "feel good factor" about having Deskjet on your desktop. And who doesn't like typing a couple of keystrokes less or a couple of seconds saved?  Here's what I mean:

 

The Good -

  • It looks awesome.
  • It works with Outlook 2007 (Beta).
  • It's free and didn't install any adware, spyware or crap on my machine.

The Bad -

  • Moving the position of the application on the desktop is a little tricky! You have to click "somewhere" in the transparent application window, drag and hope that it moves :). Once you get "used to" moving it around it's all good though.
  • Default refresh rate is 1 hour. That means Items added in Outlook calendar / Outlook task-list don't show up on the desktop for sometime. Of-course you can manually refresh or set a lower interval using the options dialog box.
  • Eats a 6.5 Megs off my 1.5 gigs of RAM (ok, now that's not that bad! :)) - I guess, that's because it needs to invoke outlook behind the scene. 
The Ugly
  • Actually... Nothing! 

Different people will download this for different reasons. For me, it's the "feel good factor" :) - Uber-cool idea that's brilliantly implemented! Get it Here.

posted on Thursday, October 19, 2006 1:33:08 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Thursday, October 12, 2006 by Rajiv Popat

The Train-Person... and a Train Trip that Rocked!

Dad is a "Train-Person"; simply put, A Train-Person is an individual who takes a train when he travels from Point A to Point B. Period.

Other mere-mortals like me or for that matter, mom or even you, (if you are not a Train-Person) would do some So-Called-Analysis which would be usually based on a set of “worldly” questions:

  1. How far Point B is from Point A? - or vice-a-versa.
  2. How long will it take to reach from Point A to Point B by train? - usually counted in Man-Days (with a Capital M and a capital D).
  3. Are there other faster (and/or cheaper) modes of transportation? - e.g. metal things that move on 4 wheels or metal things that fly, (depending on what the answer to question number 1 works out to be)?

To a "Train-Person" these questions are nothing but trivial worldly details. A Train-Person sees the "higher picture"; A Train-Person will ask a completely different set of non-worldly questions:

  1. Is There a Point A?
  2. Is There a Point B?
  3. Is There a Train Between Point A and Point B?

But the "worldly" questions asked become profoundly important; especially if Point A and Point B are located somewhere in India.

As an Indian who occasionally reads the news-papers :) and along with the papers, the Advertisements of the crazy Discounts a lot of Indian Airlines offer, I knew for sure that there were cheaper and faster ways of getting to Point B. But we (mom and me) pretty much agreed to the Train Plan without any arguments. Mainly because:

  1. I don’t have get to have a lot of vacations with family – for the past few years I have been nowhere on this map, every time a vacation was planned - mostly work and American hurricanes (long story) have kept me ‘on the move’ and when I do return to India the holidays have usually ended. So, the "going on a vacation" part was more important than how we got there.
  2. You can’t convince a Train-Person that there’s a better way to get to Point B from Point A other than a train. It has never been done in History of man-kind. Never.
  3. And honestly (on a slightly serious note), I liked the whole idea of "enjoying you journey as much as your destination".
Long story short, we surrendered to the train person and boarded a train that would take us to Point B for an awesome vacation. The Train trip to the destination was "sofa king" (to be read very fast, repeatedly) lousy that I wouldn’t enjoy it even if I was on a highest dosage of Nitrous Oxide (a.k.a. Laughing Gas) that can be given to any two legged creature before that creature… anyways, I digress. The point is, the trip to Point B sucked! Why?

Other than Mom, dad and me, the train compartment we had boarded consisted of the following other “things” which happened to accompany mom, dad and myself:
  1. A Mommy thing – this thing was usually quite, barely spoke, but would fight for luggage-space of 9 people because Daddy Thing had paid his “hard earned money” to buy 5 tickets.
  2. A Daddy thing – with obnoxiously loud voice and sick jokes, which by the way, were so-not-funny.
  3. 3 Teenage things – all three of which, had something in common. A Taste for bad and loud cell phone ring-tones. I’ve seen people listening to some strange music, but ring tones!!? How can you listen to ring tones, even if you are just a... a... “thing”? And of course the use of ear-phones was so-not-necessary… Anyways, am I sounding mean here? I think I’ll leave it at that :)
The part of the trip that sucked the most was that these things happened to be in the same compartments as us. There was one good part to that train trip however – It Ended.

We Reached Point B. Took connecting buses to our final destination (my happy-place) and I had the best uber cool, rocking, relaxing and thought provoking vacation of my entire life (long story).

Good times slowly ended and it was time to head back to home to Point A to enjoy home, life-as-usual and interesting work. The return tickets had been booked and I was getting “prepared” for another lousy experience of having to spend another 38 hours with god-know-what kind of creatures and “things” which would share the train cabin with us this time.

But this time I was be prepared; with my MP3 player, Audio Books and the loudest set of headphones I could buy. At least sick jokes, mobile phone ring tones and requests for “a little bit more space” weren’t going to get me down after such a rocking vacation.

When we boarded the train Mom was concerned about the seats we had. Dad (being, the Train-Person) was concerned about all the other points between Point A and Point B (such as X, Y, Z etc.) in which the train was going to make brief stops and kept looking for an official Time-Table. I was concerned about the lousy company I was going to get and kept buying books just in case my Mp3 player lost charge. So, basically, all of us were... concerned.

After more than 38 hours we reached home. So, after my long rant about train-trips you would think that if I had a chance to choose between a flight and a train journey, ever again, I would choose the flight any-day, right? WRONG! Wait, I didn’t describe the train trip back home yet.

On the train journey back home other than me, the train compartment we had boarded consisted of the following “interesting individuals”:
  1. An incredibly lively girl who could speak on-and-on-and-on-and…and-on, for hours; Quite literally :). About sun-signs, face-reading, religious conversations, bhajans, jokes, cards, movies, travel (the list goes on). If you didn’t talk to her, when she was getting bored and if you were brotherly enough, you ran the risk of having her pluck a hair out of your head or hand to make you talk.
    If she was my sister I would feel proud (no offense to my existing cousin sisters :)). If I was concerned about recruiting guys for HR of any company, I would choose this girl with eyes closed.
  2. Her sister - who would ask questions, listen, explain what she knew rather well (I saw her giving some sound career advice to yet another individual) and was curious to know about things when she heard them. I casually mentioned the word Blog in a conversation and ended up describing what a Blog is and beyond.
  3. A Bubbly Girl who would laugh at jokes and then couldn’t stop laughing.
  4. Mom – Mom was “interestingly different” with these girls than she is with most other people in her first meeting. With most other people she takes a couple of days to break the ice (much like me). Here, she was singing bhajans, playing cards, talking, laughing away and having fun. We’ve (dad and me, well, at least me) never seen her get this friendly with people in the first meeting.
  5. Dad – He was putting his solid hold of English vocabulary to good use - the guy is a living walking dictionary and the reason why we never looked up the dictionary when we were young (we usually just asked him). There was this game of making words which start and end with a particular letter and Dad was in action!

During a short span on one day as the train was taking us home; people in the compartment (me included) were engaging into one or more of the following activities:

  1. Having conversations, cracking jokes, pulling legs. (Including my leg, which got pulled more than once :)).
  2. Singing bhajans.
  3. Playing court-piece - a card game (I learnt that I suck at it!).
  4. Career discussions and advice.
  5. More conversations, more jokes, more pulling legs.
  6. Stories about heart surgeries, discussion on recipes, face reading, sun-signs, studies… (Long list). 
  7. Gambling - not with real money, but with a deck of cards which everyone pretended was money.
  8. People teaming up to plan to steal my personal diary when I sleep (and then asking me if I was asleep and if it was OK to steal my diary) :)

This trip was the first time, since my school life, that I wrote my thoughts on paper and the first time in a long time, when I went anywhere for more than a week without my laptop. I paid the price for it by getting my legs pulled for using a paper pad :) – But a deal was struck.... They would have access to an “edited version” of whatever-it-is that I was writing and in return the idea of stealing my diary would be completely dropped.

There are very short extracts of the thoughts I was scribbling there 'embedded within this post' so I guess I’ve kept my part of the deal... "Technically" :).

The next day after a trip of 38 hours or so (albeit, it appeared much lesser than that) we reached Point A again. If I was to version myself and say that I was “Rajiv 0.1” when I started out for this vacation it would be ok to say that this vacation has been a solid Elaboration Phase for “Rajiv 0.2” – people will notice Major “design changes” as Construction begins :).

This was a vacation where I came back without a lot souvenirs or pictures but with many interesting stories. And the train trip back home? Well, that was an icing on the cake!

Moral of the story: When a Tain-Person tells you to board a train, you board a train. Chances are, in the end of the story, you won't regret you did what he told you to do. :)

posted on Thursday, October 12, 2006 2:41:26 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Saturday, September 16, 2006 by Rajiv Popat

About this Blog

What the Heck does ThousandtyOne mean?

The term was Actually invented by my very young and smart nephew, during his first few math and counting lessons. He had been taught to count up to hundred when he suddenly figured out that if Twenty plus One is Twenty-One; Thirty plus One is Thirty-One; then Thousand plus one has to be Thousandty-One. I liked the Idea!

Why this Blog?

As of this posting, I've been blogging for more than 3 years at different Free online blogging services including Blogpsot and GWB (My Old Blog). While most of them, are great, it was becoming increasingly difficult to backup my posts, comments, logs and everything else. I needed (ok. wanted.:)) a little corner where I can keep a track of what I am working on, my thoughts and things that I feel passionately about.

What is this Blog About?

Everything. Anything. I wanted a little corner where I could talk about anything I was working on, thinking of or felt passionately about. I Live and breathe in the World of .NET so a lot of this Blog is going to be about .NET. A Lot of it is going to be about tools and technologies that I like or review and a Lot of this Blog is going to be about my thoughts and my Life.

Blogs are a Two way Conversation. And I Love getting (and replying to) Comments / Emails on my posts. If you do find a post useful, have a question, comment, suggestion or just want to drop a line please feel free to leave a comment or drop me an email.

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent the views of any friends, colleagues or employer.

posted on Saturday, September 16, 2006 8:22:29 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Saturday, September 16, 2006 by Rajiv Popat

About Me

My Passion for Programming and Fish-tanks started at the age of 10 when I wrote my first few Programs in GWBasic (my school teacher seemed particularly impressed) and got my first fish tank (with real fishes) as a B'day gift. By the time I was 14, Dad realized that I was getting obsessed with that fish tank and time was right to make me an offer (a VERY wise decision motivated by divine intervention, we believe).

He would buy us (me and my brother) a Desktop but I would have to get rid of my Fish tank and all the fishes. The deal was sealed instantly. Everyone was happy :) - The next day the fishes found a new home and A few days later a spanking new desktop with some 8 odd MB ram and 300 odd MB HDD arrived (those were the good old Ms-Dos days, and a 8 Meg PC-XT was a POWER HORSE back then)... and as they say, the rest, is history. :)

With my graduation honors in commerce and accounting, over 15 certifications (MCP VB6, MCSE, OCP, OCA and many others...) in anything that looked interesting to learn, and my heart (and years of coding) in .NET development, the fellows @ eFORCE (where I work) often refer to me as the "the guy who NEVER uses the mouse" or the "Night Time Coder and Watchman" :)

I am also the self proclaimed "Notepad Specialist" of eFORCE (whatever that means) and I often like saying "Interestingly enough, typing 'start / run / iexplore.exe' is MUCH faster that clicking the internet explorer icon on your desktop". Honestly. It is!

I've has been around in eFORCE (where I work as a "Principal Officer, Technology"), for about 10 years which have seen me doing some really interesting things like writing a software adaptor for MFD scanners using Microsoft Technologies, writing a software for a RFID reader using Microsoft Technologies, Formatting Ms-Word documents :), Writing a DAL that hooks up VC++ layers to .NET, writing a .NET Remoting Bridge that securely connects world wide oil rigs of a drilling company (the list goes on; more mumbo gumbo can be found on my resume) and passing strange comments on beautiful designs done by the highly capable graphic designers of eFORCE. It keeps my creative sprits alive and they don't seem to mind – in fact they’ve even taught me a few tricks at Photoshop. :)

I live and breath in the amazing world of .NET (which I have been working on since the beta bits 1.1, 2.0, 3.0, 3.5 and 4.0) - and I've been so involved with Code that my obsession for .NET comes pretty close to my obsession for my first fish tank. Apparently this time, Dad doesn't have a problem with it. :)

When I'm not working (or Traveling :)), I am is busy maintaining this site, blogging, writing (code, articles and thoughts), planting trees, reading or spending time with family and nephew who prefers to call me ‘Rajin’ and gets utterly annoyed when 'someone' (I?) deletes PPTs that he saves on My Hard disk. :)

posted on Saturday, September 16, 2006 8:19:56 PM UTC by Rajiv Popat  #    Comments [4]