From 556282ae83c4ee34f6a8f202ca75b39236aeadfb Mon Sep 17 00:00:00 2001 From: Deven Blake Date: Mon, 13 Sep 2021 09:27:37 -0400 Subject: [PATCH] not sure what i'll do with this, pushing the draft --- homepage/hacker-howto.html | 87 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 homepage/hacker-howto.html diff --git a/homepage/hacker-howto.html b/homepage/hacker-howto.html new file mode 100644 index 0000000..28f6cad --- /dev/null +++ b/homepage/hacker-howto.html @@ -0,0 +1,87 @@ + + + + +

How to Become A Hacker

+

Deven Trinity Blake

+

<trinity@trinity.moe>

+

No Copyright 🄯 2021 Deven T. Blake

+
+ + +

Why This Document?

+

+A lot of hackers consider Eric S. Raymond's original How to Become A Hacker to be definitive, for good reason. +It explains the "hacker philosophy", some key things at which one should be good, and is a good compass that points to What to Learn Next. +I myself stumbled upon the document maybe a decade or so ago, when I was a small impressionable child, and know half of what I do because of where it pointed me. +I think, however, that How to Become A Hacker is a bit dated, so I'm writing this to be a nice complementary piece for those to read after they read esr's original. +

+

+If you are reading a snapshot of this document offline, the current version lives at http://www.trinity.moe/hacker-howto. +

+ +

Basic Hacking Skills

+

1. Learn how to program

+

+Python is an okay first language as long as you don't take it too seriously. +As said by smarter people than me, Python is a glue language. +It's slow and a bit basic, but its errors are often easy to solve, so do as much as you can with Python and Python libraries, and do the rest in faster languages. +

+

+Never touch Java. +Not even once. +While at one point it was promising, it's become a monstrous beast and it must be slain through attrition. +

+

+When you are good at programming you will think outside of programming languages. +Programming languages are tools for a job. +Some are better suited to some tasks than others. +For example, I would use C as a language for building utilities for myself, as I want them to be blisteringly fast and I know that's easier to do in C than Python. +I've written utilities in Python to know how I want them to behave, and then perfected them by rewriting them in C. +This being said, when learning a language for the first time, master it, then move on. +

+

2. Get one of the open-source Unixes and learn to use and run it.

+

+Don't try to program on Microsoft Windows. +Seriously. +This is the one mistake almost all beginners make; they'll install fifty different tools onto their MS Windows system in order to make a simple program that doesn't really work because their tutorial only works for UNIX. +Just install a Free UNIX-clone ("clone" in this context is not a bad thing; most Free UNIX-clones are much more practical in this world than the original) and learn how to work in it. +In fact, you may want to learn shell before anything else. +When you know how to +

    +
  1. Make a directory,
  2. +
  3. Make an empty file within that directory,
  4. +
  5. Overwrite the file with exactly 500B of random data,
  6. +
  7. Mark the file as executable,
  8. +
  9. Print the file to the terminal as readable, hexadecimal data,
  10. +
  11. And remove the directory and the file,
  12. +
+you will know enough to start on your journey into hacking. +

+

+BSDs are awesome and I use a BSD myself, but perhaps start with Linux as there's a much bigger community to help you there. +There are no longer any good non-UNIX operating systems. +The importance of choosing a Free operating system cannot be understated. +It's hard to learn from your OS's code when your OS's code is only readable by those within the corporation that made the OS. +

+

+Don't use Ubuntu as it suffers from many of the flaws that drive non-hacker Windows users to Linux-based systems. +Instead, try Linux Mint, which is based on Ubuntu but without the more annoying issues. +

+

3. Learn how to use the World Wide Web and write HTML.

+

+View the source code of the original How to Become A Hacker and then read the source code to this webpage. +

+

4. If you don't have functional English, learn it.

+

+It's unfortunate that English has become the lingua franca of the Internet. +But it's true, it has, and it's more or less required learning if you want to become a hacker. +

+

5. Learn to use a search engine.

+

+This is my own tip. +This is the most important thing on this page. +How to accomplish this is an exercise left to the reader. +