Voraussetzungen für einen Programmierer ?

Von: , Frage gestellt am Mo, 9. Jan 2006

Hallo.

Welche Voraussetzungen muss eine Person erfüllen, um erfolgreich eine Programmiersprache zu lernen und so etwas eventuell auch später beruflich machen zu können.
Muss man mathematisch begabt sein, logisch denken können oder auf was kommt es genau an?
Bin an Computern interessiert, aber eine Sprache kann ich nocht nicht.

Danke für eure Antworten.

mfg
phil

12 Antworten zu dieser Frage

  1. Antwort von nach 14 Minuten 0 hilfreich
    Re: Voraussetzungen für einen Programmierer ?

    Auch hallo. Hallo.

    Welche Voraussetzungen muss eine Person erfüllen, um
    erfolgreich eine Programmiersprache zu lernen und so etwas
    eventuell auch später beruflich machen zu können.
    Intelligent, gebildet, Einser-Abiturient mit 13 als minimale Voraussetzung ;) Muss man mathematisch begabt sein, logisch denken können oder
    auf was kommt es genau an?
    Das auch.
    Aber wie überall auch: Durchhaltevermögen, Abstraktionsfähigkeit, Weiterbildung, Mathematik (Aussagenlogik -> der Computer hat _immer_ Recht), Beherrschen mehrerer (Programmier)Sprachen, prozedurale Programmierung (also die ältere Programmierweise), objektorientierte Programmierung (neuer), aspektorientierte Programmierung (ganz neu & im Kommen), Modellierung (UML2), ... Bin an Computern interessiert, aber eine Sprache kann ich
    nocht nicht.
    Also es kommt auch auf das Einsatzgebiet an. Eine Programmiersprache für WebDesign (z.B. HTML) unterscheidet sich von einer zur Kontaktaufnahme an SAP-Systeme (z.B. BSP, Java, C#,...) im Bezug auf die Menge an Befehlen und der Philosophie dahinter. Sowie die Möglichkeiten, diese für entsprechend viele Plattformen zu entwickeln.
    Einen Einblick geben hier Bretter mit den Namen der Programmiersprache, sowie Seiten wie http://www.derentwickler.de, http://www.codeproject.com, http://www.javaworld.com, http://www.dotnetgerman.com, ...

    HTH
    mfg M.L.

    • Antwort von nach einem Tag 0 hilfreich
      Re^2: Voraussetzungen für einen Programmierer ?

      Hallo Markus, ... aspektorientierte Programmierung
      (ganz neu & im Kommen),
      ... und, glaubst Du dran? ;-)

      "mehrdimensionale Programmierung"?


      Grüße

      CMБ

      • Antwort von nach 2 Tagen 0 hilfreich
        Re^3: Voraussetzungen für einen Programmierer ?

        Hallo der Herr. ... aspektorientierte Programmierung
        (ganz neu & im Kommen),
        ... und, glaubst Du dran? ;-)

        "mehrdimensionale Programmierung"?
        Gut, nicht alles aktuell Werdende wird zum Hit ;-)
        AOP ist jedenfalls ein neuer Programmiersansatz zum (noch) besseren Entwickeln von Software.
        Siehe auch http://www.entwickler-press.de/zonen/sus/psecom,id,4...

        mfg M.L.

        • Antwort von nach 2 Tagen 1 hilfreich
          Re^4: Voraussetzungen für einen Programmierer ?

          Hallo Markus, AOP ist jedenfalls ein neuer Programmiersansatz zum (noch)
          besseren Entwickeln von Software.
          Das glaube ich nicht. IMHO ist das ein Hack,
          um 'poorly designed'-Hierarchien nachträglich
          um einen Zyklus länger für ein weiteres Projekt
          nutzen zu können - oder so ähnlich.

          Am Ende (korrigiere mich bitte) läuft es doch
          "technisch" darauf Hinaus, einer Klasse zur
          Laufzeit eine neue Methode unterzuschieben,

          also etwa sowas:
          (nach http://developers.slashdot.org/article.pl?sid=05/11/...)

            ...
          sub somemethod {...}
          ...
          # And then later in your code:
          my $oldmethod = \&SomeClass::somemethod;
          *SomeClass::somemethod = sub {
          print "Invoking somemethod...\n";
          goto $oldmethod;
          }
          ...
          (als Extrembeispiel)

          Grüße

          CMБ

  2. Antwort von nach einer Stunde 0 hilfreich
    Re: Voraussetzungen für einen Programmierer ?

    Hallo Phil,

    für das Programmieren an sich solltest du logischen Gedankengängen folgen können und mit Mathe nicht auf Kriegsfuss stehen. Etwas Englisch zu können wäre auch nicht schlecht. Dazu noch ein bischen Durchhaltevermögen. (Programmiernen erlernt man nicht an einem Tag und es gibt auch den ein oder anderen Aspekt beim Programmieren, den man nicht sofort versteht)
    Das gilt für alle Programmiersprachen, die ich kenne.

    Alles weitere hängt dann davon ab, was deine Programmier- und Berufsziele sind.

    Wenn du in einer größeren Firma anfangen willst, die Software erstellt, solltest du Teamfähig sein und um ein Studium wirst du nicht herumkommen.

    Mochtest du eigenständig programmieren, z.B. mit einer eigenen Firma so wie ich, dann solltest du je nach Kundenkreis ein gepflegtes und sicheres Auftreten haben. Auch von Vorteil ist es, wenn du die teils sehr komplexen Probleme beim Programmieren in verstädnlicher Form wiedergeben kannst.

    Sollte dein Interesse in Richtung Webdesign gehen sollte eine gesunde Portion Kreativität nicht fehlen.

    Eine Eigenschaft die man (zumindest wenn man Geld verdienen möchte) nicht haben sollte ist Sturheit. Wenn ein Programmierer versucht beim Kunden seinen Kopf durch zu setzten, wird er diesen Kunden bald verlieren.


    Gruß

    Michi


    Ach ja, je nach Berufsziel sollten zumindest Grundkentnisse des kaufmännischen Sektors nicht fehlen.

    • Antwort von nach 4 Stunden 0 hilfreich
      Re^2: Voraussetzungen für einen Programmierer ?

      Hallo, für das Programmieren an sich solltest du logischen
      Gedankengängen folgen können und mit Mathe nicht auf
      Kriegsfuss stehen. Etwas Englisch zu können wäre auch nicht
      schlecht. Dazu noch ein bischen Durchhaltevermögen.
      (Programmiernen erlernt man nicht an einem Tag und es gibt
      auch den ein oder anderen Aspekt beim Programmieren, den man
      nicht sofort versteht)
      Das gilt für alle Programmiersprachen, die ich kenne.
      Da stimme ich voll zu. Extrem wichtig finde ich noch die Fähigkeit, Freude daran zu empfinden, weil sonst das Durchhaltevermögen sehr stark leidet ;)

      Grüße,
      Moritz

  3. Antwort von nach 2 Stunden 0 hilfreich
    Re: Voraussetzungen für einen Programmierer ?

    Hallo Phil,

    Mathe (v.a. praktische Mathematik) und Englisch sind einfach Handwerkszeug und absolute Voraussetzung.

    Darüber hinaus musst du bereit sein, dich in alle möglichen Problemstellungen zusätzlich einzuarbeiten, denn Programmieren ist niemals Selbstzweck. Man kann etwa Software für eine Werkzeugmaschine nur schreiben, wenn man begriffen hat was warum bearbeitet wird (Zylinderblock für ein Auto? Ein Gehäuse für einen Generator?) und womit (was kann ein Fräser in einem Durchgang abtragen und wie muss er geführt werden, damit die gewünschte Form entsteht? Was ergibt das für eine Oberflächenqualität?).

    Ich musste mich schon in viele Fachgebiete recht weitgehend einarbeiten; wenn du eine Finanzbuchhaltung machen sollst, ist das nicht einfacher, es sind nur ganz andere Fragen.

    Das schlimmste, was mir im Beruf begegnet ist, sind Programmierer, die ihr Handwerk gut (manchmal manisch gut) beherrschen, aber allen Kunden erst einmal einreden wollen, dass alles falsch ist, was sie bisher gemacht haben. "Das haben wir immer so gemacht" muss zwar schon hinterfragt werden, aber in den meisten Fällen gibt es gute Gründe, warum etwas schon immer so gemacht wurde - man sollte einem Küfer nicht einreden wollen, dass er seine Fassdauben in Zukunft quer statt längs zur Achse zusammensetzen muss, bloss weil einem dafür ein besserer Algorithmus einfällt.

    Gruss Reinhard [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

  4. Antwort von nach 6 Stunden 5 hilfreich
    Re: Voraussetzungen für einen Programmierer? LANG!

    Ahua.

    Zunächst einmal ein wenig Begriffsklärung : Programmierer/in/um ist nach dem üblichen Verständnis derdiedasjenige, wo eine von Anderen erstellte konkrete Vorgabe (in Prosa) in eine Programmiersprache umsetzt, d.h. codiert. Das ist eine recht eng gefasste Aufgabenstellung.

    Beispiel : Aus einem Datenbestand der fakturierten Verkäufe eines Unternehmens soll eine Liste mit den Umsätzen nach Postleitzahl-Gebieten generiert werden. Die Vorgabe an den Programmierer lautet dann : Erzeugen Sie aus der Datei HAUMICH.TOT eine Liste, in der die Umsätze nach den ersten zwei Stellen der Postleitzahl, aufsteigend sortiert, subsumiert dargestellt werden. Die Liste soll mittels Laserdrucker auf DIN A4 quer ausgedruckt werden; Seitenwechsel nach der ersten Stelle der PLZ; Überschrift folgendermaßen blabla ...

    Ein Entwickler/Softwaregestalter/Rabimmelrabumm (es gibt mehr Bezeichnungen dafür als schwarze Katzen in der Westschweiz) dagegen steigt beim Kunden (intern oder extern) in die Prozessanalyse ein und wird aus dem Gefasel des Kunden "Ich brauche eine Liste der monatlichen Umsätze nach Postleitzahl" eine Anforderung der obigen Art erzeugen. Diese setzt er selbst um oder vergibt die Aufgabe, wie im vorigen Absatz, an einen Programmierer. Nach erfolgter Codierung und Systemintegration wird das Programm beim Kunden eingesetzt und von diesem abgenommen. Diese Aufgabe ist im Allgemeinen um einiges anspruchsvoller als das reine Codieren.

    Für das Codieren benötigst Du die Fähigkeit, die Programmanforderung von oben in eine Sprache umzusetzen; d.h. Du solltest die Sprachstrukturen kennen und auf in Prosa gelöste Probleme anwenden können. Hierfür brauchst Du die Fähigkeit zum sinnerfassenden Lesen und die Kenntnis der jeweiligen Programmiersprache bzw. Systemumgebung. Das heißt natürlich in letzter Konsequenz, dass jeder x-beliebige Trottel Programmierer sein kann ... deshalb ist das auch kein Ausbildungsberuf.

    Als Entwicklerpipapo steht die Fähigkeit im Vordergrund, Prozesse im Unternehmen verstehen und in einen DV- Ablauf umwandeln zu können. Das Wichtigste dabei ist die Fähigkeit zum analytischen Denken, um innerhalb vernünftiger Zeit das Problem verstehen und selbst beschreiben zu können - dessen grundsätzliche Lösbarkeit sei hier einmal vorausgesetzt. Da die Aufgabe normalerweise nicht so simpel ist wie in meinem Beispiel, kann Wissen um unternehmensinterne Strukturen und Prozesse absolut nicht schaden.

    Ein wenig ist diese Tätigkeit mit der eines Rechtsanwalts zu vergleichen, der sich ebenfalls innerhalb kurzer Zeit Insiderwissen über einen Fall erwerben muss. Er wird dieses zu großen Teilen recht schnell zurückwissen, i.e. vergessen, können. Zum Zeitpunkt der Realisierung eines Programms ist Detailwissen für den Entwickler unabdingbar, später aber nicht mehr "on-line" vorhanden (NB : deswegen ist Dokumentation auch kein Selbstzweck).

    Aus meiner Berufspraxis noch ein Beispiel dazu : Ich bin gelernter Koofmich und Seiteneinsteiger mit inzwischen gut 25 Jahren IT auf dem Buckel. Letztes Jahr hatte ich die dankbare Aufgabe, ein Pascal-Programm von Anno Kawumm, das in keiner Weise dokumentiert war, auf unsere heutige Umgebung zu transferieren, also völlig neu zu entwickeln. Es handelte sich dabei um Messdatenberechnung für evolventenverzahnte Wellen und Bohrungen; hochtechnisch und mathematisch so komplex, dass ich da zunächst reinguckte wie die Sau ins Uhrwerk. Die eigentliche Arbeit bestand also zunächst darin, mir von den Fachleuten die Zusammenhänge so erklären zu lassen, dass ich verstand, was mathematisch abzulaufen hatte und dies in ein System verwandeln konnte. Eine echte Herausforderung für den Kunden wie für mich ;-)

    Das gesammelte Messtechnik-Fachwissen in meinen armen Schädel zu bekommen, hätte in diesem Leben nicht mehr funktioniert; also beschränkte sich die Wissensvermittlung auf die reine Prozessbeschreibung. Das Codieren und Dokumentieren nahm grob geschätzt 25-30% der gesamten aufgewendeten Arbeitszeit in Anspruch - viel wesentlicher war das Verstehen des Problems.

    Uff, sprach Winnetou, biss sich ein Loch in den Bauch und verschwand herinnen. Sinn und Zweck dieses langen Sumses war der Versuch, Dir zu erklären, dass das eigentliche Programmieren, also Hock&Hack, nur ein relativ kleiner Bestandteil der Arbeit bei der Softwareentwicklung ist.

    Eine oder meinetwegen auch zwölf Programmiersprachen zu lernen, wird Dich nicht dazu befähigen, einen halbwegs anspruchsvollen und auch einträglichen Job zu finden. Du solltest entweder den akademischen Weg wählen (Informatik), wo Dir die Methodik der Prozessanalyse, Algorithmenerstellung und ganz nebenbei auch die eine oder andere Sprache beigebogen werden, oder aber über eine Ingenieurslaufbahn nachdenken (Kaufmannswissen ist für einen Techniker leichter zu erwerben als andersrum!), wobei Du da zur Genüge mit Computern zu tun bekommen wirst. Wichtig ist, neben der Fähigkeit zum analytischen Denken, vor allem das Interesse, Kundenprobleme zu verstehen und zu lösen. Der Blechheini kommt irgendwann kurz vor Schluss der Kette, als ein Arbeitsmittel von vielen. Kommunikationsfähigkeiten, und zwar auf der menschlichen Seite, sind da viel gefragter als Shakespeare auf Hexadezimal rezitieren zu können.

    Wenn Du Deinen Schwerpunkt dagegen auf der Computerecke siehst, also lieber mit dem PC arbeitest als mit Leuten in Projekten obskure Fragestellungen abzuarbeiten, wirst Du als "Programmierer" (Entwickler) eher nicht glücklich werden; solche Leute sind eher in der Systemadministration/-analyse zu Hause. Oder bei Wäwäwä als Webseitenverwurster ;-)

    Das solls erst einmal gewesen sein; bei Bedarf jammere ich Dir gern noch mehr aus meinem verfehlten Leben vor ;-)

    Hol Dir ein Sternchen für Deine Geduld, falls Du bis hierhin durchgehalten hast.

    Gruß Eillicht zu Vensre

  5. Antwort von nach 11 Stunden 0 hilfreich
    Re: Voraussetzungen für einen Programmierer ?

    Vielen Dank für die vielen guten Antworten.
    Ich glaube das ist nix für mich.
    Naja, war halt an den Voraussetzungen interessiert und sie sind mir nun bekannt.

    Danke dafür !

    mfg
    phil



Keine passende Antwort gefunden? Jetzt eigene Frage stellen!