Latest articles

A Professional Coder With A Dynamic Language...

...is like a professional racer with automatic transmission.

Read more


Stupid Git

Jesus christ, I just want to shoot Git in the face.

I wish Git had a face so I could shoot it in the face.

I wouldn't even be trying to use the stupid thing if TortoiseGit wasn't so damn much better than TortoiseHg.

Of course, with Hg I'd be having all that fun dealing with Python's separate incompatible runtimes bullshit.

Ggrrrraaaaaaaa!!

Read more


Fuck SOPA *and* The Moronic SOPA Blackout Day

SOPA/PIPA is obviously Orwellian idiocy. In fact, it's so moronic, that even most of its former supporters ended up abandoning it. It's dying, it's been dying, and chances are it'll be dead by the end of the month.

And yet, we're having a big internet blackout day to stop it. But, let's take a moment to fully appreciate how this is supposed to work: Today, all the sites that are opposed to this fleeting carcass of a bill are supposed to shut down thereby forcing their users towards...the sites of those few companies who would embrace the Orwellian SOPA/PIPA? Umm...ok?

Alright, suppose I'm wrong and these fascist bills do manage to pass - just as the corrupt douchebag politicians passed the DMCA years ago. Am I really supposed to believe that's immutably "Game Over: They Win"? Well it will be if Americans repeat their reaction to the DMCA; that is, to roll over and say "Oh, ok, a bunch of out-of-touch politicians said this is so, so that's just how it is and we'd all better comply."

Jesus fuck, has nobody learned anything from Henry David Thoreau?

When an unjust law is passed, especially by corrupt out-of-touch lawmakers, you have a moral obligation to disregard it, if not flagrantly break it.

(I seem to remember the Germans rolling over for unjust leaders about, oh, 70-some years ago. Look how wonderfully their subservience turned out. Gee, heaven forbid anyone should have enough of a moral compass to rock the boat.)

If people (especially those in justice or law enforcement) aren't demonstrably willing to stand up and take a big steaming piss on unjust already-passed laws, then crap like SOPA/PIPA/DMCA/etc. are only going to keep popping up. Eventually, some of that shit flung against the wall is going to stick. And no "awareness day" stunt, no matter how big or small, is ever going to do a damn thing to stop that pattern.

This is still supposed to be a country run by the people, not by "the corporate entities" or even the lawmakers. So don't go pulling another DMCA: No matter what happens with SOPA/PIPA, have the balls - and the basic integrity - to exercise the power that you are constitutionally entitled to.

And as far as the ill-conceived SOPA blackout day: Fuck, I have better things to do today than deal with self-crippled sites and play "follow the leader".

Read more


Introducing DuckFuck (v0.2): D-based FuckFuck and More!

Filed under "Things I've put far too much effort into"...

Introducing DuckFuck: A flexible, modular D-based interpreter/conversion system for FuckFuck and other BrainFuck-based languages. Includes the DuckFucker: A command-line tool to interpret any supported language.

Currently supported:

Languages:

Backends:

  • Compile time conversion to D
  • Runtime Interpreter

Sample usage:

// Hello World! Interpreted brainfuck at runtime. brainfuck(" This is a basic hello world in brainfuck >+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.>>>++++++++[<++++>-] <.>>>++++++++++[<+++++++++>-]<---.<<<<.+++.------.--------.>>+. Neat huh? "); writeln(); // Echo. Converted from fuckfuck to D at compile-time. auto echoThis = "Echo this!"; mixin(fuckfuck!(echoThis, null, " /* This is 'echo' in fuckfuck */ knob /* read input to current tape cell */ ARSE /* Inside the loop */ COCKKNOB /* write output at current tape cell, read input */ B U T T /* repeat until current tape cell is \x00 (ie, end of file - automatically sent when input string is exhausted) */ "));

or:

$duckfucker hello.bf Hello World! $duckfucker echo.ff < input.txt > output.txt

Input and output can be from (mix and match!):

  • stdin/stdout (default)
  • named array
  • generator/sink function

Links:

Read more


You Are Wrong: Tourette's is NOT Swearing

Alright, I'm more than fed up with this. It's long past time to get this straight:

Tourette's Syndrome has nothing to do with swearing

Really.

Hollywood is wrong (gee, how could that be?!), and your friends are wrong. Tourette's is not swearing. Involuntary swearing is an entirely different thing known (by those few people who actually have a slight clue what they're talking about) as Coprolalia.

Even the most basic Internet research would have made that blatantly clear:

And yes, while it does say that a small percentage of people with Tourette's also have Coprolalia, it also makes it clear that Coprolalia isn't even limited to Tourette's patients at all. Tourette's is not swearing.

If you don't trust WebMD or Wikipedia, then go check a formal medical book. Really. Do it. Now. Prove me wrong.

So can we as a society finally grow up and move on now?

Read more