Recently in personal Category

It's that time of year again: 27C3 was a blast, and here is a quick list of interesting lectures I managed to watch so far.

This is about a limit of video material I can watch in 4 days. I will probably update this post will more recommendations, as I go through rest of material.

One hint: in pre-release video material, so manual aspect ratio is required:

mplayer -aspect 16:9 http://27c3.hightech-lowlife.net/...

Update: links are now to official mirror in webm

Like every year, we had our local Linux conference. It was very intense event (for first year I'm involved in real organization) and I can say it's all just a big blurb.

I had two tutorials, one about my Virtual LDAP and another one about creating Google like (horizontally scalable) cluster from library building. In this one, I covered a whole bunch of tools which I ended up using during last year:

  • Webconverger is the easiest way to deploy Firefox on kiosks for public Internet access
  • PXElator - full stack solution to network booting and spawning machines
  • Sack - horizontally scalable (across cores or nodes) in-memory perl hash with remote code execution (close to data)
  • mongoDB which I use for audit log in PXElator and feed it back to Sack after finding CouchDB too slow.
  • Sysadmin Cookbook as a way to document HOWTO or SOP documents
  • bak-git for tracking configuration changes
  • Gearman and Narada didn't get all attention they deserved, partly because i wasn't able to make Narada work (I tried perl and php version in preparation for tutorial). But, I hope that I managed to transfer part of my fascination with distributed fork approach.

During the conference I wrote small project to index git log messages using Sphinx which might help you to get started with it.

It started as a battery problem. It reported 100% full status, but wouldn't turn laptop on. I went back to T-Com center and tried with another battery, but it didn't work either. Now it's back for repair.

I was wondering where huge savings for netbook class hardware comes from. Partly it's smaller display, older chipset, but partly it's integration testing. Nobody ever tried to discharge this battery within laptop and than charge it again in this laptop (except me). When you buy server, you know that it has passed burn-in period of at least 48 hours. When I install it, I always leave it on for 24 h before I begin to work on it. As it seems, this is also good idea for laptops.

Update: After a day, Ideapad S10-2 stopped working on batteries and is now back for repair. Last week, I had presentation about Virtual LDAP, and during it I become painfully aware that my current Eee PC 701 is no longer sufficient as primary mobile machine (three seconds to change slide is just too much). To make my troubles worse, I own three Eee PCs, and X200 tablet, so why would I need another ultra-mobile PC?

Well, because it is ultra-mobile. Don't get me wrong, X200 is beautiful machine, but with 9 cell battery (and with that price) it's just not something which you will carry always in your bag. I also really liked 9" netbooks form-factor. I don't mind small keyboard, because I want to be able to type on it holding netboot between my hands vertically!

So, I went in search for laptop which will fullfil following requirements:

  • Have 1024 horizontal resolution which is really required for Web
  • Have integrated 3G modem, so I don't have to carry dongle with me around and bluetooth (I need to use GPS or transfer pictures from cellphone)
  • Have internal flash
  • It has to pass my shoulder test: I have to be able to carry it around with me without noticing. 900 g Eee PC 701 passes, 1450 g OLPC doesn't.

So, how did I end up with Ideapad S10-S? I looked at Asus Eee PC 1005HA, but deciding factor was really keyboard layout. Let me introduce best keyboard layout I ever saw on small keyboards: ideapad-s10-2-keyboard-cursors.jpg

Display

I had to settle with 1024*600 vertical resolution, because it seems that this is only kind of 10" display available in Croatia within my price range. At least, it's a little better than 1024*540 that Ideapad S10 has... Built-in flash was also hard to find in netbook. There wasn't any.

Display is compromise: it's not as tall as your projected presentation (which will be 1024*768), so you won't see whole slide on your display, but other than that it's quite usable for web surfing and terminal usage. It's shiny, but I couldn't find any netbooks with non-glossy display. Bigger problem is maximum opening angle of display. I would love to be able to open it another 15 degrees or so. I'm not quite sure that there is structural reson for this limit, and 1005HA has exactly same angle, so it's conspiracy to force us into buying tablets which don't have this problem.

It's really shiny. So shiny in fact, that I had to use xgamma to get contrast high enough to be able to read Web pages with grayish text on them.

dpavlin@ipad:~$ xgamma -g 0.75,1
-> Red  1.000, Green  1.000, Blue  1.000
<- Red  0.750, Green  0.750, Blue  0.750

3G modem and bluetooth

Dongle is nice, integrated modem is even nicer. Ericsson F3507g has GPS built-in (think what this means for your privacy for a moment because it doesn't work without SIM card inserted, and GSM operators can inquire your position at any time without your knowledge).
Having said that 3G modem, GPS and bluetooth are available, so let's move on...

SSD storage

I made conscious decision that I want splash top built into my netbook. Not because it's really useful (it isn't really), but because I could re-install critical part of my extended system on it and really have *same* working configuration booting from flash. I don't have any idea about size of flash (I seem to remember reading that it's only 512Mb), and I don't have any access to it for now, so we count this one failure.

Shoulder test

I have only one day expirience, but It seems that 1220 g of Ideapad alone without power adapter passes. Battery lasted long enough for intense half-day usage (you know, new toy, click, click), so it will probably be OK for whole day without dragging power adapter everywhere.

I decided to install Ubuntu Netbook remix on it, to try out if I could recommend this to other netbook users. In it's current incarnation, I ended up with do-release-upgrade -d to get 2.6.32 kernel. I did try backports, and bcmwl-kernel-source before going to alpha version, in fact, I tried harder that most normal first-time users would to get wireless working under Linux.

Current development version of Ubuntu did enable wireless, but GUI launcher freezes sometimes, which makes it unusable at current moment for normal netbook users. But, next version of Ubuntu will work without a glitch on this netbook, and in my opinion is much better choice than Windows 7 on this machine. It will give users much more performance on same hardware. Yes, I tried Windows 7 which came with it, it took 15 seconds to open control panel and display 6 icons. Than I noticed it has a slowly moving progress bar on top, and I got used to seeing it often. I'm not impressed.

All in all, this netbook is great improvement if you need smallest possible machine which you can carry around with you.

Did you ever wanted to write following on bottom of e-mail confirmation page?

If you registered somebody else, that person will get e-mail and not you. Sorry, we are not telepathic yet :-)
Well, we'll just add e-mail address to page with confirmation request. That should be enough, right?

Let me first explain background to the story: you want a system to implement distributed printing. It has local accounts (it can fetch users from LDAP) and does routing of printed documents to printers which have card readers so that users can pick up printouts after they identify with a card.

Sounds complicated? O.K., let's consider that we have a system and we are trying to deploy it. At this point it doesn't metter did you already paid for it or if it's open or close source. Really.

2008-05-08_virtworkshop.jpg

You are trying to configure it. It's Java (because it's enterprise system) and it seems that most of things are configured using .ini files. After four weeks of trying to make it work, you have following facts:

  • configuration options are not used in all parts of system, for example some configuration options exists but aren't using all over the system (in this case, although there is objectclass for LDAP entries, and it's changed to HrEduPerson, system sometimes uses Person)
  • some configuration options have special limits within application logic: in our case, if we turn flag to disable negative credits on cards, system doesn't allow users to use system without 10 credits. This doesn't make sense, because there is administration interface for this option, and it shows 0.00
First, let me emphasize that this problem might be same for both types of software. Every software is reliable only in environment in which it's tested, and I know they very well from my experience with Open Source. However...

If system is closed product without source

You can exchange several e-mail with help-desk which is really first level customer support who is more or less working using cookbook. I have seen such help-desks at both previous jobs, so I don't really expect deep technical expertise about application. However, that resulted in painful try-and-error process because configuration options are somewhat cryptic and sparsely documented.

If system has source available

If I could look into source of application I could fix configuration option names. Or improve documentation. Probably even fix problems that I found and submit patch to improve upstream project (or pick another one because this one just isn't worth it).

So the real moral of this story is: closed source projects limits your flexibility. It will drain your time and bring you half-working solution without ability to fix it yourself. I really honestly cannot understand why someone would like to choose that.

Closed hardware - open source driver

I also have another example of company within same industry (printing) with closed hardware which at least got driver part right: Dualys has source code for CUPS driver. I still haven't found time to try it out, but I was afraid that making custom card printer will be more work than syncing closed source commercial application with LDAP, right?

Freedom as right of the user

Isn't it funny that Richard Stallman's Crusade for Free Software started with a printer?

Izgleda da me svake godine malo iznenadi, ali DORS/CLUC je i ove godine bio ponešto različit od prošle. Ako to moram svesti u jednu rečenicu: postoji određen broj ljudi u Hrvatskoj koji stvarno razumiju teme o kojima se priča na ovoj konferenciji. Jedini problem je da se zapravo svi slažemo, pa su diskusije možda premalo kritične :-)

Ove godine imali smo seriju zanimljivih lightning talk-ova od kojih sam ja održao Sve što ste htjeli znati o RFID-u a niste se usudili pitati... u 5 min.

Slijdeći dan sam pokušao zainteresirati publiku da oslobode neki komadić hardware-a. Ako vam je moje predavanje bilo zanimljivo, vjerojatno će Vam se svidjeti i predavanje sa ovogodišnjeg FOSDEM-a o tome kako je napisan Gnash (slobodan flash player).

I'm using Subversion for most of my work as all of you well know by now. All this hype about git persuaded me to give it another try. I don't really have anything to gain doing this, since I'm using svk when I need distributed VCS, but somehow I though that git might be right solution to keep all my system configuration so I can debootstrap system checkout configuration and I'm ready to go.

I could use etckeeper to do some of this stuff, but I really didn't want integration with apt. I just wanted single (network connected and backed up) place. I already tried this with git on single machine with local repository, and it worked pretty well.

This time I tried to use git branches to track different machines. I really want a single repository, so I can merge common changes all around. However, today I got this:

root@syslog:/# git push
Counting objects: 16, done.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (10/10), 1.16 KiB, done.
Total 10 (delta 0), reused 0 (delta 0)
To ssh://backup/srv/backup/
   66a2f9b..8f195f5  syslog -> syslog
 ! [rejected]        koha-dev -> koha-dev (non-fast forward)
 ! [rejected]        master -> master (non-fast forward)
error: failed to push some refs to 'ssh://backup/srv/backup/'
I have no idea why would two branches which have nothing to do with current one would disable distributed part of git. If you can't read git output, message above means that I wasn't able to commit my changes to central repository.

This is a huge show stopper for me. Half a day of googling didn't find answer for this particular git question. This makes my whole setup a big useless overhead.

This is all well and fun, but since this is second time that git ate my data I'm falling back to good old friend Subversion. At least, when in breaks, I have error messages which are somewhat useful, Subversion book which explains most operations with it (so I don't have to google for every little bit, like pushing single branch from one repository to another with git).

Don't get me wrong: git is c00l, we all know that, but it's just immature if you don't want to be git developer. If you think that I'm just old-timer which can't join all this new-age DVCS mumble-mumble, read why Google picked Mercurial instead of git as DVCS. Different story, but helpful to see that git isn't only solution to every problem

Now I just need to convert my existing git branches back into subversion. It seems that git-svn dcommit is answer, but how to really push four different git branches back into subversion I still don't know. I will probably just re-add all tracked files to clean Subversion and start all over again.

I opet... Nemirnog duha, takav kakav valjda jesam, odlučio sam se u ovoj recesiji (sic!) na promjenu posla. Nakon više od godinu dana u CARNet-u, odlučio sam se preći u novu knjižnicu Filozofskog fakulteta u Zagrebu na posao sistemskog knjižničara.

Zašto? Pogledajte video:

Trebam li još što reći? :-)

Proizvodnja: Klub Studenata Filozofskog Fakulteta, ožujak 2009.

I just read about LinuxDNA project to compile kernel with Intel's ICC compiler. For a start it's 2.6.22. So forget about recent hardware. Oh, did I mentioned that binary drivers don't work?

But, it has 40% speed improvement. I have said once or twice that Itanium never really worked with Linux because of poor gcc complier. I really hope to see end of x86 architecture it Itanium history has anything to teach us. :-)

Still reading?

O.K, let me elaborate a bit: 40% speed increase available only with propriatory compiler is just enough for me not to buy another x86 processor if I had any realistic alternative.

With low power AMD solutions like SheevaPlug and AMD netbooks this might be possible in future, but not right now.

What is my problem with ICC? Did you know that you have to change binary of ICC to make it support AMD processors? I did, although this page vanished from Internet.
Do you really want to compile your kernel with compiler like that?
If you are still thinking something like: hell, yes! 40% faster! (imagine dark chorus going geeeentooooo in background while reading this) Please explain to me how do you intend to compile binary for any x86 processor, not just Intel, for example for LiveCD?

About this Archive

This page is an archive of recent entries in the personal category.

hr is the previous category.

scrapbook is the next category.

Find recent content on the main index or look in the archives to find all content.

Pages

  • pics
OpenID accepted here Learn more about OpenID
Powered by Movable Type 5.04