Hallo LUG,
Frage 1: Folgender output:
[falk@Voyager C]$ cat read.c #include <stdio.h> #include <readline/readline.h>
int main(){
char *string;
string = readline("prompt $");
printf("%s\n",string);
exit(0); } [falk@Voyager C]$ gcc -lreadline read.c /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tgetnum' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tgoto' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tgetflag' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `BC' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tputs' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `PC' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tgetent' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `UP' /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tgetstr' collect2: ld returned 1 exit status
Was wollen mir diese Fehlermeldungen sagen? Muss ich noch weitere Bibliotheken beim compilieren mit angeben? Die Beispiele zu readline lassen sich erst recht nicht compilieren, können mir also auch nicht weiterhelfen. (readline.h ist in diesem Ordner zu finden!)
Frage 2: Wie bekomme ich bei Funktionen optionale Parameter (in C) hin?
Frage 3: Worin besteht der Unterschied zwischen den Standard-C-Funktionen (bzw. den Basistypen) gegenüber denen von glib? (Einer meiner Profs hat ein C-Programm geschrieben, in dem er diese Bibliothek genutzt hat, obwohl alles auch in "normal"-C verfügbar wäre.) Gibt es solche auch bei KDE (würde mich wundern, da KDE m.e. in C++ geschrieben ist)?
Frage 4: Gibt es eine gute Internet-Adresse, wo ich mich im Falle solcher Fragen informieren kann? (Die ANSI-C-Bestimmungen werden ja bestimmt nicht offen im Web verfügbar sein, zumindest hat mein gegoogle nichts gefunden.)
Tschau,
Falk (von C++ die Sch***ze voll)
Am Mittwoch, 1. Dezember 2004 18:23 schrieb Falk Döring:
[falk@Voyager C]$ gcc -lreadline read.c /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
(...)
Was wollen mir diese Fehlermeldungen sagen? Muss ich noch weitere Bibliotheken beim compilieren mit angeben? Die Beispiele zu readline lassen sich erst recht nicht compilieren, können mir also auch nicht weiterhelfen. (readline.h ist in diesem Ordner zu finden!)
Die libreadline benötigt libncurses. Generell gilt, daß Bibliotheken die ihrerseits genutzten Bibliotheken mit verlinkt haben müssen, da man als Nutzer die Details nicht kennen müssen will. Das ist bei Debian auch der Fall, also wohl ein Mandrakefehler.
Frage 2: Wie bekomme ich bei Funktionen optionale Parameter (in C) hin?
Den Prototyp als foo() deklarieren ohne void dazwischen - dann ist laut C-Standard alles erlaubt. Wenn du aber im Stil von printf() variable Argumente möchtest, dann geht das über Ellipsen.
void foo(const char *fmt, ...) { va_list ap; va_start(ap, fmt); mache_was_mit_fmt_und_ap(); va_end(ap); }
Frage 3: Worin besteht der Unterschied zwischen den Standard-C-Funktionen (bzw. den Basistypen) gegenüber denen von glib? (Einer meiner Profs hat ein C-Programm geschrieben, in dem er diese Bibliothek genutzt hat, obwohl alles auch in "normal"-C verfügbar wäre.) Gibt es solche auch bei KDE (würde mich wundern, da KDE m.e. in C++ geschrieben ist)?
GLib-Datentypen sind komisch ineinander gecastete structs, welche erst global mit g_type_init() initialisiert werden müssen, sonst gibt es einen bösen Absturz. Oftmals aber haben die structs nur einen Datentyp in sich, welcher dann wieder ein C-Standardtyp wie int oder char* ist (gint, gchar*). Bei KDE gibt es so einen Schotter bestimmt nicht. Entweder man nimmt in Kauf, daß C-Implementierungen über Systemgrenzen hinweg inkompatibel sind, und konzentriert sich auf Basistypen wie int oder char. Oder man programmiert in einer Sprache, die nicht 30+ Jahre mit diversen venderspezifischen Eigenheiten auf dem Buckel hat. Skriptsprachen sind sehr empfehlenswert.
Beispiel: Auf PowerPC ist 'char' unsigned, während er auf x86 'signed' ist. Das ist eine gcc-Konvention, andere Compiler können das anders handhaben. Es gibt einen gcc-Schalter um das abzuändern (-fsigned-char). Alternativ kann man auch immer explizit 'signed'/'unsigned' davorschreiben.
Beispiel 2: Mesa (OpenGL-Implementierung) nutzt GLfloat, GLint etc. Das sind aber nur Bezeichnungen, so wie es auch im Kernel ulong_t, uchar16 oder ähnliches gibt. Wer's braucht... :) Auf Anwendungsebene finde ich so etwas Quatsch.
Frage 4: Gibt es eine gute Internet-Adresse, wo ich mich im Falle solcher Fragen informieren kann? (Die ANSI-C-Bestimmungen werden ja bestimmt nicht offen im Web verfügbar sein, zumindest hat mein gegoogle nichts gefunden.)
http://www.python.org/ http://www.ruby-lang.org/ http://www.smalltalk.org/ http://www.haskell.org/ etc.
Josef
Josef Spillner schrieb am Mittwoch, 1. Dezember 2004 19:15:
Am Mittwoch, 1. Dezember 2004 18:23 schrieb Falk Döring:
[falk@Voyager C]$ gcc -lreadline read.c /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
(...)
Was wollen mir diese Fehlermeldungen sagen? Muss ich noch weitere Bibliotheken beim compilieren mit angeben? Die Beispiele zu readline lassen sich erst recht nicht compilieren, können mir also auch nicht weiterhelfen. (readline.h ist in diesem Ordner zu finden!)
Die libreadline benötigt libncurses. Generell gilt, daß Bibliotheken die ihrerseits genutzten Bibliotheken mit verlinkt haben müssen, da man als Nutzer die Details nicht kennen müssen will. Das ist bei Debian auch der Fall, also wohl ein Mandrakefehler.
Ist nicht (nur) ein Mandrake-Fehler. Auch Slackware gibt diesen Fehler aus.
Frage 2: Wie bekomme ich bei Funktionen optionale Parameter (in C) hin?
Den Prototyp als foo() deklarieren ohne void dazwischen - dann ist laut C-Standard alles erlaubt. Wenn du aber im Stil von printf() variable Argumente möchtest, dann geht das über Ellipsen.
void foo(const char *fmt, ...) { va_list ap; va_start(ap, fmt); mache_was_mit_fmt_und_ap(); va_end(ap); }
Ich werde es ausprobieren.
Danke,
Falk
Hallo Falk,
Falk Döring schrieb:
[falk@Voyager C]$ gcc -lreadline read.c /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tgetnum'
[...]
Was wollen mir diese Fehlermeldungen sagen? Muss ich noch weitere Bibliotheken beim compilieren mit angeben? Die Beispiele zu readline lassen sich erst
Nimm mal ncurses dazu (also gcc -lncurses -lreadline read.c).
recht nicht compilieren, können mir also auch nicht weiterhelfen. (readline.h ist in diesem Ordner zu finden!)
readline.h in diesem Ordner wird ignoriert. Header-Dateien im aktuellen Ordner bindest du nicht mit #include <datei>, sondern mit #include "datei" ein.
Frage 2: Wie bekomme ich bei Funktionen optionale Parameter (in C) hin?
Bei C nicht direkt (ginge z.B. in C++). Du kannst aber z.B. eine Liste variabler Länge übergeben: void fkt(int len, int liste[]);
Frage 3: Worin besteht der Unterschied zwischen den Standard-C-Funktionen (bzw. den Basistypen) gegenüber denen von glib? (Einer meiner Profs hat ein
Die Basistypen sind idealerweise identisch mit den glib-Typen. Da die glib-Programmierer jedoch die Compiler-Produzenten (außer gcc) nicht beeinflussen können erstellen sie sich ihre eigenen typedefs, die dann jeweils "stimmen".
auch in "normal"-C verfügbar wäre.) Gibt es solche auch bei KDE (würde mich wundern, da KDE m.e. in C++ geschrieben ist)?
Ob C oder C++ verwendet wird ist in der Hinsicht egal.
Frage 4: Gibt es eine gute Internet-Adresse, wo ich mich im Falle solcher Fragen informieren kann? (Die ANSI-C-Bestimmungen werden ja bestimmt nicht offen im Web verfügbar sein, zumindest hat mein gegoogle nichts gefunden.)
Die Ansi-Bestimmungen kannst du für $geld bestellen (Vermutung: len(str($geld))>3). Der Standart ist auch nicht zum Programmieren lernen geeignet. Für einzelne Befehle liefern einige Bibliotheken umfangreiche Doku mit (auch die glibc).
Kleines Mantra: zum Lernen sind strukturierte Bücher oft besser geeignet als wild im Netz verstreute Doku.
Falk (von C++ die Sch***ze voll)
Wenn du eine einfach schnell zu erlernende, schnell zu schreibende, zu lesende und doch mächtige Sprache suchst: nimm Python (aber nicht unbedingt, wenn es schnell ausgeführt werden muss).
mfg, Fabian
Fabian Hänsel schrieb am Mittwoch, 1. Dezember 2004 19:23:
Hallo Falk,
Falk Döring schrieb:
[falk@Voyager C]$ gcc -lreadline read.c /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so: undefined reference to `tgetnum'
[...]
Was wollen mir diese Fehlermeldungen sagen? Muss ich noch weitere Bibliotheken beim compilieren mit angeben? Die Beispiele zu readline lassen sich erst
Nimm mal ncurses dazu (also gcc -lncurses -lreadline read.c).
Klappt.
recht nicht compilieren, können mir also auch nicht weiterhelfen. (readline.h ist in diesem Ordner zu finden!)
readline.h in diesem Ordner wird ignoriert. Header-Dateien im aktuellen Ordner bindest du nicht mit #include <datei>, sondern mit #include "datei" ein.
Deutsche Sprache, schwere Sprache. <readline/readline.h> == /usr/include/readline/readline.h
Frage 2: Wie bekomme ich bei Funktionen optionale Parameter (in C) hin?
Bei C nicht direkt (ginge z.B. in C++). Du kannst aber z.B. eine Liste variabler Länge übergeben: void fkt(int len, int liste[]);
Frage 3: Worin besteht der Unterschied zwischen den Standard-C-Funktionen (bzw. den Basistypen) gegenüber denen von glib? (Einer meiner Profs hat ein
Die Basistypen sind idealerweise identisch mit den glib-Typen. Da die glib-Programmierer jedoch die Compiler-Produzenten (außer gcc) nicht beeinflussen können erstellen sie sich ihre eigenen typedefs, die dann jeweils "stimmen".
Kurz: Die glib.h-Programmierer hatten nichts zu tun.
Frage 4: Gibt es eine gute Internet-Adresse, wo ich mich im Falle solcher Fragen informieren kann? (Die ANSI-C-Bestimmungen werden ja bestimmt nicht offen im Web verfügbar sein, zumindest hat mein gegoogle nichts gefunden.)
Die Ansi-Bestimmungen kannst du für $geld bestellen (Vermutung: len(str($geld))>3). Der Standart ist auch nicht zum Programmieren lernen geeignet. Für einzelne Befehle liefern einige Bibliotheken umfangreiche Doku mit (auch die glibc).
Ich will ja nicht mit C anfangen, sondern meine bisherigen Kenntnisse erweitern. Ich habe auch schon einige gut kommentierte Quelltexte gefunden, von denen ich mir was abschauen kann (OpenSource sei dank).
Wenn du eine einfach schnell zu erlernende, schnell zu schreibende, zu lesende und doch mächtige Sprache suchst: nimm Python (aber nicht unbedingt, wenn es schnell ausgeführt werden muss).
Mir geht es nicht um eine "schnell zu erlernende, schnell zu schreibende, zu lesende und doch mächtige Sprache". Mir geht es nur mal wieder um einen Programmiererfolg mit einer Programmiersprache (Erfolge mit PHP sind ja langweilig, obwohl PHP-Scripte auf der Kommandozeile eine gute "Alternative" zu Bash-Scripten sind. Und PHP unterstützt Klassen.)
Falk
Die Basistypen sind idealerweise identisch mit den glib-Typen. Da die glib-Programmierer jedoch die Compiler-Produzenten (außer gcc) nicht beeinflussen können erstellen sie sich ihre eigenen typedefs, die dann jeweils "stimmen".
Kurz: Die glib.h-Programmierer hatten nichts zu tun.
Ich würd sagen: Die glib-Programmierer haben mir Arbeit beim Portieren abgenommen.
mfg, Fabian
Fabian Hänsel schrieb am Freitag, 3. Dezember 2004 16:07:
Die Basistypen sind idealerweise identisch mit den glib-Typen. Da die glib-Programmierer jedoch die Compiler-Produzenten (außer gcc) nicht beeinflussen können erstellen sie sich ihre eigenen typedefs, die dann jeweils "stimmen".
Kurz: Die glib.h-Programmierer hatten nichts zu tun.
Ich würd sagen: Die glib-Programmierer haben mir Arbeit beim Portieren abgenommen.
Inwiefern?
Falk
Falk Döring schrieb:
Fabian Hänsel schrieb am Freitag, 3. Dezember 2004 16:07:
Die Basistypen sind idealerweise identisch mit den glib-Typen. Da die glib-Programmierer jedoch die Compiler-Produzenten (außer gcc) nicht beeinflussen können erstellen sie sich ihre eigenen typedefs, die dann jeweils "stimmen".
Kurz: Die glib.h-Programmierer hatten nichts zu tun.
Ich würd sagen: Die glib-Programmierer haben mir Arbeit beim Portieren abgenommen.
Inwiefern?
Nunja, ich muss eben nicht selbst wissen, dass char auf x86 signed und auf ppc unsigned ist - ich nehm gchar und der ist dann auch auf ppc signed (Disclaimer: hab keine Mac zum probieren).
mfg, Fabian
Hallo Falk,
Am Mittwoch, 1. Dezember 2004 18:23, schrieb Falk Döring:
Frage 3: Worin besteht der Unterschied zwischen den Standard-C-Funktionen (bzw. den Basistypen) gegenüber denen von glib? (Einer meiner Profs hat ein C-Programm geschrieben, in dem er diese Bibliothek genutzt hat, obwohl alles auch in "normal"-C verfügbar wäre.)
"glib" oder "glibc"?
Gibt es solche auch bei KDE (würde mich wundern, da KDE m.e. in C++ geschrieben ist)?
Ja (in gewissem Ausmaß). Jeder hat halt andere Vorstellungen von und Bedürfnisse an Standardbibliotheken...
Falk (von C++ die Sch***ze voll)
? Du hast noch nicht wirklich mit C++ gearbeitet. Kleine Lernkurve (OO), aber dann fragst Du Dich, warum man ab einer gewissen Ebene (Anwendungen) überhaupt noch an C nur denken kann. Und noch weiter oben sollte man gleich eine "sichere" Sprache wie Python, Java oder Ruby nehmen. Obwohl manche auch gleich das Betriebssystem in Python schreiben [0]...
[0] http://unununium.org/introduction
Gruß Friedrich
Friedrich W. H. Kossebau schrieb am Mittwoch, 1. Dezember 2004 20:40:
Hallo Falk,
"glib" oder "glibc"?
glib
Falk (von C++ die Sch***ze voll)
? Du hast noch nicht wirklich mit C++ gearbeitet.
Was glaubst du, warum der obige Kommentar? Ich arbeite seit Semesterbeginn mit C++ und bin zu der Meinung gekommen: Die Idee ist gut, aber die Umsetzung kann entweder mein Prof nicht rüber bringen oder sie ist schlecht. Ich lasse mich gerne am Mittwoch eines besseren belehren (Beispielprogramme bringe ich mit).
Kleine Lernkurve (OO),
Damit habe ich kein Problem.
aber dann fragst Du Dich, warum man ab einer gewissen Ebene (Anwendungen) überhaupt noch an C nur denken kann.
Weil C funktioniert? Und der Anfang der hohen Programmiersprachen ist? Und einfach zu erlernen? Und für die Programmierung von Compilern genutzt wird? Und C alles kann?
Und noch weiter oben sollte man gleich eine "sichere" Sprache wie Python, Java oder Ruby nehmen.
Okay, zur Prüfung sage ich meinem C++-Prof: "Ich schreibe jetzt mal meine Klassen in Java. Java ist nähmlich sicher."
Obwohl manche auch gleich das Betriebssystem in Python schreiben [0]...
Wer es braucht.
Falk
On Thu, Dec 02, 2004 at 03:55:58PM +0100, Falk Döring wrote:
Friedrich W. H. Kossebau schrieb am Mittwoch, 1. Dezember 2004 20:40:
Hi Falk,
Falk (von C++ die Sch***ze voll)
? Du hast noch nicht wirklich mit C++ gearbeitet.
Was glaubst du, warum der obige Kommentar? Ich arbeite seit Semesterbeginn mit C++ und bin zu der Meinung gekommen: Die Idee ist gut, aber die Umsetzung kann entweder mein Prof nicht rüber bringen oder sie ist schlecht.
Sagen wir du hast C-Programme mittels des C++ Compilers übersetzet ;) C++ programmierst du erst wenn du überlegst wie du das Kommandozeilenargument parsen in einem Objekt kapseln kannst und welches Design-Pattern sich am Besten dazu eignet über eine Liste zu iterieren...
Weil C funktioniert? Und der Anfang der hohen Programmiersprachen ist? Und einfach zu erlernen?
Naja, spätestens bei Pointer auf Pointer hat bis jetzt jeder Anfänger die Orientierung verloren...
Und noch weiter oben sollte man gleich eine "sichere" Sprache wie Python, Java oder Ruby nehmen.
Okay, zur Prüfung sage ich meinem C++-Prof: "Ich schreibe jetzt mal meine Klassen in Java. Java ist nähmlich sicher."
*schmunzelnnichtverkneifenkönnen* Hast du schon mal einer nullpointer exception hinterhergejagt? Warum gibt es in einer ach so tollen hochsprache wie Java noch pointer, sorry, muss natürlich referenzen heißen... was sie in wirklichkeit nicht sinn, aber das wird jetzt doch etwas zu verwirrend?
Ciao, To 'sich wieder in die Python-Doc einlesend' bias
C++ wird meist für große Projekte eingesetzt. Vielleicht ist das der Grund warum viele große Projekte scheitern.
Quelle: http://www.thomas-guettler.de/vortraege/programmierung/allgemein.html
Schönen Tag,
Falk
Falk Doering schrieb:
C++ wird meist fuer grosse Projekte eingesetzt. Vielleicht ist das der Grund warum viele grosse Projekte scheitern.
Mit wachsender Groesse des Projekts sinkt in den meisten Firmen die Wahrscheinlichkeit, dass die richtigen Leute in den richtigen Positionen (motiviert und zielgerichtet) arbeiten.
Stefan
.
Am Freitag, 3. Dezember 2004 07:26, schrieb Falk Döring:
C++ wird meist für große Projekte eingesetzt. Vielleicht ist das der Grund warum viele große Projekte scheitern.
Quelle: http://www.thomas-guettler.de/vortraege/programmierung/allgemein.html
Nichts gegen Thomas, aber das würde ich unter reiner Vermutung bzw. pure Behauptung verbuchen. Große Projekte scheitern wegen schlechtem Projektmanagement und/oder überforderten Programmierern, aber nicht wegen der Implementierungssprache (so wird es gelehrt, und meine Erfahrungen nähern sich dem an). Daß zu gutem Management auch gehört, Programmierer anzusetzen, die von der verwendeten Sprache viel Ahnung haben, ist sicherlich selbstverständlich (Mauernbauen läßt man Maurer und nicht Gärtner bzw. umgekehrt). Welche Implementierungsprache verwendet wird, ergibt sich aus den Zielen des Projektes, vorher sich auf eine Sprache festzulegen, ist schon das erste Zeichen von schlechter Software-Entwicklung.
Wenn Du z.B. hardwarenah arbeitest, kommst Du wohl an C oder ähnlichem nicht vorbei, da man meist vor allem Kontrolle über die Performance haben möchte, nah am/im Betriebssystem, gar Registern und Speicher arbeitet, und viel direkt mit Datentypen herumjongliert. Um aber auch die Vorteile von objektorientieren Konzepten nutzen zu können, ist C++ dann schon eine feine Sache (mit nur geringer Performance-Strafe, 1-3% wohl etwa). Mit C++ _kann_ man meiner Meinung nach eine ziemliche Bandbreite abdecken. Vom direkten Einbinden von Assembler, falls notwendig, über generische Programmierung (mit Typprüfung!) bis hin zur "sichereren" Programmierung (per Smartpointern und Co.) kommt man ziemlich weit. Nachteil gegenüber Interpreter-Sprachen wäre noch der Zwang zu Neukompilieren, aber das sollten gute IDEs heutzutage durch Hintergrund- und iteratives Kompilieren beheben. Doof ist bei C++ u.a, daß die Standard-Bibliotheken ziemlich klein und dazu auch noch manchmal nicht garantiert kompatibel sind, der offizelle C++-Sprachstandard ein wenig lahm den neuesten Techniken hinterherhinkt, die Compiler dem wiederum erst recht und daß kompilierter Code plattformabhängig ist, all das ist des öfteren ein wenig hinderlich. Zu Sandboxing und so habe ich keine Ahnung. Wie geschrieben, ab einer bestimmten Ebene ist C++ auch nicht mehr unbedingt erforderlich, da braucht man die Vorteile von C++ nicht mehr und kann (sollte?) eine nette Skriptsprache nehmen. Es kommt halt auf das Ziel an.
Mach Dir mal die Mühe und setze Dich mit dem Konzept der Objektorientierung auseinander (falls das der Grund der Abschreckung gewesen sein sollte, was ich aber annehme) - es lohnt sich. Dauert nur halt ein wenig (1-2 Jahre). Aber dann ist z.B. C++ auch kein Schrecken mehr, sondern wahre Freude. Naja, vergleichsweise halt. Andere OO-Sprachen sind Dir dann auch offen. Alles eine Frage des Trainings :)
Gruß Friedrich
Friedrich,
hast du eine neue Sekte gegründet: Die C++-Jünger? Oder warum machst du so eine Werbung dafür? Klingt schon fast nach Religion.
Zusammenfassend: - Ich mag C++ nicht. - Es gibt auch andere Menschen, die C++ nicht mögen. - Das Konzept der OO ist mir geläufig (z.B. aus Java oder der PHP-Docu). Trotzdem mag ich C++ nicht. - Ein Programmierer muss nicht alle Programmiersprachen k[eö]nnen. - Scriptsprachen und Programmiersprachen sind zwei unterschiedliche Dinge. - Es ist _mir_ überlassen, mit welchen {Programmier|Script}sprachen ich mich in meiner _Freizeit_ beschäftige.
Damit fin der Diskussion mit dir,
Falk
PS: Tröste dich, Männer sind weniger Nachtragend als Frauen. Bis zum nächsten aufeinandertreffen.
Hallo Falk,
Am Samstag, 4. Dezember 2004 11:31, schrieb Falk Döring:
hast du eine neue Sekte gegründet: Die C++-Jünger? Oder warum machst du so eine Werbung dafür? Klingt schon fast nach Religion.
Nur weil man von was ein wenig begeistert ;) ist, muß man ja nicht fanatisch sein. Ist Werbung verboten? Ich zwinge Dich ja nicht. Würdest Du einem Bauern, der seinem Nachbarn empfiehlt, nicht mit Ochsen, sondern mit einem Traktor seinen Acker zu pflügen, als religiös verspotten (mutwilliges Beispiel)? Nein, sowas ist mehr als freundlicher Hinweis zu sehen. Okay, manche sehen sowas auch als ungefragte Belehrung, aber das ist dann deren Pech. ;)
Zusammenfassend:
- Ich mag C++ nicht.
Darfst Du. (Ich frage jetzt nicht nach Argumenten :P ) Ist ein freies Land hier :)
- Es gibt auch andere Menschen, die C++ nicht mögen.
Dürfen die auch.
- Das Konzept der OO ist mir geläufig (z.B. aus Java oder der PHP-Docu).
Trotzdem mag ich C++ nicht.
- Ein Programmierer muss nicht alle Programmiersprachen k[eö]nnen.
Ja. Die meisten ähneln sich genug, daß man mit Hilfe von Dokumentation schnell hineinkommt, solange das Konzept bekannt ist.
- Scriptsprachen und Programmiersprachen sind zwei unterschiedliche Dinge.
Hm?
- Es ist _mir_ überlassen, mit welchen {Programmier|Script}sprachen ich
mich in meiner _Freizeit_ beschäftige.
Sicher. Ich wollte Dich nur motivieren. Verzeih, daß ich mit Dir rede :P
Damit fin der Diskussion mit dir,
Na gut.
PS: Tröste dich, Männer sind weniger Nachtragend als Frauen. Bis zum nächsten aufeinandertreffen.
Huch, wieso nachtragend? Magst Du etwa keine ungebetenen Belehrungen? ;)
Gruß Friedrich
On Fri, Dec 03, 2004 at 07:26:17AM +0100, Falk Döring wrote: Hi Falk,
C++ wird meist für große Projekte eingesetzt. Vielleicht ist das der Grund warum viele große Projekte scheitern.
Das liegt eher an den (zum Teil) inkompetenten Programmierern die unter Zeitdruck und einem Marketingmanager etwas zusammenhacken sollen um ein (fertiges) Produkt präsentieren zu können.
Ciao, Tobias
Tobias Koenig schrieb am Freitag, 3. Dezember 2004 11:25:
On Fri, Dec 03, 2004 at 07:26:17AM +0100, Falk Döring wrote: Hi Falk,
C++ wird meist für große Projekte eingesetzt. Vielleicht ist das der Grund warum viele große Projekte scheitern.
Das liegt eher an den (zum Teil) inkompetenten Programmierern die unter Zeitdruck und einem Marketingmanager etwas zusammenhacken sollen um ein (fertiges) Produkt präsentieren zu können.
Ein Marketingmanager ist dafür verantwortlich, dass das Produkt abgesetzt wird, neue Märkte erschlossen werden, die richtige Zeilgruppe angesprochen wird, sein Budget nicht ausgeht etc. pp. Wann das Produkt (speziell: das Programm) fertig wird, interessiert ihn nur sekundär. Den Menschen, den du meinst, ist der ganz oben, der über den Gewinn entscheidet. Meist der Firmeninhaber oder Firmenleiter.
Falk
On Sat, Dec 04, 2004 at 11:32:59AM +0100, Falk Döring wrote:
Tobias Koenig schrieb am Freitag, 3. Dezember 2004 11:25:
Hi Falk,
Ein Marketingmanager ist dafür verantwortlich, dass das Produkt abgesetzt wird, neue Märkte erschlossen werden, die richtige Zeilgruppe angesprochen wird, sein Budget nicht ausgeht etc. pp. Wann das Produkt (speziell: das Programm) fertig wird, interessiert ihn nur sekundär.
Dir ist schon bewusst das meist die Marketingmanager den Release-Termin für ein Produkt festsetzen?
Den Menschen, den du meinst, ist der ganz oben, der über den Gewinn entscheidet. Meist der Firmeninhaber oder Firmenleiter.
Nein, ich meine den Entwicklungschef, der auf Grund mangelnder Verfügbarkeit von gut ausgebildeten Kräften, meist durch einen BWLer ersetzt wird, der Marketing im Nebenfach hatte ;)
Ciao, Tobias
Tobias Koenig schrieb am Samstag, 4. Dezember 2004 19:27:
On Sat, Dec 04, 2004 at 11:32:59AM +0100, Falk Döring wrote:
Tobias Koenig schrieb am Freitag, 3. Dezember 2004 11:25:
Hi Falk,
Ein Marketingmanager ist dafür verantwortlich, dass das Produkt abgesetzt wird, neue Märkte erschlossen werden, die richtige Zeilgruppe angesprochen wird, sein Budget nicht ausgeht etc. pp. Wann das Produkt (speziell: das Programm) fertig wird, interessiert ihn nur sekundär.
Dir ist schon bewusst das meist die Marketingmanager den Release-Termin für ein Produkt festsetzen?
Das glaube ich nicht. Dennen ist es egal, wann etwas auf den Markt kommt. Hauptsache das Geld kommt rein. (Ausnahme: Neuentwicklung, die es noch nicht gibt, aber heutzutage unmöglich, da alles schon einmal da war.)
Den Menschen, den du meinst, ist der ganz oben, der über den Gewinn entscheidet. Meist der Firmeninhaber oder Firmenleiter.
Nein, ich meine den Entwicklungschef, der auf Grund mangelnder Verfügbarkeit von gut ausgebildeten Kräften, meist durch einen BWLer ersetzt wird, der Marketing im Nebenfach hatte ;)
Wirtschaftsinformatiker haben Markting auch nur als Nebenfach. ;-)
Bye,
Falk
On Sunday 05 December 2004 11:34, Falk Döring wrote:
Tobias Koenig schrieb am Samstag, 4. Dezember 2004 19:27:
On Sat, Dec 04, 2004 at 11:32:59AM +0100, Falk Döring wrote:
Tobias Koenig schrieb am Freitag, 3. Dezember 2004 11:25: Ein Marketingmanager ist dafür verantwortlich, dass das Produkt abgesetzt wird, neue Märkte erschlossen werden, die richtige Zeilgruppe angesprochen wird, sein Budget nicht ausgeht etc. pp. Wann das Produkt (speziell: das Programm) fertig wird, interessiert ihn nur sekundär.
Dir ist schon bewusst das meist die Marketingmanager den Release-Termin für ein Produkt festsetzen?
Das glaube ich nicht. Dennen ist es egal, wann etwas auf den Markt kommt. Hauptsache das Geld kommt rein. (Ausnahme: Neuentwicklung, die es noch nicht gibt, aber heutzutage unmöglich, da alles schon einmal da war.)
Falk, Du hast ja soooo eine naive Vorstellung von der Realität innerhalb von Unternehmen! Das Marketing gibt in den meisten Firmen sowohl die Produktstrategie, als auch den Zeitplan vor, da sie die Werbung nach außen machen und dann Druck auf alle anderen Abteilungen machen, damit "es endlich fertig wird".
Den Menschen, den du meinst, ist der ganz oben, der über den Gewinn entscheidet. Meist der Firmeninhaber oder Firmenleiter.
Falsch. Der entscheidet nur, welche Abteilung ihr Budget gekürzt und die Vorgaben verdoppelt bekommt. Der ist nur Bilanzjongleur, er hat weder von Marketing, noch von Entwicklung oder Produktion irgendwelche Ahnung.
Nein, ich meine den Entwicklungschef, der auf Grund mangelnder Verfügbarkeit von gut ausgebildeten Kräften, meist durch einen BWLer ersetzt wird, der Marketing im Nebenfach hatte ;)
...und der dann eine Abteilung von Quereinsteigern mit ein paar wenigen Experten leitet, die vollkommen falsch sortiert ist und deswegen ineffektiv arbeitet.
Falls Du Logik suchst, dann suche sie nicht in der Wirtschaft. Versuch Dich mal lieber in die Logikvorlesung an der TU zu setzen, aber erwarte nicht, dass es da logische Zusammenhänge gibt, das heißt nur so... (Tobias, darf mir jetzt gerne wieder widersprechen.)
Wirtschaftsinformatiker haben Markting auch nur als Nebenfach. ;-)
Weswegen ich WIs, die sich nicht mindestens dreimal für das "W" im Zeugnis entschuldigen auch irgendwie nicht ernst nehmen kann. Der Rest gehört zur Klasse der "gefährlichen Experten" - sie verstehen etwas vom Fach, durchschauen aber auch das Geschwafel des Management.
Ja, ich weiß, dass ich auch einen WI-Abschluß habe. Sorry, sorry, sorry... ;-)
Falk, falls Du einen Eindruck von Realität haben willst: lies' Dilbert. Ich habe bisher keinen einzigen Dilbert-Comic gefunden, der nicht in irgendeiner Weise in irgendeiner Firma von der Realität übertroffen worden wäre.
Konrad
Falk, falls Du einen Eindruck von Realität haben willst: lies' Dilbert. Ich habe bisher keinen einzigen Dilbert-Comic gefunden, der nicht in irgendeiner Weise in irgendeiner Firma von der Realität übertroffen worden wäre.
Aus dem Comic-Alter bin ich raus. Außerdem: Du Programmierer? Richtig? Du wirst von Marketingmenschen befehligt? Solltest den Job wechseln.
Falk
Falk Doering schrieb:
Aus dem Comic-Alter bin ich raus. Außerdem: Du Programmierer? Richtig? Du wirst von Marketingmenschen befehligt? Solltest den Job wechseln.
Dilbert ist kein Comic fuer junge Leute, sondern ein kleiner Trost fuer die Erwerbstaetigen. Momentan bist Du Student. Aber Du wirst ihn irgendwann wieder brauchen :-)
SCNR, Stefan
.
Falk Döring said:
Falk, falls Du einen Eindruck von Realität haben willst: lies' Dilbert. Ich habe bisher keinen einzigen Dilbert-Comic gefunden, der nicht in irgendeiner Weise in irgendeiner Firma von der Realität übertroffen worden wäre.
Aus dem Comic-Alter bin ich raus.
Ohhh Schmerzen!!! In ein paar Jahren wirst Du Dilbert zu schaetzen wissen. ;-)
Außerdem: Du Programmierer? Richtig?
Soweit richtig.
Du wirst von Marketingmenschen befehligt?
Nein, die ganze Firma wird i.d.R. von denen kontrolliert.
Nur die ganz grossen Firmen koennen es sich leisten von ihren Lieferanten zu verlangen, dass jemand kompetentes in den Verhandlungen drin ist - und dann geben die Kompetenten auch noch nicht den Zeitplan vor.
Solltest den Job wechseln.
Und Du bist so naiv zu glauben, dass es woanders anders sein koennte?
Ach waren das schoene Zeiten, als man als Student noch eine Weltsicht hatte, die sich nicht nach Murphys Gesetz ausgerichtet hat! *seufz*
Konrad
On Sat, 2004-12-04 at 11:32 +0100, Falk Döring wrote:
Ein Marketingmanager ist dafür verantwortlich, dass das Produkt abgesetzt wird, neue Märkte erschlossen werden, die richtige Zeilgruppe angesprochen wird, sein Budget nicht ausgeht etc. pp. Wann das Produkt (speziell: das Programm) fertig wird, interessiert ihn nur sekundär. Den Menschen, den du meinst, ist der ganz oben, der über den Gewinn entscheidet. Meist der Firmeninhaber oder Firmenleiter.
Es gibt Marketingmanager die gerne Dinge verkaufen oder versprechen, die die Techniker dann ausbaden müssen, da sie vorher nicht über Machbarkeit oder Aufwand befragt wurden. Nette Sache sowas. Wenn ein Vertriebler die Floskel "Kein Problem" benutzt, bekomme ich automatisch Gänsehaut.
Eric
lug-dd@mailman.schlittermann.de