Persönliche Erfahrung: von einer Idee und einem leeren Blatt bis zu einer Entwurfsversion einer Website

Guten Tag.

Mein Name ist Dmitry, ich bin in ein paar Monaten, 30 Jahren, von denen ich ungefähr 10 Jahre lang Tyzhprogramist bin, und vor einem halben Jahr habe ich beschlossen, etwas von mir zu kreieren (lahm, schräg, sekundär, aber meins).

Vor ein paar Tagen habe ich mit einem Freund meines Schülers gesprochen und mich in ihm als Beispiel für 2009 wiedererkannt - die gleichen Probleme, die gleichen Gedanken. Dieser Text ist eine Zusammenstellung unserer Konversation und Korrespondenz in der Nacht des 24. September. Persönliche Momente und konkrete Beispiele wurden übersehen, aber der Text wurde logischer und allgemeiner.

Was einer Person geholfen hat, könnte einer anderen helfen.

Eintrag


Die Einleitung kann nicht gelesen werden, aber daraus wird es möglich sein, die Plattform des Anfangswissens zu verstehen.
In der 11. Klasse hatte ich die Wahl, wen ich studieren wollte - einen Geschichtslehrer oder einen Programmierer. Ich habe die Geschichte geliebt und verstanden, das Programmieren schien mir eine sehr interessante und vielversprechende Aktivität zu sein. Ich habe mich für die zweite entschieden, weil Sie in Ihrer Freizeit auch Geschichte üben können.

Ich konnte keine Bildungseinrichtung auswählen - meine Eltern klickten auf einen Taschenrechner und schickten mich zu einer örtlichen technischen Schule, die am 1. September ein College wurde. Ich werde nicht über die Probleme unserer Ausbildung schreiben, aber mein Wunsch, Code zu schreiben, hat sich stark verringert. Nachdem ich das Sekundarfach erhalten hatte, weigerte ich mich rundweg, weiter zu studieren und beschloss zu arbeiten. Ein Freund rief mich an, um als Systemadministrator in einer Haushaltsorganisation zu arbeiten: „Die Informatisierung des Gesundheitswesens steht kurz bevor. Es ist notwendig, Computer zu sammeln, gestautes Papier von Druckern aufzunehmen und den Menschen alles verständlich zu erklären. Du wirst zwei oder drei Jahre arbeiten und dort wirst du sehen, was und wie du weitermachen kannst . " Ich werde nicht über die Probleme der Reformen in Russland schreiben, aber ich habe meine Ansichten über das Leben und die Menschen überarbeitet. Nachdem ich fast 6 Jahre gearbeitet hatte, kündigte ich, da alles sehr traurig wurde. Ich ruhte mich aus, wechselte den Job und dann wurde der Wunsch zu programmieren lebendig.

März 2018 - September 2018


Am Anfang gab es eine Idee: „Hier wäre eine Website, auf der Sie detailliertere Statistiken und den Verlauf von Datenänderungen sehen können.“ Wir sprechen über die Rangfolge der Spieler auf den Servern eines Online-Spiels (Spitzname, Level, Clan usw.). Die offizielle Ressource enthält nur aktuelle Werte, die einmal täglich aktualisiert werden. Keine Änderungshistorie, keine Visualisierung, keine Auswahl und eingeschränkte Sortieroptionen. Es gibt eine inoffizielle Version, in der es bereits mehr Funktionen gibt, die aber auch für mich und sogar für den Bergmann unpraktisch ist. Daher kam der zweite Gedanke für den ersten Gedanken: „Wir müssen etwas Eigenes tun! Praktisch und ohne Bergmann . " Und es ist wünschenswert, dass der Erstellungsprozess 1-2 Stunden am Abend dauert, da nicht genügend Freizeit zur Verfügung steht und ich den Schlaf nicht einschränken wollte. Im Laufe des Abends malte ich einen groben Aktionsplan und begann ihn in die Realität umzusetzen.

Aber um etwas zu tun, muss man lernen, es zu tun. Mehrere Tage lang habe ich Artikel und Videos zum Thema „Was wird zum Erstellen einer Website benötigt?“ Studiert. Nach ein paar Tagen wechselte ich zu „Vergleichen verschiedener PLs - deren Vor- und Nachteile“. In ungefähr einer Woche, als ich 2-3 Stunden lang jeden Tag ein Video sah und Artikel las, kam ich zu einer ungefähren Reihe von Technologien:
  • html5
  • css3
  • Python 3
  • Django 2
  • sql (postgresql 10)
  • Linux (debian9)

Einmal erworbenes Wissen wurde vergessen und alles musste von vorne beginnen.

Selbsttraining - diese Fähigkeit ist für viele Menschen sehr schwierig. Jemand oder etwas lenkt ständig ab: Die Katze beschloss, auf den Knien zu schnurren, der Nachbar rief, eine neue Serie seiner Lieblingsserie, einen neuen Mech in sozialen Netzwerken und Hunderte anderer Beispiele. Zusätzlich zu Willenskraft, Entschlossenheit und dem Wunsch zu schaffen, werden Sie keine Verbündeten haben (es gibt immer noch Hunger, aber er ist nicht immer vorhanden). Schließen Sie soziale Netzwerke, schließen Sie die Registerkarte "Serie", schalten Sie den Ton am Telefon aus, schließen Sie die Tür zum Schlafzimmer - entfernen Sie vorübergehend alle Ablenkungen. Im Hunger nach Informationen wird das Gehirn selbst Informationen erhalten wollen, und hier davor die Grundlagen von SQL, die ein guter Feed sein werden.

SQL und ein Skript zum Schreiben von Daten in die Datenbank



SQL ist insofern interessant, als es nur wenige Stellen gibt, an denen es an erster Stelle steht, aber es gibt viele Stellen, an denen es an zweiter oder dritter Stelle steht. Wenn Sie gerade erst anfangen, sich mit der Programmierung zu beschäftigen, können die Grundlagen von SQL ein guter Anfang sein. Ich habe postgresql als DBMS gewählt, weil oft geschrieben wird, dass dies eine gute Wahl für Python ist (soweit dies zutrifft, kann ich es nicht beurteilen). Vielen Dank an Postgres Professional für die Übersetzung der Dokumentation .

Wenn Sie aus im Internet verfügbaren Materialien lernen, ist es möglich, dass Sie nicht immer alles verstehen - irgendwo, wo eine Theorie falsch vermittelt wurde, wo ein Beispiel nicht die Essenz des Themas widerspiegelt, wo Sie keinen interessanten Moment für Sie erklärt haben. Verstärken Sie nach dem Lesen eines Artikels das Gelernte, indem Sie einen ähnlichen Artikel lesen oder ein Video zu einem ähnlichen Thema ansehen.

Implementieren Sie am Ende das Material, das Sie behandelt haben, am Beispiel Ihrer Idee, auch wenn es später überarbeitet oder als unnötiges Element vollständig verworfen wird. Hab keine Angst zu experimentieren. Fügen Sie Ihrem Browser interessante Lesezeichen hinzu.

Also haben wir uns mit SQL vertraut gemacht, ein DBMS ausgewählt, eine Datenbank für unsere Idee erstellt und beschlossen, mit dem nächsten Punkt fortzufahren - irgendwie Informationen von einer Seite im Internet in unsere Datenbank aufzunehmen. Python kommt zur Rettung, die seine Pakete psycopg2 , json , datetime , Anfragen mit sich bringt. Oh, und es hat Spaß gemacht, alles herauszufinden. In ungefähr einer Woche voller Experimente stellte sich heraus, dass ein funktionierendes Skript Änderungen in die Datenbank mit etwa 20 bis 25.000 Zeichen schreibt.

HTML5 & CSS3


Jetzt müssen Sie dies alles in tabellarischer Form auf der Site anzeigen. Ich ging reibungslos zu den Grundlagen von HTML5 und CSS3 über - dem Grundgerüst der Seite und der Tabelle. Auf der Suche nach gutem Material bin ich auf ein Portal gestoßen, das verspricht, für ein wenig Geld einen Front-End-Entwickler aus mir zu machen. Die ersten Lektionen sind kostenlos und dann eine kleine Menge. In diesen Lektionen wird nur das Mindestgrundwissen vermittelt. Wir gehen durch kostenlose Lektionen, wenden das gewonnene Wissen an und erhalten diese Blöcke:
<div id="header">     </div> <div id="main">    </div> <div id="content">   </div> 

Alles ist klar erklärt, sie können bei Bedarf einen Kurs haben. Und nach ein paar Tagen fand ich heraus, dass dies eine veraltete Form des Schreibens ist und man einfach Header, Haupt-Tags usw. schreiben kann. In diesem Schritt wurde mir klar, dass sich der Kauf von Online-Kursen in der Anfangsphase des Lernens nicht lohnt. Ich kann einfach nicht verstehen, wie relevant sie sind (und oft geben Autoren das Datum der Artikel nicht an) und wie viel Wissen sie benötigen. Deshalb habe ich das Lesezeichen gelöscht und etwas später gefunden, wonach ich gesucht habe.

Es ist erwähnenswert, dass Sie sich beim Kauf eines Kurses finanziell dazu verpflichten , diesen Kurs zu belegen . „Nun, es war nicht umsonst, dass ich einen Denyuzhu gegeben habe, aber Sie konnten für das Internet bezahlen . Und das Studium von Informationen, die Sie für das aktuelle Ziel nicht benötigen, beginnt, und wenn nötig, ist es keine Tatsache, dass Sie sich daran erinnern werden. Und wenn Sie den Kurs abbrechen, werden Sie sich Vorwürfe machen - „ und warum haben Sie den Kurs belegt? Er hat totes Gewicht aufgehängt und in 3 Tagen ist es vorbei und niemand braucht dieses Zertifikat ... all die Schmerzen .

Von den interessanten möchte ich Folgendes hervorheben:
  • htmlbook.ru und - die meisten Anfragen nach HTML-Tags führten mich zu dieser Site
  • webref.ru - Erbe von htmlbook.ru
  • htmlacademy.ru - irgendwo habe ich die Empfehlungen dieser Ressource gesehen und beschlossen, ihre kostenlosen Lektionen zu sehen. Mit dem Wissen aus kostenlosen Lektionen können Sie bereits die Seite zusammenstellen: Header, Keller, Haupteinheit, Menü, Tabelle und Schraub-CSS für all dies


Django 2


Lesen Sie einfach die offizielle Website und die Übersetzung für Version 1.9 , die in den meisten Fällen für Version 2.0 geeignet ist. Das ist alles. Unverständliche Fehler, kopieren und in die Suchmaschine einfügen. Mit einer Wahrscheinlichkeit von 90% finden Sie nach 1-5 Minuten eine ähnliche Situation mit der Lösung des Problems, manchmal mit der Analyse der Lösung.

Unser Hauptassistent wird Stackoverflow sein , ein beliebtes Programmier-Frage- und Antwortsystem. Anfangs gab es nur Englisch, aber im Moment gibt es 4 weitere Versionen, von denen wir uns für Russisch interessieren.
Hier möchte ich auf einige Ressourcen aufmerksam machen, die manchmal in meinen Suchergebnissen vorkommen - Fragen / Antworten mit Stackoverflow, übersetzt durch maschinelle Übersetzung und mit Werbung (z. B. https://stackoverflow.com/a/3123/ ). Manchmal standen sie über dem Stapelüberlauf. Die Übersetzung war an einigen Stellen recht gut, und an einigen Stellen waren es nur ein paar Wörter - höchstwahrscheinlich liegt dies an der korrekten Konstruktion des Satzes, da Leute mit unterschiedlichen Englischniveaus (und nicht nur) ihn auf stackoverflow schreiben.

Egal wie hochwertig diese maschinelle Übersetzung ist - lesen Sie den Originaltext und wenn Ihr Englisch es Ihnen nicht erlaubt, den Text vollständig zu verstehen, dann verwenden Sie Online-Übersetzer - im Laufe der Zeit werden Sie immer mehr Wörter verstehen und eines Tages schauen Sie sich einfach die Antwort an und verstehen, was dort geschrieben steht .

Die zweitbeliebteste Ressource, zu der mich die Suche nach der Antwort geführt hat, war Toster - danke an alle, die die Antworten hinterlassen und diese Antworten erklären.

Ozean der Informationen und Entwurfsversion der Website


Etwa etwas mehr als 3 Monate sind seit Beginn des Trainings vergangen - es gab Pausen von 2 Wochen und wiederholtes Lesen von Artikeln und Handbüchern sowie Probleme, die 2-3 Abende lang auftraten. Browser-Lesezeichen sind geschwollen, in einem Telegramm alle 15 Minuten ein neuer Artikel über die für mich interessante Technologie, VKontakte ist voll mit Nachdrucken dieser Artikel. Information Meer - Ertrinken ist einfacher als eine Lunge.

Und in diesem Moment kam das Bewusstsein - aber schließlich begann es zu ersticken. Und nachts überprüfte ich meinen gesamten Plan - vom Erscheinungsbild der Website und ihrer Funktionalität bis zu den Technologien, die verwendet werden oder deren Verwendung geplant ist.

Der Plan selbst wurde mit Unterabschnitten ergänzt, und jedem Unterabsatz wurde Wichtigkeit, Priorität und bestimmte kritische Punkte zugewiesen, ohne zu schließen, was es ihm verbot, weiterzumachen. Vor allem aber gab es Fragen - er stellte sich eine Frage, fand selbst eine Antwort, erklärte sie sich selbst, nahm selbst Änderungen am Plan vor.

Der nächste Monat war Schocktherapie - setzen Sie Debian 9 (das ich von Grund auf studiert habe), in dem es im ersten Monat keine sozialen Netzwerke, Foren, TV-Shows, Filme, Skype, Zwietracht gab. Ich bin gerade für einen Monat aus dem für mich (und für die meisten Benutzer) üblichen Internet verschwunden.

Mein Abendplan war wie folgt:
- Problem oder Frage
- Suche nach Lösungen und Antworten
- Umsetzung
- Wir schreiben die Lösung entweder in ein Notizbuch oder in ein Lesezeichen im Browser
- Wenn unsere Erstellung außer Kontrolle gerät, löschen wir alles und beginnen von Grund auf neu (Version 4 wird derzeit verwendet).

Irgendwann im August habe ich einige meiner sozialen Kontakte wiederhergestellt. Ich bin zu den sozialen Netzwerken zurückgekehrt, habe Discord installiert, gehe alle 2-3 Tage zu Windows und überprüfe, ob ich es noch nicht an Debian übertragen habe. Die Ausführungsrate des Plans hat sich verlangsamt, aber es hat mich nicht sonderlich erschreckt, da der erste Entwurf der Website bereits auf dem lokalen Computer ausgeführt wurde und ich bis zum 1. September geplant hatte, zu VDS zu wechseln.

Und ich hatte keine Zeit. Während ich die Feinheiten der VDS-Einstellungen herausfand, während ich herausfand, wie ich mit der Erstellung beginnen sollte, während die Regeln der Site blockiert waren, während ich Probleme im wirklichen Leben löste, während ich von sozialen Netzwerken abgelenkt wurde, während ich Gesundheitsprobleme löste, wurde die Site spät in 4 Tagen gestartet. Aus irgendeinem Grund hat mich das verdammt betroffen - es gab eine Reserve von fast einem Monat, es war notwendig, absolut nichts zu tun, aber ich war spät dran und nicht alles wurde getan. Ich hatte zuvor gegen meinen eigenen Zeitplan verstoßen, es aber praktisch nicht bemerkt, und diese 4 Tage Verspätung trafen mich. Traurig und dachte am Abend, ich machte mich weiter an die Arbeit. Und ich begann damit, die Site-Adresse an meine dritten Bekannten zu senden. Nachdem ich auf die Reaktion gewartet hatte, wurde ich munter - die durchschnittliche Bewertung war "das Thema ist normal, habe es getrunken und es wird cool sein."

Jetzt haben sich die Wünsche der Benutzer meinem Plan angeschlossen - die meisten Wünsche waren in meinem Plan enthalten (und existieren noch). Also brauche ich das nicht alleine.

Und in diesem Moment hörte ich auf.

Die Arbeit hat sich geändert (ich bin immer weiter davon entfernt und es macht mich noch mehr als 4 Tage Verspätung beim Start der Website traurig), tägliche Aktivitäten, Herbstmilz und hundert andere Gründe verschwenden Zeit, die immer weniger wird. In der letzten Woche habe ich mich nur ein paar Mal für das Projekt hingesetzt. Und es macht mir Angst, dass ich es nicht beenden werde. Und was mich am meisten erschreckt, ist, wie Menschen in ähnlichen Situationen leben, aber mit Frauen und Kindern? Wie schaffen Sie es, alles zu tun?

Warum habe ich diesen ganzen Text geschrieben?



Erinnern Sie die Leser noch einmal an die Wahrheiten:
  • Wenn du etwas tun willst - nimm es und mach es
  • Experimentieren Sie, haben Sie keine Angst, Fehler zu machen - der Computer wird alles aushalten, die Hauptsache ist, dass Sie am Ende ein Qualitätsprodukt erhalten
  • Wenn Sie ein Student sind, der das Interesse am Lernen verloren hat oder einfach etwas Neues lernt, versuchen Sie, Material aus alternativen Quellen zu studieren. Wenn dies Ihnen nicht geholfen hat, wechseln Sie Ihren Beruf. Die Arbeit an einem ungeliebten und unverständlichen Job wird Sie erschöpfen und Ihre Kollegen ärgern
  • Es ist nie zu spät zu lernen, aber es ist am besten, so früh wie möglich zu beginnen

Nachwort


In den letzten sechs Monaten habe ich eine Menge neuer und interessanter Informationen gelernt, einige meiner Gewohnheiten geändert, etwas losgeworden, mich an etwas gewöhnt.

Kurz aus dem Interessanten:
  • google.com wurde in duckduckgo.com geändert, da duckduckgo in stackoverflow integriert ist und die Antwort auf Ihre Frage bereits sofort auf der Suchseite angezeigt werden kann
  • Windows abgelehnt, Skype, das letzte Konto in sozialen Netzwerken gelöscht
  • Ich habe keine Angst mehr vor Nano und weiß sogar, wie ich aus Vim herauskomme
  • Ich dachte über den Datenschutz im Netzwerk nach, nachdem ich gesehen hatte, welche Informationen ein Benutzer hinterlassen kann, indem er einfach auf die Website geht
  • Englisch lesen
  • verliebte sich in die Konsole und analysierte die Ausgabe von Informationen über Anfragen an die Site (wie froh ich war, als ich 1 Anfrage aus 100 Anfragen an die Datenbank stellte und dann auch die Ausführungszeit reduzierte, indem ich die Auswahl nur auf die erforderlichen Spalten und Zeilen beschränkte)
  • Mir wurde klar, wie viel ich die von mir verwendeten Technologien nicht kenne
  • und ich bedauere, dass mir vor 5-7 Jahren niemand Python gezeigt hat und SQL nicht klar erklären konnte (übrigens, der Lehrer unterrichtet immer noch, die Schüler verstehen seine Erklärungen immer noch nicht und lernen SQL selbst)
  • Ich konnte etwas Eigenes erschaffen, und eines Tages wird es nicht mehr lahm und schräg sein.

Gut zu allen.

Mach es einfach

ps Ich bin sehr komplex und jetzt mental nicht bereit, Links zu der Site für die breite Öffentlichkeit bereitzustellen. Im Moment gibt es 3 "rote" Gegenstände, nach denen der Gegenstand "Sie können mit Ihrem Handwerk angeben" geöffnet wird.
pss hat meinen Gedankenstrom ein wenig überarbeitet, danke für die Kritik und Kommentare

Source: https://habr.com/ru/post/de424771/


All Articles