Friday, December 31, 2004

New Year's Resolutions

The new year is about to begin. Only one second remains. I recently installed Google AdSense - I guess I could use the pocket change to go to Starbucks once in a while. Well, I hope I will earn enough money to go to Starbucks twice in a while; I guess that is all I can ask for. Perhaps, I will get a life. Happy new year!

Posted by Oleg Ivrii, 11:59 PM / Comments (1)

Numbers...

At times, online chess becomes all about rating. The actual games don’t matter anymore… and all you want is rating, fast, “cheaped” out unfairly, stolen - simple brutal vindication. You are told, “Relax man, rating is just a number”. Who wouldn’t want a high rating? The phrase was said countless times by low rated patzers who given up real chess and moved to losers. Play enough losers, and you’ll become a loser yourself. Losers never sleep.

Bettingbot chips don’t matter? Said by a bunch of “channel-280-people”. Rich sonuvabitches. “Its not real money.” Well how close to real money can you get? Chips don’t matter when you are broke? Actually, its the other way around: chips don’t matter when you have a lot. Because numbers grow. What I want is a challenge - not something trivial or something impossible - a place where numbers matter.

Posted by Oleg Ivrii, 05:00 PM /

The Minimax Algorithm

A while ago, I built a home-made chess engine. It was not very strong, but was a “worthy” opponent. In a few posts, I will describe the basics of how its done (and more!). Chess is a “zero-sum” game meaning that a player can only gain at someone else’s expense. The core of the chess engine is the famous Minimax algorithm. In chess, there are two players - lets call them Sean and Vlad.

How does Sean evaluate a position? If he has mate, he evaluates the position to positive infinity. If he is getting mated; however, he evaluates the position to negative infinity. Sean wants to maximize this value - but Vlad also gets a say in this. Vlad, clearly wants to minimize this value. Hence, Sean’s value is the minimum of the values resulting from each of Vlad’s replies. Here, Sean is whats known to be the maximizing player, and Vlad as the minimizing player.

However, Sean is unable to calculate all the possibilities till the end of the game, so at one point he would have to “guess” the value of the position. At one point, he has to intuitively look at a position and decide how good it is. He will examine factors such as material, king safety and pawn structure and eventually decide: “Okay, I am winning by +2.33 pawns”. This is known as a heuristic evaluation. Of course, this is still guessing and Sean would have to hope that he’s guessing well.

In this case, Sean looks only so many moves ahead. This is called the depth. The number of possibilities increases exponentially with each half-move or ply. The rate of increase is called the effective branching factor. However, Minimax all by itself is not very efficient. One could greatly increase depth by means of a pruning algorithm. But more on that next time.

Posted by Oleg Ivrii, 01:12 PM / Comments (2)

A spam story

When I returned from the Summer Conference, I put the photos up on the web. Then, I asked different people to take a look…

To my amazement, Richard gets an “access denied” message. So I ask him for his IP. Out of all IPs floating out there, I recognized his. Its not a number you memorize, its a number your remember. A few months ago, it was a major source of spam. Trust me, it was not fun. Richard’s computer was infected with the worst kind of virus and he didn’t even know it. The virus not only sent spam, it also forged the email addresses; hence other people were getting the attachments from Richard but supposedly from my email address… and then they were asking me whether I am infected!?

I mean come on, this coming from a lame PC user? But from Richard - an IOI alumni!? You’d expect the guy to be some sort of a computer genious… only to find out that he is a spammer!!

Posted by Oleg Ivrii, 11:31 AM / Comments (1)

Thursday, December 30, 2004

Why?

I ran www.vladio.com for a couple of years as a small website about gaming, hosting some clans in the good days of Counter-Strike, and providing POP3 e-mail service and a CS server, until I was shut down by Rogers for breaking the contract - bastards. Maybe it was the 24/7 max bandwidth usage, maybe they just got lucky, who knows. Anyway, since I hated all web server providers, I left vladio.com unchecked for a bit. It just so happened at that time that the domain name expired. A couple of weeks after that happened, it came time to buy it back. So I go to check that it’s still there - and what do I see? The HUMOUR NETWORK has made www.vladio.com it’s home. Why VLADIO? That’s not funny at all. It’s still up, unfortunately, but by the content, I doubt that will last.

Posted by VladiO, 01:59 PM / Comments (3)

The Journey Home

It was the end of my adventures, or so I thought. It was time to go home. Iternary: Moscow to Paris, Paris to Toronto, Toronto to Montreal. Why Toronto to Montreal? Funny thing is, tickets are cheaper that way - this would complete a full circle from Montreal where our IMO Training Camp was held. Of course, I would just walk off at Toronto…

The only problem is - Charles de Gaulle Airport is the second biggest mess in Europe. The Air Canada flight to Toronto was initially scheduled from Terminal 2. However, midway my adventure, Air Canada was moved to Terminal 1 and I had to take a shuttle bus to switch terminals. To make matters even worse, the Aeroflot flight arrived 15 minutes late.

I ran right through the terminal… between me and Toronto was the Air Canada guy (local Frenchman). “Where are you going?” — Toronto. “You can’t go to Toronto. Its too late.” — Why? “The plane is gone.” — Except, its not gone. (What? They couldn’t afford an extra bus?) He grabs my passport and tickets out of my hand (without my consent). Then, he starts talking to his assistant - all in rapid French. I understood nothing. Then he looks back at me. “Paris - Toronto, Toronto - Montreal”. He tells me that I am in luck and that he will put me on the next flight to Montreal which will be in 2 hours.

Of course, I don’t want to go to Montreal. He says “We are responsible to take your final Air Canada destination.” — But I live in Toronto. “Thats not my problem - you would have to get to Toronto on your own means.” Then he mysteriously disappears. I go to the Air Canada check-in team. The check-in team doesn’t know what to do. They either don’t understand my problem, or simply too lazy to help me. They tell me to go to ticketing. I go to ticketing (its outside the security/international zone). But nobody’s there. I spend 7 € to buy a phone card I will only use once. Time is running out… and off I go to Montreal.

I spent one hour going through customs. My luggage doesn’t turn up - apparently, it didn’t miss the flight to Toronto (which is strange because I did). After filing for lost luggage, I go to connections. The connection guy tells me that I have no ticket (the French stole both the Paris - Toronto and Toronto - Montreal coupons) and forwards me to ticketing. The ticketing guy tells me that theoretically I could have refused to fly asked them to book me to Montreal via Toronto the following day. However, back in Paris, I was never given that choice. He tells me that it would be better to buy a brand new ticket. So, I am him “How much” — $300. “You crazy?” — You could buy a ticket from Jetsgo. “How much would that be?” — a little over a hundred dollars. I tell him to go to hell.

I had no money; I have no food; and no way to get home. Luckily, I have a Canadian calling card - so I call home. Dad tells me to take a shuttle bus (luckily, its free) to the VIA Rail Station - he reserved a ticket for me through the internet (its only $80). Too much crying that day. So, I am left to wait 5 hours for the train (it departs at 11:58PM). I call a bunch of friends. Dad meets me at Union station - I didn’t even have a TTC ticket. After a fun subway ride - I am home. My adventures are finally over.

Posted by Oleg Ivrii, 01:34 PM / Comments (4)

Wednesday, December 29, 2004

And now...

Gotta love poker. This is a recount of a game that went down about a week and a half ago at my house. We used… uuuh… monopoly money. Yeah.

The game begins with low limit hold’em - 25 cent max bet - $10 buy in. The chips are dealt out, the cards are shuffled, and we’re off. The first hour goes pretty smoothly, as I take the entire stack of chips from my opponent. A key play was when my opponent flipped the cards too early and I saw that I was beat, but said “Nice!” and bet a huge sum, forcing him out of a pot that he otherwise deserved. I flipped my cards to show the bluff - a future set-up. Having owed him a single dollar from before (for buying lunch), I decided to give it back, so that he could play with it.

Thinking that I would quickly win it back, I begin raising with a medium strength hand - T8 offsuit. My opponent has a jack. By the flop, I managed to come up with a pair of tens - the high pair of the board. So… sensing nothing in my opponent, I challenge him for the rest of his dollar. He accepts, and flips over a J6 offsuit. I was very relieved… but then came the turn — a JACK, one of three of the remaining 45 cards that my opponent would need to win this hand. No help on the river… and suddenly I was up against two whole dollars.

Over the next hour and a half, I slowly lost the $10 back, getting absolutely nothing in terms of cards, until I saw my break. Once again having flopped top pair on the board - a 9, with an ace for a kicker, I sensed the opponent having missed his high card that he bet on before the flop. I shot in a pile of chips - $4 in quarters. My opponent waited… then raised. An obvious bluff I thought, and re-raised all in. He called. He flipped over a TK offsuit. The turn… no help to either player. So it came down to the river - my opponent would need to hit one of his cards to stay in. Well, it came in the form of a ten. Unbelievable? The fun was only about to begin.

So I’m sitting with nothing, thinking that this has gone too far. I buy $24 of chips from the bank, and we agree to change the stakes to no limit. This is where the instincts kicked in. Though losing the first few hands with the now rather big blinds (50 cent/one dollar), I began coming back over about a half hour. Still down about $8 from the original starting point. Then came the key play of the game. After the river came, I was holding pocket ducks, and said “Whadda you got?” trying to draw some emotion and betting from the opponent, hopefully getting a read on him. He paused, then flipped his cards on the table before makign a bet. I was ecstatic - he was holding an ace high! Calmly, I said “You forgot to bet… but now that I know what you got, I bet”, and I reached for my stack to count out $5.50, while making nervous twitches to draw reaction. The pot got big. My opponent looked at the chips I put in, then at my unturned cards, then at me, and realized that this was the same bluff that I had tried a few hours ago! I was hoping for a raise, but didnt expect it - he called. I flipped my deuces and raked in a huge pot. The game ended about twenty minutes later, after about a 40 cent change in either direction, not sure which.

I came out of this game down a dollar and some cents - a very fortunate outcome considering the hands (some of which I mentioned). In fact, since I paid a dollar back during the game, I was down a few cents. What can I say, we’re high rollers. In case you are wondering who the opponent was - well you’ll hear about later.

Well, that’s my first article on the Big Party. Enjoy it and expect more.

Posted by VladiO, 10:22 PM /

Going Camping

Good readers! I am going (math) camping up north (York University) from Jan. 5 - 9. That doesn’t mean you shouldn’t check my blog (you should have it syndicated anyway) - remember what I said: I have contracted my cat to do it for me; wait… I did not say that, I said that my blog can travel trough time! How this matters to you: it only means that I won’t be able to reply to your comments - wait, I don’t do much of that anyway! :)

I will be giving a few friends “author” privileges so they can post stuff too.

Posted by Oleg Ivrii, 10:19 PM / Comments (3)

Tuesday, December 28, 2004

No, don't come over!

This is not an advice to my good friends - but rather to my “best” friends. By “best” - I don’t mean best friends - but the ones dealing with math or computer science or whatever - somehow “dealing”. Feels a bit irritating, doesn’t it? I am not a loner or anything… I like when friends come over, we have a lot of fun… but not these friends.

When they come over, we have nothing to talk about. With them, talk has become an eventful thing - we can talk over math, over computers, over stuff - over trees, over a hike… but nothing %&#!ing happens at home. We try to play computer games, but they are simply not fun. No, we just cannot play those modern action shooter games - we have to play stick death. I simply don’t know how to entertain them.

This very instant, one of them is here - upstairs; while I am here down stairs typing this up. And now, I feel somehow bored - and will go up.

Posted by Oleg Ivrii, 06:53 PM / Comments (2)

Monday, December 27, 2004

Are Coincide

I and [opponent] are playing a game. Both of us are there just to qualify. I offer draw, opponent accepts draw. This is where the fun begins.

I say: I don’t care       Reply: I don’t care

I say: I just want to qual       Reply: I just want to qual

I say: lol       Reply: lol

I say: we said the same thing       Reply: we said the same thing

I say: four times too       Reply: four times too

I say: five times, actually       Reply: six times, actually

Funny, how people from completely different places think the same. The guy is Australian, by the way.

Posted by Oleg Ivrii, 02:44 PM / Comments (2)

Sunday, December 26, 2004

Kriegspiel Championships

I played the ICC Kriegspiel championships today - both the 1 0 (1 minute per player) and 3 0 (3 minutes per player) divisions. In 1 0, I attained 6th place with 5/9 - Quad Elimination; and in 3 0 - second place with 7/10 - Triple Elimination. To participate in such events, one needs to do “well” in the qualifier tournaments which were held last week. Players which qualify but are not logged in at the start of the event must forfeited. Our good manager forgot to do this, so we started, had to abort (the absentees were paired just as well) and start over again. The guy who got 1st place - won both tournaments - and is also from Toronto, Canada. Well done.

Posted by Oleg Ivrii, 08:01 PM /

Saturday, December 25, 2004

Mysterious Downtime

Merry Xmas! Molten Studios was hacked. No kidding. Actually, the whole server xxxx.moltenstudios.com hacked. As a result, it was unaccessible between (Dec. 24) 4:56 - (Dec. 24) 5:13 and (Dec. 24) 5:32 - (Dec. 25) 5:22M. Captain’s log:

Dec. 21, 2004. 1:41 PM. I receive an email from [QWK.net : Services] regarding an “Emergency Maintenance”:

QWK.net had a customer implement insecure website code. This customer’s code was compromised. The hacker then had permission to compile some Perl scripts to wage ware on the server. There will be a period during the clean up period where server xxxx.qwknetllc.com will not be available to the public while we restore information from tape backup.

Dec. 24, 2004. 4:56 PM. I cannot connect to my website. I check my email. It says: “Account has been suspended because [BLANK]”… No reason is provided. It looks like one of those automated messages.

5:13 PM. I get the email “Account has been resumed”. This only lasts twenty minutes…

5:32 PM. I get another “Account has been suspended” email. Like last time, no reason is provided. I try my website - and it works. But in a few minutes, it stops working again - and this time for “good”. I send a “trouble ticket” to QWK.net.

Dec. 25, 2004. 2:54 AM. I receive another email from [QWK.net : Services] titled “Important security advisory”:

For almost the past 12 hrs we have been dealing with a handful of scripting attacks driven from Google and other sources. These are variants of the original santy worm that earlier this week took out over 40,000 servers in just a few hours… Even though we are running the latest versions of Apache and PHP, We have also been under attack by a new compromise that is yet to be defined.

Afterword. QWK.net asked customers to upgrade their PHP and Perl scripts to the latest versions. I have upgraded Movable Type to v3.14 - which fixes numerous bugs and security leaks. I have other “heavy duty” code running, but this blog was definitely the center of QWK.net’s attention.

Posted by Oleg Ivrii, 11:08 PM / Comments (5)

Friday, December 24, 2004

Bloody Mess

Mir, Belarus - Tournament of Towns Summer Conference

Janos and I settled in a room with two Germans. Four of us knew little of Belarussian communism. We were being watched - and marked on a 2 - 5 system. They had a billboard in the lobby… our room deserved a 2 everyday, but they gave us 3’s and an occasional 5.

How did the mess come about? I arranged my clothes in nice neat piles on the window sill. You know, every morning, you grab a new set of clothes and your off for the day. When you work on problems, you accumulate a large stash of paper. Now, where do we keep it? On the desk? There is no space left on the desk. The beds? We are working on the beds. So we had nice stacks of paper conveniently arranged on the floor. Thanks to the watermelon, our garbage was overflowing - we had to sneak half of it next door to the Serbian room.

The troubles started when the cleaning lady came in. She simply didn’t know what to do. We thought she was doing us a service and we told her that it is OK, that she didn’t have to clean, and that she could come back tomorrow.

She called in the landlord. Man, was he ever bitchy. “What are the barricades doing there?” - pointing to the window sill. “Where is the pillow case?” - he was especially bitchy about the pillow case. “What is the paper doing on the floor? Up, clean it up. This place is a sewer. If you don’t clean this place up by tomorrow, you boys are going to pack your stuff and leave!” Then he paraded some organizers through our room. Since I was the only one who spoke Russian, I took most of the blame.

The next day, at breakfast, the landlord announced messy rooms. “Room 341 - St. Petersburg. Very messy room… [But the credit goes to] Room 343 - Canada/Germany - The worst room of all. An absolute sewer.” Luckily, we cleaned up before the inspection came in.

Posted by Oleg Ivrii, 11:43 AM / Comments (1)

Look beyond the fog!

Its not chess, its kriegspiel! In this chess variant, you don’t see your opponent’s pieces. You can only see your own pieces, and have to guess where your opponent’s pieces are. When you try to make a move, if its illegal, you should make another move instead. To monitor both sides, a referee is required. He or she makes the following announcements when appropriate:

  1. Pawn at [square] captured
  2. Piece at [square] captured
  3. Rank check
  4. File Check
  5. Long-diagonal check
  6. Short-diagonal check
  7. Knight check
  8. [number] of pawn tries

Like Stratego, it is a game of incomplete information. Even mating with a king and a rook isn’t as trivial as it seems. Games with complete information or no information at all have been well analyzed, but the theory for games with partial information has yet to be developed. A truly complicated and charming game.

Posted by Oleg Ivrii, 01:56 AM / Comments (2)

Thursday, December 23, 2004

The Time Is Not Now

Thats sounds likes a contradiction… because the time is always NOW. Movable Type, the blog’s publishing platform, has a peculiar feature of posting entries into the future. The 4:11 post was actually posted three hours in advance, about the time I went to sleep. Speaking Movable Type, you can also change history - second meaning implied.

The cola supply has been depleted. Time to move on to eating the cake. Time is twisted - and I think that I already got trapped in that basement.

Posted by Oleg Ivrii, 04:54 PM / Comments (2)

The Dogs are Evil

Gorodets Labour Camp: July 20th - 29th

We stayed at the “main” building. However, our duties required us to venture beyond the house walls. There was only one entrance - and that was also the exit. At that exit, there were two dogs. One was a large black and especially angry dog. The other, tan in colour, was smaller but barked just as loud. The dogs petrified us throughout the camp - even after repeatedly being told that dogs were completely harmless.

The distance to the spring was a hundred meters down slope. Even if you managed to sneak past the dogs with an empty bucket going to the spring, there was no chance in hell you could get by them when you returned. One time I was carrying two buckets. The dog stole one of them and drank half the contents. Bummer - quarter of the hard work had went to waste.

The “washrooms” - two nice wooden hole-in-the-ground toilet boxes - had locks on both the inside and the outside. The outer locks just kept the door in place - as a method to lock somebody in, they were useless. At night, Janos “preferred” to create his waterfall off the 2nd floor balcony (he never actually did it, did he?).

Posted by Oleg Ivrii, 04:11 AM / Comments (3)

Just leave me alone!

My brother and his girlfriend/fiancee/wife - you take the pick came all the way down from Montreal to visit me for Christmas. All’s well except that they have me in their plans. But I have plans of my own - like building that balloon. Somehow, they believe that their plans superscede mine - that they feel that they have the right to decide what I should do with my time… Well, I am sorry - they just don’t.

They tried everything - but I resisted and they got nothing out of me: only wasted five hours of my time. That is a heavy toll… and my adventure simply isn’t turning out too well! Don’t dream - I won’t be flying those ever-friendly skies anymore. But its victory nevertheless - trouble is trouble, and I got rid of them for good. “Go away and never come back!”

Posted by Oleg Ivrii, 01:50 AM / Comments (4)

Wednesday, December 22, 2004

Theorem on 12

Mir, Belarus - Tournament of Towns Summer Conference

From my log on the Tournament of Towns in Toronto website:

The conference was driven by the willpower to research rather than competition. On the first day, we were presented with a few projects: series of connected tasks. We were to choose one or two of them to work on during the week. There aim was not to prove one main theorem, but rather develop a technique.

Janos and I teamed up to prove the Theorem on 12. Progress went well underway. The jury responsible for the problem promised the first team who solved it a prize. Can you believe it - we were that team. So we claimed our surprize - a big, green, juicy watermelon. Now, if in Gorodets, there was no beds, in Mir, there were no knives. But luckily, we had scissors. It was a bloody mess, and we had established a reputation of having the messiest room at the conference. Half the watermelon went to waste.

Originally, we handed in our papers to Dorichenko, but we found Skopenkov to be friendlier (in terms of marking). After the Semi Final, we were given additional problems. In one of them, we found out that we could classify the entire theorem in just a few cases (up to affine transformation). Thats like making us do hard work the old fashioned way and then spitting in our faces.

Posted by Oleg Ivrii, 03:08 PM / Comments (5)

Tuesday, December 21, 2004

Folding Articles

Sometimes I will fold articles. This means that only half of the article will be displayed on the index page, followed by a link to view the rest. This would keep my web page feel more compact. This change affects only the index, so the archives remain untouched. I bring this up because… I simply don’t want to bring it up. But now that I am in the state of controversy, I must do so. The thing is, that I just don’t want to bother (and I simply don’t care) creating formal guidelines when and where to split the articles (it sounds so boring, and I rather spend my time being more creative). So I will do so randomly when I feel like it. And that shall be my formal policy.

Posted by Oleg Ivrii, 01:21 AM /

Monday, December 20, 2004

Wake up, everybody!

The hotel offered many obscure services such as wake-up calls. There were many phones in the building - in rooms, in corridors and in the elevators. One could request a wake up call from any one of them by dialing 52 followed by the room number and the time. Some contestants abused this feature to wake me up two times during the night before the second day of the Olympiad. And of course, since the pundits didn’t dial from their room, they were never caught!

Posted by Oleg Ivrii, 04:17 PM / Comments (2)

Such a loser

People in my exercise science class are such losers. Well, not all of them (of course!). So this is the situation: We have a supply teacher and we are playing around on the computers. I tell the guy next to me about my blog. He looks: “Oleg’s Big Party”. It just doesn’t spark any interest in him. What a loser (even though he thinks I am a loser).

The guy next to him doesn’t even bother to look. He is playing slime with himself. Normally, he’d be winning on one side and losing on the other - but can you believe it, he is losing on both sides. Wait, he is the loser.

How do people become such losers? Explanation is obvious and is thus omitted. Too bad that the words loserness, losership, loserability simply don’t exist (at least in the English language anyway). I leave the task of defining them to you.

Posted by Oleg Ivrii, 03:26 PM / Comments (1)

Sunday, December 19, 2004

The box is nasty

$24 and it was worth it… There were nine people, but we substituted Ivan with Andrew. When its freezing, people tend to wait inside the restaurant. Five of us were waiting inside; four were waiting outside. Good to know that the majority is smart. Fortunately, both groups had a cellphone. Needless to say, it was a pleasant reunion 15 minutes later after the time of reservation.

The food was delicious (and nutritious). I think I gained a few pounds. Normal people measure in kilograms, but pounds - well there are just more of them. There was this box (made of leaves) stuffed - no filled (because you obviously don’t eat the box) with the most disgusting stuff you have (I have) ever seen. Thinking of it makes me sick: if you (I) thought it smelled bad, it tasted even worse.

I must thank Charan for being such a good driver and dropping me off at a familiar (albeit undisclosed) location.

Posted by Oleg Ivrii, 09:40 PM / Comments (3)

Its Xmas time!

I don’t know about your house, but in my house, Christmas is “something special”. Two hours is all it takes to assemble the tree (yes, it is synthetic - we were using it every year for the past decade), lay the cables, route the lights and put up the toys.

Result of my two hours.

Posted by Oleg Ivrii, 02:53 PM / Comments (3)

Saturday, December 18, 2004

Away, my friends!

“I change words with those that dime.” And for me at least, “buffet” and “away” rhyme. Tout suggested “Buffet City” and it seems like a cool place. He will make the reservation.

Location: 3160 Steeles Ave E, at Woodbine. Phone: (905) 474-9899. Map: Google Local. Time: 6 PM. Cost: $25 should easily cover your expenses (including tax and tip).

So my list includes: Adrian, Oleg, Tout, Kirill, Ivan, Charan, Amir, Eric and Nick. Running total: 9 people. If you want to come or can’t make it, please inform me before 12:30 PM tomorrow. We meet at the restaurant.

Posted by Oleg Ivrii, 09:11 PM /

Army Reserves

For text formatting, this blog now uses John Gruber’s Markdown and Smarty Pants plugins. This change is reflected in the colophon.

It is hard to search through your history for fun, entertaining events. It is even harder to write about them. Sometimes, I will post something that you already know, possibly something that I have already written about three months ago.

Writing is very unpredictable - there is no way of telling when you will be productive; and when you won’t. So when you have to write “against the clock” (on a daily/monthly schedule), you have to keep reserves. And sometimes half-finished reserves pile up: too frustrating to finish, and if finished, too frustrating not to publish.

Hook had to write a physics paper every two weeks. Half the time, they were obvious; the other half, they were wrong.

Posted by Oleg Ivrii, 08:31 PM /

Amazing Claim

University of Waterloo - Mathematics Seminar

For the morning session, my group had this professor-guy who was obsessed with talking in point form. Each time before he proved a theorem, he loudly announced "CLAIM". David made a tally of the number of times the words "CLAIM", "FACT" and "NOTE" were said. According to the it, by the pigeon-hole principle, there was a minute when the professor said "CLAIM" three times.

Once the professor stated a theorem and said "This is another claim. CLAIM!". Another time, he even announced "STORY" (and told us a story). Also, when the chalk broke into two pieces (stupid university just couldn't afford normal chalk), the professor madly threw the remaining piece (that was still in his hand) at the board and cursed for a while.

Posted by Oleg Ivrii, 01:10 AM / Comments (4)

Friday, December 17, 2004

All you can eat!

Just a few days ago, I was sitting on the exact same chair doing homework and drinking stimulants (only cola). Now, I feel a little hungry - and I want to go to a buffet. Personally, I like Oriental Feast: Location.

I am thinking about Sunday - 19th or Monday - 20th (tentative time: 8PM) and if you want to come, send me a tell over MSN or drop me an email. Twenty dollars should easily cover your expenses (food and tip). Date and time to be finalized by Sunday.

Posted by Oleg Ivrii, 08:45 PM / Comments (2)

Google Suggest

When it comes to internet searching, you need Google. The "competition" (A9, Clusty, blinkx and MSN search) are far behind. Last month, Google announced Google Scholar - and only recently, Google Suggest. I played around with it and this is what i found:

Query Suggested With Top of the List
oleg ivrii 6 letters +2 more letters
firefox 1 letter +0 more letters
macbeth 4 letters +0 more letters
kazaa 1 letter +0 more letters
george bush 2 letters +0 more letters
halo 2 1 letter +1 more letter
starbucks 2 letters +3 more letters
google 1 letter +1 more letter
ipod 1 letters +1 more letter

Of interest, the suggestion list is ranked in terms of how frequently a particular query is searched rather than by the number of results.

Posted by Oleg Ivrii, 03:34 PM /

Odd Elevators

Athens, Greece - International Mathematical Olympiad

There were six elevators in the building to serve the twenty floors, the restaurants, shops, offices and the pool deck. They were very small - one could even call them 'miniature'. Interestingly enough, there were other even smaller elevators for the workers to transport equipment. There were three elevators on the left and three on the right. Some contestants always went in elevators on the left while others always went in the elevators on the right. What's the difference you might think? Interestingly enough, elevators on the left stop only at odd floors while the elevators on the right only stop at even floors.

Posted by Oleg Ivrii, 01:24 AM / Comments (1)

Thursday, December 16, 2004

Inflated Ratings

Last year, I wrote my ISU for Data Management on the "Statistical Analysis of Internet Chess" [SAIC]. I studied the correlation between the duration, the number of moves and rating deviation. Here is the bulk of my research:

The classic etime (expected length of the game) is measured by the formula etime = time + (2/3)*inc. This formula comes from standard (long) games which last for 40 moves (on average). Under the official rating system (16 + D/25), the standard deviation is around 350.

It was decided that blitz games should be rated the same way. This may be convenient, but from a statistical viewpoint, it is a disaster. This is because blitz games are 60 moves long (on average) and hence the classic etime formula does not apply. This results in a greater standard deviation - around 425. That means the ratings are more spread out: standard chess ratings are capped by 2800 - but blitz ratings go well above 3300.

So what if the ratings are inflated? In a perfect rating system, it is expected that when two players play a sufficiently long series of games, their ratings will be approximate their 'true strengths' (relative to the other players). Hence, rating is meant to be a fair game. But in blitz, there is no such balance. That means that some players are more profitable to play then others.

Posted by Oleg Ivrii, 04:29 PM /

To hell with it!

I hate losing. Especially to patzers like Vlad Baranov. We played nine-dot - a Tic-Tac-Toe type of game played on a 9x9 board. We played to 21, win by 2. And today I blew it. It ended with the score 26 - 24. Just a couple of games ago, it was 23 - 24 in my favour. In fact, I am blowing it to him the third year in a row now. I just hope that we will be in separate classes next semester - or I will blow another season.

At least, the homework is finished and nothing's going to stop me now from enjoying a good night's sleep.

Posted by Oleg Ivrii, 01:39 AM / Comments (1)

Shoot 'em down

Montreal - IMO Training Camp 2004

Even though we were doing a lot of IMO preparation in Montreal, we also had free time. At one point, I decided to build a fleet of 25 paper airplanes. The place where we stayed had 2 floors. I spent quite a while getting the planes onto the window ledge near the ceiling. The problem came when our leader ordered me to take those planes down. Since the ledge was 4 meters above the first floor, it was clearly unreachable. Janos and Jacob decided to have a little fun too. Together, we made more airplanes and started shooting the old ones off the ledge. It was a very long and seemingly diverging process because most of the time instead of knocking a plane down, we simply got another one up there. The planes were very resistant, but in the end, teamwork won.

Posted by Oleg Ivrii, 01:15 AM / Comments (2)

Wednesday, December 15, 2004

Friendly Fire

When you are me, it happens all the time: people bump into you on the street; people spill their juice on your binder; people do stuff to you. Whatever the case, they always say one thing: "I am sorry". This phrase has truly lost its meaning. First of all, most likely they are not sorry. A good reply is: "You better be... (pause) if you so say so".

Secondly, you don't need them to acknowledge that something bad (unpleasant) has happened to you. If you notice it, then they are not being informative - they are being annoying. You could say: "Of course you are sorry, don't tell me the obvious!" The only time telling the obvious actually helps is when you are swearing.

If you don't notice it, then they are only being insulting. Here you have two options: (1) Ask them if you care. (2) Say that you are the sorry one. The only time when you should be saying "I am sorry" is when you want to insult somebody and as a civilized person, you are apologizing in advance.

Posted by Oleg Ivrii, 09:07 PM / Comments (1)

Movable Type

Oleg's Big Party has moved to a real publishing system. Quality writing deserves Movable Type. I have transferred all my previous posts along with your commentary. Unfortunately, I have not figured out a way to set the date and time of when the comments were published. So they are all dated Dec. 15 - which is today.

I syndicate a lot of interesting feeds and sometimes I come across things I might want to share with you. That is why I will create a Link List, essentially, just a blog of links (with brief commentary). This will have an RSS feed as well. So syndicate that too.

Posted by Oleg Ivrii, 05:34 PM / Comments (3)

Tuesday, December 14, 2004

Oleg's Big Adenture (Part II)

Today, I continue with my big adventure. This is part 2 (of 3). The title suggests that it is a big adventure, and indeed it is. That is why its going to take THREE parts. Today's Theme: Being resourceful.

Yesterday, I said that I will build a balloon, eat cake and play video games. I also said that I will dig a hole in the ground and defeat the legendary The Gamer's Man. Now for more.

So, I will come to the room with treasure... Now, treasure is usually found in chests. And what do you know? In the middle of the room, there would be a nice, big (and pretty heavy) chest. But unfortunately, it won't be filled with treasure. When I will reach to open it, a big red rubber punchie will fly out and hit me in the head. This will knock me down backwards and I will fall on a switch triggering a trap door. Behind the door - a staircase - and I will roll down the staircase.

Now, this would be a pretty stupid thing to do. Of course, I have not done it (yet). But knowing this (would happen) in advance, I should be smart and avoid this whole trip altogether. Except, sometimes I am not. Well, lets put it this way: I have tendency to get into trouble. And if this won't happen one way, it would probably happen another way.

Then, a cage will drop from the ceiling and I will be trapped. But, I will not be trapped in the cage, because it will miss me - I will be trapped in the dark basement. Normally, you can come back the way you came, but the impossible will happen - the staircase will disappear. Actually, it won't disappear, even worse - it will exist no more.

So you want to know how I plan on getting out. Or rather how I will plan to get out. Well I don't know yet, I might tell you later when I return from this trip (although thats unlikely considering I will be trapped in some stupid basement). But you know, I am clever and I will think of something.

In the basement, I will find a telephone. But it won't work because it would not be plugged in. Why not plugged in? Because there would not be any sockets in the basement. (I doubt that there are any sockets now but who knows - strange things happen in these kinds of basements). In fact, I will find the telephone absolutely useless. Then, why am I telling you about this? Because I could sure use one now. Actually, the real reason why it would not be plugged in is because it is a cellphone.

Anyways, I will take out my trusty calculator and use it as a laser. This will blast a big hole in the wall. I will go through the hole and pass to the basement of my neighbour's house. You will find out what will happen to me next tomorrow.

Posted by Oleg Ivrii, 06:46 PM / Comments (5)

Monday, December 13, 2004

Charge that Player

Athens, Greece - International Mathematical Olympiad

The hotel were we stayed in Athens had really good sockets. To recharge my CD player, I would need to plug in the recharger through a transformer and a socket adapter. However, in the hotel the sockets were in round holes in the wall. The rectangular shaped adapter simply couldn't fit in those holes. As a result, my CD player was left uncharged. Later in Mir, I had a slightly different problem. The weight of the transformer and the recharger was significant enough to pull the adapter out of the socket. Luckily there was an "adjustable" table. It was made by the students themselves like the rest of the furniture. I tweaked its height a little by leaning it sideways. After this, it nicely supported the weight of the transformer and recharger. However, further tweaking by my roommates ended my short-lived happiness.

Posted by Oleg Ivrii, 05:19 PM / Comments (2)

Oleg's Big Adventure (Part I)

What time is it? Why? Its Christmas time! Well, not exactly. There are just five more days of school left and so much things to do. Very cruel. This week, I will write an article every other day regarding my upcoming adventure. Today's Theme: Planning Ahead.

Some of you have already planned out your entire vacation. You know exactly what you are going to do - build a balloon, eat cake and play video games. The rest of you have not scheduled those things into your agenda but you are going to do them anyway (build a balloon, eat cake and play video games).

For me, this matter is kind of complicated because I planned out only one half of my vacation. That means I am not going to boldly march right into trouble but I will not meet too many surprises on may way either. You will get to decide the other half of my adventure in your commentary.

Soon, I will embark on one of those epic journeys where you find treasure. This isn't going to be one of those fake make money fast schemes because it actually is going to work (I hope). So I will arm myself with a flashlight, twelve cans of coke and my trusty calculator.

To get there, I will use (like any other great adventurer) a balloon. So will I fly the ever so friendly skies - but I am going to do it backwards. (Actually, this is sort of hard to achieve because a balloon is a perfect circle and you don't know which way is which, but I am clever, and I think I will figure it out when time comes.)

Well, X marks the spot. So, when I will find a big red X lying on the ground, I will start digging. I will convert cola and cake into energy and make a big hole in the ground. There, I will find a secret passage to the room with treasure. Except this passage will be very dark - oh wait, I have a flashlight, so this shouldn't be too much of a problem.

There will I meet my last challenge. I will find The Gamer's Man. The Gamer's Man is going transport me into the wonderful world of Halo 2. We shall play death match. And of course, since he is The Gamer's Man, he will be invincible. The only way to defeat him (of course!) is to flip a Warthog on top of him. (Well actually, you can also use a rocket launcher and blow him away to the moon too but I am 1337.) Then, invincibility will not save him and he will die. But this operation requires immense precision (because I will have to shoot the warthog on top of him at the exact angle of arcsin 1/7). But wait, did I say that I will have my trusty calculator with me as well?

Then, I guess, I will be rich. But, my story is far from over. More will come tomorrow. And it won't be over then. Such adventures come in THREE parts -- TRILOGY (Well what do you know?). Whatever happens - I am still going to build a balloon, eat cake and play video games. And no one is going to stop me.

Posted by Oleg Ivrii, 05:04 PM / Comments (2)

Saturday, December 11, 2004

Labour Camp

Gorodets Labour Camp: July 20th - 29th

Guys! I have been at a Russian labour camp whose point was to earn work days. Wait, it is not like it is the point: you have to earn them. Actually there was no camp - the whole point was to help build the camp. There was no water, no electricity and no grocery shops nearby. We had to cook, clean, washes the dishes, carry the water and bike to Uhnov (16 km one way) ourselves. And on top of that we had to level the soccer field! What kind of camp is it? When I asked one of the other kids this question, he replied, "I don't know".

Posted by Oleg Ivrii, 07:24 PM / Comments (3)

Why Firefox?

Hello, readers! If you are using Windows, I suggest you switch to Firefox immediately (if haven't already done so). Plenty reasons why you should - including RSS support. That will guarantee you checking my blog on a daily basis. Opera is also good being the fastest browser on Earth but is somewhat ugly.

However, on a Macintosh, I prefer OmniWeb. Firefox and Opera simply don't feel Mac-like. A good application has to conform to the UI guidelines. That makes applications seem both professional and intuitive. I will write more about this in my next article.

Most websites are tested to work with IE Win and Safari. This leaves Firefox in an odd position of being left untested. But this isn't exactly the problem. Many websites are not written in valid HTML. For better or for worse, browsers have to handle malformed HTML. And they have to handle it in the same way IE does it.

But the evils of Microsoft don't stop there. It is not enough for Microsoft to deliberately break web standards. They have to make other browsers break theirs:

Link: http://deb.opera.com/howcome/2003/2/msn/

Whatever you, get a modern web browser which conforms to web standards, has up-to-date features like tabs and doesn't get your computer hacked every other day.

Posted by Oleg Ivrii, 06:59 PM / Comments (4)

Not Connected

Sometimes, my connection goes down. This is very annoying, because I cannot connect to many wonderful sites including this one. This means that I cannot post any wonderful stories for you to read, and you are left bored. And of course, I am bored as well because I simply cannot share my adventures with you.

One thing you expect from your ISP is reliability. Being connected 99% of the time is simply not enough. And 99 is just "one away from a hundred".

If a computer program worked "one away from a hundred" times, I would consider it buggy. Fast connection would only be just a feature right? When people buy equipment, they are unaware of bugs because they have not been haunted by them (yet) and thus they don't take them into consideration.

But this analogy is a little weak. When you speak of reliability, you talk about things which simply should not fail (even if something goes wrong). If a hacker tried to get into your banking account a hundred times - he should fail every single one of them. Failure (or success if you look from the hacker's point of view) is simply not an option.

Posted by Oleg Ivrii, 05:12 PM /

Friday, December 10, 2004

The Better Way

TWO-NINE-NINE Bloor, TWO-NINE-NINE Bloor, TWO-NINE-NINE Call Patrol..." What does this mean? Do I need to hear this? Do I want to hear this? Well then, why do I hear this? Shaddup already.

I am riding the rocket. I meet a few friends and when they get off they leave their gloves behind. So now I have the gloves and have to give them back. But they are not really my friends, I don't really know them, they are from another school and the only way we meet is by accident (such as today). Poses a problem, doesn't it.

Posted by Oleg Ivrii, 02:29 PM / Comments (2)

Thursday, December 9, 2004

Endless Supply

Supply teachers translate in a direct waste of time. This could save you from those dreadful tests or even worse... assemblies. But most of the time, it feels that you are stuck in a zoo with no way out... and you are the wild animal in the cage who everyone else is laughing at. The class is out of control and so are you. Yet, I always remain the same.

Plenty of evils. When I don't like something, I say "Boring! Take them away". So take the supply teachers away.

Posted by Oleg Ivrii, 05:30 PM / Comments (2)

No good deed goes unpunished

Yesterday, I wrote the article "Art of Posting Comments" and specifically mentioned not to call yourself Bucky. Today, the first comment I get -- Bucky.

If you punish these people by erasing their comments, people run away from you. If you don't, you blog becomes a fun house. So what do you do?

This year I began programming club. We started with 12 members. If you don't make them work hard, its a waste of time. If you make them work hard, they run away from you. See the parallels?

On that level, people want to see progress. People need motivation for work. And progress must progress. Its the law of inertia. All you have to do is give them a little push in the right direction. But the kids there, are awfully resistant. They fight me in every way they can but they still come. What are they doing in there!?

People simply don't want to start doing actual work. They haven't made enough progress to understand the hardships and the frustration of programming. Perhaps, they will understand that by the end of the year. Who knows?

Well, we are now are reduced to size of 5 members (and not all show up all the time). But its five people who show potential and that is fine with me.

Posted by Oleg Ivrii, 04:46 PM / Comments (3)

You serve. I deserve.

I played some excellent chess the other day. But my rating didn't show much improvement. As a matter of fact, it suffered a little. The people don't even know how to play chess (actually it was losers) and still manage to beat me once in while. Well, I don't like that. I am supposed to beat them everytime. You serve. I deserve.

The rating system works in the following way. If you win against a player of equal rating, you gain 16 points and if you lose, well you lose 16 points. Of course, ratings are seldom equal, so there is a little adjustment. If the rating difference is d = opponent rating - your rating, you gain d / 25 points (could be negative). If the rating difference is really high, it is treated as 350.

So if a strong player plays a very weak player, he would gain +2 if he wins, -14 in case of a draw, and -30 if he loses. We shall denote it with (+2 -30) notation. This means he must win 7 in order to draw 1 (to break even).

Now suppose you are in a tournament and you are the only strong player (2150) and the rest are pretty weak (1900 avg). Even if its (+6 -26), you must win 5 games to afford to lose 1. And then you still only gained like what? 4 points?

But wait, it gets worse. After +6+6+6+6, my rating improved, and then it became (+5 -27), so +5-27 (I lost last round). This means I only gained 2 points. Bummer.

Posted by Oleg Ivrii, 10:16 AM / Comments (2)

Wednesday, December 8, 2004

Art of Posting Comments

When you post comments, give me a clue of who you are. Or who you could be. Or if I don't know you (unlikely), please make it memorable so I can get to know you.

This could be your first name, part of your MSN email or something you say often like "Bucky" (or a combination of those and similar things). But don't make it something that I also say often - because that shall confuse me and you don't want to do that, do you?

Posted by Oleg Ivrii, 05:51 PM / Comments (1)

Taste of Applied Math

University of Waterloo - Mathematics Seminar

It was decided that we should get a taste of applied math in the seminar. The first applied math lecture was on imaging. The guy was the best. The lecture was very interesting but the guy prepared it in a rush and had a few queer moments. "If you scale a picture which is 8 bits per pixel many times you'd get something which is 0.25 bits per pixel". Then followed "I was trying to impress you, so I calculated a completely different thing." Or, at one point he was so excited, "JPEG, JPEG, JPEG". Another time, he showed us some formulas but he noted that professionals use other ones. Why did he show us those formulas in the first place? At one point he was a little puzzled: "When are two things the same?" But it got even better. He was talking very seriously... "Suppose this is a part of the brain" pointing to the overhead - "Or a piece of luggage...".

Posted by Oleg Ivrii, 05:40 PM / Comments (1)

The dark side of blogs...

For no good reason, many bloggers want to use their blogs to generate a steady flow of cash. And I am not an exception. So this is what I am thinking about:

Selling T-Shirts. These will cost only $20 (I want to make a profit) and feature the (non-existent) OBP logo on the front (or the back buck - what do I care - you are the buying the T-Shirts getting ripped off.) Maybe I would have to settle for hats.

Google AdSense. Many blogs do this; however first, the number of visitors must grow to a considerable size. Most people would have trouble doing this, but hey, I am Oleg and I've got connections.

Paid Membership. For only $12 year, you will get to know me a little better and more articles to comment. Of course, I am not a professional yet, so this would have to wait (a while). I could offer more RSS feeds to syndicate as well.

Posted by Oleg Ivrii, 03:45 PM / Comments (1)

These will not be things

I came up with "good" ideas about upcoming inventions:

Pocket Cash Changer - you know how you always have a $5 bill and wish to exchange it to buy a drink from the vending machine... well instead of finding an exchange machine around the block, take one with you! (Its called a wallet.)

Invisible Paint - its invisible, paint your walls with it and you walls shall disappear. (It doesn't make the walls disappear, its just that you don't see the paint.)

Posted by Oleg Ivrii, 02:13 PM / Comments (3)

Tuesday, December 7, 2004

Fool of Controversy

Plenty "professional" news sites offer pop-ups and banners. And instead of writing good quality content, they make it controversial. Welcome to the world of today - where good opinion does not matter.

But why doesn't it matter? It sure does, to you and me, but that is about it. These sites exist with the sole purpose of stockpiling profits. That means maximizing the number of hits. And it is done how? By people like me who link to them and trash their article.

And you know what else I hate? Those analysts who work hard enough just to provide a quote. Its not about saying something actually useful. Its about providing a quote. And you know very well how easily quotes get flipped off C|net.

From a non-expert. You know how much I hate those? There was a proposal to amend the zoning by-law to build an 8-story building (for old people) on my street. Imagine them celebrating a funeral every day - and if there is no funeral, the place would be exceptionally quiet.

Residents were encouraged to show up at a meeting and complain. But they were strictly warned not to talk about traffic consumption, drainage systems or stuff they had no clue about.

But perhaps this controversy and immense profits are a good thing. These "professionals" leave a gap for the independents - that includes me - to really shine. And I think I am doing it well.

Posted by Oleg Ivrii, 06:48 PM / Comments (1)

Chess is a sport

I cannot believe it. There is so much hatred towards chess. Especially in my exercise science class. Those fools just refuse to accept that chess is a sport. Their argument hinges on the fact that chess is purely a mental activity whereas conventional sports (e.g soccer, basketball) are not.

However, Chess is well-measurable, ratable and just as competitive.

Well-measurable means that any position may be evaluated: one could decide the state of the game (whether its check or mate). But chess offers a bonus: one could provide a full or partial analysis as well (giving a sufficient amount of time). If chess wasn't well-measurable, it would be an art.

Chess strength can and is often measured by means of a rating system. Otherwise, it would be music. But for me, what makes chess a sport, is its inherent nature of competition. And believe me, chess competition is the bloodiest of all. Otherwise, it would be a performance.

Worth of note: Chess is a clocked game but is not exactly real time. Fast internet chess can cause players to develop RSI (Repetitive Strain Injury). Now that is a physical injury.

Posted by Oleg Ivrii, 06:26 PM / Comments (2)

The Farewell Banquet

Athens, Greece - International Mathematical Olympiad

The farewell banquet took place at a prestigious golf club in Athens. The organizers have decided to put two teams per table with the leaders sitting elsewhere. Our leader, Dr. Small, insisted that he should sit with the team - yet the organizers denied his request several times. Anyway, we were supposed to sit with the Bulgarians at table number 10. However, when we came to the table, the Bulgarians weren't there. We waited - but then they didn't show up. Then, I noticed them sitting at another table and raised the flag with our table number 10. Much to our surprise, they also raised their flag, also with table number 10. One of the guides remarked to the leader, "Table 10 is the only double table. What are the odds?" After the banquet when I found that guide, I told him, "Its you!" and he replied, "And its you!"

Posted by Oleg Ivrii, 03:14 PM / Comments (4)

Assemble, my friends!

Today in school, we had an assembly. And man... was it ever boring. It could be entertaining, or not entertaining, but please make it relevent. Things to consider: Does it concern me? Is it beneficial to me? Do I even want to care? Well, whatever happened, these things weren't considered.

So why do we even have these assemblies? Who invites those people (social interest groups) anyway? Put it simply, next time we have one of those assemblies, I don't want to be there.

Posted by Oleg Ivrii, 02:57 PM / Comments (2)

From my photo album...

The absurd must be remembered...

1. The Garbage Man
2. Very Unfriendly

Enjoy.

Posted by Oleg Ivrii, 05:48 AM / Comments (1)

Monday, December 6, 2004

Domino Wars

I have lived for a considerable number of time and accumulated a history. So every once in a while I will post a story from my past. Not too often, of course, otherwise I will seem to be one of those old people. Okay, lets forget about them.

Montreal - IMO Training Camp 2004

Dr. Recio has brought his amazing set of "Cuban" dominoes which go up to (9,9) instead of (6,6). We have wasted a lot of precious training time making long domino chains and playing "Capture the Flag". In the game one player builds a castle and hides the flag in it. The other player uses the remaining dominoes to knock down the flag using a series of domino effects. David made the most artistic chains, however mine were more effective in terms of achieving the goal. Janos engineered the best castles. These required 12 to 15 explosions. One time, I made a very high and unstable tower. David decided to destroy it (to get more dominoes for his himself to play with) and he made a long chain of dominoes leading up to my castle. But David forgot that chains go both ways, so when he was about to knock it down, I just triggered his chain from the other end!

Posted by Oleg Ivrii, 06:22 PM / Comments (7)

Its heading your way!

The subway works fine, but the nice red TTC buses could use an improvement. Actually, most TTC personnel try to be friendly... Especially the ones that are smart with you about student cards... or the the drivers which yell at the people in the front to move back (but they can't because standings people are docked with their friends) and while the friend is full, the back remains usually empty. The correct solution of course, is to tell everyone to move back.

Speaking of TTC, snow hit Toronto hard and it took me 30+75=105 minutes to get to school today. I arrived in Politics class at 9:40. It felt like a blizzard (haven't seen snow for a while). A lady on the bus noted that it would be faster to walk. Okay, go outside and walk. I don't think you could walk very fast on slippery snow when a blizzard is blowing right into your face.

Posted by Oleg Ivrii, 03:38 PM / Comments (2)

Real products ship

Of all things, I am working on a Java client for the Internet Chess Club (ICC). Such projects are big and take a lot of time. "But the time is now!" and more on that later.

Even though all companies try to pack in as many features as they can, everyone knows that real products ship. At one point or another, the developer has to let go and say that this is it.

Many companies pre-announce release dates and upcoming features. But programming is a not predictable profession and plenty complications arise in the stupidest places. More often than not, these release dates are not met (and thus pushed back) and features get pulled out.

Features, not bugs, sell products. That is why Microsoft Windows has a monopoly. To meet these dates (whether announced or not), companies rush through coding these features. Instead of coding these things properly the first time, they just make them work - they take shortcuts.

This results in bugs. Correcting bugs is easy. But pinpointing their origins is tricky (and realizing that they even exist!). And it takes a lot of valuable time. This also hinders future development. Think of it as a castle made of playing cards. Now suppose the base is made badly. If you want to replace the base, you would have to start all over again.

Why do companies take shortcuts? When programmers spend their time developing, they want to see progress. And progress must progress. People just don't focus on one aspect of the program (then they will be frustrated when they hit a dead end) - they shuffle all over the place.

I announced the first release of LavaTech (that is how I called my program) on Dec. 16, 2004. In my case, I am developing the entire program. Sometimes I work on the console, sometimes on the chessboard, sometimes on the GUI (Graphical User Interface), sometimes on handling datagrams.

As more underlying code gets done, bugs get fixed. Yet new bugs arise - but they are on a higher level. But you just cannot ship a product with bugs (unless you're Microsoft). There is this urge to fix these bugs, but to do that you develop more code, create more features and thus more bugs.

That is why pre-release dates are annoying. When, its time to meet the deadline, things must be done right. And programming becomes frustrating and stops becoming fun. Its not only about completion, its also about publishing.

When releasing the product, it has to be presentable. I am not talking about creating a readme file or taking screenshots for your website because it's fun, I am talking about spending ten hours (without rest) fixing the bugs.

Now, a final question. Why do developers pre-announce release dates? For two reasons. First, programmers want to commit themselves to features, secondly they are excited and want to share them with you.

Posted by Oleg Ivrii, 03:25 PM /

Sunday, December 5, 2004

Welcome to my blog!

Finally! My blog is up and running. It has everything which a blog has to offer, even an RSS feed (so syndicate away). I will post things, fun things, lots of fun things. About life, about programming, about math, about chess, about logic, about illogic, about my personal opinions, about random things. Isn't that what blogs are made for?

And you will read it. Yes, blogs need readers. And you are one of them. So why read blogs? For fun, for enjoyment, for knowledge, for discussion, for intellect, for procrastination.

Posted by Oleg Ivrii, 08:47 PM / Comments (1)

   Copyright © 2004-2005 Oleg Ivrii, Liscensed under: Creative Commons.
   RSS: Big Party, RSS: Linklist.