Ranatunge – Warne Friendly Banter

Retired Sri Lankan cricket captain Arjuna Ranatunga hit back at his running adversary Australian leg-spinner Shane Warne saying he (Ranatunga) would rather put on weight than take drugs to prove his fitness.
"Arjuna, he's probably slotting himself around at 150 kilos (kilograms, 330 pounds) at the moment, is he? Swallowed a sheep or something like that", Warne was quoted as saying by the international news agency AFP on Saturday.
"If I swallow a lamb or a goat, it is none of his (Warne's) business," Ranatunga was quoted by the AP news agency in reply on the same day.
"But I must tell him that I don't swallow those pills and blame my mother for it," Ranatunga added, making an obvious reference to Warne's positive test for a banned diuretic which resulted in a one year ban for the spinner.
"It is better to swallow a sheep or a goat than swallow what he has been swallowing," Ranatunga was further quoted as saying. "I am fine and fit at 95 kilograms (209 pounds)".
Warne is expected to arrive in Sri Lanka on Friday for his first international assignment after being tested positive for the banned substance on January 22 last year.
"I am certainly going to meet him," Ranatunga said and jokingly added: "I may even invite him to attend one of my campaign meetings. Though I know I may risk losing some votes". Ranatunga is contesting for a parliamentary seat at Sri Lanka's general election on April 2.
The verbal tirade between the two however had not stopped Ranatunga from admiring Warne's ability as a player. "I, however, respect Warne as a player. He is great", Ranatunga had admitted. [Daily Mirror]

Tour plea to Murali

Former Sri Lankan coach and Australian spinner Bruce Yardley will this week make a personal plea to champion spinner Muthiah Muralidaran to tour Australia this winter.

Yardley, who coached Sri Lanka in the mid-1990s and is in Dambulla doing commentary work, will meet his one-time protege this week to try to convince him to make the two-Test tour of Darwin and Cairns in July.

Muralidaran last week revealed he had reservations about touring Australia where hostile crowds have abused him.

"I will try to talk him into coming to prove he can take wickets in Australia and be stronger mentally and not let the average Aussie try to break him down," said Yardley, who took 126 wickets in 33 Tests.

"I really hope the Aussie crowds get behind him, because he is a wonderful young man and a sensational cricket talent."

Though Muralidaran's action has been the subject of enormous scrutiny and conjecture, Yardley is adamant it is not beyond the limits of the law, which decrees his bowling arm can not be straightened more than than 10 per cent in the act of delivering the ball.

Yardley befriended Muralidaran in 1991 and was at his side in the challenging early years of his international career when his action was constantly being reported to the International Cricket Council.

"He has asked me to come and have a few sessions with him," Yardley said. "He and I are very close because I saw him through this. I have always believed in him.

"Back then I said to him, if they no-ball him out of the game, bowl leg-breaks and googlies. He does that just as well."

Yardley yesterday had his first live sighting of Muralidaran's mysterious "doosra" -- the delivery that breaks away from the right-handed batsmen -- and declared it "sensational . . . absolute magic".

Yardley could understand why Australia batted cautiously against Muralidaran in the first one-day clash, in which he took 2-30 from 10 overs, but believes more aggression would be timely in tonight's second match at the Dambulla International Stadium.

"If I was the Aussies, I would take a risk and go the other way the next game and charge at him, try to get him on the full and smash him," he said.


A Quick Look At the Win2K Stolen Source

From the various articles that I read, the warning was not to go near any of the stolen source due to its IP. This article on Kuro5hin has a review of some of the files in the code.

A quick, superficial look at the style and content of the leaked Windows 2000 source. I quote from the comments but not the code, so this should be safe for developers to read.


Several days ago, two files containing Microsoft source code began circulating on the Internet. One contains a majority of the NT4 source code: this is not discussed here. The other contains a fraction of the Windows 2000 source code, reportedly about 15% of the total. This includes some networking code including winsock and inet; as well as some shell code. Some other familiar items include the event log, and some of the default screensavers.

The timestamps on the files generally say 25 July 2000. The source is contained in a Zip file of size 213,748,207 bytes, named windows_2000_source_code.zip, which has been widely circulated on P2P networks. Some dummy files of similar size, containing just strings of zeroes, have also circulated.

There has been some speculation that while the bulk of the source is genuine, some of the comments have been tampered with to embarrass Microsoft. This is difficult to disprove, but I find it implausible. The embarrassing comments occur on thousands of lines, in realistic places. Furthermore, if someone had done that, it would have been easy to make the comments far more incriminating.



In the struggle to meet deadlines, I think pretty much all programmers have put in comments they might later regret, including swearwords and acerbic comments about other code or requirements. Also, any conscientious coder will put in prominent comments warning others about the trickier parts of the code. Comments like "UGLY TERRIBLE HACK" tend to indicate good code rather than bad: in bad code ugly terrible hacks are considered par for the course. It would therefore be both hypocritical and meaningless to go through the comments looking for embarrassments. But also fun, so let's go.

Curse words: there are a dozen or so "fucks" and "shits", and hundreds of "craps". Some dissatisfaction with the compiler is expressed in private\shell\shell32\util.cpp:


// the fucking alpha cpp compiler seems to fuck up the goddam type "LPITEMIDLIST", so to work
// around the fucking peice of shit compiler we pass the last param as an void *instead of a LPITEMIDLIST


Some insight into Microsoft's famous daily build process is given in private\windows\media\avi\verinfo.16\verinfo.h:

 *       !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 *       !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 *       !!!!!!!!!!!!!!DOING SO FUCKS THE BUILD PROCESS!!!!!!!!!!!!!!!!
 *       !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 *       !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Despite the above, the quality of the code is generally excellent. Modules are small, and procedures generally fit on a single screen. The commenting is very detailed about intentions, but doesn't fall into "add one to i" redundancy.

There is some variety in the commenting style. Sometimes blocks use a // at every line, sometimes the /* */ style. In some modules functions have a history, some do not. Some functions describe their variables in a comment block, some don't. Microsoft appears not to have fallen into the trap of enforcing over-rigid standards or universal use of over-complicated automatic tools. They seem to trust their developers to comment well, and they do.

However, not everything is so rosy. Some of the modules are clearly suffering from the hacks upon hacks mentioned earlier. As someone who struggled immensely trying to get the MSInet control working not long after this code was released, it's a relief to see that the inet code is as bad as I thought.

From the comments, it also appears that most of the uglier hacks are due to compatibility issues: either backward-compatibility, hardware compatibility or issues caused by particular software. Microsoft's vast compatibility strengths have clearly come at a cost, both in developer-sweat and the elegance (and hence stability and maintainability) of the code.


Open Source

It's been widely rumored for a while that Microsoft relies on stolen open source code. The rumor has faced widespread skepticism too. Microsoft has hundreds of millions of lines of code, most of it highly specialized. Hardly any of that could benefit from stealing: it hardly seems worth the legal risk. It's true that early versions of the TCP-IP stack were (legally) taken from BSD: but that was a long time ago, when Microsoft was much smaller.

Searching the code for "linux" and "GPL" finds no references. "BSD" finds only a couple of references to BSD-convention strings. "GNU" finds a lot of references to a GNUmakefile in private\genx\shell, which in turn mentions a "mode for Emacs." This is apparently legitimate: simply using a makefile does not apply the makefile's copyright to the resulting code.

Therefore, a superficial look at the code finds no evidence that Microsoft has violated the GPL or stolen other open source code. Closer examination might turn something up.



It's noticeable that a lot of the "hacks" refer to individual applications. In some cases they are non-Microsoft, such as this case: a Borland compiler came to depend on an existing bug, so their fix worked to preserve some of the bug's behaviour. But just as often these application-specific fixes are for Microsoft's own apps. There seems to be an informal hierarchy when it comes these: Microsoft apps take precedence, then major software companies like IBM and Borland.


It's also interesting to finally see references to the notorious undocumented features, which Microsoft application developers have long been known to use.



// These undocumented messages are used by Excel 5.0


// InquireVisRgn is an undocumented Win 3.1 API. This code has been

// suggested by ChuckWh. If this does not fix the s 2.0

// problem, then ChuckWh would be providing us with an private entry

// point.



* This thunk implements the undocumented Win3.0 and Win3.1 API

* GetCurLogFont (GDI.411). Symantec QA4.0 uses it.

* To implement this undocumented API we will use the NT undocumented API


In some cases, the programmers themselves appear to have been frustrated or surprised.


// Set the GlobalPopupMenu variable so that EndMenu works for popupmenus so

// that WinWart II people can continue to abuse undocumented functions.


// Guess what? Latent background color is always adopted for mosaics.

// This is a major undocumented find...



// Ah, the life of the undocumented. The documentation says

// that this guys does not validate, colors, act as a delimiter

// and fills with spaces. Wrong. It does validate the color.

// As such its a delimiter. If...



The security risks from this code appear to be low. Microsoft do appear to be checking for buffer overruns in the obvious places. The amount of networking code here is small enough for Microsoft to easily check for any vulnerabilities that might be revealed: it's the big applications that pose more of a risk. This code is also nearly four years old: any obvious problems should be patched by now.

Microsoft's fears that this code will be pirated by its competitors also seem largely unfounded. With application code this would be a risk, but it's hard to see Microsoft's operating system competitors taking advantage of it. Neither Apple nor Linux are in a much of position to steal code and get away with it, even if it was useful to them.

In short, there is nothing really surprising in this leak. Microsoft does not steal open-source code. Their older code is flaky, their modern code excellent. Their programmers are skilled and enthusiastic. Problems are generally due to a trade-off of current quality against vast hardware, software and backward compatibility.


Sound advice from ChrisAn.

Tonight I watched the movie "thirteen". Truely disturbing.

Every parent always says "It couldn't happen to my child". Every to be parent (like me & megan) says "We will do it right". I'm not sure today is any worse than in the past. Did parents in the 50's have the same scares that we have today?

If you haven't seen or heard about thirteen, it is the story of a 13 year old girl that befriends a popular girl in the seventh grade. The movie chronicles their sprial down into alcohol, drugs, sex, and theft. The movie is based on the real story of one writers.

I hear parents that want to be "friends" with their child. I hear about children's rights (to privacy, to disagree, etc). Parents are not there to be friends with their children. Parents have a right and obligation to not give their children unconditionaly privacy, to not let their children decide everything in their lives. When you have children, you have a life long obligation to be their parent.

I hear stories from various teachers that parents of their students come in asking the teachers to someone "make" their kids do homework. Guess what?! It's a parent's job to make sure kids do their homework, not the teachers. It's the parent's job to teach kids responsibility. It's the parent's job to teach right and wrong. It's the parent's job to know if their kid is on drugs.

I know that I will make mistakes when I'm a parent. It's almost a requirement of the job. I just hope that I will never be my kid's friend.


Download Free ASP.NET Resource Kit

The ASP.NET Resource Kit is an essential resource for any web developer whether you are already using ASP.NET today, or looking to learn ASP.NET.

The Resource Kit includes the following:

<![if !supportLists]> -        <![endif]> Ready-to-use, customizable Web applications with source code

<![if !supportLists]> -        <![endif]> Hundreds of useful code samples

<![if !supportLists]> -        <![endif]> Dozens of self paced, step-by-step programming guides

<![if !supportLists]> -        <![endif]> Training videos

<![if !supportLists]> -        <![endif]> Free training content from Microsoft Certified Technical Education Centers

<![if !supportLists]> -        <![endif]> Book chapters from popular ASP.NET titles

<![if !supportLists]> -        <![endif]> Technical white papers, and more

You also get load of free stuff from third party vendors:

<![if !supportLists]> -        <![endif]> ComponentOne Studio for ASP.NET is a comprehensive suite of components including grid, reporting, charting, data, user-interface, and eCommerce components for ASP.NET.

<![if !supportLists]> -        <![endif]> IP*Works! CC ICharge from /n Software provides and easy-to-use interface for communicating with major Internet Payment Aggregators (Payment Gateways). As a true .NET component, ICharge can be easily integrated in ASP.NET applications and provides a fast and easy solution for businesses that need to accept credit cards.

<![if !supportLists]> -        <![endif]> The NetAdvantage ASP.NET grid is an advanced grid with true hierarchical support and unbound mode, allowing you to provide a rich-client look-and-feel in your ASP.NET applications. 

<![if !supportLists]> -        <![endif]> Sax.net Security for ASP.NET allows you to protect your server from automated programs. A web page that contains the Sax.net Human Verification Component acts as a virtual gatekeeper who ensures that only real people and no automated programs fill out forms on your site. 

<![if !supportLists]> -        <![endif]> telerik r.a.d.rotator is a multipurpose component for DHTML content rotation and personalization. From stock tickers and news scrollers, to product spotlights, weather forecasts, testimonials, running promotions and banner ads, r.a.d.rotator delivers high interactivity and user involvement. telerik r.a.d.spell enables developers to add multilingual spellchecking capabilities to their ASP.NET applications.

Back In Action

My apologies for not posting the past few days, the main reason was the NewsGator died on me and crashed Outlook each time I opened it. So clever Outlook asked me whether it should disable the add-in and I said yes. After that I was too lazy to figure out how to enable it again until today, so I tried re-installing but that didn’t seem to work. That’s when I did a Google search and came up with this tip. To enable a disabled Outlook Add-in go to Help -> About -> Disabled Items and presto you’ve got your man there!

Microsoft co-founder to demo always-on mini PC

Vulcan, the company set up by Microsoft co-founder Paul Allen, will show off its FlipStart always-on mobile "mini PC" this week.

FlipStart is a compact 14.8 x 10.1 x 2.6cm (5.8 x 4 x 1in) notebook that sports an unnamed 1GHz processor and runs Windows XP. Vulcan's idea is to offer a machine that has the compatibility, power and application base of the mainstream Microsoft OS with a form factor that's little bigger than a PDA yet features a full QWERTY keyboard. Like a PDA, the device is designed to operate continuously, going to sleep when the lid is closed rather than shutting down completely.

It weighs under 450g (1lb), Vulcan claims.

Unlike a classic handheld, the FlipStart contains a 30GB hard drive and 256MB of memory. The "HDTV-quality" 5.6in 1024 x 600 LCD is driven by an unnamed (again) 3D graphics chip with 8MB of video memory. It's got 802.11b/g built-in, and Vulcan plans to offer optional Bluetooth and mobile phone network access modules. There's a single USB 2.0 to allow you to connect an external keyboard or other peripherals.

The notebook's lid features an optional control and display unit to allow users to check email, play MP3s or check personal information without having to open up the machine.

Vulcan isn't saying when the FlipStart will ship or how much it will cost. All it will say is that it plans to provide that information sometime later this year.