Home
March 11th, 2010 — James

Here is another case against iPhone and Apple controlling the ecosystem. This is message pops up as of today on Grooveshark web site for iPhone.

Grooveshark Is Not Supported On The iPhone

Right now there is not a Grooveshark application for iPhones through Apple’s iPhone App Store. Unfortunately at this time, Apple is unwilling to work with Grooveshark to approve our application. This means that iPhones are unable to download Grooveshark for iPhone unless they are jailbroken. We are sincerely sorry to be unable to offer Grooveshark to all iPhones, as we’ve done everything in our power to have it included in Apple’s App Store.

If your iPhone is jailbroken, you are able to download the Grooveshark app. Read our blog post to find out more.

That is lame. I don’t know the reasons why the app is not approved. This is what holds me back from buying more Apple products. I definitely have plans to buy an iPad but whenever I see something like this, I really wish there was a good alternative.

March 8th, 2010 — James

This is a bug in the text editor (shell?) that I have seen in Visual Studio 2008 and 2010. It may not impact most developers.

I like to use word wrap because I don’t use new lines where it doesn’t make sense. So, some lines may be wider than the screen. Now to avoid scrolling which is not an ergonomic friendly act, I enable the word wrap feature for all types of languages. You can enable this by going to Tools -> Options -> Text Editor -> All Languages. The option is “Word Wrap”. I also enable the “Show visual glyphs for word wrap” option to recognize the places where the word wrapping occurs. All good.

The bug is when I try to copy the line that is wrapped using the keyboard shortcut for single line copy. You can copy the content of the current line Visual Studio by just clicking the copy button or just CTRL + C. When I do this on a wrapped line, it only copies the first line of the wrapped text. Even though content is technically a single line, the copy mechanism seems not getting it.

The line selection also works the same way. When I select the complete line by keeping the cursor at the beginning of the line and press SHIFT+DOWN, it is supposed to select the whole line. When I enable the word wrap, it doesn’t.

The argument against the argument that it should select only what is visually on the same line is that what is visually on the same line is irrelevant to developer. When I make a line copy, I almost never want something wrapped to be left out of the selection and copy. Wrapping is a function of the available screen width and a line selection based on that doesn’t make sense.

Track the bug at Microsoft Connect.

March 7th, 2010 — James

Why the sun lightens our hair, but darkens our skin?
Why can’t women put on mascara with their mouth closed?
Why don’t you ever see the headline ‘Psychic Wins Lottery’?
Why is ‘abbreviated’ such a long word?
Why is it that doctors call what they do ‘practice’?
Why is lemon juice made with artificial flavor, and dishwashing liquid made with real lemons?
Why the man who invests all your money is called a broker?
Why is the time of day with the slowest traffic called rush hour?
Why isn’t there mouse-flavored cat food?
Why didn’t Noah swat those two mosquitoes?
Why do they sterilize the needle for lethal injections?
You know that indestructible black box that is used on airplanes? Why don’t they make the whole plane out of that stuff?!
Why don’t sheep shrink when it rains?
Why are they called apartments when they are all stuck together?
If con is the opposite of pro, is Congress the opposite of progress?
If flying is so safe, why do they call the airport the terminal?

March 7th, 2010 — James

Only in America ……do drugstores make the sick walk all the way to the back of the store to get their prescriptions while healthy people can buy cigarettes at the front.
Only in America ……do people order double cheeseburgers, large fries, and a diet coke.
Only in America ……do banks leave vault doors open and then chain the pens to the counters.
Only in America ……do we leave cars worth thousands of dollars in the driveway and put our useless junk in the garage.
Only in America ……do we buy hot dogs in packages of ten and buns in packages of eight..
Only in America ……do they have drive-up ATM machines with Braille lettering.

March 6th, 2010 — James

Here is a slightly dark color setting that can be imported to Visual Studio 2010.

Color setting for XML.

Color setting for HTML

Color setting for C#

CSS coloring

Download the slate-v-01 here.

Download the slate-v-011 here.

Here is a completely black one for VS2008.

March 6th, 2010 — James

In Visual Studio 2008 you could just drag the toolbars around and dock it on any side. In Visual Studio 2010, the dragging is allowed only within the side where it is already docked. To change the docking location (top, left, bottom or right), open from the menu  tools -> customize. Select the toolbar you wish to modify. Click on the modify selection button and select the docking location.

March 1st, 2010 — James

Modern Warfare 2 is one of the best shooters out there. There is no doubt about that. It is so good that I put over 300 hours of online play since it was released almost 4 months ago. It is like almost 3 hours of multi player everyday. I have also completed the game on veteran which means I spent even more time on this game. I still continue to play despite a bunch of flaws in the game, environment and how others play it. As of 3/1/2010, I am on level 66 of 3rd Prestige. A really good player would have completed all 10 Prestige levels within that time frame. I do have a reasonably good stats though.

Now lets move on to some criticism. What if someone told you “Give me your money and I will give you something that will constantly annoy you, make you irritable and turn you in to a whining moron”? I am not talking about match.com. It’s the online video gaming experience I am talking about. The funny thing is most people including myself don’t realize that while we are at it. We just drift through that misery. It only hits you if you look back analyze what happened which most people don’t bother to do.

Here are some of the things I noted down while playing. There is more but haven’t noted down them all.

Auto aim doesn’t work for me. It does for some others so well that it will track me when I am running with marathon pro + lightweight pro + commando pro. Even at far distances with just a regular rifle. When I aim at someone, nothing happens. I have auto aim enabled. Then when I really do not want it, it will move the gun away from the target I am currently aiming and shooting because someone else moved close by. Sometimes this happens when the current target and the auto aim target are at different horizontal locations but on the same vertical line. Other times I have no idea why it pulls away my from target.

Developers cannot fix the players. Some don’t care. Some have no skills. Others have bad connections. This game also doesn’t have a good match making logic. Some people should stick to playing solitaire or Mario kart. Almost every girl that plays this game is better than more than half of the guys who plays online. I get the feeling that these guys play it to just brag. The game rewards these people in many ways so they stick around. I have no problem with that. Just lump them together in their own league. Just like Infinity Ward wouldn’t hire anyone inferior in to their team. Personally I prefer not to be playing with people way out of my league. My presence will just annoy them. Sometimes I feel that a lot of experienced players out there are playing just to annoy the hell out of others.

Re-spawn logic is kind of retarded. In most matches, people are cursing the re-spawn logic. Why did I spawn here? One new discovery is that if you have unlimited sprint and move faster perks, the game almost always spawn you far from the action. This must be “fix” for running and slashing kind.

Then I found that not all commandos are equal. Even if you have same perks and guns. The range and accuracy of the guns also vary by player. Some akimbos can stil shoot and kill you from half way across the map.

Some physics are strange in every game from Infinity Ward. You get stuck on the strangest objects. Small and tiny. I keep wondering why I am not able to move. It will turn out that a small piece of rock is blocking me. Other times I will just move over even bigger objects just fine. That is not because of that perk that allows you to climb obstacles faster. What are those things flying around like they are in a zero gravity well? Totally unnatural. They look so big even at large distances. Are these things in the game just to annoy us?

Your Internet connection can greatly affect your game experience. Try watching the kill cam. What you see on your screen while playing is not always what you see in a kill cam. No matter how fast your connection your ISP claims, the latency will ruin your games. This is especially true about cable Internet which seem to have higher latency than say, Verizon FIOS. Your ISP also may be compressing upload data which will add even greater latency. You can verify ISP upload compression at dslreports.com. Note that not all of them will show the ISP upload compression. In my case I saw it when I selected LinkLine. Or is it just throttling? You won’t hear anyone talking about how your ISP is impacting your online game experience than saying get a faster connection. Sure I do have a fast connection that some times shows 25 Mbps download and up to 3Mbps upload. the game shows 4 bars and it still gets laggy and choppy. It’s like the bars on iPhone on AT&T network. Bars and experience do match well.

This other problem is common among most games I played online. There is a short period while the map is being loaded at the beginning of each match. At that time you can shout any homophobic or racial slurs you want and no one would know who shouted it. You would think it is just some southerners who make such comments. Not really. Let me say people with all kinds of accents make such slurs on Xbox live. There is no way to report it without pointing at someone.

These are just random observations I had during the online play. I wasn’t usually noting down them. After not playing for a week due to other priorities I went back and all these things came back to me within a few hours. That is when I decided to note down things on my iPhone so I can blog it.

February 25th, 2010 — James

Here is the link.

Small basic blog is here.

Embedding didn’t work on this page, so I removed it.

After installing Small Basic, it appeared on the start menu as French. Then it appeared as Russian. Don’t know what next.

February 24th, 2010 — James

There seems to be a bug in the way Dns.GetHostEntry is implemented.

Assume that your server is in a Windows domain but the top DNS suffixis different from the domain name. There are many reasons you may want this.

When you call Dns.GetHostEntry with IP address and host name as the input, you get various outputs depending on where you made the call from.

Case 1: You are on a computer that has domain name as the dns suffix. You call Dns.GetHostEntry with the IP address and host name of a computer with different dns suffix than the domain name.

IPAddress input ->hostname.dns.suffix

Hostname input ->hostname.domain.name

Case 2: You are on a computer that has different dns suffix and domain name. You call Dns.GetHostEntry with the IP address and host name of a computer with different dns suffix than the domain name.

IPAddress input ->hostname.dns.suffix

Hostname input ->hostname.dns.suffix

Case 3: You are on a computer that has different dns suffix and domain name. You call Dns.GetHostEntry with the IP address and host name of the local host. You may also use 127.0.0.1 and localhost.

IPAddress input ->hostname.domain.name

Hostname input ->hostname.domain.name

Bottom line: That host name attribute is not reliable. nslookup always returned the hostname.dns.suffix no matter where the call came from or how I specified the input, IP Address or host name.

Here is a comment from MS Support here: “looking up a host name based on IPAddress is not reliable and in Ipv6 it is not supported”.

A discussion at work with DNS guys suggests that this call may be going to AD (Active Directory) for name resolution. In some cases it may be going to AD first. In those cases it may only be going to AD and never to DNS.

Here is the code to test it:

using System;
using System.Net;

namespace DnsQuery
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                if (1 != args.Length)
                {
                    Console.WriteLine("Usage:");
                    Console.WriteLine("DnsQuery <IP Address>");
                    Console.WriteLine("        OR");
                    Console.WriteLine("DnsQuery <Host Name>");
                    return;
                }
                Console.WriteLine(Dns.GetHostEntry(args[0]).HostName);
            }
            catch (Exception Ex)
            {
                Console.WriteLine(Ex.Message);
            }
        }
    }
}
February 24th, 2010 — James

Quality control is not perfect anywhere. Take a look at this image.