Adding fake stats to msn Spaces.

I was view the RSS for my blog, and was thinking about how the tracking worked. My first thoughts where that a simple 1x1 gif is load each time the entry is rendered in my RSS reader, and that this was bad, as I might not read a entry many time before finally having the time to read a entry. This may be due to the length of the post, or the entry been more in-depth, and my desire to read when I have the time to think it over. Anyway I was think (without having read any standards) there needs to be a better tracking method for view but not marked read, and read (ie changing status).

After this I then looked at the actual URL for the counter, and noticed that the viewed entry is just a encoded string, thus you can write what you like in the content of anybody’s stats.

http://c.spaces.msn.com/CollectionWebService/c.gif?space=valid-user-name&page=Messing+with+your+head&referrer=

Only the first 44 characters of the text make it through. You can add the referrer if you please, thus

http://c.spaces.msn.com/CollectionWebService/c.gif?space=valid-user-name&page=Messing+with+your+head&referrer=http://slashdot.org/

So you can now inject any valid URL you like in other peoples stats.

I’m not sure about other users, but I click each referrer to see how/why they got to me, but I’m not so sure I will now.

[Updated 15 May 2005] To remove my user name so my stats stop been hit.

C# Snippet - cast

One of my major sources of errors in my home game project are integer math issues. Where adding two bytes gets automatically promoted to an int.

Here is my snippet I wrote to quickly cast the issues away. I sort the error to get the cast error messages, double click to get the code highlighted, right click -> Surround With… -> cast. The default type is byte.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>cast</Title>
<Shortcut>cast</Shortcut>
<Description>surrounds selection with cast</Description>
<Author>Simeon Pilgrim</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
<SnippetType>SurroundsWith</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>casttype</ID>
<Default>byte</Default>
</Literal>
</Declarations>
<Code Language="csharp">
<![CDATA[($casttype$)($selected$ )]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

Roy Osherove’s interview with Kent Beck

I listened to Roy Osherove’s interview with Kent Beck.  My major thought throughout the interview was that they have very different discussion types. It largely reminded me of Marry Wilson from Checkpoint on National radio whose style is described as “uncompromising tenacious” that “has won respect from commentators, interviewees and listeners” and I have to say I hate her style. It would appear to me that she has the interview route pre planned, and when the interviewee does not confess the sin Marry is after see keeps asking more or less the same question with disregard to the answer given. Often interrupting a victim interviewee who is giving the non expected answer.

The common trait is that they both have a preconceived idea of where the conversation is going, thus ask highly focused closed questions. Then don’t listen when the answer is not as expected, well they listen, but they don’t dynamically change the conversation path to account to the feedback.

The best example is when Kent had to answer “Moo” “mu“ due to the question been overly complex and not making sense.

Another example was when Roy was asking Kent about how to deal with people not following the XP rules, and Kent reply that people follow the rules due to belief in the system not been told to do it. Roy just didn’t seem to comprehend what Kent was saying, and kept asking the same concept in different forms. I felt frustrated on Kent’s behalf.

When Roy was explaining how blunt Israeli developers can be reminded me of the Russian-ish (-ish because most weren’t from Russia and would be offended for been called Russian) co-workers I have worked with in the past, they come across as arrogant and contempt for others, but really they don’t attach emotions to ideas, so the concept of your code is not the best (usually said “your code is crap”), is just the expression of technical opinion. This is vastly different to the passive confrontational style most westerners would use.

Memory Usage - MSN Messenger 8.0 Beta

I know it is beta ware, but it is currently using 112MB of virtual (+30MB normal) RAM. I have two copies of Visual Studio 2005 running, one with Server product and the other with the client. One is using 150MB/195MB (normal/virtual) and the other is 17MB/88MB. So here are two products added real value and messenger is eating RAM for the fun of it. Even RSS Bandit is only using 40MB/72MB.

It’s time like this I’m glad to have >1 GB of RAM.

I still have two invites to the beta program if anybody wants in…

Kroll on Futures Trading Strategy

I read Stanley Kroll’s Kroll on Futures Trading Strategy this evening. First point is that book is 18 years old. But I found it a great reading. Kroll has an engrossing writing style that kept me reading till the end of the book.

His major point was that you need a good trading strategy over a good trading system. He focuses on drumming in the behaviour you need. Discipline.

On the trading system front he doesn’t really say how you should do it. He talks a lot about subscribing to chart services where you get mailed hard copy charts. He also talks about micro-computers and their increasing role is trading systems.

Aspects that Kroll talks about like not liking cocoa due to volatility and lack of trend formation would be interesting to compare with how the future markets are behaving now.

The biggest concepts from the book that I appreciated where:

  • Let profits run, and use moving stops take your profit.
  • Close loses early, via placed stops (verse mental stops) at your accepted risk level.
  • Lookout for intra-day/week volatility as professional traders manipulate prices trying to fleece stops (buy/sell reversals) above major resistance points.

Which I think apply to any market, not just the futures markets.

Worst How-To ever.

Somehow I got on the MSDN C# code snippets sections (there are a whole lot of snippets that come with VB.Net but not C#) and I saw a link to How to: Restore C# Refactoring Snippets so I thought cool, maybe I can write some of my ASM -> C# in refactoring snippets, if that’s how the refactoring functionality is programmed.

So I read lots of page after that, and I was getting an over whelming feeling of poor documentation. Ie Snippets are either not very useful, or not worth writing much about them. But the length of the articles was getting really small.

Then I came across the most worthless article of the lot. Bold is add be me.

How to: Share Snippets with other Developers

  1. Create a snippet file that contains the code you want to share.

  2. Share the file you created with other developers as you would share any other file, including mail attachment, network share, and floppy disk or CD.

That’s some life changing advice right there folks…

Podcasts

Wow, I’ve not really listened to many podcasts, but last week Paschal Leloup posted that IBM is doing podcasts. I downloaded the current collection. The first five (Driving, the Home, Shopping, Our Past, Banking) but the sixth Our Cities felt like it went nowhere, and the seventh/eight Online Games didn’t cover any new ground. Crime was good, and I’m currently listening to Sports.

Other than these I’ve listened to some Roy Osherove interviews. If I was commuting, or doing mindless work (more often) I could really enjoy listening to more podcasts.

If anyone has a sensitivity to links I’m sorry for the link spam…