Google has a new testbed for its search engine. It was rolled out very quietly and is called searchmash. Trying it out a bit doesn’t give me any different results than Google, but the interface is all Web 2.0 (for example, search for something, then click the “more web pages >>” link at the bottom of the results to see what happens. (via Download Squad)
Making Windows XP Faster
Yet another list of Windows XP tweaks has been published, but this time it’s a short, comprehensible list which seems to contain the best advice I’ve seen so far (among the many tweaks out there many have no effect on Windows and sometimes can even make it perform worse).
Last night I tried some of these changes (specifically: A, B, C, F, J and K – some have been set for years) and my Windows XP really works faster! However, after having the same Windows XP installation for over 3 years, I think I’m going to have to re-install it pretty soon. (via Download Squad)
Google Reader – New, improved version
Google Reader is Google’s online RSS feed reader. The new version is finally usable for me – you can see more than one item at a time and there is a branch/tag view on the left (instead of the previous “all items” view).
I love RSS (Wikipedia entry). It allows me to read a lot of news in a relatively short time. Now that I’ve used Google Reader for a few days I’m going to use it as my default RSS reader. It makes perfect sense to have your RSS reader application an online one, and Google Reader is now a great choice.
It also turns out Google implemented a little Easter egg inside Google reader. Easter eggs are always fun.
Writing Software – Part 2
As a teenager I studied a little bit of the Logo programming language, then some Pascal and later made a failed attempt to study C++ from a really bad book, which insisted that I have to know how numbers are represented in bits inside the computer first. Most of the time I played computer games and explored (as much as it was possible before the Internet) the operating system and the computer hardware. I even worked as a computer technician for a little while.
After that I programmed for a while in the RPG programming language for the IBM AS/400 computer. That was actually my first real programming experience. RPG is like database-oriented assembly language and along with the green screens of the AS/400 terminal you can imagine that this combo offers little excitement. However, thanks to my brother, who was also my boss, I learned important rules like Don’t Repeat Yourself (DRY) and many other things.
Then I went on to study math and computer science. I enjoyed investing time in doing C and C++ home assignments, constantly trying to improve my code. After RPG, C++ seemed like a much nicer language to mess around with (also, I could do it at home). By the end of second year I was after OS course and with some OO knowledge, which I thought would be enough for me to look for a job (also I was in need of an income and it was before the bubble burst).
And so came my first C++ job. I worked for KLA-Tencor programming for Windows. At first I was amazed to see how little my knowledge of the standard C and C++ libraries had to do with the job. The Windows API contains so many functions, not to mention MFC and COM. Naturally, I had a trainer assigned to me, who was truly a guru when it came to Windows Internals. I learned a lot form him, but only a few months later, when he left, I was left to cope with Windows entirely by myself.
Programming for Windows is… it’s many things. Most of all it can be very confusing, especially with the plethora of macros and big structures that have to be transferred to functions with a lot of arguments. Looking for CreateProcess() in Google brings up two links: The first is Microsoft’s MSDN documentation for CreateProcess(), and the other is titled “Calling CreateProcess() the easy way”. I think that says a lot.
You really have to work closely with the MSDN reference when you program for Windows. One of the problems, however, is that first you have to know what the Windows API lets you do and only then you can start looking for it. Even then, it doesn’t mean that you’ll find the best and most correct way to do something. The good thing is that there are many resources online to help with Windows programming, so unless you’re looking for something rare, you’ll find your way. In that sense Windows programming requires you to be resourceful. It requires you to know how to read MSDN entries and it requires you to know how to find what you’re looking for.
With Microsoft constantly inventing new APIs while keeping the old ones, programming for Windows is a race between Microsoft and the programmers trying to keep up. A good Windows programmer is usually one that follows Microsoft’s publications like MSDN blogs, MSDN magazine and so on. The fact that MSDN blogs like Raymond Chen’s The Old New Thing have become so popular shows how much it’s needed to have people answer questions regarding Windows APIs.
Next time I think I’ll talk a little more about Windows programming (maybe a mention of .NET) and say what I know so far about Linux programming.
UPDATE: Here’s why Windows programming can be confusing – check out this latest post from Raymond Chen about “Waiting until the dialog box is displayed before doing something”. After my few years of Windows programming experience, I wouldn’t have gotten it right myself.
If your computer is beeping “Fur Elise”…
Software engineers sometimes see life as a program
It happens to me once in a while… something in life looks very much like a piece of software. I guess it happens to many people with relation to their profession. A great example you can in Mike Stall’s post “My baby, the finite state machine”, which is a short, funny and interesting insight about his baby.
I should have followed my UQAN idea
Another day goes by, and another questions and answers service comes up. As this TechCrunch article suggests, Q&A services are growing bigger because people are better answer-givers than search engines. Yahoo! Answers is now the biggest Q&A service around, but more and more are popping up. I already wrote about Guruza and Illumio which look very similar to my own UQAN idea. The new guy on the block is Answerbag and there are probably more to come (Google Answers is a paid service so it’s kind of different.)
All this brings me to the inevitable conclusion that I should have followed the idea of UQAN (Universal Questions and Answers Network) instead of dropping it a few years ago.
Anti-Virus Programs
I’m always asked about free anti-virus programs. I don’t use an anti-virus, as I have a firewall and I’m very careful with programs I download and run. I sometimes use online scanners, like McAfee FreeScan, Trend Micro Housecall and Symantec Security Check. These, of course, cannot give you the always-on virus protection installed software can.
As it turns out, there are many free anti-virus programs. I’ve always known about AVG Anti Virus but in the latest anti-virus comparison done by www.virus.gr the second place winner was a free anti-virus program I heard about for the first time: Active Virus Shield by AOL. If any of you uses it, let me know how it is.
QuickRef.org – Find programming references quickly
QuickRef.org is a search engine for programming documentation. You simply lookup a name (of a function, class or whatever) and it pops up a list of matches. It works good and looks very useful. I, of course, also like the website because its title is: “QuickRef.org – all your docs are belong to us” :-) (via Digg)
Browzar – the secure browser that wasn’t (or: How tech sites sometimes report stuff without checking the facts)
A few days ago a new web browser, called Browzar, appeared on the Internet. Claiming to be a privacy-oriented browser, Browzar immediately caught the eye of technology websites which started reporting it. Here are some examples: The Register, Lifehacker and Download Squad.
However, after a few days it turned out that Browzar is not really what it claimed to be. Browzar is simply a wrapper around Internet Explorer, which is not a bad thing by itself. It keeps your privacy by cleaning Internet Explorer’s cache and history, thus protects other users of the same computer from knowing what you’ve been doing. That’s not enough for a browser to get so much hype, as there are many tools that do this already.
This wouldn’t make it to my blog on a regular day. But I’m troubled with the way this browser got so much news before anyone really tried it to see what it’s worth. The hype around this browser was very much unjustified, and this is why I didn’t include links to its download page.