*** HACKER KEY GUIDE ***

*** Version 2 (Soul Sucking MegaCorp Edition) ***

Table of Contents:

About the Hacker Key Guide
Geek Code Pluses
Geek Code Minuses
Hacker Key Design Goals
Format of a Hacker Key Entry
Modifiers (Variables)
The Guide Itself
Displaying your Hacker Key
Blame
Feedback
License
History

About the Hacker Key Guide

The Hacker Key Guide was inspired by Robert Hayden's excellent Geek Code which has been a long time hacker favorite.  However, the Geek Code has not been updated in a long time, and although the commercialization of the Internet has washed away much of the old hacker environment (MUDs, BBSes, DOS...), we must attempt to keep hacker traditions alive, by reimplementation if needed.

Let's look at a sample Geek Code Block:

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d- s+: a- C++ US++++ P++ L+++ E--- W++ N+ o K- w--
O+ M+ V PS++ PE- Y PGP+ t+ 5 X R tv+ b+ DI+ D+
G++ e++ h--- r+++ y+
------END GEEK CODE BLOCK------

The Geek Code does many things well:
However, there are also some problems with the GeekCode:
The Hacker Key Guide hopes to keep the good aspects of the Geek Code and improve on some of the bad ones.
Design goals for the Hacker Key Guide are:
  1. A normal key with a few extra category choices should fit on one 80 column line of text.  Ideally, it should fit with enough room for the Hacker Key URL to fit on the same line, to give people some shot at figuring out what the heck it is.
  2. Ensure that the most commonly used symbols are valid PGP key symbols also.  For compatibility with the Geek Code we will use more symbols which aren't valid, but will make sure the most commonly used ones are.
  3. Kepe the Guide up to date.  I can only promise I will either keep the guide up to date or turn it over to someone who will.   Time will tell if I can keep that promise.

Format of a Hacker Key Entry

A Hacker Key is constructed as follows:
So for our example, the Unix category would be filled out as: u7SL

Modifiers

The most commonly used Geek Code "variables" seem to be "ranges" (@ and ()) and "wannabe"  (>).  To follow Design Goal #2, the following changes have been made for the Hackey Key:
The remainder of the symbols are compatible with the Geek Code.   These are listed for compatibility with the Geek Code, though they are very much optional and are invalid characters in a PGP key anyway.  For completeness here they are:

The Guide Itself


--- begin GUIDE

v - Version - Please include the current version as the first entry in 
your Hacker Key.

The current Hacker Key version is v2.

Part I - What kind of hacker are you?

sw - Software Hacking

9 - I'm Bill Joy, Eric Raymond or JWZ.
8 - I am an uberhacker; I wrote my shell/debugger/editor/compiler in 
    30 lines of code.  Other people use and love my hacks.
7 - Live to Hack, Hack to Live!
6 - There is nothing better than an elegant hack.
5 - Average, I've made a few software hacks in my day.
4 - I've hacked code once or twice, software isn't my thing.
3 - I don't hack software at all.  I'm a structured programmer!
2 - I'm not even a programmer, much less a hacker!
1 - I'm a manager and/or work at IBM.

Indicate your preferred hacking language

C - C(++)		P - Perl	Y - Python	U - Unix Shell
B - (Visual) Basic	J - Java	A - Ada		S - Assembler	
L - Lisp		G - Prolog	M - Scheme	F - Fortran


hw - Hardware Hacking

9 - I am Steve Wozniak.
8 - I have my own eeprom burner in the basement.  I won't use what I 
    didn't make myself.
7 - I have had my hardware designs used in actual products.
6 - I've toyed with a few hardware drawings, but never made my own hardware.
    I know PC hardware like the back of my hand.
5 - I built every PC in my home from the ground up.  Newegg knows me by 
    my first name.
4 - I've built a PC or two in my day. It's just easier to get them pre-made.
3 - People ask me what USB stands for, I know a thing or two about hardware.
2 - I know how to put my computer together without a diagram.
1 - Dude!  You got a Dell!


ln - Language Hacking

9 - I am J.R.R. Tolkien.
8 - I've had my pet language used and studied by others.
7 - People who don't know me have used words I've coined.  I've written 
    my own artificial language.
6 - I am known for certain words or phrases, my friends use my linguistic 
    creations regularly.
5 - I've coined a phrase or made up a new word or two.
4 - I'm a grammar nazi; people hate to talk to me because I correct them 
    mid-sentence.
3 - I hate people who don't follow the basic rules of $LANG, which I 
    strive to speak properly.
2 - I'm illiterate and/or can only speak IM: l8r sk8r!
1 - I am a Slashdot editor.


pr - Programming - Hey, some hackers think they're programmers ;-)

9 - I only program in ADA, and LOVE IT!
8 - I'm currently programming my IDE-brain connectivity link.
7 - I do a lot of programming, and spend a lot of time in my IDE of 
choice.
6 - I'm definitely a programmer, not a hacker.  I like it basic, a text 
editor and a compiler/debugger.
5 - I'm your average programmer, I prefer to think I'm a hacker
4 - I will sacrifice elegant design for performance or size
3 - Comments are for sissies!  If it was hard to write, it should be 
hard to read.
2 - I can write hello world, but my programs don't do that much.
1 - I can't program at all.  

Indicate your programming methodology

O - Object Oriented	S - Structured		A - Aspect Oriented
U - Unified		R - Rational Unified	P - Procedural
F - Functional


ck - Cracking - The malicious act of hacking into systems that gets all 
     the headlines; what non-technical people consider 'hacking'.

9 - I work for @Stake or write for 2600.
8 - I write the 'sploits that all the kiddies use.  I would be a 
    professional black hat except for this economy.
7 - Black Hat - Cracking is old hat to me.  I only compromise a system 
    if it looks like a challenge.  Script kiddies worship me.
6 - Grey Hat - Some of my cracking is for good, some is for evil.  It 
    really depends on who benefits from what I do.
5 - I try to break into systems occasionally.  It's for educational 
    purposes, that's it!
4 - White Hat - I study exploits because I'm the one who has to patch 
    the systems when they get released.  I subscribe to CERT.
3 - I've tried once or twice, but it felt wrong.  I stick to warez.
2 - I don't ever try to break into a computer, that's against the law!
1 - I barely know how to crack an egg!


ma - Mathematics - Mathematics plats a large part in computing, and 
hence hacking.  Indicate your highest completed Math course.

9 - Advanced Calc/Theory
8 - Differential Equations
7 - Calc II
6 - Probability/Statistics
5 - Linear Algebra
4 - Calc I
3 - Pre-calc
2 - I finished HS Math and realized that was enough for me
1 - I'm angry at numbers.  There's like, too many of 'em and stuff.

Please send me your math category proposals/revised levels as I stopped 
my math education at Calc II :-)


II.  OS Wars

u - Unix

9 - I am Ken Thompson.
8 - I am a guru.  Everyone asks me for help with their Unix 
    machines. Unix is more than an OS, it's my religion!
7 - I use exclusively Unix on all my computers.  If it's not Unix, it's CRAP!
6 - I really like Unix; I've installed Linux once or twice but primarily 
    use Windows or MacOS for my daily needs.
5 - Unix is okay, it's just a tool like any other.
4 - Mac OS X is as close to Unix as I like to get.
3 - I dislike Unix, it's too cryptic, and what's this shell crap!  The GUI
    is far superior!
2 - Unix is an abomination.  It's one of those dead OSes that doesn't realize
    it's dead yet.
1 - I am Bill Gates.

Insert your most (least) favorite *nix OSes:

L - Linux	S - Solaris	I - Irix	A - AIX
F - FreeBSD	N - NetBSD	O - OpenBSD	B - Other BSD	
H - HP-UX	M - MacOS X	T - Tru64


w - Windows

9 - I work for Microsoft, they call me code monkey....well just monkey.
8 - I install every beta build of the newest Windows release I can 
    get off the 'net.  I want to work at Microsoft.
7 - I've developed my own Windows programs, VB and .NET 0wn me.
6 - I really like Windows; I have my desktop theme and screensaver 
    just they way I want them.
5 - Windows is OK, I'm pretty indifferent about it.
4 - When are they going to stop stealing other people's ideas and come up 
    with something INNOVATIVE?  I still run it though, what else is there?
3 - I keep Windows on my hard drive only to test new hardware I buy. 
    Linux rulez!
2 - I have totally annihilated Windows off my hard and haven't looked back!
1 - I've never actually run Windows, I am completely untainted!

Insert your favorite Windows OS(es):

D - MS-DOS/Windows 3.x	N - Windows NT		T - Windows 2000
W - Win95/98/Me		C - Windows CE		X - Windows XP


m - MacOS (X).  Let's face it kiddies, OS 9 is dead.

9 - I am Steve Jobs.
8 - I've written books about programming with Cocoa and Carbon.  See you 
    at the WWDC!
7 - I love it!  The power of Unix and a slick aqua GUI are the 
    height of computing. I've written the occasional app or two.
6 - I like the new MacOS.  Finally stability AND ease of use!
5 - MacOS X is okay.  A nice GUI front-end for a Unix OS.
4 - I don't like it.  There's not enough emphasis on the CLI.
3 - I hate it.  The GUI takes up half my RAM and it still locks up on me 
    even though it's UNIX based!
2 - I despise MacOS X.  I miss "Classic" MacOS (<= 9).
1 - I despise MacOS X.  I miss the Apple ][.


l - Linux.  The free OS that changed computing.  For GNU/Free Software 
    folk, use g/l (GNU/Linux) instead.

9 - I am Linus Torvalds or Alan Cox.
8 - I am an active kernel hacker/package maintainer.  If Linux didn't 
    exist, I might have to leave my house once in a while!
7 - I'm a power user.  I've developed my own mini-distribution on a 
    whim.  I can't count how many kernels I've compiled.
6 - I really like Linux.  I've tried a few distributions and am almost 
    decided on one.  Windows sucks.
5 - Linux is okay.  
4 - I don't like Linux.  It still relies too much on the command line.
3 - I hate Linux.  It's not really UNIX, it's a cheap knock off.  This 
    whole open sores thing will never work!
2 - I despise Linux and its commie supporters.  Thank God there's a 
    great company like Microsoft around and a great OS like Windows!
1 - I work for SCO.

Include your favorite distribution.  As any good zealot knows, there can 
be only one!

R - Red Hat	S - Slackware	G - Gentoo	L - Lycoris	Y - Yoper
M - Mandrake	D - Debian	U - SuSE	K - Knoppix	O - Other
F - Linux from Scratch 		C - Fedora Core 


i - IDE/Text Editor environment

As everyone seem to have their own favorite text editor, numbers will 
both show your IDE/integration interest as well as your fave environment.

9 - Xcode			C - Eclipse			T - Textpad
8 - Visual Studio		D - Delphi
7 - CodeWarrior			E - ee
6 - emacs			F - (v)FTE
5 - pico/nano			G - GNUstep
4 - jove			H - HTE
3 - jed				N - NEdit
2 - vi (and clones)		J - jEdit
1 - ed				N - Notepad (sick)
0 - cat				P - Powerbuilder

Again, I am just a Unix programmer, so feedback is welcome here :-)


III Life & Lifestyle - "work friendly" section

e - Education - Indicate your highest level.

9 - I'm omniscient, you insensitive clod!
8 - PhD.
7 - Master's Degree.
6 - Bachelor's Degree.
5 - Trade/Technical school/Associates
4 - Some college
3 - High school diploma.
2 - Started high school but dropped out.
1 - Elementary/Middle school.
0 - We don't need no education.


t - Television - most hackers do not watch much TV (that's time they could 
    be hacking!) but for completeness it is included.

9 - I'm Max Headroom.
8 - I've long since given up other things like a job, talking to other 
    people and leaving my house.  I have an IV and dialysis so I don't have 
    to worry about pesky bodily functions.
7 - I watch TV religiously.  The television is never shut off on my house.  
    I have a generator so I can watch TV even when there's a power outage!
6 - I watch a lot of TV.  I have a TiVo just so I can get every show 
    of my favorite series!
5 - I watch TV a few hours a day, and have a few favorite shows.
4 - I watch TV once in awhile.  There's just not much good on anymore.
3 - TV is trash.  I'd rather read a book or go for a walk.
2 - TV is just the (Devil|Government|Big Business)'s tool of control!  
    Throw out your TV!
1 - I'm Amish

Hacker TV Series:

T - Star Trek	N - TNG		D - DS9		V - Voyager	E - Enterprise
B - Babylon 5	S - Stargate SG1		H - Xena/Hercules
L - LEXXX	F - Farscape	R - Red Dwarf	X - The X Files
M - Monty Python		A - Adult Swim


b - Books.  Great variation here, as some hackers are very avid readers, 
    while others limit themselves to the web.

9 - I'm obsessed with reading.  I actually write my own 
    short stories/poetry as well as reading books.
8 - I'm kind of a bookworm, I try to read a book a week/month.
7 - I read actual books, not only technical references.
6 - I pick up the odd book.  I know my way around the local Borders.
5 - I read books occasionally.  You mean besides O'Reilly books?  Oh, then no.
4 - I don't read books, the web is enough of a reading outlet for me.
3 - I haven't read a book since college.
2 - I haven't read a book since high school.
1 - I'm illiterate (See ln1).

Hacker Favorite Books:

H - HitchHiker's Guide	I - Illuminati Trilogy	T - Works of Tolkien
D - The New Hacker's Dictionary		O - O'rielly technical books
A - Isaac Asimov


en - Encryption - The only real obstacle between your data and a 
cracker, or is it?

9 - I have my own encryption algorithm named after me.
8 - I can crack Enigma in my head.
7 - I use GnuPG for all email and have many cryptographic filesystems on 
    my hard drive.  If you want my data you're going to have to earn it!
6 - I use encryption frequently.  Want to sign my key?
5 - I like and use encryption.
4 - I don't use encryption.   I have nothing to hide.
3 - Encryption is needless overhead.  If you use it, you must have 
    something to hide!
2 - Only terrorists use encryption.  The government should have back 
    doors to all encryption mechanisms.
1 - Only the government should be able to use encryption to be able to 
    keep its secrets safe!


g - Gaming.  Be it console or PC, video gaming is popular among some hackers.

9 - I am John Carmack.
8 - I've developed the occasional game.  People consider me to be a 
    gaming guru.  People disconnect from servers when they see me log on.
7 - I play all the time, when I'm not hacking, eating or sleeping.
6 - I play often, I have a console or two and/or quite a few PC games.
5 - I'll pick up the occasional game.
4 - I used to play video games back in the 8-bit days, but not anymore.
3 - I don't like video games, that's time I could be hacking.
2 - I don't like video games, that's time I could be sleeping.
1 - I suck at video games.

Genre Categories:

R - Graphical RPG	A - Action/Adventure	S - Sports
Z - Puzzle		T - Text Based/MUD	H - Shooter

Console Categories:

C - "Classic" (i.e. dead) systems - Nintendo [S]NES, Sega
M - Modern systems (PS(2), XBOX, GameCube).	
H - Handhelds (Gameboy/PSP)		P - PC Gamer


IV Life & Lifestyle - "work unfriendly" section - Yes people working at
evil megacorporations have been chastised for having these sections in
their hackerkeys, so we will move this section to the end.  Note that
ALL sections are OPTIONAL, but this one in particular you may want to
leave out.

a - Age.

[0-9][0-9] - Actual Age		
[0-9]X - I only feel like updating my age once per decade!
F - 100+ (Old Fart)
I - Immortal
N - N/A, or None of your business


s - Sex - If we didn't have it, where would the babies come from?

9 - I'm Jenna Jameson.
8 - I'm a nympho.  If I don't have sex every 6 hours I get totally antsy.
7 - I've had more than my share of sex.  I'm a stud!
6 - I've had sex more than a few times.  Still out there in the dating 
    scene so let's not get into numbers.
5 - I've had sex.  Next subject.
4 - I haven't had sex, not that I haven't had the opportunity but I'm 
    saving myself.
3 - I haven't even gotten past second base.  Once my face clears up I'm
    gonna get some though!
2 - Sex is dirty!  Save it for someone you love!
1 - I'm a member of the clergy.  None for me, thanks.

0 - I'm a eunuch.
$ - I'm a prostitute.

M - Male	G - Gay/Lesbian		S - Single	T - Transvestite
F - Female	B - BiSexual		R - Married	D - BDSM
W - Swinger


r - Religion.  Generally Hackers believe in something, even if it's just 
    their favorite OS.  Others have an actual opinion about a Higher Power.

9 - I Am God, you foolish mortal!
8 - Pantheist - The Universe IS God.
7 - Pagan/Wiccan - I worship nature moreso than a deity.
6 - Polytheist - I believe in multiple Gods.
5 - Monothiest - There is only one God who exists.
4 - Theist - God exists and interacts with the world and His/Her/Its 
    followers.
3 - Deist - God exists, but does not intervene in the world.
2 - Agnostic - Unsure of God's existence.
1 - Atheist - There is no God.


p - Politics (social freedom)

9 - Free drugs, abortion, day-care, and sex change operations for 
    everyone!  Gov't sponsored wifi!
8 - Legalize all drugs and prostitution, free education for everyone!
7 - Legalize pot, gay marriage is a basic human right.
6 - Civil unions are ok by me, and why is college so expensive?
5 - I think current social policy is fine.  Can we please stop screaming 
    at each other now?
4 - More privatized (religious) education and/or voucher programs
3 - A return to 'family values' is what this country needs, i.e.
    the ways of the Bible/Koran/whatever.  Abortion is murder.
2 - Down with Roe vs Wade, Brown vs Board of Education, criminalize gay 
    sex, and bring religion back into government!
1 - I am Pat Robertson
$ - Politician or Lobbyist - please stop reading now.
--- end GUIDE

Displaying your Hacker Key

Because its design, the Hacker Key should fit fairly unobtrusively in your signature file.  As the Hackey Key Guide is not very well known, if you could include a reference to the web site it will help spread the word about the Guide.  Here is a sample Version 2 Hacker Key:

v2sw7CUPhw5ln6pr5Pck4ma7u7LFw0m6g/l7Di5e6t5Ab6THen7g6Ma29s5r3p7 hackerkey.com

Blame - Who's Responsible for This?

Credit/blame should rest with yours truly, Chris Allegretta <chrisa@asty.org>.  Additional inspiration, suggestions and feedback were given by Murray Schwalbaum, <loser@e0f.org>. Thanks also to Charles Mason, Jim Ault, Eric Tucker and Jason Burks for their suggestions for version 0.

For version 2, I would like to thank: Daniel Keep, Luke-Jr, Tony Lainson, and Cody Hatch for the overhaul of the Politics section.

Feedback - Please!

The Guide is still quite young, and I'm very interested in hearing your opinions about what you like, don't like and think the Guide needs or doesn't need.  Please don't suggest radical changes to the structure itself of the code, as this is the one area I'm fairly comfortable with.  Email your thoughts to chrisa@asty.org

License

Copyright (c)  2003, 2004, 2005  Chris Allegretta
      Permission is granted to copy, distribute and/or modify this document
      under the terms of the GNU Free Documentation License, Version 1.2
      or any later version published by the Free Software Foundation;
      with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
         Texts.  A copy of the license is included in the section entitled "GNU
      Free Documentation License".

History