OSCON 2010 attendee profile

Coding,Geekery,Linux,Uncategorized — July 11, 2010 at 12:43 pm

I finally got around to posting my OSCON 2010 attendee profile.

OSCON 2010

I wrote:

I work as a database administrator in a global team looking after a large financial institution’s relational database plant. For better or worse, this plant is 100% COTS; we’ll see what I can do to change that. While database administration in our group is awesome (computing + adrenaline = fun), I most enjoy the time spent writing internal tools in Perl and C, from compiled plugins for DB2 to automation solutions, and analyzing system faults in Linux. Evangelizing and teaching new trends, technologies, and best practices to my group is as important and enjoyable as the code I write, though. I love the reaction I get from disciples who finally realize and understand the power of git and zsh.

autocrap tools

Coding — July 10, 2010 at 4:59 pm

A coworker sent me this amusing rant about autotools which pretty much sums up my thoughts on the subject.

Now, if the result of all this crap, was that I could write my source-code and tell a tool where the files were, and not only assume, but actually trust that things would just work out, then I could live with it. But as it transpires, that is not the case

.

Something I just noticed when signing up for Heroku

Coding — May 17, 2010 at 9:14 pm

On the bottom of Heroku‘s Terms of Service, presented while creating an account, is:

This document is an adaptation of the excellent Google App Engine Terms of Service. The original work has been modified with permission under the Creative Commons Attribution 3.0 License. Google, Inc. is not connected with and does not sponsor or endorse Heroku or its use of the work.

I <3 Creative Commons.

But still find two-space-after-a-full-stop people funny.

Mutex vs. Semaphore

Coding,Geekery — January 24, 2010 at 1:21 am

I just want to say that this sequence of blog posts by Niall Cooling is a great, detailed discussion about mutexes and semaphores.

Excerpt from “Understanding Linux Network Internals”

Coding,Geekery,Linux — December 30, 2009 at 6:24 pm

I’m currently reading Christian Benvenuti‘s excellently written Understanding Linux Network Internals from O’Reilly which is helping to shore up my knowledge about how the networking stack is implemented in Linux. It’s a fantastic read so far, on course to match Linux Kernel Development by Robert Love, one of my all-time favorite books.

The following paragraph from Benvenuti’s book really made me step back and take a look at the bigger picture:

A device driver can also disable the egress queue before a transmission (to prevent the kernel from generating another transmission request on the device), and re-enable it only if there is enough free memory on the NIC; if not, the device asks for an interrupt that allows it to resume transmission at a later time. Here is an example of this logic, taken from the el3_start_xmit routine, which the drivers/net/3c509.c driver installs as its hard_start_xmit function in its net_device structure…

That passage is just brilliant. Count the occurrences of jargon there!

I guess i should read more arXiv papers to better understand how much larger the world actually is.

XSLT for OPML to XHTML List

Coding,Geekery,Linux — December 28, 2009 at 8:45 pm

The following some XSLT sufficient to transform an OPML file into a list, ready for you to edit and post:

<?xml version="1.0" encoding="UTF-8"?></p>

<p><xsl:stylesheet version="1.0"
  xmlns:xhtml="http://www.w3.org/1999/xhtml"
  xmlns="http://www.w3.org/1999/xhtml"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  exclude-result-prefixes="xhtml xsl xs"></p>

<pre><code>&lt;xsl:template match="body"&gt;
    &lt;ol&gt;&lt;xsl:text&gt;
</code></pre>

<p></xsl:text>
            <xsl:for-each select="outline">
                <li> <a href="{@htmlUrl}" ><strong><xsl:value-of select="@text" /></strong></a> - your text </li><xsl:text>
</xsl:text>
            </xsl:for-each>
        </ol>
    </xsl:template>
</xsl:stylesheet></p>

<p>

It isn’t 100% complete, but will get you a list of the form:

</p>

<ol>
    <li><a href="URL"><strong>Title</strong></a> - your text</li>
</ol>

<p>

In a sane interface to an operating system, you can run the following to produce transformed output, given the XSL above and an OPML file:

$ xsltproc extract.xsl google-reader-subscriptions.xml

Oh no. Bug reports via Twitter.

Coding,Geekery — October 29, 2009 at 8:18 pm

This was a post on the mailing list for the Moose object system for Perl:

Me on Twitter yesterday: “Had to hack Moose::Meta::Method::throw_error() to make it Carp::confess() to tell how an attribute constraint was being violated. Grrr.” and “T’was the attribute builder that did it.”. This isn’t the first time that I’ve had to muck with throw_error() to tell what’s going on. Only showing the stack from the caller and up makes debugging harder.

Oh no. Is the Internet going to stoop to using Twitter for bug reports and requests for enhancements? I certainly hope not. 140 characters of gripe an RFE does not make.

At least he didn’t have to shorten his posts by removing random vowels.

Auto-Dependency Generation in GNU Make

Coding,Geekery — September 19, 2009 at 9:13 am

I renovated some makefiles this week and found myself wanting to generate dependencies of a piece of code automatically from ‘gcc -M’. The existing Makefile had an explicit “make depends” step that would invoke ‘gcc -M’ for each of the source files. This is annoying because all generated Makefiles would have to be recreated if one file’s dependencies changed.

The GNU Make Manual has a section on automatically generating prerequisites, which only gets you part of the way.

I owe a good deal of gratitude to Tom Tromey and Paul D. Smith for creating and writing up instructions on how GNU Make can automatically generate dependencies for source files. They discuss even better ways of generating dependency files and build upon the GNU Make Manual method.

mbsync: success

Coding — August 7, 2009 at 2:58 pm

Thanks to Remko Tronçon for supplying a patch to mbsync to enable recursive synchronization.

mbsync supports bi-directional synchronization between a local Maildir structure and an IMAP server and is very pretty.

Free software causes airplane crashes?

Coding,Geekery — June 27, 2009 at 4:00 pm

From the January 7, 2009 New York Times article, “Data Analysts Are Mesmerized by the Power of Program R”:

“I think it addresses a niche market for high end data analysts that want free, readily available code,” said Anne H. Milley, director of technology product marketing at SAS. She adds, “We have customers who build engines for aircraft. I am happy they are not using freeware when I get on a jet.

Anne Milley, you’re doing it wrong.

Older Posts »
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. | Eric Garrido