« May 2008 | Main | July 2008 »

June 30, 2008

Underhanded and unobfuscated

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
          -- Rick Cook


If you're one of those bold souls doing battle with the universe, here's a couple of fun contests that might interest you ...

The Underhanded C Contest, a relative newcomer to the field, is currently calling for entries. The idea is write innocent-looking C code that implements malicious behaviour. The code should be "readable, clear, innocent and straightforward as possible, and yet it must fail to perform its apparent function. To be more specific, it should do something subtly evil."

Last year's contest involved making apparently strong encryption weak. The winning entry contained "a beautifully spiteful bug...  concealed in debugging code, without which everything would work fine. Moreover, it vanishes whenever debugging is turned on."

You'll find details of this year's challenge on the site. Deadline is September 30th.

The International Obfuscated C Code Contest (IOCCC) has been around since the early '80s and is, in a sense, the opposite of the Underhanded one. Here the aim is to write the most unreadable, obscure, and bizarre (but fully functional) C program you can manage. Here, for example, is a wee gem from 1985 ...

/*
* HELLO WORLD program
* by Jack Applin and Robert Heckendorn, 1985
*/
main(v,c)char**c;{for(v[c++]="Hello, world!\n)";
(!!c)[*c]&&(v--||--c&&execlp(*c,*c,c[!!c]+!!c,!c));
**c=!c)write(!!*c,*c,!!**c);}

What does it do? Isn't it obvious? (It just displays the message "Hello, world!")

The website hasn't yet announced the 2008 contest, but the Previous Winners page should keep you entertained. Or use the Spoilers page to clue you in to what each entry does. (For another gem, check out this 1998 entry; a flight simulator that actually looks like a plane!)

June 26, 2008

The fox rocks!

Although Firefox 3 only hit the servers 10 days ago, it's already had a staggering run with more than 18 million downloads in the first week alone. As of May this year, Firefox's market share was getting close to 20%. With more than 15,000 improvements making version 3 "faster, safer and smarter than before", this release will undoubtedly hasten the erosion of Internet Explorer's dominance.

But what are those improvements? If, like me, your fox automatically updated itself last week with very little fanfare, you're probably wondering what all the fuss is about. Here's the best reference I've found so far: The Field Guide to Firefox 3 gives a brief, illustrated, straightforward introduction to all those new features.

If you're still unsure, there's reviews here, here and here. And this article details testing that shows Firefox 3 to be the most memory efficient browser in the Windows stable.

At the time of writing, the Firefox 3 Downloads chart showed more than 21 million downloads, with 56,485 going to New Zealand alone. Who's going to make that 56,486 ...?


Updated July 3: "Mozilla has officially made history with a new Guinness world record for the largest number of software downloads in a 24-hour period. The final record breaking 8,002,530 downloads for web browser Firefox 3.0 took place in June..." [more]

June 23, 2008

Hidden Linus: Three cheers for Wine!


Last week, after a staggering 15 years in development, Wine hit release 1.0 last week.

Conceived in 1993 as a way of running Windows applications in Linux, Wine -- its recursive acronym stands for "Wine Is Not an Emulator" -- contains a compatibility layer comprised of alternative implementations of Windows DLLs. (One of the reasons the project has taken so long is because of incorrect, incomplete or just plain missing Windows API documentation. In some cases the Wine team's had to duplicate obscure bugs in order to get applications to work properly!)

Reaching version 1.0 is a real milestone. Amongst the applications that now work flawlessly in Wine are Adobe Photoshop CS2, Half-Life 2, and Call of Duty 2. There are more than 10,000 applications in Wine's Application Database, rated from Platinum (works perfectly) through to Gold (almost there), Silver, Bronze and Garbage (don't even bother!).




It can take a little while for distributions to catch up with new releases. (As of this blog date, for example, Ubuntu was only offering version 0.9.59 via its repositories.) So how do you get 1.0? Simple. Visit Wine's download page, choose your distribution and follow the directions.

While there are now numerous emulator alternatives to Wine (such as the awesome VirtualBox), the beauty of Wine is that applications work inside Linux without the need to install or run a Windows OS. And now that it's reached level 1.0 stability, commercial application developers have the added potential of reaching millions of Linux users with their formerly Windows-only software.

Over the years Wine has spawned a couple of commericial offshoots that are also worthy of a look. CodeWeaver's CrossOver ("Making every Mac and Linux desktop Windows-compatible") is largely aimed at productivity software, while Cedega ("the thrill of blockbuster gaming on Linux") is aimed squarely at gamers.

Cheers, Wine!


<--Previous Hidden Linux       Next Hidden Linux -->

June 15, 2008

Hidden Linux: Basket case


I don't know how you work, but till recently my desktop was covered with a series of notes -- mostly in the form of text files -- on everything from books to order to ideas for this blog. On top of that I had a To Do list (using the minimal but useful Tasks), and a database of Linux command ephemera in KnowIt format. Now I have a clean desktop, and all my junk's neatly orgainsed -- and accessible! -- within a single application.

To describe BasKet Note Pads as a note-taking app doesn't quite do it justice. In fact, it doesn't even come close. To get an idea of what it can do, check out the screenshot below...



(Click for a larger view)


And that's just the beginning! Importing my old text notes and KnowIt data was a breeze. (The program has built-in import filters for a variety of programs.) Individual baskets can be password or public/private key protected, or emailed or shared on a network. You can also
  • Enter text or paste in images, links, email addresses, files and application launchers.
  • Organize your notes in a hierarchy of baskets, by topic or by project.
  • Choose a variety of layouts from automatic to multi-column to free-form.
  • Flag notes with tags such as "Important" or "Idea", or create your own tags.
  • Use tags to change the appearance of notes so you can create checkboxes for To Do lists, add progress-bars or priority-metres, etc.
  • Search individual baskets or the whole lot quickly and easily.
  • Export baskets to HTML for web pages identical to your basket page.
And if all that's not enough, there are even smooth animation effects as you move things around.

Actually, the only annoying thing about BasKet is that I didn't discover it years ago!


<--Previous Hidden Linux       Next Hidden Linux -->

June 12, 2008

The printer did it!

Now DRM is pretty much gone from music downloads, it seems that the music industry is stepping up their so-called policing of file-sharing networks. (There was a 20-fold increase in the number of takedown notices issued a couple of months back -- a spike not matched by an increase in actual file sharing.)

I use the term "so-called" because the industry won't say exactly how they do this policing, and that "many of the recent notices don't correspond to entries in traffic logs", but they're nevertheless demanding law changes to protect their rights. (They're backing legislation in Illinois and Tennessee that would require schools install deep packet monitoring equipment once they've received a certain number of infringement notices -- notices, coincidentally, issued by them...)

Now it seems researchers at the University of Washington have found the answer. A study released a fortnight ago found serious flaws in how file-sharers are fingered; "...some people might be getting improperly accused of sharing copyrighted content, and could even be purposely framed by other users." But here's the clincher...

An inanimate object could also get the blame. The researchers rigged the software agents to implicate three laserjet printers, which were then accused in takedown letters by the MPAA [Motion Picture Association of America] of downloading copies of ”Iron Man„ and the latest Indiana Jones film.

Which reminds me... a couple of weeks ago regular reader Andrew Reeve sent me this link to The Buzz Report in which host Molly Wood "proves" that 10 years of mucking around with DRM has cost the record industry a cool $37,000,000,000,000. Nice stuff!



June 6, 2008

Cellphone spies

GeeksAreSexy carries an interesting piece on cellphone spying...

Eavesdropping is easy.  All it takes is a two-minute software install and someone can record your calls and monitor your text messages.  They can even set up systems to be automatically alerted when you dial a certain number, then instantly patched into your conversation.  Anyone who can perform a basic internet search can find the tools and figure out how to do it in no time.

But wait, it gets scarier! First off there's World Tracker. Send your target a single text message then track them from the comfort of your browser, complete with Google Maps pinpointing! (It's a UK-only service at the moment.)

Or how about Flexispy, one of apparently dozens of programs that turn cellphones into remote listening devices...

Once the program is installed, all you have to do is dial a number to tap into the phone’s mic and hear everything going on.  The phone won’t even ring, and its owner will have no idea you are virtually there at his side.

Yikes! I think my mobile's ringing...

June 2, 2008

Hidden Linux : Restoring "missing" packages


There are a number of reasons why some great programs never make it into mainstream Linux distributions. Software patents, restrictions on freedom of speech or issues about the use of cryptography are just some of the reasons. Rather than be bowed by such nonsense, the folk at Ubuntu have produced Medibuntu -- a repository of packages that can't be included in Ubuntu distributions for various reasons.

Medibuntu (Multimedia, Entertainment & Distractions in Ubuntu) is subdivided into free and non-free repositories -- the latter containing programs with licenses that restrict the way they can be distributed (such as GoogleEarth and Skype). Adding access from your current Ubuntu version requires cutting and pasting a whole two lines of code (detailed here ), then adding a GPG key. After that the "missing" packages will be available in whatever package manager you use. You can browse the list here.

It's a commendable effort. As the folks at Medibuntu say:
We refuse to resign ourselves to abandoning software that may be legally useful somewhere, and we have chosen to provide it with professional quality packaging, easily usable within the context of Ubuntu.

And that's great news for Ubuntu users. But they also caution:
It is your legal responsibility to make sure that the software you are installing can be legally used in your country and for your intended purpose.



<--Previous Hidden Linux       Next Hidden Linux -->

Subscribe
Newsletter & SubscriptionsPC World is New Zealand’s top selling computing and technology magazine.

It provides up-to-the-minute editorial, insight and buying advice for personal computing, cell phones, game consoles, digital entertainment and broadband.
SIGN UP
PCWorldUpdate
PC World's weekly round-up of tech news, gear and game reviews, software selections, and handy How Tos.