Archive for January 2011

Parallelizing simple algorithms series

This entry is part 1 of 2 in the series Parallelizing simple algorithms
Fibonacci Spiral

Fibonacci Spiral

In the following weeks, I will try to write some posts about parallelizing simple algorithms with the Erlang programming language. The main motivation for executing program instructions in parallel is to complete the computation faster than the sequential equivalent solution. As it is used, when someone wants to present the “parallelization power” of a programming language/model, the Fibonacci numbers are used. So, following this conversion, my first post will be about parallelizing the calculation of the Fibonacci integer sequence.
Read the rest of this entry »

Google vs. Bing search test

I

n an recent article in searchengineland.com, Conrad Saam run some search “accuracy” tests on Google and Bing. He used some complex queries in order to check if the two search engines were able to “understand” and answer what was he looking for. Of course, this testing method, especially since he used only 20 queries, can only be characterized as subjective, but the outcome was that Bing outperformed Google.

Doing these sounds fun.. I will try it one day and let you know about my results..

After Chrome, Opera will drop support for H.264

Opera BrowserAs you probably already know, some days ago Google announced that they will not support H.264 video codec in the future releases of Chrome (announcement).The <video> html tag, in Chrome, will support WebM (VP8) and Theora video codecs, and will consider adding support for other open codecs in the future.

After this announcement, Opera decided to support Google’s decision on dropping the H.264 codec. Thomas Ford, Senior Communications Manager, Opera, told Muktware, “Actually, Opera has never supported H.264. We have always chosen to support open formats like Ogg Theora and WebM. In fact, Opera was the first company to propose the <video> tag, and when we did, we did it with Ogg. Simply put, we welcome Google’s decision to rely on open codecs for HTML5 video.”. Indeed, Opera was the company that proposed the <video> tag in an post back in 2007.

I have to disagree with both companies’ decision, because there is a big difference between better supporting and promoting open standards and forcing the drop of a proprietary technology that is currently so commonly used..

3-SAT polynomial time solution? If true then P==NP

Complexity classes

Complexity classes

One of the biggest questions in the CS always was (is) if P==NP, or P!=NP.

I just read a post announcing an article called “Non-Orthodox Combinatorial Models Based on Discordant Structures” by the author V. F. Romanov (http://arxiv.org/abs/1011.3944).

According to the author:

The article presents a constructive proof of effective resolvability of 3-SAT problem, accompanied by description of a polynomial algorithm created for the named purpose.

If this statement is correct, and the algorithm really solves the 3-SAT problem in polynomial time, then P==NP (since 3-SAT is  NP-complete). Although the article, in my opinion, looks too draft for such an important topic, if it will be proven correct, one of the biggest findings in CS will be unveiled.

Lets see..

FPGA as a processor?

I just read an article about some research being done on University of Glasgow. Researchers placed/programmed (more than) 1000-cores on an FPGA (about FPGA). Each core is supposed to have each own dedicated memory (it is not a technical article, so not many technical details were given). According to the article:

The researchers then used the chip to process an algorithm which is central to the MPEG movie format – used in YouTube videos – at a speed of five gigabytes per second: around 20 times faster than current top-end desktop computers.

You can read the article here.

Really simple batch renaming in Linux

While working on the photos section of trigonakis.com, I wanted to batch rename some photos, so after the renaming their new name would be prefix_i, where i is a incremental value. The following (stupidly) simple bash script provides the desired functionality:

#!/bin/bash
 
INDEX=1
 
for i in *.$1; do
  echo item $INDEX: "$i" renamed to $2_$INDEX.$1
  mv "$i" $2_$INDEX.$1
  let INDEX=INDEX+1
done

Usage:

#make the script executable
chmod +x scriptname.sh
#move the folder containing the files to be renamed
mv from_path/scriptname.sh to_path/
#run the script
./scriptname.sh FILE_EXTENSION NAME_PREFIX
#example:
./rnm.sh JPG photo

New Weblog, First Post

Distributed Life

Distributed Life

Welcome to Distributed Life blog. As the title suggests, this will be a technology (computer science mostly) related blog. My focus will be on Distributed Systems, since it is my area of interest, but I will also write some posts about Opera browser and generic technology/Internet topics that I find (extremely) interesting.

Topics’ Sources

The topics you will find here will be mostly drawn from my everyday (academic and not) experiences and from other interesting posts or sites that I meet. The Opera related topics will be focused so that they will explain to you why Opera browser is unique (don’t worry I won’t be biased towards Opera. I am the first to say that Opera still has some major problems..)

Posting Frequency

As I said, the posts will be drawn from interesting (or to be precise, from what I consider interesting :-P) topics, so the frequency that I will write new posts will vary from daily to weekly+. Anyaway, this weblog is not meant to be a generic tech one.. who needs one more of these!

Hope you will enjoy! Thank you for reading..