21.1.07

Programmer's Progress



Cheers

UPDATE 21.01.2007: What does it say?

High School Student

10 PRINT "HELLO WORLD"
20 END

First Year Undergraduate

program Hello(input, output)
begin
writeln('Hello World')
end.

Final Year Undergraduate

(defun hello
(print
(cons 'Hello (list 'World))))

New professional

#include
void main(void)
{
char *message[] = {"Hello ", "World"}; int i;

for(i = 0; i < 2; ++i)
printf("%s", message[i]);
printf("\n");
}

Seasoned professional

#include
#include
>
class string
{
private:
int size;
char *ptr;

public:
string() : size(0), ptr(new char('\0')) {}

string(const string &s) : size(s.size) { ptr = new char[size + 1];
strcpy(ptr, s.ptr);
}

~string()
{
delete [] ptr;
}

friend ostream &operator <<(ostream &, const string &);
string &operator=(const char *);
};

ostream &operator<<(ostream &stream, const string &s) { return(stream << s.ptr);
}

string &string::operator=(const char *chrs) { if (this != &chrs)
{
delete [] ptr;
size = strlen(chrs);
ptr = new char[size + 1];
strcpy(ptr, chrs);
}
return(*this);
}

int main()
{
string str;

str = "Hello World";
cout << str << endl;

return(0);
}

Master Programmer

[
uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820) ] library LHello
{
// bring in the master library
importlib("actimp.tlb");
importlib("actexp.tlb");

// bring in my interfaces
#include "pshlo.idl"

[
uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820) ] cotype THello
{
interface IHello;
interface IPersistFile;
};
};

[
exe,
uuid(2573F890-CFEE-101A-9A9F-00AA00342820) ] module CHelloLib
{

// some code related header files
importheader();
importheader();
importheader();
importheader("pshlo.h");
importheader("shlo.hxx");
importheader("mycls.hxx");

// needed typelibs
importlib("actimp.tlb");
importlib("actexp.tlb");
importlib("thlo.tlb");

[
uuid(2573F891-CFEE-101A-9A9F-00AA00342820), aggregatable ]
coclass CHello
{
cotype THello;
};
};


#include "ipfix.hxx"

extern HANDLE hEvent;

class CHello : public CHelloBase
{
public:
IPFIX(CLSID_CHello);

CHello(IUnknown *pUnk);
~CHello();

HRESULT __stdcall PrintSz(LPWSTR pwszString);

private:
static int cObjRef;
};


#include
#include
#include
#include
#include "thlo.h"
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"

int CHello::cObjRef = 0;

CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk) { cObjRef++;
return;
}

HRESULT __stdcall CHello::PrintSz(LPWSTR pwszString) {
printf("%ws\n", pwszString);
return(ResultFromScode(S_OK));
}


CHello::~CHello(void)
{

// when the object count goes to zero, stop the server
cObjRef--;
if( cObjRef == 0 )
PulseEvent(hEvent);

return;
}

#include
#include
#include "pshlo.h"
#include "shlo.hxx"
#include "mycls.hxx"

HANDLE hEvent;

int _cdecl main(
int argc,
char * argv[]
) {
ULONG ulRef;
DWORD dwRegistration;
CHelloCF *pCF = new CHelloCF();

hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);

// Initialize the OLE libraries
CoInitializeEx(NULL, COINIT_MULTITHREADED);

CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
REGCLS_MULTIPLEUSE, &dwRegistration);

// wait on an event to stop
WaitForSingleObject(hEvent, INFINITE);

// revoke and release the class object
CoRevokeClassObject(dwRegistration); ulRef = pCF->Release();

// Tell OLE we are going away.
CoUninitialize();

return(0); }

extern CLSID CLSID_CHello;
extern UUID LIBID_CHelloLib;

CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */
0x2573F891,
0xCFEE,
0x101A,
{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 } };

UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */
0x2573F890,
0xCFEE,
0x101A,
{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 } };

#include
#include
#include
#include
#include
#include "pshlo.h"
#include "shlo.hxx"
#include "clsid.h"

int _cdecl main(
int argc,
char * argv[]
) {
HRESULT hRslt;
IHello *pHello;
ULONG ulCnt;
IMoniker * pmk;
WCHAR wcsT[_MAX_PATH];
WCHAR wcsPath[2 * _MAX_PATH];

// get object path
wcsPath[0] = '\0';
wcsT[0] = '\0';
if( argc > 1) {
mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1); wcsupr(wcsPath); }
else {
fprintf(stderr, "Object path must be specified\n"); return(1); }

// get print string
if(argc > 2)
mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1); else
wcscpy(wcsT, L"Hello World");

printf("Linking to object %ws\n", wcsPath); printf("Text String %ws\n", wcsT);

// Initialize the OLE libraries
hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);

if(SUCCEEDED(hRslt)) {


hRslt = CreateFileMoniker(wcsPath, &pmk);
if(SUCCEEDED(hRslt)) hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);

if(SUCCEEDED(hRslt)) {

// print a string out
pHello->PrintSz(wcsT);

Sleep(2000);
ulCnt = pHello->Release();
}
else
printf("Failure to connect, status: %lx", hRslt);

// Tell OLE we are going away.
CoUninitialize();
}

return(0);
}

Apprentice Hacker

#!/usr/local/bin/perl
$msg="Hello, world.\n";
if ($#ARGV >= 0) {
while(defined($arg=shift(@ARGV))) {
$outfilename = $arg;
open(FILE, ">" . $outfilename) || die "Can't write $arg: $!\n"; print (FILE $msg);
close(FILE) || die "Can't close $arg: $!\n"; }
} else {
print ($msg);
}
1;

Experienced Hacker

#include
#define S "Hello, World\n"
main(){exit(printf(S) == strlen(S) ? 0 : 1);}

Seasoned Hacker

% cc -o a.out ~/src/misc/hw/hw.c
% a.out

Guru Hacker

% cat
Hello, world.
^D

Ultra High Level Programmer

system.uhdl =
SYSTEM
CREATE ScreenWin
SIZE 200000000 /Unit=One
DESTINATION Order.dest[One]
OUTPUT CHARACTER['Hello World']
END
END.

New Manager

10 PRINT "HELLO WORLD"
20 END

Middle Manager

mail -s "Hello, world." bob@b12
Bob, could you please write me a program that prints "Hello, world."?
I need it by tomorrow.
^D

Senior Manager

% zmail jim
I need a "Hello, world." program by this afternoon.

Chief Executive Officer

% message
message: Command not found
% pm
pm: Command not found
% letter
letter: Command not found.
% mail
To: ^X ^F ^C
> help mail
help: Command not found.
>what
what: Command not found
>need help
need: Command not found
> damn!
!: Event unrecognized
>exit
exit: Unknown
>quit
%
% logout
Bipppp ! Mrs. Thompson?
Please page Tommy for me.
NOW!


~various sources

19.1.07

So she went into the garden to cut a cabbage-leaf

panjandrum \pan-JAN-druhm\, noun:
An important personage or pretentious official.

Panjandrum was coined by Samuel Foote (1720-1777) in a piece of nonsense writing:

So she went into the garden to cut a cabbage-leaf to make an apple-pie; and at the same time a great she-bear, coming up the street, pops its head into the shop. "What! No soap?" So he died, and she very imprudently married the barber: and there were present the Picninnies, and the Joblillies, and the Garyulies, and the grand Panjandrum himself, with the little round button at top, and they all fell to playing the game of catch-as-catch-can till the gunpowder ran out at the heels of their boots.

It was composed on the spot to challenge actor Charles Macklin's claim that he could memorize anything. Macklin is said to have refused to repeat a word of it.

Dictionary.com features a unique word each day since 1999. Check it out here.

Svaj

18.1.07

Song of the Day - Police and Thieves

Junior Murvin

This song was apparently an international hit during the summer of 1976. I didn't know that, I just found the song to be pretty cool. Found a sing-a-long version on YouTube.

Take it easy, but take it ;-)



7.1.07

Conterfeit Goods



I took this picture on christmas day in NYC. You can see the Lois Vuitton store closed (like the rest of them on christmas day), and a street seller with counterfeit Louis Vuitton handbags attracting passersby.

It's funny how people can pay maybe $60-120 for these bags when, quite frankly some look like they could come with a mickey mouse logo instead. I mean, those bags probably take $5 to manufacture in China. You probably get a better real-value/sale-price ratio buying the real thing, but, of course, they cost much more.

Don't get me wrong I'm not trashing counterfeit goods. I can't say I'm sorry for Lois Vuitton. Sure, it's unethical, but I couldn't care less is he sells or not. He's ripping people off in his own way too.

The only real problem I see is that you'll never know if that bag was made so cheap at the expense of child labor, because it's an illegal product that has passed no regulations. Actually it probably WAS made by children.

I guess the main issue behind this is that people just want the name, not caring about the quality of the product and if it means child labor well, they'll just look the other way... Everybody else does it.

Oil Cooled PC


If you're a tech enthusiast and you got your recommended daily dose of tech news about a year ago, then you're probably aware of Tom's Hardware Oil Cooled PC.

Markus Leonhardt had actually tried it before (pictures of the oil computer), but Tom's Hardware took it further. I'd like to try it when I have the time, but I'd use baby oil to keep it clear.

Anyway, here's Tom Hardware's video of the Oil Cooled PC for those of you who haven't seen it yet.


5.1.07

Song of the Day - Black Hole Sun

Soundgarden

Definitely a great song (way up on Soundgarden's Top 10) accompanied by an excellent video. A must watch!


Svaj

31.12.06

Song of the Day - It's The End Of The World As We Know It

R.E.M

Well ok, maybe it's just the end of the year, but a whole bunch of things have been hitting the fan lately. Hussein was made a saint, Bush choked on another cookie and Gorbachev celebrated 16 years with a Nobel Peace Prize. Castro is about to die, Google bought its first party plane and Americans keep getting fatter.

No offense intended, it's just the word on the street.

Love to stay and have a chat, but I still have about a week to spend in the States and I'll try to keep it busy.

I'll keep posting (consistently) when I get back to Somewherein, in the mean time, here's R.E.M.




Svaj

28.12.06

Song of the Day - Man of The World

Fleetwood Mac

Ok, I'm just gonna stop saying "this is a great song" and stuff like that every time I post a Song of the Day, because, well, if it's here it IS great.

This is Fleetwood Mac at its best, the Beat Club performance in 1969.




The dude.

22.12.06

Song of the Day - Sonne

Rammstein

Amazing song, I just HAD to make it song of the day. Watch this very powerful live performance from England.




Cheers

21.12.06

Song of the Day - Beds are Burning

Midnight Oils

I didn't know them either, but this group was apparently very popular in the Australian underground hacking scene in the 1980s, as I found out in this book (Underground by Suelette Dreyfus - get it free here).

There's an interesting story about one of the first computer worms released in the wild, which paid homage to the Midnight Oils by sending annoying messages with the text 'Oilz' to infected users.

The song is all right, the video could have been better...




Svaj

20.12.06

Song of the Day - Wild World

Cat Stevens

Outstanding live performance of this now classical tune (from Tea For The Tillerman).

Stevens wrote this [song] about searching for peace and happiness in a crazy world. Much of it was a message to Patti D'Arbanville, an actress he had been dating.

This was one of the songs that convinced Stevens, now known as Yusuf Islam, to release a boxed set of his songs in 2001. He stopped making secular music in 1979, but came to realize that people find strength and inspiration in the songs he recorded as Cat Stevens.
Wild World Song Facts




Svaj

19.12.06

Song of the Day - Seether

Veruca Salt

I met them through the Australian Music show and thought they were underground Aussies, but apparently they're from Chicago and pretty much mainstream.

No difference, it's still cool to listen to a nice rock group with hot girls as lead-singer and guitarist. Seether was their first single from American Thighs (1994). Enjoy.




Svaj

18.12.06

Song of the Day - Wild Horses (cover)

Bush

You've probably already heard this mellow song by the Rolling Stones. I'd put up their version, but I love covers so here's one by Bush that's actually pretty good too.




Svaj

17.12.06

Song of the Day - Ja Sei Namorar

Tribalistas

Arnaldo Antunes and Carlinhos Brown have joined Marisa Monte to form a secret trio that will take over the world. Well, maybe not the whole world, but their melody will stay in your head for a while, so click at your own risk.




Svaj

16.12.06

Song of the Day - Somewhere Over The Rainbow

Israel Kamakawiwo'ole

Or Iz as he was later called, grew up to be a 1.88m 340kg Hawaiian singer, and like Poppa Chubby managed to outgrow his body physique into a persona that was larger than himself (and that is no easy task!).

Permanently attached to his ukulele, he has blessed us with this magical rendition of Somewhere Over The Rainbow.

Unfortunately he died prematurely (aged 38) due to weight-related problems. To Iz.




Svaj

15.12.06

Song of the Day - So Long, Frank Lloyd Wright

Simon and Garfunkel

Today's Song of the Day is the tribute song to Frank Lloyd Wright by Simon and Garfunkel (1970, Bridge Over Troubled Waters).
Interesring facts:

  • Art Garfunkel dared Paul Simon to write a song about Frank Lloyd Wright. This song was the answer to that dare.
  • This song can also be interpreted as a good-bye from Paul to Art since "Bridge" was their last album together. The phrase "I remember the nights we'd harmonize till dawn, I never laughed so long, so long, so long..." The repeated use of "so long" can be interpreted as a goodbye.
  • So Long, Frank Lloyd Wright Song Facts


Svaj

14.12.06

Song of the Day - Nah Neh Nah

Vaya con Dios

This is probably one of the better known songs from this Belgian group who sings in English and has a Spanish name. It's in the album Night Owls, and without further ado, here's today's Song of the Day.


Svaj

13.12.06

Song of the Day - Never Let Me Down Again

The Smashing Pumpkins (cover)

Originally by Depeche Mode, this song rates as one of their masterpieces. But, sorry Depeche Mode fans, The Smashing Pumpkins have done it better!

Don't believe me? Hear for yourself:

Smashing Pumpkins version (just listen to the music, the video was made by some cracknutte)




Depeche Mode version:

Have a gay day!

Svaj

12.12.06

Song of the Day - One more cup of coffee

I've decided to put up a "Song of the Day" section to set the mood and keep the posts coming when I haven't finished writing other posts/have nothing to write about (yikes, there, I said it).

So, by nature, these posts will be much shorter than my other posts so they'll be faster to read/write, and maybe (just maybe) allow you to discover a precious gem you may not have otherwise known.

Well, enough about that, on with today's song of the day: one more cup of coffee either by The White Stripes or by Bob Dylan, listen to both and choose for yourself.

Is there anything in One More Cup of Coffee that’s not perfect? Well yes, in the verses, the lyrics on occasion drag (“He oversees his kingdom / So no stranger does intrude / His voice it trembles as he calls out / For another plate of food”). But apart from that, the sentiment is compelling, Scarlet Rivera’s violin is beautifully scored and played, the tune is to die for, and the backing vocals are by Emmylou Harris, who you can bet is going to be here in the 5-✭ series one of these days. And while there’s not much middle ground on the subject of Dylan’s singing, if you like it, you’ll really like this song.
Ongoing - One more cup of coffee
The White Stripes' version is, well, very White Stripie... If you like them, you'll love the cover of this amazing song.

Greetings from the Svaj, and enjoy.

6.12.06

Ethics is what we do when nobody is looking

But somebody is always looking. Specially on the internet.

Your sister may have decided you shouldn't do something on the internet. Or maybe your company filters everything and doesn't let you post to your blog, or thinks you shouldn't have access to certain pages. Or maybe even your country has decided to stop you from doing such things. Anonymity is hard to get these days.

Happily, there are some ways to bypass this. I am talking about things like Anonymouse.org, The Onion Router, and I2P.

Anonymouse was put together in a week by Alexander Pircher, a computer science student from Germany in 1997. It has since grown to become one of the most popular point your browser to when you need to surf anonymously. The principle is simple: you just type in an url and it'll fetch it for you, anonymously.

That solves web-surfing to blocked sites from repressive countries. It slows down the process of actually seeing the webpage, but, technically speaking, you're only visiting Anonymouse.org - your request is stored on a proxy and that cached copy is what you access. If you don't mind going back to the website every time you need to surf anonymously, it is a great and simple way to do it.

The Onion Router is another alternative to achieve anonymity. It is developed on the concept of routing onions (wikipedia), which are "data structures used to create paths through which many messages can be transmitted". Messages are encrypted and passed from one server to the other, forming a layered structure in which a message can't be deciphered without knowledge of the previous' server encryption - hence the name onion router.

Installation is straight-forward and available for most popular operating systems (windows, mac, linux). And usage for anonymous web-surfing is further facilitated with the installation of a Tor Button extension on Firefox - which lets you switch with the click of a button between anonymous and public modes. Tor's proxy also lets you anonymize other aplications - like a chat client for example - just by pointing that application to the local tor proxy.

Still on the line of anonymizing applications, but going a step further lies the I2P network. It no only lets you set up anonymous web-surfing and other applications (like the chat client) through the use of a local proxy, but it is designed to let you do a number of things (anonymously) on the net. Like anonymous blogging, anonymous Bit Torrent, and hosting web-pages, anonymously. You could also do some of these things with Tor (like anonymous Bit Torrent) by simply pointing the client to the local proxy, but they discourage it because it puts too much of a load on the network - and I2P is specially designed for this.

There are more differences between the two last alternatives I mentioned, so, to get a more in-depth idea of what these are and which you may actually need to use, take a look at this Network comparison between Tor and I2P.

In all, your online presence can be masked (although you will pay the price on speed, as these methods slow down your internet experience). But the real question behind this is... Should we do it?

I mean, what's legal and not just depends on your country's politicians. The same way your sister or your company may have decided what you should and should not do, someone (somewhere) in your country decided that you shouldn't download this or see that. And I'm not just talking about The Great Firewall of China and other countries which censor nearly everything like Cuba, Iran, Tunisia, North Korea and Saudi Arabia.

Not being able to see/download something is censorship nonetheless, and you have this in a number of countries (from USA to France to South Africa to Australia). Groups like RIAA and MPAA and local governments keep an eye out on the internet to try to "catch" "criminals" doing such "illegal" things as downloading an mp3, or making a digital copy of a movie. But the game has no sense when what's "legal" and what's not is defined by them anyway. It's like trying to play chess while the other person keeps making up new rules as they go along.

Sure, legality is a way of enforcing ethics. But it's got no sense when they indiscriminately sue for making a local copy of music they have legally bought. I personally think there's nothing ethically wrong with downloading, for example, Popa Chubby's Stealing the Devil's Guitar if you've bought the cd and your little sister sat on it and broke it. Or playing your old snes games on an emulator - taking for granted that you bought these in the past and, for example, your snes broke down and you can't play them anymore.

I guess I'm trying to say that legality should correspond to what is ethical, not the other way around. And, well, if your country doesn't allow you to make a choice, you've got a couple of choices to help you become anonymous and do what you think is ethical. After all, ethics is what we do when nobody's looking.

5.12.06

Popa Chubby



He's fat, bald, ugly, and likes to insult people with a wave of his hand. But he's sold his soul to the devil and now plays the blues from New York.

If you watch him live, you'll become addicted to his energy; if this guy doesn't pause for a minute, he's gonna have a heart attack soon. He's put out 6 albums in the last 6 years, with no decline whatsoever quality wise.

In "Stealing the Devil's Guitar" (2006 ), some songs will remind you of ZZ Top (Virgil and Smokey), some sound a bit like Tom Waits on Get Behind The Mule, others may even remind you of The Fun Lovin' Criminals (when they're not being gay) running the drug business (Smuggler's Game). And all of them have the devil's fingerprints on his axe.

I hope you listen to my advice and pick up a copy of this man's music. And most of all, I hope you like it if you do.

In the meantime, greetings from hell.

Svaj

30.11.06

Theory of Zuma



If you've been to the Temple of Zukulkan, Quetzal Quatl and Popo Poyolli on the same day without leaving your computer, then you've probably been playing Zuma.

I'm sure you already know this addictive game (pick up a copy or play it online at popcap games). As with any other puzzle-like challenge, when colors unite they explode! So your goal is to make the long chain of balls disappear - by shooting like-colored balls and creating chain reactions.

The thing is: the balls coming out don't seem (at least to me) to be doing so in a completely random manner. In the beginning it seems much easier to make combos because of the distribution of the balls as they come out. Also, the ball you shoot out frequently seems like it's the least favorable color you could have.

This makes me think there must be some algorithm that determines the color of the balls coming out, as well as the ball you will shoot out. I could spend months playing zuma full-time, registering endlessly the order in which colors come out and the ones you shoot and later analyze the data to try to crack the zuma code. But I have better things to smoke. Besides, it wouldn't be a real discovery (zuma's programmers already know how this works).

But in any case, imagine for once that you could know beforehand the sequence of balls that will come out, and the color of the balls you'll shoot. It wouldn't be too difficult to find a way to solve the puzzle with the best possible sequence (i.e. the one which makes the chain disappear faster - be it by making combos, hitting coins, etc.). This time taken to solve the puzzle in the best possible way I call the optimum time. So the idea is that given a sequence of colors, there is (at least) one solution to the puzzle which yields an optimum time.

If you've played zuma before, you know that when you finish it tells you your time (the time you just took to solve the puzzle) and an ace time (the time an "ace" would take to solve it). Sometimes you finish under ace time (by a lot) and wonder if you actually made a mistake, or actually achieved a perfect zuma (optimum time).

I think it would be a great addition to the Second Advent of Zuma (if the Zuma Gods ever wish it so) to add an "optimum time" after each puzzle (which, of course, would be variable because every puzzle is unique - or rather pseudo-unique :) ).

Once you've finished a game, the sequence of balls is known, and the computer could calculate what the optimum time would have been if you had made the right choices (hit the coins, make the right combos, use the gaps, etc.). Even cooler: a feature that would let you actually see (a sort of "replay") what you should have done to achieve the perfect zuma.

In hopes of living to see the second coming of zuma (imagine zuma on the wii!), I'll keep on playing Zuma Deluxe, the next best thing.

"The fact that no one understands you doesn't make you an artist."
"Honest criticism is hard to take. Particularly from a relative, a friend, an acquaintance, or a stranger."

- Zuma

27.11.06

How much is this blog worth?

I found this tool by Dane Carlson (Business Opportunities Weblog) which computes the "value" of your site.

"Inspired by Tristan Louis's research into the value of each link to Weblogs Inc, I've created this little applet using Technorati's API which computes and displays your blog's worth using the same link to dollar ratio as the AOL-Weblogs Inc deal."

Now my blog is officially worthless!


24.11.06

A Look On Google Part 4 of 4


Future Directions – Don’t be Evil?

Google is continually making technological progress and giving it out for free in exchange of information. After all, information is what makes AdWords work efficiently, and this means money for Google.

Yet what is at stake is increasingly more important. As new information enters, more is exposed to the outside world. Google vowed (from the day of its creation) never to "be evil", but, how much do we really trust Google? What about corrupt employees or an outside attack? Any vulnerability in the system could compromise all the data we have fed into the system, and thus, the more information we make available, the greater the blow we may receive.

Some argue that Google’s image (esteemed for its clean, do good attitude) may not resist the pressure of one or two privacy disasters, making it just another internet company.

Google has also been compared with the Microsoft from ten years ago: with a powerful, main product (Windows for Microsoft, and web search for Google) and a long list of half-finished products. Google News (algorithm-based) is always a step behind Yahoo! News (where news are ultimately "human-selected"); Google Video has been surpassed greatly by YouTube to the point where it had to buy YouTube to actually get a lead in the video marketplace; and Google Talk has not yet taken off on a world where instant messaging is still largely dominated by Microsoft Messenger, Aol’s instant messenger, and Yahoo! Messenger.

This comparison has led observers to note that, like Microsoft, Google may be hampering innovation – because in any area in which Google steps in, a smaller firm already in that area will have to leave or be lucky enough to be bought by Google. Google does not easily accept this comparison, yet, it seems clear that even though they may not want to BE evil, the fact is that they are one of the biggest multinational technical corporations nowadays. And being a large corporation means many things, including power and influence.

In all, Google’s technical abilities are undisputed – so it may well maintain its clean image. Yet it will have to start behaving like a normal company, because it is only in its best (own) interest. It will have to buy out competitors, make pacts with its enemies, and possibly stand trial for privacy issues or take its competitors to court – whatever “evil” means.

23.11.06

A Look On Google Part 3 of 4


Economic Success – A Googol of Revenues

Google started out as a search engine, with no visible way of making money. In fact, it was not after a couple of years as leader in the search industry that they
decided they needed a way of making money (without harming their interface’s simple style).

The internet’s traditional way of making money online (if you have a webpage) is through banners. But banners didn't work for Google, as they would destroy its elegant and simple style.

The answer came with a system called AdWords in the form of small, unobtrusive and highly relevant text advertisements alongside Google’s search results. These “sponsored links” are placed on the results page in an order determined by auction among the advertisers. Yet advertisers don’t have to pay unless a user clicks on one of the banners, therefore establishing a sort of “pay-per-click” model, that works for the advertiser (because someone who has clicked on the link does so because he is interested) as well as for Google (they get money every time someone clicks on a “sponsored link”).

On the other hand, users can easily ignore these “sponsored links” or can actually learn to love them. So, if PageRank was what made Google’s search engine the leader, then AdWords (with its carefully chosen ads) constitutes the economic success of Google.

22.11.06

A Look On Google Part 2 of 4


Philosophy – To Organize the World’s Information

The technological difference between Google and the other search engines was the PageRank algorithm, developed by Larry Page and Sergey Brin. With it, they were able to extract order out of the apparent chaos that reigns on the internet. It is often regarded as a perfect example of an abstract mathematical application to a practical, everyday, example – not to mention a very lucrative one: both of Google’s founders are now worth over $10 billion (US).

The mathematical genius was bestowed upon them by their parents. Sergey Brin is the son of a professor of statistics and a mother who works at NASA, while Larry Page’s parents are both computer-science teachers. They have established mathematical rules to understand the internet, and believe all information can be understood in mathematical terms. And have carried with them this deification of mathematics to Google.

Google is the natural home for geniuses. It is where computer nerds just finishing college hope to work at, and where researchers from other leading technology companies (i.e. Microsoft) are migrating. And they want to work at Google, not (just) because of the high paying salaries (which are always an excellent attraction), but because they feel they are making a contribution to humanity: they are organizing the world’s information.

And not just web pages. Google has started scanning entire libraries, thus bringing offline information to the online world. They now offer web mail (Gmail), which also scans and indexes your mail. They have also developed other technologies, which allow them to amass more information (in the end, that’s what they’re after, information).

Among these technologies, we can count: Picassa, which lets users edit and organize digital photos; Orkut, a social networking site; Blogger, which lets people create a professional-looking Blog in a matter of minutes; Gtalk, for online messaging and PC-to-PC calls (it will be broadened to allow calls to landlines – for free); Google Desktop, which allows you to organize files; Google Earth, with 3d maps of the entire surface of the planet; Google Pack, which allows you to set up the main programs you need on a new computer – including free antivirus, browser, anti-spyware, etc.; an online site called Google Video, a marketplace for uploading and downloading video files which has teamed up with YouTube, effectively gathering so many users it is the undisputed champion in the video blogging realm; and Google Docs & Spreadsheets (formerly Writely), which allows users to create text documents and spreadsheets, just like Microsoft Word and Microsoft Excel, and share them online.

All this software is provided for free. They are also about to launch a new technology called the Gdrive (or the Google Grid), which will provide us with massive online storage space and possibly free internet access. This would be, of course, ad-supported, and they would be able to scan all data on their drives to index it (“organize it”). Yet indexing it, also means they are able to read anything you store, so personal privacy is essentially lost.

Some speculate that Google will later on link all these diverse systems (each of which with a massive database of stored information), creating what H.G Wells called the “world brain”. This global, all-knowing supercomputer would fulfill any geek’s artificial intelligence dream, and, in theory, possibly be capable of passing the Turing Test. [N.B. The test’s aim is to discover whether the response received through a terminal screen was produced by a machine or a human, provided we only communicate with it through our keyboard and the response is always text displayed on the screen.]

A Look On Google Part 1 of 4


The Importance of Search Engines - Historic Review

One might say that the key difference between the online and the real world is that online it is much easier to find things. Whereas in the real world, you might have to look for an almanac, check the index, look for the page and find the information you are looking for – say, Japan’s population –, online you just need to type in a simple query (“What is Japan’s population?”) and the answer is just a click away.

This simple procedure, taken for granted today, was not technologically possible a few years ago. It was not until the arrival of Google that web searching became a user-friendly task that produced outstanding results.

Sure, search engines have existed long before Google, yet the technology that drove them was significantly different. For example Yahoo!, the first popular internet search engine in the 90’s, was actually an online version of the yellow pages: web creators would submit their URL (the address at which a webpage is found), along with a commentary and related keywords. This information was stored in the Yahoo! database and used to produce results when a user typed in a query. But anything not submitted to Yahoo! did not exist on the Yahoo! database, and therefore could not be found.

Then came AltaVista, with a technology that allowed it to briefly become the best search engine available. It employed web-spiders, which are computer programs that automatically scan and index web pages, thus yielding many more results than Yahoo! ever could.
Yet the results where not ranked, and this meant that any simple query returned a vast amount of results, but you then had to sweep through the results in search of the piece of information you were actually looking for.

Google solved this by introducing PageRank. Assuming that an important webpage (say, BBC’s homepage) has more links and more pages link to it, than a less important webpage (say, my personal blog), then PageRank assigns a value to each of the pages it finds on the internet, according to a complex mathematical algorithm involving the hyperlinks between web pages.
This value allows Google to rank pages in order of relevance to the search query. Directly, it meant that users did not have to sort through the result pages to find what they were looking for, as the most relevant results are displayed first on the result pages. Indirectly it meant that other search engines, such as Yahoo! and AltaVista had met a rival that, in just five years, would manage 80% of online searches.

Main Source: The Economist

How to handle rejections

So you applied for a position somewhere and you didn't get chosen? Not to worry, you're just a couple of lines away from reading the perfect follow-up letter in such a case.

I found this sample letter a couple of years ago on the Riley Guide, but there was no information on the original writer of this precious gem, so no credit can ultimately be given to the mastermind (names have been altered for privacy).

Anyway, here's the letter, enjoy:

March 14, 2006

Professor Mc Milan
Chair - Search Committee
Department of Biochemistry
University of Towanda Health Sciences
Center
Towanda, IA

Dear Professor Mc Milan,

Thank you for your letter of March 6. After careful consideration, I regret to inform you that I am unable to accept your refusal to offer me an assistant professor position in your department.

This year I have been particularly fortunate in receiving an unusually large number of rejection letters. With such a varied and promising field of candidates it is impossible for me to accept all refusals. Despite the University of Towanda's outstanding qualifications and previous experience in rejecting applicants, I find that your rejection does not meet my needs at this time. Therefore, I will assume the position of assistant professor in your department this May. I look forward to seeing you then.

Best of luck in rejecting future applicants.

Sincerely,

Goddard Youville

Turn your PC into a Mac

We all know Mac is cool and Windows is dumb. This is no news. Common sense would tell us to buy a Mac the next time we need/want to change computers. They're more stable (it's based on Unix), they're virus-free, very user friendly and - let's face it - they're beautiful!

On the other hand, there are also very sound reasons not go that way, most importantly:

1. We may simply not need a new computer for the moment.
2. We depend on software that only runs on the Windows platform.

Happily, there is now a (VERY) easy way of getting the Mac's eye-catching beauty on any Windows XP. You can still use all the games and software you've "bought" along the years (and gotten used to) - you're system will still be a Windows XP. But, graphically you'll see it like a Tiger OS.

For a long time, many tweaking programs have existed, but you needed a different program for tweaking different areas (ex. WindowsBlinds for the windows and GUI, Icon Packager for the icons, install the dock, change the cursors, etc.).

With Flyakite, it has all been summed up in an easy point-and-click package that does everything for you. You just need to download (30 megs) and run (the link comes from here). It even turns your MSN Messenger into MacSN, which has the word Mac in it, so it's cool.

The full Mac OS look includes an Object Dock at the bottom which I didn't get used to, so I just un-clicked the Run at Start Up box and forgot about it for the rest of my days. But in the end, the idea is you can keep what you like and remove what you don't. It's even easy to remove it completely and revert to how your desktop looked before any changes were applied (gasp!).

Anyhow... here's a complete manual on the matter, and some general system requirements.


Be Svaj

6.11.06

Svaj Malizo finally gets a Blog!

That's right, this young dude is taking time off his busy schedule to keep you posted on the interesting stuff that surrounds him.

I'll try to make this blog ad-supported so, if you like what you read, leave a comment or click on an ad - or better yet, DO BOTH!

Anyway, that's all for the moment, peace bothers.

Svaj Malizo

Design by Dzelque

Svaj Malizo - Design by Dzelque