Tuesday, January 30, 2007

Convert Physical Machines to Virtual Machines – Free!

"Use the intuitive wizard-driven interface of VMware Converter to convert your physical machines to virtual machines. VMware Converter quickly converts Microsoft Windows based physical machines and third party image formats to VMware virtual machines. It also converts virtual machines between VMware platforms. Automate and simplify physical to virtual machine conversions as well as conversions between virtual machine formats with VMware Converter."
Download VMware Converter (Starter Edition)

Monday, January 29, 2007

How to find (fight) keyloggers

If your computer is accessed by other people (or even if not) you may want to find if somebody tries to steal your private data. One of the most used ways to do this is by installing a keylogger, a software (or even worse hardware) that captures the user's keystrokes (and that means they can see your passwords, credit card data, private conversations, output e-mails...). Here are a few ways you can use to check if a keylogger is installed on your computer:

1. Use up to date anti virus and/or anti spyware software
Typically a good anti virus software will find most of the commercial keyloggers and maybe more. Keep the software up to date and don't forget to enable advanced detection features for best results (for example check "Potentially unwanted applications" in NOD32).

2. Use a special software tool
There are a bunch of anti-keylogger software on the market and you may get better results with those. I recommend you to use them if you think there is a high possibility to have a keylogger installed. For example I found Cyberhawk to be the only software that detected a custom made keylogger. Kasperky does a good job in this area too. Also check anti-spy.info. More examples:

3. Find it yourself
If you are more like an advanced user you can try finding keyloggers by using a few tools like regedit (registry editor) and/or Process Explorer. It will save you some money but it gets harder and harder to find advanced spyware. You can look here or here for more information about using Process Explorer.
You can also try some hot key combination that are used by this kind of software. Examples: Ctrl + Alt + X or Ctrl + Alt + Wondows Key + X

4. Free tools you can use:
  • PSMAntiKeyLogger
    PSMAntiKeyLogger is a real-time protecting software which protects you against Keyloggers. No scanning is needed.
  • SnoopFree
    Freeware antikeylogger that block hook based keyloggers as well as screen captures. For Windows XP.
  • I Hate Keyloggers
    Freeware antikeylogger that block hook based keyloggers. For Windows 2000 and XP.
  • KL-Detector
    Freeware on demand keylogger scanner.
The best way to protect you against keyloggers is to prevent their installation. You can do this by limiting other Windows users accounts. You can find a good guide here. I advise you to try at least step 1 because you can never know...

Sunday, January 28, 2007

Every story has its glory

Two days ago I started a small experiment in order to find out what is the "effect" of a front page story on both DIGG and Reddit. It turned out that many people dislike this kind of tests so the DIGG story was buried after about 13 diggs (and even so it received more then 400 diggs) and the Reddit one received a lot of negative comments and votes. But overall I got what I needed. I will use a older DIGG story for comparison because this one didn't made front page. So here we go:

Reddit
Reddit is a community website where users can post links to content on the web. Other users may then vote the posted links up or down, causing them to appear more or less prominently on the Reddit home page. This particular story received ~1600 up votes and ~600 down votes. The story was on Reddit home page for more then 24 hours. My thoughts about the "reddit effect":

  • Reddit sends a constant stream of visitors (4-10 per minute)
  • Overall there were about 8500 unique visitors refered by Reddit
  • Your server is safe with Reddit :)
  • Even if your story doesn't make front-page you still have the chance to receive an important number of visitors (more and more Reddit users jump directly to the "new" page)

DIGG
Is a community-based popularity website with an emphasis on technology and science articles. News stories and websites are submitted by users, and then promoted to the front page through a user-based ranking system. The fact that when the story reaches DIGG's front page your server will receive a lot of hits is known ad the "digg effect". I recorded about 35.000 unique visits for a single promoted story.
  • You will notice from the first second your story is promoted that DIGG is very powerfull. It can and will bring a weak server setup down :)
  • DIGG users go as fast as they came, they will not click on your ads, will not submit comments and will not subscribe to your RSS.
  • If your story is not promoted the number of visitors you will receive is close to 0.
  • There is a very important "side effect" of a promoted story: it will start showing up in the other social bookmarking systems soon.


DIGG vs Reddit
If you look at visitor count there is a clear winner. But you may find that Reddit can be also an important source of quality comments. Also front page Reddit stories are more closer to what we call "news".
Conclusion
I called this experiment "DIGG vs. Reddit - the ultimate fight" because I got what I needed and I'm not planning to ask for more using "lame" articles like that. I want to thank you all and I hope this was finally an interesting read and not a waste of time. Here are a few interesting or fun comments that are worth mentioning (in no particular order):
I've got a much better idea for settling this whole Reddit v Digg thing once and for all. Take a random Digg user, and a random Reddit user, line them both up in front of a wall, and see who can piss the highest.
From reading both sites - Reddit has more intelligent articles and comments. On the other hand, Digg has so many articles (most of which are not so good) but you're bound to find something interesting. And more importantly, Digg breaks news very quickly.
We don't want DIGG to know about us... so don't let it get to their front page. The more DIGGers join us, the more we're screwed! QFT. It's cliche to say it but reddit is going downhill... I still have faith but I won't be shocked if our comment sections start to look more digg-like soon.
Reddit is steak; digg is popcorn. With Reddit, I am more likely to click on the links because I don't have to go to some intermediate bullshit article "container". Fewer secondary blog links and the moderation actually works. I actually stopped looking at diggs front page a long time ago and the primary item of interest is the queue (which has it's own set of annoying features). Digg's search is better and it works more like a bookmarking archive system.
On the same note because digg brings you to comments first I can typically tell at a single quick glance that I want to continue on to the article. This is especially tue with video links, which I love and I think is far better than browsing through youtube itself. Reddit flip-flops between intelligent commentary and these strange images. Fine. But Digg I visit far more often, and gets the click in this case.
I hate replying to a troll about reddit, but I found that the comments on reddit are unreadable and unhelpful because the comment system was abused by trolls, far left/right wing raving lunatics, and voracious anti-semites. However, the top links themselves are often times very useful, interesting, and entertaining. So, I still use reddit over an rss feed on my pageflakes, but I don't vote on articles and I no longer comment on them. Both sites have their strengths and weaknesses, but if I had to pick which service would die tomorrow, I'd have to sacrifice reddit. Sorry.

Saturday, January 27, 2007

Extending The Windows Vista Grace Period to 120 Days

Every Vista DVD includes the ability to install any edition of Vista without a product key. When you install without a product key, you get an automatic 30 day evaluation period.

You can easily extend the 30-day Windows Vista grace period to 120 days. No hacks required. This is an official, supported operation directly from Microsoft. To extend the grace period another 30 days, simply start a command prompt as Administrator, and issue this command:

slmgr -rearm

Reboot for the change to take effect and you have 30 more days. You can only extend three times, so the total grace period for a Vista evaluation is 120 days. ( source )

Thursday, January 25, 2007

Romania becomes a world-wide leader in creation of software

If you don't know what "Romania" means it's time for you to take a look. It's a small country in Southeastern Europe well known a few years ago for internet frauds (and I think that's the reason why even now you cannot signup for services like eBay, Google Checkout or PayPal from Romania) "Last year, a young Romanian was accused to have penetrated illegally in more than 150 computers of American public institutions, among them the NASA, the Department of Energy and the Navy, and to cause damages by about 1.5 million dollars."
People like Nadia Comaneci or Gheorghe Hagi drove world's attention to this country but it looks like lately Romanian developers do it. And that's what this Spanish article made me realize. I'm glad that some of those script-kiddies evolved to "a generation of computer science young people who have turned to this Balkan country in one of you lead them world-wide in the technology of programming of software.
The most visible flag of this change are the antivirus created by Romanian experts “BitDefender” and “RAV Antivirus”, marks that have gained even please as emblematic companies as IBM or Microsoft, and that already moves tens of millions of euros. In Romania there are more than 9,000 companies specialized in IT. “The computer science Romanians have already conquered a notoriety in this sharpshooting sector”, indicates Dan Ardelea, professor in the Polytechnical University of Bucharest."
Good news for the future...

Will your next operating system run online?

The short answer is no. By definition an operating system (OS) is a computer program that manages the hardware and software resources of a computer. At the foundation of all system software, the OS performs basic tasks such as controlling and allocating memory, prioritizing system requests, controlling input and output devices, facilitating networking, and managing files. It also may provide a graphical user interface for higher level functions. It forms a platform for other software.

I think you agree that anything that runs in your browser doesn’t match this definition. However, the vast majority of computer users don’t know the definition and as long as they can continue their daily tasks (like text editing, sending email, using a spreadsheet, …) will not care if their user interface runs in a browser. For them I have good news: the answer to the title question is yes and Google may launch a web OS in the near future :).

Personally I think the term web desktop (or webtop - a network application system for integrating web applications into a web based work space) is closer to what you can have today. Why would you use web desktop software? Well, here are some features you will find in current webtop applications: file explorer, file sharing, web based email, blog creator, instant messenger, address book, calendar, chat rooms, message boards, RSS reader, website editor, office productivity applications, online document collaboration. If you are not convinced yet please note that you can have access to this personal desktop and your data without carrying anything more than your username and password from any place in the world (with an internet connection, of course). There are a few choices for this available today – you can see the links and some screenshots at the end of the article.

But what is somebody comes with the right hardware and software environment and offers a “true” web operating system? Would you buy/use it? Already there are a bunch of offers for online storage, you can write your documents online and even use a spreadsheet. Here are some thoughts I have in mind:

· Don’t expect high performance, intensive 3D games or applications, fast response times and user interface richness you can have in a modern OS today. Even a super fast internet connection (10MB/s) is way below the speed of the hardware (50-100MB/s for a hard drive, 2-8GB/s for RAM memory and so on).

· You will not “own” your private data anymore. If something goes bad with the hosting company, well, it’s bad for you too. How about your privacy? Your provider will have access to anything you do on your computer, ANYTHING.

· How about storage capacity? Development environments? Porting existing applications?

Today there are some research projects in this area and even some implementations but nothing near what you can get from a “normal” OS. I’m watching the news in this area but in the meantime here are the promised screenshots (click for full size images):

Tuesday, January 23, 2007

DIGG vs Slashdot

Slashdot was in better shape at that time...For Reddit effect you should look here.

Windows Vista RTM

Coming soon :) digg it

Phantom Yahoo! Messenger display image

When you select a display image in Yahoo! Messenger it will be resized to 16x16 pixels to fit the space in the list. However, when someone will start a chat your display image is resized to 96x96. We can exploit this behavior and make Messenger show a different icon in the list and in the chat window for the same person. I think it's a cool trick but don't use it when busy, your friends will buzz you to tell them the secret. Use the GIF image below.
PS: Did you know that you can add yourself in the messenger list. Just to check if you are online. Liked it? digg this

Thursday, January 18, 2007

The evolution of a web developer/designer

After reading the 10 CSS Tips from a Professional CSS Front-End Architect (and the comments - important) I feel forced to rewrite the popular "The Evolution of a Programmer" joke for web developers/web designers. So, here it is (improvements are welcome - I'm not a web developer or designer):

High School/Jr.High

hello.htm
Hello world!
Compatibility
- works in all browsers/text editors/you name it
- your dog can read it and your grandma can change it

First year in College

hello.html
<Html>
<Body>
Hello world!
</body>
</html>
Compatibility
- works in all browsers/text browsers/mobile
- your grandma can still change it with some effort

Senior year in College

hello3.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Hello world!</title>
<META NAME="DESCRIPTION" CONTENT="This is a cool hello world example!">
<META NAME="KEYWORDS" CONTENT="cool,hello,world,example">
</head>
<body>
Hello world!
</body>
</html>
Compatibility
- works in all browsers/text browsers/mobile
- validates

Senior year in College - hacker

hello3.html
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body>
&#104;ello world!
</body>
</html>
Compatibility
- m3 d0n't kn0w

New professional/PHP developer

hello4.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
</head>
<body>
<?
echo("Hello world!" );
?>
</body>
</html>
Compatibility
- works in all browsers/text browsers/mobile
- PHP needed
- will validate until some other dumb developer changes a letter

Seasoned professional/PHP developer

hello5.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
</head>
<body>
<?
include "inc/class_hello_world.php";
$hello_world_class = &New class_hello_world;
$hello_world_class->display_hello();
?>
</body>
</html>
inc/class_hello_world.php
<?php
class class_hello_world{
var $hello = 'Hello world!';
function display_hello(){
echo $this->$hello;
return 0;
}
}
?>
Compatibility
- works in all browsers/text browsers/mobile
- PHP needed (4, 5 recommended)

New designer

hello3.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
</head>
<body>
<blink><font face="Arial" size="2" color="#800080">Hello world!</font></blink>
</body>
</html>
Compatibility
- works in all browsers/text browsers/mobile
- can annoy any person on earth (so no user compatibility)

New professional designer

hello3.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
<link rel="stylesheet" href="css/main.css" type="text/css">
</head>
<body>
<span class="hello">Hello world!</span>
</body>
</html>
css/main.css
.hello {
font-family: Arial;
color: #990066;
}
Compatibility
- needs browser CSS support
- NN4+, IE4+, FF, Opera 3.6+
- will not apply style on some mobile browsers

Professional CSS Front-End Architect (sarcasm)

hello_world_v03a.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Hello world!</title>
<link rel="stylesheet" href="css/main.css" type="text/css">
<style type="text/css" media="all">@import "css/main.css";</style>
<style type="text/css" media="all">@import "css/bugfix.css";</style>
<!--[if lte IE 6]><style type="text/css" media="all">@import "css/bugfix_ie6.css";</style><![endif]-->
<!--[if gt IE 6]><style type="text/css" media="all">@import "css/bugfix_ie7.css";</style><![endif]-->
<link rel="alternate" type="text/html" media="handheld" href="http://helloworldmobile.com/" title="Mobile/PDA">
<link rel="icon" href="http://helloworld.com/favicon.ico" type="image/x-icon">
</head>
<body>
<span class="hello">Hello world!</span>
</body>
</html>
There should be 4 css files I won't bother to write.
Compatibility
- compatible with "most modern browsers"
- somehow IE6,7,FF,Opera renders the text wrong
- how the hack would you maintain the CSS pages for every IE service pack (hint: hire another Professional CSS Front-End Architect)

New Manager

hello.doc
Hello world!
File > Export HTML page...

Middle Manager

mail -s "Hello, world." bob@b12

Bob, could you please write me a webpage that prints "Hello, world."?

Senior Manager

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

Top Manager

Calls Senior Manager
- Where the fck is my hello world page? The meeting with the client starts in 10 minutes!

MySpace administrator

We need to throw more servers at the hello world page.

Windows developer

Installs Visual Studio 2005
Opens Visual Studio
Google > "ASP 2.0 hello world"


I must add that I don't have nothing against professionalism in web development or design but I looks like simple things are more complicated to do right as you advance /evolve and way more knowledge is needed. Please note that this is a joke!

Tuesday, January 16, 2007

PostgreSQL vs MySQL benchmark

Pushed by the latest news about MySQL stopping to provide Windows binaries and the split between a community edition and a enterprise server I started to look for other options. The first one is without doubt PostgreSQL. The first things you will hear about PostgreSQL is that it is technically superior to MySQL - and this is true - but way slower. There are few side by side benchmarks to be found so I thought to check the second statement using latest available versions.
The results are from a TPC-C like benchmark ("it combines read-only and update intensive transactions simulating the activities found in complex OLTP enterprise environments"). I used MySQL 5.0.27 (innodb) and PostgreSQL 8.2.1 with comparable memory and disc settings. Database size is about 80MB for each test (5000 - 300000 rows/table) and the number of concurrent users ranges from 1 to 20. I think this is a good testing scenario but if you have suggestions or other results please comment. Here are the results (500MHz PIII, 256 MB RAM, 2 IDE HDDs - client on different computer, 100MB/s network):

Transactions/second (MySQL, PostgreSQL)

Transaction graph MySQL
Transaction graph PostgreSQL
Timeout errors MySQL
Timeout errors PostgreSQL
Conclusions:
  • PostgreSQL was slower at populating the database.
  • MySQL is faster overall overall (~2x faster).
  • No timeout errors for PostgreSQL. Interesting.
  • Maybe there is more room for improvements in PostgreSQL config file.

More links on the subject:
http://monstera.man.poznan.pl/wiki/index.php/Mysql_vs_postgres
http://www.mysqlperformanceblog.com/2006/11/30/interesting-mysql-and-postgresql-benchmarks/
http://tweakers.net/reviews/657/6
http://tweakers.net/reviews/649/9
http://benchw.sourceforge.net/benchw_results_open3.html
http://www-css.fnal.gov/dsg/external/freeware/pgsql-vs-mysql.htm

MySQL no longer providing Windows binaries for free

MySQL AB have decided that Windows binaries will no longer be available for free from their web site. The source code will still be available for free download, but will have to be compiled before it is usable. If you take a look at the “community” edition download page you will notice that the latest source version is 5.0.33 and the latest compiled Windows binary is 5.0.27.

I find this very frustrating because, as many Windows developers do, I use MySQL and other open source software but I don't have the needed tools and time to learn how to compile/modify/tune the whole stuff. For me it's not just a "just compile it" situation as it might be for Linux users. And that's because I don't know and I don't want to spend time learning to do that. I don't feel that I need to spend time compiling MySQL. Here's what you need to compile the source:

  • Visual Studio .Net 2003 (7.1) compiler system
  • Between 3GB and 5GB disk space.
  • Windows XP, Windows 2000 or higher.
  • Patience (because it will take some time).

And if I have to pay to download Windows binaries then PostgreSql will suddenly start to look better in my eyes. I thing the guys are already throwing a party right now. Stupid move MySQL, stupid!

PostgreSQL vs MySQL benchmark

If you need more information sources (no binary :)):

http://www.planetmysql.org/kaj/?p=83
http://discuss.joelonsoftware.com/default.asp?biz.5.439544.15
http://ilia.ws/archives/153-MySQL-5.0.33-Community-Server.html
http://www.mysqlperformanceblog.com/2006/12/29/where-to-get-recent-mysql-version/

Tuesday, January 9, 2007

The most annoying CES video part

I think you agree. This is when Bill Gates introduced Windows Home Server, the most interesting part of his presentation. Why? (this video was downloaded directly from Microsoft CES page)

Thursday, January 4, 2007

HD-DVD vs DVD quality

Click on the pictures to see full size

Movie 1

Movie 2

Game 1