Search Results: "cowboy"

1 November 2022

Jonathan Dowland: Halloween playlist 2022

I hope you had a nice Halloween! I've collected together some songs that I've enjoyed over the last couple of years that loosely fit a theme: ambient, instrumental, experimental, industrial, dark, disconcerting, etc. I've prepared a Spotify playlist of most of them, but not all. The list is inline below as well, with many (but not all) tracks linking to Bandcamp, if I could find them there. This is a bit late, sorry. If anyone listens to something here and has any feedback I'd love to hear it. (If you are reading this on an aggregation site, it's possible the embeds won't work. If so, click through to my main site) Spotify playlist: https://open.spotify.com/playlist/3bEvEguRnf9U1RFrNbv5fk?si=9084cbf78c364ac8; The list, with Bandcamp embeds where possible: Some sources
  1. Via Stuart Maconie's Freak Zone
  2. Via Mary Anne Hobbs
  3. Via Lose yourself with
  4. Soma FM - Doomed (Halloween Special)

31 January 2022

Russ Allbery: Review: The Story of the Treasure Seekers

Review: The Story of the Treasure Seekers, by E. Nesbit
Publisher: Amazon
Copyright: 1899
Printing: May 2012
ASIN: B0082ZBXSI
Format: Kindle
Pages: 136
The Story of the Treasure Seekers was originally published in 1899 and is no longer covered by copyright. I read the free Amazon Kindle version because it was convenient. My guess is that Amazon is republishing the Project Gutenberg version, but they only credit "a community of volunteers." There are six Bastable children: Dora, Oswald, Dicky, the twins Alice and Noel, and Horace Octavius (H.O.), the youngest. Their mother is dead and the family's finances have suffered in the wake of her death (or, as the first-person narrator puts it, "the fortunes of the ancient House of Bastable were really fallen"), which means that their father works long hours and is very absorbed with his business. That leaves the six kids largely to fend for themselves, since they can't afford school. Clearly the solution is to find treasure. This is a fix-up novel constructed from short stories that were originally published in various periodicals, reordered and occasionally rewritten for the collected publication. To be honest, calling it a fix-up novel is generous; there are some references to previous events, but the first fourteen chapters can mostly stand alone. The last two chapters are closely related and provide an ending. More on that in a moment. What grabs the reader's attention from the first paragraph is the writing style:
This is the story of the different ways we looked for treasure, and I think when you have read it you will see that we were not lazy about the looking. There are some things I must tell before I begin to tell about the treasure-seeking, because I have read books myself, and I know how beastly it is when a story begins, "Alas!" said Hildegarde with a deep sigh, "we must look our last on this ancestral home" and then some one else says something and you don't know for pages and pages where the home is, or who Hildegarde is, or anything about it.
The first-person narrator of The Story of the Treasure Seekers is one of the six kids.
It is one of us that tells this story but I shall not tell you which: only at the very end perhaps I will.
The narrator then goes on to elaborately praise one of the kids, occasionally accidentally uses "I" instead of their name, and then remembers and tries to hide who is telling the story again. It's beautifully done and had me snickering throughout the book. It's not much of a mystery (you will figure out who is telling the story very quickly), but Nesbit captures the writing style of a kid astonishingly well without making the story poorly written. Descriptions of events have a headlong style that captures a child's sense of adventure and heedless immortality mixed with quiet observations that remind the reader that kids don't miss as much as people think they do. I think the most skillful part of this book is the way Nesbit captures a kid's disregard of literary convention. The narrator in a book written by an adult tends to fit into a standard choice of story-telling style and follow it consistently. Even first-person narrators who break some of those rules feel like intentionally constructed characters. The Story of the Treasure Seekers is instead half "kid telling a story" and half "kid trying to emulate the way stories are told in books" and tends to veer wildly between the two when the narrator gets excited, as if they're vaguely aware of the conventions they're supposed to be following but are murky on the specifics. It feels exactly like the sort of book a smart and well-read kid would write (with extensive help from an editor). The other thing that Nesbit handles exceptionally well is the dynamic between the six kids. This is a collection of fairly short stories, so there isn't a lot of room for characterization. The kids are mostly sketched out with one or two memorable quirks. But Nesbit puts a lot of effort into the dynamics that arise between the children in a tight-knit family, properly making the group of kids as a whole and in various combinations a sort of character in their own right. Never for a moment does either the reader or the kids forget that they have siblings. Most adventures involve some process of sorting out who is going to come along and who is going to do other things, and there's a constant but unobtrusive background rhythm of bickering, making up, supporting each other, being frustrated by each other, and getting exasperated at each other's quirks. It's one of the better-written sibling dynamics that I've read. I somehow managed to miss Nesbit entirely as a kid, probably because she didn't write long series and child me was strongly biased towards books that were part of long series. (One book was at most a pleasant few hours; there needed to be a whole series attached to get any reasonable amount of reading out of the world.) This was nonetheless a fun bit of nostalgia because it was so much like the books I did read: kids finding adventures and making things up, getting into various trouble but getting out of it by being honest and kind, and only occasional and spotty adult supervision. Reading as an adult, I can see the touches of melancholy of loss that Nesbit embeds into this quest for riches, but part of the appeal of the stories is that the kids determinedly refuse to talk about it except as a problem to be solved. Nesbit was a rather famous progressive, but this is still a book of its time, which means there's one instance of the n-word and the kids have grown up playing the very racist version of cowboys and indians. The narrator also does a lot of stereotyping of boys and girls, although Nesbit undermines that a bit by making Alice a tomboy. I found all of this easier to ignore because the story is narrated by one of the kids who doesn't know any better, but your mileage may vary. I am always entertained by how anyone worth writing about in a British children's novel of this era has servants. You know the Bastables have fallen upon hard times because they only have one servant. The kids don't have much respect for Eliza, which I found a bit off-putting, and I wondered what this world looks like from her perspective. She clearly did a lot of the work of raising these motherless kids, but the kids view her as the hired help or an obstacle to be avoided, and there's not a lot of gratitude present. As the stories unfold, it becomes more and more clear that there's a quiet conspiracy of surrounding adults to watch out for these kids, which the kids never notice. This says good things about society, but it does undermine the adventures a little, and by the end of the book the sameness of the stories was wearing a bit thin. The high point of the book is probably chapter eight, in which the kids make their own newspaper, the entirety of which is reproduced in the book and is a note-perfect recreation of what an enterprising group of kids would come up with. In the last two stories, Nesbit tacks on an ending that was probably obligatory, but which I thought undermined some of the emotional subtext of the rest of the book. I'm not sure how else one could have put an ending on this book, but the ending she chose emphasized the degree to which the adventures really were just play, and the kids are rewarded in these stories for their ethics and their circumstances rather than for anything they concretely do. It's a bit unsatisfying. This is mostly a nostalgia read, but I'm glad I read it. If this book was not part of your childhood, it's worth reading if only for how well Nesbit captures a child's narrative voice. Rating: 7 out of 10

23 December 2020

Sven Hoexter: Jenkins dynamically parameterized pipelins for terraform execution

Jenkins in the Ops space is in general already painful. Lately the deprecation of the multiple-scms plugin caused some headache, becaue we relied heavily on it to generate pipelines in a Seedjob based on structure inside secondary repositories. We kind of started from scratch now and ship parameterized pipelines defined in Jenkinsfiles in those secondary repositories. Basically that is the way it should be, you store the pipeline definition along with code you'd like to execute. In our case that is mostly terraform and ansible. Problem Directory structure is roughly "stage" -> "project" -> "service". We'd like to have one job pipeline per project, which dynamically reads all service folder names and offers those as available parameters. A service folder is the smallest entity we manage with terraform in a separate state file. Now Jenkins pipelines are by intention limited, but you can add some groovy at will if you whitelist the usage in Jenkins. You have to click through some security though to make it work. Jenkinsfile This is basically a commented version of the Jenkinsfile we copy now around as a template, to be manually adjusted per project.
// Syntax: https://jenkins.io/doc/book/pipeline/syntax/
// project name as we use it in the folder structure and job name
def TfProject = "myproject-I-dev"
// directory relative to the repo checkout inside the jenkins workspace
def jobDirectory = "terraform/dev/$ TfProject "
// informational string to describe the stage or project
def stageEnvDescription = "DEV"
/* Attention please if you rebuild the Jenkins instance consider the following:
- You've to run this job at least *thrice*. It first has to checkout the
repository, then you've to add permisions for the groovy part, and on
the third run you can gather the list of available terraform folder.
- As a safeguard the first first folder name is always the invalid string
"choose-one". That prevents accidential execution of a random project.
- If you add new terraform folder you've to run the "choose-one" dummy rollout so
the dynamic parameters pick up the new folder. */
/* Here we hardcode the path to the correct job workspace on the jenkins host, and
   discover the service folder list. We have to filter it slightly to avoid temporary folders created by Jenkins (like @tmp folders). */
List tffolder = new File("/var/lib/jenkins/jobs/terraform $ TfProject /workspace/$ jobDirectory ").listFiles().findAll   it.isDirectory() && it.name ==~ /(?i)[a-z0-9_-]+/  .sort()
/* ensure the "choose-one" dummy entry is always the first in the list, otherwise
   initial executions might execute something. By default the first parameter is
   used if none is selected */
tffolder.add(0,"choose-one")
pipeline  
    agent any
    /* Show a choice parameter with the service directory list we stored
       above in the variable tffolder */
    parameters  
        choice(name: "TFFOLDER", choices: tffolder)
     
    // Configure logrotation and coloring.
    options  
        buildDiscarder(logRotator(daysToKeepStr: "30", numToKeepStr: "100"))
        ansiColor("xterm")
     
    // Set some variables for terraform to pick up the right service account.
    environment  
        GOOGLE_CLOUD_KEYFILE_JSON = '/var/lib/jenkins/cicd.json'
        GOOGLE_APPLICATION_CREDENTIALS = '/var/lib/jenkins/cicd.json'
     
stages  
    stage('TF Plan')  
    /* Make sure on every stage that we only execute if the
       choice parameter is not the dummy one. Ensures we
       can run the pipeline smoothly for re-reading the
       service directories. */
    when   expression   params.TFFOLDER != "choose-one"    
    steps  
        /* Initialize terraform and generate a plan in the selected
           service folder. */
        dir("$ params.TFFOLDER ")  
        sh 'terraform init -no-color -upgrade=true'
        sh 'terraform plan -no-color -out myplan'
         
        // Read in the repo name we act on for informational output.
        script  
            remoteRepo = sh(returnStdout: true, script: 'git remote get-url origin').trim()
         
        echo "INFO: job *$ JOB_NAME * in *$ params.TFFOLDER * on branch *$ GIT_BRANCH * of repo *$ remoteRepo *"
     
     
    stage('TF Apply')  
    /* Run terraform apply only after manual acknowledgement, we have to
       make sure that the when     condition is actually evaluated before
       the input. Default is input before when. */
    when  
        beforeInput true
        expression   params.TFFOLDER != "choose-one"  
     
    input  
        message "Cowboy would you really like to run **$ JOB_NAME ** in **$ params.TFFOLDER **"
        ok "Apply $ JOB_NAME  to $ stageEnvDescription "
     
    steps  
        dir("$ params.TFFOLDER ")  
        sh 'terraform apply -no-color -input=false myplan'
         
     
     
 
    post  
            failure  
                // You can also alert to noisy chat platforms on failures if you like.
                echo "job failed"
             
         
job-dsl side of the story Having all those when conditions in the pipeline stages above allows us to create a dependency between successful Seedjob executions and just let that trigger the execution of the pipeline jobs. This is important because the Seedjob execution itself will reset all pipeline jobs, so your dynamic parameters are gone. By making sure we can re-execute the job, and doing that automatically, we still have up to date parameterized pipelines, whenever the Seedjob ran successfully. The job-dsl script looks like this:
import javaposse.jobdsl.dsl.DslScriptLoader;
import javaposse.jobdsl.plugin.JenkinsJobManagement;
import javaposse.jobdsl.plugin.ExecuteDslScripts;
def params = [
    // Defaults are repo: mycorp/admin, branch: master, jenkinsFilename: Jenkinsfile
    pipelineJobs: [
        [name: 'terraform myproject-I-dev', jenkinsFilename: 'terraform/dev/myproject-I-dev/Jenkinsfile', upstream: 'Seedjob'],
        [name: 'terraform myproject-I-prod', jenkinsFilename: 'terraform/prod/myproject-I-prod/Jenkinsfile', upstream: 'Seedjob'],
    ],
]
params.pipelineJobs.each   job ->
    pipelineJob(job.name)  
        definition  
            cpsScm  
                // assume admin and branch master as a default, look for Jenkinsfile
                def repo = job.repo ?: 'mycorp/admin'
                def branch = job.branch ?: 'master'
                def jenkinsFilename = job.jenkinsFilename ?: 'Jenkinsfile'
                scm  
                    git("ssh://git@github.com/$ repo .git", branch)
                 
                scriptPath(jenkinsFilename)
             
         
        properties  
            pipelineTriggers  
                triggers  
                    if(job.upstream)  
                        upstream  
                            upstreamProjects("$ job.upstream ")
                            threshold('SUCCESS')
                         
                     
                 
             
         
     
 
Disadvantages There are still a bunch of disadvantages you've to consider Jenkins Rebuilds are Painful In general we rebuild our Jenkins instances quite frequently. With the approach outlined here in place, you've to allow the groovy script execution after the first Seedjob execution, and then go through at least another round of run the job, allow permissions, run the job, until it's finally all up and running. Copy around Jenkinsfile Whenever you create a new project you've to copy around Jenkinsfiles for each and every stage and modify the variables at the top accordingly. Keep the Seedjob definitions and Jenkinsfile in Sync You not only have to copy the Jenkinsfile around, but you also have to keep the variables and names in sync with what you define for the Seedjob. Sadly the pipeline env-vars are not available outside of the pipeline when we execute the groovy parts. Kudos This setup was crafted with a lot of help by Michael and Eric.

4 July 2014

Raphaël Hertzog: My Free Software Activity in June 2014

This is my monthly summary of my free software related activities. If you re among the people who made a donation to support my work (168.17 , thanks everybody!), then you can learn how I spent your money. Otherwise it s just an interesting status update on my various projects. Debian LTS After having put in place the infrastructure to allow companies to contribute financially to Debian LTS, I spent quite some time to draft the announce of the launch of Debian LTS (on a suggestion of Moritz M hlenhoff who pointed out to me that there was no such announce yet). I m pretty happy about the result because we managed to mention a commercial offer without generating any pushback from the community. The offer is (in my necessarily biased opinion) clearly in the interest of Debian but still the money doesn t go to Debian so we took extra precautions. When I got in touch with the press officers, I included the Debian leader in the discussion and his feedback has been very helpful to improve the announce. He also officially acked the press release to give some confidence to the press officers that they were doing the right thing. Lucas also pushed me to seek public review of the draft press release, which I did. The discussion was constructive and the draft got further improved. The news got widely relayed, but on the flip side, the part with the call for help got almost no attention from the press. Even Linux Weekly News skipped it! On the Freexian side, we just crossed 10% of a full-time position (funded by 6 companies) and we are in contact with a few other companies in discussion. But we re far from our goal yet so we will have to actively reach out to more companies. Do you know companies who are still running Debian 6 servers ? If yes, please send me the details (name + url + contact info if possible) to deblts@freexian.com so that I can get in touch and invite them to contribute to the project. Distro Tracker In the continuation of the Debian France game, I continued to work together with Joseph Herlant and Christophe Siraut on multiple improvements to distro tracker in order to prepare for its deployment on tracker.debian.org (which I just announced \o/). Debian France Since the Debian France game was over, I shipped the rewards. 5 books have been shipped to: Misc Debian work I orphaned sql-ledger and made a last upload to change the maintainer to Debian QA (with a new upstream version). After having been annoyed a few times by dch breaking my name in the changelog, I filed #750855 which got quickly fixed. I disabled a broken patch in quilt to fix RC bug #751109. I filed #751771 when I discovered an incorrect dependency on ruby-uglifier (while doing packaging work for Kali Linux). I tested newer versions of ruby-libv8 on armel/armhf on request of the upstream author. I had reported him those build failures (github ticket here). Thanks See you next month for a new summary of my activities.

One comment Liked this article? Click here. My blog is Flattr-enabled.

31 March 2011

Pau Garcia i Quiles: A wish a day 7: make emerge a generic package manager for Windows

A while ago I said Koen from Emweb made an interesting proposal at FOSDEM about emerge, the KDE Windows build tool. Yesterday, Jaros aw Staniek and I reaffirmed our commitment to emerge . Today, I d like to go a bit further: let s bring more developers to emerge by opening it up to other projects. Keep reading! What is emerge, why is it important and what was Koen s proposal? Fact: Microsoft Windows is very different to Unix in regards to development. On Unix platforms -that includes Linux and Mac OS X-, software is usually installed to /usr: applications in /usr/bin and /usr/sbin, libraries in /usr/lib, headers in /usr/include, common resources in /usr/share, etc. Also, dependency management is usually something you can count on: when you install kdelibs5-dev in Ubuntu, it will automatically install libqt4-dev, kdelibs5-data, libfreetype (runtime), etc That makes setting up a development environment a very easy task: look for shared libraries, header files, etc in the common places and you will probably find them. On Windows there is nothing like that. When you want to compile an application, you need to provide (build and install) all its dependencies, and you need to tell Visual Studio where to find everything. Even CMake usually needs some help in the form of a hint for CMAKE_PREFIX_PATH. As you may imagine, building KDE, which has more than 200 third party dependencies and tens of modules (and with the move + split to git, many more) becomes an almost insurmountable task. Emerge to the rescue: inspired by Gentoo s emerge, Ralf Habacker, Christian Ehrlicher, Patrick Spendrin and others (yours faithfully included) developed a tool which downloads the source, configures, builds, installs and packages KDE and its dependencies. It makes a world of difference when building KDE. Actually, it makes building KDE on Windows possible. Once more: thank you very much guys, impressive tool. There are two well-differentiated parts in emerge, the engine and the recipes . The engine takes care of downloading the sources (tarballs, checkouts from Subversion and git clones, etc) , configuring and building for the usual build systems (QMake, CMake, NMake makefiles, etc), installing, bundling packages together and much more. All that for four compilers (MSVC2008, MSVC2010, MinGW32 and MinGW-W64). It s the equivalent to Gentoo s emerge, Debian s dpkg + debhelper/cdbs or Homebrew and MacPorts for Macintosh. The recipes are the package-specific instructions a particular piece of software needs to build: what s the name of the tarball? URL to download from? What versions are available? What build system to use to configure and build? Does it need any Windows-specific patch? They are written in Python using some helper modules emerge provides (the debhelper-like part I mentioned above). Currently, there are about 70 recipes in emerge, organized in our portage tree (bear in mind the names are taken from Gentoo but the internals of the tool are completely different). With those 70 recipes, we are able to build most KDE modules. Problem is to provide all the optional features, we are missing probably 200 to 250 more recipes. Given that KDE on Windows is quite short on developers, we have to decide: either we fix bugs and improve the integration of KDE on Windows, or we keep track of the dependencies. I won t lie: for KDE on Windows, I d rather focus on development than on packaging. Given that writing and maintaining recipes does not strictly require programming skills (although they help :-) ), during my talk at FOSDEM I kept asking people to join the KDE on Windows team as packagers, even if you know little to nothing about software development. If you think about it, that s what we have in Linux distributions: there are hundreds (thousands?) of packagers in Debian, Fedora, openSuse, etc which take care of the recipes to build software developed by someone else ( upstream , in the parlance). What we have in KDE on Windows, where we are the KDE packagers, the KDE developers (upstream) and the emerge developers, is actually an anomaly. Then Koen took the microphone and said: why don t you open emerge to other projects? And I there I realized he was damn right We have developed an awesome tool to download, configure, build, package and install third party software on Windows, to manage dependencies, to update, etc. For four compilers, no less. The engine of emerge is not really tied to KDE. We already have a lot of recipes for software which is not KDE specific: openssl, Qt, bzip2, libpng, mysql, etc. I see no actual reason to disallow Gnome, GStreamer, OpenSceneGraph, LibreOffice and many others in (assuming someone wants to take care of them, of course no, do not look at me! I don t have time!). Currently, the only barrier preventing those recipes in is emerge is developed in the KDE repository and you need a KDE developer account to commit your recipes. That s about it. There is also a perception problem: if emerge is developed in KDE, it s because it s a KDE-thingy, right? . Well, no. One way to avoid that would be to graduate emerge from KDE and make it an independent project, one in which the current developers have accounts, and new developers get an emerge project account instead of a KDE account to commit recipes. Please note graduating does not mean expelling , firing or anything peyorative. It does not mean that emerge developers (engine and recipes) are worse than KDE developers, or less KDE developers than our god David Faure: in KDE, we consider Debian, Fedora, openSuse, etc KDE packagers as equals, they are also KDE developers and many of them are in the KDE eV (funny thing is I am not). My wish for today: think of one application or library you d like to see in Windows and become its maintainer in emerge for Windows. For now, let s do this in the kde-windows mailing list and if this idea succeeds, then we ll talk about graduating. You could also try to add support for a new compiler (OpenWatcom, Intel C++, etc) but that s a lot more more and it s not a priority now. PS: Yes, I know about CoApp, Microsoft s similar effort, with some magic involved. I ve been watching and trying it since day 1. I m really interested. It s just not there yet and I do not have spare time to help Garrett (hey Microsoft, hire me and I ll have all the time in the world! :-) )

3 January 2008

Andrew Pollock: [life] Post-op, Day 0

I'm exhausted, but very relieved. The important news: the operation was a success, the surgeon, Dr D. Craig Miller, bless his cowboy boots, managed to spare the aortic valve (he'd given us a 99% probability of being able to do so beforehand), so we don't have to be concerned about pig/cow valves for now, and mechanical valves later. He was reluctant to say that her own valve will last her the rest of her life, but it should last a "long time, long enough to have a family". When I left the hospital, Sarah was in intensive care, extubated, conscious, and talking to me, but very very tired. She's got a daunting array of things coming out of her at the moment (a lot of which I couldn't see because she had blankets over her). It's been a long day, so I decided to head home, rather than potentially keeping her awake for the next two ICU visiting times tonight. Here's the time line that I recorded: 05:15 - Arrive at the hospital to go through the admissions process 06:35 - I leave Sarah shortly before they're going to wheel her off to the operating room (I'll get into my fun at the end). 09:30 - I ask for an update, and they tell me she's going on bypass 10:30 - It looks like they can save the aortic valve 12:25 - Still doing the valve stuff, making a new sinus of Valsalva 14:15 - I ask for another update, everything is going okay, someone will come out to talk to me 14:55 - Still going, at least another hour until they start to close up 15:15 - Closing up, surgeon will be out to talk to me 16:10 - Surgeon comes out to talk to me about how the operation went 16:50 - I got to see Sarah briefly in the ICU, she was still intubated, but conscious and seemed to respond to my voice ~18:15 - Extubated. Spoke with her briefly. She was very tired, and I decided to let her rest for the remaining visiting times and go home and get some rest myself So what the surgeon had to say for himself was very interesting indeed. He didn't end up doing exactly what he'd said previously, based on how things looked once he actually got in there. He said that the sinuses of Valsalva were paper thin. So thin, you could see the blood flowing through them. They were about 0.5mm thick, rather than the normal 1.5mm thick. Sounds a bit like a disaster waiting to happen. Apparently it's not possible to detect this with imaging, you have to get in there and see it for yourself. He didn't end up removing as much of the aorta as previously planned (specifically the part around the transcending arch) as whilst the diameter was a bit bigger, the tissue apparently looked healthy. He said the part of the aorta he did remove (preceding where the braciocephalic, left common carotid and left subclavian arteries branch off) was "cheesy" in consistency, so it's not like she just happened to have an enlarged aorta, no aneurysm, and way too thin sinuses of Valsalva. There was definitely some unhealthiness to the aortic tissue, just not as bad as thought from the imaging. So it's all good. I think she'll spend a day or two more in the ICU before getting moved to a normal ward, but it's too soon to say what's going on with all of that. There's some elevated risk of stroke due to blood clots for the next 24-48 hours, but she's on blood thinners, so it shouldn't be a problem. The day was pretty crazy for me. I'm not sure if it was stress, or the stomach bug that's been doing the rounds of Central Park Apartments, but I went to bed last night at 11pm, was up again at 1am, with shall we say, a gastrointestinal upset, and up again at 3am, throwing up. We got up at 4:15am to get to the hospital. I felt really nauseous all morning, and was an absolute wreck while I was in with Sarah when they were putting a peripheral line in her before they wheeled her off to the OR, so I bailed about 5 minutes early and just made it to the bathroom in time to throw up again. I haven't eaten all day, just tried to keep the fluids up. I'm debating having some plain boiled rice for dinner, or waiting until tomorrow to have something easy on the stomach. I definitely felt a lot better as the day progressed, but my stomach is still pretty tender. Sarah and I ate pretty much the same stuff yesterday, so I don't think it can be food poisoning. She tends to have a very sensitive stomach at the best of times, so I'd expect her to be showing problems before me if it was food poisoning. But enough about me, I'll live. I hope it's not a stomach bug, as I don't want Sarah to come down with it as well, now that she's on the road to recovery from this surgery. Many thanks to Shona, Briana, Laura, and Christina for spending time with me throughout the day to keep me occupied. ICU visiting hours are every even hour between 10am and 10pm, for thirty minutes at a time, so I plan on spending all day at the hospital tomorrow. Hopefully I can find a good spot to get some EVDO coverage, so I can update things as the day goes along, rather than at the end of the day when I get home, like I had to today. Hopefully I'll sleep better tonight than I did last night.

31 December 2007

Matthew Palmer: Cowboys

I am very saddened by the state of the IT industry. It seems like nearly everyone who works in or around IT is, to put it bluntly, a cowboy. There appears to be very little desire for actually helping people; instead all I see is a very large number of people circling around looking for the next person they can make a quick buck off. In short, most of the IT industry is composed of people who are little better than shysters and conmen. As a case in point, I recently had contact with someone who is trying to get an online store running. They've been trying, unsuccessfully so far, for several months. They've been screwed over by basically every IT-related person they've had contact with so far. Now, after all of their suffering, they've finally gotten in contact with me. Most of their money is gone, and they're deeply behind schedule. So I'm left trying to pull a miracle job in little time and with little money. Yes, I could shoo them away, because they're asking for more than they can afford, but there's a little spark of helpfulness left in me, and I'll try to get them going as best they can with what they've got. If they'd found someone competent right at the beginning, they'd have been fine. They started with sufficient cash and time to produce a good end result. But chancing upon someone decent doesn't have good odds in IT; it's a bit like winning the lottery. This story isn't unique in my personal experience, by any stretch. There seems to be a near-endless procession of non-technical people who come out of their encounters with the IT industry battered and bruised, whether it be on the web, in their business infrastructure, or their personal computing needs. While it's easy to blame the customer for not managing themselves and their computing properly, I don't think it's fair to lay the blame on them -- to me, that's like blaming the patient for dying on the operating table, when the responsibility must lie, prima facie, with the surgeon. It's the surgeon, after all, who is the (presumably) trained and experienced professional in the relationship, and it is his responsibility, primarily, to ensure that everything goes smoothly[1]. Depressingly, I don't see much of a way around this problem. The few IT people who did care could try and group together, build some sort of a rating or "membership implies quality" system, educate the consumer, and try and drive the cowboys out, but guilds and trade associations are frowned upon these days, smacking (as they do) of restraint of trade and collusion. Government regulation never seems to produce anywhere near the desired result, while hoping that the consumer will either rise up and demand quality, or will gain sufficient knowledge to be able to pick a cowboy is a complete non-starter, for the same reason as teaching everyone basic surgical techniques isn't going to improve the quality of hospitals.
There's an ad that used to be on Australian TV for a certain bank, where a guy is at a party and he's asked by another of the partygoers what he does for a living. As he replies, "I work in banking", the entire party goes silent and stares at him in horror. It's only when he says, "It's OK, I'm with $BANK_BEING_ADVERTISED" that everyone looks happy again and continues on with their party. Although I've never had that particular experience, I'm almost getting to the point where I'm not happy telling people what I do for a living. This is because in any non-trivial collection of people, there's almost certainly going to be at least one person who has had such a poor experience with the IT industry that they're either going to take it out on me, ask me interminable questions about computers, or will just hate me on principle. It's unfortunate that brothels don't have pianos any more; if I were to say "I play piano in a whorehouse" I'm pretty sure the response would be "lawyer or sysadmin?". As Edsger Dijkstra said back in 2001, "The average customer of the computing industry has been served so poorly that he expects his system to crash all the time, and we witness a massive worldwide distribution of bug-ridden software for which we should be deeply ashamed." Are you?
1. That isn't to say that the patient (or client) has no responsibility in ensuring a positive outcome -- if you go bungee jumping the day after open heart surgery, or never send your web developer any content, you're very unlikely to have a positive outcome. However, it seems to me as though the only customer consultation done by most IT "professionals" on taking on a project is a Homeresque "I only have two questions. 'How much?' and 'give it to me'".

11 October 2007

Andrew Pollock: [life] The fun doesn't stop

We went to see Sarah's cardiologist the week after she was discharged from hospital, and he said that looking back over all of the echocardiograms that have been taken in the 18 months or so that he's been following her, it looks like her aortic aneurysm has gotten a little bit bigger. It's still below the size that they'd normally operate at, but he said that in his opinion it should be repaired before attempting another pregnancy, to play it safe. He even said that afterwards, Sarah could go back to doing triathlons, which is a big step back towards a normal life. So on Monday, we had an appointment with Dr Craig Miller, who is apparently the best cardiac surgeon in the US, and one of the top three in the world, when it comes to aortic aneurysm repair whilst being able to save the heart valve. We'd done a heap of reading up on Dr Miller before the appointment, and the cardiologist's clinic administrator had told us about him as well. Apparently he's a real character. He certainly looked it from the staff photo (linked above). In reality he looked much more like this. But he's certainly a real cowboy type. We saw his nurse practitioner on Monday before we saw him, and his nurse practitioner was this moderately pierced, cowboy boot wearing, "y'all" speaking kinda guy, who really knew his stuff. In fact we exhausted all of our questions that we had for Dr Miller on him before we even saw Dr Miller, because he was running a bit late with the previous patient. This is where Sarah's got a pretty detailed write-up of what they're planning on doing. They're going to replace more of the aorta than they would otherwise (because the enlargement seems to be continuing further up the aorta), which makes the surgery a little more involved, in that they're messing with the arteries that lead up to the brain, so they've got to some more funky bypass work, and lower her core temperature so her brain copes with the blood flow being monkeyed with. Dr Miller was very softly spoken, and a lot older looking than I'd expected, given the whole cowboy hat thing. He seemed really nice and thorough, and explained everything. He also showed us what a mechanical valve looked like. The reason sparing the valve is so important is that the alternatives if they can't are either a pig's heart valve or a mechanical one. Both have their drawbacks. A pig's valve won't last the rest of Sarah's life. She'd need to have valve replacement surgery at some point down the track (I think they said about 8 years, although they wear out faster in younger people). A mechanical valve requires you to take blood thinning drugs for the rest of your life. One of the side effects of these drugs are birth defects. It's also audible from outside the body. We got to see (and keep) a sample of the Dacron tubing that they use to replace the part of the aorta they're removing. I was totally taken aback by the diameter of it. I hadn't sat down and really thought about what 4.4cm (which is about what her aneurysm is currently at) really looked like. The operation is likely to take 8 to 10 hours. I'm not looking forward to that waiting game. Dr Miller said the procedure, whilst sounding pretty bloody scary has about a 1% risk. I'm not exactly sure what that is a risk of though. Sarah's booked in for January 3 next year. The road ahead is still long.

28 June 2007

MJ Ray: Last Chance for the Working Draft of the Web Content Accessibility Guidelines 2.0

As a result of commenting on some problems in CUBA's Jam Busting June site I was made aware of the Working Draft of WCAG 2.0 or the Not-Working Draft, as I think it could be called. If you want to comment on it yourself, you had until the end of 27 June 2007 (US EDT, I assume). Put simply, it's too confusing for both web developers and site managers. Even the Quick Reference is rather long for practical use. It's very indirect - it's not even clear whether xhtml over HTTP is preferred. I submitted a comment about that - also rather disappointing to find that W3C appear to fail to use stripslashes() when needed. I submitted another comment about the backwards step of allowing Javascript-required sites to be called accessible. Javascript is dangerous for accessibility and bad for power consumption. What the blue blazes is an AJAX-only webmail doing as one of the accessibility examples? I see that notable sites have already criticised WCAG 2.0. While I don't necessarily agree with everything they say, this is a very disappointing situation. Will WCAG 2 be rescued? Are accessible-friendly webmasters screwed if WCAG 1.0 is replaced by 2.0 in our national standards? It lets all the Flash-only cowboys claim WCAG-conformance as long as they note their site relies upon Flash. (Question: is a site still WCAG-2.0-accessible if it requires Flash to view the note that says it requires Flash?) Should we start looking towards MACCAWS, WHATWG, expanding IETF to cover the web, or starting another democratic/meritocratic standards body?

10 May 2007

Joey Hess: ticket stub

Cowboy Junkies
Bijou Theatre, Knoxville

29 October 2006

Evan Prodromou: 7 Brumaire CCXV

It's a beautiful day here in wt:Los Altos Hills, wt:California, where my parents live. It's been unseasonably warm this week, ever since we hit the ground on Thursday, and we've been enjoying the warm weather to the fullest. Amita June is storing up vitamin D (a precious commodity in the Canadian north) for use during the rest of the autumn and winter. We had an early flight into wt:San Francisco from Montreal on Thursday. There's only one direct flight from Trudeau airport to SFO on Air Canada per day, and it takes off at 8:30AM. Maj is pretty convinced that we need to take direct flights with no stops while we have the baby; I'm mixed on the issue. I think a break every 2-3 hours makes it easier on all of us -- everybody gets some exercise and a little change of scenery. But Maj wisely points out that the takeoff and landing is the hardest part of flying with a little one, so direct flights minimize those. I dunno. Anyways, the 6 hour flight was uneventful, except for people coming up to us to comment on how good our baby is. The movie was "Click", which as I've mentioned before is the worst movie of 2006 bar none. It was pretty disappointing to see it come on -- I like watching movies on the plane. It was bright and sunny at SFO when we landed, and my mom met us at the baggage claim. We had a bit of a struggle getting out to the short-term parking -- for some reason the elevator queue at SFO is out of control; probably all the people loading and unloading luggage from the elevator. In any event, they now have elevator attendants and structured lines to make sure things go in an orderly, if slow, fashion. Back at the house, we had a late lunch of tuna salad and then Maj, Amita June and I did a big group nap. My mom had set up a toddler bed for AJ, and she's been sleeping in it since we got her. I think she's just turning the corner where having a little more space in the bed for herself is more important than nursing all night. Which I think is better for all three of us. Thursday night my dad came home from work in wt:Morgan Hill and we had take-out burritos with my parents, my sister-in-law Pam and Amita's two cousins Elena (3) and Tessa (10 months). The three girls got along like gang-busters; Elena seems to like being the older sister showing the younger girls what to do. tags:

Jagi's Birthday Party Friday night we went up to the City for my brother Nate's annual Halloween party. Nate lives on a precipitous incline in North Beach, the Italian-Beatnik section in the northeast of San Francisco with steep hills, great caf s and a significant dearth of parking. We managed to get Amita June down to bed for the night, gave her grandparents far more instructions than were actually needed, and then sped off into the night. We were running late, but we stopped on the way to pick up Maj's brother Brian, who lives in Noe Valley. It was the first time we'd seen his new apartment and we probably took longer than necessary there, but we finally got off towards North Beach around 7:30PM. And... we drove and drove. Every street I drove down was packed, and I kept doing U-turns and trying alternate routes to get where we were going. Finally, on Van Ness Avenue at California Street, we got stuck in a gridlock that wouldn't move at all. Friday nights are pretty bad for traffic in San Francisco, but at this point we sat through 5 red-and-green light cycles without any motion whatsoever. Unable to turn, unable to go forward, unable to go back. When traffic finally started moving again, we saw what the problem was: the last dregs of the Critical Mass rally were just passing through. Critical Mass is a bike rally that happens on the last Friday of each month in San Francisco and elsewhere; hundreds of bike riders take over streets and block traffic. It's really fun if you're riding; it's infuriating if you're driving. We drove down further on Van Ness to go through the Broadway Tunnel into North Beach, but it was blocked by... Critical Mass! They'd turned about and come to block our way again. This time, I was able to do a U-turn and get over to Nate's house through side streets. We had a good time at the party itself. Nate and his roommates have been having a Halloween party for years, but increased size and complaints from landlord and neighbors have made them move the party to a nearby bar, Woody Zip's. With two stories, two bars and a dance floor, it was just about the right size for their event. Nate was dressed up as Buzz Lightyear from "Toy Story"; Brian had a huge fat suit and a sumo-wrestler outfit. Maj and I were millionaires, with tiaras and top-hats. We all looked pretty good. Woody Zip's even let the guys bring their own Jagermeister machine, affectionately known as "Jagi". They got the machine for one of their Halloween parties a few years ago, and they've made special costumes for it each year (this year: Spongebob Squarepants). We had a shot of Jager and toasted the machine's maturity, then moved on to karaoke and dancing. But only for a while; by 10PM we had to start heading home. We worried quite a bit about Amita June, but when we got back she was asleep in the arms of her Pappou in the TV room. The "parent curfew" is a little hard to deal with, but on the bright side it makes sure you can find babysitters so you can go out in the future. tags:

Baby Circus Last night we went to visit our friends Zach and Wendy in wt:El Cerrito, in the East Bay. Zach and Wendy have been our friends for... oh, more than 10 years now, I guess. They had a handsome little cowboy son two years ago, on the same weekend as my bachelor party in wt:Las Vegas (making it easy to remember his birthday... better than I remember that weekend, is for sure). They have a nice house just near the BART station, with lots of room... although about 2/3 of it is taken up with Wyatt's toys. Wendy is a Web developer for Nolo Press, the do-it-yourself law book publisher. Zach is a hard-working computer genius, one of my favorite people to work with, but he's hung up his spurs to be a full-time stay-at-home dad and go back to school. We had dinner at the Kensington Circus Pub, just up the hill from Wendy and Zach's house. It was a great place; an English-style pub with Fuller's ESB on tap, and a kids' play area underneath the dartboard. Amita June and Wyatt ran around playing while we had fish-and-chips and burgers. It's a great recipe for getting young parents to come to your restaurant; I wish more places would use it. We spent the rest of the night talking about wikis and web sites and all the opportunities there are available to share information in creative ways. We dragged home after Wyatt's bedtime, and Amita fell asleep in the car on the way back home. Greatest thing in the world! tags:

I learn fire I had drinks with Hugh McGuire, founder of Librivox, at La ka on St. Laurent last Wednesday. It was a real good time -- Hugh has had similar experiences "leading" that public domain audiobook project that Maj and I have had with Wikitravel. Another project he's working on Collectik.net, an interesting tool for sorting and organizing podcast streams. I have to admit that I've been skipping the podcast wave -- much like I skipped blogging before it -- and I don't listen to a lot of podcasts. But Hugh got me interested, and now I'm looking around at it. I find there are a lot of interesting tools for podcast catching for Linux; even Rhythmbox, the Gnome music player, can handle podcasts. I'm finding it interesting to listen to them; DestinyLand and Chris DiBona's FLOSS TV are both interesting, as well as the CBC podcasts. I haven't figured out how to listen to Vu d'ici, though -- m-c doesn't seem to have an RSS feed with just the podcasts in it. Or am I missing something? tags:

6 April 2006

Martin F. Krafft: Sawasdee, Thailand!

The day of our departure to Thailand was remarkably stressless, I even found the time for lunch and coffee with one of my dearest friends. We had plenty of time catching the flight to Vienna, and if it wasn't for the filthy Danish sex tourist who kept burping, snorting, and generally being a bother next to me on the fliught from Vienna to Bangkok, I would have said the trip was perfect. We got in to the city in the afternoon, found a fair hotel next to Sukhumvit Road and headed off to run errands, cashing traveller cheques, drinking juices, and walking around. Just ready for sunset, we got up to the 59th floor of the amazing Banyan Tree Hotel, and two further flights of stairs led us to the roof-top bar. That evening, we went through Patphong and Soi Cowboy, the two centres of the infamous Thai ladyboys, and after a beer or two, we headed for the hotel and drifted away almost immediately. Our plans to head for Lumphini Park in the morning to participate in the Tai Chi sessions were foiled by oversleeping, but we can do Tai Chi on other days. Rested, we headed for the train station to send off the bag with clothing via train cargo to Chiang Mai, where it will (hopefully) be waiting when we arrive in two weeks' time. This message reaches you from Chinatown, we're catching something to eat before going 3rd class to Ayuthaya. Tourists usually take a taxi for 1000 Baht (about 20 EUR), we pay 15 Baht each and will be in touch with the locals. This being my first post on my trip towards Myanmar, so there's nothing much to write. One thing I found noteworthy is the change in the way taxis work these days. Two years ago, I learnt to insist on taxis starting their meters rather than quoting a price up front. Last year, my cousin and I made first experiences with taxi drivers refusing to go with the meter. This years it's nearly impossible; apparently too many tourists didn't think enough and now the drivers are unwilling to give up the profit from ripping them off. Example: Sukhumvit to Hua Lamphong station was 69 Baht in a taxi (our hotel told the driver to behave), and I sure we would have been quoted 200 Baht with a possibility to bargain the driver down to 140 or so. Anyway, that's it form today. I'll write again from Ayuthaya or Khorat.

10 March 2006

Philipp Kern: Meme Time: Which Sci-Fi Crew Would You Best Fit In?

Nothing stunning, given my preferences. I would have expected Enterprise D, but well, I guess those two are just two similar. ;-) I never saw Babylon 5, Firefly, Farscape, Cowboy Bebop or Battlestar: Galactica, though. You scored as Nebuchadnezzar (The Matrix). You can change the world around you. You have a strong will and a high technical aptitude. Is it possible you are the one? Now if only Agent Smith would quit beating up your friends.
Enterprise D (Star Trek)
75%
Babylon 5 (Babylon 5)
75%
Nebuchadnezzar (The Matrix)
75%
Millennium Falcon (Star Wars)
75%
Deep Space Nine (Star Trek)
63%
Serenity (Firefly)
63%
FBI's X-Files Division (The X-Files)
63%
Andromeda Ascendant (Andromeda)
56%
Moya (Farscape)
56%
Bebop (Cowboy Bebop)
56%
Galactica (Battlestar: Galactica)
38%
SG-1 (Stargate)
38%
Your Ultimate Sci-Fi Profile II: which sci-fi crew would you best fit in?

Axel Beckert: Which SciFi crew would I best fit in?

In m³’s online pamphlete, I found a new quiz I immediately had to take:

Which sci-fi crew would you best fit in? Before taking the quiz I already wondered which possible answers it offers and what I’d expect as result. The only thing I knew so far was that The Matrix was featured in the quiz since m3 scored as Nebuchadnezzar. Farscape came to my mind. During the quiz some of the questions seemed quite obvious on which crew they would count resp. not count. Since I don’t like military, I knew that Star Trek crews won’t be on the top of my list… Well, it seems as if had guessed quite well:

You scored as Moya (Farscape). You are surrounded by muppets. But that is okay because they are your friends and have shown many times that they can be trusted. Now if only you could stop being bothered about wormholes.
Moya (Farscape)
88%
Babylon 5 (Babylon 5)
81%
Deep Space Nine (Star Trek)
75%
Serenity (Firefly)
69%
Enterprise D (Star Trek)
69%
Nebuchadnezzar (The Matrix)
69%
Millennium Falcon (Star Wars)
63%
Andromeda Ascendant (Andromeda)
56%
FBI's X-Files Division (The X-Files)
56%
SG-1 (Stargate)
56%
Bebop (Cowboy Bebop)
50%
Galactica (Battlestar: Galactica)
44%

Your Ultimate Sci-Fi Profile II: which sci-fi crew would you best fit in? (pics)
Created with QuizFarm.com.

Interestingly the Enterprise D from Star Trek TNG is also in the list and not that far down as I expected it. So there seems to be at least a slight correlation between what SciFi series/movies I like most (Farscape, Star Trek TNG and DS9, the early Star Wars movies, The Matrix, Babylon 5) and with which crew’s philosophy I agree most as well as which ships appeal most to me (Millennium Falcon, Moya and many ships from B5, TNG and DS9) and vice versa: I’m not that big fan of Battlestar Galactica nor Star Gate neither do I like the design of the ships showing up there. Another two things I noticed by this quiz: I should perhaps once have a look at Firefly which I haven’t seen yet nor do I know much about it. And I probably won’t find Cowboy Bebop that appealing if I would watch it once. BTW: Series I missed in the list: Star Trek TOS, SeaQuest DSV and Futurama.

8 December 2005

Martin F. Krafft: When in Vienna, do as the Viennese do

I wish that Americans, when travelling outside of their country, would show at least the effort of adapting to the local culture, and not assume that their conduct is welcome everywhere. It would make it easier (for me at least) to respect their presence in days of the negative omnipresence of the Excited States of America in the media. Vienna is a city with strong cultural values and tradition. Tourists wearing jumpers to bars (or not taking their cowboy hats off), being loud and obnoxious in the streets, yawning loud and openly while talking, or making fun of locals in traditional clothing don't help the reputation. I assume those knowing me to be able to place the above in the right light. I know and respect many Americans. But those generally try to do as the locals do.