// der php hacker

// archiv

10 Tipps um ein Projekt zielsicher vor die Wand zu fahren

Geschrieben am 30. Apr 2009 von Cem Derin

Es ist wieder einmal der Monatsletzte und ich möchte euch ein paar Tipps an die Hand geben, um eure Projekte – egal ob im Team oder als Einzelkämpfer; egal ob als Angestellter oder Freiberufler – in den Sand zu setzen. Denn es ist doch leider so, dass der Mensch erst durch Fehler lernt. Außerdem: Gute Ratschläge wie man es machen sollte finden sich an jeder Ecke. Wie man es nich macht, das findet man leider erst hinterher heraus. Meistens. Ich greife vor. Viel Spaß!

1. Spare Zeit: kommentiere deinen Code gar nicht oder nur wenig

Zeit ist wertvoll, und mitten in einem Projekt auch immer knapp. Eine Möglichkeit Zeit zu sparen ist, einfach auf das Kommentieren zu verzichten. Kommentare sind toter Quelltext, der nicht ausgeführt wird, für den laufenden Betrieb unnötig und kosten mehr Zeit als sie nutzen bringen.

2. Springe nicht auf jeden Zug auf: Verwende keine Entwurfsmuster

Seit einiger Zeit macht sich die Unsitte breit, Entwurfsmuster anzuwenden. Entwurfsmuster sind Programmier-Richtlinen, die vollständig gegen den Stil von PHP gehen. Was viele gar nicht wissen: Entwurfsmuster kann man in PHP erst seit der 5. Version effektiv einsetzen. Das will schon was heißen. Warum also jeden neumodischen Quatsch mitmachen?

3. Aus einem Guss: Mache alles selbst

Mache so viel wie möglich an einem Projekt selbst: Konzept, Grafik, Layout, Programmierung, Texte. Nur so wirkt das Ergebnis wie aus einem Guss. Wenn du etwas nicht kannst, wirst du dir schnell selbst mit kostenlosen Tutorials das nötige Know-How aneignen können.

4. Schuster, bleib bei deinen Leisten: Fachliteratur nur auf Deutsch

Verschwende nicht unnötig Zeit und Nerven mit ausländischsprachiger Fachliteratur. Versuche dir solche Bücher immer auf Deutsch zu besorgen. Data Becker bietet zum Beispiel ein umfangreiches Angebot an Lektüre zu den verschiedensten Themen: Knallhart recherchiert, von erfahrenen Autoren geschrieben und immer auf dem aktuellsten Stand!

5. Dein Stil ist der einzige Standard

Programmiernazis und Webfaschisten versuchen einem einzureden, dass es Standards gibt, an die man sich halten soll. Gerne wird hier HTML oder CSS genommen. Man hört “das macht man nicht so” und “das kann der und der Browser nicht”. Wenn es solche Standards gibt, warum kann dieser Firefox kein ActiveX? Oder warum funktionieren die Internetexplorer-Plugins nicht in diesem Opera? Glaub diesen Leuten nicht, es gibt keine Standards und somit auch keinen Grund auf VBScript oder ActiveX zu verzichten.

6. Crossbrowser, Multiplattform und Accessibility: Schlagwörter von Webträumern

Vereinsamte und Weltfremde Internetsüchtige versuchen einem immer wieder weiß zu machen, dass man Internetseiten auf verschiedenen Browsern testen und darauf achten sollte, dass auch Leute, die nicht sehen oder höhren können, imstande sind, eure Seiten zu bedienen. Das ist natürlich quatsch. Die meisten Leute benutzen den Internet Explorer. Und Blinde, Taube und Stumme haben doch gar keinen Grund das Internet zu benutzen …

7. Nicht unnötig aufhalten: Konzepte sind überbewertet

Wer kennt das nicht: Ständig wollen alle rumkonzipieren. Stundenlang wird darüber diskutiert, wie man etwas umsetzt, was genau die Anforderungen sind und so weiter. Dabei wäre es doch viel einfacher, sofort anzufangen – einfach drauflos programmieren. Das werden die besten Projekte!

8. Refactoring und Unit Tests: So kann man auch den Tag vertrödeln

Die Weltfremden Studentenhippies schwören auf Unit Tests. Das muss man sich mal vorstellen! Die schreiben erst den Test, und dann das Programm? Wie soll das denn gehen? Und was die dann für Sachen gestestet werden: Gibt “isUserValid” tatsächlich true oder fals zurück? Was soll es denn anderes zurückgeben? Genau so Refactoring: Tagelang wird sich daran aufgehalten, Code zu “optimieren” … wie man richtig optimiert im nächsten Tipp

9. Linux, Unix und Konsorten: Betriebssysteme von gestern

Man hört im Netz häufig, dass Webserver mit Linux oder auf Unix-System laufen würden Das ist quatsch. Diese Systeme sind von Vorgestern und stammen aus einer Zeit, die vor dem Geburtsdatum vieler Entwickler liegt. Wie kann eine solche alte Software modernen Ansprüchen genügen? Linux kann darüberhinaus von jedem verändert werden – die meisten die das tun, sind Studenten oder Freaks. Würdet ihr ein Auto fahren, dass aus Einzelteilen von mehreren hundert Leuten besteht?

10. Wende diese Tipps an

Mit diesen Tipps bist du nun ein vollständiger Webworker. Nutze sie, verlange Honorare im vierstelligen Bereich pro viertel Stunde. Bekommst du so keine Aufträge, dumpe die Preise. Du kannst alles und wirst ausnahmslos jedes Projekt zum Abschluss bringen!

Wer glaubt hier Satire zu erkennen, weiß was Linux ist. Und wer weiß was Linux ist, der ist Weltfremd! ;-)

Geschrieben in Allgemein 8 Kommentare
#001
30. Apr 2009

[...] habe eben bei Unset den herrlichen Beitrag gelesen, wie man ein Projekt perfekt gegen die Wand fährt. Ich finde es herrlich wie er mit beißendem Sarkasmus genau die Probleme beim Namen nennt, die [...]


#002
01. Mai 2009

ROFLMAO.

nice one danke. Da bin ich gerne Weltfremd :-)


#003
01. Mai 2009

Ich hab den Text sehr genossen!
Ich gebe dir in einigen Hinsichten recht aber würde gern mal gesagt haben was meiner Meinung nach nicht ok ist!

1. Was das Code kommentieren betrifft, sicher programmiert es sich schneller ohne Kommentare und ich bin auch kein freund davon, aber wenn man gewisse Zeilen einfach nicht jeden Tag liest dann weiß man einfach nicht mehr warum man etwas gemacht hat.
Ich bin der Verfechter von, “Kommentiere nur so viel wie nötig, nicht so viel wie möglich”.
Wenn man Objektorientiert programmiert und gut Namen für Methoden und Variablen wählt entfällt das kommentieren vielleicht sogar.

2. Programmierrichtlinien sind oft bewährte Code-Zeilen die Ihren Zweck erfüllen.
Ist klar, wenn man selbst meint alles noch einmal neu erfinden zu müssen dann muss man auf solche “Standarts” verzichten, bzw. kann sie nur als eben “Richtline” verwenden um sich dann ein eigenes System zu basteln.
Meiner Meinung nach sollte man wenn es ans Objektorientierte Programmieren geht viel fertiges verwenden. Immerhin kostet sich etwas eigenes zu überlegen meistens mehr Zeit als etwas vorhandenes zu verwenden.

3. Was Crossbrowser betrifft, man sollte zumindest alle gängigen Browser unterstützen, was CSS betrifft gibt es viele Cross Browser lösungen und was JavaScript betrifft sollte man einfach ein Framework nutzen. HTML sollte natürlich im W3C Standart bleiben.

4. Und einfach drauf los programmieren? Wie soll denn das gehen? Man sollte sich doch wenigstens mal auf einem Blatt Papier veranschaulichen was man überhaupt möchte.

5. Unix? Das ist Standart auf Webservern, außer man hat einen ASP, also Windows Server. Du hast selber sicher auch auf deinem Server eine UNIX Distribution! Diese ist so wichtig bzw. wird benutzt weil das Rechtesystem bis in den Kernel durchgezogen ist! Hier wird viel auf Benutzerrechte wert gelegt was unter Windows lange nicht so der Fall war. Auf welchen Betriebssytemen laufen deiner Meinung nach Webserver sonst wenn nicht auf UNIX Distributionen wie z.B. Ubuntu?

6. Code optimierung ist meiner Meinung nach schon sehr wichtig, man sollte sich aber erst wenn einem Kunden die Applikation vom Design her oder so gefällt konkret damit befassen. Jedoch ist Optimierung unumgänglich, vor allem werden beim zweiten Durchlesen erst viele Fehler klar.

Erst wenn man in einem Team gearbeitet hat und wirklich gute Applikationen entwickelt hat welche auch noch nach mehreren Monaten lesbar sein sollen kann man dies konkret beurteilen. Ich möchte dir nicht deine Meinung streitig machen aber ich will meine Meinung zu diesem Thema ebenfalls äußern!

Mit freundlichen Grüßen,

Christian


#004
02. Mai 2009
unset

Bitte lies meinen Text noch einmal. Vielleicht verstehst du ja, wie ich es gemeint habe …


#005
02. Mai 2009
knalli

Ich tippe spontan einfach mal auf eine gute trollige Ironie-Antwort. :)


#006
03. Mai 2009

Sehr schön –

@C. Beikov: WTF?!!!11!!

Was noch fehlt:

11. Zeige dem Kunden erst das Endprodukt

Entwickle alles alleine und lass den Kunden erst am Ende drüberschauen. Dann ist die Überraschung (für beide Seiten) am grössten – und alle Änderungswünsche kommen auf einmal.

12. Schalte in PHP das Error-logging aus

“Warning” und “Strict” sind nur für Mädchen, echte Programmierer ignorieren solche sogenannten Fehler wie ein Mann.

13. Einrückungen sind überflüssig

Jedes Leerzeichen kostet Zeit und Performance – TABs kosten das doppelte. Wer hier spart, kann nur gewinnen.

;)


#007
04. Mai 2009

Ein herrlicher Text! Die Kollegen in der Agentur gucken zwar leicht verwundert ob des lauten anhaltenden lachens, aber das halten sie schon aus :)

Vielen Dank! Und weiter so.


#008
08. Mai 2009
Christian Beikov

Ich wollte lediglich meine Meinung zu den Punkten schreiben, ich finde es ist durchaus wichtig gewisse Punkte einzuhalten.

Aber danke für den Sarkasmus!

// kommentieren

// senden
theme von mir, software von wordpress, grid von 960 grid system. funktioniert in allen browsern, aber der safari bekommt das mit der schrift am schönsten hin.