it-swarm.dev

Was sollte jeder Programmierer wissen?

Was sollte jeder Programmierer wissen, unabhängig von den verwendeten Programmiersprachen oder Betriebssystemen oder der Umgebung, für die er entwickelt wurde?

Einige Hintergrundinformationen:

Ich bin daran interessiert, der beste Programmierer zu werden, den ich kann. Als Teil dieses Prozesses versuche ich zu verstehen, was ich nicht weiß und würde mir sehr zugute kommen, wenn ich es tun würde. Zwar gibt es eine Menge Listen nach dem Motto "n Dinge, die jeder [Programmiersprache einfügen] Entwickler wissen sollte", aber ich habe noch nichts Ähnliches gefunden, das nicht auf eine bestimmte Sprache beschränkt ist.

Ich erwarte auch, dass diese Informationen für andere von Interesse und Nutzen sind.

245
Matt Lacey
  • Arbeiten Sie in kleinen Teams (2-10), in denen Sie einer der schwächsten Programmierer sind. Sie werden viel mehr aus der Arbeit mit erfahrenen Leuten lernen als aus dem Vertrag/Freelancing und dem Lesen von Büchern.
  • Hässliche, vollständige und funktionierende Beats sind elegant, unvollständig und gebrochen.
  • Erfahren Sie mehr über jedes trendige Konzept, ob es gut, schlecht oder die Jury ist noch nicht da (z. B. MVC, Ruby on Rails, testgetriebene Entwicklung), damit Sie es ignorieren können es oder umarme es mit gutem Grund.
  • So schreiben Sie Kommentare und benennen Ihre Variablen/Methoden/Objekte/Funktionen richtig. Lesen Sie die neueste Ausgabe von Code Complete, um Vorschläge zu erhalten.
1
Roger

Wie Sie stolz auf Ihre Arbeit bleiben und gleichzeitig Fehler eingestehen können.

Schluck keinen Stolz!

1
pointernil
1
ksuralta

Ich lebe nach diesen Mottos:

"Erfolg besteht zu 10 Prozent aus Inspiration und zu 90 Prozent aus Schweiß."

"Wie oft habe ich dir gesagt, dass, wenn du das Unmögliche beseitigt hast, alles, was noch so unwahrscheinlich ist, die Wahrheit sein muss?"

1
Jonathan Swift

Wenn ich zur Arbeit komme, bleibt mein Ego im Auto. Nichts ist wichtiger als die Arbeit und ihre Qualität. Nimm niemals Kritik persönlich und höre allen zu, egal wie dumm sie klingen mögen. Aber machen Sie niemals Kompromisse bei der Qualität, nur weil sie schneller oder einfacher ist.

Und natürlich lernen, lernen, lernen. :) :)

1
Antonio Louro

Sollte wissen, was zu codieren ist und wie zu codieren ist. Wenn Sie es nicht wissen, sollten Sie zumindest die Fähigkeit und Begeisterung haben, es zu lernen!

1
Nrj

Wisse, dass ein gutes (das beste) Programm nicht unbedingt dasjenige ist, das schnell läuft. Ein gutes Programm ist eines, das: - leicht zu verstehen und zu ändern ist. - Ist einfach zu bedienen - es hat eine einfache/übersichtliche/leicht zu erlernende Oberfläche.

Ich möchte sagen, dass die besten Programmierer diejenigen sind, die Programme schreiben können, die selbst die schlechtesten Programmierer verstehen und selbst die gelegentlichsten Benutzer verwenden können.

1
unknown (yahoo)

Toller Thread! Ich werde hinzufügen, dass ich viel aus den Programmierperlenbüchern gelernt habe.

1
user21110

Ich bin ziemlich scharf auf Mathematik, aber ich denke, dass Programmierer im Laufe der Zeit wissen sollten, welche Kaninchen sie jagen und welche sie loslassen sollten. Wenn Sie nach einer Antwort auf eine Frage suchen und die Antwort nirgendwo finden, gibt es nicht auf, einen anderen Ansatz zu wählen. Wir werden dafür bezahlt, Probleme zu lösen, wir werden nicht für die Methode bezahlt, mit der wir das Problem lösen.

Sie können und werden auch Fehler machen. Dies hilft auf zwei Arten. Erstens kommst du nicht auf dich selbst runter. Zweitens sehen Sie nicht auf Ihre Mitarbeiter herab. Dieser zweite wird Ihnen auf Ihrem Karriereweg helfen.

1
Anthony Potts

sich selbst zu disziplinieren, um Software zu schreiben, die gut genug ist, auch wenn sie nicht perfekt ist

1
Karl

Wie man klar und präzise schreibt. Ich spreche nicht von Code, obwohl das auch gut wäre.

1
Ferruccio

Jeder Programmierer sollte wissen, wie man Probleme löst. Es ist wichtig, bei jeder Aufgabe offen zu sein, welche Tools und Methoden verwendet werden sollen. Manchmal sind Frameworks oder Muster die Antwort, manchmal jedoch nicht.

1
Heat Miser

Spielen Sie das Spiel und lernen Sie, dass es bei Ihrer täglichen Arbeit hauptsächlich um Arbeitsplatzpolitik und nicht um Programmierung geht.

1

Versionskontrolle natürlich. Vor allem aber die Mechanik eines Computers.

Compilertheorie: Wie transformiert man eine Sprache in eine andere? Ohne eine Vorstellung davon, wie dies funktioniert und was es kann, ist Code mit Sicherheit voller Fehlentscheidungen. Compiler neigen dazu, für Nicht-Initiierte magisch auszusehen, und sie neigen dazu, schrecklichen Code zu schreiben.

Computerarchitektur: Sie müssen die Maschine bis zu einem gewissen Grad tief unten verstehen, um wirklich guten Code schreiben zu können. Selbst auf mehreren Middleware-Schichten wird die grundlegende Maschine durchscheinen. Sie müssen Caches, Multiprocessing und die Funktionsweise von IO) verstehen, um auf einer bestimmten Ebene eine gute Chance zu haben, anständigen Code zu schreiben funktionieren bis zu einem gewissen Punkt gut - aber wenn es aufgrund mangelnder Synchronisation bricht oder gegen eine Leistungswand stößt, müssen Sie verstehen, was sich im Darm der Maschine abspielt.

1
jakobengblom2

Umgib dich mit Menschen, die schlauer sind als du.

1
JesperE

Die Problemdomäne, in der sie arbeiten.

1
user39733

Jeder Entwickler da draußen sollte dies lesen Beitrag :

"Es ist schwieriger, Code zu lesen als ihn zu schreiben"

1
antonio

Das einzige, was ich für Ratschläge aufgeben kann:

  1. Programmieren ist nicht nur Arbeit, sondern Kunstform
  2. Programmierung ist die einzige Kunstform, in der es sich lohnt, faul zu sein.

Jetzt nicht die Form von Faulheit, bei der Sie Code aus einem Open-Source-Projekt holen, denken, dass er gut genug ist, und ihn in Ihre eigene App ausschneiden und einfügen. Ich meine, Sie bereiten sich darauf vor, in Zukunft faul zu sein.

Ich versuche immer, alles in grundlegende Standardobjekte zu zerlegen, die spezielle Aufgaben ausführen. Ein SSH-Objekt, das SSH-Verbindungsbehandlung und SCP'ing ausführt, ein Datenbankverbindungsobjekt, das die gesamte Datenbankkommunikation abwickelt, wie Sie es nennen.

Lass es einfach fallen, lass es funktionieren und du bist fertig. Je länger Sie ein guter Programmierer sind, desto einfacher wird es, etwas zu erledigen.

Auch wenn Sie nicht faul genug sind (überprüfen Sie beispielsweise TheDailyWTF ), holen Sie sich einen anderen Job. Es sollte etwas in dir sein, das dazu führt, dass du die Programmiersprache nicht erneut in der Sprache selbst implementieren oder irgendetwas anderes dummes tun willst Sie sehen auf TheDailyWtf.

1
SchizoDuckie

Wisse, dass es mehr als einen Weg gibt, dies zu tun. Dies ist das Perl-Motto, aber es ist sehr allgemein. Sie können auch das freies Software-Lied lernen.

1
stephanea

Demut. Sie sind ein Mensch, keine Erweiterung der Maschine, an der Sie arbeiten. Sie wissen nicht und werden nie alles wissen und Sie werden immer Fehler machen.

1
Firas Assaad

Wissen, wie man nicht alles neu erfindet. Die überwiegende Mehrheit der Probleme, mit denen Entwickler konfrontiert sind, wurde vor langer Zeit von intelligenteren Entwicklern konfrontiert und erfolgreich gelöst. Dieses Wissen nicht zu nutzen, ist der größte Fehler, den ein Entwickler machen kann. Im schlimmsten Fall kann man das Problem nicht lösen. Im besten Fall wird man Zeit damit verschwenden, eine bereits existierende Lösung zu finden.

Goran

1
Goran

Wenn P == NP

Und Versammlung auf einer Plattform. Wahrscheinlich wird es nie benutzt werden wollen, aber wenn man sich bewusst ist, dass es sich nicht um Schildkröten (oder Objekte) handelt, stoppt das Byte hier.

Ich scherze natürlich über NP, aber ein Verständnis dafür, welche Probleme tatsächlich schwer problematisch zu lösen sind, kann sehr hilfreich sein.

Verstehen Sie den Unterschied zwischen Idealismus und Pragmatismus und warum beide beim Entwerfen von Software wichtig sind.

1
sammyo

Dies sind Dinge, die ich im Laufe meiner Ausbildung und Karriere aus Versuch und Irrtum gelernt habe. Ich würde sagen, diese Lektionen haben mir gute Dienste geleistet, obwohl es manchmal schwierig ist, meine eigenen Defizite zu überwinden.

  1. So konzipieren Sie ein Problem, bevor Sie versuchen, es zu codieren. Das Entwerfen im Voraus ist wichtig, und die Fähigkeit, das Problem richtig zu konzipieren, trägt zu einem guten Design bei.

  2. Demut. Wir hören nie auf zu lernen und sollten niemals davon ausgehen, dass wir alles wissen. Es gibt immer etwas zu lernen und wir werden immer Zeiten haben, in denen wir falsch liegen. Es ist wichtig, das zu erkennen und zu akzeptieren.

  3. Wie man Code bricht. Viele, mit denen ich zusammengearbeitet habe (einschließlich mir), haben codiert, um die Anforderungen zu erfüllen, und nicht genug Zeit damit verbracht, zu überprüfen, ob der Code gegenüber schlechten Daten und schlechten Kontrollflüssen robust ist.

  4. Wie man Code versteht. Von anderen zu leihen ist keine schlechte Sache, aber zu leihen, ohne zu verstehen, was geliehen wird, ist eine schlechte Angewohnheit. Nur weil es wie eine Ente aussieht und wie eine Ente quakt, heißt das nicht, dass es nicht wie ein Löwe oder BM wie ein fliegender Elefant frisst.

1
Jeff Yates

Sich in die Lage des Entwicklers versetzen, das Projekt möglicherweise nach ihnen zu übernehmen - gut kommentieren und vernünftig benennen.

1
unochild

Jeder Programmierer sollte mindestens einmal seinen Kunden/Benutzer sehen. Sie erhalten eine bessere Sicht auf den Benutzer und warum er manchmal solche "seltsamen" Anforderungen hat.

Wenn Sie einen Fehlerbericht erhalten, suchen Sie nicht nach einer Person, die die Schuld trägt, und überdenken Sie nicht. Vielleicht ist es deine Schuld.

1
ravicini

Kürzlich habe ich glaubwürdige Blogs von technischen Managern gelesen, in denen ich mich darüber beschwert habe, dass fast alle Bewerber für Programmierpositionen nicht wirklich codieren können, auch diejenigen mit CS-Abschluss. Wenn dies zutrifft, ist die Antwort auf Ihre Frage klar: Jeder Programmierer muss wissen, ob er tatsächlich programmieren kann. Ohne Vorwarnung sollten Sie in der Lage sein, ein einfaches Problem anzuhören, sich dann an einen Computer zu setzen und in wenigen Minuten eine korrekte Lösung zu codieren.

Siehe http://steve.yegge.googlepages.com/five-essential-phone-screen-questions

1
dongilmore

Allgemeines:

  • Wie man lernt (Dinge werden sich immer ändern)
  • Wie man mit nicht-technischen Leuten kommuniziert
  • Wie man mit technischen Leuten kommuniziert
  • Wie man in einer Gruppe arbeitet
  • Wie man seine Zeit verwaltet
  • Wie man Projekte aufschlüsselt, schätzt und plant
  • Wie man Einwände erhebt oder kritisiert ohne ein Schwanz zu sein

Technisch:

  • Grundlegende Datenstrukturen (Listen, Hashs, Heaps usw.) Auch wenn Ihre bevorzugte Sprache diese für Sie implementiert, sollten sie keine Black Boxes sein.
  • Ein paar verschiedene Algorithmen und wie man Laufzeiten analysiert. Nicht jeder braucht um das Sortieren zu kennen, aber um ehrlich zu sein, so viele Leute tun es, Sie sind in einer kleinen Minderheit, wenn Sie es nicht tun.

Die meisten Dinge von dort sind schwer zu verallgemeinern. Zum Beispiel muss jemand, der an eingebetteten Controllern arbeitet, SQL wahrscheinlich nicht kennen, ebenso muss ein DBA die STL wahrscheinlich nicht kennen.

1
Bill

Jeder Programmierer sollte die Grundlagen der zugrunde liegenden Hardware kennen, an der er arbeitet. Was ist der Unterschied zwischen Sprachen, bevor Sie eine auswählen? Kennen Sie jeden Zentimeter der Sprache, an der er arbeitet. Kennen Sie fast 10 verschiedene Container. Generische Programmierung. grundlegende boolesche Logik, einige grundlegende mathematische Prinzipien. die 100 grundlegenden Algorithmen. Und gute Brillentechniken.

ABER die beste Fähigkeit eines guten Programmierers ist das Lösen von Problemen und das unkonventionelle Denken. Glauben Sie mir, Sie können das nicht lernen, Sie sind damit geboren.

1
user28954

Neben dem Offensichtlichen:

Kommunikationsfähigkeiten

Grafisch, gesprochen und geschrieben.

1
Demian Garcia

Nimm niemals etwas an. Wie in Stephen Kings Zelle. Assume macht aus U und mir einen Arsch

1
Tanmoy

Passen Sie den Komplikator auf!

1
Mike Robinson

ein guter Entwickler muss dazu in der Lage sein.

  • treten Sie vom Codeonce zurück und schauen Sie sich eine Weile das Gesamtbild an
  • erklären Sie einem Mitentwickler und der Büro-PA sowie dem Direktor und dem Marketing-Manager, was (und warum) sie tun.
  • verstehen Sie, dass etwas unvermeidlich/inhärent falsch ist, wenn die Spezifikation zum Zeitpunkt des Starts nicht geändert wurde
  • nehmen Sie Entwicklerkritik als Lernmethode
  • Niemals aufhören zu lernen
  • die Entwicklung guter Software/Code macht immer noch Spaß
1
chillfire

Wissen, wann man aufhört.

Verderben Sie ein gutes Programm nicht durch Überverschönerung und Überfeinerung. Fahren Sie fort und lassen Sie Ihren Code für eine Weile für sich stehen.

- Aus "The Pragmatic Programmer"

Obwohl ich manchmal einfach nicht anders kann und meine Hände einfach jucken, um es ein bisschen mehr zu optimieren. =)

1
teriz

Zeigen Sie nicht mit den Fingern auf mögliche Lösungen. Auf das positive Ergebnis kommt es an.

(aus: "Praktiken eines agilen Entwicklers")

1
Patrick Peters
  • SQL
  • matlab
  • eine OO Sprache
  • eine funktionale Sprache
  • eine Skriptsprache
  • Lex/yacc oder ähnliche Parsing-Tools
  • und vielleicht tex, prolog, vhdl, postscript

Nur ein paar Stunden oder Tage Erkundung reichen aus. Sie müssen mit diesen Dingen nicht sehr vertraut sein.

Der Hauptpunkt ist, die Ansicht des Programmierers zu erweitern: Es gibt viele Arten der Programmierung, die so unterschiedlich sind. Lassen Sie nicht zu, dass die von Ihnen verwendete Sprache Ihr Denken einschränkt.

1
kcwu

Mein .02 Cent wert ......

Nicht zu wissen, wie Sie eine Aufgabe entwerfen/codieren/ausführen, während der Client danach fragt, ist KEIN Grund genug, die Clientanforderung abzulehnen. Manchmal müssen wir uns darauf einigen, etwas zu tun, WEIL der Kunde es braucht ... und dann herausfinden, wie es geht.

Wie Patton einmal sagte: "Wir sind im Geschäft, um das Unmögliche zu tun" ... jeder Kerl kann das erreichen, was möglich ist. Den letzten Teil habe ich hinzugefügt;))

1
jfq722

Viele gute Antworten hier, aber ich werde noch eine herauswerfen: Verlassen Sie sich NICHT auf Ihren Job, um Ihre Fähigkeiten zu verbessern. Viele Programmierer gehen davon aus, dass die Befolgung von Bestellungen und die Behebung von Fehlern in einem typischen IT-Shop, der CRUD-Programmierung durchführt, sie automatisch zu einem "Senior-Programmierer" macht. Nicht unbedingt so: Ich mag Jared Richardsons Linie: "Einige Programmierer haben fünf Jahre Erfahrung. Einige Programmierer haben fünf Mal ein Jahr Erfahrung gesammelt."

Akzeptieren Sie, dass es letztendlich IHRE Verantwortung ist (NICHT die Ihres Chefs), Ihre Fähigkeiten zu verbessern, neue Sprachen zu lernen und qualitativ hochwertigeren, gut gestalteten Code zu erstellen. Dies kann bedeuten, dass Sie Ihre eigenen Tools bei der Arbeit schreiben, dass es sich um ein Nebenprojekt handelt, das in Ihrer Freizeit durchgeführt wird, dass es sich um ein neues technisches Buch pro Monat handelt oder dass Sie einen Beitrag zu einem Open-Source-Projekt leisten. Wenn Sie ein Projekt finden, das sich auf etwas bezieht, für das Sie eine Leidenschaft haben, umso besser.

Egal, ob Sie ein Angestellter oder ein Auftragnehmer sind ... letztendlich sind wir ALLE Freiberufler.

1
pbailey19
1
amit

Die Existenz von http://stackoverflow.com

1
OrElse

Wie benutzt man Google?

1
Hagai L
  1. Lass dein Ego fallen

  2. Kritik ist nicht böse

  3. Umfassen Sie das Scheitern

  4. Beheben Sie sich schnell von einem Fehler

  5. Üben, üben, üben ....

  6. Sei bestrebt, von anderen zu lernen

  7. Sei bereit, dich zu ändern

1
gath

So verstehen Sie ein Programm, das in einer Programmiersprache geschrieben ist, die Sie nicht gelernt haben.

(Zum Beispiel ein Java Programmierer, der C # -Code liest, ohne C # zu lernen)

1
Ming-Tang

Dass Sie Ihr eigenes Hundefutter essen müssen, wenn Sie wirklich robusten Code erstellen möchten.

1
Mark Tomlin

LISP lernen.

ESR genagelt dieser :

"Zu den Sprachen, die für Hacker von besonderer Bedeutung sind, gehören Perl und LISP" ... "LISP ist es wert, aus einem anderen Grund gelernt zu werden - der tiefgreifenden Erfahrung der Aufklärung, die Sie haben werden, wenn Sie sie endlich erhalten. Diese Erfahrung wird Sie für den Rest zu einem besseren Programmierer machen Ihre Tage, auch wenn Sie LISP selbst nie häufig verwenden. "

Ich habe noch nie einen LISP-Programmierer gesehen, der nicht so einfach eine neue Sprache lernen konnte, obwohl ich viele, viele Programmierer gesehen habe, die sich darauf spezialisiert haben jede andere vorstellbare Sprache, die Schwierigkeiten hatte, neue Sprachen zu lernen. Es gibt etwas an LISP, das das Gehirn streckt. (Ich denke, es hat mit der Zirkularität zu tun, etwas an sich zu definieren.) Wie ein Schlangenmensch scheint nichts mehr wie eine große Strecke zu sein.

Mein College verlangte von allen Studenten, Kurse in Fremdsprachen und Kulturen zu belegen, einschließlich nichtwestlicher Kulturen. Ich bin erstaunt, dass wir es den Leuten erlaubt haben, die Informatikschule zu absolvieren, nachdem sie nur C++ und Java gelernt haben.

Ja, bei der Einstellung rangiere ich so über vielen anderen Dingen hier. Jeder LISP-Programmierer kann in fast kürzester Zeit "Quellcodeverwaltung, Komponententests und kontinuierliche Integration" erlernen, aber ein Nur-Java-Programmierer, der diese drei Dinge kennt, hat möglicherweise Probleme mit Abschlüssen, Parsern oder etwas, das ich tatsächlich brauche. Wenn Sie sich mit Informatik und Programmierung auskennen, können wir Ihnen die Prozesse beibringen, aber nicht umgekehrt - oder zumindest nicht in einem Zeitrahmen, den ich bereit bin, mit Gehaltsabrechnungen zu subventionieren.

1
Ken

Als College-Absolvent gibt es soooo viele Dinge, die ich in der Schule nicht gelernt habe und die ich selbst lernen musste. Ich könnte über die verschiedenen Dinge weitermachen, die ich selbst lernen musste, aber das könnte eine Weile dauern :) Stattdessen schlage ich vor, dass das Folgende jedes spezifische Werkzeug oder jede Technologie übertrumpft:

Lerne weiter neue Dinge. Du musst den Drang nach kontinuierlicher Verbesserung haben, um scharf und wettbewerbsfähig zu bleiben.

1
Grant Palin

Witzig, aber ich finde, dass die wichtigste Fähigkeit in meiner Arbeit das Googeln ist. Manchmal google ich Problem, noch bevor ich darüber nachdenke :)
Oder, wenn ich es verallgemeinern würde, ich würde es "Informationsverarbeitung" nennen: Fähigkeit, viele Daten schnell zu "scannen" und die benötigten Informationen zu finden.

1
Nikita Rybak

Die Mutter aller Demos

von Wikipedia

Die Mutter aller Demos ist ein Name, der nachträglich Douglas Engelbarts Demonstration vom 9. Dezember 1968 auf der Herbst-Computerkonferenz (FJCC) im Convention Center in San Francisco gegeben wurde, auf der eine Reihe experimenteller Technologien vorgestellt wurden, die seitdem alltäglich geworden sind . Die Demo enthielt die erste Computermaus, die die Öffentlichkeit jemals gesehen hatte, sowie die Einführung von interaktivem Text, Videokonferenzen, Telefonkonferenzen, E-Mail, Hypertext und einem kollaborativen Echtzeiteditor.

1
Özgür

Jeder Programmierer ist ein Programmierer. Dann gibt es auch Designer und Analysten. Wenn die Analysephase übersprungen wurde, sollte niemand dem Programmierer die Schuld geben, wenn er falsche Dinge programmiert ...

Natürlich haben kleine Projekte vielleicht nur einen Entwickler, aber Sie verstehen es.

0
Silvercode

Entlang des Schluckens lernen Sie, wie Sie Ihre Ideen sofort scheiden lassen können, wenn eine bessere Idee vorgeschlagen wird.

0
stephbu
  • Sei demütig, neue Dinge zu lernen.
  • Nimm an der Sprachgemeinschaft teil.
0
amadamala

Mathematik. Das Programmieren ist nur eine erschreckend kleine Teilmenge der Sprache der Mathematik.

0
directrixx

Neben dem Wissen, wie man das Kühlen macht, die Kesselplatte, das Borning und das Redundante. Wissen und lernen Sie eine Sache, Sie sind austauschbar. Sobald Sie darüber hinweg sind, wird Ihre Arbeit einfacher. Wisse, dass, obwohl es "Internetzeit" gibt, Dinge, die es wert sind, getan zu werden, auch Zeit brauchen und nicht in fünf Minuten erledigt werden können, egal was dein Chef denkt.

0
Chris
  • Lernen Sie auch aus Ihren Fehlern.
  • Regex - Was ich immer noch nicht weiß :-(
  • Versionskontrolle.
  • Wo mit Leistungsoptimierungen aufhören.
0
Adam Gibbins

Kennen und verstehen Sie die Theorie und die Algorithmen. Jeder könnte das Codieren lernen, aber nur wenige werden diejenigen, die das Codieren lehren können.

0
andy.gurin

Schritt 1. Lesen Sie http://www.pragprog.com/the-pragmatic-programmer .

Schritt 2. Gewinnen.

0
user23313

Finde es selbst heraus. Oder machen Sie zumindest einen echten, ehrlichen Versuch, das Problem selbst herauszufinden. Sie werden mehr lernen als jemals zuvor und die Antwort von jemand anderem erhalten, und es wird viel lohnender sein.

0
Kyle Walsh

Programmieren macht Computer

  1) Get input  
  2) Process input data  
  3) Generate output

Computer sind dumm, aber sehr schnell.

Und ohne Strom oder eine relevante Energiequelle gibt es keinen Löffel.

0
fsniper

jeder Programmierer muss ressourcenhungrig sein - muss ständig lernen und sich anpassen.

0
arshad

Meine Liste:

  1. Legen Sie mehr Wert auf die Wissenschaft und Logik des Programmierens als auf die Technologie, an der Sie arbeiten!
  2. Machen Sie sich mit dem Endbenutzer vertraut und geben Sie ihm nicht nur etwas, um zu zeigen, dass Sie sich mit einer Technik oder Technologie auskennen. d.h. erzwinge ihm keine Rakete, wenn er tatsächlich ein Fahrrad braucht.
0
Shyam

Die Zufriedenheit des Benutzers ist wichtig, die Codequalität nicht so sehr

0
Daniel Melo
to understand
to think
to write well
to optemize
..and to cheer up :D
0
Ahmad Dwaik

Sei einfach ein guter Teamplayer - akzeptiere Feedback immer als Verbesserungsvorschlag und nicht als destruktive Kritik.

0
ruibm

Wie man mit frustrierenden Menschen umgeht, ohne die Beherrschung zu verlieren.


Wenn der Manager eine Liste mit Elementen auf Ihren Schreibtisch legt und sagt, dass er erwartet, dass sie bis Freitag fertig sind; Wenn der DBA zweimal ein Datenladeskript ausführt; Wenn der Systemadministrator die falsche Version Ihres Codes bereitstellt; Wenn der Benutzer Sie auffordert, zu erklären, wie es funktioniert, erneut - Dann müssen Sie in der Lage sein, mit Anmut damit umzugehen. Weil du mit all diesen Leuten arbeiten musst und es viel besser wird, wenn sie nicht denken, dass du ein böser Idiot bist, egal wie falsch sie sind.

0
Sean McMillan
  • Sie werden nie so viel wissen, wie Sie denken. Auch nach einigen Jahren im Geschäft werden Sie weiterhin Menschen begegnen, die mehr über Ihr persönliches Fachgebiet wissen als Sie. Mach dir keine Sorgen und lerne und lerne weiter.

  • Sie werden nie genug Sprachen oder Architekturen oder Paradigmen oder Schlagworte gelernt haben. Denn sobald Sie glauben, alles zu wissen, wird jemand eine neue erfinden (hier die bevorzugte Technologie einfügen) und Sie werden wieder außer Kontakt sein.

  • Sie werden bald genug dieser alte Fuddy Duddy sein. Schneiden Sie ihn/sie etwas locker und nehmen Sie an, dass er/sie einmal in Ihren Schuhen war.

0
MJB

Querdenken!

0
fastcodejava

Die reale Welt läuft möglicherweise nicht so wie in der Schule. Akzeptieren Sie, dass die Art und Weise, wie ein Unternehmen seine Softwareentwicklung betreibt, nicht genau der Theorie entspricht, die Ihnen beigebracht wurde.

Nehmen Sie sich etwas Zeit, um zu verstehen, wie die Dinge in einer neuen Organisation ablaufen. Dies gilt für alle, aber Absolventen finden es hoffentlich ernüchternder als andere.

0
JB King

Die Fähigkeiten, die benötigt werden, um einen Entwicklungsjob zu bekommen, und die Fähigkeiten, die benötigt werden, um bei einem Entwicklungsjob erfolgreich zu sein, sind oft zwei sehr unterschiedliche Dinge. Bevorzugen Sie bei der Berufswahl Orte, an denen sie gleich sind.

Umgekehrt werden in den meisten Jobs 95% Ihrer Datenstruktur-/Algorithmusanforderungen von Bibliotheksklassen bedient. 95% Ihrer Zeit werden durch den Umgang mit nicht wartbarem Code verschwendet, der von Leuten geschrieben wurde, die Ninjas bei CS sind, aber die technischen Fähigkeiten eines lobotomierten Bibers besitzen.

0
Uri

Wie ein Tierarzt seinen Job macht!

0

Heute bin ich auf dieses Buch gestoßen. Es ist ein sehr schönes Buch und eine gute Zusammenfassung aller Best Practices.

97 Dinge, die jeder Programmierer wissen sollte

0
user171523
0
CMA

Über den Tellerrand hinaus zu denken ist normalerweise eine gute Sache! Der größte Teil der Entwicklung ist nicht nur einfach.

0
Marcos Bento

Wie Sie ihr Kontaktnetzwerk sowohl intern innerhalb der aktuellen Organisation als auch extern nutzen können, da Sie nie wissen, wann Sie jemanden brauchen, der über ein Problem mit Ihnen nachdenkt oder woher das nächste interessante Projekt kommen könnte.

0
TomY

Jeder Programmierer sollte wissen, wie man Code mit einer guten Dokumentation begleitet.

Ich finde, dass gut dokumentierter Code (liberale Verwendung eingebetteter Kommentare) einfacher zu warten und zu aktualisieren ist.

Wenn ein Programmierer seine Gründe für eine Implementierung einbettet (inline zum Code), kann ich weniger Zeit für das Herausfinden und mehr Zeit für die jeweilige Aufgabe aufwenden, unabhängig davon, ob Funktionen hinzugefügt oder andere verwandte Probleme behoben werden.

0
Bob Minteer