chalst is currently certified at Master level.

Name: Charles Stewart
Member since: 2000-09-19 22:55:04
Last Login: 2013-02-06 18:26:17

FOAF RDF Share This

Homepage: http://www.textproof.com/stewart.html

Notes:

Contribute to free software? Well...

I'm a freelance copy-editor and consultant working from Berlin, working mainly for academic publishers in medicine, linguistics and mathematical sciences. Until May 2006 I was a post-doctoral theoretical computer scientist. I use and promote in my work many free software tools, such as pdftex, Gnu ghostscript and libart.

I'm in a 18 year love-hate relationship with UNIX, and I've been using GNU utilities since my very first days. I've been aware of Linux since about 1994, but only took the plunge of using it in early 1999. Today I use Debian Linux linux and FreeBSD most days, though I'm mostly using a non-free OS to provide my GUI...

I've been coding for 25 years (started on a Sinclair ZX80) but mostly for personal consumption or a few of my close colleagues. I have rather a preference for functional languages, though I use C, C++, Java and Objective C when they are appropriate, and I make a lot of use of Tcl for system admin tasks. I haven't made much in the way of substantial contributions to important free software projects.

I'm also in a pretty intense relationship with the TeX suite of document representation and typesetting software. If you are bored, you can send me an email and hear my tex* rant of the day.

My contact info is available from my website, linked to above. I post comments more often to Lambda the Ultimate than here; I don't often crosspost. I've got an OpenId account cunningly hidden as a subdomain on my website.

Projects

Articles Posted by chalst

Recent blog entries by chalst

Syndication: RSS 2.0
28 Oct 2011 (updated 28 Oct 2011 at 12:06 UTC) »
Feeding the backstabbers
mjg59 wrote about how his experience of talking about the Linux experience to the Linux community differed from someone else.

He cited an HN thread, Female FOSS dev quits tech industry due to harassment, and in particular this post from jxcole: I was going to start a rant about how this behavior is encouraged by the macho men online, but this was just one guy harassing her. "Due to harassment" reads as due to harassment from the community, but she gave in to one idiot. She let him win.

I answered as follows:
Well, I kind of agree with this in part, but it is often trotted out as a reason why it's the victim's fault. Let's see what's badly wrong with it by looking at things another way.

Standing up for what is right is not something that we weaker mortals should leave to the heroes. We have a breaking point, a point above which we can't take it. That does not mean we should not take risks to do what we find right. You should not be "disappointed" with the victim, but supportive, and we should be encouraging others to take these risks to do what is right as well. The more of us there are, the we achieve.


On a more general point, be aware that if you regard yourself as supportive of women in free software and on their side, but you are vocally undermining of said women when they face this sort of shit, be aware that you are a fair-weather friend and some sort of a backstabber.

Since I'm on the subject, let me plug Skud's long post, On being harassed: a little GF history and some current events.

Despite the event that lies behind this post, I'm more optimistic than I was a year or so ago that the free software community can sort itself out on this one, since the fair-weather friends do seem to sometimes be a bit more aware that there might be something wrong with their behaviour. Skud deserves special praise for her efforts that have made a positive difference, as does Matthew Garrett. who I suspect will not find himself unable to continue with free software.

C migration strategy
wingo asked, after summarising the safety issues with C:

I still write C. I work on implementations of safe languages -- languages that don't have the same kinds of fundamental vulnerabilities that C and C++ have. Eventually the amount of C in the world will stop growing, and decline as pieces that are now written in C will be written in Python, in JavaScript, in Guile: in short, in languages that don't launch the missiles when you try to write beyond the end of an array.

C has had a great run; we should celebrate it. But its time has passed. What is your migration strategy? How are you going to stop writing C?


I think the most conservative strategy is the best. I was impressed by Cyclone. I'm not sure the language is quite right for the job, and development seems to have halted some time back, but there have been alternatives proposed. I think Cyclone has shown that C can be modestly extended in such a way that we can statically for absence of undefined behaviours and many other desirable safety and correctness properties without nuisance or violation of the spirit of C. I hope that an obviously right safeness extension to C gets proposed and acquires momentum.

I actually had a dream about this, where I was reading a paper about an extension to Lua that allowed Cyclone+Lua programs to have whole-system correctness guarantees. I don't often remember my dreams, funnily enough.

Recentlog
nutella writes, of the site's recent glitches: Okay, now thanks to bad RSS feeds the Advogato front page is really messed up. The main target seems to have been the "Recent People Joining" list.

Bad RSS feeds? Really? I guess it's possible, but I assumed that StevenRainwater was backing out code that was not working, or has safety issues arising from the recent libxml2 migration.

6 Sep 2011 (updated 7 Sep 2011 at 08:22 UTC) »
Ex commands under Emacs
I've only recently noticed something rather useful for me: viper-mode's support for the ex command set, implemented in the viper-ex package as a part of the Viper vi-emulation package, is mostly orthogonal to the rest of Viper, meaning the Viper implementation of ex can be used without activating Viper mode. Hence you can bind the viper-ex function to a key in any Emacs mode and use commands like .,$s/wrong/right/g there. It is quite straightforward to use this to support vi-like macros, which are sometimes quite a bit briefer than their Elisp equivalents.

To get started, you need to import the viper-ex package, which defines the viper-ex interactive command, and which has some dependencies on the rest of Viper, ones which could be pruned without much difficulty. The ex commands are more pleasant with line numbering. The following Elisp will configure this, with viper-ex bound to C-:


(require 'viper-ex)
(require 'viper-keym)
(require 'viper-cmd)
(require 'linum)
(define-key global-map (kbd "C-:") 'viper-ex)
(global-linum-mode)

Note that several modes, like Org-mode, clobber C-: and so would need their maps redefined to use this.


Advogato's new libxml2-based text handler

This is new, I think. It seems to have fewer glitches than the old code, so kudos to StevenRainwater for getting this done.

276 older entries...

 

chalst certified others as follows:

  • chalst certified chalst as Journeyer
  • chalst certified cbbrowne as Journeyer
  • chalst certified graydon as Master
  • chalst certified lkcl as Master
  • chalst certified dan as Master
  • chalst certified slef as Master
  • chalst certified ncm as Master
  • chalst certified fxn as Journeyer
  • chalst certified Grit as Journeyer
  • chalst certified jch as Journeyer
  • chalst certified solovay as Master
  • chalst certified jameson as Journeyer
  • chalst certified Dougiamas as Master
  • chalst certified redi as Journeyer
  • chalst certified ploppy as Journeyer
  • chalst certified chorand as Journeyer
  • chalst certified davidw as Master
  • chalst certified pasky as Journeyer
  • chalst certified jsh as Master
  • chalst certified lukeg as Master
  • chalst certified mikehearn as Journeyer
  • chalst certified gobry as Journeyer
  • chalst certified juliux as Apprentice
  • chalst certified DeepNorth as Journeyer
  • chalst certified rotty as Journeyer
  • chalst certified minorityreport as Apprentice
  • chalst certified laburu as Journeyer
  • chalst certified Hossein as Journeyer
  • chalst certified wingo as Journeyer
  • chalst certified ptwithy as Journeyer
  • chalst certified argp as Journeyer
  • chalst certified henrique as Journeyer
  • chalst certified sindoc as Apprentice
  • chalst certified gnuandrew as Journeyer
  • chalst certified cddr as Apprentice
  • chalst certified lohengrin as Apprentice
  • chalst certified njerpe as Journeyer
  • chalst certified thatha as Journeyer
  • chalst certified acj as Journeyer
  • chalst certified thouters as Apprentice
  • chalst certified cheery as Apprentice
  • chalst certified rc as Apprentice
  • chalst certified nihed as Apprentice
  • chalst certified jmbr as Journeyer
  • chalst certified tx0 as Apprentice
  • chalst certified Skout as Apprentice
  • chalst certified wtanaka as Apprentice
  • chalst certified cvr as Journeyer
  • chalst certified jbaker as Apprentice
  • chalst certified neelk as Journeyer
  • chalst certified kadoubek as Apprentice
  • chalst certified jacopoc as Apprentice
  • chalst certified beraldo as Apprentice
  • chalst certified elmuerte as Apprentice
  • chalst certified shakthimaan as Apprentice
  • chalst certified snkr as Apprentice
  • chalst certified tinixtech as Apprentice
  • chalst certified ringmaster as Journeyer
  • chalst certified mutek as Apprentice
  • chalst certified Fefe as Journeyer
  • chalst certified ciropom as Apprentice
  • chalst certified baruch as Journeyer
  • chalst certified the9ull as Apprentice
  • chalst certified djcapelis as Apprentice
  • chalst certified moschel as Journeyer
  • chalst certified gregheartsfield as Apprentice
  • chalst certified smokris as Journeyer
  • chalst certified danielsmw as Journeyer
  • chalst certified GabrielSaldana as Journeyer
  • chalst certified quasi as Apprentice
  • chalst certified hugoduncan as Journeyer
  • chalst certified phauly as Journeyer
  • chalst certified pengjiayou as Apprentice
  • chalst certified zitterbewegung as Apprentice
  • chalst certified nikolay as Apprentice
  • chalst certified AlisonW as Apprentice
  • chalst certified vipulmathur as Apprentice
  • chalst certified qubit as Apprentice
  • chalst certified NgoThanhNhan as Apprentice
  • chalst certified CaptSolo as Journeyer
  • chalst certified salaty as Apprentice
  • chalst certified golbeck as Apprentice
  • chalst certified RpgFan as Apprentice
  • chalst certified skx as Journeyer
  • chalst certified lgerbarg as Master
  • chalst certified woggel as Apprentice
  • chalst certified karlberry as Master
  • chalst certified rosorio as Journeyer
  • chalst certified hulten as Apprentice
  • chalst certified AndreyGolub as Apprentice
  • chalst certified mmangino as Apprentice
  • chalst certified GJF as Apprentice
  • chalst certified Trollaxor as Apprentice
  • chalst certified dmarti as Master
  • chalst certified alvinj as Apprentice
  • chalst certified 8191 as Apprentice
  • chalst certified atai as Apprentice
  • chalst certified chrismear as Apprentice
  • chalst certified lp0 as Apprentice
  • chalst certified serverhorror as Apprentice
  • chalst certified jhelwig as Apprentice
  • chalst certified logicfee as Apprentice
  • chalst certified dennissheil as Apprentice
  • chalst certified marnanel as Journeyer
  • chalst certified gjhiggins as Apprentice
  • chalst certified ottok as Apprentice
  • chalst certified mehrabun as Apprentice
  • chalst certified ws4u as Apprentice
  • chalst certified nilarimogard as Apprentice
  • chalst certified berend as Journeyer
  • chalst certified DRMacIver as Apprentice
  • chalst certified xekoukou as Apprentice
  • chalst certified LaForge as Master
  • chalst certified Dianora as Journeyer
  • chalst certified ashams as Apprentice
  • chalst certified tylergillies as Journeyer
  • chalst certified bmericc as Apprentice
  • chalst certified chs as Apprentice
  • chalst certified gtklocker as Apprentice
  • chalst certified trohlfs as Apprentice
  • chalst certified raz as Apprentice
  • chalst certified ryuslash as Apprentice

Others have certified chalst as follows:

  • chalst certified chalst as Journeyer
  • cbbrowne certified chalst as Apprentice
  • dsf certified chalst as Apprentice
  • itamar certified chalst as Apprentice
  • compiler certified chalst as Journeyer
  • sye certified chalst as Master
  • fxn certified chalst as Journeyer
  • slef certified chalst as Journeyer
  • garym certified chalst as Master
  • nerdgir1 certified chalst as Journeyer
  • sdodji certified chalst as Journeyer
  • rkrishnan certified chalst as Journeyer
  • ekashp certified chalst as Journeyer
  • nixnut certified chalst as Journeyer
  • salmoni certified chalst as Journeyer
  • Grit certified chalst as Journeyer
  • jameson certified chalst as Master
  • graydon certified chalst as Master
  • jhermann certified chalst as Journeyer
  • wardv certified chalst as Master
  • ploppy certified chalst as Master
  • trage certified chalst as Master
  • pasky certified chalst as Master
  • dtucker certified chalst as Journeyer
  • mishan certified chalst as Master
  • aniruddha certified chalst as Journeyer
  • elliot certified chalst as Apprentice
  • pencechp certified chalst as Master
  • mdupont certified chalst as Journeyer
  • domi certified chalst as Journeyer
  • lsdrocha certified chalst as Master
  • mglazer certified chalst as Master
  • jarod certified chalst as Master
  • ebf certified chalst as Master
  • gobry certified chalst as Master
  • shooby certified chalst as Journeyer
  • jao certified chalst as Journeyer
  • mmangino certified chalst as Master
  • izham certified chalst as Journeyer
  • pipeman certified chalst as Journeyer
  • wspace certified chalst as Master
  • badvogato certified chalst as Journeyer
  • macmarcel certified chalst as Master
  • argp certified chalst as Master
  • sirinath certified chalst as Master
  • laburu certified chalst as Master
  • henrique certified chalst as Master
  • ScriptDevil certified chalst as Journeyer
  • redi certified chalst as Journeyer
  • mutek certified chalst as Journeyer
  • ciropom certified chalst as Master
  • mentifex certified chalst as Master
  • the9ull certified chalst as Master
  • ittner certified chalst as Master
  • 8191 certified chalst as Journeyer
  • ashams certified chalst as Master
  • Trollaxor certified chalst as Master

[ Certification disabled because you're not logged in. ]

New Advogato Features

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

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

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

X
Share this page