Ir al contenido principal

Ralsina.Me — El sitio web de Roberto Alsina

Please, KDE marketing guys, start showboating!

I am no longer on plan­etKDE so this will prob­a­bly not be read by many in the KDE com­mu­ni­ty but...

Please, please, please start mak­ing big noise about the Asus eee. It ships with KDE and is ex­pect­ed to sell "up to 500.000 by mid­dle of next year and 5,000,000 by 2009" [1].

Is that num­ber not big enough? It's prob­a­bly more than our cur­rent in­stalled base.

Way too excited about the Asus eee

Re­al­ly. I can imag­ine hav­ing one of these as my main com­put­er (with ex­ter­nal HD and mon­i­tor).

I prob­a­bly won't and use my ful­l-­size note­book or a desk­top when at home­/of­fice, but it should take me back to the days when I sim­ply car­ried my Li­bret­to ev­ery­where be­cause it was light enough.

Here's the best re­view I found so far.

Peo­ple wor­ry about the 4GB or 8GB "disk". If you keep your me­dia (ISOs, movies, mu­sic) on an ex­ter­nal HD, you prob­a­bly can have ev­ery­thing else there.

Us­ing rsync to keep two box­es synced... lots of po­ten­tial.

I am prob­a­bly buy­ing two of the cheap ones.

Snow and rates

Mon­day was a very spe­cial day:

  • Hol­i­­day (In­de­pen­­dence day)

  • An­niver­sary (3 years as Rosar­i­o's boyfriend)

  • The first snow­­fall in Buenos Aires in 89 years.

Be­sides that, this week my broth­er is get­ting mar­ried so the whole fam­i­ly (in­clud­ing 2.5 mon­th-old JF) is leav­ing for my an­ces­tral lands to­mor­row.

And I start­ed a new small pro­jec­t, wh­cih should be fin­ished soon.

This is some­thing that seems use­ful to me in the con­text of mail server­s, but maybe it will al­so find its us­es else­where.

I call it rater, and it tells you if things are hap­pen­ing faster than a spe­cif­ic rate.

For ex­am­ple, I in­tend to use it to fig­ure out if a spe­cif­ic IP is con­nect­ing to a serv­er more than X times ev­ery Y sec­ond­s, or if a us­er is send­ing more than Z emails ev­ery T min­utes.

The on­ly thing I found for this is re­lay­d, which is old, un­main­tained and whose site has van­ished.

The con­fig file is some­thing like this (thanks to lib­con­fig):

limits : {
      user: (
                    ("rosario",90,20),
                    ("ralsina",90,10),
              ("*",2,10)
              );
      ip:   (
                    ("10.0.0.*",90 , 20),
                    ("10.0.1.*",90 , 20),
                    ("*",2 , 10)
              );

};

You can de­fine as many class­es of lim­its as you want (that would be ip and us­er in this ex­am­ple) and as many lim­it keys as you wan­t, that will be matched us­ing some­thing like fn­match.

I am us­ing an in­-mem­o­ry SQLite DB for the ac­count­ing, and an in­ter­est­ing li­brary called libut for the sock­et­s, log­ging, and event loop.

This li­brary has a very in­ter­est­ing fea­ture: your app gets an ad­min­is­tra­tive in­ter­face for free!

[ralsina@monty rater]$ telnet localhost 4445
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
libut control port interpreter
Type 'help' for command list.

help
command           description
----------------- -------------------------------------
* mem             - memory pool usage summary
* var             - Display or set config variables
* log             - Change log file or verbosity
  fds             - list selected file descriptors
  tmr             - show pending timers
  uptime          - show uptime
* prf             - Performance/profiling stats
* cops            - List coprocesses
  help            - view command help
  exit            - close connection

Commands preceded by * have detailed help. Use help <command>.

Ok
var
 name                 description                    value
--------------------- ------------------------------ --------------------
*ut_log_level         log level                      Debugk
*ut_log_file          log file                       /dev/stdout
*ut_jobname           job name                       job1
*ut_control_port      control port IP/port           127.0.0.1:4445
*ut_basedir           shl base directory             /mnt/centos/home/ralsina/Desktop/proyectos/rater

Variables prefixed with '*' can be changed.

Ok
var ut_log_level Debug

Ok
var
 name                 description                    value
--------------------- ------------------------------ --------------------
*ut_log_level         log level                      Debug
*ut_log_file          log file                       /dev/stdout
*ut_jobname           job name                       job1
*ut_control_port      control port IP/port           127.0.0.1:4445
*ut_basedir           shl base directory             /mnt/centos/home/ralsina/Desktop/proyectos/rater

Variables prefixed with '*' can be changed.

Ok

Pret­ty neat.

Be­yond this, there will be a small clien­t-­side li­brary that hides all the net­work stuff be­hind a cou­ple of block­ing calls (or you can do your own be­cause the pro­to­col is sil­ly sim­ple).

Quote of the day (ok, of May 21st, 2007, but I only saw it today)

Said Giles Bowkett

The Perl com­mu­ni­ty's start­ing to look more and more like the Lisp com­mu­ni­ty ev­ery day. The com­bi­na­tion of in­cred­i­ble pow­er, reclu­sive wiz­ard­s, and an­ti­so­cial Slash­dot­ters gives it the vibe of a lava-­filled waste­land dot­ted with tow­ers where strange men with white beards ob­sess over un­speak­able knowl­edge. I spoke to some­one once who com­pared pro­gram­ming in Lisp to study­ing Kab­bal­ah, in that it does strange things to your head. Parts of Perl are like that. Stil­l, source fil­ter­ing's kind of cool. Un­nec­es­sary, but cool.

So, now we know. Saru­man used too much Per­l.

An experiment

I stum­boed on­to a site where you write and they are sup­posed to share the ad­ver­tis­ing rev­enue with you.

So, I de­cid­ed to do an ex­per­i­men­t. I cre­at­ed an ac­count and am post­ing there us­ing a char­ac­ter.

This char­ac­ter is the most an­noy­ing, cranky, acid guy I can be. It's my evil side. For ex­am­ple, my first post was about how ev­ery­thing on the site is garbage. My sec­ond one is a spe­cious ar­gu­ment about how noone is spe­cial.

Let's see where it leads...


Contents © 2000-2023 Roberto Alsina