RMS Turin speech thoughts

There is a transcript of RMS Turino speech up on Groklaw. So to follow up on my earlier thoughts about GPLv3 I will look at the transcript of RMS’s speech in Turin and write down what I think about it here, so I can refer to it later and maybe so that other people can skip reading that huge piece of text on legal stuff, especially as there is nothing really new there.


First RMS goes on to his now tradition rant about “intellectual property” being a meaningless term that lumps together three completely unrelated laws with different rules. I fully agree on that and I have used the very same argumentation in my speeches for last couple years.

RMS summarises GPLv3 like this:

 And the overall effect of GPL version three will be basically the same as version two, protecting the same four freedoms, but doing it somewhat better, dealing with some problems which we've encountered and adapting better to various different laws around the world. 

It is clearly visible trough the drafts of GPLv3 that it really is intended to protect the same freedoms, but better. People that do not want their freedoms protected, should not be using any version of GPL anyway - BSD or MIT licenses should be good enough for them. However, if we do want to protect our freedoms, then we should that as good as possible without restricting them.

RMS explains the new patent clause - it was implicitly assumed that distributor that distributes a program under a free software license implicitly promises not to sue users of that software for using it. With what is going on in the legal world (especially the SCO case) it is only natural that RMS would want to codify such implicit promises. He also raises a good point on a person having an exclusive patent license distributing GPL software that uses patented technologies that this license grants him the rights to use and distribute, but noone else. That goes very much against the spirit of GPL, so it had to be fixed in some way. I am not sure if the proposed fix by this specific revision of the patent clause is the best way, but that loophole must be closed in one way or another. (And no, eliminating software patents is not a satisfactory option - it is not soon enough and it does not depend on our decision alone)

Another controversial issue that RMS is going into more detail with is the DRM clause. The idea is quite simple - anyone who wishes to use GPL code in a DRM protection measure may do so without any problems, but he has to admit that because any user of his GPL-licensed DRM protection measure has the right (according to the GPL) to modify that protection measure, it is not an effective DRM protection measure and thus he can not use laws like the DMCA to disallow people changing his DRM software for any purpose. There is nothing unfair, draconian or even new about it - with a bit of luck the same thing could be proved in court the first time someone would try to enforce DRM on GPL software via DMCA. However simply clarifying that in the license is a much clearer way to achieve that and it will also save some legal costs along the way.

What I do not really support for 100% is the clause against Tivofication, the hardware key clause. Tivo has Linux inside, but the hardware will not allow you to run modified versions of the kernel. GPLv3 tries to close that loophole by demanding that along with the source of the software the distributor is obliged to also distribute all other components that are needed for modification and successful functionality of that software, for example, a key that would allow the hardware to run our version of the software. While I do not like what Tivo does with crippling the hardware they provide, but at the same time it is quite clear that it is quite within their rights to decide how do they want to provide you their service. The only way in my mind to insure that TC does not bite us in the ass is to make our software so good that no business would by some piece of general purpose computing hardware that would disallow them to run our software. Microsoft is tiny compared to all the companies using computers improve their primary business function. We must make it so that our users are our allies and if someone tries to go against us with TC tools, our users would vote against that with their wallets.

More clarifications followed about optional parts of GPL that were intended for extended compatibility with other software licenses. I think that is a very noble goal, but one must be careful not to make some sub-version of GPL being non-free like it happened with GNU FDL. However it is still not quite clear to me how the legal issues work when sharing code between projects with different compatible licenses and between projects with GPLv3 with different extension enabled. Could someone explain that in more detail with some examples?

In Q&A session RMS went quite a bit overboard with some anti-establishment rhetoric that in my opinion had no place at that event. If you want to praise Chavez, please do that in a private conversation at a cocktail party or rather do not do that at all - it is quite damaging to seriousness of your message and acceptability of it to our major allies in fight from freedom - business users.

On a funny note - a remark from RMS that we will have to replace him at some point got a round of applause :)

(Now I should really finish up the presentation for tomorrow :P)

Popularity: 27% [?]


Presenting to project leaders

This Friday I am invited to give a presentation to the annual conference of Latvian project leader association (LNPVA) about what can these project leaders learn from the free software development process. The core of the presentation will involve asking them to try participating in existing free software projects in order to gather understanding about how we do it and then see for themselves, how that could apply to their projects. Maybe some of them will listen to me and we will get some more people contributing to free software here in Latvia.

I will try to make my presentation in Lessig style, wish me luck on that.

Popularity: 20% [?]


IPW2200 on HP nx6110

If you thought that sticking a supported miniPCI wireless card into a HP nx6110 notebook and getting it to work is trivial or fast or well documented, then you are quite wrong! Let me walk people trough the misery here…


So you have you great HP nx6110 notebook with some kind of Linux installed. For this exercise we will assume that we have Ubuntu Dapper Drake here, but similar problems will happen anywhere else too. You have you shiny new Intel PRO/Wireless 2200 card (or newer IPW2915 that has even more problems) in miniPCI form factor. You open the back of your notebook, stick the card into the slot, attach leads from the antennae and … the fun begins …

The first problem is that you were cheap and instead of buying HP branded IPW2200 card for 100$, you bought an OEM version for 20$. HP will not like that, so right on the boot up you will be greeted by: “104 unsuported wirless network device detected, system halted, remove device and restart”. Friendly, ne? The best workaround to this problem can be found on a HP forum and it is to edit EEPROM of the miniPCI card so that it contains the PCI ID that the HP laptop BIOS expects it to contain. Neat :)

WARNING: EEPROM contains lots of important data. Anything could happen if wrong values are put there.

So, how will we do that? It is quite simple, really. First remove the card and boot your Ubuntu. We will use the new Linux 2.6.16 kernel. To add support to writing to EEPROM we will need Martin Stachon’s patch, but we will have to modify it a bit so that it fits 2.6.16 kernel, so here is the updated patch:


--- linux-2.6.16/drivers/net/wireless/ipw2200.c 2006-03-20 07:53:29.000000000 +0200
+++ linux-2.6.16.new/drivers/net/wireless/ipw2200.c 2006-03-24 22:07:12.000000000 +0200
@@ -2345,6 +2345,8 @@
* NOTE: To better understand how these functions work (i.e what is a chip
* select and why do have to keep driving the eeprom clock?), read
* just about any data sheet for a Microwire compatible EEPROM.
+ *
+ * The chip is 93C66 in 16x256 mode. */
/* write a 32 bit value into the indirect accessor register */
@@ -2425,6 +2427,37 @@
return r; }
+/* write 16 bits to the eeprom */
+static void eeprom_write_u16(struct ipw_priv* priv, u8 addr, u16 data)
+{
+ int i;
+
+ printk(KERN_INFO DRV_NAME " eeprom_write_u16(%02x, %04x) ", addr, data);
+
+ /* write/erase enable */
+ eeprom_op(priv, EEPROM_CMD_EWEN, EEPROM_CMD_EWEN_ADDR);
+ eeprom_disable_cs(priv);
+
+ eeprom_op(priv, EEPROM_CMD_WRITE, addr);
+
+ /* now the data bits follow */
+ for ( i=15; i>=0; i-- ) {
+ eeprom_write_bit(priv, ( (data&(1<<i)) != 0 ) ? 1 : 0 );
+ }
+
+ /* CS needs to be taken low before next clock */
+ eeprom_write_reg(priv,0);
+ eeprom_write_reg(priv,EEPROM_BIT_SK);
+
+ msleep(10); /* wait for the write to complete */
+
+ eeprom_write_reg(priv,0);
+
+ /* write/erase disable */
+ eeprom_op(priv,EEPROM_CMD_EWDS,EEPROM_CMD_EWDS_ADDR);
+ eeprom_disable_cs(priv);
+}
+ /* helper function for pulling the mac address out of the private */
/* data's copy of the eeprom data */
static void eeprom_parse_mac(struct ipw_priv *priv, u8 * mac)
@@ -9946,19 +9979,45 @@
return 0; }
+#define IPW2200_EEPROM_MAGIC 0x2200
+#define CX2_CHECKSUM 0x0040
static int ipw_ethtool_set_eeprom(struct net_device *dev,
struct ethtool_eeprom *eeprom, u8 * bytes)
{
struct ipw_priv *p = ieee80211_priv(dev);
- int i;
+ u8 wordoffset;
+ u16 w;
+ int i;
+
+ if(eeprom->magic != IPW2200_EEPROM_MAGIC)
+ return -EINVAL;
if (eeprom->offset + eeprom->len > IPW_EEPROM_IMAGE_SIZE)
return -EINVAL;
+
+ wordoffset = eeprom->offset / 2;
+
+ /* TODO ethtool currently supports writing only 1 byte,
+ * take eeprom->len into account */
+
+ if (eeprom->offset % 2 == 0) /* LSB */
+ w = (p->eeprom[(eeprom->offset)+1] << 8 ) | *bytes;
+ else /* MSB */
+ w = p->eeprom[(eeprom->offset)-1] | (*bytes << 8 ); down(&p->sem);
+ eeprom_write_u16(p, wordoffset, w); memcpy(&p->eeprom[eeprom->offset], bytes, eeprom->len);
- for (i = IPW_EEPROM_DATA;
- i < IPW_EEPROM_DATA + IPW_EEPROM_IMAGE_SIZE; i++)
- ipw_write8(p, i, p->eeprom[i]);
+ if (wordoffset > CX2_CHECKSUM / 2) {
+ p->eeprom[CX2_CHECKSUM] = 0;
+ p->eeprom[CX2_CHECKSUM+1] = 0;
+ for (i = CX2_CHECKSUM+2; i < IPW_EEPROM_IMAGE_SIZE; i+=2) {
+ p->eeprom[CX2_CHECKSUM] ^= p->eeprom[i];
+ p->eeprom[CX2_CHECKSUM+1] ^= p->eeprom[i+1];
+ }
+ eeprom_write_u16(p, CX2_CHECKSUM/2, (p->eeprom[CX2_CHECKSUM+1] << 8 ) | p->eeprom[CX2_CHECKSUM]);
+ IPW_ERROR("New EEPROM Checksum %04x ", (p->eeprom[CX2_CHECKSUM+1] << 8 ) | p->eeprom[CX2_CHECKSUM]);
+ }
up(&p->sem);
return 0;
}

diff -u linux-2.6.16/drivers/net/wireless/ipw2200.h linux-2.6.16.new/drivers/net/wireless/ipw2200.h
--- linux-2.6.16/drivers/net/wireless/ipw2200.h 2006-03-20 07:53:29.000000000 +0200
+++ linux-2.6.16.new/drivers/net/wireless/ipw2200.h 2006-03-24 21:15:47.000000000 +0200
@@ -1583,6 +1583,13 @@
#define EEPROM_BIT_DO (1<<4)
#define EEPROM_CMD_READ 0x2
+#define EEPROM_CMD_WRITE 0x1
+#define EEPROM_CMD_EWEN 0x0 /* write/erase enable */
+#define EEPROM_CMD_EWDS 0x0 /* write/erase disable */
+
+/* these latter two are distinguished by two upper bits in address */
+#define EEPROM_CMD_EWEN_ADDR 0xC0
+#define EEPROM_CMD_EWDS_ADDR 0x00 /* Interrupts masks */
#define IPW_INTA_NONE 0x00000000

Now that the kernel is patched with this patch, configure it, but be very careful to configure both ipw2200 and ieee80211 as modules and _not_ compiled into the kernel. Compile and install the kernel as usual. Also download IPW2200 firmware and place it into /lib/firmware/.

Turn off your computer and prepare for hot insertion of the card - remove the miniPCI slots cover, insert your IPW2200 card into the slot, attach the antennae and then eject it from the slot, but leave it just there. Turn on the computer and press “Esc” to get into GRUB bootup menu. At this point turn over your computer and insert the IPW2200 card into the slot while the computer is still running. Be very careful about static electricity and try not to touch any contacts - you can easily fry your notebook if you do something stupid here. When the card is inserted, boot your new kernel.

The card should come up normally. The main check at this point is running “iwconfig” (all commands as root) to see which interface is your wireless card (it was “eth1″ for me, substitute “eth1″ for your interface name further on if you have a different one) and then running “ethtool -e eth1″ to see a hex dump of the EEPROM of the WiFi card. If you get only bunch of zeros, then something is wrong there - maybe your firmware does not match with your driver version. Save the hex dump to a file - you might need it if you do something wrong with it later.

Now it is the time to actually change the data in EEPROM. The commands to get a HP approved European version of IPW2200 card


ethtool -E eth1 magic 0x2200 offset 0x8 value 0xf6
ethtool -E eth1 magic 0x2200 offset 0x9 value 0x12
ethtool -E eth1 magic 0x2200 offset 0xa value 0x3c
ethtool -E eth1 magic 0x2200 offset 0xb value 0x10

To get HP approved USA version of IPW2200


ethtool -E eth1 magic 0x2200 offset 0x8 value 0xf5
ethtool -E eth1 magic 0x2200 offset 0x9 value 0x12
ethtool -E eth1 magic 0x2200 offset 0xa value 0x3c
ethtool -E eth1 magic 0x2200 offset 0xb value 0x10

At this point it should be safe to reboot your system with the card inside and the BIOS error should be no problem for you any more. Once a card has been altered this way it can be used in any HP notebook in any OS.

However if you are like me then another stumbling block will be in your way: Kill switch. HP nx6110 has a switch in BIOS that permanently switches off miniPCI WiFi. The drives sees that as hardware kill switch. And of course I had to spend an hour until I figured that I had disabled that option in the BIOS “to save a bit of power” several months ago.

To gain some extra geekness points you should also download and compile the newest versions of ieee80211 and ipw2200 driver with the newest firmware, but remember that you will need to erase the modules that you built from your kernel tree and also comment out some options in few kernel config files. The installation docs of ipw2200 have all the details on that. And also do not forget to get a newer version of the firmware to go with those drivers.

After I had done all those manipulations and also enabled ipw2200 drivers led option I gained fully functional WiFi card with fully functional LED indication and working software kill switch - I press the WiFi button and the radio goes off (along with the indicator LED), I press it again and the LED starts blinking and when the card associates with an access point the LED lights up fully in its great wireless glory.

If your IPW2200 minPCI card still does not work, then check again if you have the firmware in place and then see what “dmesg” says to you after you tried to load the drivers.

HP, this is really not nice at all!

Popularity: 64% [?]


Happy + sad + hectic all in one day

Today is shaping up to be a very strange day indeed:

1. Today is my 23rd birthday and still I have no celebration planned as of now. Update: well now three separate parties that combine my bithday and my farewell parties together are planed all over this weekend. Fun.

2. Today my father had a surgery planned - he was diagnosed with cancer last week. Update: Today it became clear that it is incurable and that he only has a year or two left to live. Very sad and depressing. I am not good with those feelings - I tend to almost not feel them while it is processing in the back of my head. Then after a few weeks it hits me like a sledgehammer and in a day I am back to life again. Sad and strange. I wish he lives at least until I come back from UK.

3. And I have a list of 20+ things to do before moving to Cranfield, UK from which I hope to have 3-4 of those tasks completed today. On of those is buying a 160Gb hard drive for an USB enclusure I have to provide me some space for my data and photos in UK and a miniPCI Intel PRO/Wireless 2200 card so that I finally can use my notebooks wireless capabilities as they were ment to be used. Update: no such things in store - come tomorrow.

Hell of a day.

Popularity: 30% [?]


120 rants (2006.03.12+2006.03.19)

Two 60 minutes rants rolled into one post, what could be better then that?


Tal Afar - the worst place to live in Iraq for the last 3 years

http://www.cbsnews.com/stories/2006/03/10/60minutes/main1389390.shtml

Tal Afar is the town in Iraq that was the homebase for Al Qaeda for a long time. USA army had captured the town before, but could not hold it for long before Al Qaeda returned. And then after another year USA had to capture the town again fighting for every house. But the best part was that when they were ready to make the final blow and take out all the militants that were surrounded in the center of the town, an order came to hold the attack for several days. After those days passed the troops proceeded and only found one dead body and no militants - they all escaped.

In my mind the military did all what they were supposed to do quite nicely, but the politicians of the Bush administration interfered and gave the terrorists the time to escape. It almost looks like they did that on purpose. You have to admit that if one assumes that Bush has some good childhood friends among the organizers of Al Qaeda, then a lot of his and his administrations actions suddenly start to make much more sense.

It also looked like the military did well to secure that town now, but the amount of troops needed for that is mind numbing - to secure a single town of 200k people the military is forced to deploy there permanently both USA 3rd Armored Cavalry Regiment (5000 solders, 320 tanks, 80 aircraft) and the Iraqi 3rd Division (3000+ solders). That is a lot of firepower just to insure peace. To cover the whole Iraq with that kind of protection more then 1′150′000 troops would be needed. Currently USA is about one million troops short on that.

I am happy about people living in Tal Afar, but really with this tiny number of troops there, there is not much of a security - Al Qaeda can easily move to another place and continue where they left off.

Back to homosexuality studies

http://www.cbsnews.com/stories/2006/03/09/60minutes/main1385230_page3.shtml

A bunch of interesting studies on homosexuality was presented in this segment: identical twins where one is homosexual and the other is strait, twin boys where one boy was clearly feminine and the other was clearly masculine at 18 months already, studies that show that homosexual people move quite differently from strait people of the same sex, hormone injections at birth making male mice behave like a female. And the most surprising of them all - the more older brothers a boy has, the bigger is his chance of being homosexual, but only if the boy is right-handed. And the numbers are statistically significant. Now that is one really fun field to study :)

Some time ago I did a post about what I think about homosexuality. These studies clearly show that it is not genetic, but more of hormonal nature. My understanding now is that there are many separate parts of the human body that develop at different times during the development of the child (mostly before birth) and that level of several hormones, mostly testosterone, could cause a probability on which way do those body parts develop - feminine or masculine. Some of those parts are parts of brain and then this twist in the early brain development is what determines what kind of interests and behavior will a person have.

We have two words to describe persons physiological gender - “male” and “female”, but do not have good words to describe a persons psychological gender or the combination of two. As I have said in my post before, I think we should simply move to a system with four genders - that will solve most of our problems with this issue.

Henchman confesses

http://www.cbsnews.com/stories/2006/03/09/60minutes/main1386966.shtml

The right hand man of the second most wanted man in the USA (after Usama) was talking about what he and his boss have done in their lives. The man himself was already trialed and after making a deal with the prosecution has already done the 7 years he was sentenced to and now can freely talk about his past.

I really was not too trilled about the story - I have no feeling to the mob. In fact for me a mob is almost like a product of a Hollywood directors mind - I have never seen a mobster or have been influenced by them in any way. There is no real mobs in Latvia - a few single gangsters or rappers and a bunch of “grown up” pseido-mobsters in politics. Basically in Latvia organized crime is organized in such way that people do not get affected by it - they do not do drugs or extortion.

Andy about Oscars dress code

http://www.cbsnews.com/stories/2006/03/09/60minutes/rooney/main1386880.shtml

Andy reflected on Oscars, who won, who lost and who got the lowest-cut dress.

I talked about Oscars before, but to extend about the dresses I agree with Andy that men should dress up in fancy and strange wear for the Oscars just like the women do, otherwise there is not much eye candy for all those cowboys out there ;)

Note: Mike we will miss you.

Extending family via sperm donor link

http://www.cbsnews.com/stories/2006/03/17/60minutes/main1414965.shtml

The story mainly is about a website http://donorsiblingregistry.com/ - a kind of a matchmaking website where children that are born via sperm donations could find their half-sisters, half-brothers and sometimes even meet their own biological fathers. The whole process is voluntary for all participants and is basically a string matching exercise. For some sperm donor codes up to 20 children have been registered.

I think this is a very interesting way how people can forge new family relationships and extend their understanding of family further. I think that is quite wonderful - imagine that you know that you have a lot of relatives all across the world. It would help more cross-cultural understanding and it will definitely calm people down a lot.

Rewriting the science

http://www.cbsnews.com/stories/2006/03/17/60minutes/main1415985.shtml

Now this story got my full attention, because it is just horrible misconduct by the current USA administration for which we all will be paying in a short while. The story basically is that every scientist that is involved in weather studies must pass his/her press releases trough an approval in the White House and the “approval” is made by a former lobby to the oil industry who blatantly rewrites the reports to either play down or simply remove any reference to global warming an predictions of its cause, magnitude or probable effects.

When there is a lawyer in the Washington that can with a wide strike of his pen strike out findings of most respected scientists of the field and scribble “inconclusive speculation” instead, you know something is very deeply wrong with the science in the USA. Also the same administration simply denies interview requests with the scientist offering their own trained PR people instead. Since when people have to ask permission to the White House before taking an interview from a scientist??? I would believe that being the case in Soviet Russia, but in the USA ?!?!

The Americans must have lost their minds - a couple decades ago there would be nation wide strikes and million people protests just for that. Now it is enough for president to say that it is unpatriotic to be against the president and everyone suddenly comply. That is worse then Soviet Russia. This is voluntary.

Note: the scientist also stated that if we do not start stopping global warming in next ten years, it will become unstoppable. I personally think that he is being optimistic there.

Anti-terror terror in NY

http://www.cbsnews.com/stories/2006/03/17/60minutes/main1416824.shtml

After 9/11 the New York police department expanded rapidly and formed a special anti-terrorism unit doing tasks that FBI and CIA are supposed to do. Every day random police drills are conducted across NY. Every day all the potential bombing hot spots are checked for explosives. Helicopters monitor the territory for unusual activity. Shopkeepers have manuals on what to watch for and where to report what they saw. Blogs are mined for data and every detail of any foreign bombing is analyzed to find new ways how terrorists could attack NY. Billions of dollars are spent on making NY safer.

I will not argue with the fact that there have not been any new successful attacks on New York or that some terrorism plots were intercepted in progress by the NYPD. What I do want to say is what exactly happens with people that are protected so closely? Doesn’t the constant proactive anti-terrorism defense terrorize everyone that it is supposed to protect? There is this phrase - “Global Terror”. I think it is very correct, but not in the way it intended - what we actually have is a terror all around us, people being in terror - afraid of terrorism attacks. And the governments just fuel this flame of terror because it makes them look good - you need authority to fight terrorism. The USA has spent on war in Iraq 20 times more then it would take to end world hunger. Apparently securing some oil and showing off their anti-terrorism skilz is more important then world hunger.

I am not saying that NYPD is doing something wrong - they are doing as good as they can without relying on the help from the federal government. The federal government of the USA however it the one being fatally inefficient.

Lottery winners vs. losers

http://www.cbsnews.com/stories/2006/03/16/60minutes/rooney/main1412330.shtml

Andy raises a nice point this week - a lot of poor people spend lots of their money on government lotteries. Rich people do not play lotteries. So basically a lottery is a way to get a lots of money from the poor people to the organizers and a few of the participants. People are stupid. But it is not governments job to cash in on that.

That’s all folks! What do you think? What else do you want me to rant about? Leave a comment to let me know!

Popularity: 17% [?]


Mustache gone, really, really now.

After one of the comments to the Ted’s interview I made a final decision - no more mustache for me. I have head this from my girlfriend. I have heard it from my mom. I have heard it from a random girl on a first date (and last) date. I have even heard it from a hairdresser. But nothing prepared me to the shock of being compared to this!

It is all over - the mustache is gone. Updated blog photo and hackergotchi are coming soon.

Popularity: 16% [?]


Moving to UK

After less then a month of talks I have been awarded a studentship in Cranfield University, UK. I will spend one year starting on using AI and genetic programming to solve the issue of “Automated evolution of textual adverts” as my Masters in Research. The studies will start on 10th of April, so the next three weeks I will be spending in a constant state of accelerated bewilderment as I will be running around arranging all the things that I will need to take with me and all the paperwork that I will have to do before going off to Cranfield.

Wish me luck.

Note: I am still coming to Debconf6!

Popularity: 17% [?]


Want less flame? Write less of it.

If you really want to send an heated email or write a flaming comment or a blog post about an issue that is important to you, just write it, but do not send it. Do something else. Come back after 3-4 hours. Reread what you have written. Erase the post. If you still feel that you must say something about it, then write something new, wait an hour, reread and send it, but only if you are 100% happy with it. That should decrease the flamingness of the message considerably.


I had to do just that yesterday when several people reacted quite harshly to my blog post about a Flash app with breast animation. It’s not like there is something wrong in womens breasts and it’s not like I put the picture in my post - I only posted a link. I also gave a very detailed description of what exactly was at the end of that link. One would also had to navigate a few menus to get to the breasts themselves. So it is not like I pushed it into readers face. You had to want to see that to get it. And in fact, I was adoring the wireframe that they used to get the video simulation much more then the finished textured version.

I do not like the trend that Debian is shifting to the American Way &tm; in tolerance - intolerating the people you think are intolerant. That is so like the USA fighting terrorism by terrorizing anyone who looks like terrorist to them or could be helping them. That is not the right way! If you want to promote tolerance, be tolerant yourself - don’t troll the troll, also do not just ignore the troll - listen to the troll and try to understand what his actual point is, without flaming back about how his personal opinions are intolerant. Even a troll has a point! Most probably you just missed it obsessing about something else he said.

Popularity: 20% [?]


Bounce-O-Meter

This link is mostly for women doing some sports - you like when you are doing some sports activity and sometimes breasts get in the way of your performance? So this website features a Flash application that lets you choose you cup size, type of activity you plan to do and then shows what type of sports bra you should use for that. There will also be a realistic visualization of how that sports bra will perform, how a regular bra would perform and how it would look to do that au-naturel.

http://www.shockabsorber.co.uk/bounceometer/shock.html

Note: The link is NOT work safe!

P.S. Guys that love Baywatch should also check out that link too. You will not be disappointed ;)

P.P.S. Geeks should check out the wireframe mode :D

Popularity: 28% [?]


ReadThemAll GPL book reader for Palm

Many people complain that it is hard for them to read ebooks. The thing is you simply have not seen the best way to do that. The right hardware and software. The right hardware for most people is a Palm. Palms are great organizers and generally a very good portable computing device with nice battery life and good screens. The right software to read ebooks in Palm is the GPL ReadThemAll.

The killer feature is the “spotlight” autoscroll. The idea is simple - you open a document, a screenfull of text is shown, you press down and start reading, as you read the lines at the top of the page start becoming transparent - they fade out, when you have read ’till the end of the screen the fadeout has propagated down to ~middle of the screen and on the top the text from the new page is fading in, so when you have read the last line on the screen you just raise you eyes and start reading from the top again and the new page is already there. The text only fades in and out, it does not move around the screen. Works like magic.

You can press up to stop the scrolling. If you press down when the scrolling is active, it will speed up. If you press up when the scrolling is not active it will reduce the scrolling speed.

It also has the normal page-by-page mode, remembers your place in books, reads the normal Palm document files (utf8) and allows adjusting the font.

Wonderful piece of software, I read a couple books a month with it and my Palm Treo 600. It has actually become my catch all activity - if I have nothing else to do for even 5 minutes, I take out my Treo and continue reading my book. (P.S. Discworld rules!)

Popularity: 23% [?]