Offener Brief an Pythonneulinge

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Hyperion hat geschrieben:
funkheld hat geschrieben: Die Lektüre ist viel in eine studentenverständliche Sprache geschrieben und wir Ältere verstehen viel den Sinn von dieser Lektüre teilweise nicht.
Wie schreibt man denn für "ältere"? :twisted:
Natürlich in großer Schrift, damit sie es auch lesen können.

SCNR
Das Leben ist wie ein Tennisball.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

lol ... you made my day :mrgreen:
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
funkheld
User
Beiträge: 258
Registriert: Sonntag 31. Oktober 2010, 09:26

Man sollte diesen "offenen Brief" verbrennen und nicht gleich den Autor erschiessen.
Aber eines von beiden muss weg. :D

Gruss :K
Gremlin
User
Beiträge: 166
Registriert: Freitag 28. Mai 2010, 23:49

funkheld hat geschrieben:Man sollte diesen "offenen Brief" verbrennen und nicht gleich den Autor erschiessen.
Es wäre jetzt wohl unangebracht zu fragen "wie" alt du bist?
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

@funkheld:
Ich schliesse mich der Frage Gremlins an, Deine Antworten sind z.T. so kindisch, dass Du wohl einen Zahlendreher in Deinem Alter drin hast. Viel Spass beim "Austoben" mit Assembler, segfaults und memory leaks.
Benutzeravatar
snafu
User
Beiträge: 6731
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Hyperion hat geschrieben:Das passiert eben peux a peux
"Peux" ist eine Form des Verbs "können" ("pouvoir"). Du meinst ganz sicher "peu" (etwa: "ein bißchen", hier: "stückchenweise / "Schritt für Schritt"). ;)
BlackJack hat geschrieben:Denn sie müssen ihre Problemlösung letztendlich sehr formal und sehr präzise in einer Programmiersprache für den Rechner formulieren. Sonst versteht der nämlich nicht was er machen soll oder er macht etwas falsches. Im Gegensatz zu Menschen kann er auch nicht über die mögliche Bedeutung nachdenken, deshalb ist die Präzision so wichtig.
Na, toll. Und sowas nennt sich Interpreter. :evil:
Benutzeravatar
mkesper
User
Beiträge: 919
Registriert: Montag 20. November 2006, 15:48
Wohnort: formerly known as mkallas
Kontaktdaten:

Ich wäre dafür, den offenen Brief direkt im Post "Vor dem Posten lesen" zu integrieren.
Benutzeravatar
snafu
User
Beiträge: 6731
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

mkesper hat geschrieben:Ich wäre dafür, den offenen Brief direkt im Post "Vor dem Posten lesen" zu integrieren.
Ich bin für einen Zusatz: "(bitte wirklich lesen)". ;)

Zudem fände ich es toll, wenn das Thema "EXE aus Python-Projekt bauen" dort Erwähnung fände.
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Dann bin ich für eine Frage. So etwas wie "Was ist das Losungswort welches im Artikel versteckt ist."

Sicherlich gibt es dann welche die zu faul sind den Artikel zu lesen und googlen das lieber :?
Lydia
User
Beiträge: 3
Registriert: Montag 14. März 2011, 18:23

Hallo,
vielen lieben Dank für diese Worte :mrgreen:
Benutzeravatar
christian1972
User
Beiträge: 4
Registriert: Samstag 23. Juli 2011, 11:17
Wohnort: 46397 Bocholt, NRW

Hi,

ich bin neu hier und hab beide Beiträge gelesen...
diesen hier und den anderen (Studenten, Schüler. Hausaufgaben etc.)

Beide Beiträge haben vielleicht das Gleiche im Sinn, aber die Menschen sind halt nicht alle gleich... also ich finde beide Beiträge haben ihre Berechtigung.

( Obwohl mir die Ente hier besser gefällt :mrgreen: )

Gruß Christian
Benutzeravatar
hemmerling
User
Beiträge: 18
Registriert: Sonntag 26. Juni 2011, 00:23
Wohnort: Hannover, Germany
Kontaktdaten:

Pekh hat geschrieben:Außerdem möchte ich noch hinzufügen, daß man meistens schon mit einem Fuß auf der Lösung steht, wenn man versucht, ein Problem strukturiert zu beschreiben.
Strukturierte Beschreibung, also imperativ doch zumeist, als Weg zur Lösung ist der Tod der Objektorientierung :-).

Ja ne... klar in Python "muss" man genausowenig wie in Java, C#, C++ objektorientiert programmieren, und schon gar nicht deklarativ :-).

Siehe auch

Imperative Programmierung
http://de.wikipedia.org/wiki/Imperative_Programmierung

vs.

Deklarative Programmierung
http://de.wikipedia.org/wiki/Deklarative_Programmierung

Viele Grüße
Rolf
BlackJack

@hemmerling: Ich sehe nicht das eine strukturierte Beschreibung imperative Programmierung impliziert. Man muss halt irgendwie Struktur in das Problem bringen. Das muss man auch wenn man es funktional, objektorientiert, oder deklarativ umsetzen will.

Und in Python muss man genau wie in Java, C#, und C++ imperativ programmieren. Es sei denn man hat tatsächlich vor den Grossteil der Syntaxkonstrukte nicht zu verwenden. Dann programmiert man aber vielleicht nicht mehr wirklich in Python. Innerhalb von Funktionen und Methoden ist dieser Stil nun einmal vorgesehen. Objektorientierung ist auch nicht das Allheilmittel. Ich mag an Python gerade, dass man funktionale, imperative, und objektorientierte Anteile sinnvoll mischen kann und nicht gezwungen ist nur einem Paradigma zu folgen. Was in anderen Sprachen unschön wird wenn man mal etwas anderes als das Vorgesehene verwenden will und anfangen muss ”gegen” die Sprache zu programmieren.
Benutzeravatar
hemmerling
User
Beiträge: 18
Registriert: Sonntag 26. Juni 2011, 00:23
Wohnort: Hannover, Germany
Kontaktdaten:

Die strukturierte / imperative Programmierung entspricht dem gesunden Menschenverstand :-),

die deklarative Programmierung entspricht dem "Firma/Person X hat keine Ahnung und engagiert einen Spezialisten, der das Problem auf geheimnisvolle und nicht nachvollziehbare Weise löst" :-). Sprich wenn man den Code ansieht, weiss man immer noch nicht "wie es gemacht wird", es steht ja da bloss WAS gemacht werden soll :-(.

Drum kommt beim systematischen Aufschreiben halt was imperatives raus, zumeist, WENN man sich Mühe gibt das Problem zu verstehen und zu lösen.

Viele Grüße
Rolf
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

hemmerling hat geschrieben:Die strukturierte / imperative Programmierung entspricht dem gesunden Menschenverstand :-),
Nein, das entspricht lediglich *deinen* gewohnten Lösungsansätzen und Denkvorgängen. Wenn du nicht im funktionalen oder deklarativen Kontext denken kannst, dann hast du es wahrscheinlich nie mal irgendwo richtig eingesetzt. Für mich fühlen sich alle drei Ansätze recht natürlich an.
hemmerling hat geschrieben:die deklarative Programmierung entspricht dem "Firma/Person X hat keine Ahnung und engagiert einen Spezialisten, der das Problem auf geheimnisvolle und nicht nachvollziehbare Weise löst" :-)
Wenn du nicht verstehst was unter der Haube passiert, dann ist so eine Lösung für *dich* natürlich magisch.
Das Leben ist wie ein Tennisball.
BlackJack

Ergänzend zu EyDu's erstem Absatz: Welcher der Ansätz ”am natürlichsten” ist, hängt neben der Person auch vom Problem ab. Gerade darum mag ich Multiparadigmen-Sprachen. Man kann für jedes Problem den Ansatz wählen der einem natürlicher erscheint und damit leichter von der Hand geht.

Zum gesunden Menschenverstand: Ich hatte beim ersten Kontakt mit rein funktionaler Programmierung meine Probleme weil ich mit imperativen Sprachen (BASIC, Assembler, Pascal, C, …) gross geworden bin. Fasziniert habe ich die Mitstudenten gesehen die vorher *keine* Programmiererfahrung hatten und wie relativ leicht ihnen Haskell gefallen ist. Um dann im nächsten Semester bei Java zuzusehen wie *die* sehr ähnliche Anfangsschwierigkeiten mit imperativ/OOP hatten wie ich beim Um-/Einstieg auf rein funktional. Ich denke keines der Paradigmen ist per se natürlicher als das andere. Irgendwie unnatürlich sind sie alle, weil Menschen im Allgemeinen nicht alles formal durchstrukturiert durchdenken, man muss das also für jedes Paradigma erst lernen und üben.

Deklarativ ist zwar auf der einen Seite ein wenig exotisch, weil die meisten verbreiteten Programmiersprachen dafür keine Unterstützung in der Sprache selbst bieten, auf der anderen Seite aber auch verbreitet, weil relationale Datenbanken und damit das deklarative SQL häufig eingesetzt werden. Und für viele Sprachen gibt es Unterstützung in Form von Bibliotheken für verschiedene Arten der deklarativen Programmierung. Mehr als zu sehen *was* gemacht werden soll braucht man doch auch gar nicht um die Lösung hinreichend zu verstehen. Der Sinn ist ja gerade das *wie* zu abstrahieren, damit man sich auf das wesentliche konzentrieren kann.
Dami123
User
Beiträge: 225
Registriert: Samstag 23. Februar 2013, 13:01

Python ist meine erste Programmiersprache und ich versuche möglichst funktional zu programmieren.
Nutze dafür imperative und deklarative Programmierparadigmen und so wie es halt funktioniert.
BlackJack

@Dami123: Ich habe das Gefühl Du kennst die Bedeutung der Begriffe nicht. Der Beitrag macht keinen Sinn. Wenn man möglichst funktional Programmiert, dann ja gerade nicht imperativ. Und deklarativ in Python? Die Sprache selbst unterstützt das nicht direkt. Es gibt einige wenige Bibliotheken die deklarative Ansätze anbieten — wo das halt Sinn macht. In der Regel steckt einiges an Metaprogrammierung in diesen Bibliotheken um die nötige „Magie” zu implementieren.
Benutzeravatar
snafu
User
Beiträge: 6731
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Meine Programme haben Funktionen, funktionieren und bieten viel Funktionalität. Wenn das keine funktionale Programmierung ist, dann weiß ich auch nicht... ;)
BlackJack

Nur weil wahrscheinlich nicht jeder die Ironie mitbekommt: Funktionale Programmierung :-)
Antworten