Posts

Showing posts from 2010

That confounded WCF configuration file

The great thing about Visual Studio is that it pampers you, by doing a fantastic job on your behalf to hide all the nitty-gritties.  The downside is that when you depart from the default values/names/settings, you may not know what manual changes are needed. If you have read Keith Elder's article about WCF, you will understand what a Boeing 747 you have.  And you need a lot of new skills to pilot such a plane.  I would like to share some basics about web.config/app.config that I learned the hard way. The new section of interest in the configuration file is: < system.serviceModel > .   You can have nothing in this section, and everything will simply take on certain default values.  The commonly used elements in this section are: <services> <bindings> <behaviors> <services> The < services > section defines the web services you want to publish. (On the client's web.config, you would not have this but a < client > section inste

Super OLED!

After two years, the age of my Nokia E-71 showed.  The main shortcoming has been the display size.  The good and real keyboard has made it impossible to go higher than 320x240 without increasing the thickness of the phone. So I got myself the Samsung Galaxy S recently.  It is a very good copycat of the iPhone 3GS, down to the packing box.  What did they say about imitation and flattery?  I am speculating that the next version of the Galaxy would, like the iPhone 4, have rectangular instead of curvy edges on the sides. I have not used the iPhone other than testing it.  I find Android much more usable compared with my experience with the iPhone.  The menu and back buttons on the Galaxy S are really handy.  The Program Monitor gives me a very visible state of my phone.  If control equals power, I am power-drunk.  People like me would have difficultly living under the yoke of Mr Jobs. The biggest jump in capability has to be Swype.  I guess Samsung has to pay for it as one Motorola m

Why it is Peking and not Beijing

[As at January 2011, this web site cannot be viewed from within China.] Lord Carrington explained it most clearly when he said that English speakers do not call Moscow Mockba. I see two fundamental misunderstandings on names and languages. First, English speakers do not need the permission of the CCP to decide how to name the capital of China in English . English speakers do not seek Italy's permission when they call Roma Rome. The list goes on. Similarly, Britain does not, and cannot, insist that the Chinese do not call London 伦敦 but London. Britain cannot object the French from calling that same place Londres. President Obama cannot command that the Chinese call him 奥峇马 instead of 奥巴马. In summary, if users of a language decide to name something X, no one else from another language can come and say it must be Y instead. Second, the capital of China in Chinese is 北京, not Beijing. This second point may be a bit subtle.  "Beijing" is 100% not a Chinese word. C

Auto Cars

I had this idea for twenty years but Google beats me to testing it. The car carrying capacity of any road is simple: unlimited . To take more cars, just increase the speed of cars.  The real limit is parking.  Sooner or later cars have to stop.  So the trick is to find a way for cars to slow down gradually to a a parking spot. Hence, we should just increase the speed limit to give everyone a smooth ride.  Every car will know where every other car is and is going.  All cars can zoom past each other at traffic junctions with no need for traffic lights.  The faster you zoom past each other, the more people can have cars and use them.  Of course all cars will be driverless, like what Google is trying to do. In my vision of things, nobody owns cars anymore.  To go anywhere, just punch a button on your mobile phone.  In a minute or so, a driverless car will come to your exact spot.  Hop on, and the car will pick up speed and join the main traffic.  If your destination is 10 miles aw

Getting Web Images Right

Image
I appreciate all the programming and troubleshooting tips posted by the many enthusiastic contributors from all over the world. Many of them include lots (and lots) of screenshots to illustrate what they are trying so hard to help us. One problem, however, is the clarity (and size) of those screenshot images. I always love screenshot images that are in native resolution: one pixel in the bitmap corresponding to one pixel on the original screen and corresponding to one pixel on my screen. No one should have any problems capturing the screenshot - the [Alt]-[prt sc] key does it all to the active window. I think the problem is in saving it. The original MS Paint was a disaster. You have to manually set the size your image. And it can't save to the png format. I find that Paint Dot NET is the most convenient tool. Pasting from the clipboard automatically creates a new image of the dimensions of the image in the clipboard. So it's the perfect size, no chances of error.

Are you current?

[It is not fiction that a fully-laden airliner can complete its whole trip from take-off to landing, at most modern airports, with the pilot's hands totally off the controls throughout the journey.  Nevertheless,] An airline captain, say of a Boeing 777, must land a Boeing 777 manually at least once every 35 days to maintain his currency as a captain.  If he does not achieve that, then he must land the same aircraft in a simulator.  If he has extended his currency through the simulator, then within the next 35 days he must land the real plane from the right hand seat, that is, with another captain in command and supervising. In contrast, anyone can claim to be a qualified and experienced software architect or developer!  Is it because no one gets killed when software is poorly written?  I am convinced that this is the real answer. An airline pilot is certified not only on his flying skills but by aircraft type.  A Boeing 777-200 pilot is not permitted to fly a Boeing 777-300E

The Mother of All Trojans

Well, now we know that the Communists do not understand that entering someone's computer is the same as entering someone's house.  Or maybe I am giving them too much credit.  Do they also enter people's homes if no one is watching? Using zero-day attacks or upatched vulnerabilities is a contorted process that requires lots of hardwork trying to predict and then handle all possible outcomes.  Such attacks are not always successful even if the target computer is vulnerable. If they could spent their talent and energies on such hacks, just imagine what they could have put into all those Huawei routers! According to Wikipedia , Huawei is founded and still led by an ex-PLA man, a card-carrying member of the Communist Party of China and a congressman! Could they be that far-sighted?  The router is the mother of all Trojans.  It's the interface point between your internal network and the Internet.  All other network equipment are similarly vulnerable as they just have

Download Fails for Windows Update

I don't know how well-known it is that the Windows Update client, even when run from IE, does not run using your logged-in credentials.  This is according to KB 900935 . So, if your computer requires a proxy server to connect to the Internet and you have configured the proxy server through your IE settings, the Windows Update client will still try to connect directly.  This is because the IE settings are specific for each user. I have a newly installed Windows Server 2003 that is on a LAN that requires a proxy.  The first update went through ok.  But subsequent updates keep failing to download. By running proxycfg -u to copy my IE proxy settings for everyone, Windows Update breezed through. The puzzling thing is that I have two other Windows Server 2003 sitting next to this one on the same network.  They were installed 1.5 years ago, with the proxy server configured in IE.  I checked and proxycfg on these two says "Direct access".  But Windows Updates for those two