O Manifesto Hackety

Há quase quatro anos, eu escrevi um ensaio chamado The Little Coder's Predicament (O Impasse do Pequeno Programador). Não é um ensaio incomum. Muitos como ele foram escritos. O ponto é: a programação já não é acessível para as pessoas como era com o Commodore 64. Eu também expus minhas exigências para um novo ambiente multi-plataforma de programação para iniciantes.

Nearly four years ago, I wrote an essay called The Little Coder's Predicament. It's not too unusual. Lots of others like it have been written. The point is: programming just isn't available to people like it was with the Commodore 64. I also outlined my requirements for a new cross-platform programming environment for beginners.

Este ensaio foi largamente linkado no Slashdot, Reddit, Lambda, etc. Eu recebi um monte de emails de pessoas tanto que concordaram quanto que discordaram. Ótimo. Legal. Boa gente todos eles! Ainda assim, nada mudou. Não mesmo!

The essay was widely linked on Slashdot, Reddit, Lambda, etc. I got lots of mail from people who both agreed and disagreed. Great. Nice. Good people all of them! And yet, nothing has changed. Not really!

Eu ouvi falar do kit de desenvolvimento do Xbox e da possibilidade de se programarem canais do Wii. O Playstation de fato tinha uma linguagem. Mas nada disso satisfez meu critério para uma plataforma de programação apropriada.

I've been told of the Xbox development kit and possible programming of Wii channels. The Playstation actually had a language. But none if it has met my criteria for a proper coding platform.

An Aside: We Care, But Not Enough

So, why has nothing been done about this? Maybe our interpreters and IDEs (ewww...) are good enough? Lots of people wrote into say that HTML and JavaScript are the new BASIC. NO!!! You can't be serious!!! So people have to write two languages now, which are intertwined in an almost inexplicable and unfathomable way? This doesn't do it.

Hello world should be one line.

In fact, downloading an MP3 should be one line!!

We just don't care right now, do we? Programmers have a paid gig. So business is happily slurping them up. Look at our books. Look at the programming sites. Programming is tightly coupled to business. Often the first example is an e-commerce site! Our books are like FIFTY DOLLARS!! For crying out loud.

This diatribe isn't about business being bad. Of course you need to feed your family and drive an Audi.

This diatribe is about adding some balance to the world of programming. Okay, so, let's take things into our own hands and bring hacking to the young folks.

The Bylaws of Hackety

Here are the rules by which Hackety Hack was established:

  • Beginners should be greeted to Hackety Hack by a cartoon character. (For the sake of argument, let's call this character: Hacky Mouse.)
  • Also, helpful sentences. And full sentences with a period.
  • Hackety Hack is fundamentally a browser and a programming language. For now, Gecko and Ruby.
  • I'm only using Ruby because I know it. Hopefully, more languages can be added!
  • Again, this isn't about Ruby, it's about simply offering a place for plainspeople to tinker with code.
  • IDEs are a disaster. Newbs should see only one non-scary window free of tree controls and pinned windows and toolbars.
  • As such, we want to stay away from project files and makefiles, the trappings of an IDE.
  • Hackety Hack also adds simple libraries for common things.
  • Common things are one-liners.
  • Keep args and options to a minimum.
  • In Ruby, blocks should be used to open up a method to more advanced possibilities.
  • Help files are clean, short, simple. Lots of short examples. No frames.
  • While all bug tickets are helpful and great, I just value tickets from beginners to a greater degree.
  • Hackety Hack is free and will remain free henceforth.

Beyond that... anything which makes life easy and fun for Hackety Hackers is definitely encouraged, even demanded.