28 Apr 2006 lkcl   » (Master)

depinit

love it. my cute fujitsu's laptop is running very successfully with it. i am so lucky.

i have a battery life, from a default debian/unstable system, of 6 hours.

i have a boot time of 20 seconds which means i am not interested in doing stuff like "suspend". okay, i am - i would love to be able to save the state of whatever my current development setup is. more specifically: i no longer feel the need to worry about a THREE MINUTE startup time (of my acer c112) and no longer feel obliged to keep this one permanently switched on.

see, on my c112, i have STACKS of extra services installed - and i have to edit the /etc/init.d/XXXXX scripts to put, at the top "exit 0" to disable them - or worse, remove the symlinks from /etc/rc*.d

with depinit, i can have /etc/depinit/default/depend specify the minimum startup requirements ("normal" user mode with apache, ssh, x-windows and postgresql - all of which start up pretty much simultaneously).

then i can have some additional dummy service ... err... example... i have a requirement occasionally to use my laptop to pxe/netboot other systems: i can call that... oh.... pxeserv. so i create /etc/depinit/pxeserv/depend with the words dhcpserv, nfsserv, atftpd etc. which are the dependent services i will need.

depctl -s pxeserv will then run those required services - when i NEED them. not when initscripts says i have to have them.

new web site

i'm absolutely delighted with the combination of ajax, mod_python, formbuilder, htmltmpl and sqlobject - it's like... a breath of fresh air that leaves you free to think "what" rather than "how".

the site is (yet another) social network site - but it's something that _i_ have, _i_ am doing, _i_ enjoy - and, here's the important bit - that because i will know how it work, inside-out, can extend it with ease.

there's nothing worse than having to work with somebody else's code and going "ugh" and "i would have definitely done that differently in order to do xyz in the future".

in other words, i want nobody to blame for screwing up but me :)

profiles, photos, messages, forum. the forum i love: because i already had messages, adding "forum" took about five hours. to complete functionality. create, view forums, view messages, post message.

also i decided to put in a little trick: some javascript that refreshes the latest views - so if posts arrive in the meantime (including your) you get to see them automatically.

here's the neat bit: it's done by refreshing _only_ the list of 10 last messages, via ajax techniques. it's a perfect candidate for doing real-time irc.

you know - having discovered this trick, i can't imagine ever writing a web site that doesn't use ajax, ever again.

poems

as part of (yet another) rather silly exchange, in which some rather silly person (yet again) asked me to "get a life", i decided to post a warning message, referencing a couple of my poems which i believed were appropriate.

i then forgot about it.

part of the poems site keeps a record of the number of views on your work: out of my 50 or so poems online on this site, the views varies from 3 to 20 - averaging around 12 or so. not any more!! i took a look and went "wtf??? that's a mistake: 116 views? 83 views??? where did _that_ come from?"

so.

some people _were_ paying attention. this is good, cos that guy really _was_ being very silly. it's so unnecessary to think that difficult technical and strategic decisions can be avoided consideration by attempting to insult people. unless he apologises, i do sincerely hope that nobody allows him to make important technical or strategic decisions: his judgements are clearly clouded by personal hate.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!