Kategorie: SEO

  • künstliche Inteleginez im Alltag interiegren als Content Creator

    künstliche Inteleginez im Alltag interiegren als Content Creator

    Notiz

    Schreibe in groben Zügen auf, was du sagen willst.

    meine Notiz:

    Du hast eine Ausbildung als Softwareentwickler btw. Entwicklerin abgeschlossen und die ersten 3 Jahre Berufserfahrung.

    Vielleicht stellst du dir gerade die Frage, was kann ich jetzt lernen um eine weitere Skill-Stufe aufzusteigen?

    Mein erster Tipp wäre ein Lernfokus zu definieren, der 50% der Firmenansprüche abdeckt und 50 % über den Tellerrand blicken lässt.

    Durch die 50% Firmenansprüche hast du den Vorteil, das du neben dem lernen auch viel Praktische Erfahrung sammeln wirst, da dies dann regelmäßig auf Arbeit anwendest. Dadurch kannst du dir auch dein Arbeitsplatz selber gestalten, da du den neuen Skill in Absprache gewählt hast. Des weiteren macht es ein guten Eindruck, wenn du eigeninitiative zeigst und dich für den Arbeitgeber flexibler machst und an mehr Projekten mitwirken kannst. Dadurch steigt auch deine Job-Sicherheit.

    Tellerrand: du lernst etwas außerhalb von Softwareentwicklung und baust dir ein Profil auf. Dies kann z.B. Marketing sein. Bei mir war es Content Marketing. Ich habe das Thema gewählt, da ich mein Wissen weiter geben wollte und auch das Bedürfnis das es gefunden wird. Durch ein Blog konnte ich dann praktische Erfahrungen im Bereich sammeln mit relativ geringen Kosten.

    Beispiele für Tellerrand:

    – Grafikdesign
    – SEO
    – Social Media
    – Video / Podcast erstellen mit komplett fremden Thema
    – ein Spiel entwickeln

    Dir wird vielleicht aufgefallen sein, das alle Beispiel mit Content zu tun haben. dies habe ich mit Absicht gewählt, da es ein Vorteil ist, wenn du deine Arbeit zur schau stellst. dadurch kann ein Business entstehen bzw. du machst dich noch attraktiver für Arbeitgeber. Du baust dir sozusagen Optionen für deine Karriere auf.

    Social Media zum Beispiel, hat den Vorteil, das du dir eine Community aufbaust und dadurch der Firma potenziell ein Vorteil versprechen kannst um z.B. neue Kollegen anwerben kannst oder die Firma bekannt machst.

    Solche Skills werden sich auf dein Gehalt auswirken.

    Noch ein weiterer Tipp: nehme dir gekapselte kleine Projekte vor. Ich habe mir früher immer ein großes Projekt vorgenommen, eine Domain bestellt und bei 25% die Lust verloren. Sprich setze dir ein Meilenstein, der innerhalb von 1 Monat ein abgeschlossenes Resultat hat, das einen Mehrwert bietet. Es muss nicht gleich der World of Warcraft Clone sein, es kann auch erstmal ein simples Idle Game sein. Hauptsache du hast ein abgeschlossenes Projekt auf das du stolz sein kannst und was zum zeigen hast.


    ChatGPT ein Text formulieren lassen.

    Gib ChatGPT Anweisungen, den Text zu formulieren. Dabei bist du der Deregent und gibst Anweisungen (Prompts), was weiter ausgebaut werden soll und was verbessert werden muss.

    Resultat ChatGPT

    Als Softwareentwickler oder Softwareentwicklerin hast du bereits eine wichtige Grundlage für deine Karriere gelegt. Aber es ist immer wichtig, sich weiterzubilden und neue Fähigkeiten zu erlernen, um in der sich schnell entwickelnden IT-Branche wettbewerbsfähig zu bleiben.

    Ein wichtiger Schritt, um deine Fähigkeiten zu verbessern und auf die nächste Stufe zu bringen, ist, einen Lernfokus zu definieren. Dies bedeutet, dass du einen klaren Plan für das Lernen neuer Fähigkeiten und Technologien hast, die für deine Arbeit relevant sind. Dabei solltest du aber auch den Blick über den Tellerrand wagen und dich für Themen interessieren, die zwar nicht unbedingt direkt mit deinem Arbeitsbereich zu tun haben, aber dennoch für dein berufliches Profil und deine Karriere von Bedeutung sein können.

    Eine Möglichkeit, deine Fähigkeiten zu erweitern, besteht darin, sich für Projekte zu engagieren, die einen Mehrwert für das Unternehmen bieten und gleichzeitig die Chance bieten, neue Fähigkeiten zu erlernen. Indem du dich für Projekte mit einem klaren Ziel engagierst, kannst du nicht nur dein Wissen erweitern, sondern auch zeigen, dass du motiviert bist und Eigeninitiative zeigst.

    Ein weiterer wichtiger Tipp, um deine Karriere voranzutreiben, ist, dich für Themen außerhalb der reinen Softwareentwicklung zu interessieren. Dazu gehört zum Beispiel Grafikdesign, SEO, Social Media oder die Erstellung von Videoinhalten oder Podcasts. Wenn du dein Wissen auf diese Bereiche erweiterst, kannst du ein breiteres berufliches Profil aufbauen und deine Chancen auf dem Arbeitsmarkt erhöhen.

    Außerdem ist es wichtig, immer wieder kleine Projekte zu starten, um deine Fähigkeiten zu verbessern und dein Portfolio zu erweitern. Diese Projekte sollten überschaubar sein und innerhalb eines bestimmten Zeitrahmens abgeschlossen werden können, um Frust und Demotivation zu vermeiden.

    Zusammenfassend kann gesagt werden, dass es wichtig ist, sich kontinuierlich weiterzubilden und neue Fähigkeiten zu erlernen, um in der IT-Branche wettbewerbsfähig zu bleiben. Indem du dich für Projekte engagierst, die einen Mehrwert für das Unternehmen bieten und dein Wissen in anderen Bereichen erweitern, kannst du deine Karrierechancen verbessern und deinem beruflichen Profil mehr Tiefe und Breite verleihen.


    Feinschliff mit Deepl Write

    Nun kopierst du den ChatGPT-Text in DeepL und lässt ihn schön formulieren.

    Als Softwareentwickler/in hast du bereits einen wichtigen Grundstein für deine Karriere gelegt. Aber es ist immer wichtig, sich weiterzubilden und neue Fähigkeiten zu erwerben, um in der sich schnell entwickelnden IT-Branche wettbewerbsfähig zu bleiben.

    Ein wichtiger Schritt, um deine Fähigkeiten zu verbessern und auf die nächste Stufe zu bringen, ist die Festlegung eines Lernziels. Das bedeutet, dass du einen klaren Plan für das Erlernen neuer Fähigkeiten und Technologien hast, die für deine Arbeit relevant sind. Dabei solltest du auch über den Tellerrand hinausschauen und dich für Themen interessieren, die nicht unbedingt direkt mit deinem Arbeitsbereich zu tun haben, aber dennoch für dein berufliches Profil und deine Karriere wichtig sein können.

    Eine Möglichkeit, deine Kompetenzen zu erweitern, besteht darin, dich in Projekten zu engagieren, die einen Mehrwert für das Unternehmen schaffen und dir gleichzeitig die Möglichkeit bieten, neue Fähigkeiten zu erlernen. Wenn du dich in Projekten mit einem klaren Ziel engagierst, kannst du nicht nur dein Wissen erweitern, sondern auch zeigen, dass du motiviert bist und Eigeninitiative zeigst.

    Ein weiterer wichtiger Tipp, um deine Karriere voranzutreiben, ist, dich für Themen außerhalb der reinen Softwareentwicklung zu interessieren. Dazu gehören zum Beispiel Grafikdesign, SEO, Social Media oder die Erstellung von Videoinhalten oder Podcasts. Wenn du dein Wissen auf diese Bereiche ausweitest, kannst du dir ein breiteres berufliches Profil aufbauen und deine Chancen auf dem Arbeitsmarkt erhöhen.

    Es ist auch wichtig, immer wieder kleine Projekte zu starten, um deine Fähigkeiten zu verbessern und dein Portfolio zu erweitern. Diese Projekte sollten überschaubar sein und in einem bestimmten Zeitrahmen abgeschlossen werden können, um Frustration und Demotivation zu vermeiden.

    Zusammenfassend kann man sagen, dass es wichtig ist, sich ständig weiterzubilden und neue Fähigkeiten zu erlernen, um in der IT-Branche wettbewerbsfähig zu bleiben. Indem man sich an Projekten beteiligt, die einen Mehrwert für das Unternehmen schaffen, und indem man sein Wissen in anderen Bereichen erweitert, kann man seine Karrierechancen verbessern und seinem beruflichen Profil mehr Tiefe und Breite verleihen.

  • Suchmaschinenoptimierung (SEO) Informationsquellen

    Suchmaschinenoptimierung (SEO) Informationsquellen

    Liste mit den besten Suchmaschienen Informationen die man online finden kann. Suchmaschinenoptimierung (SEO = Search Engine Optimization) für deine Website bzw. Shop ist ein Langzeitprojekt, deswegen sollte man auch regelmäßig Nachrichten zu diesem Thema lesen. Auf dieser Seite findest du Quellen, auf denen ich mich informiere und auf aktuellen Stand bleibe. Diese Liste wird regelmäßig aktualisiert und erweitert.

    SEO-Südwest

    seo suedwest website

    Eine Nachrichtenseite die den Google Algorithmus im Auge behält und auf Sozialen Kanälen die großen Konzerne im Blick behält. Des weiteren findet man dort gute Informationen aus den USA über SEO. Es erscheinen Insights, Gespräche und Analysen mit Fachexperten. Die Seite betreibt den Podcast SEO im Ohr.

    www.seo-suedwest.de

    Website Boosting

    website boosting website

    Das Print Magazin Website Boosting versammelt 300 Experten rund um Traffic-Generierung, von SEO bis Social Media werden qualitativ Hochwertige Inhalte veröffentlicht. Aktuelle Inhalte werden als Print verkauft und die älteren Artikel kann man kostenlos online lesen.

    www.websiteboosting.com

    YouTube Kanal von Evergreen Media

    evergreen media youtube kanal

    Der YouTube Kanal von Evergreen Media erklärt in kurzen Videos das Basiswissen der Suchmaschinenoptimierung. Geeignet ist der YouTube Kanal besonders für Beginner um sich die sich ein allgeminen Überblick verschaffen wollen, aber für Fortgeschrittene ist auch ein haufen an guten Inhalt verfügbar.

    Evergreen Media YT Kanal

    Onlinemarketing.de

    onlinemarketing.de website 2022

    Regelmäßig Updates zur Google-Suche erhalten und immer aktuell bleiben, das geht mit onlinemarketing.de. Die qualitativ hochwertigen Artikel erscheinen regelmäßig und gehen auch mal in die Tiefe. Auf den anderen Ressorts findest du auch noch zu anderen Marketing Bereichen top Informationen.

    www.onlinemarketing.de/seo

    SEO Inhalt von mir

  • Meine SEO Wissen kurz erläutert

    Meine SEO Wissen kurz erläutert

    SEO ist eine Marketing Disziplin um bei Suchmaschinen wie zum Beispiel Google, auf den vorderen Plätzen zu erscheinen. Dabei gibt es 5 Kernelemente die deine Seite haben sollte.

    Index

    gute Technik

    Die Technik muss stimmen. Ich achte penibel auf meine Vital Werte, dies sind von Google vorgegebene Richtwerte um die Seite technisch sauber zu gestalten. Du kannst die Vital Werte auf https://web.dev testen.

    Grob kann man zusammenfassen: die Seite muss schnell sein, wenig Datenvolumen verbrauchen und ein nutzerfreundliches Design (Stichwort Layoutshift) haben.

    Interaktiv

    Für den Anfang ist ein Artikel-Index perfekt. Schreibe nach dem Intro eine Liste mit Ankerlinks zu den Artikelstellen. Durch Google Analytics habe ich festgestellt, 20% meiner benutzen diese. Dadurch kann schnell der Inhalt, der gesucht wird, gefunden werden.

    JavaScript nur für Funktion

    Bitte verwende keine Imagerotation, Slider oder sonstige optische JavaScript Effekte/Animationen, extrem toxisch! Benutze JavaScript weise, dann bekommst du ein ordentlichen boost für deine Artikel. Zum Beispiel auf meinem Größe von RAW-Bildern und Printprodukten berechnen Artikel, dort erkläre ich zuerst die Theorie und dann biete ich ein Rechner an der in JavaScript geschrieben ist. Sprich mein JavaScript Einsatz bietet ein hohen Mehrwert an.

    Content Struktur

    Textgliederung ist einer der wichtigsten Faktoren, baue Überschriften ein und mache lieber eine Subüberschrift mehr wenn du zweifelst ob das jetzt passt. Niemand hat Lust eine Text-Wüste zu lesen, die meisten wollen den Text scannen und die Informationen raus picken. Verwende wenig verschachtelte Sätze. Umso einfacher ein Text zu lesen ist, umso weniger muss dabei nachgedacht werden. Halte dich kurz und schwafle nicht.

    Arbeite mit <b>, damit der Text noch schneller gescannt werden kann.

    Mehrwert

    Wenn ich ein Artikel über mein Leben oder Wünsche schreibe, wird dieser bei Google nicht erscheinen, da dies kein wirklichen Wissenszuwachs bringt. Schreibe Artikel bei dem Leute was lernen, eine handfeste Fertigkeit. Wenn du bei Google ranken willst, musst du eine Frage beantworten.

    Trust

    Warum sollten deine Leser dir glauben, wenn sie nichts über dich wissen? Erstelle eine Über Mich Seite und präsentiere deine Arbeit. Du kannst auch dein Werdegang beschreiben und erläutern was du wo gemacht hast. Verlinke diese Seite in einer Autorenbox unter und über jedem Artikel.

  • technisches SEO – Trends 2021

    technisches SEO – Trends 2021

    Mein Hauptaugenmerk, 2021, wird die Aggregierung, automatisierte Verarbeitung und UX Analyse von Daten sein.

    Trends

    Trend 1: Ich bin vor kurzem auf ein Google Feature gestoßen und war sofort begeistert. Man kann mit Java Script Google Tabellen bearbeiten, füllen, erstellen. Mit dem Dienst von Google können, die Scripte, auch in regelmäßigen Abständen ausgeführt werden. Das Script kann auf Search Console, Analytics oder auch Youtube zugreifen. Google nennt dies „Google App Script“.

    Trend 2: Des weiteren sehe ich noch ein Trend für selbst entwickelte Crawler. Du kannst automatisiert, die Vitalwerte einzelner Seiten auslesen und analysieren. An sich ist das Datamining unbegrenzt. Wenn du dich dafür interessierst kann ich dir NodeJS empfehlen.

    Trend 3: Nachdem mit NodeJS die Web Vital Werte gemessen wurden, muss an manchen Stellen der Layout Shift ausgebessert werden. Es ist weniger ein Trend, mehr ein Tool um die Shift zu visualisieren. (Chrome Dev Tools)

    Für Trend 2 und 3, kommen die Minitutorials noch in diesem Monat.

    Google App Script

    google sheets beispiel

    Mit Java Script automatisiert Dashboards erstellen – das geht mit Google App Script.

    Script erstellen und ausführen

    Minitutorial wie du alle Pageviews mit dem Browser Firefox ausgibst.

    1. Öffne Google Sheets
    2. lege eine neue Tabelle an
    3. klicke auf Tools und dann auf Scripteditor
    4. klicke auf Ressourcen und Erweiterte Google-Dienste
    5. aktiviere Google Analytics
    6. füge den Beispiel Code ein
    7. speicher das Script
    8. führe „runDemo“ aus

    Code

    function runDemo() {
      try {
    
        var firstProfile = getFirstProfile();
        var results = getReportDataForProfile(firstProfile);
        outputToSpreadsheet(results);
    
      } catch(error) {
        Browser.msgBox(error.message);
      }
    }
    
    function getFirstProfile() {
      var accounts = Analytics.Management.Accounts.list();
      if (accounts.getItems()) {
        var firstAccountId = accounts.getItems()[1].getId();
    
        var webProperties = Analytics.Management.Webproperties.list(firstAccountId);
        if (webProperties.getItems()) {
    
          var firstWebPropertyId = webProperties.getItems()[0].getId();
          var profiles = Analytics.Management.Profiles.list(firstAccountId, firstWebPropertyId);
    
          if (profiles.getItems()) {
            var firstProfile = profiles.getItems()[0];
            return firstProfile;
    
          } else {
            throw new Error('No views (profiles) found.');
          }
        } else {
          throw new Error('No webproperties found.');
        }
      } else {
        throw new Error('No accounts found.');
      }
    }
    
    function getReportDataForProfile(firstProfile) {
    
      var profileId = firstProfile.getId();
      var tableId = 'ga:' + profileId;
      var startDate = getLastNdays(14);   // 2 weeks (a fortnight) ago.
      var endDate = getLastNdays(0);      // Today.
    
      var optArgs = {
        'filters': 'ga:browser==Firefox',          // Display only google traffic.
        'start-index': '1',
        'metrics': 'ga:pageviews',
        'dimensions': 'ga:browser',
        'max-results': '250'                     // Display the first 250 results.
      };
    
      // Make a request to the API.
      var results = Analytics.Data.Ga.get(
          tableId,                    // Table id (format ga:xxxxxx).
          startDate,                  // Start-date (format yyyy-MM-dd).
          endDate,                    // End-date (format yyyy-MM-dd).
          'ga:pageviews', // Comma seperated list of metrics.
          optArgs);
    
      if (results.getRows()) {
        return results;
    
      } else {
        throw new Error('No views (profiles) found');
      }
    }
    
    function getLastNdays(nDaysAgo) {
      var today = new Date();
      var before = new Date();
      before.setDate(today.getDate() - nDaysAgo);
      return Utilities.formatDate(before, 'GMT', 'yyyy-MM-dd');
    }
    
    function outputToSpreadsheet(results) {
      var sheet = SpreadsheetApp.getActiveSpreadsheet().insertSheet();
    
      // Print the headers.
      var headerNames = [];
      for (var i = 0, header; header = results.getColumnHeaders()[i]; ++i) {
        headerNames.push(header.getName());
      }
      sheet.getRange(1, 1, 1, headerNames.length)
          .setValues([headerNames]);
    
      // Print the rows of data.
      sheet.getRange(2, 1, results.getRows().length, headerNames.length)
          .setValues(results.getRows()).sort([{column: 2, ascending: false}]);
    }

    Jetzt könnte man noch Diagramme erstellen lassen und das Script, alle 14 Tage, ausführen lassen.

    Bonus

    Habe mal ein Script geschrieben, das mir die Scrolltiefe als Balkendiagram anzeigt.

    function runDemo() {
      try {
        var firstProfile = getFirstProfile();
        var results = getReportDataForProfile(firstProfile);
        outputToSpreadsheet(results);
      } catch(error) {
        Browser.msgBox(error.message);
      }
    }
    function getFirstProfile() {
      var accounts = Analytics.Management.Accounts.list();
      if (accounts.getItems()) {
        var firstAccountId = accounts.getItems()[1].getId();
        var webProperties = Analytics.Management.Webproperties.list(firstAccountId);
        if (webProperties.getItems()) {
          var firstWebPropertyId = webProperties.getItems()[0].getId();
          var profiles = Analytics.Management.Profiles.list(firstAccountId, firstWebPropertyId);
          if (profiles.getItems()) {
            var firstProfile = profiles.getItems()[0];
            return firstProfile;
          } else {
            throw new Error('No views (profiles) found.');
          }
        } else {
          throw new Error('No webproperties found.');
        }
      } else {
        throw new Error('No accounts found.');
      }
    }
    function getReportDataForProfile(firstProfile) {
      var profileId = firstProfile.getId();
      var tableId = 'ga:' + profileId;
      var startDate = getLastNdays(14);   // 2 weeks (a fortnight) ago.
      var endDate = getLastNdays(0);      // Today.
      var optArgs = {
        'filters': 'ga:eventCategory==Scrolltracking',          // Display only google traffic.
        'start-index': '1',
        'dimensions': 'ga:eventAction',
        'max-results': '250'                     // Display the first 250 results.
      };
      // Make a request to the API.
      var results = Analytics.Data.Ga.get(
          tableId,                    // Table id (format ga:xxxxxx).
          startDate,                  // Start-date (format yyyy-MM-dd).
          endDate,                    // End-date (format yyyy-MM-dd).
          'ga:uniqueEvents', // Comma seperated list of metrics.
          optArgs);
      if (results.getRows()) {
        return results;
      } else {
        throw new Error('No views (profiles) found');
      }
    }
    function getLastNdays(nDaysAgo) {
      var today = new Date();
      var before = new Date();
      before.setDate(today.getDate() - nDaysAgo);
      return Utilities.formatDate(before, 'GMT', 'yyyy-MM-dd');
    }
    function outputToSpreadsheet(results) {
      var sheet = SpreadsheetApp.getActiveSpreadsheet().insertSheet();
      // Print the headers.
      var headerNames = [];
      for (var i = 0, header; header = results.getColumnHeaders()[i]; ++i) {
        headerNames.push(header.getName());
      }
      sheet.getRange(1, 1, 1, headerNames.length)
          .setValues([headerNames]);
      // Print the rows of data.
      sheet.getRange(2, 1, results.getRows().length, headerNames.length)
          .setValues(results.getRows()).sort([{column: 2, ascending: false}]);
      newChart(sheet);
    }
    function newChart(sheet) {
      var chartBuilder = sheet.newChart();
      chartBuilder.addRange(sheet.getRange("A1:B5"))
          .setChartType(Charts.ChartType.BAR)
          .setPosition(4, 5, 10, 10)
        .setOption("title", "Scrolltiefe")
        .setOption("useFirstColumnAsDomain", true)
      sheet.insertChart(chartBuilder.build());
    }

    Layout Shift visualisieren

    Mit dem Chrome Browser kann man den Layout shift visualisieren.

    1. öffne die zu testene Seite
    2. drücke F12 (Entwicklerconsole öffnen)
    3. öffne den Reiter Performence
    4. Klicke auf den Reload Button (Start Profiling and Reload)
    5. nach dem neu laden, stoppe die Aufnahme
    6. hover über Layoutshift

    layoutshift auf t3n

    Folge mir auf Twitter um Updates zu diesem Artikel zu erhalten: @boolie_org.

  • WordPress Bilder SEO

    WordPress Bilder SEO

    Ein wichtiger Ranking-Faktor ist die Ladegeschwindigkeit deines Blog’s. Der häufigste Fehler ist die falsche Optimierung deiner Bilder. Die meisten optimieren das Bild, das hochgeladen wird, aber nicht die zugeschnittenen Bilder. Da das hochbeladene in kleine crops zugeschnitten wird müssen diese natürlich auch optimiert werden. Das optimiert deine Ladegeschwindigkeit und bringt dir fette Pluspunkte bei Google.

    zugeschnittene Bilder vom Server laden

    Für diesen Schritt brauchst du ein FTP Programm, ich verwende Filezilla. Öffne Filezilla und logge dich auf deinen Server ein, die Zugangsdaten findest du bei deinem Hoster unter FTP Daten.Filezilla geöffnet
    Navigiere jetzt in das aktuelle Jahr: „wp-content/uploads/2018/“. Ziehe jetzt den letzten Monat auf deinen lokalen Computer, ziehe den Ordner von der rechten Seite auf die Linke.downloade Bilder Warte bis das Fesnter „zu übertragene Daten“ wieder leer ist.

    Bilder optimieren

    Öffne jetzt im Browser die Webseite www.kraken.io, und öffne das Webinterface.Kraken.io webinterface Lasse die Standardeinstellungen und klicke auf „click to upload“, navigiere jetzt zu deinen runtergeladenen Bildern und öffne den Ordner, in meinem Beispiel den Ordner 08. Jetzt markiere das erste Bild und drücke die Tastenkombination „Strg + a“, damit markierst du alle Bilder. Drücke jetzt auf öffnen. Upload alle Bilder auf kraken.io Warte kurz bis alle Bilder durchlaufen sind und downloade das .zip Archiv. kraken io download zip

    optimierte Bilder wieder auf den Server ablegen

    Entpacke jetzt das runtergeladene Archiv und öffne den neuen Ordner.entapcke zip ordner Navigiere jetzt in Filezilla in den entpackten Ordner (linker Dateibrowser) und öffne im rechten Fenster den Bilder-Ordner auf dem Server.öffne beide Bilde-Ordner in Filezilla Markiere auf der linken Seite alle Bilder (Strg + a) und ziehe sie in den linken Ordner. Bestätige das du die Dateien überschreiben möchtest, und setze den Hacken bei „immer Aktion ausführen“. filezilla überschreibe alle Bilder

    Fertig deine Bilder für August 2018 sind jetzt optimiert, jetzt musst du das für die restlichen Monate auf nachholen, damit alle deine Artikel optimiert sind.