Bug Vanquisher

13 January 2008

Renovation Week Begins

Filed under: Personal — Tanveer Badar @ 7:41 PM

Actually, it began four hours ago when I finally decided to get a hair cut after four months. Your can imagine how unhappy the barber would be right now.

And after a confessional sort of phone call with Faisal | Usman (& wouldn’t work, they have so little in common), some other matters were sorted out, new decisions were made. We discussed a lot of things.

The problem(s) began some six month ago as far as I can think. I am becoming the laziest kid on the block all this time. My computer sort of stinks with tons of dirt inside because one side is open ever since I bought it. My glasses need changing and eye-sight re-evaluation for three years now. I still haven’t got my degree issued yet. My mouse double triple clicks every time for an year now. Faisal keeps telling me to buy a decent microphone for the last month. I have become the most irritable person in immediate family, reacting the slightest noise in the most obnoxious manner. The list goes on and on.

Considering this list, the first line and the title should make sense now. It is one down, some to go sort of thing. I’ll keep posting these frequent losses of rationality confessions over the next two weeks as things get done.

19 December 2007

[It] is Done

Filed under: Dev inside!, Personal — Tanveer Badar @ 3:33 AM

It is too late for me to be writing anything this late (3:30 A.M.). But, [it] is shipping later today in the afternoon.

What is [it]? It [it] is something I have been working on for the whole year. I’ll talk about [it] later someday. It [It] is repeated and in [ ] because [it] is not the pronoun, it is [it].

[Update: 20/12/2007. [It] did not ship yesterday due to some issues with [them]. And I feel sorry for those who hate nested [ ]. Yep, I just did that again. [:)] ]

15 December 2007


Filed under: Personal — Tanveer Badar @ 7:36 PM

Introducing Ali, my youngest nephew! Just 1 day, 9 hour and 57 minutes old at the time of posting.




31 October 2007

Mirror Mirror!

Filed under: Funnier, Personal — Tanveer Badar @ 10:01 AM

On the wall, tell me who is the wisest of all?

Of course, I am. But this claim has been in serious jeopardy since last week days. Two corrections in less than a week days is a new low for someone who claims to be ‘know-it-all’ mostly.

I need to study some things again before going back to writing anything technology related. In the meantime, I have other plans to execute. Tune-in in two days time again.

19 October 2007

Again, An Obscure Bit of Information

Filed under: Personal — Tanveer Badar @ 1:15 PM


These are the blog statistics of how many hits I got over a month, people who used RSS feeds, comments someone wrote or else clicked from the ping back links I left at various places.

What interests me most are the two peaks which show three times normal traffic for almost five days and I think I know what the reason is, apart from him, him, him and him.

Out of the Fire, into the Frying Pan 2

Filed under: Computer Theory, Personal — Tanveer Badar @ 12:53 PM

A few days ago, I posted about how I got 3.89 out of 5. That piece of information was not there, leading people to ask what the overall rating was.

While I have no objections to that 3.89, I do have a little to say about the procedure. At my company, a TL reviews each and every member of his/her team. After that review, the formalized review forms stream up the food chain (higher management).

Then, someone normalizes the results. By normalizing it means that rankings are pulled back a little if the TL is known to be lenient or added up a little if he/she is very strict. Then, things happen, all sorts of tantrums, shoutings, yelling hoarsely or walking out (just kidding, nothing of that sort ever happened).

If you are following the theme about one specific data structure I praise above all, you may have already spotted the trouble spot. It is the normalization process. What a TL does to his/her team is done again with his team by an even larger/bigger predator (no offense if anyone from my company reads it :) ). If a TL has a very dim view with the predators, his team is going to pay the price, if a very bright view kudos to all.

18 October 2007

It also goes by ‘Wait’

Filed under: Computer Theory, Things in life — Tanveer Badar @ 4:34 PM


They all spell the same. They all mean the same. They mean try as you may, it will not let you for a whole host of reasons.

Get introduced to the second name of the wonderful machine, the marvelous invention ‘computer’.

For the last hour, I have been building the latest release of boost. Yet my computer won’t let me do anything else.


I wonder has our waiting for anything to be done has increased or not? Even with the ever faster computers and more and more computing power available at our finger tips, with the advent of multi-core processors, nearly every body can be seen waiting for something to finish, some download to complete, some compiler to stop whining about the dredged code or have his heart’s desire to spit all those informative message about how it thinks a variable may be truncated during assignment.

We wait for our word processors to save the documents, watch those LEDs blink as the computer boots,  wonder what’s taking it so long to shutdown, curse while those GBs of RAM get written to disk if hibernating or read back during resume operations. And don’t be astounded when visual studio takes forever to refactor code even when the changes are confined to a single function, go to any lengths to optimize (not improve) OLTP performance.

Even with broadband availability, our needs have expanded even more disproportionately.

Work expands to exhaust (and demand more) resources allocated to it.

Now, we seek even bigger downloads, Ajax based websites take forever to load on those dial-up connections. Ever tried facebook, with the plethora of pictures on every page, mounds of javascript at your service you better have had a broad band connection.

And a big factor in consumer oriented markets like desktop operating systems and application is to only improve the perceived speed of some operation yet never inspect code like this

Message message = …;//get from somewhere

// A paramter has only one value, missing break after substitute call
foreach( Parameter parameter in parameters )
    IList values = GetAllValues( );
    foreach( Value value in values )
        if( value.Id == parameter.ValueId )
            message.Substitute( parameter , value );

They will go overboard to recommend things like

· Consider adding un-managed splash screen to show before the WPF app start. This will present the user with some UI and improve perceived responsiveness. Check blog later for a sample that demonstrates how this can be done.

[Improving WPF applications startup time]

With the release of Visual Studio 2008, Microsoft build tools will finally have multiprocessor build support, with MSBuild having /maxcpucount:n and cl having /MP:n as the relevant options. Just as the added generics after MSDN filling pages about how dangerous templates are for everyone’s health during .net framework 1/1.1 timeframe. So, I may expect boost to build a little faster next time I try that labor intensive (ahem! actually, only waiting for the damn thing to finish) operation.

It has been ages since multi-core processors came out. Hyper threading is a fact of history we take for granted these days. Multiple processors in one form or another are a norm rather than exception, yet it is hard to find properly written programs which can take advantage of even the most basic form of concurrency available. Having two processors in the bare minimum you can have but programs in the wild (and by wild I mean currently in heavy usage, not just written by your average Joe) blissfully ignore and have only one thread.

Herb Sutter rightfully said about these issue we will face increasingly in the future, with our processor clocks going no where.

We are shifting more and more towards ease. Ease of development, ease of use, ease of deployment, ease of availability, any ease you can fit in. Gone are the days when a redirector had only 128 byte foot print in low memory. Gone is the time when Windows ran happily in 4 MB of RAM.

So, I’ll see you around when you will be waiting for my next post because I will be waiting for something else to finish.

14 October 2007

عیدالفطر مبارک!

Filed under: Personal — Tanveer Badar @ 11:16 PM

12 October 2007

Totally Pointless

Filed under: Personal — Tanveer Badar @ 9:46 PM

Sharing a bit of performance review for the first six months of my professional life.

I received 5/5 on being ‘Innovative’.

20 August 2007

Hope vs Faith

Filed under: Decontamination, Personal — Tanveer Badar @ 1:07 PM

This has nothing to do with ‘Hope and Faith‘, but about ‘Hope‘ and ‘Faith‘. Though, I got the idea from the sitcom. The word goes like:

“Never be anyone’s hope, be their faith. They are like proof and belief. Hopes aren’t meant to last, but faiths last forever.”

So, lets begin the argument of which is stronger. Why is the collision between science and religion so intense (especially from the 1600s)? One requires proof and one is based on belief. One demands events to be repeatable, verifiable and measurable, the other requires only that you believe. One promises you materialistic advancements, one gives you character refinement, way of living (at least for complete religions quite unlike Christianity or Buddhism), spiritual basis, etc. Of course, your faith in God is only meaningful if you believe and don’t want proof of existence. You may ask God to show you how He creates from nothing, but that is not proof for your faith in Him, it is just out of interest.

One of the greatest problems with proof is that you cannot disprove anything unless you exhaust all possibilities. Second law of thermodynamics cannot be proven because it is ‘negative’. Same goes for some parts of theory of relativity. But if you believe them to be true, you won’t be searching for counter-examples. Similarly, proofs walk a very fine distance from being proven wrong.

Consider parsing, their are two general methods, top-down and bottom-up. In top-down parsing, one of the most well understood method is LL(k) parsing. In bottom-up parsing, LR(k) parsing is the strongest (generally! :) ). LL parsing is more restrictive, LR parsing imposes minimal constraints on the parser. Therefore, LR parsers recognize a larger class of grammars than LL parsers.

Turning to personal examples, I watched many class-mates having mounds of different (actually indifferent) certifications. They always told me that everyone cared about how much certifications you had, but I had faith in myself that I will be able to prove myself without such supports, which turned out to be true. An expectation I would never have to nerve to fulfil if I had hoped to get a good professional position.

I don’t believe in panspermia, unless I have seen proof. I believe in creation of everything by a Higher being. If you follow the logical conclusion, you will appreciate the proof that Adam and Eve lie at the top of human hierarchy and they must have been created specially. But again, if you believe in panspermia, this proof should not shift your opinion. And, I must add, we are only humans because we have the ability to leap beyond logic which boils down to believing and not wanting proof as not everything can be proven even by science.

You can always clearly see the difference among the people who hope and who have faith in their goals. Those who hope rarely achieve, those having faith often twist the circumstances to their benefit.

« Newer PostsOlder Posts »

Create a free website or blog at WordPress.com.