Servus Leute,
ich hab da mal ne Frage:
Woher stammen die zahlreichen Programmierkenntnisse der ganzen
E-Techniker ?
Ich habe mich mal hier im Forum einbissl durchgeklickt und auf
zahlreiche Personen gestoßen, die meinten Programmiersprachen wie C ,
C#, C++, uvm. sehr gut zu beherrschen.
Nun habe ich in den Modulhandbüchern einiger Unis vergriffen und
festgestellt, dass die Bachelorstudiengänge lediglich 1 bis 2 wirkliche
Programmierkurse besitzen. Aber das kann doch nicht ausreichen, um den
Studenten ein fundiertes Wissen über das Programmieren zu geben. Beim
Master sieht es an dieser Stelle nicht anders aus. Die Studenten
vertiefen sich dabei immer mehr und mehr in die Materie und Theorie,
lernen aber praktisch das Programmieren kaum.
Aus diesem Grund wollte ich die E-Techniker hier mal fragen, woher
stammen eure Kenntnisse ? Habt ihr Sie euch neben dem Studium selbst
angeeignet ? Würde mich sehr interessieren.
Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf
die Schönste, nämlich Java ?
Liebe Grüße,
Kingkoenig
Dazu muss ich sagen, dass sehr viele wichtige Fähigkeiten, die ich im
Job brauche, nicht von der Uni stammen (Betrifft nicht nur
Programmierung sondern ein grosses Stück weit auch
Schaltungsentwicklung. Leiterplattenlayout sowieso).
Die Uni war mehr für den theoretischen Unterbau gut (welcher aber
durchaus nicht unwichtig ist).
Kingkoenig schrieb:> Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf> die Schönste, nämlich Java ?
:)
Schönheit liegt im Auge des Betrachters!
Ich habe mir privat auch ein Bisschen Java angeeignet. Spätere Jahrgänge
haben an meiner Uni mit Javabprogrammieren gelernt.
Ich denke aber, für die meisten von uns ist heute der Embedded-Bereich
das wichtigste, was Sprachen wie C wichtiger und Java unwichtiger für
uns macht.
M.A. S. schrieb:> Dazu muss ich sagen, dass sehr viele wichtige Fähigkeiten, die ich im> Job brauche, nicht von der Uni stammen
Full ACK! Das ist ein wesentlicher Aspekt der nahezu immer den guten
Absolventen vom Rest unterscheidet: er beschäftigt sich mit dem Kram
auch außerhalb der Uni. Selbst wenn man alles in der Uni gelernte zu
100% kann, so ist man zu nichts zu gebrauchen. Ich sehe es immer wieder
bei Kommilitonen, wo ich mich frage, ob die wohl wie ein Ferkes enden...
Warum viele Etechniker programmieren können, obwohl das nicht ihr
Fachgebiet ist, liegt einfach daran, dass wir erkennen, wie nützlich es
ist, das zu können. Wer Programmieren als Fähigkeit in seinem
Werkzeugkasten hat, baut in der Regel nacher auch besser und effizienter
seine Etechnik-Geschichten.
Kingkoenig schrieb:> Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf> die Schönste, nämlich Java ?
Merkste selbst ne? Ist wohl doch nicht so toll, wie du glaubst. Um genau
zu sein, ist Java ziemlicher Quark, jedenfalls wenn man sich die
Endprodukte anschaut. Alle Produkte, die ich kenne und von denen ich
weiß, dass sie Java-basiert sind, sind Schrott.
Kingkoenig schrieb:> Aus diesem Grund wollte ich die E-Techniker hier mal fragen, woher> stammen eure Kenntnisse ?
Aus den Vorlesungen erstmal NICHT.
Ja, das hast du ganz richtig gesehen, da gibts so gut wie keine
Vorlesungen dazu. Ich hatte eine Vorlesung zu C im Bachelor inkl. Übung,
das waren aber nur extreme Grundlagen. Also alles, was man in 5-10
Minuten mal schnell runterschreibt, nichts komplexeres!
Hab dabei praktisch nichts neues gelernt.
Später hatte ich dann noch nen C++ Kurs... Naja. In etwa das gleiche.
> Habt ihr Sie euch neben dem Studium selbst> angeeignet ? Würde mich sehr interessieren.
Nein, nicht während des Studiums sondern schon davor. In der Schule
irgendwann mal mit Delphi, C etc. angefangen. Damals war ich 15 oder 16
oder so. Dann noch ein wenig Assembler gemacht. usw. usw.
Richtig das PROGRAMMIEREN (und nicht nur den Code hinzuschmieren) hab
ich erst gegen Ende des Studiums gelernt, als ich richtig am Arbeiten
war. Ein halbes Jahr in der Softwareabteilung einer Firma, die
hochzuverlässige Geräte+Software produziert... Das hinterlässt Spuren am
eigenen Programmierstil ;-)
Ach ja: Ich würde sogar sagen, dass der Großteil der Absolventen nicht
sonderlich gut programmieren kann. Es geht schon irgendwie, aber oft
wird nicht verstanden was dahinter passiert bzw. der Code läuft schlecht
und nicht performant. Von Sicherheit etc. reden wir mal gar nicht.
Ein kompilierbares Programm zu erzeugen hat noch lange nichts mit
"Programmieren können" zu tun. Dazu gehört Erfahrung und das haben viele
Absolventen natürlich noch nicht.
> Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf> die Schönste, nämlich Java ?
Morgen ist erst Freitag ;-)
Also ich persönlich mag Java nicht. Ich hab es bisher nicht gebraucht
und wenn ich es verwenden musste, war es grauenhaft unperformant.
Außerdem nicht wirklich geeignet für Low-Level Programmierung.
Im Studium hatten wir eine Vorlesung zum C-Lernen. Die war aber nicht so
dolle, deswegen habe ich nur die Übungen für den Übungsschein gemacht
und mir das mit nem Buch lieber selber beigebracht. Pascal konnte ich
noch aus der Schule. Aber nachdem ich erstmal C kennengelernt hatte,
wollt eich kein Pascal mehr. C fand und finde ich einfach genial. Der
beste portable Makro-Assembler, der je erfunden wurde.
Im Studium habe ich dann noch ein größeres Projekt in Matlab und
Assembler gehabt, und in C privat nebenher Sachen gemacht. Ach ja und
ein wenig Fortran.
Danach im Job (embedded) gings mit Assembler weiter, und dann auch C mit
und ohne RTOS. Über den Arbeitgeber gab's eine Schulung dazu. War auch
viel learning by doing.
Naja, und privat halt noch entwickeln und Sachen lesen, so
Designkonzepte, Patterns, Antipatterns und sowas. Man muß sich damit
schon beschäftigen, zumal gerade C zwar eine angenehm schlanke, aber in
der Tiefe nicht triviale Sprache ist.
Mit Java kann ich so gar nichts anfangen. Was soll ich denn damit, da
hat man ja nichtmal Pointer-Arithmetik, Pointercasting von Konstanten
geht nicht (braucht man dauernd für I/O), kann das Speicher-Layout nicht
im Detail kontrollieren, Inline-Assembler geht so nicht, und Interrupts
kann ich in einer VM auch schlecht schreiben.
Grundsätzlich entwickeln E-Techniker deswegen embedded, weil sie mit der
Hardware gut können. Gib mal einem Informatiker ein Oszilloskop zum
Debuggen, da kriegste aber ein Gesicht.
Die Defizite von E-Technikern machen sich aber immer dann bemerkbar,
wenn ein Projekt neu aufgesetzt werden soll. Da wäre ein Informatiker
für die Architektur echt besser, damit kein verfrickelter Kram
rauskommt. Das geht aber in dem Moment, wo ein bestehendes
Betriebssystem gewählt wird, denn da ist zumindest dessen Grundkonzept
(hoffentlich) nicht von E-Technikern gemacht.
Das ist wieder so eine Pseudotitel-Vergewaltigung.
Elektrotechniker haben mit der Uni oder FH eigentlich nichts zu tun.
Vermutlich sind Elektroingenieure gemeint und deren berufliche
Spezialisierung/Ausrichtung sicher sehr mannigfaltig, weil nicht
überall Programmierkenntnisse benötigt werden. Also etwas mehr
Präzision bitte.
Der Techniker ist ein eigenständiger Bildungsgang der eine
kostengünstige Alternative zum IHK/HWK-Meister bilden soll.
Der Abschluss hat Hochschulreifecharakter, genauso wie jeder
Meister, berechtigt ist, dann studieren zu dürfen.
Bei den ITlern dürfte die Vertiefungsrichtung Programmieren
schon ganz anders aussehen. Da kann der Moderator Chris D.
ja mit reden, denn der ist so einer.
Kingkoenig schrieb:> Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf> die Schönste, nämlich Java ?
Java ist für die Tasse....
Für "E-Techinicker" ist das Zeug eigentlich nicht zu gebrauchen, also
warum sollte man das beherrschen?
Kingkoenig schrieb:> Aus diesem Grund wollte ich die E-Techniker hier mal fragen, woher> stammen eure Kenntnisse ? Habt ihr Sie euch neben dem Studium selbst> angeeignet ? Würde mich sehr interessieren.
1988 mit dem Studium begonnen und schon im ersten Semester C planmässig
gelernt - parallel daheim am Amiga. Es gab sowohl einen ausdrücklichen
C-Kurs, als auch Programmierstrukturen wie System-5 IPC unter Unix,
Semaphoren, Philosophenproblem und das Übliche. Weiter gab es Praktika
mit C für Echtzeit- und Multitaskingstrukturen unter Unix sowie
Treiberprogrammierung OS/9. Wir hatten schon verpflichtend C satt, dazu
kamen noch Seminare und freiwillige AGs obendrauf.
C++ habe ich mir ab 1992 selber und vorwiegend anhand von Büchern
beigebracht, um speziell Windows zu programmieren. Dazu habe ich noch am
Rechenzentrum und an einem Institut Regelungstechnik programmiert. Ab
1993 habe ich auch Programme für Firmen geschrieben und verkauft. Später
kam dann Audio-DSP-Apps und Algorithmen dazu.
Es ist also eine Kombination von:
1) ordentlich didaktisch und wissenschaftlich gelernt
2) praktisch in Firmen weiterentwickelt
3) im Selbststudium ausgebaut
Besonders der Umstand, daß ich erprobte Konzepte und Strukturen an der
Uni lernen konnte, halte ich für sehr wichtig. Das Meiste davon hätte
ich nicht selber erfinden können, besonders die Prozesssteuerungen mit
Semaphoren, pipeline-Strukturen etc waren sehr hilfreich und ein klarer
Vorteil gegenüber den Selbstlernern.
> Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf> die Schönste, nämlich Java ?
2 Jahre Java gemacht und gesehen, daß die Sprache nicht effektiv ist für
das, was ich mache und dazu zuviel Konkurrenz existiert. Dasselbe gilt
für Perl.
Du musst Dinge können, bevor die grosse Masse sie kann. Wenn erst mal
jeder Knödel programmieren will, dann muss man sich davon verabschieden.
Da gabs doch erst eine Umfrage im Nachbar-forum:
Beitrag "(Umfrage) Was war eure erste Programmiersprache usw.?"> Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf> die Schönste, nämlich Java ?
Weil ET-Techniker vorwiegend im Embedded / µC-Breich unterwegs sind und
da ist Jave als eine VM-basierte Sprache wenig praktikabel. Der
resourcenfresser Java ist eher was für GUI/Web-Applikationen - dafür
wurde sie auch von SUN als Server-Hersteller entwickelt.
Was der ET-Techniker noch braucht sind schnell zusammgestrickte Tools,
deshalb kennen sich die Ing's gut mit den ganzen
Linux/Unix/Shell-Zauberdingen aus.
Hallo Kingkoenig (welch seltsamer Name).
Kingkoenig schrieb:> Ich habe mich mal hier im Forum einbissl durchgeklickt und auf> zahlreiche Personen gestoßen, die meinten Programmiersprachen wie C ,> C#, C++, uvm. sehr gut zu beherrschen.
Wer behauptet denn von sich, diese Sprachen "sehr gut" zu beherrschen?
Ich bin in meiner Karriere genau auf eine (1) Person gestoßen, über die
ich das von der Sprache C behaupten kann.
M.A. S. schrieb:> Dazu muss ich sagen, dass sehr viele wichtige Fähigkeiten, die> ich im Job brauche, nicht von der Uni stammen
Das kommt der Sache schon sehr nah.
J. F. schrieb:>> M.A. S. schrieb:>> Dazu muss ich sagen, dass sehr viele wichtige Fähigkeiten, die>> ich im Job brauche, nicht von der Uni stammen>> Das kommt der Sache schon sehr nah.
Ich spitze mal zu und behauptet das man "richtiges" Programmieren nicht
an der Uni lernen kann.
Richtiges Programmieren bedeutet das man sich mit den begrenzten Mittel
im Job/Hobby selbst aus dem Dreck ziehen muß.
Also nach der Konzepterstellung, Datenstrukturen etc. fängt die
eigentliche Arbeit erst mal an:
-wie debuggt man am besten?
-wie analysiert einen fehler im Feld mit Laptop?
-wie kitzelt man aus den alten Hasen die benötigten Tipps raus?
-wie macht mans billig?
-wie macht mans narrensicher?
-*wie?*
Das Warum? was einem die Uni lehrt hilft da nur bedingt weiter, ist aber
gut fürs Selbstvertrauen.
Es kommt auch ganz auf die Auslegung der UNI / FH an.
Ich habe B.Eng. Elektrotechnik an einer FH Studiert. Diese ist sehr
Softwarelastig aufgestellt.
Wir hatten Module zu Assembler & C auf Mikrocontroller, C, C++, Java,
VHDL, AWL (SPS) und als Wahlpflichtmodul Software Engineering.
Vorbereitend gabs noch Grundlagen der Informatik mit Sortier- und
Suchalgorithmen.
> Autor: Kingkoenig (Gast)> Datum: 27.10.2016 23:05> Woher stammen die zahlreichen Programmierkenntnisse der ganzen> E-Techniker ?
Sehr oft von Volkshochschul-Freitagskursen oder von ABM-Leergängen des
Arbeitsamtes.
Erschreckend was sich da manchmal Programmierer nennt.
im Studium lernen?
ne das Studium braucht man um Scheine zu machen, dazu muss man auch mal
Vorlesungen besuchen und für Klausuren lernen.
Was ich im Beruf brauche war Interesse und da lernt man mehr und vieles
in der Freizeit und man zählt nicht die Stunden bis Feierabend.
Eigentlich gibt es keinen Feierabend, kein WE man macht ja was einem
Freude und Erfolg bringt, mit Erfolg meine ich nicht Geld sondern
Befriedigung:
"Ich liebe es wenn ein Plan funktioniert"
Ein weiser Spruch :)
OK, man fängt klein an, Commodore Basic, macht etas Assembler für
'seine' Maschine, steigert sich evt. nach C im Studium Grundkurs, aber
wer schon programmiert hat muss "nur" neue Vokabeln lernen, der
Programmablauf ist doch bei gleicher Aufgabenstellung identisch, ist wie
Kochen und Backen, der Herd der Topf ist nicht so entscheidend, es sind
Werkzeuge die einem liegen oder ärgern, aber nichts am Programm ändern.
Ich hatte in der Uni nur
* Java
* am Rande C (einmal rudimentär in der Vorlesung, dann im Praktikum
mechatronische Systeme, wobei davon ausgegangen wurde, dass die Sprache
einer aus jeder Gruppe schon ausreichend beherrschein werde, außerdem
nochmal später in Verbindung mir der digitalen Signalverarbeitung)
* VHDL (wobei das bekanntlich keine Programmiersprache ist)
C++ beherrsche ich so halbwegs (ich weiß was Klassen und virtuelle
Methoden sind, kenne neben dem C-Subset die wichtigsten
Klassen/Templates aus der STL wie string, vector, list, habe nur
gefährliches Halbwissen bzgl. gutem eigenen Klassendesign). Musste ich
mir aber selbst beibringen. Der ursprüngliche Auslöser war ein Buch über
Animationen aus den 90ern, in dem alle Beispiele in C++ waren. Ich habe
es seitdem etwas vertieft, aber nicht so wahnsinnig.
C# musste ich mir auch selbst beibringen. Ich beherrsche es ganz gut,
wenn auch nicht perfekt. Ich finde die Sprache schöner als Java, was
gegen den Superlativ im Ausgangsbeitrag spricht :-)
Ja, und das Webzeug (HTML, CSS, JavaScript, PHP) habe ich mir natürlich
auch selbst beigebracht.
Bin übrigens, wie mein Nick schon sagt, nicht direkt E-Techniker :-)
C. A. Rotwang schrieb:> Der> resourcenfresser Java ist eher was für GUI/Web-Applikationen - dafür> wurde sie auch von SUN als Server-Hersteller entwickelt.
Witzigerweise nicht. Es wurde für Settop-Boxen entwickelt, also
embedded. Nur hat die Sprache dort niemals wirklich Fuß gefasst.
Dann wollte Sun sie auf dem Desktop groß machen. Nur hatte Sun keine
Ahnung von Desktop und Microsoft hat alles getan um Java klein zu
halten. Was Microsoft sagenhafte 1,6 Milliarden USD an Strafzahlung an
Sun gekostet hat, die Sun trotzdem nicht gerettet haben.
Für Desktop GUI-Anwendungen muss man sich bei Java anstrengen das sie
vernünftig aussehen. Integriert in einen Desktop bekommt man sich nur
sehr eingeschränkt. Für Web-Anwendungen (Browserseite) verwendet kein
Mensch mehr Java (und JavaScript ist nicht Java).
Groß ist Java auf
- Serverseite (Enterprise Anwendungen, Web-Serverseite)
- Android (mit viel gutem Willen als Embedded zu bezeichnen)
- Smartcards (wir allen tragen ohne es zu wissen mehrere embedded
Java-Computer in Form von Kreditkarten, SIMs usw. mit uns rum)
Die Performance von Java ist mittlerweile gut - wenn man über die
VM-Startup Zeiten und das Hotspot-Compilieren hinweg ist. Ich habe ein
paar Simulationen in Java laufen die ein paar alte C++-Programme
ersetzen. Kein merklicher Unterschied mehr und es ist einfacher dafür
Programmierer zu bekommen als für C++.
Java krankt wie viele Sprachen daran, das die meiste Software von
Idioten geschrieben wird, die keine Ahnung haben was sie da tun. Ohne
vier Frameworks und 10 Hilfsbibliotheken können die sich nicht mal den
Arsch abwischen. Der schlimmste Horror-Code den ich je hatte war ein
Stück Java-Software das über das verfickte Maven fast 400 jar
Bibliotheken zum Bauen nachlud. Da konnte man nur noch im Strahl kotzen.
> Was der ET-Techniker noch braucht sind schnell zusammgestrickte Tools,> deshalb kennen sich die Ing's gut mit den ganzen> Linux/Unix/Shell-Zauberdingen aus.
Matlab oder wenn es billig sein soll GNU Octave. SPICE und andere
Simulationssprachen nicht vergessen.
Programmieren widerspricht dem Selbstverständnis der Informatik als
Wissenschaft. Daher wird die Nachfrage nach Programmierern von den
Informatikern nicht gedeckt. U.a. E-Technik Ingenieure haben die Lücke
gefüllt, weil sie es konnten und wollten und weil es was zu verdienen
gab.
Dabei half es, dass seit Jahrzehnten kein E-Techniker die Uni verließ
ohne wenigstens eine Programmiersprache gelernt zu haben. Bei mir waren
es zwei Hochsprachen, drei Assemblersprachen und eine Skriptsprache die
ich offiziell gelernt habe. Mindestens drei weitere Hochsprachen und
eine Assemblersprachen kamen in der Studienzeit nebenbei privat hinzu.
Der Informatiker ist beim Programmieren wie ein männlicher Teenager. Er
weiß natürlich theoretisch wie das mit dem Mädchen geht und kann
stundenlang mit seinen theoretischen Erfahrungen bei seinen Kumpels
angeben. Nur hat er noch nie was mit einem Mädchen zu tun gehabt.
Jack schrieb:> Der Informatiker ist beim Programmieren wie ein männlicher Teenager. Er> weiß natürlich theoretisch wie das mit dem Mädchen geht und kann> stundenlang mit seinen theoretischen Erfahrungen bei seinen Kumpels> angeben. Nur hat er noch nie was mit einem Mädchen zu tun gehabt.
Das sind doch die besten Voruassetzungen für einen hochbezahlten Job als
IT Consultant. Sie wissen wie es geht, sehen Tag für Tag wie es gemacht
wird, aber sind unfähig es selbst zu tun.
Horst schrieb:> Alle Produkte, die ich kenne und von denen ich weiß, dass sie> Java-basiert sind, sind Schrott.
Weil du von denen, die kein Schrott sind, vermutlich einfach nicht
weißt, dass sie in Java geschrieben worden sind …
Du besitzt nicht zufällig ein Android-Telefon oder -Tablet? :)
BTT: Selbststudium, schon während der Uni-Zeit (da allerdings noch
kein C). Ach ja, für C würde ich meine Kenntnisse der Sprache
inzwischen schon mal als „gut“ bezeichnen. ;-) Ich bin aber auch
recht dankbar, dass es den Sprachstandard (offiziell nur in Form
von “Drafts”, aber immerhin) frei im Netz zum Lesen gibt. Das hilft
schon, Unklarheiten zu beseitigen.
meckerziege schrieb:> Kingkoenig schrieb:>> Aus diesem Grund wollte ich die E-Techniker hier mal fragen, woher>> stammen eure Kenntnisse ?> Aus den Vorlesungen erstmal NICHT.
Man muss halt leider auch sagen, eine Vorlesung befähigt einen erst mal
zu nichts.
Wer kann aus einer Vorlesung lernen ein Haus zu entwerfen oder ein Rohr
zu schweißen?
Wer kann aus einer Vorlesung lernen wie man ein Bild malt oder ein
Schiff baut?
Eine Vorlesung ist ein winziger Baustein, hin zu einer beruflichen
Qualifikation. Weder unbedingt notwendig, noch hinreichend um XYZ sicher
und in einem prof. Umfeld zu beherrschen.
Jörg W. schrieb:> Horst schrieb:>> Alle Produkte, die ich kenne und von denen ich weiß, dass sie>> Java-basiert sind, sind Schrott.>> Weil du von denen, die kein Schrott sind, vermutlich einfach nicht> weißt, dass sie in Java geschrieben worden sind …>> Du besitzt nicht zufällig ein Android-Telefon oder -Tablet
Nein, tatsächlich besitze ich kein Android-Gerät. Und ja, das Konzept
hinter Dalvik halte ich auf Mobile Devices nach wie vor für Kernschrott.
Kein Wunder, dass der Akku nur noch einen halben Tag hält. Ganz zu
schweigen von diesem ganzen Google-Mist in einem "normalen" Android.
Also, leider nicht überzeugend, weitere Beispiele, wo ich das nicht
weiß?
Cyblord -. schrieb:> Man muss halt leider auch sagen, eine Vorlesung befähigt einen erst mal> zu nichts.
stimmt absolut, aber
ohne Vorlesungen keine Scheine,
ohne Scheine kein Diplom,
ohne Abschluß selten ein Vorstellungsgespräch und noch seltener einen
gut bezahlten Job.
Die übliche Reihenfolge muss man hier (leider?) schon einhalten.
Ich denke immer noch alles was ich nach dem Studium arbeitete hätte ich
auch ohne Diplom geschafft, aber der Wisch war die Eintrittskarte.
Ohne Studium wäre ich aber vermutlich nie in ein Laserlabor gekommen,
hätte nie mit einem Compi an einem 40kW Widerstandsofen spielen können,
da habe ich auch eine Menge gelernt.
Joachim B. schrieb:> stimmt absolut, aber> ohne Vorlesungen keine Scheine,> ohne Scheine kein Diplom,> ohne Abschluß selten ein Vorstellungsgespräch und noch seltener einen> gut bezahlten Job.>> Die übliche Reihenfolge muss man hier (leider?) schon einhalten.
Das war auch kein Plädoyer gegen VL. Sondern gegen die immer gleiche
müßige Diskussion: Ich kann programmieren weil ich hatte eine VL, oder
ich kann es nicht weil ich hatte keine VL.
DAS ist absoluter Schwachsinn.
meckerziege schrieb:> Kingkoenig schrieb:>> Aus diesem Grund wollte ich die E-Techniker hier mal fragen, woher>> stammen eure Kenntnisse ?> Aus den Vorlesungen erstmal NICHT.
Ist bei den Informatiker die ich kenne der gleiche Fall, die haben kein
C "in der Vorlesung" sondern im "Programmierlabor".
Eigentlich Schwachsinn zu erwarten das man Programmieren in der
Vorlesung erlernt. Von seinen Zahnarzt erwartet man schließlich auch das
er seinen "Job" im richtigen Laben erlernt und nicht aus
Büchern/Vorlesung.
"Ach, der Bohrer in der Vorlesungsmitschrift sah zwar ganz anders aus,
aber mit dem werd ich auch klarkommen" - "Herr Doktor, das ist nicht der
Bohrer, das ist das Dermatom ..."
> Woher stammen die zahlreichen Programmierkenntnisse der ganzen> E-Techniker ?
Du siehst es ja in diesem Forum - Schaumschläger sind unheimlich
beliebt.
S. B. schrieb:>> Woher stammen die zahlreichen Programmierkenntnisse der ganzen>> E-Techniker ?> Du siehst es ja in diesem Forum - Schaumschläger sind unheimlich> beliebt.
Man muss sich nur mal ansehen wie viel Aufsehen eine einfache
Entprellroutine hier im Forum macht. Da werden gewisse Personen
glottgleich angebetet, weil sie so was als Code veröffentlichen.
Da weiß man schnell wie weit es hier mit den Programmierkenntnissen der
vielen ET'ler hier her ist.
Cyblord -. schrieb:> Man muss sich nur mal ansehen wie viel Aufsehen eine einfache> Entprellroutine hier im Forum macht. Da werden gewisse Personen> glottgleich angebetet, weil sie so was als Code veröffentlichen.>> Da weiß man schnell wie weit es hier mit den Programmierkenntnissen der> vielen ET'ler hier her ist.
Klar, weil der richtige Hardwerker/ET'ler/Löthar das Prellproblem in
Hardware löst und das Programmiergeschiess Drumherum zurecht als
Hilfslösung betrachtet ;-) SCNR
Ordner schrieb:> Klar, weil der richtige Hardwerker/ET'ler/Löthar das Prellproblem in> Hardware löst und das Programmiergeschiess Drumherum zurecht als> Hilfslösung betrachtet ;-) SCNR
Das weiß ich. Wenn man nur einen Hammer hat, sieht jedes Problem wie ein
Nagel aus.
Cyblord -. schrieb:> Ordner schrieb:>> Klar, weil der richtige Hardwerker/ET'ler/Löthar das Prellproblem in>> Hardware löst und das Programmiergeschiess Drumherum zurecht als>> Hilfslösung betrachtet ;-) SCNR>> Das weiß ich. Wenn man nur einen Hammer hat, sieht jedes Problem wie ein> Nagel aus.
Ja, und für einen Programmierer tut es auch ein virtueller Hammer.
Ein realer Hammer ist hier nicht nötig, weil die zu lösenden Probleme
auch "virtueller" Natur sind. -
Mit Software löst man Problem die man ohne Software nicht hätte ;-)
Cyblord -. schrieb:> Da weiß man schnell wie weit es hier mit den Programmierkenntnissen der> vielen ET'ler hier her ist.
na und, ist nicht unser Hauptanliegen!
Klar kann man Entprellen als hardcore Löter in hardware machen, aber
wenn eh ein µC dranhängt freue ich mich über eine gute Routine die auch
noch gleichzeitg ein guter Taktgeber ist, ich spare Bauteile und
Löterei.
Cyblord -. schrieb:> Man muss sich nur mal ansehen wie viel Aufsehen eine einfache> Entprellroutine hier im Forum macht. Da werden gewisse Personen> glottgleich angebetet,
mir gefällt die bullet proof sehr, könnte man auch in hardware nachbauen
aber wozu?
Wenn ich mich damit ausführlich beschäftigen würde bit für bit würde ich
das vermutlich sogar vollständig verstehen und in hardware nachbauen
können, aber wozu?
Wo ist dein Problem?
Das Leben ist zu kurz die Zeit zu kostbar als das JEDER das Rad neu
erfindet, machen wir doch das was uns interessiert und freuen uns über
Fertiges.
In meiner Industriezeit haben wir öfter ein gemeinsames Frühstück in der
Abteilung gemacht, die 15 Minuten konnten schon mal 2 Stunden dauern zum
Ärgernis vom Abteilungsleiter, der verstand aber nicht was da eingespart
wurde, so wurde nämlich vermieden das 5 Ingenieure an 5 Prüfautomaten
immer dieselben Routinen programmieren. Hatte der eine eine Routine
fertig und konnte den anderen den Code überreichen und dafür eine andere
Routine bekommen, viel Doppelprgrammierei konnte so vermieden werden und
alle profitierten.
Sollen 2 gleichartige Routinen existieren wurde die bessere nach
Besprechung in eine LIB überführt und beim nächsten Prüfautomaten konnte
sich jeder aus der LIB bedienen.
Kingkoenig schrieb:> Aus diesem Grund wollte ich die E-Techniker hier mal fragen, woher> stammen eure Kenntnisse ?
Mit 12 Jahren und Turbo C als Hobby angefangen. Vorher noch Turbo Pascal
:-).
P.S.: Auch der Informatiker lernt Programmieren nicht an der Uni.
Hallo,
der Bereich Drehstromantriebstechnik setzt sich zusammen aus
Leistungselektronik, Steuerung und Regelung. Für diese hardwarenahen
Anwendungen wird die Software in der Firma ausschließlich von
Elektroingenieuren gemacht, denn da hätte ein Informatiker keine Chance.
Man hat in der Vergangenheit die Software mal ausgelagert und die
Softwerker über Lastenhefte gefüttert, das ging jedoch gründlich in die
Hose, weil man nicht alles spezifizieren kann. Wichtig ist dabei, dass
sie so eine Form hat, inkl. Dokumentation, dass man selbst nach 15
Jahren noch Änderungen machen kann.
Gruß MKch
Manfred K. schrieb:> Man hat in der Vergangenheit die Software mal ausgelagert und die> Softwerker über Lastenhefte gefüttert, das ging jedoch gründlich in die> Hose, weil man nicht alles spezifizieren kann.
Besser gesagt:
Man kann Software nicht so spezifizieren, dass jemand ohne jede Ahnung
der konkreten Anwendung die Software rein anhand der Spezifikation
sauber umsetzen kann.
Es braucht eben Domänenwissen. Das ist einer der Hauptgründe, warum die
Verlagerung von Softwareentwickluing nach Indien regelmäßig fehlschlägt.
Ok, hier mein Senf:
Programmieren kann man nicht theoretisch lernen.
Dazu gehört Erfahrung, viel Erfahrung. Diese sammelt man nur durch
eigenes tun und ganz wichtig durch Code-Reviews von erfahrenen Kollegen.
Leider wird letzteres immer weniger und man hat nur noch Code vor sich,
der auf Unerfahrenheit basiert.
Lernen kann man jedoch in der Theorie diverse Paradigmen der
Softwareentwicklung.
Aber ein Programmierer ist noch lange kein (Software-)Entwickler.
Einen guten Softwareentwickler macht neben dem beherrschen von diversen
Programmiersprachen die Fähigkeit sich in andere Berufe grob bis mittel
einzuarbeiten (Prozess-Wissen). Erst wenn man versteht, wie ein
Disponent, der Lagerist, Controller, Produktionsplaner, etc. arbeitet,
kann man denen auch ein gutes Softwareprodukt erstellen/anbieten. Dazu
gehört auch die richtigen Fragen zu stellen, also Kommunikation.
Jaja, hier das Klischee: Informatiker + Kommunizieren = NaN
Ok, das Ganze geht jetzt viel weiter als µC. Hier befindet man sich eher
in "atomaren" Gefilden.
Jack schrieb:> Der Informatiker ist beim Programmieren wie ein männlicher Teenager. Er> weiß natürlich theoretisch wie das mit dem Mädchen geht und kann> stundenlang mit seinen theoretischen Erfahrungen bei seinen Kumpels> angeben. Nur hat er noch nie was mit einem Mädchen zu tun gehabt.
mag sein dass es Unterschiede bei den Unis gibt, bei uns jedoch wurde im
Info Studium viel programmiert. Hauptsächlich C++, aber auch Python,
Java, Javascript, Matlab. Oft konnte man sich die Sprache auch
aussuchen.
So gesehen halte ich das für ein Gerücht.
Kenne viele ET Absolventen, die auch gut programmieren können. Ein
bisschen mangeln tut es dann meist bei Dingen wie Algorithmen und
Datenstrukturen. Man glaubt nicht wie viele Probleme man irgendwie auf
ein Problem auf einem Graphen zurückführen kann und welche sich dann
leicht lösen lassen. Kann jedem ET Absolventen mit Interesse am
Programmieren nur empfehlen, sich auch ein bisschen in diese
(spannende!) Thematik einzuarbeiten.
Mark B. schrieb:> Es braucht eben Domänenwissen. Das ist einer der Hauptgründe, warum die> Verlagerung von Softwareentwickluing nach Indien regelmäßig fehlschlägt.
Ein typisches Szenario: Eine Software, jahrelang in Deutschland
entwickelt, das Design basiert auf zahllosen Diskussionen, eMails,
Telefonaten. Um Kosten zu sparen gibt man die fertige Software - sprich
den Code - ab. Ohne den gesamten Hintergrund ist der aber praktisch
wertlos. Software ist mit einem Eisberg zu vergleichen. Der Code sind
die sichtbaren 10%, der Rest ist Architektur und Design.
Die Analyse von Software nur mittels Sourcecode wird sehr schnell sehr
sehr teuer (siehe Truecrypt oder Toyotas ECM). Ein Team das den
Codehaufen vor die Füße geworfen bekommt und auf dieser Basis arbeiten
soll, hat von vornherein kaum eine Chance, egal in welchem Land es
sitzt.
Jörg M. schrieb:> Erst wenn man versteht, wie ein> Disponent, der Lagerist, Controller, Produktionsplaner, etc. arbeitet,> kann man denen auch ein gutes Softwareprodukt erstellen/anbieten. Dazu> gehört auch die richtigen Fragen zu stellen, also Kommunikation.
Das Versuche ich unseren Produktmanagern schon seit Jahren zu erklären
;-)
Hallo ihr lieben Freunde der Sonne,
vielen Dank für Euren zahlreichen Antworten.
Aber ich muss sagen, dass ich als E-Technik Ersti und großer
"Java-Fanboy" (Hab mich bislang hauptsächlich für die App- und
Spieleentwicklung interessiert) wirklich schockiert bin, dass mir die
Sprache später im beruflichen Leben keine Hilfe sein wird.
Ich habe schon aus den obigen Beiträgen heraus gelesen, dass vor Allem C
eine grundlegende Basis für den Beruf schafft.
Nun will ich Euch dennoch noch einmal fragen, welche Programmiersprache
Ihr mir raten würdet als nächstes zu lernen. C, C ++, Assembler oder
vielleicht sogar D ?
Euer Kingkoenig
Ulli S schrieb:> Das Versuche ich unseren Produktmanagern schon seit Jahren zu erklären> ;-)
Ganz genau.
Denn ein Informatiker muss um eine gute SW entwickeln zu können,
beherrschen:
1. Fundiertes Informatik Grundlagen bzw. erweitertes Wissen
2. Domänenspez. Fachwissen (inkl. Praxis)
3. "Soft-Skills" z.B. Sprachen, Entwicklungsmethoden im Team etc.
Kingkoenig schrieb:> Achjaa und warum beherrscht ihr zumeist alle Programmiersprachen bis auf> die Schönste, nämlich Java ?Kingkoenig schrieb:> Nun will ich Euch dennoch noch einmal fragen, welche Programmiersprache> Ihr mir raten würdet als nächstes zu lernen. C, C ++, Assembler oder> vielleicht sogar D ?
Wer es nicht sieht: Troll-Alarm!
Jack schrieb:> Programmieren widerspricht dem Selbstverständnis der Informatik als> Wissenschaft. Daher wird die Nachfrage nach Programmierern von den> Informatikern nicht gedeckt. U.a. E-Technik Ingenieure haben die Lücke> gefüllt, weil sie es konnten und wollten und weil es was zu verdienen> gab.
Einer unserer Professoren hat dazu mal eine Studie gemacht und Firmen
befragt. Der Tenor damals (1997):
Informatiker wurden von den Firmen seit Mitte der 80er stark aufgesogen,
weil der Bedarf täglich steigt, aber in sehr vielen Fällen wieder vor
die Türe gesetzt oder umgesetzt, weil sie es nicht schafften einen
Praxisbezug zu den Aufgaben herzustellen. Informatiker seien daher zwar
geeignet, große Programmpakete auzusetzen und zu verwalten, es fehle
ihnen aber "unten" an dem Bezug zu den Rechnern und hätten damit
Umsetzungsprobleme, wenn es an die Maschine und die Anforderungen geht,
und "oben" hätten sie Probleme mit der Funktionalität. Daher werden für
die Definition der Funktion, der GUI und der Maschinennähe immer
Elektroingenieure und z.B. Physiker bevorzugt.
Physiker seien dabei die chaotischsten und mieserabelsten Programmierer,
hätten aber den Kopf, um komplexeste Abläufe noch zu überschauen.
Geeignet sind sie aber meist nur für Einzelkämpferprojekte.
Ingenieure wiederum seien der beste Kompromiss, weil sie deutlich
sachlicher programmieren und dazu aber auch in der Lage seien,
verwertbare Ergebnisse zu bringen, d.h. die Programme sind nicht nur
akademisch gut, sondern man kann sie auch benutzen :-)
Heute ist das natürlich alles ganz anders ... :D
Kingkoenig schrieb:> Aber ich muss sagen, dass ich als E-Technik Ersti und großer> "Java-Fanboy" (Hab mich bislang hauptsächlich für die App- und> Spieleentwicklung interessiert) wirklich schockiert bin, dass mir die> Sprache später im beruflichen Leben keine Hilfe sein wird.>> Ich habe schon aus den obigen Beiträgen heraus gelesen, dass vor Allem C> eine grundlegende Basis für den Beruf schafft.>> Nun will ich Euch dennoch noch einmal fragen, welche Programmiersprache> Ihr mir raten würdet als nächstes zu lernen. C, C ++, Assembler oder> vielleicht sogar D ?
Du weißt ja noch nichtmal, welchen Beruf du ergreifen wirst. ;)
Vielleicht wirst du ja Energie- oder auch Regelungstechniker, dann wirst
du wahrscheinlich eher in Matlab arbeiten...
Ansonsten: Lern erstmal die Grundlagen. Finde heraus, was dich
interessiert. Die Elektrotechnik ist ein sehr weites Feld und so
pauschal kann man das nicht sagen.
In Bezug auf Programmieren: Lerne Programmieren! Denn dann ist die Wahl
der Programmiersprache zweitrangig, denn die Programmiersprache ist
IMMER nur das Werkzeug des Ingenieurs. In manchen Fällen kann es Sinn
machen, etwas in C zu implementieren (sehr oft der Fall in der
µC-Entwicklung), in anderen Fällen wählt man C#, Java oder auch C++.
Jack schrieb:> Programmieren widerspricht dem Selbstverständnis der Informatik als> Wissenschaft. Daher wird die Nachfrage nach Programmierern von den> Informatikern nicht gedeckt. U.a. E-Technik Ingenieure haben die Lücke> gefüllt, weil sie es konnten und wollten und weil es was zu verdienen> gab.
Ich habe Technische Informatik studiert und musste auch zahlreiche Kurse
auf "reinen" Informatikinstituten belegen. Und keine Ahnung ob es früher
(also vor 10, 20 oder 30 Jahren) anders war, aber heutzutage
programmiert man sehr viel. Fast jede Grundlagenvorlesung hatte eine
begleitende Übung, in der man wirklich konkret, oftmals sogar größere
Projekte, programmieren musste.
Am Gefürchtesten war der Betriebssystemekurs... und im Master dann
aufbauend Echtzeitbetriebssystem mit der Übung. :)
Ich habe während der Ausbildung (1995 etwa) zum
Kommunikationselektroniker Fachrichtung Informationstechnik (KEIN)
extrem ausführlich Assembler und Logik-Hardware Zeug gelernt.
Kein Wunder dass etwas davon bis heute hängengeblieben ist :-)
Kingkoenig schrieb:> Aber ich muss sagen, dass ich als E-Technik Ersti und großer> "Java-Fanboy" (Hab mich bislang hauptsächlich für die App- und> Spieleentwicklung interessiert) wirklich schockiert bin, dass mir die> Sprache später im beruflichen Leben keine Hilfe sein wird.>> Ich habe schon aus den obigen Beiträgen heraus gelesen, dass vor Allem C> eine grundlegende Basis für den Beruf schafft.
Blödsinn, oder, von was für einem Beruf reden wir? E-Technik Ingenieure
arbeiten in hunderten oder gar tausend unterschiedlichen Bereichen mit
extrem unterschiedlichen Anforderungen.
Lerne im Studium zu lernen, dann hast du das meiste aus dem Studium
rausgeholt.
Kingkoenig schrieb:> Nun will ich Euch dennoch noch einmal fragen, welche Programmiersprache> Ihr mir raten würdet als nächstes zu lernen. C, C ++, Assembler oder> vielleicht sogar D ?
D: in Beruf irrelevant und auch eher Misslungen.
C: Kann man immer brauchen, auch für C++ und andere Sprachen.
C++: Nach C, auch wenn viele gleich zu C++ raten.
Assembler: Halte ich heutzutage für überflüssig. Wenn das im Studium
durchgekaut wird nimm es mit aber ich würde keine Minute mehr als nötig
später darin investieren. Ist ok wenn man das mal grundlegend gemacht
und verstanden hat das reicht dann aber auch.
Was am lehrreichsten ist: Lese fremden Code und verstehe ihn. Da lernste
das meiste und am schnellsten. Nat. nicht irgendwelchen Schrott den
Anfänger zusammengeschustert haben.
Horst schrieb:> Jörg W. schrieb:>> Horst schrieb:>>> Alle Produkte, die ich kenne und von denen ich weiß, dass sie>>> Java-basiert sind, sind Schrott.>>>> Weil du von denen, die kein Schrott sind, vermutlich einfach nicht>> weißt, dass sie in Java geschrieben worden sind …>>>> Du besitzt nicht zufällig ein Android-Telefon oder -Tablet>> Nein, tatsächlich besitze ich kein Android-Gerät. Und ja, das Konzept> hinter Dalvik halte ich auf Mobile Devices nach wie vor für Kernschrott.> Kein Wunder, dass der Akku nur noch einen halben Tag hält. Ganz zu> schweigen von diesem ganzen Google-Mist in einem "normalen" Android.>> Also, leider nicht überzeugend, weitere Beispiele, wo ich das nicht> weiß?
z.B. Netbeans. Ist 100% Java.
Muss man nicht mögen aber es zeigt die Leistungsfähigkeit von Java.
Für embedded Anwendungen ist Java natürlich trotzdem nicht die erste
Wahl.
Aber du wolltest ja nur ein weiteres Beispiel einer "brauchbaren" in
Java geschriebenen Software...
Cyblord -. schrieb:> Man muss sich nur mal ansehen wie viel Aufsehen eine einfache> Entprellroutine hier im Forum macht. Da werden gewisse Personen> glottgleich angebetet, weil sie so was als Code veröffentlichen.
Wow, dann zeige ubns doch mal deine bessere schnellere und kleinere
Entprellroutine, du Programmiergott.
Oder bleibts nur bei der großen Klappe?
Im Studium C Grundlagen erlernt.
Als HiWi am Lehrstuhl Matlab und LabView zur Signalverarbeitung /
Automatisierung
Im ersten Job dann wieder C gebraucht. Harwareentwicklung; zusätzlich
Windows DLL geschrieben um die Hardware Funktionen für die GUI zu
abstrahieren.
Nebenbei Fortbildung zu C++ objektorientiert.
Inzwischen zweiter Job, auch Hardwareentwicklung. Da ist jetzt noch
Python dazugekommen, da es hier im Laborbetrieb viel verwendet wird um
Dinge zu testen.
VHDL dazugekommen
C# ganz minimalistisch
C und C++ brauche ich inzwischen wieder weniger.
Ich denke es um programmieren zu "können" muss man im Programmablauf
denken können. Welche Sprachen man dann anwenden kann ist nur Syntax. Da
ich C nicht mehr viel benutze müsste ich viel der Syntax nachschlagen.
Hauptsächlich gibt es meiner Meinung nach 3 sehr unterschiedliche
Herangehensweisen / Denkweisen um zu Programmieren.
Prozedual (C,Matlab...)
Objektorientiert (C++, C#, Java...)
Hardwarebeschreibung (VHDL, Verilog ..)
Kingkoenig schrieb:> Nun will ich Euch dennoch noch einmal fragen, welche Programmiersprache> Ihr mir raten würdet als nächstes zu lernen. C, C ++, Assembler oder> vielleicht sogar D ?
Fange an Programmieren zu lernen indem du mit einer Sprache deiner Wahl
eine kleine Aufgabe bewältigst! Es ist egal, mit welcher Sprache du
anfängst.
Wenn du erstmal eine Sprache etwas kannst, begreifst du Lösungen von
anderen ganz anders und sammelst so deine Erfahrungen und schwenkst je
nach Problemstellung möglicherweise auf eine andere Sprache um.
Irgendwann kommst du an den Punkt, dass du das mit dem Programmieren
halbwegs verstanden hast und dich relativ schnell in andere
Sprachkonzepte reindenken kannst.
Dann gilt:
Programmieren lernt man das ganze Leben und eine Programmiersprache in
14 Tagen.
(PS: Die 14 Tage gelten nicht immer, das kann auch länger oder kürzer
sein, aber in jedem Fall ist es ein überschaubarer Zeitraum.)
Also beim Telematik Studium werden Informatik und Elektrotechnik
intensiv gelehrt. Natürlich hat man danach nicht 5 Jahre C++ und Java
Erfahrung. Aber die Themen wie funktionale Programmierung,
objektorientiert Programmierung, theorethisch Informatik mit
Compilerbau, Algorithmen usw. Im Prinzip ist Ihre Frage unlogisch denn
genau um das selber Beibringen geht es im Studium ja. Dort werden Ihnen
die Themen präsentiert, aber lernen müssen sie schon selber.
Moin,
Jürgen S. schrieb:> ... Daher werden für> die Definition der Funktion, der GUI und der Maschinennähe immer> Elektroingenieure und z.B. Physiker bevorzugt.>> Physiker seien dabei die chaotischsten und mieserabelsten Programmierer,> hätten aber den Kopf, um komplexeste Abläufe noch zu überschauen.> Geeignet sind sie aber meist nur für Einzelkämpferprojekte.>
Kann ich unterschreiben :-)
Über all die Jahre ist bei den Berufskollegen Physikern oft die Tendenz
zum schnellen Hack wahrzunehmen. Aber was sie können, ist: messen.
Das Problem ist oft, dass man als Physiker schon fast zur Hochstapelei
oder Selbstüberschätzung a la Elon Musk gezwungen wird, ansonsten steht
man als Bremse da. Disclaimer: Ich komme selber aus der Ecke, und hatte
auch nur das "Glück", mir als Teenager mit Elektronik und Assembler erst
mal die Nase blutig zu rennen (frühe Erkenntnis realistischer
Anforderungen...), plus später an der Uni noch ein grandioses
(wirklich!) Elektronikpraktikum gefüttert zu kriegen.
> Ingenieure wiederum seien der beste Kompromiss, weil sie deutlich> sachlicher programmieren und dazu aber auch in der Lage seien,> verwertbare Ergebnisse zu bringen, d.h. die Programme sind nicht nur> akademisch gut, sondern man kann sie auch benutzen :-)>
Der Ingenieur hat aber auch einfach oft die Arschkarte, das Release
machen zu müssen oder für den ganzen Kram zu haften. Deswegen zwingt er
sich automatisch schon zur Strategie der nachhaltigen/robusten
Entwicklung.
> Heute ist das natürlich alles ganz anders ... :D
Ich weiss ja nicht...heute muss man sich mit volatilem Bullshit-Bingo
von Scrum bis daily meeting herumschlagen, und die HR-Fritzen scheinen
immer weniger auf die psychologische Komponente eines gut
funktionierenden Teams zu achten. Denn am besten hat man immer von allen
drei eine schlagkräftige Truppe. Die Motivation kann man momentan
suchen...
Mein Test bei der Einstellung von Kandidaten (bei uns gabs kein "HR")
war damals, jedem, egal was auf seinem CV steht, einen Schnipsel msp430
oder 68k-Assembler hinzulegen und einfach mal zu gucken, was er/sie da
so sagt (egal ob korrekt, oder nicht). Erstaunlicherweise flogen da
nahezu alle mit der "hochdotierten" Ausbildung durch, übrig blieben die
Eltechniker mit Programmier-Erfahrung. Und das nachhaltig (> 10 Jahre).
Ich habe manchmal die Befürchtung, dass da eine gewisse Arbeitsteilung a
la "du hast als Informatiker das Oszi deines Kollegen nicht anzufassen"
bereits an den FHs gelebt wird, mal von den zeitlichen Resourcen eines
heutigen Studi abgesehen.
An den TO:
Bitte nicht die Frage nach C versus C++ stellen, das artet hier jedesmal
in immer dieselben hirntoten Diskussionen aus. Fang einfach mal mit
einem Projekt an, oder mach bei einem Projekt mit. So lernst es.
Als Hinweis: Gesund ist die Neugier, immer mal seinen C oder C++-Code
mal per <arch>objdump et al als Assembler auszugeben, und sich zu
überlegen, was da genau so passiert. Muss man aber nur lesen können,
nicht beherrschen. Viel lernt man auch am CPU-Simulator.
Strubi schrieb:> Bitte nicht die Frage nach C versus C++ stellen, das artet hier jedesmal> in immer dieselben hirntoten Diskussionen aus.
Da gibts nichts zu diskutieren. C kann mit Kniffen alles was C++ kann.
Basta.
Ich kenn mich aus schrieb:> C kann mit Kniffen alles was C++ kann.
Selbst wenn: die Kniffe sind für richtiges OO so eklig, dass man sie
nicht aus 3 m Entfernung mit einem Stock anfasst.
Mark B. schrieb:> Wie wirft man denn in C Exceptions? ;-)
Eine der möglichen Exception-Implementierungen ist per setjmp /
longjmp() (sjlj exceptions).
Ist halt „nur“ eine Frage der Eleganz, ob ich das gut abstrahiert
hinschreiben kann oder den ganzen Parameter-Krempel davon mühselig
mit der Hand zurecht fusseln muss. Genauso wie Vererbung, siehe
X11 Athena Toolkit (oder Motif) oder Gtk: gehen tut's, Spaß macht es
nicht.
Jörg W. schrieb:> Mark B. schrieb:>> Wie wirft man denn in C Exceptions? ;-)>> Eine der möglichen Exception-Implementierungen ist per setjmp /> longjmp() (sjlj exceptions).
Benutzt das jemand in realen Anwendungen? Im Embedded-Bereich, also z.B.
in Steuergeräten für Fahrzeuge und Industrie, ist das direkte
Herumspringen im Code ohnehin verpönt oder sogar verboten.
Mark B. schrieb:> Benutzt das jemand in realen Anwendungen?
Nun, C++ natürlich, für die Exceptions. Vermutlich auch andere wie
Python, für diesen Zweck.
Ansonsten zähle ich im FreeBSD-Sourcetree 232 Aufrufe von setjmp().
> Im Embedded-Bereich, also z.B.> in Steuergeräten für Fahrzeuge und Industrie, ist das direkte> Herumspringen im Code ohnehin verpönt oder sogar verboten.
Kann mir gut vorstellen, dass es gerade dort als exception-Behandlung
genauso gut (begründet, natürlich) benutzt wird. Sofern die
Implementierung verifiziert ist, ist es ein gutes Mittel, um von einer
beliebig tiefen Stelle heraus beispielsweise die Hauptschleife wieder
anzuwerfen.
Aber zurück: es ging ja um die Frage, ob man in C sowas wie exceptions
implementieren kann. Ja, man kann.
Die Behauptung oben ist allerdings genauso müßig wie die, dass es
natürlich nichts in <Programmiersprache X> gibt, was man nicht auch
in Assembler programmieren könnte.
Strubi schrieb:> Bitte nicht die Frage nach C versus C++ stellen, das artet hier jedesmal> in immer dieselben hirntoten Diskussionen aus.
Ja, du hattest Recht. :o)
Jörg W. schrieb:> zähle ich im FreeBSD-Sourcetree
Danke. Endlich mal jemand der eine wirklich gute Software zum Vergleich
heranzieht. (zur Sicherheit: keine Ironie)
dadada schrieb:> Endlich mal jemand der eine wirklich gute Software zum Vergleich> heranzieht.
Linux-Sourcetree hilft ja nicht, da das nur der Kernel ist. Bei
FreeBSD sind zumindest Userland-Programme mit im Tree.
Manfred K. schrieb:> Drehstromantriebstechnik setzt sich zusammen aus> Leistungselektronik, Steuerung und Regelung. Für diese hardwarenahen> Anwendungen wird die Software in der Firma ausschließlich von> Elektroingenieuren
enKohr
Der Antrieb wird dabei bei der Projektierung von der Lastseite aus
betrachtet und muss dementsprechend geregelt/eingestellt sein. Hier
kommen auch weitere Sicherheitsrelevante Faktoren ins Spiel.
Ich denke der Elektroingenieur hat hier durchaus eine
Daseinsberechtigung.
Was mich interressiert:
In der Antriebstechnik sind auch viele Schnittstellen zur Steuerung,
Leittechnik und Warehouse Management Systemen vorhanden.
Sind z.B. Busprotokolle oder Prozessmanagement Lehrinhalt für
Informatiker?
Kennt jmd. Universitäten/Lehrangebote die sich auf diese Themen
spezialisiert haben?
SPS, SCL, Visualisierung, etc. ?
Danke.
1500 schrieb:> Kennt jmd. Universitäten/Lehrangebote die sich auf diese Themen> spezialisiert haben?> SPS, SCL, Visualisierung, etc. ?
Uni bedeutet Grundlagenwissen, nicht SPS SCL o.ä.
Wie leicht einige Leute von "beherrschen" sprechen. "Früher" war
beherrschen die Höchstform des Könnens.
p.s.: Nur mal so am Rande.... (Aber gehört wohl heutzutage zum guten Ton
um schon mal für den Lebenslauf das geprahle zu üben)
Muecke