15 comments

[ 2.7 ms ] story [ 36.0 ms ] thread
Interesting idea, although it would be nice if Github optionally fixed spelling mistakes for you. Pull requests just for spelling errors have got to be annoying. (I just run flyspell in Emacs, so I never make spelling mistakes. Accept when I use the wrong word.)

The code is also pretty interesting. It's old-style Perl with indirect method calls, bareword filehandles, no "use strict", and so on... but then it uses modules that use Moose and MooseX::Traits. So we have a collection of scripts that look like they are from 1987, but that depend on Moose. Excellent!

(Actually, this inspired me to read the source code for Net::Twitter to see if it was using MooseX::Traits. Turns out they just copy-pasted from an older version of MX::Traits to get their traits functionality. Weird!)

Sorry the perl code is so poor, it was a post-clubbing quick-hack type project. I'll clean it up when I have some free time again :)
(comment deleted)
> Accept when I use the wrong word.

I can't tell... was that intentional?

Man, what a fantastic idea. Mildly interesting at the moment, but start running a static analyzer bot over everything, and its golden.

should probably be an opt-in service, but WOW it would rock.

I can't wait until I get a pull request trying to fix the spelling of my project name.
Or for "fixes" like colour/color or centre/center.
Is anyone else as amused as I am by the juxtaposition of "I was at jwz's club" immediately followed by "perl and regexes seemed like a good idea"?

(now he's got _two_ problems...)

So git becomes the presentation component of a spellchecker - a novel and interesting re-architecture.

You could do similar with peep-hole optimizations, bizarre bots that transform iteration to recursion (and vice versa), transforms to immutability, factoring-out common code, adding automatically constructed test cases ... I wonder what else.

It would be like helpful spam. EDIT or clippy "It looks like you're writing a loop. Would you like help?" Actually, this could be a channel for code analysis as a service. You subscribe (for fee or free), it's all hosted and updated remotely and git-based (github public/private, or self-hosted).

I've been working on something like this recently, but I guess this guy beat me to the punch. Here's my nearly-done rainy day code:

https://github.com/Miserlou/WhitespaceBot (Python)

I'd like to add some security fixing stuff too. There's plenty that can be done here!

Bots are the secret reason why Wikipedia actually works - there's no reason why we can't have the same benefits in open source software.

Your whitespace bot looks nifty :) Will you post the results when you start running it?