it-swarm.dev

Mein Vater ist ungeduldig mit dem Tempo meines Programmierlernens. Was mache ich?

Also kaufte mein Vater mir vor ungefähr einem Monat 5 Bücher über Programmierung (C++, Java, PHP, Javascript, Android). Er ist Architekt und weiß NICHTS über Programmierung. Er kaufte sie mir, weil ich ihm sagte, dass das Programmieren Spaß macht und ich es lernen wollte.

Wie Sie vielleicht wissen, ist es nicht einfach, ein Kind zu sein (ich bin 14) und zu lernen, wie man aus langweiligen Büchern programmiert. Ich werde immer abgelenkt. Ich habe ihm vorher gesagt, dass ich keine Bücher kaufen muss und mir einfach Online-Tutorials ansehen kann. Aber nein, er ist so altmodisch. Er lässt mich nur die Bücher benutzen.

Vor kurzem hat er mich gefragt, was ich damit gemacht habe, und ich habe ihm ein von mir erstelltes C++ - Programm gezeigt, das das, was Sie eingeben, aufnimmt und dann jedem Buchstaben Werte zuweist (A ist der erste Buchstabe im Alphabet, damit er den Wert erhält von 1) .. und so weiter. Es addiert dann alle Werte und sagt es Ihnen. Das Wort "add" hätte also einen Wert von 9.

^^ Das war für ihn nicht sehr beeindruckend. Er schrie mich an und sagte mir, dass ich nur herumgeschraubt habe. Das ist nicht wahr. Er ist extrem traditionell und stur und hört nichts, was ich zu sagen hatte. Was soll ich ihm sagen?

PS: Wenn Sie Tipps zum Zoning in einem Buch haben, lassen Sie es mich wissen

EDIT: Vielen Dank an alle, Sie haben keine Ahnung, wie viel es bedeutet zu wissen, dass es einige Leute gibt, die meine Situation verstehen. Ich habe jeden gelesen und werde die Meinung aller berücksichtigen. ¡Gracias!

200
David

Ich habe ihm ein von mir erstelltes C++ - Programm gezeigt, das das, was Sie eingeben, aufnimmt und dann jedem Buchstaben Werte zuweist (A ist der erste Buchstabe im Alphabet, damit er den Wert 1 erhält). Und so weiter. Es addiert dann alle Werte und sagt es Ihnen. Das Wort "add" hätte also einen Wert von 9.

Ich weiß nicht, was du mit deinem Vater machen sollst. Aber:

Wenn Sie dies alles selbst gemacht haben, von vorne anfangen, aus Büchern lernen, in einem Monat, ist es verdammt beeindruckend. Und Sie haben es in C++ gemacht, einer der gruseligsten Programmiersprachen, die es gibt.

Es gibt einige Leute da draußen, die Interviews führen und ernsthaft versuchen, Programmierjobs zu bekommen, die damit zu kämpfen haben. Siehe diese Geschichte.

Ich kann nur vorschlagen: Mach weiter, was dir Spaß macht. Ignoriere deinen Vater in diesem Zusammenhang. er weiß nicht wovon er spricht. Sie haben Talent im Programmieren und Lernbereitschaft - die Hauptzutaten, um ein großartiger Programmierer zu werden.

197
Joonas Pulakka

Zeig es ihm dieser Beitrag von Peter Norvig. Norvig ist Leiter der Forschungs- und Entwicklungsabteilung bei Google und unterrichtet in Stanford, insbesondere Künstliche Intelligenz. Er schrieb das Standard-Einführungsbuch über KI. Wie lange arbeitest du schon daran? Ich würde nach einem Monat Arbeit eines Anfängers ohne zusätzliche Anweisungen nichts weiter erwarten, insbesondere mit etwas so Dornigem wie C++. Alles, was es wert ist, gelernt zu werden, ist es wert, gut gelernt zu werden.

88
World Engineer
  1. Denken Sie daran, dass Ihr Vater wahrscheinlich denkt, dass Sie das klügste Kind der Welt sind, und er versucht, Ihnen dabei zu helfen, etwas zu lernen, von dem Sie gesagt haben, dass es Ihnen Spaß macht.

  2. Wisse, dass dein Vater, obwohl er zweifellos falsch liegt (fünf völlig unterschiedliche Themen sind eine Menge, um ein Kind auf einmal zu bewerfen), auch ein bisschen Recht hat. Viele Leute versuchen, die Programmierung zu erlernen, indem sie "Tutorials" nachahmen, die sie im Web finden. Das ist nicht immer schlecht, aber IMO führt es normalerweise nicht zu einem soliden Verständnis. Das richtige Buch vermittelt Ihnen zuerst die Grundlagen. Das macht vielleicht nicht so viel Spaß wie das Befolgen von Tutorials, die etwas Auffälliges erledigen, aber Ihre Chance auf langfristigen Erfolg wird deutlich steigen und die Anzahl der Fragen, die Sie auf stackoverflow.com stellen müssen, wird erheblich sinken.

  3. Vergessen Sie alle Bücher bis auf eines, zumindest für den Moment. Es hört sich so an, als hätten Sie bereits mit C++ begonnen. Machen Sie also mit, wenn es Ihnen gefällt.

  4. Sie werden sich von Zeit zu Zeit entmutigt fühlen. Manchmal fühlt es sich so an, als würde die Hälfte der Programmierung stecken bleiben und die andere Hälfte bleibt hängen. Sich zu lösen ist eine wertvolle Fähigkeit, und je mehr Sie üben, desto besser wird es Ihnen gehen. (Es ist auch eine wertvolle Fähigkeit, zu vermeiden, dass man überhaupt hängen bleibt. Üben Sie das auch.)

  5. Das Erlernen Ihrer ersten Computersprache dient der Softwareentwicklung. Das Zeichnenlernen bedeutet das Entwerfen eines Gebäudes. Es ist vielleicht nicht der interessanteste Teil, aber es ist eine erforderliche Fähigkeit.

  6. Wenn Sie ihn zum Zuhören bringen können, versuchen Sie, alle Dinge aufzuschlüsseln, die Sie lernen mussten, um Ihr kleines Programm zu schreiben. Es dauert einige Zeit, um zu lernen, wie man die Werkzeuge benutzt, und er versteht sicherlich nicht, wie das alles funktioniert.

  7. Welche interessanten kleinen Programme können Sie schreiben, nachdem Sie ein einfaches laufendes Programm haben und anscheinend ein wenig C++ gelernt haben? Wie wäre es mit einem Kreditrechner, der einen Zinssatz, einen Kreditbetrag und eine Kreditlaufzeit akzeptiert und einen Zahlungsplan druckt? Oder ein Taschenrechner, der eine Summenformel wie "H2SO4" oder "C6H12O6" liest und das Gewicht des Moleküls ausgibt? Das ist nicht viel komplizierter als das Programm, das Sie bereits geschrieben haben.

83
Caleb

Er kaufte mir sie weil ich ihm sagte, dass das Programmieren Spaß macht und ich wollte es lernen. ... Was soll ich ihm sagen?

"Dad, deine Herangehensweise besteht darin, das Programmieren zu lernen absolut kein Spaß. Hör auf damit."

53
Blrfl

Als Architekt muss er sicher an Ihrem Bein ziehen oder einfach unhöflich sein.

Untersuchen Sie ihn, wann er angefangen hat: Fragen Sie ihn, ob er nach einem Monat mit Wolkenkratzern mit detaillierten Sanitärplänen gezeichnet, die Kräfte und die Belastung der Materialien berechnet und Katastrophenrisikobewertungen durchgeführt hat (z. B. von einem Flugzeug mit Schlangen getroffen) Bücher, als er so jung war wie du. Vielleicht beruhigt ihn das.

Okay, vielleicht ist es nicht der beste Rat, den ich dir geben kann, um über deine Eltern zu sprechen. Ich kann verstehen, dass es als Kind ein bisschen anstrengend ist, einen Vater zu haben, der den Fortschritt bestraft, anstatt ihn zu ermutigen, aber stattdessen als Ermutigung, es besser zu machen. Er mag ein Einstellungsproblem haben, aber das bedeutet keine schlechte Absicht.

48
Spoike

Ich wäre gespannt, welche Bücher Sie verwenden. Nicht alle von ihnen sind wirklich gut. Auch ist nicht jedes Buch für jeden geeignet.

Sie haben Ihr Alter nicht angegeben, daher gehe ich davon aus, dass Sie weit unter 18 sind. Ich habe mit 8 Jahren angefangen zu lernen.

Als ich ein Kind war, nutzte ich viele Ressourcen, um das Programmieren zu lernen. Ich hatte die Handbücher, die mit meinem TI 99/4A geliefert wurden und viele lustige Programme zum Zeichnen von Bildern und Animieren von Figuren enthielten. Das Internet stand mir nicht zur Verfügung, aber es gab sogar Computermagazine, die sich an Kinder richteten, mit Programmen, die ich eingeben und sofortiges Feedback erhalten konnte, und Artikeln darüber, wie man andere Arten von Herausforderungen löst. Ich mochte eine Spionageromanreihe sehr, in der ich Programme eingeben und debuggen konnte, die Teil der Geschichte waren. Leider glaube ich nicht, dass es diese Art von Ressource noch gibt, aber es gibt einige Programmierbücher, die sich an jüngere Leute richten, wie das Hello World-Buch über Python und Land of LISP (obwohl das auch Erwachsenen Spaß macht).

Ich weiß nichts über dich, aber es gab eine Zeit, in der ich einen ziemlichen Kick davon bekam, Programme zu schreiben, die Dinge tun, die denen sehr ähnlich sind, die du gerade beschrieben hast. Schließlich ging ich zu fortgeschritteneren Dingen über. Ich habe ein paar mittelmäßige Spiele geschrieben, einige Demos, die als Reaktion auf Tastenanschläge verschiedene Sounds und Animationen abspielten, und einige Lernhilfen. Als ich ungefähr 10 oder 11 Jahre alt war, schrieb ich ein Programm, das mir half, das Periodensystem der Elemente auswendig zu lernen, indem ich mich wiederholt befragte. (Zu der Zeit waren meine Erinnerungsfähigkeiten besser als jetzt, so dass ich beim ersten Eingeben der Daten fast genauso viel davon hatte, wie beim Quiz, aber es ging darum, Fortschritte zu erzielen).

Ihr Vater merkt es vielleicht nicht, aber Bücher sind nur ein Teil des Prozesses, wenn Sie das Programmieren lernen. Ein kleines Problem zu finden und herauszufinden, wie man es löst, ist die andere Hälfte der Gleichung. Die andere Hälfte besteht darin, ein Buch zu finden, das Ihnen jeweils ein wenig beibringt und es Ihnen ermöglicht, Spaß an der Maschine zu haben. In meinem Fall haben mich Bücher überzeugt, bei denen Grafik und Animation im Vordergrund standen.

Als Kind waren meine Augen glasig, als ich Bücher über Sortieralgorithmen und komplexe Datenstrukturen las, bis ich genug gelernt hatte, um zu sehen, wie sie auf Probleme angewendet wurden, die mir wirklich wichtig waren. Nicht jedes Wort in den Büchern, die Sie lesen, wird Sie begeistern. Das ist ok. Sie werden zu diesem Zeug kommen, wenn Sie es brauchen; Ein Problem, das Sie lösen möchten, erinnert Sie an die Technik, die Sie vor drei Wochen, drei Monaten oder drei Jahren nicht für interessant gehalten haben. Sie werden sie erneut überprüfen und herausfinden.

Ein Monat ist keine sehr lange Zeit, um Programmieren zu lernen. Ich schreibe seit ungefähr 30 Jahren Code in der einen oder anderen Form, auch in der Kindheit, und lerne jeden Tag etwas Neues. Ich bin mir ziemlich sicher, dass ich im ersten Monat, als ich meinen ersten Computer hatte, viel Zeit damit verbracht habe, Munch Man zu spielen, und viel weniger Stunden damit verbracht habe, die Beispielprogramme in meinem Nachschlagewerk zu verstehen. Lernen Sie in dem Tempo, das für Sie funktioniert. Im Moment gibt es keinen Druck und das ist großartig.

"Herumschrauben" ist das, was Sie tun sollen, wenn Sie zum ersten Mal das Programmieren lernen. Hacker (die Art von Paul Graham) stöbern herum und versuchen zu verstehen, wie ihr System funktioniert, wie ihre Programmiersprache funktioniert, wie ihre Tools funktionieren. Sie versuchen etwas, Sie scheitern, Sie überlegen, mit welchem ​​Problem Sie konfrontiert sind, und Sie versuchen etwas anderes, bis Sie etwas zum Laufen bringen. Mach dir nicht so viele Sorgen.

Wenn Ihr Vater nicht dieselben Bücher durcharbeitet, versteht er wahrscheinlich nicht, wie viel Sie bisher gelernt haben. Ich würde nicht erwarten, ein Haus oder einen Wolkenkratzer entwerfen zu können, nachdem ich einen Monat lang ein Buch über Architektur gelesen habe, besonders als Teenager.

Um die Dinge ins rechte Licht zu rücken, habe ich in den letzten vier Wochen in einigen esoterischen Ecken des Engines-Features von Ruby on Rails Framework) gearbeitet Heute habe ich aus Sicht des Benutzers endlich etwas zu zeigen. Ich habe in dieser Zeit eine Menge gelernt und eine Menge kritischen Grundcodes entwickelt, der ziemlich gut funktioniert, aber mein professionelles Äquivalent dazu ist, Benutzern das Eingeben von Code zu ermöglichen Sachen und etwas anderes wieder rausholen: Für einen Gelegenheitsbenutzer auf den ersten Blick nicht so beeindruckend, aber es wurde eine Menge Arbeit investiert. Wenn mir jemand sagen würde, ich hätte vier Wochen lang herumgeschraubt, wäre ich ziemlich enttäuscht. aber ich würde auch wissen, dass sie nur das geringste Verständnis dafür haben, was dazu beigetragen hat, die Dinge so "einfach" zu machen.

30
JasonTrue

Klingt so, als ob Ihr Vater in dieser Situation kein Mensch ist, der Ihnen positive Unterstützung und Unterstützung bei dem gibt, was Sie tun. Einfache Lösung: Verwenden Sie ihn nicht dafür.

Mach deine eigenen Projekte und mach sie, weil sie Spaß machen, nicht weil er (oder jemand anderes) möchte, dass du sie machst. Suchen Sie sich etwas aus, das Ihnen Spaß macht. Sie müssen nicht die gesamte Sprache/Technologie aus einem Buch lernen. Fangen Sie stattdessen einfach an, an Dingen zu basteln. Wenn die Dinge einfach werden, werden Sie schließlich nach neuen Konzepten/Herausforderungen suchen. Und Sie werden feststellen, dass Sie die Bücher lesen möchten, die Sie heute langweilig finden (oder zumindest bestimmte Abschnitte).

Wenn Sie jemals stecken bleiben und Hilfe beim Codieren benötigen, ist Stackexchange eine großartige Ressource, wie Sie bereits herausgefunden haben.

19
DXM

Es klingt für mich so, als ob dein Vater eine Vorliebe für unrealistische Erwartungen hat, oder vielleicht hast du eine Geschichte, in der du Dinge angefangen hast und nicht durchgekommen bist oder beides. Das Wichtigste ist, dass nichts davon wirklich wichtig ist . Alles, was zählt, ist, dass Sie Spaß daran haben, was Sie tun, und es besser machen.

Ich habe eine sehr schwierige Zeit mit Büchern, die mich nicht unterhalten, das habe ich immer. Ich lerne am besten, indem ich anderen Menschen dabei zuschaue, wie sie Dinge tun, Fragen stelle, wenn ich den Zweck von etwas nicht verstehe, und dann kämpfe, bis ich es herausgefunden habe. Das Kämpfen macht uns stärker und gibt uns die Verantwortung für unsere späteren Errungenschaften. Vielleicht ist es deshalb so verdammt schwierig, aus einer Gebärmutter herauszuklettern.

Abgesehen davon wird eines der schärfsten Werkzeuge in Ihrer Toolbox die Fähigkeit sein, offen zu bleiben, inmitten von Kritik produktiv zu arbeiten und Ratschläge aufgrund der Quelle nicht auszuschließen. Gute Programmierbücher packen Sie, inspirieren Sie und erwarten, dass Sie zu ihnen zurückkehren, wenn Sie gegen eine Wand stoßen. Ohne sie werden Sie viele erstaunliche Dinge tun, ohne zunächst genau zu verstehen, was Sie tun. Das Programmieren ist eine sehr bewusste Kunst, daher ermutige ich Sie, Bücher zu suchen, die auf leicht verdauliche Weise geschrieben sind.

Ich programmiere jetzt schon eine ganze Weile professionell und kann Ihnen sagen, dass meine Zufriedenheit wirklich meine eigene ist. Mein Chef versteht nicht ganz, warum die Dinge, die ich geschrieben habe, so großartig sind. Meine Frau schläft ein, wenn ich ihr von meinem Tag erzähle und meine Freunde tun alles, um mich nicht nach meinem Job zu fragen. Ich genieße meine Siege und die gelegentliche Gelegenheit, sie mit meinen Kollegen zu teilen. Dein Vater ist in diesem Fall keiner deiner Kollegen.

Mach weiter und verbessere dich weiter. Gewöhnen Sie sich daran, dass Nicht-Programmierer etwas visuell Beeindruckendes sehen müssen, bevor sie beeindruckt werden. Warum versuchst du nicht dein Glück, so etwas wie einen Mandelbrot/Julia Set Generator zu schreiben? Das könnte ihm zeigen, nach welchen Fortschritten er sucht, und ihn für eine Weile von Ihrem Fall abbringen. In zehn Jahren werden Sie etwas sehr Ähnliches tun, um einen nicht-technischen Manager von Ihrem Rücken zu bekommen, damit Sie echte Arbeit erledigen können.

Denken Sie daran, Sie tun es, weil Sie es genießen.

16
Tim Post

Es scheint, als hätte noch niemand dies vorgeschlagen:

Vor kurzem hat er mich gefragt, was ich damit gemacht habe, und ich habe ihm ein von mir erstelltes C++ - Programm gezeigt, das das, was Sie eingeben, aufnimmt und dann jedem Buchstaben Werte zuweist (A ist der erste Buchstabe im Alphabet, damit er den Wert erhält von 1) .. und so weiter. Es addiert dann alle Werte und sagt es Ihnen. Das Wort "add" hätte also einen Wert von 9.

^^ Das war für ihn nicht sehr beeindruckend. Er schrie mich an und sagte mir, dass ich nur herumgeschraubt habe. Das ist nicht wahr. Er ist extrem traditionell und stur und hört nichts, was ich zu sagen hatte. Was soll ich ihm sagen?

Wenn Sie darüber nachdenken, ist dieses Programm für jemanden, der Computer benutzt und nichts über Programmierung weiß, nicht sehr beeindruckend.

Zeigen Sie Ihrem Vater, wie Sie es geschafft haben. Führen Sie ihn durch den Quellcode. Er wird es wahrscheinlich (definitiv) nicht verstehen, aber es wird vermitteln, wie viel Arbeit Sie in es gesteckt haben und wie viel Sie verstehen, und vielleicht wird er einen positiveren Eindruck davon bekommen, wie viel Sie tatsächlich erreicht haben.

15
benzado

Es ist schwer zu sagen, ob diese Frage für das Elternforum oder das Programmierforum am besten geeignet ist. Ich befürchte, dass mein Rat nicht auf dem richtigen Weg ist, weil ich spüre, dass in dieser Frage möglicherweise viele Probleme mit der Vater-Sohn-Beziehung verwickelt sind.

Abgesehen davon möchte ich mich auf die großartige Gelegenheit konzentrieren, die für Sie und Ihren Vater besteht, sich mit einem Thema zu befassen, für das Sie beide möglicherweise eine Leidenschaft teilen. Da ich selbst Vater bin und meinen eigenen Vater kenne, weiß ich, wie verzweifelt wir möchten, dass unsere Kinder uns zuhören, unseren Anweisungen folgen und von uns lernen. Unsere Kinder werden oft dazu getrieben, das Gegenteil zu tun. Die Tatsache, dass Sie beide dieses gemeinsame Interesse teilen, ist wunderbar.

Väter können sicher hartnäckig sein, aber ich denke immer noch, dass Sie die Möglichkeit haben, durch diese Übung Ihre eigene Individualität und Auswahl zu zeigen. Nicht aus Trotz, sondern aus dem eigenen Antrieb und dem Ehrgeiz heraus, das Thema Programmieren gut zu kennen. Persönlich klingt es so, als hätte dein Vater dich in die Tiefe gestürzt, wenn es um Programmierung geht. Zugegeben, es ist möglicherweise nicht MIPS Assembly Language oder LISP, aber dennoch C++? Java? Huch. Ich liebe es zu programmieren, aber das frühe Lesen hätte mich vielleicht alle zusammen ausgeschaltet. Scherz. :) :)

Was ich also fragen würde, ist Folgendes: was inspiriert Sie ? Was für Dinge möchtest du bauen? Beantworten Sie diese Frage und suchen Sie dann Ihre eigenen Bücher und Tutorials zu diesem Thema. Komm her und stell Fragen. Baue etwas. Dann zeig deinem Vater, was du gebaut hast. Sag ihm, was du gelernt hast. Danke ihm, dass er so verlobt ist und sag ihm, dass du ihn schätzt. Ich sage das, weil es letztendlich darum geht. Er möchte etwas mit dir teilen, weil er dich liebt. Manchmal fällt es Vätern schwer, dies auf traditionelle Weise auszudrücken, deshalb suchen wir diese indirekten Wege, um dasselbe zu sagen. Manchmal saugen wir daran. Aber vergessen Sie nicht, dass bei all dem der Wunsch besteht, Ihnen näher zu sein.

15
Byrne Reese

Mach was du willst

Es ist dein Leben. Du kannst machen was immer du willst. Lass niemanden (auch deinen Vater) dein Leben kontrollieren.

Ich gehe davon aus, dass Sie mehr oder weniger Spaß am Programmieren haben und ein erfolgreicher Spezialist werden möchten (und Ihr Vater möchte, jeder möchte). Aber die Sache ist, Sie werden niemals erfolgreich sein, wenn Sie nicht wissen, was Sie tun und wenn Sie es nicht mögen.

Jedes Feld zu beherrschen ist schwer. Sie können dies nicht nur unter dem Einfluss von jemandem tun. Und niemand weiß, was Sie besser machen sollten als Sie. Sie möchten sich heute ausruhen und den ganzen Tag spielen? Das ist deine Entscheidung und du bist dafür verantwortlich. Sie sollten lernen, für Ihre Entscheidungen und Ihr Leben verantwortlich zu sein. Die Verantwortung für Ihre Entscheidungen ist für jeden erfolgreichen Spezialisten obligatorisch.

Was machst du in dieser Situation? Steh auf, hör niemandem zu und tu, was dir wert ist.

12
Anton Barkovsky

Sie haben Bücher angefordert. Ehrlich gesagt, werden Sie Probleme besser lösen als Bücher lesen. Finden Sie ein Puzzle oder ein Problem, für das Sie eine Leidenschaft haben. Project Euler ist eine großartige Quelle, und CodeGolf kann gelegentlich interessante Fragen stellen. Mein erstes Programmierprojekt war eine C++ - App, die Primzahlen fand. Das Lehrbuch, das ich damals benutzte, bot eine einfache Implementierung wie diese:

bool isPrime(int x){
    int c = 1;
    while(c < x){
        if(x%c == 0){
            return False;
        }
        c=c+1
        /*c+=1 if compiler is set to '98 or more recent*/
    }
    return True;
}

das ist massiv ineffizient. Ich fand ungefähr die ersten 500 Primzahlen mit dieser Funktion, bevor ich angewidert über ihre Langsamkeit aufgab. Dad und ich hatten eine großartige Zeit damit, oben zu optimieren, und obwohl es eine einfache App war, die ihre Ausgabe nicht einmal in eine Datei schrieb, hatte ich Spaß und das resultierende Produkt war cool.

Wirst du lernen, indem du Bücher liest? Ja, aber ich kann nicht betonen, wie wichtig es ist, nur mit einer Programmiersprache herumzuspielen und durch Ausprobieren zu lernen.

Wenn Sie Programmieren lernen für Ihr Vater, hören Sie auf und finden Sie Ihren eigenen Grund, dies zu tun. Meins verfolgt mich immer noch, ihm ein hochvolumiges automatisiertes Handelssystem aufzubauen. Ich meine es todernst, wenn ich sage, dass Sie etwas finden müssen Sie möchten daran arbeiten, weil Sie sonst wahrscheinlich die Programmierung ganz aufgeben, weil Sie es als lästige Pflicht und nicht als Hobby ansehen werden oder ein Sport.

Lesen Sie Linus Torvalds 'Buch "Just For Fun", in dem er die Ursprünge des Linux-Betriebssystems beschreibt. Der Titel sagt alles.

Ernsthaft. Hacken Sie einfach ein Problem. Wenn Sie nicht weiterkommen, bringen Sie den alten Mann dazu.

Wenn dein Vater deine Arbeit nicht schätzt, dann nicht, weil er enttäuscht ist. Er ist Architekt, er weiß nicht, wie komplex manche Dinge sind. Versuchen Sie, ihn durch Ihren Code zu führen, wenn nur die Logik, und lassen Sie ihn verstehen, was es mit dieser Logik auf sich hat, die Sie durch das Schreiben gelernt haben.


TL; DR


  1. Leg dich einfach mit etwas an. Ein Problem lösen. Wenn Sie es nicht lösen können, suchen Sie die Lösung eines anderen und versuchen Sie, sie zu verstehen.
  2. Viel Spaß mit # 1
  3. Wann immer Sie etwas lernen oder Fortschritte machen, denken Sie daran, es Ihrem alten Mann zu sagen.
  4. Halte Dich zurück. Jeder lernt auf seine Weise und mit seiner eigenen Geschwindigkeit. Bleiben Sie einfach dran und irgendwann haben Sie die Fähigkeit, alles zu tun, was Sie wollen.
10
rmckenzie

Versuchen Sie, ein Buch zu finden, das speziell eine Einführung in die Programmierung für Anfänger darstellt. Vielleicht so etwas wie Hallo Welt! Computerprogrammierung für Kinder und andere Anfänger von Warren Sande.

Sie sollten auch sehen, was Ihre Bibliothek hat. Die meisten Bibliotheken sollten einige Anfängerbücher haben.

6
Alger

In meinen Augen haben Sie zwei Probleme:

  1. Sie möchten das Programmieren lernen und Spaß daran haben (der Spaß ist wichtig, er macht alles einfacher)
  2. Sie haben einen Kunden, der wirklich nichts über Programmierung versteht, aber eine Idee hat, was er will. (Dein Vater in deinem Fall)

MEINER BESCHEIDENEN MEINUNG NACH:

  1. Bei Ihrem ersten Problem gehen Sie einfach zu solchen Websites und stellen Fragen wie Sie. Suchen Sie nach Ressourcen wie diesen https://softwareengineering.stackexchange.com/questions/62224/how-to-become-a-professional-programmer/62263#6226 . Überlegen Sie sich etwas, das Sie erstellen möchten (ein Spiel, eine Aufgabenliste, ein Managementsystem für Filmsammlungen, die nächstbeste soziale Plattform), und beginnen Sie einfach mit dem Codieren. Oder beginnen Sie mit dem Lösen von Rätseln Wo finde ich Programmierpuzzles und Herausforderungen?

  2. Ihr zweites Problem ist schwieriger, Sie müssen Ihren Vater erziehen (obwohl er nicht sehr bereit zu sein scheint). Während Sie lernen, werden Sie ihm besser erklären können, was beim Programmieren schwierig ist. Sie könnten versuchen, Metaphern zu verwenden, wie sie ihr erklärt wurde Was ist eine gute Programmiermetapher? . Ein weiterer Tipp ist, dass Nicht-Programmierer im Allgemeinen nicht die Komplexität eines großartigen Algorithmus erhalten, sondern sich leicht durch gut aussehende Schnittstellen beeindrucken lassen. Abhängig von der Plattform, die Sie auswählen, können Sie ziemlich einfach hübsch aussehende Schnittstellen generieren, um Ihren Vater zu beeindrucken. Verwenden Sie zum Beispiel:

Hoffe das hilft.

5
KeesDijk

Ich möchte nur hinzufügen, dass ich zu einem bestimmten Zeitpunkt in meinem Leben in einer sehr ähnlichen Position war. Mein Vater verstand nicht wirklich, was positive Verstärkung bedeutete. Aber da ich hartnäckig und widerstandsfähig gegenüber seiner manchmal harten Missbilligung war, gelang es mir, daran festzuhalten. Etwa zwanzig Jahre später hatte sich die Beziehung zu meinem Vater sehr verändert, sie verbesserte sich, aber die subtilen Nuancen von damals sind immer noch da.

Dies ist nur eine schwierige Zeit in Ihrem Leben und das Wichtigste dabei ist, dass Sie mehr als alles andere Spaß daran haben.

5
John Leidegren

In Bezug auf die Programmiersprache stimme ich zu, dass Sie sich auf nur eine konzentrieren sollten.

Eigentlich empfehle ich eine, die Sie noch nicht haben: Python. Python ist eine Sprache, die leicht zu erlernen, aber auch sehr leistungsfähig ist. C++, Java, PHP und Javascript sind alle viel komplexer.

Es gibt mehrere Bücher von Manning, die das Programmieren mit Python lehren. Ich würde "Hallo Welt!" Stark in Betracht ziehen, auch wenn es sich an eine etwas jüngere Bevölkerungsgruppe richtet.

Wenn Sie mit C++ fortfahren möchten, empfehle ich dieses Buch:

Obwohl es eher eine "Referenz" und weniger ein "Tutorial" ist. Mir ist kein gutes C++ - Tutorial bekannt - es gibt eine Menge Bücher, in denen Sie sich schnell C++ beibringen können, aber ich denke nicht, dass sie sehr nützlich sind. (C++ ist eine ziemlich schwer zu erlernende Sprache ; Die meisten C++ - Programmierer haben mit einer einfacheren Sprache begonnen.).

5
Stephen Cleary

Informationen zu C++, Java, PHP, JavaScript und Android (damit Sie möglicherweise zwischen diesen wählen können, da der Versuch, alles auf einmal zu meistern, wahrscheinlich fehlschlägt):

  • C++: Es ist eine extrem mächtige Sprache. Aber zu mächtig, zu unversöhnlich, zu kryptisch, um damit zu beginnen. Man muss viel zu viele Dinge verstehen, um loszulegen. Ich denke, dies in einer schlechten Wahl der Sprache für den Start zu Programm.
  • Java: Eine beliebte Wahl für Anfänger. In gewissem Sinne ist es das Gegenteil von C++: C++ bietet Ihnen jede erdenkliche Möglichkeit, sich in den Fuß zu schießen, während Java versucht, nichts zuzulassen, was außerhalb Ihrer Kontrolle liegen könnte in der Tat ziemlich lähmend. Es ist ein wenig zu simpel, zu trivial, zu restriktiv, um Ihnen viel von Programmierung zu zeigen. Und Sie können in Java nicht viel erledigen, ohne viel von dem zu wissen Standard-API und mehrere Frameworks. Java als Technologie hat viel zu bieten, hat aber seine Mängel als Sprache.
  • PHP: Eine sehr beliebte Sprache, vor allem wegen der niedrigen Eintrittsbarriere. PHP als Sprache ist gereift und jetzt reich an Funktionen, die man von einer modernen Sprache erwartet. PHP trägt jedoch aus historischen Gründen viel Gepäck mit sich herum. Während es tatsächlich erlaubt, gute Programme zu schreiben, tun dies nur wenige und Sie werden nicht so viele Informationen darüber finden. Und die Standardbibliothek ist ein Chaos. Sollten Sie sich entscheiden, PHP zu schreiben, ist mein Rat, mit einem Framework zu arbeiten von Anfang an, da sie normalerweise robuste Lösungen für häufig auftretende Probleme fördern. Ich persönlich empfehle symfony , flow und CakePHP . Allerdings mein Rat ist: fang nicht damit an.
  • JavaScript: Eine überraschend mächtige Sprache, sobald Sie sie kennengelernt haben. Es hat ein "wenige" Macken , aber in der Tat sollten Sie in der Lage sein, damit zu leben. Obwohl JavaScript ursprünglich zum Hinzufügen von Interaktivität zu HTML-Seiten verwendet wurde, kann es jetzt in einer Reihe von Feldern verwendet werden. Abgesehen von der klassischen Verwendung kann es für die Entwicklung von Desktop- und mobilen Apps mit Plattformen wie Appcelerator , PhoneGap und [~ # ~] air [~ # ~ verwendet werden ] und um Server mit node.js zu erstellen.
    Es gibt viele JavaScript-Bibliotheken und Frameworks. Ich schlage vor, Sie checken Knockout und jQuery sowie qooxdoo und ext.js aus, wenn Sie suchen etwas ausgewachsenes. Für die serverseitige Entwicklung sollten Sie außerdem express.js auschecken.
    Außerdem möchte ich auf CoffeeScript hinweisen, eine Sprache, die mit JavaScript kompiliert wird, aber einige Extras enthält, die sich als nützlich erweisen.
  • Android: Im Gegensatz zu den anderen vier ist dies eine Plattform. Plattformen sollten je nach dem, was Sie tun möchten, ausgewählt werden. Wenn es sich um die Entwicklung mobiler Apps für Android Geräte) handelt, dann machen Sie es. Sie sind sich nicht sicher, ob es das Beste ist, aber letztendlich müssen Sie Dinge erstellen, die Sie für cool halten.

In jedem Fall ist es wirklich wichtig, dass Sie dies angenehm finden. Dass du Dinge erschaffst, findest du cool. Das löst einige Ihrer Bedürfnisse oder es macht Spaß, damit zu spielen. Die Programmierung ist für diejenigen, die es genießen. Sie benötigen ein Toolset, mit dem Sie Apps mit wenigen Codezeilen erstellen können. JavaScript/CoffeeScript könnte ein guter Ausgangspunkt sein.
Ich persönlich möchte Sie auf Ruby hinweisen. Es hat mir viel über das Programmieren beigebracht und ich bin unglücklich, dass ich es nicht gewusst habe, als ich mit dem Programmieren angefangen habe. Grundsätzlich gibt es zwei beeindruckende Bücher (beide kostenlos erhältlich):

  • Why's Poignant Guide - Persönlich war es ein wenig zu viel Ablenkung (Witze, Cartoons usw.) in diesem Buch für mich, aber Sie könnten genau das genießen.
  • Pragmatic Ruby - Hat perfekt für mich funktioniert. Es ist ein wenig trocken, aber es geht einfach um das Wesentliche.

Zusammen mit dem schlage ich vor, dass Sie Schuhe auschecken. Es ist ein großartiges Tool mit einer großartigen integrierten Hilfe, einschließlich Referenz, Tutorials und Demos. Sie haben Ihre ersten Dinge innerhalb weniger Tage in Betrieb.

Und wahrscheinlich für später möchte ich Sie auf haXe verweisen. Ich denke, es ist eine großartige Sprache (meine Sprache der Wahl), und es gibt eine brandneue Anfängerleitfaden , die erst kürzlich herausgegeben wurde. In haXe stehen jedoch keine Tools zur Verfügung, mit denen Anwendungen genauso einfach erstellt werden können wie mit JavaScript und Ruby. Daher könnte es für Sie zunächst mühsam oder sogar frustrierend sein, was den ganzen Zweck zunichte macht.

4
back2dos

Eine Sache, die in den anderen Antworten nicht erwähnt wird:

Wie Sie vielleicht wissen, ist es nicht einfach, ein Kind zu sein (ich bin 14) und zu lernen, wie man aus langweiligen Büchern programmiert. Ich werde immer abgelenkt. Ich habe ihm vorher gesagt, dass ich keine Bücher kaufen muss und mir einfach Online-Tutorials ansehen kann. Aber nein, er ist so altmodisch. Er lässt mich nur die Bücher benutzen.

Sie müssen sicherlich an diesem Teil arbeiten. Das Internet ist das entscheidende Werkzeug eines jeden Programmierers und Sie müssen damit arbeiten.

Erstens geht es beim Programmieren um Problemlösung. Wenn Sie nicht wissen, wie man X in der Sprache XYZ macht, googeln Sie es und suchen nach Lösungen. * Lösungen schnell finden i * ist für einen Programmierer genauso wichtig wie die Verwendung einer Tastatur.

Zweitens ist eine weitere wichtige Fähigkeit die Verwendung von Dokumentation . Bücher sind normalerweise wie Tutorials - sie bieten Anleitungen, aber sie bieten Ihnen kein vollständiges Wissen - und hier ist die Dokumentation nützlich. Beispiel: Sie programmieren in C++ und haben einen Monat Erfahrung. Früher oder später (ich würde ziemlich bald sagen) müssen Sie die Standardbibliothek verwenden ... oder haben Sie sie vielleicht bereits verwendet? Wenn ja, ist das ein gutes Zeichen, Ihr Buch ist in diesem Fall wahrscheinlich kein schlechtes. Auf jeden Fall ist es hilfreich zu wissen, was bereits in C++ - Standardbibliotheken vorhanden ist und was nicht. Dafür ist es nützlich, eine Referenz wie http://cplusplus.com/ während der Programmierung ständig geöffnet zu halten.


Das Internet ist entscheidend für das Codieren und noch wichtiger für das Erlernen des Codierens. Wenn dein Vater es nicht versteht und erwartet, dass du das Programmieren mit nur die Bücher lernst, ist sein Ansatz kontraproduktiv und lässt dich langsamer vorankommen (und möglicherweise schlechte Gewohnheiten bekommen).

3
Kos

Der Beitrag Ihres Vaters ist für Ihren Lernprozess nicht förderlich. Ja, es gibt eine Reihe von Möglichkeiten, Programmieren zu lernen, wie andere bereits erwähnt haben. Sie haben jedoch meiner Meinung nach phänomenale Fortschritte in C++ gezeigt. Ihr Hinzufügungsprogramm wäre etwas gewesen, das ich nach meinem ersten Semester in Java Programmierung) kaum bewältigen konnte.

Es gibt zwei Dinge, die Sie angehen müssen, wenn Sie fortfahren möchten:

1) Behandle deinen Vater.

Schauen Sie, jeder Vater hat extravagante Träume für seine Kinder. Ihre Erwartungen können jedoch sehr hoch sein und werden letztendlich zu etwas führen, das in einigen Märchen nicht einmal möglich ist. Ich würde empfehlen, jemanden außerhalb der Situation hinzuzuziehen, um Ihre Fortschritte besser beurteilen und Ihren Vater auf die Erde bringen zu können. Sie können versuchen, mit Familienmitgliedern/Freunden zu sprechen, die Sie mit Programmiererfahrung kennen, oder sogar Leute in dieser Community können ihm im Namen unserer eigenen Erfahrungen und Kenntnisse eine E-Mail senden. Dies ist der wichtigste Schritt von allen, denn wenn Ihr Vater nicht abkühlt, verlieren Sie alle zusammen das Interesse.

2) Finden Sie einen Fokus.

Es ist nicht förderlich, alles auf einmal zu lernen. Wähle eine Sprache und bleibe dabei. Wie Sie ein Buch über eine bestimmte Sprache lesen. Den Beispielen des Buches wörtlich zu folgen, ist nicht der richtige Weg. Aufstoßen ist ein Lernprozess für einige, aber nicht für alle (besonders für mich). Es ist wichtig, es aus so vielen Blickwinkeln anzugreifen, wie Sie können und an welchen Winkeln Sie interessiert sind. Das Programmieren von Büchern verschiedener Autoren in derselben Sprache, aber unterschiedlichen Verwendungszwecken kann Ihre Neugier auf die Verwendung der Sprache und der Einsichten steigern Ihr eigener Wunsch von der Programmierung (machen Sie Spiele? Design-Anwendungen? Testen? ect, ect). Sie können auch ein persönliches Abenteuer in der Erstellung eines Programms beginnen. Finden Sie heraus, was Sie tun möchten, unabhängig davon, was Sie gerade wissen, und recherchieren Sie es dann, während Sie programmieren. Im Laufe der Zeit sollten Sie eventuell andere verwandte oder nicht verwandte Programmiersprachen ausprobieren. Möglicherweise stellen Sie auch fest, dass Sie nicht alle zusammen programmieren möchten.

Denken Sie vor allem daran, dass es nicht auf das Endergebnis ankommt, sondern auf die Reise. Vergiss nicht, Spaß zu haben!

3
Jonathan

Ich denke, Sie sollten das formellere Zeug vorerst weglegen und sich Scratch ansehen - http://scratch.mit.edu/ - es ermöglicht Ihnen, die meisten Programmierkonstrukte einfacher zu handhaben Übrigens, während Sie noch lernen, was Sie brauchen, wie Loops usw.

Es ermöglicht auch fehlerfreies Multithreading, was möglicherweise am schwierigsten von Hand durchzuführen ist und für interessante Ergebnisse in der heutigen Welt erforderlich ist.

Unterschätzen Sie es nicht, da es Farben und einen Lego-Brick-ähnlichen Ansatz für die Programmierung verwendet. Sie können viel damit anfangen, ohne sich in technischen Details zu verlieren.

3
user1249

Fragen Sie Ihren Vater, ob er in Ihrem Alter ein Hochhaus entwerfen könnte. Das ist Programmierung. Es braucht Zeit zum Lernen, weil es so viel zu lernen gibt. Es ist wie mit dem Fahrrad, nur dass Sie tausend Pedale, Zahnräder, Griffe und Knöpfe haben und nicht auswählen können, welche davon zu einem bestimmten Zeitpunkt verwendet werden sollen. Es braucht Übung.

Ich zweifle nicht an dir. Sie haben sich schon früh mit C++ beschäftigt, um Programmierer zu werden. Das ist beeindruckend für mich.

Bleib dran und viel Glück bei deiner Karriere als Programmierer!

3

Sie haben einige gute Rückmeldungen und Ratschläge zu den Programmieraspekten Ihrer Situation erhalten. Aber ich möchte etwas aus einer anderen Perspektive hinzufügen ...

Ich habe den Eindruck, dass Sie einige negative Gedanken über Ihren Vater haben - er hat Druck auf Sie ausgeübt und einige Kommentare abgegeben, die Ihnen Kummer und Sorgen bereitet haben - und die das Programmieren zum Vergnügen gemacht haben. Das ist eine Schande und ich denke, die meisten Leute hier würden zustimmen, dass Programmieren Spaß macht - ich programmiere seit über dreißig Jahren und finde es immer noch lustig.

Aber ich denke dein Vater ist wirklich auf deiner Seite. Er hat getan, was er für richtig hielt, er hat versucht zu helfen, er hat dir die Bücher gekauft, um dir einen guten Start zu ermöglichen. Aber er hat es falsch verstanden (und ich spreche als Vater, wir machen manchmal etwas falsch!). Für ihn sind Bücher wahrscheinlich der Ort, an dem er seine Architekturkarriere begonnen hat (ich nehme an, dies begann, bevor das Internet und das Internet allgemein verfügbar waren, wenn überhaupt). Nach seiner Meinung beginnen Sie in Büchern.

Angenommen, Ihr Vater ist auf Ihrer Seite (und ich bin mir sicher, dass er es ist), dann besteht das Problem darin, dass er einfach nicht versteht, wie schwierig es sein kann, wenn Sie mit dem Programmieren beginnen - zeigen Sie ihm also alle Antworten, die er war hier gepostet - Ich bin sicher, dein Vater ist ein guter Kerl und er wird verstehen und er wird dich unterstützen.

Und viel Glück beim Programmieren - es sieht so aus, als ob Sie einen guten Start machen.

3
Simon Knights

Ich weiß, dass es bereits viele Antworten gibt. Aber ich habe diesen Rat nicht gesehen: Versuchen Sie, Ihren Vater dazu zu bringen, Ihnen zu helfen. Versuchen Sie, im C++ - Buch etwas Haariges auszuwählen, das Sie verstehen können, und bitten Sie ihn, ihm zu helfen.
Gib ihm das Buch und lass ihn in C++ kriechen. Ich bin mir ziemlich sicher, dass ihm klar wird, wie schwierig es ist, Code zu schreiben.

3
Guillaume

Versuchen Sie, diese Situation zu Ihrem eigenen Besten zu wenden. Akzeptiere einfach, dass das, was du bis jetzt erreicht hast, nicht genug ist und versuche es besser zu machen ... Du wirst genug schwere Zeiten wie diese haben, wenn du für einen Chef arbeitest, wenn du nicht anfängst, darüber hinwegzukommen und dich von nun an zu verbessern .

Wenn ich nur doppelt so hart gearbeitet hätte, als ich in deinem Alter war ...

3
Johnny

Das ist ziemlich viel zu erwarten in einem Monat. Vielmehr sollten Sie versuchen, sich darauf zu konzentrieren, jeweils eine Sprache oder ein Paradigma zu lernen, da dies sonst überwältigend werden kann. Zu viel auf einmal geschoben zu werden, ist auch ein guter Weg, um ausgeschaltet zu werden. Sie können besser lernen, indem Sie an einem bestimmten Programm arbeiten, das Sie interessiert. Wenn Android Handys ist, wo Ihr Interesse liegt, sind Sie wahrscheinlich besser dran mit Java als mit C++. Er hat vielleicht eine Whiz-Bang-UI-Sache erwartet als typischer Kunde würde man sich also nicht von seiner Enttäuschung entmutigen lassen :)

Einige der Head First-Bücher können dazu beitragen, dass das Lernen etwas weniger trocken wird, wenn Sie gezwungen sind, sich an Bücher zu halten.

3
Turnkey

Er hat keine Ahnung, wie man sich zum Programm neigt. Sie können all diese Bücher lesen und trotzdem nichts Anständiges schreiben, denn was am längsten dauert, ist das echte Verständnis dafür, was Sie tun können und wie Sie es angehen.

Du hast deinem Vater gesagt, dass du gerne programmierst - lass ihn es nicht für dich ruinieren. Und versuchen Sie auf keinen Fall, 5 Programmiersprachen zu lernen, zumindest jetzt nicht. Halten Sie sich an ein relativ einfaches wie Java, das auf die anderen übertragen werden kann, sobald Sie es beherrschen.

In Bezug auf die Bücher ist es übrigens der richtige Weg, dies zu tun, weil Sie die Sprache auf die richtige Weise lernen. Das Befolgen von Tutorials führt oft dazu, dass schlechte Gewohnheiten usw. aufgegriffen werden.

Viel Glück; und lassen Sie ihn wissen, dass Sie es richtig machen, Fortschritte sind langsam, aber Sie lernen so viel, während Sie es tun.

2
Alex coady

Ich denke, viele Programmierer im Alter von 25 bis 35 Jahren sind mit Nintendo und Sega aufgewachsen. Ein guter Teil von ihnen/uns hat den mentalen Übergang gemacht, warum man ein Spiel spielt, wenn man sein eigenes machen kann. Es ist eine sehr eigennützige Motivation, die Sie dazu bringen kann, ein besserer Programmierer zu sein. Es ist ein Anfang. Später im Leben könnten Sie vom Schreiben von Videospielen (virtuelle Probleme) zu Spielen mit höheren Einsätzen (Probleme der realen Welt) übergehen. Wie ist dieses Rezept für diesen Patienten nicht nachteilig mit einem anderen verschriebenen Medikament zu interagieren, können diese LKWs die meisten Lieferungen mit der geringsten Menge an Gas machen, um die Umweltverschmutzung zu reduzieren, oder wie kann ich sicherstellen, dass der Kauf dieser Aktie kaufen wird zu dem Preis, den ich will, wenn 1000 andere es gleichzeitig kaufen. Ich denke, dein Vater wäre beeindruckt, wenn du diese Probleme der realen Welt lösen würdest, aber er muss verstehen, dass du kleine Schritte unternehmen musst, um dorthin zu gelangen.

2
Mark Lapasa

Architektur wurzelt in der physischen Welt, die Sie seit Ihrer Geburt kennengelernt haben. Für einen Studenten der Architekturuniversität wäre das Spielen mit Legos Zeitverschwendung. Dein Vater geht davon aus, dass du, da du Mathe kennst, mit den Grundlagen vertraut bist und in der Lage sein solltest, Dinge zu produzieren. Nun, das stimmt nicht. Er weiß nicht das Erste über Programmierung, weil er nicht einmal merkt, dass es kein Zweig der Mathematik ist .

Programmierung ist eine neue Welt. Der beste Weg, sich damit vertraut zu machen, besteht darin, es so zu lernen, wie Sie die physische Welt gelernt haben: Tauchen Sie ein und experimentieren Sie. In einem Wort, spielen. Es ist Lego-Zeit.

Betrachten Sie zum Vergleich Astronauten. Auch sie haben eine neue Welt, auf die sie völlig unvorbereitet sind. Sie müssen mit den Grundlagen beginnen, wie man sich im Raum bewegt.

Als nächsten Schritt würde ich vorschlagen, ein Spiel zu erstellen, bei dem der Computer eine Zufallszahl auswählt und Sie versuchen, diese zu erraten. Sie erfahren, ob Sie zu hoch oder zu niedrig raten.

Probieren Sie auch viele verschiedene Sprachen aus! Nicht alle auf einmal, aber vielleicht eine Woche lang.

Wenn Sie Erfahrung gesammelt haben, ist das Erstellen eines vollwertigen Videospiels eine der größten Herausforderungen, denen Sie sich als Gesellenprogrammierer stellen können. Videospiele berühren fast jede Ecke unserer Disziplin, und das Bauen eines solchen ist eine großartige Möglichkeit, Ihre Fähigkeiten zu verbessern. Es ist auch ein perfekter Ort, um mit immer höheren Fähigkeiten zu experimentieren und zu lernen.

1
Kevin Conner

Nehmen Sie sich Zeit für das Erlernen von Programmiersprachen. Je mehr Sie üben, desto mehr werden Sie sich mit Programmieren beschäftigen. Dieses Mal haben Sie ein sehr einfaches Programm erstellt, das für Anfänger recht niedlich ist. Wenn Sie jedoch Fortschritte machen, stellen Sie sicher, dass Sie eine erstellen Gutes Programm, das tatsächlich von deinem Vater verwendet werden könnte. Wenn du mich fragst, habe ich meinem Vater auf diese Weise bei seiner Arbeit geholfen.

Sprechen Sie einfach mit Ihrem Vater und erklären Sie ihm die Dinge. Ich bin sicher, dass er es wirklich verstehen wird und ich bin mir sicher, dass Sie eines Tages ein ausgezeichneter Entwickler sein werden.

0
Radix

Ich studiere als Softwareentwickler und der Fortschritt des Programmierlernens in meiner Ausbildung war mehr als nur das Lesen eines Buches.

Zuallererst würde ich Ihnen empfehlen, C zu lernen, da es eine einfache Sprache ist und viele andere Sprachen (wie C++, Objective-C) auf C aufbauen. So wie wir es gemacht haben, mussten wir einen Mikrochip kaufen ( In unserem Fall ein Atmel Mega16 mit einem STK 500-Kit (das nur ein Board mit LEDs und Tasten ist), und dann haben wir einfach damit herumgespielt und Programme programmiert, um es bip und bop zu machen. Das macht mehr Spaß als nur das Lesen und Schreiben von Hallo-Welt-Programmen IMO.

Wenn C für Sie zu einem Spaziergang im Park wird, fahren Sie mit C++ und objektorientierter Programmierung (OOP) fort. OOP ist das Schlüsselkonzept in vielen Sprachen und Denkweisen und daher ein Muss, wenn Sie Ihre Programmierung ernst nehmen. Stellen Sie sicher, dass Sie die Theorie hinter OOP verstehen, bevor Sie darauf eingehen - sonst könnte es ein schwieriger Prozess sein :-)

Zu guter Letzt empfehle ich Ihnen, verschiedene Datentypen wie Stapel, Warteschlangen, Haufen usw. zu studieren, die beim Programmieren und Lesen neuer Sprachen sehr gut zu verstehen sind.

Viel Glück mein Freund!

0
Kasper Munck

Beschwere dich nicht, wenn du das tust, wirst du einfach zu selbstsicher und verschwendest deine Zeit. Ich habe einen Vater, der nicht an seinen Sohn glaubt. Ich war vorher wütend auf ihn, aber jetzt nicht. Wenn es nicht an seinen hohen Erwartungen liegt, werde ich heute wahrscheinlich ein Bettler sein. Wenn Sie wirklich gerne Programmieren lernen (wer nicht), lernen Sie weiter, setzen Sie sich nicht unter Druck. Die erste Programmiersprache ist für einen Programmierer wirklich der schwierigste Teil. Sobald Sie sie gelernt haben, sind andere Programmiersprachen leicht zu erlernen.

0
domanokz

Es gibt kein Problem, wenn Sie zuerst C++ lesen. Denn wenn du diesen liest, findest du Interesse daran, deinen Geist für einen neuen zu entwickeln.

sie sagen, dass Sie 5 Buch haben, nein, sie unterscheiden sich voneinander.

C++ und Java ist ein grundlegendes Buch, also lesen Sie es zuerst.

pHP-Buch für die Webentwicklung und Android Buch für die Entwicklung mobiler Apps für Android Mobile (Es erfordert gute Kenntnisse in C++ und Java Sie brauchen mehr als 8 Monate wenn Sie diese Bücher lesen müssen).

Vielen Dank

0
dilip

C++ als Muttersprache? Ernst? Beeindruckend ... Und Ihr Programm ist ein schönes Problem ... Und das Herumschrauben ist Teil des Jobs - Sie kratzen ein Basisprogramm (das nur auf das vorliegende Problem abzielt) und danach beginnen wir, es zu perfektionieren (Ausnahmebehandlung, Refactoring) usw. usw.).

Selbst wenn Sie ein größeres System haben, benötigen Sie manchmal ein kleines Projekt, um sicherzustellen, dass die Lösung richtig ist, und um den Algorithmus auf ein größeres System anzuwenden.

0
Fabricio Araujo

Es gibt einige aufgezeichnete Informatikkurse von einigen Universitäten, die es wert sind, gesehen zu werden. Sie helfen Ihnen beim Erlernen der Informatik , nicht beim Programmieren, aber sie sind immer noch eine Uhr wert. MIT, Princeton, Stanford, um nur einige zu nennen.

Ich habe einen von Stanford und einen von MIT) gesehen, die beide wirklich gut waren.

http://see.stanford.edu/see/lecturelist.aspx?coll=2d712634-2bf1-4b55-9a3a-ca9d470755ee http://ocw.mit.edu/courses/electrical-engineering- und-Informatik/6-002-Schaltungen-und-Elektronik-Frühjahr-2007 /

Da Sie gerade erst anfangen, können Sie stattdessen den Einführungskurs ausprobieren. http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/

0
user606723

Ich würde Ihnen raten, sich nur auf eine Sprache zu konzentrieren, wie ein vorheriges Poster sagte, aber ich würde Javascript wählen.

Es ist relativ einfach, eine Webseite mit einigen Grafiken zu erstellen und dann einige jQuery-Inhalte zu verwenden, um Dinge zu verschieben, sie auszublenden/umzuwandeln usw. Für Nicht-Codierer sieht es großartig aus und ist viel einfacher als C++. Beginnen Sie mit den Beispielen aus der JQuery-Dokumentation und prüfen Sie, ob Sie Bits hinzufügen oder miteinander kombinieren können.

Siehe auch Douglas Crockfords "JavaScript - Die guten Teile".

Sie können die Ergebnisse in jedem Webbrowser ausführen oder sie mit PhoneGap in eine mobile App für Android, iPhone, Windows Mobile usw. verwandeln.

Wenn Sie in die Hardcore-Serverprogrammierung einsteigen möchten, können Sie dies mit node.js auch in Javascript tun, aber die Fähigkeiten sind größtenteils auf andere Sprachen übertragbar.

0
rjmunro

Möchten Sie wirklich Spaß beim Entwickeln/Programmieren haben ?

Hier sind einige Gedanken, die ich meinem eigenen Sohn geben würde:

und nachdem du angefangen hast und wirklich Spaß daran hast, was du willst, weißt du genau, was du tun kannst und jeder Traum kann wahr sein :)

0
balexandre

Ich schlage vor, du schaust diese Videos auf youtube. Es handelt sich um Vorlesungen von Professor Mehran Sahami für die Stanford Computer Science Class 106a - "Programming Methodology". Ich denke, wenn Sie an einem Punkt angelangt sind, an dem Sie verstanden haben, wie man ein eigenes Programm erstellt, und das ist übrigens beeindruckend, egal was Ihr Vater sagt, können Sie diesen Videos folgen.

0
Utilitron

Für mich programmiere ich, um mich mehr als andere Menschen zu beeindrucken. Ich achte mehr auf das Design des Codes als auf die Anwendung selbst. Wenn ich also versuche, anderen Leuten zu zeigen, was ich gemacht habe, scheinen sie nie sehr beeindruckt zu sein. Ich programmiere seit 3 ​​Jahren und es ist immer noch das gleiche.

Zum Beispiel sieht eines meiner Programme äußerlich wie etwas aus, das von 0 bis 100 zählt, vielleicht ein paar Zahlen überspringt und einige Zahlen wiederholt. Aber es ist viel mehr als das. Der Code ist das, was so schön ist. Im Grunde war es das, was ich gerne als Runloop bezeichne, aber es gibt noch ein paar andere Begriffe dafür. Sie planen eine Funktion, die beispielsweise in 10 Sekunden ausgeführt wird, und nach 10 Sekunden wird diese Funktion ausgeführt. Und Sie können auch alle 10 Sekunden eine Funktion ausführen lassen. Was mich zu einer Idee führte: Ich könnte eine Klasse erstellen, die, wenn Sie ihr einen Wert zuweisen, reibungslos in diesen Wert übergeht. Animation im Grunde. Automatisch. Kein Eingreifen des Programmierers. Und genau das war das Programm. Die Anzahl der Zeilen in meiner main () -Funktion betrug vielleicht 6 Zeilen oder so. Der ganze andere Code hatte so viele andere Verwendungszwecke, dass ich ihn kaum als Teil dieses einen Programms bezeichnen konnte. Und das war schön für mich. Ich habe es dem Freund meines Vaters gezeigt, der die Qualitätssicherung durchführt, und er schien nicht sehr aufgeregt darüber zu sein.

Grundsätzlich sage ich, dass Sie sich nicht von den Meinungen anderer Leute unterkriegen lassen sollten. Sie könnten einfach nicht die Kraft und Schönheit von allem sehen. Programmieren Sie zu Ihrem eigenen Vergnügen, und Sie werden glücklich sein und mehr erfahren wollen. Im Gegenzug kann das nächste Programm, das Sie erstellen, viele Menschen beeindrucken.

EDIT: Herzlichen Glückwunsch zum Programmierer. Für viele Menschen ist es sehr schwierig, den Übergang von der Verwendung von Anwendungen zu deren Erstellung zu schaffen. Es hört sich so an, als hätten Sie diesen Übergang erfolgreich abgeschlossen, und Sie sollten stolz auf sich sein. Seine Leute mit der Einstellung deines Vaters, die niemals programmieren können. Programmieren ist viel mehr, als einem Computer zu sagen, dass er dies und das tun soll.

0
vedosity

Wenn Sie wirklich lernen möchten, wie man in Java oder C++) denkt, laden Sie die kostenlosen Versionen von Thinking in Java und Thinking in C++ herunter Bücher (2 Bände) von Bruce Eckel. Sie bringen Ihnen nicht nur eine Sprache bei, sondern eignen sich auch hervorragend, um die Idee der Objektorientierung zu "verstehen". Eckel hat eine großartige Möglichkeit, Dinge zu erklären, und gibt viele Codebeispiele. Bruce's Bücher bringen dir wirklich das Denken bei, sie bringen dir nicht nur Sprachdetails bei, die du in einer Woche vergessen wirst.

Um ehrlich zu sein, denke ich, dass Sie mit Ruby und Why's Poignant Guide und Shoes und den anderen Dingen viel mehr Spaß haben könnten das @ back2dos oben empfohlen. Ruby ist viel einfacher zu lernen und gleichzeitig eine sehr praktische Sprache.

Ich wünschte, ich hätte zehn Minuten Zeit mit deinem Vater, um ihm zu sagen, dass er stolz sein sollte, ein Kind zu haben, das genug Initiative hat, um etwas von diesem Zeug lernen zu wollen! Ich würde ihm direkt in die Augen schauen und ihm sagen, er solle dir ernsthafte zusätzliche Anerkennung zollen!

0
John Tobler