Programmierung | Original, von KI übersetzt
-
Es ist in Ordnung, Competitive Programming zu betreiben, solange es dich motiviert.
-
Programmieren ist wie Schreiben. Programmieren ist eine kreative Tätigkeit.
-
Mach dein eigenes Projekt. Schreib deinen technischen Blog. Programmiere für ein Projekt, das du über Jahre pflegen wirst, genau wie das Führen eines 10-jährigen Blogs.
-
Normalerweise musst du nicht dem hinterherjagen, was gerade in der Technik angesagt ist, da viele Trends nach ein paar Jahren wieder verschwinden.
-
Folge deiner Neugier und programmiere für dich selbst.
-
Versuche, Programme für dich selbst zu erstellen. Sie sind keine Arbeitsaufträge.
-
Wenn du dich oft unglücklich fühlst, während du programmierst, dann machst du es falsch.
-
iOS, Android, Backend, Frontend, KI – alles ist gut. Man kann zumindest versuchen, ein kleines Projekt damit umzusetzen oder ein paar Monate lang darüber zu lernen.
-
Beim Debuggen geht es darum, misstrauisch zu sein. Vertraue nicht jeder Zeile deines Codes; du kannst dir einen besseren Weg überlegen, es zu tun.
-
Beim Programmieren ist sogar ein Zeichen oder eine Protokollzeile wichtig. Sie sagen dir etwas.
-
Mit Programmierung erstellst du Produkte, die andere nutzen. Es ist interessant, Nutzer zu haben.
-
Du musst nicht hart sein. Ein paar hundert Nutzer, die dein Produkt wirklich lieben, sind besser als zehntausend Nutzer, die es nur freundlich mögen.
-
Erinnere dich daran, warum du mit dem Programmieren angefangen hast, und vergiss es nie.
-
Wende Programmierkenntnisse auf jeden Lebensbereich an. Sie sind dasselbe. Dinge stapelweise oder einzeln erledigen. Wie man Aufgaben in Einheiten aufteilt. Die zugrunde liegende Technik hinter jeder App. Die nuancenreichen Details hinter Netzwerkanfragen.
-
Die Abstraktion und das logische Denken. Das detailorientierte Denken. Das Durchdenken jeder Lösung.
-
Wahrheit ist Wahrheit. Normalerweise liegt der Computer nicht falsch. Die elektrische Schaltung liegt nicht falsch. Der Compiler liegt nicht falsch. Sei nicht verärgert, wenn es einen Bug gibt.
-
Strebe nach eleganten und einfachen Lösungen. Einfachheit ist die höchste Form der Raffinesse. Du musst hart nachdenken, um das Wesentliche zu behalten und das Überflüssige zu entfernen.
-
Bei Programmiersprachen sind die Sprachen, die die Arbeit erledigen, in Ordnung. Ich persönlich empfehle Java und Python.
-
Folge Yin Wang unter https://www.yinwang.org. Er ist einer der wenigen Genies im Programmieren, obwohl er sagt, dass Genies nie existieren.
-
Die Kenntnisse und Prinzipien des Programmierens lassen sich leicht auf Sprachenlernen, Hardware-Reparatur, Life Hacking und wissenschaftliche Forschung anwenden.
-
Für die meisten Programmieraufgaben brauchst du außer Schulmathematik keine ausgefallene Mathematik.
-
Reflektiere nach Jahren über deinen alten Code oder pflege ein Codeprojekt lange. Es wird dir viel beibringen.
-
Wenn du deine Leidenschaft fürs Programmieren verlierst, mach einfach eine Zeit lang andere Dinge.
-
Der Zeitpunkt des Testens ist wichtig. Mach es einfach natürlich. Oft musst du keine Tests für dein Projekt schreiben. Versuche, keine Tests zu schreiben, Unit-Tests zu schreiben, Integrationstests zu schreiben, API-Tests zu schreiben. Vergleiche sie weise.
-
Probiere KI-Code-Editoren aus. Nutze ChatGPT oder andere Chatbots oft. Da KI-Tools jetzt einfach zu bedienen sind, kannst du dich auf kreativere oder wichtigere Teile konzentrieren.
-
Beim Debuggen prüfe, ob du die neueste Version der Bibliotheken verwendest. Wenn eine Bibliothek nicht mehr gepflegt wird, suche nach aktiv gepflegten Klonen oder Forks.
-
Wenn du etwas wie Netzwerkgeschwindigkeit oder Programmlaufzeit verbesserst, muss es eine quantitative Metrik geben. Sonst weißt du nicht genau, ob es eine triviale Verbesserung oder Verschlechterung gab.
-
Für persönliche Projekte ist es in Ordnung, keinen Testcode zu schreiben, aber es ist besser, nach einer signifikanten Codeänderung lokal zu testen. Berücksichtige den betroffenen Code, wie lange er in der Cloud-Pipeline läuft und wie oft er zu Fehlern führen könnte, und schreibe dann entsprechend Testcode. Verwende Methoden, die einfaches Testen ohne negative Auswirkungen auf die Nutzererfahrung ermöglichen.
-
Schreibe einfachen und eleganten Code. Minimiere Duplizierung, obwohl manchmal Duplizierung zu einer einfacheren Lösung führt. Minimiere Sonderfälle. Mach es leicht zu testen. Refaktoriere, um gemeinsame Funktionen oder Prozesse zu nutzen, verwende Rekursion oder Schleifen und suche nach Mustern.
-
Behandle Fehler richtig. Denke über die Ursache, die Verantwortung und ob wir sie ändern können oder ob es ein externer Fehler ist. Berücksichtige die Rettungsmethode, den Auswirkungsbereich, wo du ihn behandelst, ob wir Fehler kategorisieren sollten, wie wahrscheinlich er ist und die schlimmsten Szenarien.
-
Der Unterschied zwischen der Verwendung von replace oder startWith gefolgt von slice ist, dass Ersteres die Position des Strings ignoriert. Wende ähnliches Denken auf jedes Detail des Programmierens an.
-
Minimiere die möglichen Werte für ein Element; verwende nur einen Wert für einen Fall. Verwende nicht null, wenn wir bereits false haben. Wenn wir ein übersetztes true- oder false-Flag haben, müssen wir sicherstellen, dass wir jedes Mal, wenn wir ein übersetztes Flag haben, das Nichtvorhandensein eines übersetzten Flags nicht als false behandeln.
-
Verwende GitHub oder Sourcetree, um geänderte Codeblöcke häufig zu überprüfen. Sie sind bequemer zum Lesen von Code.
-
Beim Programmieren gibt es oft keine trivialen Dinge. Jedes Zeichen, die Reihenfolge der Listenelemente, jeder String, jede Zahl und jeder Variablenname sind wichtig. Jede Ausführungsreihenfolge und jedes Protokoll sind wichtig.
-
Mach die Dinge, die dich am meisten begeistern. Du musst dir keine Sorgen machen, nicht dem Mainstream zu folgen.
-
Verwende Befehle häufig, da sie Aufgaben automatisieren oder mit LLMs helfen können. UI-Operationen sind schwerer zu automatisieren.
-
Speichere die Protokolle eines Programms, einschließlich lokaler, UAT-, Microservice- und Pipeline-Protokolle, in einem Verzeichnis. Beim Programmieren enthalten diese Protokolle zahlreiche Verbindungen. Durchsuche sie, um Beziehungen zu identifizieren, und sammle relevante Daten oder Kontext.
-
Mit gesammelten Protokollen ist es einfacher, bei einem Problem zu bestimmen, ob du es schon einmal hattest. Aus früheren Protokollen weißt du vielleicht, wie du es beheben kannst. Protokolle geben ein besseres Verständnis dafür, wie alles funktioniert und wie Computer Programme ausführen. Im Gegensatz zu Code sind Protokolle zeitbezogen und bieten mehr Informationen über den Ausführungsstatus. Sie sind auch leichter für das Debugging.
-
Debugging zeigt viele Informationen, einschließlich der Werte umgebender Variablen, Thread-Namen und Funktionsstapel.
-
Automatisiere alles, wie Proxy-Updates und die Auswahl des besten Proxy-Servers. Verwende Python, um umfangreich Skripte zu schreiben.