Showing posts from 2009

Happy New Year and other stuff

This year has been an exciting one on the technology side but it is been a crappy year for most economies of the world. I keep my fingers crossed for a better 2010 on all fronts.
As you can see in the picture of the right, the Kindle DX has an annoying "feature" of showing the full media box of PDF files instead of the crop box. That means you have to recreate the PDF file if you want to get rid of these elements only useful for the print house. The problem they create is that some of the screen real state is wasted on them, making the rest of the page smaller.
My verdict about Kindle DX screen size is that it is too small for viewing A4 or US letter PDF documents comfortably but most PDF formatted books will be ok tough.
January issue of Circuit Cellar magazine will carry an article I authored. It is an Arduino-based project for a three axis stepper motor PC interface. Please note simultaneous use of several axis was not desired nor implemented. Popular stepper motor driving…


Latest development system for Texas Instruments "wireless" micro-controller comes in the form of a watch. Yes, a regular watch that can track several variables besides the time passing.
Besides the watch, the kit includes an USB RF interface and a USB emulator for software debugging. The watch itself includes a 3-axis accelerometer together with temperature, pressure and battery-level measurements.
At $49 it is a steal. No wonder they are out of stock. There is a wiki too.

Ultrasound ranging on Arduino

I've recently bought a sonar circuit for distance and temperature measurements. Actually you need to know the temperature if you want to get an accurate distance measurement as it affects sound's propagation speed.

Less than $20 shipped, the URM37 unit is compact and full of interesting features: It has a dual interface as it can use RS-232 levels or TTL levels. Be careful because it defaults to RS-232 and these voltage levels can damage many 5V devices, including Arduino inputs.
It has several operating modes but I've used the serial interface. URM37 library comes with a modified software serial port library that allows you not to use any two available digital pins to interface with the sensor. This way arduino hardware serial port is free to be used for code uploading.
Another cool feature of the sensor is that it can control a RC servo so you can mount the sensor in a mobile platform to get the distance measurement at different angles.

Excellence in Teaching award

I've been granted an Excellence in Teaching award from the local government. Among other things lecturing in English (or other foreign languages) and having high-marks on student surveys of teaching were topics assessed.

Now it is time to look around and thank all the people that made this possible: from my colleagues who share an interest on teaching to my students who keep on asking questions. From all of them I learn a lot every day.

I'm also grateful for my University and government that through various programs have supported different visits and stays at foreign universities.

And last, but not least, to my dear family and friends who have always been there for me.

For all of these I'm grateful.

Enable USB Networking on Kindle DX

The first thing is why in hell you may want to do this? Or even what the hell is this usb networking thing?

The thing is that those who are outside of coverage of Whispernet wireless network cannot get some of the Kindle features to work. But even if you enable usb networking you are not getting back 100% of the functionality. Let me tell you some of the things I've learned:

Apparently Amazon will send you a client digital certificate to your Kindle through Whispernet (and only that way), so future orders from you Kindle can be properly authenticated as yours (so you cannot refuse payment I guess, among other things). That means that even if you get your Kindle to access the Internet (ie enabling USB networking) you won't be able to register it to your account (though no error message is presented to the user).

So what USB networking can serve for? Well, enabling USB networking allows you to connect to the Kindle as a network device and to access its Linux system for doing change…

Got Kindle!

Though it's been one of the most difficult items to buy, I finally manage to get my Kindle DX. In a previous post I detailed the different failed attempts, but finally at the third one I've got my Kindle DX delivered.
Incidentally I discovered that my first buy from Amazon was stolen and being already used in USA. How did I learn that? Easier than you may think: When you buy a Kindle form Amazon (unless it is a gift for another person) it is registered automatically to you account. Next you can manage your Kindle from Amazon's website. One of the things you can do is to check the status of the documents that have been delivered through Whispernet and those that are still pending.
There is a default "Thank you letter" that is delivered to each customer. As Amazon sent me two Kindles (first shipment was lost, replacement shipment arrived) I had got two Kindles registered on my account. Each one had different email address and to my surprise I could see that that the…

Postgresql UTF-8 weirdness

I was recently moving data from a Postgresql version 8.0 database to a 8.4 on a new server. The database dump was made on a UTF-8 system and it was moved to another system using the same encoding. However I was getting some errors when trying to recover the data. Several encoding errors where poping out. A closer inspection revealed that those were indeed a few encoding-rule violations. For some odd reason some data fields ended up with bad data, some double-byte characters had the first byte missing (it was 0xc2 in my case).

I solved the problem creating a small filter program to add the missing byte of these characters from the database dump. Not very nice but it worked. Why the problem developed in the first place I do not know.

#include <stdio.h>

main() {
int a,c;
while((c=getchar())!= EOF)
if(c>0xe0) continue;
if(c>0xc0) {
if(a>0x7f) putchar(c); putchar(a);
} else if(c<=0x7f) putchar(c);

Patience may be rewarded

From Wikipedia: Patience is the state of endurance under difficult circumstances, which can mean persevering in the face of delay or provocation without becoming annoyed or upset; or exhibiting forbearance when under strain, especially when faced with longer-term difficulties.

When the delivery deadline was reached without getting my Kindle DX I was told to call Kindle Customer Support. Though I've insisted I was abroad I was given no other option that to get a refund.
Three calls later, and three extra waiting days, I was "rewarded" by a new shipment, this time One-Day Shipping at no extra cost from Amazon. I still do not want to start dancing till I get it home. However I hope this time delivery will happen (if not, I will find out quickly).
I am really happy I could use Skype to call Kindle Customer Support 800 line. If not it would have become an expensive enterprise as it took me more than half an hour at the phone to get this result. In fact, last Friday I was told…

How not to get a Kindle DX

Apparently I'm out of luck. Last Nov 8th I ordered a Kindle DX from one Amazon's associate. It was shipped Nov 10th and that's all I know since. As the estimated delivery date passed a few days ago I contacted customer service and I was asked to wait a few more days and then to claim for a refund.

As this is my second unsuccessful attempt of buying a Kindle DX, though I have not yet got the refund of my first attempt (still sitting there on my PayPal account) I reckon there is not going to be a third attempt. Whether there is some black magic involved or not I do not know. When I tasked myself with buying a Kindle DX I was not aware it would be so difficult.

Last time I could blame eBay seller, but this time I was buying from an Amazon associate (Warehouse Deals). I'm not buying a DR1000S as battery issues render it almost useless. Something that for a device costing double than a Kindle DX I cannot accept. So maybe I'll wait to see what Plastic Logic delivers in Jan…

Fighting with shady eBay sellers

I'm disappointed Amazon is not yet offering an International version of Kindle DX. I'm disappointed Plastic Logic is not delivering a product, just the name (QUE) is not enough to me. So I decided to get a U.S. Kindle DX and, as Amazon is not selling it overseas I thought eBay was a good place to get one.

After a few days I saw that, from time to time, some sellers offered refurbished units. I read good comments on and about refurbished units (i.e. look brand new, 18% off) for $399 so I was sold.

I bought one DX from a seller named iRebates after contacting with a previous buyer who have had a good experience and was based in Spain too. That seller had a good reputation with more than three thousand successful transactions. It all looked ok. So I shelled out the dough and sat down and waited. And then waited a bit more and essentially nothing else happened. Three days later I asked the seller about my shipment. I was told it had not happe…

27" iMac itch

It's been reported that many geeks are developing a kind of itch associated with visits to the Apple store. Unfortunately I went to a local dealer last week and I've catch it. The only cure I've found is to just go and buy a new 27" iMac.

While the display is awesome (I've got 17" before), I'm quite impressed with the new mouse. I really like it. If mouse battery usage is ok or not I can't tell yet.

Display works great even angled. Sound is ok. Desktop is tidier now. Only doubt is USB access, as being in the back I have a difficult access to it (but I might be moving to SD format instead for easier access to the slot).

I just hope I won't be reporting soon any trouble the system is giving me (as it has happened to me in the past).

Please remember I've warned you: Do not get close to an Apple shop!

Update: I have had this problem with my MBP before and it is one annoying error when using the shell in Snow Leopard. Every type your write a pipe, you …

Merging PDF files

I do love Inkscape program. However, there is one thing it is still missing (it's not the program's fault though), the ability to handle more than one page documents. I recently was producing some drawings at work and I wanted to make a single document package with all the drawings to be emailed to my colleagues.

As I can produce PDF output from Inkscape, I searched for easy ways to merge several PDF files. I do know Adobe's Acrobat can do that, but I was looking for a cheaper alternative. I learned that you can use command-line ghostscript to get this done (provided you have it installed) easily.

gs -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=outfile.pdf inputfile1.pdf ... inputfileN.pdf

I learned too that it can be done online, in fact there are several sites (mergepdf, joinpdf) you can use.

Though there are certain limitations (encrypted PDF files are a no go), it seems I no longer have to worry about creating multipage PDF easily (of course it will be …

From VMware Server to ESXi

One of the cool features about some VMware products is that they are free. Both VMware Server and ESXi are free virtualization platforms. The main difference is that while VMware server is running on top of your computer operating system, ESXi is a thin software layer running over your hardware. That saves important resources that can be better used by the virtual machines you want to run on top. ESXi only uses 32MB of RAM. You can watch this presentation about ESXi. The main problem I've got at the moment to get ESXi tested is that I need to buy a SATA disk as PATA is not supported.

Kindle outside of U.S.

I've just read today on website a Jeff Bezos letter announcing the availability of Kindle for customers outside U.S. Of course this also means that wireless access is going to work in your country.

I'd be buying one now if DX was available. Unfortunately only 6" Kindle is offered at the moment. However I guess they will be adding DX soon.

Update: There are a few things that do not add up well. Kindles are only sold from U.S. at the moment. That means you have to pay customs, plus overseas shipping plus an slightly more expensive version of Kindle.

Another source of trouble is that Wireless acccess to Wikipedia from Kindle International has "experimental" status, whatever that means. It is not so with US Kindle. And to me, wireless free access to Wikipedia is well worth a price premium. But ... if Wikipedia access is dropped then I do not see enough value on the wireless delivery of paid content.


There are many ways to measure the "output" of a researcher. It is likely there are many ways to measure it because none of them is right for all the cases. While many consider citations of a paper as some type of endorsement of other person's work, there many ways to turn that into numbers.

And we want numbers so we can compare performance easily. I was asked the other day to provide my H-index. Problem was I have never heard about it before (only my fault). Just a wikipedia query later it turned out the idea was quite simple. H-index was proposed by Jorge E. Hirsch from UCSD and it is sometimes called Hirsch index or Hirsch number too.

This is how it is obtained: Take your publications list and sort it by the number of citations. Now start counting papers from the top (most cited paper) and continue down till the number of citations is lower than the count of papers. The current count (or one less) is your H-index.

So an H-index of, let's say, ten means that person ha…

VirtualBox on Snow Leopard

I've heard some news about troubles with VirtualBox when running on Snow Leopard. It was too late for me as I've just upgraded a couple of my systems. So I installed VirtualBox and I created a sample Ubuntu 9.04 system from scratch. Everything ran smoothly. Network and USB access worked as expected too. I have no idea if there is trouble running a VM you created before upgrading to Snow as I have none.

I used to be a fan of VMware's free VMplayer. Unfortunately there seems there is not a free version OS X. VirtualBox appears to do a nice job too. There is a quirk though, USB devices need to be registered to be used by the VM before you turn it on.

Dude, where is my C.a.R. ?

While reviewing some of the answers to one of the questions of Code Jam Round 1C, I've learned about this cool software. It can be run using Java Web Start, so you don't even need to install it. What is it about? I reckon it will make some Math teachers very very happy. In short, it is a drawing tool for geometry-oriented drawings. It can export to SVG or EPS too. Mastering on the use of the program may take a while, but I see lots of potential on this tool.

Could not make it to the second round

I've failed to make it to round 2 of Code Jam 2009 last weekend.

I failed on getting the first problem (All your bases) right and that ate most of my available time. I was able to get the third one (Bribe the prisoners) right (bruteforcing it, not very elegant).

So I used some time to get the first problem right after the contest :-)

By the way, I later learned that there was a hidden constraint, as output value could not be larger than 10^18. That meant that maximum base could be 16 (as 1023456789abcdefg is base-17 is larger than that, 49030176097150555672 in case you're wondering).

Here you have a simple solution in Java. And, yes, you can use Long.toString(String,int) instead of BigInteger, though the latter will cover a wider range than the problem statement requirements.

X11 on Snow Leopard

A few days ago I've got a shiny new MacBook Pro. Instead of coming with Snow Leopard installed, I've got a rebate on the price for the cost of the update to SL. I've installed Snow Leopard now but the disc does not contain a version of X11. As GIMP and Inkscape software depend on that I'm searching for the right version to install. I could use some help if you already know where to pull it from.

Update: I'm happily running the GIMP on Snow Leopard. Contrary to my claim above, X11 is included on Snow Leopard, you'll find it in the Applications part of the optional install package.

SSH into my e-book reader?

Yep, it does sound odd, so a bit of an explanation may be welcome: I've bought me an electronic book reader a while ago (a Papyre 6.1 from Grammata). It is the same device as the Hanlin v3, Bebook, LBook and many other brand names given by sellers on different countries.

The reading experience has been quite good. Actually it's been better than I expected. However, every now and then, like Windows 98, the system would refuse to turn page and freeze. After a few seconds [I suspect] the built-in watchdog timer quicks in and reboots the system. Total time is less than 30 seconds but the worst part is that you've lost the book page you were in.

After checking severalforums where many users complain about the same thing but no real solution was offered, I learned that an "alternative" firmware was available for a wide range of devices, including mine. Even better, there was a live version you could try before flashing it on your device. Who could ask for more?

This fir…

Code Jam 2009

I've just passed the qualification round of Code Jam with the feeling that I'm getting dumber every year. I only passed the first problem (Alien) and I've got stuck on the second problem (Water Basins). Third one (Welcome string) looked like the Speed Limit problem on 2008, but I did not attempt to do it.

A plausible excuse is that I did not have the time ... Yes, I like that: I was busy working so I did not have time to waste playing this Code Jam thing.

BTW, It was me the guy who asked about the error message on the Q&A. The error message said my solution file did not start with the string "Case #1:" but that was not true. The correct error message should have been that my solution file did not start with the string "Case #1: ". The difference being the space after the colon.

Update:Here you have the three problems solved in Java.

Gmail down

A the moment of writing this, Gmail is giving the usual Server Error message you get when things go wrong. I hope the problem will be fixed soon. I've learned that Twiter can be useful whenever this happens. You can check by yourself with this query.

There is also a reporting tool from Google that can come in handy.

Gmail's new feature

As a Gmail user I've sometimes trouble with certain email alias unhappy of me sending from an SMTP server outside of our campus network. Another source of weirdness is the fact that while the From: field shows what I want, there is also a, sometimes not hidden, "On behalf of" that is broadcasting my gmail account even when I'm not interested on doing so.

It's great that Gmail has added a new feature that allows Gmail servers to use your organization SMTP server as the outgoing SMTP server for your corporate email address.

The two above mentioned problems are fixed then: You can send to email alias only intended for local users just right from Gmail (no nasty Outlook anymore, thanks). And secondly, there is only now the right From: mailbox.


Technological jumps

From time to time we witness significant changes on how things are done. In terms of how we listen to music in the last ten years I've seen several interesting changes.

Ten years ago I bought my wife her first MP3 player: It was Diamond Multimedia with 32 MB (yes, Megabytes) that could hold a couple CDs of 128kbps MP3 music. Since then on I've bought many other MP3 devices for my household. However, that marked the end of traditional media (CD-audio) for our portable uses.

While MP3 players have been around for quite a while, it seems that Apple's iPod is now the king. And while kingdoms do not last long in this market I guess Apple has done something right.

Many people (like myself) are device-centric. For quite a while I favored Creative players and while I've never bought music from iTunes, I've bought some software there. Meanwhile I've stopped buying from Creative after problems with several players.

And now that I have time I've played a bit with another …

Visit Norway

It's been hectic times around here, mostly due to different changes at my workplace. Now it's time to start thinking on having some vacation. A summer trip seems a good idea but this year I've selected Norway: beautiful but expensive.

While there are tons of information on-line, I have found details are a bit sketchy. This is likely due to the fact I'm interested on cheap accommodation. Maybe the average wages in Norway are much higher than in my home country, Spain.

I've got some trouble getting things done online. There seems to be some odd behavior and this booking website, when browsed with Firefox on Ubuntu 8.04. The worst thing is that it was this the browser I was using when booking my flight with and I was offered a very competitive car-rental price at the end of the airplane booking process.

Unfortunately when trying to go to book the car I was offered an almost empty page. I was wrong when I thought I could go back to the former page too. So I …

iPhoto Books: be warned!

No, I'm not going to complain about the output quality (at least not yet as I'm still waiting for my order).

What I want to complain about is the fact that your iPhoto Book orders do not show up on your Apple Store account. And apparently this oddity has been happening for quite a while.

That means that there is no way for you to know about your order status. Of course there is a confirmation email sent to your Apple ID email but, what if your .mac account has expired? (then you no longer have access to that email).

To make things worse, once 1-click order has been activated iPhoto will not ask you for an additional confirmation when issuing a new order (I guess that's the 1-click beauty once your Apple ID email account works nicely).

Calling customer service did not help much, as I was assured my credit card was not billed and somehow I had no pending orders. Calling my bank gave me another version: My credit card was billed (and apparently my order was taking longer than exp…

E-ink experience

Not yet very affordable, but better than I expected. This is my opinion after buying an ebook reader. Mine is branded Papyre 6.1 but it's named Hanlin v3 in other countries. It's manufactured in China (what a surprise!) and it runs Linux (it has an ARM processor).

Definitely worth watching at. However I have not used it for more than a few minutes so I do not have an opinion about the long term usefulness of the device. But if it delivers what I've seen in the tests it is more than worth it.

Now I'm sorry but I'm back to reading, please do not disturb.


The reading experience has been better than expected. And the availability of contents has also been better than expected.

What I have not find, however, is a shop with the latest books. But that only meant some books cannot be bought but they might be available somewhere ...

For example, I was reading a paper copy of this book in Spanish. And I had no trouble finding an electronic version.

There is a cheaper electr…

Online network doctor

Years ago, in a distant galaxy, I was a member of ICSI. Now I've been surprised about one their offerings to the community: A network analyzer. It's Java-based so it won't work unless you have Java support in your browser and you're happy running digitally signed code.
You may learn a couple of things about your network connection.

Yann Arthus-Bertrand's HOME

A succession of breathtaking sequences shot from the air is the newest release by this widely awarded photographer. It's really worth watching.

You can get the movie for free! Movie is available in theaters all over the world (but apparently not in USA) and also in YouTube in HD. Although the beauty of the images might be better enjoyed on the big screen, you can have a look at it on-line.

What amazes me is that it is the creators of the movie who decided to release it on YouTube at the same time than in theaters. The release details were given on a press conference.

The movie has been sponsored by PPR, a French multinational in the fashion business.

Two useful additions to your Iomega Screenplay pro HD

I've found the network transfers to take forever on this device. Between 1 and 2 Mbytes/second is really slow by todays standards. It means around 4GB per hour.

I'm happy with the torrent download functionality I mentioned on a previous entry but there is a catch: What if your download contains a sequence of RAR files? Yep, it happened to me with a 16GB download. Moving this back and forth to a PC would took more than 8 hours!!

So the obvious idea is ... why not to have unrar command on the SPP? And this is what I did. I looked for the source code, and using a buildroot ext2 image file I compiled unrar command. Now I can telnet to my box and launch it without the need of moving files back and forth. It's not lightspeed but it's minutes instead of hours.

The other improvement was to add SSH functionality by borrowing dropbear binary from OpenWRT project. Please have a look at dropbear documentation so you can install in properly on your system (a few files and links need t…

Trouble is not only on the digital side

My old analog camera is also giving me trouble. The symptom was that many pictures had just a small fraction of the total field. This can happen when shooting with flash if the sync speed is not correct (flash fires when shutter is half-open only). However this time I was shooting outdoors without a flash.

After a few iterations with Google led my to a photo on Wikipedia with exactly the same type of residue I've found on my camera. A few more searches led me this article that explains the causes of the problem and a possible fix.

Aging and heat turn a piece of foam inside the camera guts into an oily tar that ruins the shutter operation. Did you think you can keep on using your old camera, maybe not if it as a twenty years old Canon EOS.

Digital pollen allergy

One of the bad things about DSLR (aka Digital Reflex) cameras is the tendency to get dust in the image sensor (as these cameras use removable lenses). Whether it is just dust or pollen it may eventually be shown in your photos (like the spot I show on the right: it is just blue sky).

For not so big spots, they may go easily undetected. If you want to check for dust in the sensor the simplest way seems to take a photo of the blue sky with the smallest aperture possible on your lens (F22 in my case).

Detecting the problem only serves to make you nervous, but fear not, it can be fixed. There are different ideas and people who would talk for or against any of them. I do not feel comfortable risking my camera sensor without reading quite a lot before doing one thing or another. Apparently there are several ideas that can help:
Air blower.Dry dust removers.Wet dust removers.Send the camera to the manufacturer for a professional cleaning of the sensor.The first three is something you can do if …

Buildroot: What for?

Programming when your target system is not based on x86 architecture and you use a PC for development can be done using a cross-compiler. There is a GNU cross-compiler for many different platforms.

What if you'd like to test the code without using the target system. There are good news too, as you can use qemu emulator to get a system with a non-x86 architecture emulated on your x86 system.

But you might want to get a development system running on your same target hardware. This is interesting if you have a way of accessing the target computer filesystem. It can also be interesting if you want to be able to fine tune the set of versions and libraries to be used by your development system. Here is when buildroot comes in handy.

Buildroot allows you to create a development environment for your embedded system around uClibc (which is a scaled-down version of glibc used for many Linux-based embedded systems). With this tool you select the architecture, kernel, compilers and libraries ver…

Remote control your computer

Some people are keen on the idea of using cellphones as a remote control. After all they are usually around, have a small size, a nice display and even some of them have an illuminated keyboard.

Among the choices for interfacing with another equipment, Bluetooth seems to best choice: more standard than infrared and lower power requirements than wifi (besides not many phones have IR or wifi).

Around this concept of using your Bluetooth cellphone as a remote was created AnyRemote project. I've tried lately for a home project and I'm very happy with this suite. Yes, it is actually a more complex system than I expected: You cellphone needs a special program to act as a remote, this program in written in Java and you need to download it to your phone. Then server software is installed in your computer and a set of configuration scripts tell your computer what to do when each key is pressed. On the other hand, user menu is provided on cellphone display (there is even a midnight comman…

Ambient Light Sensor problem

Hardly more than 90 days old, our MacBook 2.4 was already featured here as it has already caused me some trouble. Not a good thing I have to talk about it again: Yesterday it stated to make fan noise when idle, and the display backlight was changing for no apparent reason. After several unsuccessful attempts, I've found this article about resetting SMC as somewhere else I was suggested it might help.

Unfortunately though the SMC reset did help with the fan noise it left my system with no ambient light sensor. Whether it was related or not I do not know, but now I cannot use F5/F6 to change the keyboard backlit which remains off. I get a forbidden sign as if the ambient light was very high so as not to require any keyboard backlit. Unfortunately this seems not to be the case in my dark room and it still refuses to allow me to switch the backlit on.

The next exercise on the list was to perform a PRAM reset, that did not fix anything either. And, according to Apple support, the next st…

Iomega Screenplay Pro HD hacks

I was not sure what gift I would get for Father's day. A colleague of mine was very happy with his last gadget, a multimedia hard disk that could reproduce High Definition content from its 1TB disk and it could also record from a video input.

I already own one (older) version of that (Freecom Media Player) so I was not impressed with the idea, but my friend insisted I should try his unit at home.

I brought the system and I hooked it to TV. I tried some HD content I had around and I liked what I saw, so I was sold. I would be replacing my TV computer whose SAT receiver card is no longer in use as I switched to a cable provider years ago. Still that computer was serving me well, still with its original SUSE 8.2.

The Iomega unit does have HDMI, components and composite video outputs, plus an optical audio output. It has a host-mode USB socket that accepts external storage (i.e. another hard disk). It can also be connected to a computer by USB (a B-socket in this case) to be used as exte…

Electronic magazines "made it simple"

A few years ago I was excited when Zinio started (what was to me) a new business: Electronic magazines you can download and see them in your computer display. Zinio model required a DRM-ed software on your computer and Internet access to double-check the binary file you've stored in your computer was one you're entitled to see.

Platform-dependent and not so flexible made me walk away from Zinio. However, for a number of years I've been a paying subscriber of Circuit Cellar magazine whose model was, IMHO, simpler and better: a PDF file.

Today I've learned that this magazine (that sometimes has featured articles by me) is adding (not moving) a new flavor for their electronic version. One version powered by, that in essence is a Flash-based viewer similar to the one at Issuu. I guess that besides free content the company also manages users subscriptions.

By checking on-line I can see that now Zinio has also enabled a browser-based reader that does not require…


A recent project I'm working on needs to behave as a Modbus slave. Not that Modbus is a complex protocol, but it is always handy if you can save yourself the effort of doing your own implementation. After some trouble I've got FreeModbus library up and running.

While looking around I've also found some cool tools like modpoll that can allow you query a Modbus slave. And while I had some trouble with the Linux binary (libstdc++5 was missing), the Windows binary runs happily under wine too. Another great set of tools are these ones. You can even connect your Excel spreadsheet to values obtained from a remote slave!

It was fun to realize there is even a Modbus for Arduino implementation.

Tidying up your photo/songs collection

Over the years and hard disk changes and backups and new computers and OS installs I've got a pretty untidy photo collection, scattered across several disks.

I wanted to make a clean and tidy library on my main desktop using F-Spot. Unfortunately this program does not have yet a duplicate detection feature (it seems to be available in the latest version though). So I've ended up with many photos repeated on my new library after importing from different backup copies.

I thought I could do a simple script to find those files with matching md5sum, no matter the filename, so I could remove the photos that appear more than once. But I was glad to see that somebody did it first.

Of course the same idea could be applied to MP3 files or any other type of file. The only drawback, if you want to be picky, is that md5sum covers the whole data of a file, so a change in let's day EXIF data in a JPEG file will render the file as different even though it may contain a duplicate image. Same …

Slidecast = Slideshare + podcast

It's not new. It's not original but it seems to me the easiest way to put together some audio with a synchronized slideshow. I mentioned Slidesharethree years ago, but now I've learned they offer a cool on-line service (no software to install on your computer) to create synchronized-audio slides.

Vertical printing machineView more presentations from hj43us.

Spiro curves

I've never been a fan of Bézier curves, but sometimes they are useful. Maybe my main complaint is acknowledging the fact that I've been incapable of getting a curve just right on the first attempt in any vector editing software. Maybe it is just me. So when I saw that Inkscape was adding support for a new type of curve I have never heard of before I started to pay attention. Of course this is old news for some of you, but I've been busy with other things and I have not checked the development version of Inkscape for quite a while (maybe a sign that I'm quite happy with 0.46 version).

The thing is that Mr. Levien was smart enough to develop an alternative to Bezier curves and kind enough to grant a free license of his patented technology to GPL software. Thanks to this Inkscape can brag of supporting a new type of curve not available on commercial software like Illustrator. A library is available on Sourceforge too.

But it won't be fair to the effort of Inkscape devel…

2D barcode decoding

Barcodes have been growing to pack higher data density. 2D barcodes can pack more data than older 1D codes. Many cellphones can decode barcodes as the are equipped with a camera good enough for the task.

There is a cool project that offers code for doing that with a variety of phones, including iPhone and Android.

Unfortunately it does not seem to work with my Nokia E71 phone (it has to be some kind of curse, as the built-in barcode software that came with the phone does not work either).

However I still can use the phone to take a picture of the codes I'm interested on to have them decoded on-line. You can try this form to decode a file with a picture of a barcode.

An alternative to using the cellphone for decoding the barcodes on-line (that can be expensive depending on your data plan) is to download those images to your PC and to use a simple script to get them decoded. I used curl tool for doing that as it has HTTP POST capabilities. It worked great.

ICH9 sound problem on resume

Last summer I renewed my two main desktop computers. I was looking for something compact but easily upgradeable. Not very expensive and reliable. I've got good experiences in the past with ASUS barebones, so I went for this one. All but a small detail have worked like a charm since day one.

I was amazed to see see that even suspend worked nicely with Ubuntu 8.04. But then I realized the system sound was gone when waking up from suspend. And it seemed the only way to get it back was to reboot the system.

Several forums reported the possibility of adding some parameters to the sound driver module so it will reload appropriately when resuming. Unfortunately the two first hours of attempts were unsuccessful and I decided I could live without it. However, days later I've found another post where what it is suggested worked for me too:

add these lines to /etc/modprobe.d/alsa-base

options snd-hda-intel model=3stack-dig
options snd-hda-intel enable_msi=1
options snd-hda-intel single_cmd=1

MacBook Superdrive problem

We all love the MacBook at home. For a while we made no use of the built-in Superdrive.

However, I noticed that the rubber feet did not work well when I put the laptop on a table: It slided easily while used. I thought it was a poor-design detail, maybe it was not flat enough.

A few days after buying the laptop, early this year, I saw the advertising of the new iLife'09. I thought it might be included with my laptop but it was not. A couple of email messages from customer support did not much to enlighten me on how to get my copy for free. A friend of mine showed me I could be eligible for an upgrade for a small shipping fee and so I buy it.

Once I've got the iLife DVD is when the problem struck me hard: The MacBook refused consistently accepting the disc. I was not even sure whether another disc might be stuck inside or not. Several tricks to get system to eject the disc failed but I was almost sure the unit was empty. I thought it was a real shame that a brand new laptop was gi…

iLife'09: Really worth it

I've just got my upgrade from Apple. Although I bought a MacBook early this year it did come with iLife'08 software. After watching some of the features about the new version I asked Apple for my own copy, that was not free but around $10 of shipping cost.

Software install took a long time (more than 30 minutes) and iPhoto browsing more than ten thousand photos needed more than two hours. But after that it was really fun to use the new "Faces" feature. Though not perfect it does an Ok job of detecting people's faces on your photos.

On the musical side, the new GarageBand includes a cool feature with music lessons you can download (some are free and some are for a fee). If you have a MIDI/USB dongle you can attach a music keyboard (our cheap eBay dongle worked nicely).

iMovie seems to have some advantages too, but iPhoto and GarageBand new features made the switch for us really worth it, even if you have to pay the full price. I've found the new photo slideshows …

Avoid password after suspend on Ubuntu

As it use to happen, once you search the net for something you realize other people have done it before and hopefully have written about the solution to the same problem too. That has been the case when I was working about a way of suppressing a reasonable behavior of Ubuntu OS on my laptop: When it is wake up from suspend, the user is asked for the password. It is a well thought out security feature but it was annoying for me.

I use the laptop mostly while watching TV on my coach (ideal for skipping the ads). However I do not have a backlit keyboard (I envy my wife's MacBook which does). So typing a password with not much light in the room is error prone.

Fortunately it was easy once you find the way of changing the system configuration. Here it is.

Funnel IO

I've just learned of a very interesting sensor platform. It combines an Arduino, and Xbee wireless module and a Lithium polymer battery charger. Battery maybe recharged by USB. Standard Li-Po batteries are almost 1000mAh. It can also be wirelessly reprogrammed, which is cool.

Combined with power management it could achieve very long lifetime on a single charge.

On-line calculator

Sometimes you need a calculator to use in the classroom. Maybe you need to solve a 2nd degree equation or you need to know the binary representation of a decimal numbers. I'm sure you can do math, but I've found this online calculator very very useful.