Ankündigung

Einklappen
Keine Ankündigung bisher.

Fremder Code...

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Fremder Code...

    Heute wieder erlebt: keine Dokumentation, sinnlose Variablen(-namen), prozedural mit objektorientiert gemischt, keine Trennung/vernünftiger aufbau a la MVC, riesige Scripte usw...

    while (!asleep()) sheep++;

    Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.


  • #2
    Jeden Tag aufs neue. Älteste Projekt aktuell: 12 Jahre... *heul*
    Lerne Grundlagen | Schreibe gute Beispiele | PDO > mysqli > mysql | Versuch nicht, das Rad neu zu erfinden | Warum $foo[bar] böse ist | SQL Injections | Hashes sind keine Verschlüsselungen! | Dein E-Mail Regex ist falsch

    Kommentar


    • #3
      Meist auch dieselbe Antwort des verantwortlichen Kollegen: "Kein Ahnung. Damals wurde es benötigt, aber ich weiß auch nicht mehr wofür genau..."

      Jeden Tag aufs neue. Älteste Projekt aktuell: 12 Jahre... *heul*
      Respekt! 12 Jahre ist lang und gibt's einiges zu "aktualisieren"
      while (!asleep()) sheep++;

      Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

      Kommentar


      • #4
        Wenn es wenigstens noch Kollegen gibt. Das ist durch drei Hände gegangen, ich bin jetzt der vierte Idiot der sich damit auseinandersetzen muss. Alle sind natürlich schon raus aus der Firma, also keine Chance auf Rücksprache oder Fragen.

        Chance auf Redesign steigt allerdings mit jedem Patch, weil es halt immer teurer wird und immer länger dauert. Irgendwann knicken sie schon ein...
        Lerne Grundlagen | Schreibe gute Beispiele | PDO > mysqli > mysql | Versuch nicht, das Rad neu zu erfinden | Warum $foo[bar] böse ist | SQL Injections | Hashes sind keine Verschlüsselungen! | Dein E-Mail Regex ist falsch

        Kommentar


        • #5
          Chance auf Redesign steigt allerdings mit jedem Patch, weil es halt immer teurer wird und immer länger dauert. Irgendwann knicken sie schon ein...
          Optimist! Housintern wird das solange durchgezogen (gerade auch meist aus Prestige- und Imagegründen des Projektleiters oder GF's), bis ein Budgetlimit erreicht wurde, oder ein externener Berater das in einem teuren Bericht empfiehlt.
          while (!asleep()) sheep++;

          Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

          Kommentar


          • #6
            Arbeiten bei uns auch mit ~9 Jahre alter Programmierung, durften vor kurzem mit der Neugestaltung anfangen bis es endlich so weit kam wurden aber auch schon n paar Leute verschlissen
            Relax, you're doing fine.
            RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

            Kommentar


            • #7
              Zitat von wolf29
              Optimist! Housintern wird das solange durchgezogen (gerade auch meist aus Prestige- und Imagegründen des Projektleiters oder GF's), bis ein Budgetlimit erreicht wurde, oder ein externener Berater das in einem teuren Bericht empfiehlt.
              ACK
              Competence-Center -> Enjoy the Informatrix
              PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

              Kommentar


              • #8
                *Liedchen sing*

                Es gibt auch Projekte, die kommen direkt von der Agentur und sind bereits schrottiger Djungel.

                Besuchen Sie auch meine Wordpress-Hate-IG...
                --

                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                --

                Kommentar


                • #9
                  Ein Redesign bei Langzeitprojekten? Das gibt wahrscheinlich keine Eintrag in das Buch der erfolgreichen IT-Projekte. Sowas würde ich immer nur in einem schrittweisen Refactoring machen, alles über den Haufen werfen und auf einmal überarbeiten halte ich für sehr bedenklich. Natürlich kostet ein Refactoring was nebenbei gemacht wird eine Menge Ressourcen, das verteilt sich aber über ein langen Zeitraum und gibt dabei kein Druck und vorallen Dingen lässt es sich einfacher verkaufen. Bei einem kompletten Redesign interessiert nach x Monaten niemand die Erklärung warum das System nach dieser Zeit plötzlich nur noch die Hälfte kann. Da ist Frust vorprogrammiert.

                  Kommentar


                  • #10
                    Zitat von erc Beitrag anzeigen
                    Sowas würde ich immer nur in einem schrittweisen Refactoring machen
                    In die Richtung denke ich auch. Vor allem wenn man dann Patches auf beiden Systemen ausspielt und beweisbar zeigen kann: "soviel hats beim alten gekostet, soviel beim neuen". Eindrucksvoller gehts dann kaum noch.

                    Schwierig ist allerdings, die User auf das neue System umzuziehen. Beide parallel laufen lassen ist quasi unmöglich (allein schon wg. der Datenbankstruktur) leider...
                    Lerne Grundlagen | Schreibe gute Beispiele | PDO > mysqli > mysql | Versuch nicht, das Rad neu zu erfinden | Warum $foo[bar] böse ist | SQL Injections | Hashes sind keine Verschlüsselungen! | Dein E-Mail Regex ist falsch

                    Kommentar


                    • #11
                      Im Idealfall bekommt niemand was von einem Refactoring mit. Wenn da Probleme schon bis zum Anwender hoch gekommen sind ist das ein schlechtes Zeichen.

                      Zitat von ApoY2k
                      Schwierig ist allerdings, die User auf das neue System umzuziehen. Beide parallel laufen lassen ist quasi unmöglich (allein schon wg. der Datenbankstruktur) leider...
                      Das ist ja das grundlegende Problem beim Refactoring. Du musst sicherstellen das das System weiterhin funktioniert. Ob das nun durch eine komplette Anpassung der Anwendung erreicht wird oder einer Zwischenschicht die sicherstellt das Alt und Neu parallel funktionieren, ist die andere Frage. Mit Triggern und beschreibbaren Views kann man eine Menge anstellen.

                      Kommentar


                      • #12
                        Zitat von nikosch Beitrag anzeigen
                        *Liedchen sing*

                        Es gibt auch Projekte, die kommen direkt von der Agentur und sind bereits schrottiger Djungel.

                        Besuchen Sie auch meine Wordpress-Hate-IG...

                        Was? Wordpress ist doch das wohl sauberste Projekt der Welt. So gut strukturierten Code und so sauber designte Architektur finedst du sonst nirgends.




                        So fertig Irnonie.
                        GitHub.com - ChrisAndChris - RowMapper und QueryBuilder für MySQL-Datenbanken

                        Kommentar


                        • #13
                          Zitat von erc Beitrag anzeigen
                          Im Idealfall bekommt niemand was von einem Refactoring mit. Wenn da Probleme schon bis zum Anwender hoch gekommen sind ist das ein schlechtes Zeichen.
                          Kommt aufs System an. In diesem speziellen Fall ist die Oberfläche, auf der die User arbeiten Teil des Problems (zu kompliziert, gleiche Funktionen auf 4 verschiedenen Seiten mit nur marginalen Unterschieden, kaum noch unterstützte Workflows...) - von nichts mitkriegen kann daher nicht die Rede sein.

                          Zitat von erc Beitrag anzeigen
                          Zwischenschicht die sicherstellt das Alt und Neu parallel funktionieren, ist die andere Frage. Mit Triggern und beschreibbaren Views kann man eine Menge anstellen.
                          Hm... muss ich mir mal durch den Kopf gehen lassen. Könnte ein interessanter Punkt sein.
                          Lerne Grundlagen | Schreibe gute Beispiele | PDO > mysqli > mysql | Versuch nicht, das Rad neu zu erfinden | Warum $foo[bar] böse ist | SQL Injections | Hashes sind keine Verschlüsselungen! | Dein E-Mail Regex ist falsch

                          Kommentar


                          • #14
                            Zwischenschicht die sicherstellt das Alt und Neu parallel funktionieren, ist die andere Frage. Mit Triggern und beschreibbaren Views kann man eine Menge anstellen.
                            Definitiv, aber halt doch nicht alles und irgendwann kommst du einfach an den Punkt, wo du komplett auf ein neues System umziehst und das ist meist der brenzlige Punkt. Mal ganz abgesehen von dem klassischen User, der am Anfang meist "alles blöd" findet im neuen System ist alt und neu parallel laufen zu lassen (gerade auch um das neue testen zu können), immer etwas heikel m.E. (wenn User beides parallel nutzen können)

                            Im Idealfall bekommt niemand was von einem Refactoring mit. Wenn da Probleme schon bis zum Anwender hoch gekommen sind ist das ein schlechtes Zeichen.
                            Jep, dann ist in einem der Prozesse was schief gelaufen. Sowas darf eigentlich nicht passieren.

                            Besonders schön ist auch ein bestehendes System erweitern/neu aufzuziehen, wenn der "stolze" Ursprungsprogrammierer "sein Baby"(Projekt) in Gefahr sieht. Da kann es gut und gerne Gegenwind geben (eigene Erfahrung)

                            mfg wolf29
                            while (!asleep()) sheep++;

                            Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

                            Kommentar


                            • #15
                              Zitat von wolf29 Beitrag anzeigen
                              Jep, dann ist in einem der Prozesse was schief gelaufen. Sowas darf eigentlich nicht passieren.
                              Oder die Technologie hats damals einfach nicht anders zugelassen... (leider).

                              Zitat von wolf29 Beitrag anzeigen
                              Besonders schön ist auch ein bestehendes System erweitern/neu aufzuziehen, wenn der "stolze" Ursprungsprogrammierer "sein Baby"(Projekt) in Gefahr sieht. Da kann es gut und gerne Gegenwind geben
                              Das ist das schön in meinem Fall. Ich, der Projektleiter, und sogar der Manger beim Kunden sind uns alle einig, dass was neu gemacht werden muss und mal re-evaluiert werden muss, ob und was vom System überhaupt noch sinnvoll (sprich: zielführend) eingesetzt wird.

                              Aber: Keiner zahlts
                              Lerne Grundlagen | Schreibe gute Beispiele | PDO > mysqli > mysql | Versuch nicht, das Rad neu zu erfinden | Warum $foo[bar] böse ist | SQL Injections | Hashes sind keine Verschlüsselungen! | Dein E-Mail Regex ist falsch

                              Kommentar

                              Lädt...
                              X