Indian Classical Music

On a different note than most of my entries here, last weekend I went to an Indian classical music concert by Zakir Hussain and Master Pandit Jasraj and was organized by the Bay Area Performing Arts . The concert was amazing, I have seen Zakir a number of times earlier and as always be was mind blowing. This was the first time though I saw Jasraj and did not know he sang Krishan Bhajans . Though I personally don’t care about the Bhajans but the rags he sang were quite amazing too - especially the ones showing his control over this voice where we went all the way from a very high note to a very flat and dull one (like from a bass). And the special treat were the Jugalbandi’s - one has to attend a Zakir concert just for that - oh what fun! If you find out Zakir is playing in your area I would highly recommend checking it out. If it happens to be the first time you zee Zakir hussain then you are going to be blown away by the whole experience. ...

June 15, 2004 · Amit Bahree

How to tell you are American?

Not long ago, one of those earnest-freshman puppydogs on the Net declared that there was “no such thing as American culture.” Right. Fish have also been known to doubt the existence of water. The following is a first crack at an ostensive definition of ‘American culture’– things shared by the vast majority (let’s say 90%) of native-born Americans. Many of these won’t sound ‘cultural’ at all to Americans; they’ll sound like just descriptions of the way things are. But each one of them would be contested in one or more non-American cultures. ...

June 13, 2004 · Amit Bahree

No debugger in C#?

I don’t get it. Anatoly discusses how he (along with other people he quotes) don’t use the debugger in C# or any other managed code and letting the runtime find the exception and let it “deal” with it. Now I don’t know these people and they could probably be correct in the context of the applications they write, but I don’t agree with their viewpoint. Sure there are applications that would not warrant the use of a debugger (like HelloWolrd *grin*), but most of the applications I design and work on are fairly complex and the debugger is a very invaluable tool! Exceptions are very expensive (as discussed here ) and should be used wisely! Of all the features of Whidbey, the one I am most excited about is the huge improvements in the debugger and also how you an extend the debugger with GUI to inspect your complex data types. The point also holds for any managed language and not just .NET. What do you think? ...

June 12, 2004 · Amit Bahree

DotGNU on Pocket PC

Pocket C# is port of C# compiler from DotGNU project to Windows CE. DotGNU contains open-source runtime, compiler, tools and many other things to make free cross-platform .NET environment. I took only compiler and several required tools and ported them with some modifications to WinCE platform. This would allow you to develop and build applications using standard .NET CF and C# right on your pocket device. It’s quite easy, you almost don’t need to do anything manually - just write your code and project file and then build it with one tap. ...

June 11, 2004 · Amit Bahree

What makes good code good?

As Paul Dilascia discusses in his article in MSDN Magazine (most of which I am gonna mooch-off here), What is good code? Does good code mean that the program works as it is meant to without bugs? Well if that is your only criteria, then I don’t think so, that is something that is expected. One also needs to look at it internally - as they say beauty is beneath the skin (or something like that anyways). As Paul asks what internal qualities produce perfection (for the application/code)? It does not matter what language or platform you program in - one needs to remember the things that were taught in school when you took your first programming class - simplicity, readability, modularity, layering, design, efficiency elegance and clarity. ...

June 11, 2004 · Amit Bahree

Funny Pictures

Bill Gates Testimony This is seriously funny - IE Blues? Do you want to mess with the Admins now? Bush Hotmail ...

June 9, 2004 · Amit Bahree

VS 2005 C# IDE Enhancements Walk through

If you want to understand the new stuff in the next release of Visual Studio.NET Joe has an article detailing demos that you can plan with. This is a good starting point and covers a lot of areas like: Understanding Code (MDLView) - The first demo is all about how you get up to speed on an existing code base. To emphasise the problem I renamed nearly all the files so they were numbers which brings home the point about not understanding what the code is actually doing. Debugging Code (DebugDemo) - This demo really requires some setup by showing and talking to how information was shown in VS 2003. The main issues with the current display are one, too much information (VS 2003 simply dumps the members of a type in alphabetical order) and two not enough context (e.g. in VS 2003 looking at the list you can’t tell what something is e.g. is it a property, is it public etc?) Writing Code - Writing code has historically been a strong point for Visual Studio and in VS 2005 there are a number of features that make this experience even better. You can also directly download the powerpoint presentation from the for the TechEd session and the demos themselves. ...

June 9, 2004 · Amit Bahree

What is All Consuming?

This morning with nothing better to do I was browsing (as usual) and came across an interesting site called All Consuming . What are they? Well I asked the same question. Turns out that they watch all weblogs for books that are being discussed and displays the popular ones on an hourly basis. I was surprised to find that they had these entries about this blog. Its interesting to see a pattern on what books are being discussed. e.g. Today the DaVinci Code is discussed one of the most discussed books along with Bill Clinton’s “My Life”. ...

June 9, 2004 · Amit Bahree

Longhorn Build 4074 - First Impressions

I finally found the time to install and play a little with the new build of Longhorn. It is not too different above the covers than the previous build (PDC Bits), though it *seems* to be a little more stable. One of the first things I found was that SimpleText did not exist anymore - there is another post covering that bit. ...

June 8, 2004 · Amit Bahree

Invoking Google's web service on a Smartphone

Incase you did not hear, then which planet are you living on, but Google exposes their offering via a Web Service that you can use to search for … well … stuff. If you have programed on the .NET CF then you know this is quite simple (especially if you program on the “regular” .NET). Incase you have not dabbled in this and are interested in doing something simple then check out this article which steps you thru the simple application. If you are interested in doing some more mobile development then here are a few links for you to check out: ...

June 7, 2004 · Amit Bahree

Lesson learned with Yodlee

This is one of those typical lessons learned when you get too dependend on technology blindly and then you fall flat on your face. Well in my case I have been using Yodlee for about 4+ years now when I was working on a project for etrade.com. If you don’t know what yodlee is, then check out www.yodlee.com - they are actually pretty cool. Yodlee, provides an account aggregration service. So I logon to one place and that gets my financial information in one snapshot from all over - my account details from my banks, credit cards, 401K, utilities, etc. I know my bank (Wellsfargo) also uses this. ...

June 4, 2004 · Amit Bahree

Mono Beta 2

About a month after releasing the first beta, Mono released the second beta that includes a c# compiler which is CLI compliant and also supports the same PE system as .NET. What is more interesting is that there are two stacks of APIs one for the Unix and its variants and the other is of the .NET Framework (v 1.1) to support ASP.NET including WebForms, WebServices, among other things. ...

June 3, 2004 · Amit Bahree

What happened to SimpleText?

If you have played with both the PDC and the WinHEC build of Longhorn (Build # 4074) and in your small applications if you had a class called SimpleText - that code would now give an exception in the new build with the error “Class not found”. So out of curiosity I asked on the newsgroups what was up with it and found out that Microsoft has consolidated their three classes to handle text to two - which help solve some of the confusion. Filipe Fortes who is the Avalon PM also discusses it in a blog here . ...

June 2, 2004 · Amit Bahree

What are Closures?

There has been a lot of talk recently hearting up the wires in cyberworld on Closures and c#. One of the question that some have asked is what the heck are closures? Well I don’t know what all the excitment is all about, but closures are nothing but what is also called the Anonymous Methods. There now that you know it, go do something productive! BTW, anonymous methods are cool and with the combination of iterators you can go pretty interesting things. Check out the latest msdn article for a quick read. ...

May 26, 2004 · Amit Bahree

Managed object lifetime - How a Garbage Collector Works

This is part 1 (if you will) of a couple of posts. I am surprised how very little most people know how the GC actually works. If you are reading this and are going to be interviewed by me, this is one of my favourite questions. *grin* This is based on an interesting post I found long ago I think on gotdotnet (sorry I forgot who the author was, I’ll try and google it and see if I can find the link to the original post). ...

May 25, 2004 · Amit Bahree

IronPython: A fast Python implementation for .NET (and Mono?)

Karan (see the Blogs I read section for his weblog) pointed me to this and I think it is pretty cool. IronPython is a new implementation of the Python language targeting the CLR. It compiles python programs into IL that can run on either .NET or Mono (now that is cool). This produces a standard assembly that other code can reference. It would be an interesting exercises to see the IL it produces and see if we can infer anything from that. ...

May 19, 2004 · Amit Bahree

Cracking the Da Vinci Code

First of all, if you don’t know what the hell am I talking about, jeez, where have you been buddy? If you do but have not read the book, then please do yourself a favour and do so. You can buy it from here . Once you do finish reading the book, then come back here and we can talk about it. ...

May 18, 2004 · Amit Bahree

Improving .NET Application Performance and Scalability

PAG group just released the new library . If you have been playing with the beta of this, you know there is lots of good stuff. A excellent reference to keep near you! Now that this is “public” I will be posting some of the things I find here - watch this space, and till then, read up and enjoy! ...

May 18, 2004 · Amit Bahree

Installing Whidbey on Longhorn [Build 4074]

Miguel Jimenez has a post on how to install Whidbey on the new Longhorn bits. There are some comments on some problems. I myself have not tried this (yet), will be posting my first impressions on the new build and then try this after that - probably this weekend or early next week.

May 18, 2004 · Amit Bahree

Iterators in c#

I have been meaning to write something on what are iterators, well actually more on how they work and why is there so much “hype” around them, the only problem being the best excuse we all can fall back to - Time *grin*. After all Java already has them, so is that a big deal that .NET would (when Whidbey is released) have them. Anyways, the point being that Roshan has a decent post on that already - probably a much better job that I would do. ...

May 14, 2004 · Amit Bahree

Becoming an Architect

There has been a very interesting (imho) multi-part interview with the author of Beyond Software Architecture where he discussing various aspects like the relationship between Architecture, Culture and Goodness. Also goes on to discuss the social role of an architect, conceptual integrity and the importance of domain knowledge. I particularly like the quote … “ An architecture is like a dirt road. The first time a car drives over it, the road looks about the same. By the time the 10,000th car drives over it, though, there will be grooves in the road. As an architecture mature, it gets grooves.”. Some other interesting responses that I personally have learned from over the years and I can relate to are below. ...

May 12, 2004 · Amit Bahree

DARPA is at it again

From the last time, when DARPA issued the grand challenge, the cameras were there, the million bucks were there (drool), the people were there, the hype were there and the robots were there. So what was missing? Well the Robots followed my example and forgot their “brains” and were half blind and stone dumb! So instead of learning from that and letting the existing teams push on they want to try LAGR. As I say, common sense is not very common! ...

May 12, 2004 · Amit Bahree

Searching beyond google

Recently google has been all over the news - online, print and television, atleast here in the US; and why not, with their IPO and everything, lot of people are hoping this would kickstart the recovery of the economy. I have been toying with a few other search engines for a few months now. These have also been highlighted in the media recently alongwith the google hype as a potential threat to google. The engines I have been toying with apart from google are: ...

May 12, 2004 · Amit Bahree

Windows vs. Linux (and oh ya Mac too) - Common OS Myths Debunked

This reminds me of a few weeks ago when during one of my IM sessions with my buddy Karan I was bashing up Linux (which from those who know is not really me). This lead to (atleast that is what I think) a frantic call from him - all the way across the pond - and we yapped like a pair of teenage girls for close to an hour +. The crux of that debate… err.. discussion we had was Windows vs. Linux. If memory servers correctly (which ain’t a lot *grin*), then this article pretty much sums it up. Here are some of the common OS myths that typically float around in cyberspace: ...

May 12, 2004 · Amit Bahree

Abstraction and Efficiency (in c++)

Bill Venners has an interesting article on Abstraction and Efficient. He says that Abstraction is a mechanism to understand things. A good analogy he lays out is in Mathematics. Where expressing a solution means we really did understand the problem and not write up some code to try a “special case“. Also states that it is important to generalise and see one particular problem as a example of the class of problems. You can read the article here , Part I (c++ style sweet spot) can be found here and Part II (modern c++ style) here . ...

May 10, 2004 · Amit Bahree