NAMEhacker — тот, кому интересно, как всё устроено внутри

Всё — это код.

А любой код можно прочитать, понять и переписать. Это альманах о хакерах: людях, которые с 1959 года разбирают системы по винтику, просто чтобы узнать, как они работают.

ASCII
по мотивам donut.c, Энди Слоун, 2006 · тяни, чтобы вращать
uptime
67 лет
хакерской культуре, считая с клуба TMRC в MIT
unix time
—
секунд прошло с 1 января 1970 года
до Y2038
—
потом 32-битный time_t переполнится: 19.01.2038, 03:14:07 UTC
DESCRIPTION

Кто такие хакеры

Слово «хакер» старше интернета. Главный словарь хакерского сленга определяет его так.

хакер [ˈhækə(r)] сущ., м. р.; от англ. hacker
  1. 1.

    Тот, кому нравится исследовать детали программируемых систем и расширять их возможности. Большинство пользователей, напротив, предпочитают знать необходимый минимум.

  2. 2.

    Тот, кто программирует с энтузиазмом (даже одержимо) или кому писать код нравится больше, чем рассуждать о нём.

  3. 6.

    Эксперт или энтузиаст в любой области. Бывают, например, хакеры астрономии.

  4. 7.

    Тот, кому нравится интеллектуальный вызов: творчески преодолевать или обходить ограничения.

  5. 8.

    устар.Злоумышленник, который ищет чужие секреты, копаясь в системах. Правильный термин для этого значения — кракер (cracker).

Источник: The Jargon File 4.4.7. Словарь ведётся с 1975 года; значения 3–5 опущены.

CONFORMING TO

Хакерская этика

В 1984 году журналист Стивен Леви записал неписаные правила хакеров MIT в книге «Хакеры: герои компьютерной революции». Правил шесть, и спустя сорок лет они всё ещё в силе.

ethic.hands_on

Трогай руками

Доступ к компьютерам и ко всему, что учит, как устроен мир, должен быть полным и неограниченным.

ethic.free_info

Информация свободна

Вся информация должна быть свободной. Знание, запертое в сейфе, никому не помогает.

ethic.decentralize

Не доверяй власти

Продвигай децентрализацию. Бюрократия мешает людям свободно обмениваться знаниями.

ethic.merit

Суди по коду

Хакера оценивают по его хакам, а не по дипломам, возрасту, расе или должности.

ethic.art

Код — это искусство

На компьютере можно создавать красоту. Изящная программа красива сама по себе.

ethic.better_life

Жизнь станет лучше

Компьютеры могут изменить твою жизнь к лучшему. И не только твою.

Talk is cheap.Show me the code.

«Болтовня ничего не стоит. Покажи код».

Линус Торвальдс, рассылка ядра Linux, 25 августа 2000
00000000: 5461 6c6b 2069 7320 6368 6561 702e 2053  Talk is cheap. S
00000010: 686f 7720 6d65 2074 6865 2063 6f64 652e  how me the code.
EXAMPLES

Легендарный код

Три фрагмента, которые программисты пересказывают друг другу как легенды. Переключай вкладки.

float Q_rsqrt( float number )
{
    long i;
    float x2, y;
    const float threehalfs = 1.5F;

    x2 = number * 0.5F;
    y  = number;
    i  = * ( long * ) &y;                       // evil floating point bit level hacking
    i  = 0x5f3759df - ( i >> 1 );               // what the f***?
    y  = * ( float * ) &i;
    y  = y * ( threehalfs - ( x2 * y * y ) );   // 1st iteration
//  y  = y * ( threehalfs - ( x2 * y * y ) );   // 2nd iteration, this can be removed

    return y;
}

Попробуй сам

1/√x точно—
Q_rsqrt(x)—
погрешность—
без шага Ньютона—
i = биты x как целого
—
0x5f3759df − (i >> 1)
—
знакпорядок, 8 битмантисса, 23 бита
HISTORY

Хроника

История хакерской культуры, записанная так, как программисты записывают любую историю: журналом коммитов. Свежие события сверху.

$ git log --graph --decorate culture
    SYNOPSIS

    Терминал

    Командная строка, в которой ничего нельзя сломать. Внутри 10 заданий в духе CTF и 15 спрятанных пасхалок. Начни с quests, а список команд покажет help.

    guest@hacker: ~ — zsh ⚑ 0/10 · ★ 0/15
    попробуй:
    BUGS

    Известные ошибки

    • #1337

      Хакеры не спят по ночам.

      WONTFIX
    • #2

      В программировании есть две сложные задачи: инвалидация кеша, именование и ошибки на единицу.

      CONFIRMED
    • #404

      Документация к проекту не найдена. Открыта с 1 января 1970 года.

      NEW
    • #500

      Программа падает только во время демонстрации заказчику.

      WORKSFORME
    SEE ALSO

    Что почитать и посмотреть

    levy(1984)
    Стивен Леви, «Хакеры: герои компьютерной революции». Книга, в которой впервые записана хакерская этика.
    stoll(1989)
    Клиффорд Столл, «Яйцо кукушки». Астроном выслеживает шпиона, потянув за ниточку расхождения в 75 центов в счетах за машинное время.
    raymond(1997)
    Эрик Рэймонд, «Собор и базар». Эссе о том, почему открытая разработка работает.
    torvalds(2001)
    Линус Торвальдс и Дэвид Даймонд, «Just for Fun». Как студент из Хельсинки написал ядро Linux.
    mitnick(2011)
    Кевин Митник, «Призрак в сети». Мемуары самого разыскиваемого хакера 90-х.
    wargames(1983)
    Фильм «Военные игры». После просмотра президент Рейган спросил генералов, может ли такое случиться на самом деле.
    mr-robot(2015)
    Сериал «Мистер Робот». Редкий случай, когда в кадре набирают настоящие команды.