Stuff I have written/presented
Submitted by gwolf on Thu, 05/17/2007 - 10:22
A long time ago, I wrote the system that still manages the Cuerpo Académico Historia del Presente group in the Universidad Pedagógica Nacional. Yes, I'm happy a good portion of my project, which took me over a year of work... But I must admit a nice deal of shame as well.
Of course, it comes from not properly understanding the domain data and information volume my system would be working with - and coming up with a stupid way to implement searches. I won't get too much in detail because, even if you had access to the full search facility in the system (no, it's not available for the general public), I would not like a swarm of curious people to make last week's events come back... Anyway, the group works by daily filling in tens or hundreds of articles in the system, and having some interesting search sessions every couple of months.
I knew the performance problem was caused by an inefficient searching mechanism (explicitly, category exclusion is the prime killer). I knew loadavg jumped through the roof, memory usage did so as well... But it was not until some weeks ago we installed the mighty Munin on the machines at UPN that we got this jewel - Thanks, Victor, for putting the graphics somewhere they can be shown! ;-)
So... How much does memory usage increase during searches?
Whoa. The system has 640MB real RAM. It has as well 1GB swap. Don't ask me how the hell it reports it was using ~2GB swap - but still... And how is our load average?
Have you ever seen a (single CPU, Pentium 4 1.7GHz) Linux system with a loadavg of 80?! For those who don't know, loadavg gives you the general status on how many jobs are pending scheduling by the CPU. 1 means that all of the CPU's time during a specified timeframe was used (and, on single-core systems, it's the optimal usage level). On this machine, things start getting uncomfortable at 6 or 7. I had never before seen values even half this large.
Sigh... Well, in my defense, I must say I've warned them about this problem for over two years. My contract with them has long passed - I've repeatedly recommended them to hire somebody to fix it. So far, they have not.
Submitted by gwolf on Wed, 05/16/2007 - 14:45
Scott complains on how Linux Format #93's articles comparing Ubuntu and other distributions often contradict each other, and blames it on the lack of any editorial direction or basic research.
I... Have to confirm this. But anyway, I can stand a bit on the different writers' side - Each article is written by a different person and, although the magazine must try to be coherent (of course, within certain limits - if the magazine suggests editor's picks in one article, they should not bash them to death in the next one).
I write the Linux column in the Spanish edition of PC Magazine. No, it's by far not a technical column, nor anything far like it. The magazine is end-user oriented, and clearly sponsorship-driven - In fact, my column was not part of the magazine for quite some time, as they gear it towards end-users, and sponsors (I cannot venture which sponsors, but your imagination will probably go to the same company as mine) do not like what I write about. All in all, I get the general topics which each month's edition will cover, and I just have to write an article about one of them. Of course, I don't know most of the other writers. There is no interaction at all.
And I guess that Linux Format is a typical magazine - If they run like PC Magazine, they just won't have the time to put all the articles together checking for inconsistencies. I think it is enough of a task to chase the contributors month after month (BTW, I'm a week late already :-/ But I cannot finish just today, as there's too much work to do, and I spend my time blogging... Hmh, time to finish this post, as coitus interruptus as it may seem).
Submitted by gwolf on Wed, 05/16/2007 - 11:04
After a long time talking this as a mere potential would-be-nice thing, finally we are putting some action behind our words: One week from now, Sergio Mendoza and I will start a ~2 month long extracurricular course on Debian. The students? We have 12 students of the Facultad de Ciencias at my University. The students are pre- and post-graduate (licenciatura and maestría), from the Phsyics and Astronomy areas. Sergio got this group as he is a teacher and researcher at Instituto de Astronomía.
While this first iteration is completely extra-curricular, unofficial and by invitation only, we expect this pilot course to be later presented as an official course in the Faculty.
Many people will remember I usually don't like general courses on Unix, Debian or whatever. What made me accept this time - even more, be enthusiastic about it? First of all, the requirements: We assume the students already know their way (at least as users) in a multiuser Unix-like system, so we won't be hand-holding them all the way through. Second, the focus: Sergio (who is among the first Debian users in Mexico and who got us our first full Debian mirror - which is actually a bit sick, but awaiting for prompt hardware upgrade ;-) ) wants them to focus on becoming developers. Not only developing science-oriented applications and libraries, but properly packaging and integrating them in Debian (and, hopefully, some of them will become interested in joining the project). We will also spend a good portion of the course on teaching them good practices on system adminsitration, teaching the principles behind what we do (i.e. I'm looking forward to participating, and in this case as one of the more students, in the sessions where different cryptography-related topics will be explained, starting from their mathematical foundations and going all the way up towards the implementation, where I'm more comfortable at).
It will be a nice experiment. I will be away for at least five of the lessons (Blame Debconf!), but I'm really looking towards the process and the results.
We will be making rough documentation of what we teach. We don't have a planned complete program, as we want to go with the group's real skills and interests, planning not more than three lessons ahead. This will be, however unofficial it is, my first time in front of a group in a university-esque setting (i.e. not short sessions, not capacitation built for a company, but with people eager to learn what we want to teach. I'll post again on this topic :)
Submitted by gwolf on Sun, 05/06/2007 - 20:37
I did it.
We did it.
The whole lot of us did it.
And we liked it.
In fact, we loved it.
Today, Spencer Tunick held his long awaited session in Mexico City. I signed up a long time ago, yet could not believe this was really going to happen - And man, did it happen!
For those still wondering who is Tunick (lazy you, as with the first link, it becomes just obvious), he is an artist who enjoys gathering large crowds, getting them all naked, and photographing them. Some people (including me, until this morning) erroneously categorize him as a photographer - No way! Out of Tunick's own words, out of many comments I heard and read today (i.e. at El Universal's forum), I can assure you only a participant can feel Tunick's art - A sensation of togetherness, of freedom, of clean enjoyment, throwing out the denial and repression we have regarding ourselves and our society. I was quite skeptical. The Mexican society is well known for being conservative on many issues. Nudism in Mexico is basically something not even talked about. There are a couple of nudist beaches, but they are closely associated with relaxed morals and drug abuse, and are just not safe for, say, women on their own. Nudists are seen as sex-maniacs... And, yes, this is as far as it gets from truth.
As I said, not only did it happen here, but how! We were between 18,000 and 20,000 naked people in the Zócalo, Mexico City's main square, the third largest square in the world. The previous attendance record for Tunick's works was at Barcelona, Spain, with 7,000 people. And the surprise is not just the number - I insist, it fills me with joy to recognize a positive change in my country, to recognize we are not that retrograde anymore.
Nadezhda and I were there, as many couples, groups of friends, even families (although, yes, people under 18 were requested not to come - they would be expelled if found). I think the main age group was people in their late 20s, but there were many people from every age group. We met people who travelled from Jalapa, Veracruz (5 hr away), to be here today. I read reports of people coming from Guanajuato (5 hr), Oaxaca (6-7 hr), even Durango (14 hr)! We met near the Zócalo at 4:30 AM, as Tunick likes making his work with the early morning light. As you can imagine, and after quite a busy and tiring day, I feel like minced meat... So I'll leave this for now. I expect to come back to the topic in the next couple of days - But anyway: This was amazing. Incredible.
Submitted by gwolf on Thu, 05/03/2007 - 12:33
Ok, so LPI will be at Debconf, giving discounted certifications to registered attendees. Is this good or bad? Mario likes the idea, Madduck is in the middle ground, not decided on his stance on this regard, and Joerg basically says it's not worth much to him personally. Actually, I'll quote Madduck, as he has an interesting point:
I am not looking for employment, and if I was, I'd certainly not want to work at a company that thinks certifications are the true proof of capabilities. So I guess that leaves me with a 'no' still.When confronted with this topic, I always oppose certifications. Why? First of all, I think they are worth very little. I got three or four Brainbench certifications when they were free - And of course, noticed right away that such a simplistic test is worth very little. Of course, LPI is a better established name, and is usually respected - Lets be fair, and talk about LPI together in the line with Cisco's, Microsoft's, Novell's and similar certification programs.
I've worked with several people who have got certified in different technologies, and almost always, this works against them rather than in their favor - Such people usually are blinded to all but their technologies. My most recent experiences are with the network infrastructure people - Cisco people know how to push Cisco, but know very little about protocol details, and cannot recommend a tool that's not
What will this mean for most of Debconf's target audience? Well, just what Ganneff and Madduck said: Take the test if you want to get a new job more easily - but you should have more confidence in yourself.
Just as a final note: Whenever I've interviewed people to work with me or for people that trust me, from all of the received curricula, I start by throwing out every curriculum that has the certifications earned in a prominent place. People who give too much weight to certifications IMHO tends to be worthless to work with.
Submitted by gwolf on Thu, 05/03/2007 - 10:48
This looks like random blabbering, right? A very specific random blabbering that has somehow appeared in blogs of at least tens (if not hundreds, maybe even more) blogs of techies all over the place. What is it?
For the more tech-friendly readers, it has some resemlance to a number - a long number, a
Trece sextillones, doscientos cinuenta y seis mil doscientos setenta y ocho quintillones, ochocientos ochenta y siete mil novecientos ochenta y nueve cuatrillones, cuatrocientos cincuenta y siete mil seiscientos cincuenta y un trillones, dieciochomil ochocientos sesenta y cinco billones, novecientos un mil cuatrocientos un millones, setecientos cuatromil seiscientos cuarenta
Hah! I guess my fifth-grade teacher would be quite proud of me!
Now, I hereby pronounce my transcription of this utterly long and basically random-generated number into the beautiful Spanish language copyrighted by me, and publicly available under the Creative Commons Attribution-ShareAlike 3.0 Unported License, as it is a very valuable and hard literary work.
But, really, what is it? Well, this mindboggingly long number is the key with which most HD-DVD movies processed so far is encrypted with. Of course, the Motion Picture Ass. of America (MPAA) does not want this (again, randomly generated) number to be out there in the wild, so they say the number is copyrighted by them - This does not hold up, as it has been widely shown before (i.e. Intel dropped its 286/386/486 numbering scheme because a number is not copyrightable or trademarkable - and AMD was perfectly able to legally sell 386/486 chips). So, I have put more work into this number than what they have. I deserve the credit - the transcription is mine. Use it freely.
Oh, and of course, some more examples:
Submitted by gwolf on Wed, 04/25/2007 - 23:35
I was trying to make a credit-card purchase on the web. The site I was trying to give money to prefers not to directly handle such messy details, and outsource their credit card application to Google. So far, so good - I got redirected to Google Checkout. Ok, I start filling in my personal data, until...
WTF? and yes, I do mean it. WTF?
I live, as many of you know, in a little country called Mexico. No, it does not appear on many world atlases. It's so very small, only slightly below two million square kilometers, that it's easily overlookable. Also, only a hundred million people live there - Not much. No, the 25,000,000 people that live together with me in Mexico City won't feel left out at all - We are used to it. But come on - In the listing I see our alphabetically neighouring countries (Malta, Mauritius, Moldova, Monaco)... Why did they get listed and we didn't? Of course, I tried editing the form data and substituting Moldova's MD for our dear MX, to no avail - We are not only off the map in their lists, but also in the database - and there are some integrity checks. Does somebody know which way should I whine in order to get the Google folks to fix this? :(
Submitted by gwolf on Wed, 04/25/2007 - 19:09
Thanks to Romain Francoise, I found and watched Martin Michlmayr's Release Management in Large Free Software Projects talk on Google Video's Open Source Speaker series. Martin: Thanks a lot, great talk. I've been following your presentations lately, as I've given some talks on this topic - Quality Assurance on Free Software Projects (Spanish only) - However hard I try to remain faithful to the subject, I end up giving a talk on what Free Software is and how its processes are naturally more prone to yielding better quality than propietary projects.
Anyhow, with this post I want to do basically three things:
Submitted by gwolf on Tue, 04/17/2007 - 17:27
Ok, so it just seems like a hot topic - I just submitted a BoF for Debcamp to talk about the init-related ideas we've been discussing. As Debconf's Pentabarf conference management system does not like disclosing talk details before the talks are accepted, I'll reproduce here my short blurb:
This BoF comes out from several ideas posted in Planet Debian by Erich Schubert, Sven Müller, Joachim Breitner, Mike Homey and myself (so far). It's not to be "chaired" by any of us particularly, but I expect an interesting brainstorming session.Note that, following Nomeata's suggestion, I'm presenting this for Debcamp - If you are not attending Debcamp and are interested, we will try to set this up via some sort of videoconferencing (or at least the usual video feed + IRC feedback), and I do hope we can have something showable (at least a broken concept) after Debconf.
In not-so-closely-related topics, I just learnt there is a shadow of doubt regarding my presence in Edinburgh - I will do my best to dispell the threat. I just don't want to miss a Debconf!
Submitted by gwolf on Tue, 04/17/2007 - 14:03
First of all, sorry for the delay. Leaving just as the discussion gets started is bad, yes... But I'm only now reading Erich's and Sven's follow-ups. Both (as well as some comments in my blog) ask why not integrating the startup links in each of the packages - Well, basically because I don't think that most maintainers will take care to do this, and we will end up having a situation very close to what we have today: If I'm not interested in supporting your favorite init system in my packages, I just won't bother to make the scripts.
Note: I'm going into braindump mode. Verbose blabber and some stupidity might follow ;-)
Think on the webapp scene - Most webapps ship with an Apache-like snippet so that http://yourserver/thisapp just works(tm). I love that, and it's one of the little details that make Debian shine - Things usually work with the least administrator burden possible. But it happens that there are other web servers around there - They just become somehow second class citizens (I happen to sponsor/comaintain Cherokee, for instance), as nobody cares to include the equivalent snippets for them. Apache is the standard, and is good enough.
The same goes for sysv-rc: It just rules the world. Who will work all the needed patches to support all the different init systems? As the maintainer for a simple package which requires to be started up, I probably won't care to even understand all the intimacies of every init system, at least until they all have a decent user base. But by having one package per (server,init-scheme) pair, any maintainer can come up with the needed initialization.
Of course, this degrades quickly. First of all, as a user: if mydaemon is not correctly starting up, I will probably file bugs at mydaemon, not at mydaemon-initscheme. If mydaemon changes its parameters, we will witness transition of mydaemon-*.
Further, remember this is Debian, and volunteer-work has its downsides. If the mydaemon maintainer is a primadonna (or just does not give a flying crap about the runit init scheme), he will just trash reports regarding a nonimportant init scheme. Bad. And, as Erich points out, we have ~1000 packages including /etc/init.d/something - It will mean 3000 or so packages for a decent (not complete!) coverage of the different schemes. And, of course, a very uncoordinated way of working. But back to my line of thought: If I'm promoting an init scheme, I cannot just push it down each maintainer's throat. I must include at least the most important init scripts somewhere. Maybe we could just group daemons by task, and then have -say- a webservers-runit package providing the init scripts for each webserver for runit? This could cut down from 3000 to some 100 packages, most probably team-maintained... But it still faces many scalability problems, and the bug-filled-somewhere-else problem seems unavoidable.
I think something interesting could come off Sven's idea of providing several independent scripts instead of today's complete init scripts - This would make it easier to adapt startup/shutdown and similar events to different world views, and if not specifically needed, most init scripts could even be autogenerated calling the right bits here and there. That would rock - except in the corner cases (I predict no less than 10% of the packages will become corner cases ;-) ) where it will crumble apart. But maybe if a package declares it should be autostarted and provides the separate bits, the sysv-rc, upstart or runit helper can come up with an autobuilt initscript (or equivalent) - And if it does not work, it can always be overriden by a maintainer- (or user-) supplied, explicitly built script. Humh...
The topic surely calls for a Debcamp session, as Joachim says in comments in two of our posts and Erich acknowledges. Erich, as the main instigator of this blog series, I hope you can at least join via Ekiga or such, as it can be quite interesting - But, yes, none of the people involved so far participates in any of the inits' maintenance... Anyway, please keep the ideas flowing. I want to sketch something up, as I feel this can be useful - and not only for initscripts, but for many of the areas where Debian provides several ways to do the same thing. And, once again, that's one of the best points of Debian for me.
Submitted by gwolf on Thu, 04/12/2007 - 09:50
I was delighted at finding Erich's series of posts regarding init schemes - In fact, when reading the bottom of your third message I got disappointing at you stating that this concludes this series of blog posts. Maybe someone can follow up with some details on upstart (which seems to be the most promising init replacement)? - I expected you to delve a bit into other schemes, such as file-rc (which is, AFAIK, quite similar to the standard sysv-rc, but instead of having directories with symlinks has files describing each runlevel in similar terms, and I understand works in quite a similar logic to sysv-rc), runit seems to work in a way quite similar to BSD's RC...
I was particularly interested on your point of view on something like Init NG - And, of course, Upstart sounds sexy, and besides, being Scott's brainchild automatically stamps a must be good legend on it, at least for me. Shame that you didn't follow on with the series - but hey, nobody's paying you to do it ;-)
Anyway... I was thinking on a way we could get at least Debian maintainers work more easily towards having more than one init scheme for our daemons and such - or at least, shipping less cruft for derived distributions to clean up. Specifically, yes, our most notorious descendant goes Upstart, so /etc/init.d/* becomes crufty for them. So, what if:
Submitted by gwolf on Mon, 04/09/2007 - 10:31
Wow, what a wonderful weekend was this for Debian. And, yet again, I managed to miss the live announcement and party on IRC.
So... We got a shiny, new, French DPL. Just after that, we got one last release for Sarge, and right away we got a stable Etch - Who says having a new DPL cannot speed up things? ;-) Anyway... I don't remember where I started the meme when Sarge was released (it was not on my blog, it seems)... But here it goes again:
What were you doing at...
Etch release? Having a nice time with Nadezhda, walking around this broken and dear city in my last day of vacations.
Sarge release? At my psychologist. Yes, Sarge drove us all nuts.
Woody release? Sitting at a lent workstation at Departamento de Seguridad en Cómputo in my University. Of course, the announcement was broadcasted right away to everybody around me ;-) I was in NM by then, and was a bit disappointed because my work didn't appear in the release.
Potato release? Don't know... I was not yet involved with Debian by then.
[Update]: Thanks to Wouter, my old meme-starting message appeared - is he more patient than I am, or just more organized? :-) Anyway, boo for Jaws breaking old URLs (I upgraded 0.4->0.5->0.6->0.7 since then)
Submitted by gwolf on Sat, 04/07/2007 - 09:39
As I've posted before, I recently read Lawrence Rosen's Open Source Licensing Software Freedom and Intellectual Property Law. And I'm sure many of you will recognize the enormous constructive value of early-morning cavilations. Well, today I woke up thinking about strengths and weaknesses in th different Free Software licenses, and I decided to add my grain to the world of license proliferation. So, here goes version 3.14 of the CoPL. I wonder how long will it take before it reaches /usr/share/common-licenses on Debian systems ;-)
CONFUSING PUBLIC LICENSE ======================== This is version 3.14 of the Confusing Public License (referred to from now on as "CoPL"). Copyright (c) 2007 Transnational Republic. Additional copies of this license can be purchased at no cost from any Transnational Republic citizen at any of its recognized outposts, or freely copied. Any legal claims regarding Original works or any of their Standard versions licensed under the CoPL Should not abide by and be carried out according to the current law of the Transnational Republic. The Original author to pay for any attorney and other legal fees of any dispute regarding said Original author. This license text is designed to protect all the Technology covered under it under a thick layer of incomprehension. No technical, professional or social measures might be used to subvert the intent of this license. This license Must be carefully or professionally reviewed by a lawyer or attorney, under any jurisdiction. Any serious attempt to understand this license will immediatly terminate your rights to keep reading this license. Original works licensed under the CoPL will not be affected by this provision, you will still have permission to use them. Redistributions of source code Should not retain the above copyright notice, this list of conditions and the following disclaimer. 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this Confusing Public License. The Original work below refers to any such program or work or Standard version. 1. You desire to license the Technology to a large community to facilitate research, innovation and product development while maintaining compatibility of such products with the Technology as delivered by You 2. Original author desires to license the Technology from You on the terms and conditions specified in this License. 3. Redistributions in binary form Should not reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 4. The names "Joe", "Curly", "Moe" and "The Three Stooges Foundation" May be used to endorse or promote products derived from this Original work without prior written permission, as they are in no way related. 5. There is no number 5. Seriously. In all Original works licensed under the CoPL, all necessary technical and social steps May be taken not to include, in any explicit way, the number 5. 6. Original author Must make and give away verbatim copies of the source form of this Package without restriction, provided that Original Author duplicates all of the original copyright notices and associated disclaimers. 7. Original author Must apply bug fixes, portability fixes and other modifications derived from the Public Domain or from the Copyright Holder. A Package modified in such a way shall still be considered the Standard Version. 8. No Standard versions of the Original work Must be protected by this license. Original authors Should not choose a different, saner licensing model for the distribution of any modifications they make. The CoPL should be taken as a retroviral license. THE SOFTWARE IS PROVIDED "AS IS," WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL YOU BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Definitions "You" means the original author of the work covered under the CoPL. "Original author" means you. "Thou" means God almighty. "May" means "Should not, no matter what". "Must" means "May". "Should not" means "Must". "Reasonable copying fee" means nothing. "Standard version" means a modified version of the Original work. DISCLAIMER The CoPL text, from the words "This is version" and up to and including this paragraph, is to be taken as a preamble, and will not be effective under any circumstances. All work licensed under the CoPL should be considered as licensed under the GNU General Public License version 2 or (at your option) any later version. It is not the task of this license to point you on where to get hold of said license.
Submitted by gwolf on Thu, 04/05/2007 - 15:26
I got a mail from the YAPC::Europe organizers telling me I won a book for registering early and sending in a submission (as I have previously told you). I was even more surprised to find out I am one out of two lucky winners! So my new book is Es lebe der Zentralfriedhof.
No news yet on whether my talk (Integrating Perl in a wider distribution: The Debian pkg-perl group) will be accepted... But this kind of incentive does push me towards attending even if I am not accepted - Of course, it depends on the University sending me there. But anyway, I'm a step closer to Vienna. Somebody wants to join over there?
Oh, and by the way: On my previous posting on this topic I linked to my conference proposal URL. Little did I know that this URL is private, accessible only to the Academic Committee and me. Yes, different from what I'm used to... but that's the way it works there.
Submitted by gwolf on Wed, 04/04/2007 - 22:59
Russell blogs about his new 22" cheap TFT monitor. You lucky bastard.
I use a 17" Dell LCD monitor at work (sorry, cannot recall the model), and I've been quite pleased with it. Granted, 1280x1024 isn't what I had gotten used to (1400x1050 on my previous laptop and previous work machine), but it does the trick - And for my current laptop, I went for a smaller machine, with a 12" wide-screen 1280x800 monitor. I still find the monitor somewhat small, and the missing 224 pixels _are_ noticeable - but the size is well worth it.
But what I've been playing at work with is changing the monitor orientation - This 17" Dell monitor can be set up vertically (1024x1280), and xrandr will merrily change the orientation. So far, I'm happy with this setup. I still feel there are some video-related quirks, and maybe the pixels are a bit off (i.e. black letters in a white background have a bit of a shadow), maybe it was visible as well in the regular configuration, but not as noticeable. But well, I feel it easier to work with for most of my work cases - For having a full-screen browser, each row is smaller and more rows fit on screen - It's quite pleasant. For doing Web development, having a horizontally split screen (one above of the other) between Emacs and the browser is quite natural. And when I use more than two frames (i.e. for following logfiles or debugging multi-factored breakages on servers ;-) ), well, they are small enough that it's similar to having the ol' regular layout.
I'd still like to get a second video card and monitor. I remember working that way in the job I left four years ago, and it was very comfortable.
BTW, Russell, for your needs I suggest you to try Ion. After all, who really needs to have a root window/background after all? :-)
Talks, papers and documents by category
Blog posts by category