Main

personal Archives

April 28, 2004

rot13.org moved again and other bits

Well, I had to move rot13.org again. Again, it's because of disk failure at good old griffin which was hosting this domain from early beginning. After all, that server was my donation (twice) to HULK. First time, Pentium SMP machine, and second time dual Celeron box. We changed disks much more often, but this time with root disk crash and more than 2000 files in /lost+found it seems that I have to make real move. So I did. Good luck, griffin, old friend, hope to see you soon.

On the brighter side, I added some layout around top-level page, www.rot13.org. Yes, it's self-promotion, so sue me! I would also like to share my furl links. If this blog is interesting to you, links might also be. It's really useful service.

Also, comments are working again. I had to remove calendar until next version of Bryar, but we can live without it.

June 1, 2004

Critique on weblogs/blogs and social networks

For a start, I don't think this blog is working out. O.K., call me negative, but total lack of comments (which might be because comments didn't work for quite some time due to bug in Bryar) except from me seems to show that people don't read it.

Why is it so? Well, let me move to social networks topic: it seems that most people are reading each-other blogs. Since nobody is reading mine, it feels like deserted island. I was shocked to learn that Gmail (yes, I won't link to it!) is invitation only thing. So much about that. Mail::Box Web search won't be influenced by Gmail design.

While I'm at topic of islands, few days ago I returned from LIDA 2004 conference which was very very interesting. I enjoyed it very much. Mljet was particularly nice, but I can't hold concentration for more than an hour after so much rest.

If you think that this post doesn't make any sense, it's true. Nobody is reads it, so who cares? And, as a particular bad thing, it's also masking old posts (since calendar navigation broke posts in Bryar) so you can't access older (and probably more useful) posts. But, who cares?

June 11, 2004

Good quotes and my signature

I had very good comment from David why he did install Linux on his desktop:

Napravit ću si minimalnu stranicu, instalirati Apache, koju ću svaki dan gledati u Konqeroru kako bi znao zašto imam Linux.

This was original Croatian version and (authorized) translation:

I will make minimal page, install Apache, and view it every day with Konqeror to know why is it I have Linux.

My love for console might have blinded me, but at least I know why I have
2share!2flame in signature: you have to read it like a program:
to share (as in GPL) not to flame (as in
Usenet flame)

June 25, 2004

USENIX 2004 visit

I'm going to USENIX 2004
Annual Technical Conference and I have created separate
blog space for
that. For next week or so, I will post just there (and much more than
usual).

July 3, 2004

Coming back from Boston...

So, USENIX Annual Tech is over, and I will be heading back to Croatia. However, I had to take photo opportunity before that, so here am I in front of MIT dome...

MIT dome

Here is also a nice squirrel which I met there (so that you can't say that I have just pictures of myself!).

MIT dome

July 5, 2004

What a nice evening

What can be nicer than two hour nap and a big cup of coffee? Good music? What is unusual in this situation?

I'm sitting at Frankfurt airport. I had nice two hour nap (after exhorting trip from Boston) and nice cup of coffee. But, real reason for this entry are noise cancellation headphones that I bought in Detroit while coming back. They are powered by one AAA battery, and they really work. Perhaps Bose model for $399 is even better, but this cheap model for $60 is worth every dime also! They actually make transcontinental flight something bearable. I would recommend them to anyone who had to spend more than several hours in airplane. They don't cancel all outside noise, but airplane engines and noise from bar is almost gone. And, to my surprise they also work without any background music.

I met really fun student from Korea on the plane who told me that technology behind this headphones is the same as echo cancellation in analog telephones. The logical question is then: why don't all headphones in airplanes have that? I can't believe that mass-production of such headphones wouldn't drive price down enough so that we have them everywhere. But, than again I am just guessing and I might be wrong.

If you are wondering where is weblog entry with pictures from Boston, I moved it to separate USENIX blog where it belong.
I also had comment that my English suck. Well, I know that I'm not native speaker. But, you will have to bear with me. On the other hand, at least somebody is reading this weblog :-)

August 29, 2004

Back from vacation

After two weeks of vacation, I'm back. That wouldn't be a news if I hadn't started several interesting projects before going on vacation.

One is SWISH::Split which splits swish-e index into independent parts so index can be updated in parts and not as whole. It's still not complete, but watch out.

Two other projects are more mature. jsFind module to generate CD-ROM indexes (using jsFind) from perl and Fuse::DBI module to mount your database as file-system.

October 17, 2005

Euro OSCON 2005

After a bit of trouble (mixup with dates), I finally arrived as OSCON. I will be writing detailed blog about it, but only in Croatian.

For a start let me say that I love organisation of this conference: there are power outlets in conference rooms and wireless is working great.

November 12, 2005

Feeling somewhat cold

It seems that winter has arrived iz Zagreb, Croatia (Google maps doesn't have a picture). I also just wrote rm -Rf \~ which wasn't mistake (I really had ~ directory). Well, waiting for a better days I surpose.

August 27, 2006

Moving to Movable Type

I'm not quite happy with decision to use non-free software, but I don't have time and/or motivation to run my own blog engine and I'm using it for my personal blog, it seems o.k.

Having said that, I must say that MT is really good blogging software. It doesn't (yet) have all Web 2.0 ajaxy stuff, but I don't miss that. It's more important for me to support static blog creation, which it does.

As a result of this move, I present you with

bryar2mt.pl

script which will dump existing Bryar blog into Movable Type import format.

I'm also slowly adding tags and re-organizing categories, so expect organisation to change a bit during next few weeks.

September 4, 2006

BioTails

Just a quick note that I now have a spin-off blog called BioTails which will record my journey into bioinformatics.

If you are interested in that, you will have to subscribe to it separately.

January 17, 2007

Why do I like perl and Jifty?

Lately, it seems that different programming languages are mostly different by community (yes, that's controversial statement, but bare with me).

For example, I just must brag how easy it was to submit patch to perl module which kept Jifty from handling my multi-line entries:

18:14 < dpavlin> obra: I found out what's wrong with multi-line text areas in Jifty. It turned out that HTTP::Server::Simple bit me.
18:15 < dpavlin> obra: around line 310 in Simple.pm is $request_uri =~ /([^?]*)(?:\?(.*))?/ which should really be $request_uri =~ 
                 /([^?]*)(?:\?(.*))?/s since my request has %0a in URL which gets decoded to \n before this regex gets it.
18:16 < dpavlin> obra: should I file CPAN bug or something? (write test for it? ;-)
...
18:30 < obra> dpavlin: send me mail and I'll fix it in the next hourish?
...
19:50 < obra> dpavlin: thanks! released
...
20:42 < dpavlin> obra++

If only all communication could be so useful... I might even change my mind about irc after all.

March 1, 2007

Haiku

One day, I looked up in the sky.
A bird came by and shit into my eye.
I didn't laugh. I didn't cry.
I was just happy, that cows can't fly.

It's not mine, but lately, I feel just like that.

July 11, 2007

OpenMoko and why I ordered one

Finally OpenMoko is is available for order. So, I ordered mine yesterday. Still no confirmation e-mail, but let's be hopeful.

On a side note, on-line store yesterday didn't have selection of model (black/gray or white/orange) so I didn't made a pick. Today there is choice, but I somehow hope that mine will be black :-). But, it doesn't really matter...

People who know me shouldn't be surprised that I would buy a phone which real demonstration is answering a phone call from command line (on device which doesn't have a keyboard!) - just look at
this video from 1:15:00 or so and you will know why you really want this device :-)

Here are some of fun stuff which I would like to hack on:

  • record GPS route and on second occasion estimate arrival time (even integrate with calendar with option to send apology sms 5 minutes before time with estimate of your arrival :-)
  • make all kind of confirmations and informations using speech synthesis... I usually listen to podcasts so it would be real nice to have it mute and read you incoming sms
  • sms sorter, initial reason for buying a phone which can run perl
  • blue tooth keyboard - seems like no-brainer, but I don't really know much about blue tooth devices

I have been somewhat busy with other stuff in my life (including writing compressed filesystem using gzip with fuse -- but that is topic for another post), so I just managed to update my svn checkout of openmoko before by main build server started freezing again. Oh, it seems that constant kernel updates won't be enough to create stable development machine...

But, than I looked around and found out that I can have simple (emulated) openmoko environment by just installing qemu-neo1973. I went so far to install it on Toshiba Tecra with touch screen to get a feel for user interface. I can guess that hacking this device will be fun.

August 3, 2007

OpenMoko paid

Relevant parts:

This message has been automatically generated with regard to the
progress of your order at the OpenMoko online store (http://direct.openmoko.com/).

Your credit card has now been charged by the following amount:

Subtotal: $300 USD
Shipping: $102.49 USD
Total: $402.49 USD

Please note that this amount might be less than what was originally
mentioned in the webshop, since we meanwhile got better shipping rates!

This means that we will now send out your order ASAP.

You will receive another status update once the order has been sent out.

Shipping is really less than first estimate of $147, and I'm waiting for second mail :-)

August 8, 2007

Firefox tabs

Great time saver... But when you see something like:

firefox-112-tabs.png

...there is something wrong with you :-)

On the bright side, it's isn't eating too much memory (I have two more windows, one with 30 tabs and nother with only 4):

$ ps axv | grep ice
23661 ?        Ssl    3:18     45 11540 477799 339092 21.8 /usr/lib/iceweasel/firefox-bin -a firefox

And, now... let's close those tabs!

August 24, 2007

OpenMoko arrived

After four (4) weeks of waiting from the moment credit card has been charged, it finally arrived. It seems that shipping GSM-like devices to Croatia as person (as opposed to company) isn't something envisioned by Hrvatske agencije za telekomunikacije so we had to get additional papers (most of which I don't have) and in the end they settled with hardware specification of Neo1973 from OpenMoko wiki.

I must say that people all over the process where helpful and nice: we had to communicate much more with them then I hoped, but in the end it worked out o.k.

And now several obligatory pictures (hopefully not redundant :-)

openmoko-goodies.jpg

openmoko-size.jpg

openmoko-assembly_required.jpg

After that I got rootfs flashed and I now have new (semi-functional) phone :-)

root@fic-gta01:~$ cat /proc/cpuinfo 
Processor       : ARM920T rev 0 (v4l)
BogoMIPS        : 132.71
Features        : swp half thumb 
CPU implementer : 0x41
CPU architecture: 4T
CPU variant     : 0x1
CPU part        : 0x920
CPU revision    : 0
Cache type      : write-back
Cache clean     : cp15 c7 ops
Cache lockdown  : format A
Cache format    : Harvard
I size          : 16384
I assoc         : 64
I line length   : 32
I sets          : 8
D size          : 16384
D assoc         : 64
D line length   : 32
D sets          : 8

Hardware : GTA01
Revision : 0240
Serial : 0000000000000000
root@fic-gta01:~$ free
total used free shared buffers cached
Mem: 126644 52604 74040 0 84 39100
-/+ buffers/cache: 13420 113224
Swap: 0 0 0
root@fic-gta01:~$ df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/mtdblock4 62576 42572 20004 68% /
tmpfs 40 0 40 0% /mnt/.psplash
/dev/mtdblock4 62576 42572 20004 68% /dev/.static/dev
tmpfs 2048 64 1984 3% /dev
tmpfs 63320 4 63316 0% /tmp
tmpfs 63320 116 63204 0% /var/volatile
tmpfs 63320 16 63304 0% /dev/shm
tmpfs 63320 0 63320 0% /media/ram
/dev/mmcblk0p1 495168 0 495168 0% /media/card

October 20, 2007

i-nodes and maildir: not a winning combination

Let me try to explain my mail system: I have multiple mailboxes on IMAP server (filtered by procmail) which are synced to my laptop using offlineimap on which I read them using mutt.

This configuration has served very well, in fact so well that I have been using it for last 5 years every 45 minutes while my laptop was on. My python-fu skills are very low, I just can't read language, sorry... I tried to learn it several times, and it's just somehow not readable to me without much effort. I don't really know why. Maybe my brain was forever influenced by begin and end in Pascal (which later turned out to be curly braces in other languages), but indentation is not working for me. But, offlineimap worked beside the fact that I promised myself to get rid of all critical python code after every mailman upgrade :-)

It had few hiccups, mostly from full disk, but cleaning some space always turned out to be solution. It worked so well that I recommended it to one very unsatisfied Evolution+IMAP user... Until today, that is...

Today I run out of disk space. I think. Then I cleaned some space. And got disk full message again. Strange? In fact no. I have configured news servers sometime in last century and I still do remember i-nodes. I use ext3 on this partition by the way.

Quick df -i reviled that I have, indeed, run out of i-nodes (sorry, Jakov, you weren't quick enough to see df output with 0 i-nodes :-)

Did you know that make clean in compiled Linux kernel tree can give you 26000+ i-nodes? I didn't. Now I know. However, couple of moments later I discovered that I have again run out of i-nodes again.

Nobody around (and I was surround by at least 5 very knowledgeable Linux users -- which is a benefit of being at Linux track of conference while running out of i-nodes :-) didn't know how to find a huge pile of small files which where eating my i-nodes.

Lucy guess revealed that there is something strange with my INBOX/tmp directory. ls just hung in D state (blocked on I/O) and find . (which should display files because it doesn't try to read them all in as ls does to have them sorted) just blocked in D state also.

So, I decided to do rm -Rf tmp. It has been running for more than two hours now. I got 700000+ of i-nodes back (probably even more by the time I finish this post).

Here are few lines from offlineimap log:

OSError: [Errno 28] No space left on device: '/home/dpavlin/Mail/INBOX/tmp/1192813332_0.6409.llin'

Last 50 debug messages logged for Copy message 319050 from INBOX prior to exception:
maildir: savemessage: using temporary name 1192813326_9.6409.llin
maildir: savemessage: using temporary name 1192813326_10.6409.llin

I don't really know from which run this log is. From one which failed, for sure. My maildir knowledge disappeared also sometime in last century when i replaced last qmail installation with postfix.

So, lazywab, my question is: What is tmp directory in maildir? Is it safe to just re-create it and let offlineimap re-sync my folders?

My INBOX has 6778 mails and I wouldn't want to loose them. I will make backup on server, but re-syncing them would be (slow, ADSL) pain which I would like to avoid. offlineimap has two-way sync, so my worries are not without reason.

Update: The correct procedure would be to erase correct directory in ~/.offlineimap and re-sync mailbox meta-data (which again took allmost 24 hours).

I still can't quite explain where did 2500000+ i-nodes went, but in the process new version of offlineimap went into Debian unstable so this might have fixed problem also. It working now, so life is good again...

October 30, 2007

Zagreb.pm first meeting

Yesterday, 2007-10-29 we had first ever meeting of Zagreb PerlMongers. There where three of us, and while that's not much, it's a start in organizing perl users here in Zagreb, Croatia.

So, now that you know that Zagreb.pm exists, watch out for official listing at Perl Mongers: Europe. We are still not there, but soon...

We will have another meeting as soon as we setup mail list and we'll try to do better public announcement before it... If you are perl monk near Zagreb, feel free to get in touch with me so we can keep you posted about progress.

Update: We now have (Croatian speaking) list at Google Groups so if you are interested in next meeting subscribe to list...

November 25, 2007

OpenMoko flashing

Few days ago I decided to run ipkg update ; ipkg upgrade on my moko, and this didn't end up quite well. For a start, I managed to fill root filesystem, and while I tried to remove almost everything that I didn't use, I ended up with non-working unit.

Since I'm following qemu-neo1973 tree and testing images in emulator, I decided to re-flash with latest image. This proved to be very bad since latest image doesn't have gsm drivers, so moko dies on splash screen making device unusable (ssh isn't started at that point so I couldn't connect to it -- If I only had development board...)

Most interesting (and scary) thing were error messages from jffs2 which led me to beleve that my device has developed additional bad blocks. So, I started reading wiki and dumped my bad-blocks table (dump from u-boot prompt):

GTA01Bv4 # nand bad

Device 0 bad blocks:
00070000
00ab0000
00f00000
03ff0000
03ff4000
03ff8000
03ffc000

Last four entries are bad-block table itself, but my device really has bad block. I wasn't able to access additional fields which would tell me if they are factory bad of developed in use...

Since I suspected that my device is completely broken (selecting factory default option in u-boot didn't help) I decided to try re-flash with different image. I went to wiki, selected another u-boot/boot/root images and flash them using following commands described in wiki:

dfu-util -a u-boot -R -D u-boot-gta01bv4-r12_0_2632_0.bin
dfu-util -a kernel -R -D uImage-2.6.22.5-moko11+svnr3238-r8-neo1973.bin
dfu-util -a rootfs -R -D OpenMoko-scaredycat-openmoko-devel-image-glibc-ipk-P1-Snapshot-20071118-fic-gta01.rootfs.jffs2

After a looong wait (it's a USB 1.1 device) I must report that I'm actually amazed by amount of progress. New home screen, working browser and media player!

openmoko-home.png openmoko-web.png openmoko-media.png

However, I still can't make any calls (this will take a bit more fiddling) and file dialogs are just unusable (too big and with too much options) and I still can't type on any screen orientation.

Google's announcement of Android platform provoked me to think about leaving OpenMoko on the shelf with other toys for which I don't have time any more, but when I saw new software upgrade I have to re-consider this.

  1. OpenMoko is here: I have the device, it exists in hardware
  2. qemu-neo1973 just got very good GSM emulator (you can select emulated GSM network, send messages and calls to emulated phone) which will probably bring GSM and SMS functionality to good shape real-soon-now(tm)

To replace my aging Nokia I need following:

  1. working phone (voice calls) - almost there, but not quite :-)
  2. SMS messaging - there is beginning of it in GUI, but no real functionality
  3. keyboard on which I can type with my big fingers

This brings me back to my plans: since I can't develop anything for GPS until there is binary (sigh!) driver available I would probably want to write almost full-screen 3*4 keyboard just like the one on regular cell phones. This would allow me to actually use device with my fingers.

I probably won't have time to scratch this itch in current year, so if there is anything similar (T9 implementation or even something similar to xstroke which worked well for me on Zaurus) I would love to hear about it.

December 16, 2007

Migracija TamTam wikija razmjene vještina na SocialText

Our local Skill sharing group just moved old TamTam wiki to SocialText. Since TamTam is mostly used in Croatian's NGO organisations, rest of this post is in Croatian.

However, source code for migration tools might come useful.

Nakon prošlog vikenda u Moravicama na poznatom događaju Ništa se neće dogoditi nešto se ipak dogodilo: migrirali smo wiki na SocialText. Iako je to samo jedan dio velikog i grandioznog plana za novi site već ovako (sa ružnim izgledom) dobili smo mogućnost pretraživanja i generiranja ili korištenja RSS feedova na najzanimljivije načine.

Za one sa programerskom dušom, perl skripta koja radi migraciju je dostupna (prije nego što je pokrenete, morate promjeniti server/login/password -- ovaj u skripti ne funkcionira!).

December 23, 2007

Prvi tjedan u CARNetu, drugi puta

Čudan naslov zapravo objašnjava dio moje povijesti: počeo sam kao CARNet sistem inžinjer 1995. i sada sam ponovo u CARNetu, ovaj puta na poslovima u vezi portala za osnovne i srednje škole.

Prvi tjedan je bio prekrasan i jako naporan i nadam se da ću za nekoliko tjedana imati nešto i za pokazati od svojih napora. Za sada, mogu samo napisati nekoliko loših rečenica o ocfs2 sa kojim se natežemo od početka instalacije sustava, ali taj rant ću ostaviti za trenutak kada budem siguran da problem zapravo nije u optičkom kablu :-)

Ponešto od moje motivacije za prelazak u CARNet možete pročitati u mojoj zamolbi za zapošljavanje, ali ukratko mislim da je ovo pravi trenutak da se posvetim projektima povezanim sa osnovnim i srednjim školama, kao i fakultetima jer sam prepoznao da dio problema koji oni imaju najbolje mogu riješiti tako da postanem (ponovo) CARNetovac.

U ovih prvih tjedan dana iskoristio trik za optimizaciju servera: kada počnete swappati zbog premalo memorije i performanse sustava postanu neprihvatljive, smanjivanje broja apache i database childova će zapravo poboljšati situaciju jer će pomoći mašini da izađe iz swap-a. Također, zgodno je paziti i na broj konekcija koje apache može otvoriti prema bazi (naročito ako se koriste permanent connections prema bazi) a i na fs_passno u /etc/fstab jer svaki filesystem zapravo voli povremeni fsck (čak i journaling filesystem kao ext3, što je zapravo pomalo čudno).

January 12, 2008

Eee PC saga -- with partial happy end

So, I began looking for Eee PC last year (well, more than two weeks ago, anyway) and my original plan was to buy one while I'm in Berlin for new year. However, since there wasn't any Eees available in Germany until second week of 2008, I was in some disspair becuause we where leaving on 6th.

You can understand when I read Avian's blog post about his new Eee PC. He is in Slovenia, and I'm in Germany and he managed to buy it? How? Quick e-mail later, and he said that it's available in Building of Fun, some kind of on-line web shop in Ljubljana. Since Slovenia is so much closer to Croatia than Germany (in which I was at that time) I just postponed my purchase for better times. In meantime, Kost got interested also, and after return to Croatia he contacted them and we bought our units.

That would be happy part of story, if only one of them didn't have one constantly lit LCD pixel. Reviewing ASUS warranty, I found that I found one point:


2. TFT LCD defect policy -- Eee PC does not provide ZBD (Zero Bright Dot) warranty for TFT LCD screens.

Yes, it's in there, one you buy the unit, that is. Since we couldn't replace it today I guess I'm out of luck. I will try some of software solutions over the night in hope that it will go away, but some more drastic measures like rubbing LCD screen gently are just too much to ask from me...

Other than that, it's a great device: designed for wifi communication, quick browsing and occasional terminal session using ctrl+alt+t. It's not designed to be primary PC, but all features are so well integrated and working seamlessly that I will have hard time reinstalling it with Debian. Until I need dwm which I got used to so much. I can probably wait for a few more hours :-)

I can't say anything about battery life, other than fact that it got half-filled in two hours while I was working on it with wifi. I will do some monitoring to see how well is battery holding on this device (there isn't acpi command, but all /proc entries are there, so it shouldn't be problem).

Form-factor is just great. Yeah, keyboard is small, but I can type on it (with my big fingers) without any problems. We did try to boot few distribution from USB stick (including Puppy and some Slackware derivative) without any problems. Well, there shouldn't be any: this is basically a palm-top size Intel box (at last!) with strange screen size of 800*480.

After first day with my Eee PC, I'm very pleased with it. To make things a bit easier now that I'm back on ThnikPad, I wanted to access Eee PC using keyboard and mouse from ThinkPad, so on eeepc I edited /etc/X11/xinit/xserverrc to remove -nolisten tcp, restarted X using ctrl+alt+backspace, typed xhost mylaptop.lan on eeepc and then started x2x -west -to eeepc.lan:0 on my laptop and now I can pass from laptop to eeepc sitting on left with just a mouse move. Sweet.

January 23, 2008

Simpliest possible thing to do with Open Source projects

Just send a thanks to author. Really.

Quick comment is also nice. For more knowledgeable users bug reports and suggestions are of course always welcomed. I think I never actually wrote about fabulous bug report from Samuel Gélineau that I got for svn2cvs. Sorry about that.

I wrote my thanks today. Did you?

February 7, 2008

Disappointed in php -- again!

Taint checking? Just say no, according to php developers (I must admit, I stopped reading after first two replies).

Pixy tries to address that (in Java, sic!) and fails on my test code. Only hope left (as it seems) is generation of AST tree using phc or using Parse_Tree. Both look like a workable way to get AST tree, but I really wouldn't like to implement taint analysis for language which I don't particularly like.

Any suggestions from idle readers of my blog?

OOH, this day would be more-or-less complete waste if I didn't stumble upon hypertable which seem like nice implementation of bigtable in sane language (C/C++). Now if I could just find bunch of machines to run it on...

March 3, 2008

Negroponte u Zagrebu

Nekako pomalo nezapaženo je prošlo vrlo zanimljivo predavanje Nicholasa Negropontea u Zagrebu. O organizaciji konferencije ne treba trošiti riječi, ali želio bih djelomično prokomentirati neke nedoumice o OLPC ideji.

Za početak zaboravite na laptop. Da, znam teško je. Ili je lijep ili ružan. Ili spor. Zaboravite na laptop. Dobro?

Ideja je promijeniti način školovanja. Negroponte očigledno to želi naročito napraviti u zemljama "trećeg svijeta" (što je, prisjetimo se malo bila i Hrvatska nekada u doba Jugoslavije) zbog toga što tamo većinom vlada još Viktorijansko poučavanje 19. stoljeća koje šibom utjeruje znanje.


Svi citati su moji sjećanja na sadržaj predavanja, a ne nikakav prijevod materijala (koji su bili snimljeni, pa se možemo nadati da ćemo ih moći nekada i pogledati).

...učenicima se do četvrtog razreda izgubi ta žar u očima koju imaju kada prvi pita dođu u školu...

To je kreativistički način podučavanja (ili poticanje istraživanja) koji se onda može vidjeti i u drugim aktivnostima koje nemaju veze sa računalima. Čuli smo primjer da djeca koja nauče programirati (program nikada ne proradi od prve!) dobiju novu vještinu debuggiranja koju onda koriste i u testovima ispravnog pisanja riječi. Njih zanima zašto su pogriješili te dvije riječi i nije im dovoljno što su sve ostale točne.

Slijedeća priča pokušava opisati situaciju na drugi način:

Postojao je narod koji nije imao pismo. U jednom trenutku vođe naroda odlučile su da treba uvesti pismo, pa su uvele po jednu olovku i svaku školu.

Kako to nije urodilo plodom, odlučili su u svaku školu staviti po jedan razred koji je imao po jednu olovku na svakom stolu.

Naravno, svi znamo da je bolji način dati svakom učeniku olovku.

Dakle, sve rasprave da li je OLPC ili Asus EEE PC bolji, jednostavno promašuju cijeli cilj. Nije čak ni stvar u tome da je OLPC dva puta jeftiniji ($200 * 5 = 1000 kn) od Asusa nego jednostavno u tome da je jeftin laptop jedini način da svaki učenik dobije svoju olovku.

OLPC laptop je zapravo samo jako zanimljiva implementacija te ideje.

Zamislite sat u školi upoznavanja sa znakovima, ulicama i prostorom oko sebe:

Djeco, nacrtajte ulice oko škole i znakove koje ste vidjeli na njima (prisjetimo se, OLPC ima podršku za grupno crtanje). Nakon što su nacrtali ulice i napisali imena, može se spomenuti da je standardna orijentacija karata prema sjeveru i zašto crtamo baš tako, a onda, s obzirom da je lijep i sunčan dan, djeca mogu krenuti u obilazak škole i koristeći više OLPC-a istovremeno (zgodnim programom koji smo vidjeli koji može mjeriti udaljenosti između dva uređaja) upisati na svoje mape točne udaljenosti.

Mapa onda sama može korigirati odnose (prisjetimo se, svi OLPC-ovi su povezani tako da se mapa sama obnavlja svima) i na kraju imaju neku ideju o tome kako prostor možemo zapravo prikazati kao skicu (npr. tramvajske pruge) a različito kao mapu sa stvarnim omjerima.

Usput, naravno možemo pogledati i horizontalnu i vertikalnu signalizaciju (zebre, semafori), i npr. snimiti filmić.

Možda nisam siguran u program kojeg predmeta bi ovakav zanimljiv zadatak spadao, ali mislim da mu nedostaje samo "pametna mapa" koja bi mogla biti jednostavna aplikacija na OLPC-u. Da li čujem glasove zainteresiranih pythonaša? :-)

March 15, 2008

Predavanje: SQL od početnika do relacijskog maga

Danas sam na Razmjeni vještina održao maratonsko četverosatno predavanje koje je nadam se bilo donekle korisno. Nažalost, nismo stigli ući u detalje onoliko koliko bih želio, ali ako ništa drugo ponovo sam koristio pgrestraier (koji se nekako indeksira previše sporo, morati ću pogledati zašto) i još jedan zgodan projektić koji sam napisao prošle godine za studente u Zadru pg-getfeed koji je zapravo mala perl stored procedura kojim možete raditi SQL upite na RSS feedovima.

April 15, 2008

First Croatian Perl Workshop

First of all, we had first ever Croatian perl workshop. Thanks to all the people who showed up, we had attendance of about ten.

Organizing a workshop event turned out to be much more work then I anticipated, and various other tasks stopped me from preparing for it as good as I should. Also, small number of people force me to re-consider my lectures about perl. On one hand, I really, really, tried to spread perl (and had good fortune of being at right place at right time to get Zagreb.pm off the ground), but with such low attendance, I must conclude that perl is used only by about 20 people in Zagreb. This seems somehow disturbing. Comparing size of Zagreb with Moscow turned out to show about same proportion, so I was just overly optimistic.

I also gave half an hour presentation about Jifty, based on Building a Jifty app in a jiffy by Kevin Falcone and showed some examples of my jifty apps (I actually didn't talk about last one, just mentioned it as integration of external javascript -- CodePress in this example).

I also have to thank to Andrew Shitov from Moscow.pm who have managed to prepare several very interesting topics which, in my opinion, made this event worthwhile. If it wasn't free I would ask my money back :-\