rickscott: Bemused-looking picture of Rick (Default)

Audrey Tang is far and away the most awesome hacker I've ever had the privilege to have worked with. She's best known for creating Pugs, a perl6 implementation in Haskell. Though it's now semi-retired in favour of the newer implementations that it had a role in inspiring, it represented a huge leap forward and a quantum shift in Perl6 development at a time when enthusiasm around Perl6 was sorely flagging. She was the first CPAN contributor to have uploaded 100 modules. She's the key figure behind Perl 5's internationalization, as well as the i18n of many, many other individual pieces of software. She was part of the committee that designed the Haskell 2010 standard, and has made innumerable other contributions to the open source community.

I never got seriously involved with Pugs, but many of the things Audrey did with it shaped my thinking around open source, community, and how we should collaborate. First was the idea that a project should be optimized for fun (-Ofun1), not for control, or strict adherence to the founder's vision, or anything else. Second, whereas many open source projects keep a very tight rein on who has commit access and make getting a commit bit an arduous process, Audrey aggressively gave out commit bits to anybody who happened to wander by in the general vicinity of Pugs. Got a great idea? Here's a commit bit, go implement it. Notice something missing in the docs? Here's a commit bit; go add it. Ranting in IRC that something's not working? Here's a commit bit; go fix it. Extending this trust makes people feel welcome and want to contribute. It fosters an air of community instead of making prospective new participants feel as though they are looking at climbing (or worse, building) a pyramid.

Audrey would likely demur at my calling her brilliant, but it's a fitting descriptor for her. She has a unique and penetrating insight into code and an uncanny knack for encouraging the people who write it. I count myself as fortunate to have been able to work with her and to be part of a few of the communities she's had such a profound impact on.

1 -Ofun: -O is the compiler option that tells it how you want your code optimized. Audrey's presentation on -Ofun [pdf] talks more about how to maximize the amount of fun in your software project.

Ada Lovelace Day is an international day of blogging about women in science and technology. You can find more information at the Finding Ada website.

rickscott: Bemused-looking picture of Rick (Default)

I admit it. One of the best moments of my undergrad degree came when our small group of thesis students was bandying about topics. When I mentioned I was set on doing decompilation, there was a long, awkward silence. One of the other students, apparently speaking for the entire group, said "We wouldn't touch your research subject with a 10-foot pole."

As smugly optimistic as I was, though, my thesis on automated decompilation would never have seen the light of day without the work of Dr Cristina Cifuentes -- particularly her PhD thesis on Reverse Compilation Techniques.

Dr Cifuentes' research runs head-on into some of the most thorny theoretical problems of computer science -- problems like the Halting Problem, which define the limits of what computers can actually do. Amongst other things, she's also worked on binary translation, static analysis, and parallelization, topics that people sometimes shy away from because of their reputation for both practical and theoretical difficulty. But this work yields awesome real-life applications, like programs that find bugs for you by reading your source code, and holds out the promise of many more, like tools that can scan compiled binaries for security bugs, or general-purpose decompilers that can read in a binary originally written in C and 'decompile' it to Ruby source code instead.

I think we forget how many women were involved in pioneering work in the early days of computing (eg the ENIAC programmers) and how many are in the thick of pioneering work today. The hardcore research isn't just done by bearded guys in white lab coats -- women are pushing the boundaries and making the future of computing possible, too.

Ada Lovelace Day is an international day of blogging about women in science and technology. You can find more information at the Finding Ada website.


rickscott: Bemused-looking picture of Rick (Default)
Rick Scott


Canadian philosopher-geek who's profoundly interested in how we can collaborate to make technology work better for everyone. He's an incorrigible idealist, an open source contributor, and a staunch believer in testing, universal access, and the hacker ethic.


RSS Atom

Expand Cut Tags

No cut tags

Style Credit

September 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 2012
Page generated Mar. 29th, 2017 01:34 am
Powered by Dreamwidth Studios