Fortsetzung der Geschichte "Karriereprogrammierer".Auf dem Hof war 2001. Das Jahr, in dem das coolste Betriebssystem veröffentlicht wurde - Windows XP. Als rsdn.ru erschien. Das Geburtsjahr von C # und .NET Framework. Das erste Jahr des Jahrtausends. Und ein Jahr exponentiellen Wachstums neuer Eisenkapazitäten: Pentium IV, 256 MB RAM.
Nach dem Abschluss der 9. Klasse hatte ich eine unerschöpfliche Begeisterung für das weitere Studium der Programmierung. Als meine Eltern dies sahen, beschlossen sie, mich für die Spezialität "Programmierung" ans College zu schicken. Sie glaubten, dass es besser sein würde und lehrten mich dort. Das Word College passte übrigens nicht zu dieser Institution am Rande einer Industriestadt. Es war eine reguläre technische Schule, die sich nicht von anderen technischen Schulen unterschied und an deren Fassade kein Etikett mit dem modischen Wort "College" aufgehängt war.
Na dann. Ich habe mich nicht mit meinen Eltern gestritten und ihre Entscheidung nicht bestritten. Auf jeden Fall beschäftigte ich mich mit Selbstbildung und dachte, dass ich an diesem neuen Ort zusätzliches Wissen erhalten würde.
In diesem Sommer, bevor ich aufs College ging, begann ich gründlich, alle möglichen Technologien zu studieren, die im
Hacker-Magazin veröffentlicht wurden . Ich las es und las es noch einmal in den Löchern. Besonders gefallen haben mir die Interviews mit echten Hackern und deren Ratschläge.
Die meisten coolen Hacker saßen auf Linuha. Aber "Mazdai" (Windows) war für Lamers. Wer die Zeitschrift liest, erinnert sich an den Stil der darin enthaltenen Beiträge. In meinem fragilen Kopf kämpften daher zwei Ideen untereinander - Windows zu verlassen oder cool zu sein und nur auf Linux zu sitzen.
Jede neue Ausgabe des Hacker-Magazins warf mir einen neuen Grund für die Formatierung der Festplatte und die Installation von Linux Red Hat 7 oder Windows Me. Natürlich hatte ich keinen Trainingsvektor und habe das gemacht, was ich in Zeitschriften oder auf Raubkopien wie "Hacker Secrets" gelesen habe. Die parallele Installation von zwei Betriebssystemen wurde ebenfalls gelöscht, nachdem ein neuer Wurf im Sinne von „Windows XP alias Papagei für Hausfrauen. Und wenn Sie ernsthafte Dinge tun möchten, müssen Sie mit geschlossenen Augen von der Linux-Konsole aus arbeiten. " Natürlich wollte ich mich auf Hacking-Systeme einlassen, verstehen, wie das Netzwerk funktioniert, und zu dieser Zeit der allmächtige Anonyme sein.
Die Festplatte wurde ohne Bedauern formatiert und die Distribution eines Unix-ähnlichen Systems wurde darauf installiert. Ja Ja. Einmal habe ich ein Interview mit einem echten Hacker gelesen, der nur FreeBSD 4.3 von der Konsole aus verwendet. Gleichzeitig wurden hinter ihm Hacks von Banken und staatlichen Systemen aufgeführt. Es war ein Blitz am Kopf, und ich habe BSD OS 5 Mal als Hauptsystem verwendet. Das Problem war, dass nach der Installation außer der nackten Konsole nichts mehr da war. Sogar der Ton. Und um KDE2 einzuschalten und den Sound einzuschalten, musste man viel mit einem Tamburin tanzen und ein paar Konfigurationen reparieren.
FreeBSD 4.3 - Das Hacker-BetriebssystemÜber Literatur
Sobald ich einen Computer bekam, fing ich an, Programmierbücher zu kaufen. Der erste war eine Anleitung zu Turbo Pascal 7.0. Das ist nicht überraschend, denn Pascal kannte ich bereits ein wenig aus Programmierkursen und es war möglich, alleine weiter zu trainieren. Das Problem war, dass Hacker nicht in Pascal schreiben. Dann war die Perl-Sprache in Mode, oder für coolere Leute war es C / C ++. Zumindest haben sie das in der Zeitschrift geschrieben. Und das erste Buch, das bis zum Ende gelesen wurde, war C, die Programmiersprache Kernigan und Ritchie. Ich habe übrigens in Linux studiert
und benutzte gcc und den eingebauten KDE-Editor, um Code zu schreiben.
Im Anschluss an dieses Buch wurde die UNIX-Enzyklopädie gekauft. Sie wog 3 Kilogramm und wurde auf A3-Seiten gedruckt.
Auf der Vorderseite des Buches wurde ein Cartoon-Teufel mit einer Heugabel in voller Höhe dargestellt, und dann kostete er in der Ukraine 125 Griwna (das sind etwa 25 US-Dollar im Jahr 2001). Um ein Buch zu kaufen, bat ich einen Schulfreund um einen Kredit, der Rest wurde von den Eltern hinzugefügt. Dann begann ich begeistert, Unix-Befehle, den vim- und emacs-Editor, die Struktur des Dateisystems und das Innere der Dateikonfiguration zu studieren. Fast 700 Seiten der Enzyklopädie wurden verschluckt und ich kam dem Traum einen Schritt näher - ein cooler Hatsker zu werden.
UNIX-Enzyklopädie - Eines der ersten gelesenen BücherDas ganze Geld, das mir der liebende Großvater, die Großmutter und die Eltern gaben, gab ich für Bücher aus. Das nächste Buch war C ++ in 21 Tagen. Der Titel war sehr attraktiv, und deshalb habe ich mir keine anderen Bücher höherer Qualität angesehen. Trotzdem wurden alle Quellen für ungefähr diesen Zeitraum von 3 Wochen aus dem Buch kopiert, und ich habe bereits etwas in C ++ verstanden. Obwohl ich wahrscheinlich nicht mehr verstanden habe, was in diesen Auflistungen geschrieben stand. Aber es wurden Fortschritte erzielt.
Wenn mich jemand gefragt hätte, welches Buch Ihre Karriere am meisten beeinflusst hat, hätte ich ohne zu zögern geantwortet - "Die Kunst des Programmierens" - D. Knut. Es war ein blitzendes Gehirn. Ich kann nicht genau sagen, wie genau dieses Buch in meine Hände gefallen ist, aber es hat meine zukünftige Karriere am stärksten beeinflusst.
Die Kunst des Programmierens - muss lesenIch kaufte Bücher hauptsächlich auf dem Radiomarkt, der nur sonntags funktionierte. Nachdem ich die nächsten paar Dutzend Griwna zum Frühstück aufgehoben hatte, ging ich zu einem neuen Buch über C ++ oder vielleicht Perl. Die Auswahl war groß genug, aber ich hatte keinen Mentor, also wurde alles hintereinander studiert. Ich bat den Verkäufer, mir etwas für die Programmierung zu empfehlen. Und soweit ich mich erinnere, nahm er „The Art of Programming. Erster Tom. " Das Buch war eindeutig bereits in Gebrauch. Die Ecken des Covers waren verbogen und es gab einen großen Kratzer auf der Rückseite, genau an der Stelle, an der Bill Gates seinen Kommentar hinterlassen hatte: „Wenn Sie dieses Buch lesen, sollten Sie mir auf jeden Fall einen Lebenslauf schicken“, wurde von ihm unterschrieben. Ich wusste von Magazinen über Gates Bescheid und dachte, es wäre schön, ihm einen Lebenslauf zu schicken, obwohl ihn alle Hacker hatten. Das Buch war 72 UAH wert. ($ 15), und ich eilte schnell mit einer Straßenbahn nach Hause, um neues Material zu studieren.
Wie tief und grundlegend ich lese, konnte ich mit 15 natürlich nicht verstehen. Aber er versuchte fleißig, jede Übung zu beenden. Einmal gelang es mir sogar, das Problem mit einer Komplexitätsbewertung von 25 oder 30 richtig zu lösen. Dies war ein Kapitel über mathematische Induktion. Ich mochte zwar keine Schulmathematik und packte sie schlecht, aber über die Matte. Knut-Analyse - Ich saß stundenlang.
Als nächstes ging das zweite Kapitel auf Datenstrukturen ein. Diese Bilder und Bilder von verknüpften Listen, Binärbäumen, Stapeln und Warteschlangen sind immer noch vor meinen Augen. In den 12 Jahren meiner Karriere in der kommerziellen Entwicklung habe ich die meisten allgemeinen Sprachen verwendet.
Dies sind C / C ++, C #, Java, Python, JavaScript, Delphi. Und egal wie die Sprache heißt, ihre Standardbibliothek hatte Datenstrukturen und Algorithmen, die Donald Knuth in seinem dreibändigen Buch beschrieben hatte. Daher braucht es nicht viel Zeit, um etwas Neues zu lernen.
Der erste Band wurde schnell genug geschluckt. Ich habe die in Knuths Buch angegebenen Algorithmen in C kopiert. Es hat nicht immer funktioniert, aber je mehr ich geübt habe, desto klarer wurde es. Eifer war nicht zu halten. Nachdem ich mit dem ersten Band fertig war, zögerte ich nicht, den zweiten und dritten zu kaufen. Ich habe die zweite vorerst beiseite gelegt, aber für die dritte (Sortieren und Suchen) habe ich sie gründlich genommen.
Ich erinnere mich sehr gut daran, wie ich ein ganzes Notizbuch aufgeschrieben und die Sortier- und Suchalgorithmen „interpretiert“ habe. Wie bei Datenstrukturen werden die binäre Suche und die schnelle Sortierung in meinem Gehirn blitzschnell visualisiert, wobei ich mich daran erinnere, wie sie in Knuths drittem Band schematisch aussehen.
Die Peitsche wurde überall gelesen. Und selbst wenn ich ans Meer ging und keinen PC in der Nähe hatte, schrieb ich die Algorithmen immer noch in ein Notizbuch und ließ eine Folge von Zahlen durch sie laufen. Ich erinnere mich noch, wie viele Qualen es mich gekostet hat, die pyramidenförmige Sortierung zu meistern, aber es hat sich gelohnt.
Das nächste Buch, das mich stark beeinflusst hat, war The Dragon Book. Sie ist "Compiler: Prinzipien, Technologien, Werkzeuge" - A. Aho, R. Seti. Es wurde von Herbert Shildd mit fortgeschrittenen Aufgaben in C ++ vorangegangen. Zu diesem Zeitpunkt kamen die Punkte zusammen.
Dank Schildt habe ich gelernt, Parser und Dolmetscher von Sprachen zu schreiben. Und dann forderte mich das Drachenbuch auf, meinen eigenen C ++ - Compiler zu schreiben.
DrachenbuchZu diesem Zeitpunkt hatte ich ein modernes Internet und verbrachte viel Zeit auf der beliebtesten Website für Programmierer - rsdn.ru. Dort dominierte C ++, und jeder Profi konnte Fragen beantworten, die ich nicht beantworten konnte. Das tat mir weh und ich erkannte, dass ich weit von diesen bärtigen Onkeln entfernt war, also muss ich die Innenseiten der Vor- und Nachteile studieren. Diese Motivation führte mich zu dem ersten ernsthaften Projekt - meinem eigenen C ++ - Compiler des Standards von 1998. Weitere Informationen zu Verlauf und Quellcodes finden Sie
in diesem Beitrag .
Schule oder Selbstbildung
Aber zurück zur Realität jenseits der IDE. Obwohl ich mich zu dieser Zeit zunehmend vom realen Leben entfernte und in das Virtuelle eintauchte, zwangen mich alle gleichaltrigen und allgemein anerkannten Normen, aufs College zu gehen. Das war echte Folter. Ich habe überhaupt nicht verstanden, was ich in dieser Einrichtung tat und warum ich diese Informationen hörte. In meinem Kopf gab es ganz andere Prioritäten. Lernen Sie Visual Studio 6.0 und versuchen Sie es mit WinApi und Delphi 6.
Eine wundervolle Seite firststeps.ru, die es jedem ermöglichte, sich an den kleinen Schritten zu erfreuen, obwohl ich das allgemeine Bild nicht verstand. Zum Beispiel in der gleichen Technologie MFC oder ActiveX.
Was ist mit dem College? Es war Zeitverschwendung. Wenn ich das Thema Studium anspreche, habe ich im Allgemeinen schlecht gelernt. Bis zur 6. Klasse war ich ein runder Ehrenschüler, und dann flogen drei, und bis zur 8.-9. Klasse übersprang ich oft Klassen, für die ich von meinen Eltern keine illusorischen Gürtel erhielt.
Daher gab es nach dem College auch wenig Begeisterung.
- Wo ist die Programmierung? Ich habe mir eine Frage gestellt. Aber er war nicht in der ersten Jahreshälfte. Aber es gab Informatik mit MS-DOS und Office sowie allgemeine Fächer.
Zusätzlich zu allem hatte ich einen zurückgezogenen Charakter und war sehr bescheiden. Diese neue bunte Gruppe war eindeutig nicht glaubwürdig. Und es war gegenseitig. Daher dauerte es nicht lange, bis alle Arten von Spott warteten. Ich ertrug lange, bis ich es nicht mehr aushielt und einem der Täter direkt im Klassenzimmer ins Gesicht schlug. Ja, also flog er zu den Schreibtischen. Dank meines Vaters brachte er mir bei, von Kindheit an zu kämpfen, und mit einem akuten Verlangen konnte ich körperliche Gewalt anwenden. Aber das passierte sehr selten, ich ertrug oft Spott und wartete auf den maximalen Siedepunkt.
Übrigens rief mich der Täter, der von dem Geschehen sehr überrascht war, sich aber immer noch überlegen fühlte, zum Rückkampf. Schon im Ödland hinter der Schule.
Dies waren keine Kinderfäuste, wie es in der Schule der Fall war. Es gab einen edlen Mahach mit gebrochenen Nasen und viel Blut. Der Typ stammte auch nicht aus einem schüchternen Dutzend und wog gekonnt Haken und Oberschnitte. Alle sind am Leben geblieben, und seitdem hat mich niemand in diesem "College für Programmierer" gemobbt. Ich habe den Wunsch dorthin zu gehen und bin bald vollständig verschwunden. Deshalb habe ich aufgehört, mich darauf einzulassen, und keine Drohungen meiner Eltern haben mich betroffen. Durch ein Wunder betrachteten sie meinen College-Aufenthalt für die 10. Klasse der Schule, und ich hatte das Recht, in die 11. Klasse zu gehen.
Alles würde gut werden, aber die 11. Klasse war nicht viel vom besten College. Ich kehrte in meine Heimatschule zurück, traf einige Freunde meiner Bekannten, bei denen ich seit der ersten Klasse studiert hatte, und hoffte, dass an ihrem Heimatort alles in Ordnung sein würde. Es gab nur eine Einschränkung: Jungs, waren eher Banditen aus der Serie als die Jungen, mit denen ich in den unteren Klassen befreundet war. Alle gingen zum Schaukelstuhl, um Muskelmasse zu gewinnen. Ich sah aus wie Bambus. Schlaksig und sehr dünn. Natürlich könnte mich ein solcher Klassenkamerad mit einem Linken verdrehen.
So begann es im Laufe der Zeit zu geschehen. Dann hatten meine Kampffähigkeiten keine Wirkung. Bereits sehr unterschiedliche Gewichtsklassen waren bei mir und dem Rest der Jungen meiner einst einheimischen Klasse. Auch die Merkmale meines Denkens machten sich bemerkbar.
Ohne meine Gedanken auf dem Baum zu verbreiten, verließ ich auch die Schule. Ich fühlte mich wohl vor einem Computermonitor, und die Tür zu meinem Zimmer war geschlossen. Es machte Sinn und intuitiv fühlte ich, dass ich das Richtige tat. Und zur Schule zu gehen ist eine nutzlose Übung und sogar ein anhaltender Spott, der von Tag zu Tag raffinierter wurde ... Das reicht mir.
Nach einem weiteren Konflikt in der Klasse, mit mir in der Titelrolle, verließ ich die Schule und ging nicht mehr dorthin.
Ungefähr 3 Monate saß ich zu Hause und verbrachte Freizeit damit, C ++ / WinAPI / MFC und rsdn.ru zu studieren.
Am Ende konnte der Schulleiter es nicht ertragen und rief nach Hause.
- "Denis, denkst du darüber nach zu studieren?" Oder wirst du gehen? Entscheide dich. In der Schwebe wird dich niemand verlassen. “ - sagte der Regisseur
- "Ich werde gehen" - antwortete ich zuversichtlich
Und wieder die gleiche Geschichte. Es blieb noch ein halbes Jahr, bis ich meinen Abschluss gemacht hatte. Lass mich nicht ohne Kruste. Meine Eltern winkten mir zu und sagten mir, ich solle dem Regisseur selbst zustimmen. Ich kam zum Schulleiter. Sie rief mir zu, ich solle meinen Hut abnehmen, wenn ich hereinkomme. Dann fragte sie streng: "Was soll ich mit dir machen?" Ehrlich gesagt wusste ich selbst nicht, was ich tun sollte. Ich war sehr zufrieden mit dem aktuellen Stand der Dinge. Schließlich nahm sie das Wort:
"Also, lass uns das machen." Ich werde dem Schulleiter unserer Abendschule zustimmen und du wirst dorthin gehen. “
- "Ja"
Und Abendschule - für Freestyler wie mich war es ein echtes Paradies. Wenn du gehen willst, willst du nicht gehen. Es waren 45 Personen in der Klasse, 6-7 von ihnen erschienen im Klassenzimmer. Ich bin mir nicht sicher, ob alle auf der Liste am Leben waren und auch frei waren. Denn nur mit mir haben Klassenkameraden das Motorrad eines anderen gestohlen. Aber die Tatsache blieb. Ich konnte unbegrenzt Programmierkenntnisse pumpen und zur Schule gehen, wenn ich es wirklich brauche. Am Ende habe ich die Abschlussprüfungen bestanden. Viele brauchten sie nicht und wir hatten sogar einen Abschluss. Abschluss an sich ist eine separate Fabel. Ich erinnere mich, dass lokale Klassenkameraden meine Uhr von mir nahmen. Und nachdem ich meinen Nachnamen kaum gehört hatte, als ich Zertifikate vorlegte, trottete ich nach einem Dokument und flog mit einer Kugel aus der Schule, um nicht auf andere Probleme zu stoßen.
Vor uns war Sommer. Mit Donald Knut unter dem Arm am Strand, dem Meer, der Sonne und der schicksalhaften Entscheidung, ein eigenes großes Projekt (Compiler) zu schreiben.
Teil 3. Universität >>