<?xml version="1.0" encoding="UTF-8" ?> 
<rss version="2.0" xmlns:atom="https://www.w3.org/2005/Atom"> 
<channel> 
<title><![CDATA[Team IT Security - Web Tipps]]></title> 
<link><![CDATA[https://tsecurity.de/feed.php?typ=24&q=]]></link> 
<description><![CDATA[Willkommen bei Web Tipps, dem Informationsportal für Webentwickler und Webdesigner. Hier findest du eine Auswahl an interessanten Artikeln aus verschiedenen Quellen, die dir helfen, auf dem Laufenden zu bleiben und deine Webkompetenzen zu verbessern. Egal, ob du dich für Docker, VSCode, PHP, KI, Cloud Computing oder andere Webthemen interessierst, hier wirst du fündig. Du kannst auch die RSS Feeds abonnieren, um keine Neuigkeiten zu verpassen. Viel Spaß beim Stöbern und Lernen!]]></description>
<copyright>2026</copyright>
<atom:link href="https://tsecurity.de/feed.php?typ=24&amp;q=_" rel="self" type="application/rss+xml" />
<item> 
<title><![CDATA[30+ CSS Cards]]></title> 
<description><![CDATA[Bist du auf der Suche nach kreativen CSS Cards f&uuml;r deine Webseite? Dann bist du hier genau richtig! Entdecke eine vielf&auml;ltige Sammlung an CSS Cards [&hellip;]
The post 30+ CSS Cards appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2734866/IT+Betriebssysteme/Web+Tipps/30%2B+CSS+Cards/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2734866/IT+Betriebssysteme/Web+Tipps/30%2B+CSS+Cards/</guid>
<pubDate>Mon, 21 Apr 2025 16:16:18 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Hello world!]]></title> 
<description><![CDATA[Welcome to WordPress. This is your first post. Edit or delete it, then start writing! ]]></description>
<link>https://tsecurity.de/de/2518228/IT+Betriebssysteme/Web+Tipps/Hello+world%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2518228/IT+Betriebssysteme/Web+Tipps/Hello+world%21/</guid>
<pubDate>Fri, 27 Dec 2024 02:18:45 +0100</pubDate>
</item>
<item> 
<title><![CDATA[WordPress CI/CD: Ultimative CI/CD Pipeline für WordPress]]></title> 
<description><![CDATA[In diesem Tutorial zeige ich dir, wie du eine CI/CD Pipeline f&uuml;r deine WordPress Seite erstellen kannst. Und nicht nur das: Ich stelle dir meinen [&hellip;]
The post WordPress CI/CD: Ultimative CI/CD Pipeline f&uuml;r WordPress appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2427305/IT+Betriebssysteme/Web+Tipps/WordPress+CI%2FCD%3A+Ultimative+CI%2FCD+Pipeline+f%C3%BCr+WordPress/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2427305/IT+Betriebssysteme/Web+Tipps/WordPress+CI%2FCD%3A+Ultimative+CI%2FCD+Pipeline+f%C3%BCr+WordPress/</guid>
<pubDate>Wed, 06 Nov 2024 12:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[WordPress CI/CD: Ultimative CI/CD Pipeline für WordPress]]></title> 
<description><![CDATA[In diesem Tutorial zeige ich dir, wie du eine CI/CD Pipeline f&uuml;r deine WordPress Seite erstellen kannst. Und nicht nur das: Ich stelle dir meinen [&hellip;]
The post WordPress CI/CD: Ultimative CI/CD Pipeline f&uuml;r WordPress appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2427306/IT+Betriebssysteme/Web+Tipps/WordPress+CI%2FCD%3A+Ultimative+CI%2FCD+Pipeline+f%C3%BCr+WordPress/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2427306/IT+Betriebssysteme/Web+Tipps/WordPress+CI%2FCD%3A+Ultimative+CI%2FCD+Pipeline+f%C3%BCr+WordPress/</guid>
<pubDate>Wed, 06 Nov 2024 12:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How to fix „A JavaScript error occured in the main process“ (VSCode, Discord, …)]]></title> 
<description><![CDATA[Bekommst du die Fehlermeldung &bdquo;A JavaScript error occured in the main process&ldquo; oder &auml;hnlich? Das passiert gelegentlich beim &Ouml;ffnen von VSCode, Discord oder anderen Apps. [&hellip;]
The post How to fix &bdquo;A JavaScript error occured in the main process&ldquo; (VSCode, Discord, &hellip;) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2315162/IT+Betriebssysteme/Web+Tipps/How+to+fix+%E2%80%9EA+JavaScript+error+occured+in+the+main+process%E2%80%9C+%28VSCode%2C+Discord%2C+%E2%80%A6%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2315162/IT+Betriebssysteme/Web+Tipps/How+to+fix+%E2%80%9EA+JavaScript+error+occured+in+the+main+process%E2%80%9C+%28VSCode%2C+Discord%2C+%E2%80%A6%29/</guid>
<pubDate>Wed, 04 Sep 2024 12:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[GitHub Container Registry: So pushst du Docker Images zu GitHub]]></title> 
<description><![CDATA[Die GitHub Container Registry erm&ouml;glicht dir das ver&ouml;ffentlichen bzw. hosten von privaten und &ouml;ffentlichen Docker Images. Alles was dazu wichtig ist, erf&auml;hrst du in diesem [&hellip;]
The post GitHub Container Registry: So pushst du Docker Images zu GitHub appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2221684/IT+Betriebssysteme/Web+Tipps/GitHub+Container+Registry%3A+So+pushst+du+Docker+Images+zu+GitHub/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2221684/IT+Betriebssysteme/Web+Tipps/GitHub+Container+Registry%3A+So+pushst+du+Docker+Images+zu+GitHub/</guid>
<pubDate>Wed, 10 Jul 2024 12:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Rest API Testing: So testest du Rest APIs richtig!]]></title> 
<description><![CDATA[Rest API Testing ist mit eine der wichtigsten Aufgaben beim Entwickeln von zuverl&auml;ssigen und sicheren Rest APIs. Hier bekommst du eine komplette &Uuml;bersicht was du [&hellip;]
The post Rest API Testing: So testest du Rest APIs richtig! appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2172177/IT+Betriebssysteme/Web+Tipps/Rest+API+Testing%3A+So+testest+du+Rest+APIs+richtig%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2172177/IT+Betriebssysteme/Web+Tipps/Rest+API+Testing%3A+So+testest+du+Rest+APIs+richtig%21/</guid>
<pubDate>Sun, 09 Jun 2024 13:43:01 +0200</pubDate>
</item>
<item> 
<title><![CDATA[FRITZ!Box DynDNS einrichten: So geht’s]]></title> 
<description><![CDATA[In diesem Tutorial zeige ich dir, wie du DynDNS in der FRITZ!Box einrichtest. Durch das dynamische DNS kannst du das Problem der sich ver&auml;ndernden &ouml;ffentlichen [&hellip;]
The post FRITZ!Box DynDNS einrichten: So geht&rsquo;s appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2160779/IT+Betriebssysteme/Web+Tipps/FRITZ%21Box+DynDNS+einrichten%3A+So+geht%E2%80%99s/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2160779/IT+Betriebssysteme/Web+Tipps/FRITZ%21Box+DynDNS+einrichten%3A+So+geht%E2%80%99s/</guid>
<pubDate>Sun, 02 Jun 2024 12:31:13 +0200</pubDate>
</item>
<item> 
<title><![CDATA[FRITZ!Box VPN einrichten: So funktioniert es]]></title> 
<description><![CDATA[VPNs sind beliebter denn je. Aber wusstest du, dass du auch eine VPN auf der FRITZ!Box einrichten kannst? In dieser Schritt-f&uuml;r-Schritt Anleitung zeige ich dir, [&hellip;]
The post FRITZ!Box VPN einrichten: So funktioniert es appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2160737/IT+Betriebssysteme/Web+Tipps/FRITZ%21Box+VPN+einrichten%3A+So+funktioniert+es/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2160737/IT+Betriebssysteme/Web+Tipps/FRITZ%21Box+VPN+einrichten%3A+So+funktioniert+es/</guid>
<pubDate>Sun, 02 Jun 2024 11:42:58 +0200</pubDate>
</item>
<item> 
<title><![CDATA[30 CSS Background Pattern]]></title> 
<description><![CDATA[Bei diesen 30 CSS Background Pattern (Hintergrundmustern) findest du sicher den perfekten Hintergrund f&uuml;r deine App oder Website. Ein CSS Background Pattern kannst du in [&hellip;]
The post 30 CSS Background Pattern appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2159017/IT+Betriebssysteme/Web+Tipps/30+CSS+Background+Pattern/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2159017/IT+Betriebssysteme/Web+Tipps/30+CSS+Background+Pattern/</guid>
<pubDate>Sat, 26 Aug 2023 15:19:02 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Docker vs. VM (virtuelle Maschine): Das sind die Unterschiede]]></title> 
<description><![CDATA[Docker vs. VM (virtuelle Maschine): Was ist der Unterschied zwischen Docker und einer VM? Was haben sie gemeinsam und wann sollte man welche Virtualisierungs-Technologie einsetzen? [&hellip;]
The post Docker vs. VM (virtuelle Maschine): Das sind die Unterschiede appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2158991/IT+Betriebssysteme/Web+Tipps/Docker+vs.+VM+%28virtuelle+Maschine%29%3A+Das+sind+die+Unterschiede/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2158991/IT+Betriebssysteme/Web+Tipps/Docker+vs.+VM+%28virtuelle+Maschine%29%3A+Das+sind+die+Unterschiede/</guid>
<pubDate>Sat, 26 Aug 2023 17:47:35 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Docker Permission Denied – So behebst du den Fehler]]></title> 
<description><![CDATA[Jeder Docker Befehl gibt nur &bdquo;Permission Denied&ldquo; zur&uuml;ck? Keine Panik, in diesem Beitrag erf&auml;hrst du wie du den Docker Permission Denied Fehler einfach beheben kannst. [&hellip;]
The post Docker Permission Denied &ndash; So behebst du den Fehler appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2158825/IT+Betriebssysteme/Web+Tipps/Docker+Permission+Denied+%E2%80%93+So+behebst+du+den+Fehler/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2158825/IT+Betriebssysteme/Web+Tipps/Docker+Permission+Denied+%E2%80%93+So+behebst+du+den+Fehler/</guid>
<pubDate>Wed, 08 Nov 2023 14:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[GitHub Actions: Tutorial für Einsteiger – Basics & Beispiele]]></title> 
<description><![CDATA[In diesem Tutorial m&ouml;chte ich dir GitHub Actions vorstellen und zeigen, wie du GitHub Actions einsetzten kannst, um CI/CD Pipelines zu erstellen, um langweilige, repetitive [&hellip;]
The post GitHub Actions: Tutorial f&uuml;r Einsteiger &ndash; Basics &amp; Beispiele appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/2158739/IT+Betriebssysteme/Web+Tipps/GitHub+Actions%3A+Tutorial+f%C3%BCr+Einsteiger+%E2%80%93+Basics+%26amp%3B+Beispiele/</link>
<guid isPermaLink="true">https://tsecurity.de/de/2158739/IT+Betriebssysteme/Web+Tipps/GitHub+Actions%3A+Tutorial+f%C3%BCr+Einsteiger+%E2%80%93+Basics+%26amp%3B+Beispiele/</guid>
<pubDate>Fri, 31 May 2024 13:34:58 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Clear Your Google Search Browsing History in 3 Easy Steps]]></title> 
<description><![CDATA[One bad search result in your history can leave a lasting impact on your personal and professional life. That&rsquo;s why you&rsquo;ll need to take control of your browsing history on Google. Clearing your Google search history is an important step to take in order to protect your digital footprint online.&nbsp; By doing so, you not [&hellip;]
The post How to Clear Your Google Search Browsing History in 3 Easy Steps appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1966424/IT+Betriebssysteme/Web+Tipps/How+to+Clear+Your+Google+Search+Browsing+History+in+3+Easy+Steps/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1966424/IT+Betriebssysteme/Web+Tipps/How+to+Clear+Your+Google+Search+Browsing+History+in+3+Easy+Steps/</guid>
<pubDate>Tue, 31 May 2022 14:30:21 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Top Apps and Software for Budding Musicians]]></title> 
<description><![CDATA[With the rise of many technological trends, all industries are reaping the benefits. Different technologies are omnipresent, from business, information technology, healthcare, and agriculture to entertainment. Even those inclined in&hellip;
The post Top Apps and Software for Budding Musicians appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1943225/IT+Betriebssysteme/Web+Tipps/Top+Apps+and+Software+for+Budding+Musicians/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1943225/IT+Betriebssysteme/Web+Tipps/Top+Apps+and+Software+for+Budding+Musicians/</guid>
<pubDate>Tue, 28 Nov 2023 14:40:31 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Top 9 Tips to Keep Yourself Safe When Gaming Online]]></title> 
<description><![CDATA[Online gaming is the latest normal in today&rsquo;s fast-paced digital world. The internet now offers vast media for entertainment, be it for video games or online casinos. Adversely, with the&hellip;
The post Top 9 Tips to Keep Yourself Safe When Gaming Online appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1935511/IT+Betriebssysteme/Web+Tipps/Top+9+Tips+to+Keep+Yourself+Safe+When+Gaming+Online/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1935511/IT+Betriebssysteme/Web+Tipps/Top+9+Tips+to+Keep+Yourself+Safe+When+Gaming+Online/</guid>
<pubDate>Tue, 21 Nov 2023 11:30:15 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Docker „Permission Denied“ Fehler beheben]]></title> 
<description><![CDATA[Jeder Docker Befehl gibt nur &bdquo;Permission Denied&ldquo; zur&uuml;ck? Keine Panik, in diesem Beitrag erf&auml;hrst du wie du den Docker Permission Denied Fehler einfach beheben kannst. [&hellip;]
The post Docker &bdquo;Permission Denied&ldquo; Fehler beheben appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1921449/IT+Betriebssysteme/Web+Tipps/Docker+%E2%80%9EPermission+Denied%E2%80%9C+Fehler+beheben/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1921449/IT+Betriebssysteme/Web+Tipps/Docker+%E2%80%9EPermission+Denied%E2%80%9C+Fehler+beheben/</guid>
<pubDate>Wed, 08 Nov 2023 14:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Pros And Cons Of Getting A Tax Extension for Your Fintech Business]]></title> 
<description><![CDATA[Tax season: the time of year many individuals and businesses dread. The weight of ensuring that everything is accurately documented and filed by the deadline can be overwhelming. Sometimes, life&hellip;
The post Pros And Cons Of Getting A Tax Extension for Your Fintech Business appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1915031/IT+Betriebssysteme/Web+Tipps/Pros+And+Cons+Of+Getting+A+Tax+Extension+for+Your+Fintech+Business/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1915031/IT+Betriebssysteme/Web+Tipps/Pros+And+Cons+Of+Getting+A+Tax+Extension+for+Your+Fintech+Business/</guid>
<pubDate>Thu, 02 Nov 2023 14:51:07 +0100</pubDate>
</item>
<item> 
<title><![CDATA[TOP 20 VSCode Extensions, um deine Produktivität zu steigern!]]></title> 
<description><![CDATA[VSCode (Visual Studio Code) ist eine sehr weitverbreiteter und kostenlose Code-Editor. Durch unz&auml;hlige VSCode Extensions kannst du in jeder beliebigen Sprache programmieren und noch viel [&hellip;]
The post TOP 20 VSCode Extensions, um deine Produktivit&auml;t zu steigern! appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1893092/IT+Betriebssysteme/Web+Tipps/TOP+20+VSCode+Extensions%2C+um+deine+Produktivit%C3%A4t+zu+steigern%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893092/IT+Betriebssysteme/Web+Tipps/TOP+20+VSCode+Extensions%2C+um+deine+Produktivit%C3%A4t+zu+steigern%21/</guid>
<pubDate>Mon, 29 May 2023 11:23:12 +0200</pubDate>
</item>
<item> 
<title><![CDATA[ChatGPT und KI in der Softwareentwicklung (Best Practices)]]></title> 
<description><![CDATA[Die Integration von K&uuml;nstlicher Intelligenz (KI) in die Softwareentwicklung hat in den letzten Jahren an Bedeutung gewonnen. ChatGPT ist ein herausragendes Beispiel f&uuml;r diese Technologie. [&hellip;]
The post ChatGPT und KI in der Softwareentwicklung (Best Practices) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1893093/IT+Betriebssysteme/Web+Tipps/ChatGPT+und+KI+in+der+Softwareentwicklung+%28Best+Practices%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893093/IT+Betriebssysteme/Web+Tipps/ChatGPT+und+KI+in+der+Softwareentwicklung+%28Best+Practices%29/</guid>
<pubDate>Sat, 15 Apr 2023 14:46:26 +0200</pubDate>
</item>
<item> 
<title><![CDATA[30 hübsche CSS Background Patterns (Collection)]]></title> 
<description><![CDATA[Bei diesen 30 CSS Background Pattern (Hintergrundmustern) findest du sicher den perfekten Hintergrund f&uuml;r deine App oder Website. Die gezeigten Pens sind mit&nbsp;MIT&nbsp;lizensiert. Mehr Infos [&hellip;]
The post 30 h&uuml;bsche CSS Background Patterns (Collection) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1893091/IT+Betriebssysteme/Web+Tipps/30+h%C3%BCbsche+CSS+Background+Patterns+%28Collection%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893091/IT+Betriebssysteme/Web+Tipps/30+h%C3%BCbsche+CSS+Background+Patterns+%28Collection%29/</guid>
<pubDate>Sat, 26 Aug 2023 15:19:02 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Will Roblox Work on the Chromebook?]]></title> 
<description><![CDATA[Roblox is a platform where users can both play and make their own games. Many young people, especially teens, use Chromebooks to access the platform, which has seen rapid growth&hellip;
The post Will Roblox Work on the Chromebook? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893088/IT+Betriebssysteme/Web+Tipps/Will+Roblox+Work+on+the+Chromebook%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893088/IT+Betriebssysteme/Web+Tipps/Will+Roblox+Work+on+the+Chromebook%3F/</guid>
<pubDate>Thu, 21 Sep 2023 07:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Was ist CI/CD? Definitionen, Konzepte und CI/CD Tools im Überblick]]></title> 
<description><![CDATA[Was verbirgt sich hinter den Begriffen CI/CD, CI/CD Pipeline, CI/CD Tools und DevOps? In diesem Artikel erh&auml;ltst du eine umfassende Erkl&auml;rung aller Begriffe, Konzepte und [&hellip;]
The post Was ist CI/CD? Definitionen, Konzepte und CI/CD Tools im &Uuml;berblick appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1893089/IT+Betriebssysteme/Web+Tipps/Was+ist+CI%2FCD%3F+Definitionen%2C+Konzepte+und+CI%2FCD+Tools+im+%C3%9Cberblick/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893089/IT+Betriebssysteme/Web+Tipps/Was+ist+CI%2FCD%3F+Definitionen%2C+Konzepte+und+CI%2FCD+Tools+im+%C3%9Cberblick/</guid>
<pubDate>Tue, 05 Sep 2023 15:32:47 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Docker vs. virtuelle Maschinen (VM): Das sind die Unterschiede]]></title> 
<description><![CDATA[Docker vs. Virtuelle Maschine: Was ist der Unterschied zwischen Docker und einer VM? Was haben sie gemeinsam und wann sollte man welche Virtualisierungstechnologie einsetzen? Das [&hellip;]
The post Docker vs. virtuelle Maschinen (VM): Das sind die Unterschiede appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1893090/IT+Betriebssysteme/Web+Tipps/Docker+vs.+virtuelle+Maschinen+%28VM%29%3A+Das+sind+die+Unterschiede/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893090/IT+Betriebssysteme/Web+Tipps/Docker+vs.+virtuelle+Maschinen+%28VM%29%3A+Das+sind+die+Unterschiede/</guid>
<pubDate>Sat, 26 Aug 2023 17:47:35 +0200</pubDate>
</item>
<item> 
<title><![CDATA[What is Minecraft PE [Pocket Edition] ? Different Than Normal?]]></title> 
<description><![CDATA[Since its introduction in 2011, Minecraft has been played by millions of people all over the globe, making it one of the most played video games of all time. What&hellip;
The post What is Minecraft PE [Pocket Edition] ? Different Than Normal? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893087/IT+Betriebssysteme/Web+Tipps/What+is+Minecraft+PE+%5BPocket+Edition%5D+%3F+Different+Than+Normal%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893087/IT+Betriebssysteme/Web+Tipps/What+is+Minecraft+PE+%5BPocket+Edition%5D+%3F+Different+Than+Normal%3F/</guid>
<pubDate>Thu, 21 Sep 2023 16:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Minecraft Horror: How Minecraft Secretly is a Horror Game?]]></title> 
<description><![CDATA[First impressions of Minecraft could have you thinking it&rsquo;s just a basic sandbox game where you can dig around in blocks and construct things. You will realize &ldquo;How Minecraft Secretly&hellip;
The post Minecraft Horror: How Minecraft Secretly is a Horror Game? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893083/IT+Betriebssysteme/Web+Tipps/Minecraft+Horror%3A+How+Minecraft+Secretly+is+a+Horror+Game%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893083/IT+Betriebssysteme/Web+Tipps/Minecraft+Horror%3A+How+Minecraft+Secretly+is+a+Horror+Game%3F/</guid>
<pubDate>Sat, 23 Sep 2023 07:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Use Shaders in Minecraft PE? [Updated]]]></title> 
<description><![CDATA[Minecraft has been one of the most played video games ever, and its community has been active for over a decade. Players have the freedom to roam a huge open&hellip;
The post How to Use Shaders in Minecraft PE? [Updated] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893084/IT+Betriebssysteme/Web+Tipps/How+to+Use+Shaders+in+Minecraft+PE%3F+%5BUpdated%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893084/IT+Betriebssysteme/Web+Tipps/How+to+Use+Shaders+in+Minecraft+PE%3F+%5BUpdated%5D/</guid>
<pubDate>Fri, 22 Sep 2023 16:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Why is Minecraft’s Apk Not Working? 10 Reasons WITH Fixes!]]></title> 
<description><![CDATA[Minecraft is a well-known sandbox video game where players can make their own virtual worlds and explore them. The Minecraft apk allows the game to be played on a variety&hellip;
The post Why is Minecraft&rsquo;s Apk Not Working? 10 Reasons WITH Fixes! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893085/IT+Betriebssysteme/Web+Tipps/Why+is+Minecraft%E2%80%99s+Apk+Not+Working%3F+10+Reasons+WITH+Fixes%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893085/IT+Betriebssysteme/Web+Tipps/Why+is+Minecraft%E2%80%99s+Apk+Not+Working%3F+10+Reasons+WITH+Fixes%21/</guid>
<pubDate>Fri, 22 Sep 2023 07:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Where Are Apk Files Stored on Android? [Updated]]]></title> 
<description><![CDATA[The APK file, or Android Package file, contains the whole of an Android programme, including its source code, resources, and manifest file. They function as a medium for the transfer&hellip;
The post Where Are Apk Files Stored on Android? [Updated] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893086/IT+Betriebssysteme/Web+Tipps/Where+Are+Apk+Files+Stored+on+Android%3F+%5BUpdated%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893086/IT+Betriebssysteme/Web+Tipps/Where+Are+Apk+Files+Stored+on+Android%3F+%5BUpdated%5D/</guid>
<pubDate>Thu, 21 Sep 2023 16:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Minecraft’s Best Version: What’s the Best of Minecraft?]]></title> 
<description><![CDATA[Minecraft is a famous sandbox video game that has been played by millions of players all over the globe for over a decade. It stood the test of time because&hellip;
The post Minecraft&rsquo;s Best Version: What&rsquo;s the Best of Minecraft? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893082/IT+Betriebssysteme/Web+Tipps/Minecraft%E2%80%99s+Best+Version%3A+What%E2%80%99s+the+Best+of+Minecraft%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893082/IT+Betriebssysteme/Web+Tipps/Minecraft%E2%80%99s+Best+Version%3A+What%E2%80%99s+the+Best+of+Minecraft%3F/</guid>
<pubDate>Sat, 23 Sep 2023 16:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Will Minecraft Legend Ever Be Free?]]></title> 
<description><![CDATA[Since its release in 2011, Minecraft has become one of the most played video games worldwide. There has been much talk about whether or not Minecraft: Legends would be a&hellip;
The post Will Minecraft Legend Ever Be Free? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893080/IT+Betriebssysteme/Web+Tipps/Will+Minecraft+Legend+Ever+Be+Free%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893080/IT+Betriebssysteme/Web+Tipps/Will+Minecraft+Legend+Ever+Be+Free%3F/</guid>
<pubDate>Sun, 01 Oct 2023 07:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Can Minecraft Java be Played With Xbox?]]></title> 
<description><![CDATA[Minecraft has been active for more than a decade, and in that time it has amassed a tremendous fan base. A sizable and devoted audience follows it wherever it appears.&nbsp;The&hellip;
The post Can Minecraft Java be Played With Xbox? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893081/IT+Betriebssysteme/Web+Tipps/Can+Minecraft+Java+be+Played+With+Xbox%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893081/IT+Betriebssysteme/Web+Tipps/Can+Minecraft+Java+be+Played+With+Xbox%3F/</guid>
<pubDate>Sat, 30 Sep 2023 16:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[PHP MySQL Datenbank Klasse (einfach & sicher)]]></title> 
<description><![CDATA[Mit dieser PHP MySQL Datenbank Klasse kannst du innerhalb weniger Sekunden eine Verbindung zu deiner Datenbank aufbauen und sichere SQL Queries ausf&uuml;hren. Einfach, flexibel und [&hellip;]
The post PHP MySQL Datenbank Klasse (einfach &amp; sicher) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1893077/IT+Betriebssysteme/Web+Tipps/PHP+MySQL+Datenbank+Klasse+%28einfach+%26amp%3B+sicher%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893077/IT+Betriebssysteme/Web+Tipps/PHP+MySQL+Datenbank+Klasse+%28einfach+%26amp%3B+sicher%29/</guid>
<pubDate>Wed, 11 Oct 2023 13:27:44 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Top 5 Games Which Became Most Popular in 2023 – Detailed Review!]]></title> 
<description><![CDATA[As we enter in the final months of 2023, we can talk more clearly about the games that attracted the most attention. Some players are sticking to the ones that&hellip;
The post Top 5 Games Which Became Most Popular in 2023 &ndash; Detailed Review! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1893078/IT+Betriebssysteme/Web+Tipps/Top+5+Games+Which+Became+Most+Popular+in+2023+%E2%80%93+Detailed+Review%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893078/IT+Betriebssysteme/Web+Tipps/Top+5+Games+Which+Became+Most+Popular+in+2023+%E2%80%93+Detailed+Review%21/</guid>
<pubDate>Mon, 09 Oct 2023 16:34:06 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Docker Init Befehl: Docker Projekte automatisch erstellen]]></title> 
<description><![CDATA[Mit Docker Init kannst du im Handumdrehen ein Docker Projekt aufsetzen. Mit nur einem CLI Befehl docker init generierst du dir alles, was du ben&ouml;tigst. [&hellip;]
The post Docker Init Befehl: Docker Projekte automatisch erstellen appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1893079/IT+Betriebssysteme/Web+Tipps/Docker+Init+Befehl%3A+Docker+Projekte+automatisch+erstellen/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1893079/IT+Betriebssysteme/Web+Tipps/Docker+Init+Befehl%3A+Docker+Projekte+automatisch+erstellen/</guid>
<pubDate>Wed, 04 Oct 2023 13:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How redBus improved their website's Interaction to Next Paint (INP) and increased sales by 7%]]></title> 
<description><![CDATA[The web and its capabilities are evolving at a fast pace. You can now build rich and full-featured experiences on the web that can achieve much of what native applications can in terms of capabilities.
JavaScript is a primary driver for interactivity across the web, but if it&#039;s not used with care, interactions can feel sluggish, and lead users to perceive your website to be non-responsive or altogether broken. Thankfully, the Interaction to Next Paint (INP) metric was created to address this specific user experience problem.
INP measures all interactions made with a page during its lifecycle, and reports a single value that is representative of a website&#039;s speed in responding to user inputs. Simply put, if a page&#039;s INP is at or below the good threshold, all interactions made with a page can be said to be reliably fast.
redBus, a bus booking and ticketing website based in India, undertook a substantial effort to improve their website&#039;s INP, even during the time when it was still considered an experimental metric. As a result of their efforts, they were able to increase sales by 7%, illustrating once again the relationship between web performance and business health. Here&#039;s what redBus did to improve their website&#039;s INP.
Top goals #
When redBus set out to optimize their website&#039;s INP, they had three goals in mind:

Provide a better user experience for users by focusing on interaction latency regardless of network speed and device capabilities.
Optimize their website to keep interactions as fast as possible.
Ensure that responses from their API were as light as possible to ensure fast data transfer to the front end.

The journey #
redBus categorized interaction latency in two ways:

Interaction latency caused by blocking JavaScript on the client. When interactions use excessive JavaScript that blocks the main thread, rendering is delayed, and this affects a page&#039;s INP.
Network latency caused by API calls. While network activity is not something that INP measures, an interaction reliant on a call to a remote API can feel sluggish on slower networks, or if requests result in large responses.

redBus was initially quite confident that the INP for their website would be good, but the Real User Monitoring (RUM) data for this metric at the 95th percentile told a different story.
How redBus measured INP #
redBus relied on the web-vitals JavaScript library built by Google to track not just INP, but all important user experience metrics for all pages across their website. In addition to the web-vitals JavaScript library, redBus used ELK to analyze INP data that was collected on the front end.
However, how you track your website&#039;s INP in the field may be quite different from how redBus approached the problem. We highly recommend that you read about how to find slow interactions in the field to learn how to best to track INP for your websites, and subsequently how to reproduce them in the lab before you begin optimizing interactions.
Once redBus had a system in place for tracking INP, they were able to analyze the data in order to gain a better understanding of where slow interactivity was present.

  
  
    A screenshot of the logging system used by redBus to analyze INP values collected from the field. (Click for a higher resolution version of this image.)
  

Use cases #
When users search for fares on the redBus website, they can change the date on the search page to filter selected fares for the desired destination. The interaction to change the date on this page was slow, and was a cause of poor INP.
Additionally, when a user scrolls through fares, additional fares are lazy-loaded from the API. Though scrolling itself isn&#039;t factored in how INP is measured, the scroll event listener itself schedules a lot of work that must run on the main thread. This work was causing contention on the main thread that increased interaction latency, leading to poor INP on the search page.

  
    
  
  
    The lazy-loading behavior used to load additional fares from the API on scroll. (Click for a higher resolution version of this video.)
  

How redBus optimized INP for the search page #
To improve the search page&#039;s INP, redBus made several optimizations:

The scroll event handler was debounced in order to reduce the amount of times the event callback would fire in a given period. By lowering the frequency in which scroll event callback ran, the main thread was able to respond more quickly to user interactions on the search page.
The resulting rendering work was prioritized by using a requestAnimationFrame callback. requestAnimationFrame tells the browser that the work in the callback must be done before the next frame.


  
  
    Before: scroll handlers firing without debouncing applied to the event callback. A considerable number of blocking tasks on the main thread are present, which will delay interactions.
  


  
  
    After: scroll handlers firing with debouncing applied. The scroll event callbacks fire less frequently, giving the main thread more opportunities to respond to user interactions.
  

Additionally, the following further optimizations were made to the search results page:

New batches of results were fetched on the second to last card on the search results page in order to improve the user experience and visual performance by triggering lazy loading earlier.
Fewer results were fetched on each network call during lazy loading. By reducing fetches from 30 to 10 results, a reduction in INP ranges at 870 to 900 down to 350 to 370 were observed.


  
    
  
  
    The lazy-loading behavior used to load additional fares from the API on scroll. (Click for a higher resolution version of this video.)
  

While these changes significantly improved the INP of the search page, there was still the problem where the change event on the search page&#039;s input fields would call an expensive reducer function to update the user interface. This resulted in unnecessary rerendering of the user interface, which affected the page&#039;s INP.

  
    
  
  
    INP values reported in the console while the user types in an input field. The resulting INP value of 344 observed in a lab setting falls within the &quot;need improvement&quot; thresholds. (Click for a higher resolution version of this video.)
  

To optimize this interaction, redBus managed the state of input components locally and synced it with the Redux store only when an input&#039;s blur event was fired. This change reduced the number of rerenders and eliminated unwanted rerendering of the user interface by calling the reducer less frequently.

  
    
  
  
    Improved INP as a result of calling the reducer less frequently on an input field change. (Click for a higher resolution version of this video.)
  

With this change, the page&#039;s INP improved by 72%, resulting in a faster and smoother user experience that users are more likely to engage with.
Business impact #
The relationship between business health and page performance is well-known. Though INP is a relatively new metric compared to other Core Web Vitals, redBus observed better business outcomes by focusing on improving this important user-centric performance metric. The result was a 7% overall increase in sales.
In short, INP helped to paint a picture of runtime performance issues on the redBus website. With the knowledge that there were improvements to be made, redBus was able to observe the problem, reproduce it, and use that crucial information to make optimizations that were beneficial to redBus and its business. ]]></description>
<link>https://tsecurity.de/de/1886630/IT+Betriebssysteme/Web+Tipps/How+redBus+improved+their+website%27s+Interaction+to+Next+Paint+%28INP%29+and+increased+sales+by+7%25/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1886630/IT+Betriebssysteme/Web+Tipps/How+redBus+improved+their+website%27s+Interaction+to+Next+Paint+%28INP%29+and+increased+sales+by+7%25/</guid>
<pubDate>Wed, 10 May 2023 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Economic Times quest for fixing INP]]></title> 
<description><![CDATA[Interaction to Next Paint (INP) is a metric that assesses a website&#039;s responsiveness to user input. Good responsiveness means that a page is quick to respond to user interactions. The lower a page&#039;s INP is, the better it is able to respond to user interactions.

  .inp-mobile {
    display: inline;
  }

  .inp-desktop {
    display: none;
  }

  @media screen and (min-width: 640px) {
    .inp-mobile {
      display: none;
    }

    .inp-desktop {
      display: inline;
    }
  }


  .st0{fill:#2979FF} .st1{fill-rule:evenodd;clip-rule:evenodd;fill:#0CCE6B} .st2{fill:#191919} .st3{fill-rule:evenodd;clip-rule:evenodd;fill:#FFA400} .st4{fill-rule:evenodd;clip-rule:evenodd;fill:#FF4E42} @media screen and (prefers-color-scheme: light){.st2{fill:#191919}} [data-user-theme=light] .st2 {fill:#191919} @media screen and (prefers-color-scheme: dark){.st2{fill:#fff}} [data-user-theme=dark] .st2{fill:#fff}
  .st0{fill: #2979FF} v.st1{fill-rule: evenodd;clip-rule: evenodd;fill: #0CCE6B} .st2 {fill: #191919} .st3{fill-rule: evenodd;clip-rule: evenodd;fill: #FFA400} .st4{fill-rule: evenodd;clip-rule: evenodd;fill: #FF4E42} @media screen and (prefers-color-scheme: light){.st2{fill: #191919}} @media screen and (prefers-color-scheme: dark){.st2{fill: #fff}} [data-user-theme=dark] .st2{fill: #fff}

The fuzzy beginning #
When Google initially introduced INP as an experimental metric with the potential to evolve into one of the Core Web Vitals metrics, the Economic Times team took up the challenge to fix it before it graduates into one, since providing a world class user experience is crucial to our core business values.
INP has been one of the most difficult metrics to solve thus far. In the beginning, it was unclear on how to measure INP effectively. What made it more difficult was the lack of community support&mdash;including most Real User Monitoring (RUM) providers not supporting it yet. However, we had Google RUM tools like Chrome User Experience Report (CrUX), the web-vitals JavaScript library, and others supporting it, which gave us a sense of where we stood while we were evaluating the path ahead. Our INP was close to 1,000 milliseconds at the origin level when we started.
One thing that emerged while fixing INP in the field was that one of the lab metrics to target could be Total Blocking Time (TBT). TBT was already well documented and supported by the community. Despite already meeting the thresholds for Core Web Vitals, however, we weren&#039;t doing as well on the TBT front, as it was over 3 seconds when we began.
What is TBT, and what steps did we take to improve it? #
TBT is a lab metric that measures the responsiveness of a web page to user input during page load. Any task that takes more than 50 milliseconds to execute is considered a long task, and the time after the 50 millisecond threshold is known as the blocking time.
TBT is calculated by taking the sum of the blocking time of all long tasks during page load. For example, if there are two long tasks during load, the blocking time is determined as follows:

Task A takes 80 milliseconds (30 milliseconds more than 50 milliseconds).
Task B takes 100 milliseconds (50 milliseconds more than 50 milliseconds).

The page&#039;s TBT will be: 80 milliseconds (30 + 50). The lower the TBT, the better, and TBT also correlates well with INP.
Here&rsquo;s a quick lab comparison of our TBT before and after taking steps to improve it:

  
  
    The main thread during startup before optimizing TBT. The TBT is 3,260 milliseconds.
  


  
  
    The main thread during startup after optimizing TBT. The TBT is 120 milliseconds.
  

Minimize main thread work #
The browser&rsquo;s main thread handles everything from parsing HTML, building the DOM, to parsing CSS and applying styles, as well as evaluating and executing JavaScript. The main thread also handles user interactions&mdash;that is, click, tap, and keypresses. If the main thread is occupied with doing other work, it may not respond to user inputs efficiently, and may lead to a janky user experience.
This was the most difficult task for us, since we have our own algorithms to detect user identity for serving ads based on subscription status and third party scripts for A/B testing, analytics, and more.
We took small steps at first, such as de-prioritizing loading of less critical business assets. Second, we used requestIdleCallback for non-critical work, which can help to reduce TBT.
if (&#039;requestIdleCallback&#039; in window) {  this.requestIdleCallbackId = requestIdleCallback(fetchMarketsData.bind(this), {timeout: 3000});} else {  fetchMarketsData(); // Fallback in case requestIdleCallback is not supported}
Specifying a timeout is recommended when using requestIdleCallback, since it makes sure that if the given time is elapsed and the callback is not already been called, it executes the callback immediately after the timeout.
Minimize script evaluation time #
We also lazy loaded third party libraries using Loadable components. We also removed unused JavaScript and CSS by profiling the page with the coverage tool in Chrome DevTools. It helped us to identify areas where tree shaking was needed to ship less code during page load, and therefore reduce the initial bundle size of the application.

  

Reduce DOM size #
Per Lighthouse, large DOM sizes increase memory usage, causes longer style recalculations, and produces costly layout reflows.

  

We reduced the number of DOM nodes in two ways:

First, we rendered our menu items at the user&rsquo;s request (on click). It decreased the DOM size by around 1,200 nodes.
Second, we lazy loaded less important widgets.

Because of all these efforts, we reduced TBT significantly, and our INP was reduced accordingly by almost 50%:

  

At this point, we nearly ran out of easy wins to further reduce TBT (and INP by proxy), but we knew we had a lot of room for improvement. This is when we decided to upgrade our custom-built UI boilerplate to the latest version of React along with Next.js to make better use of hooks to avoid unnecessary re-rendering of components.
Due to more frequent updates and comparatively lesser traffic as compared to the other portions of the website, we began to migrate our topic pages to Next.js. We also used PartyTown for offloading additional heavy main thread work to web workers, along with techniques like requestIdleCallBack for deferring non-critical tasks.
How has improving INP helped The Economic Times? #
Current TBT and INP on origin #
At the time of publishing this post, the TBT for our origin was 120 milliseconds, down from 3,260 milliseconds when we began our optimization efforts. Similarly, the INP for our origin was 257 milliseconds after our optimization efforts, down from over 1,000 milliseconds.

  

INP CrUX trend #
The traffic received on topic pages represents a significantly smaller portion of overall traffic. Hence, it was an ideal place for experimentation. The CrUX results along with the business outcomes were very encouraging, and led us to expand our efforts across the entire website to reap further benefits.

  

Akamai mPulse TBT Analysis #
We use Akamai mPulse as our RUM solution, which measures TBT in the field. We observed a consistent decrease in TBT, clearly mapping to the outcomes of our efforts to reduce INP. As can be seen in the screenshot below, TBT values eventually dropped from approximately 5 seconds in to around 200 milliseconds in the field.

  

Business outcome #
Overall, our efforts to bring down TBT by 30 times, along with migrating to Next.js helped us reduce INP nearly by 4 times, which eventually led to a 50% decrease in bounce rate and 43% uplift in pageviews on topic pages.

  

Conclusion #
To summarize, INP extensively helped to determine runtime performance issues on parts of the Economic Times website. It has proven to be one of the most effective metrics to positively impact business outcomes. Due to the very encouraging numbers we&#039;ve observed as the result of this effort, we are motivated to scale our optimization efforts to other areas of our website and reap additional benefits. ]]></description>
<link>https://tsecurity.de/de/1886629/IT+Betriebssysteme/Web+Tipps/Economic+Times+quest+for+fixing+INP/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1886629/IT+Betriebssysteme/Web+Tipps/Economic+Times+quest+for+fixing+INP/</guid>
<pubDate>Wed, 10 May 2023 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[HP Cloud Stories: Power Of Cloud Computing Unveiled!]]></title> 
<description><![CDATA[Cloud computing is an amazing technology that can help businesses in many ways. In this article, we will explore the incredible benefits of cloud computing and how HP Helion, a&hellip;
The post HP Cloud Stories: Power Of Cloud Computing Unveiled! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1886628/IT+Betriebssysteme/Web+Tipps/HP+Cloud+Stories%3A+Power+Of+Cloud+Computing+Unveiled%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1886628/IT+Betriebssysteme/Web+Tipps/HP+Cloud+Stories%3A+Power+Of+Cloud+Computing+Unveiled%21/</guid>
<pubDate>Sun, 21 May 2023 13:42:06 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Building Your Own PC: A Step-by-Step Guide to Custom PC Building]]></title> 
<description><![CDATA[A custom PC build refers to the process of assembling a computer system from individual components according to your specific needs and preferences. Instead of buying a pre-built computer, building&hellip;
The post Building Your Own PC: A Step-by-Step Guide to Custom PC Building appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1886627/IT+Betriebssysteme/Web+Tipps/Building+Your+Own+PC%3A+A+Step-by-Step+Guide+to+Custom+PC+Building/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1886627/IT+Betriebssysteme/Web+Tipps/Building+Your+Own+PC%3A+A+Step-by-Step+Guide+to+Custom+PC+Building/</guid>
<pubDate>Sun, 21 May 2023 15:18:53 +0200</pubDate>
</item>
<item> 
<title><![CDATA[CSHAWK Acquired Desklitter.com: A Desk Organizer Store]]></title> 
<description><![CDATA[DeskLitter.com, the renowned online store catering to the needs of home workers, has recently been acquired by CyberspaceHawk.com, marking a significant milestone in the digital retail industry. The acquisition, finalized&hellip;
The post CSHAWK Acquired Desklitter.com: A Desk Organizer Store appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1886626/IT+Betriebssysteme/Web+Tipps/CSHAWK+Acquired+Desklitter.com%3A+A+Desk+Organizer+Store/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1886626/IT+Betriebssysteme/Web+Tipps/CSHAWK+Acquired+Desklitter.com%3A+A+Desk+Organizer+Store/</guid>
<pubDate>Tue, 23 May 2023 14:32:39 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Die Macht der KI: Wie dich ChatGPT als Developer unterstützen kann]]></title> 
<description><![CDATA[ChatGPT ist momentan der hei&szlig;e Schei&szlig; unter Entwicklern! In diesem Artikel zeige ich dir, wie du als Entwickler von diesem KI-Tool profitieren kannst. Mit praktischen [&hellip;]
The post Die Macht der KI: Wie dich ChatGPT als Developer unterst&uuml;tzen kann appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1885565/IT+Betriebssysteme/Web+Tipps/Die+Macht+der+KI%3A+Wie+dich+ChatGPT+als+Developer+unterst%C3%BCtzen+kann/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1885565/IT+Betriebssysteme/Web+Tipps/Die+Macht+der+KI%3A+Wie+dich+ChatGPT+als+Developer+unterst%C3%BCtzen+kann/</guid>
<pubDate>Sat, 15 Apr 2023 14:46:26 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Why Torrent Is Not Downloading? Fix Torrent Not Downloading!]]></title> 
<description><![CDATA[Torrent being very famous site where a user can download large size files quickly and efficiently. However, there are lot of speculations that are being made by the people that&hellip;
The post Why Torrent Is Not Downloading? Fix Torrent Not Downloading! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1878293/IT+Betriebssysteme/Web+Tipps/Why+Torrent+Is+Not+Downloading%3F+Fix+Torrent+Not+Downloading%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1878293/IT+Betriebssysteme/Web+Tipps/Why+Torrent+Is+Not+Downloading%3F+Fix+Torrent+Not+Downloading%21/</guid>
<pubDate>Mon, 24 Apr 2023 17:18:43 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox VS Fortnite | Find Out Who Wins This Fight!]]></title> 
<description><![CDATA[The popularity of Roblox is massively increasing. Along its rise it has also become the favorite platform for many of the gamers. Roblox is an interactive gaming platform. The platform&hellip;
The post Roblox VS Fortnite | Find Out Who Wins This Fight! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1877141/IT+Betriebssysteme/Web+Tipps/Roblox+VS+Fortnite+%7C+Find+Out+Who+Wins+This+Fight%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1877141/IT+Betriebssysteme/Web+Tipps/Roblox+VS+Fortnite+%7C+Find+Out+Who+Wins+This+Fight%21/</guid>
<pubDate>Sun, 23 Apr 2023 19:45:14 +0200</pubDate>
</item>
<item> 
<title><![CDATA[What Roblox Game Has The Most Visits?]]></title> 
<description><![CDATA[Roblox is a very popular platform among gamers. Thousands of games are present into the platform. Since the games present in Roblox is significantly high. Users really gets the privilege&hellip;
The post What Roblox Game Has The Most Visits? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1874089/IT+Betriebssysteme/Web+Tipps/What+Roblox+Game+Has+The+Most+Visits%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1874089/IT+Betriebssysteme/Web+Tipps/What+Roblox+Game+Has+The+Most+Visits%3F/</guid>
<pubDate>Thu, 20 Apr 2023 20:27:39 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Can Roblox IP Ban? Full Decoded Information!]]></title> 
<description><![CDATA[Roblox is a very popular gaming platform and it is also one of the favorite games for many. The platform has millions of games each having different features. Thousands of&hellip;
The post Can Roblox IP Ban? Full Decoded Information! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1863138/IT+Betriebssysteme/Web+Tipps/Can+Roblox+IP+Ban%3F+Full+Decoded+Information%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1863138/IT+Betriebssysteme/Web+Tipps/Can+Roblox+IP+Ban%3F+Full+Decoded+Information%21/</guid>
<pubDate>Wed, 12 Apr 2023 19:37:55 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox vs Minecraft : Which is Better And Why? [2023]]]></title> 
<description><![CDATA[Roblox and Minecraft are two products that ae hugely adapted by millions of people. The question of which one out of the two being best is the never-ending question that&hellip;
The post Roblox vs Minecraft : Which is Better And Why? [2023] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1863137/IT+Betriebssysteme/Web+Tipps/Roblox+vs+Minecraft+%3A+Which+is+Better+And+Why%3F+%5B2023%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1863137/IT+Betriebssysteme/Web+Tipps/Roblox+vs+Minecraft+%3A+Which+is+Better+And+Why%3F+%5B2023%5D/</guid>
<pubDate>Wed, 12 Apr 2023 19:43:35 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How Slow Roads intrigues gamers and developers alike, spotlighting the surprising capabilities of 3D in the browser]]></title> 
<description><![CDATA[Slow Roads is a casual driving game with an emphasis on endlessly procedurally generated scenery, all
hosted in the browser as a WebGL application. For many, such an intensive
experience might seem out of place in the limited context of the browser&mdash;and indeed, redressing that attitude has been one of my
goals with this project. In this article I&#039;ll be breaking down some of the techniques I used to navigate the performance hurdle in
my mission to highlight the oft-overlooked potential of 3D in the web.
3D development in the browser #
After releasing Slow Roads, I saw a recurring comment in the feedback: &quot;I didn&#039;t know this was possible in the browser&quot;. If
you share this sentiment, you&#039;re certainly not a minority; according to the 2022 State of JS
survey, some 80% of developers have yet to experiment with WebGL. To me, it feels something of a shame that so much potential
might be missed, especially when it comes to browser-based gaming. With Slow Roads I hope to bring WebGL further into the limelight,
and perhaps reduce the number of developers who balk at the phrase &quot;high-performance JavaScript game engine&quot;.
WebGL may seem mysterious and complex for many, but in recent years its development ecosystems have greatly matured into highly
capable and convenient tools and libraries. It&#039;s now easier than ever for front-end developers to incorporate 3D UX into their
work, even without prior experience in computer graphics. Three.js, the leading WebGL library, serves
as the foundation for many expansions, including react-three-fiber which brings 3D components into the React framework. There
are now also comprehensive web-based game editors such as Babylon.js or PlayCanvas
which offer a familiar interface and integrated toolchains.
Despite the remarkable utility of these libraries, however, ambitious projects are eventually bound by technical limitations. Skeptics
to the idea of browser-based gaming might highlight that JavaScript is single-threaded and resource-constrained. But navigating
these limitations unlocks the hidden value: no other platform offers the same instant accessibility and mass compatibility
enabled by the browser. Users on any browser-capable system can begin playing in one click, with no need to install applications
and no need to sign in to services. Not to mention that developers enjoy the elegant convenience of having robust front-end frameworks
available for building UI, or handling networking for multiplayer modes. These values, in my opinion, are what make the browser such an
excellent platform for both players and developers alike&mdash;and, as demonstrated by Slow Roads, the technical limitations might often be
reducible to a design problem.
Achieving smooth performance in Slow Roads #
Since the core elements of Slow Roads involve high-speed motion and expensive scenery generation, the need for smooth performance
underlined my every design decision. My main strategy was to start with a pared-down gameplay design that allowed for contextual
short-cuts to be taken within the engine&#039;s architecture. On the downside this means trading off some nice-to-have features in the
pursuit of minimalism, but results in a bespoke, hyper-optimized system that plays nicely across different browsers and devices.
Here follows a breakdown of the key components that keep Slow Roads lean.
Shaping the environment engine around the gameplay #
As the key component of the game, the environment generation engine is unavoidably expensive, justifiably taking the greatest
proportion of the budgets for memory and compute. The trick used here is in scheduling and distributing the heavy computation over
a period of time, so as not to interrupt the framerate with performance spikes.
 At its core, a game engine is an infinite while loop which reads user input, updates the world state, and then renders the image for the frame. This loop runs at the refresh rate of the monitor (typically 60 Hz), so any computation happening within it needs to complete within the given frame time to avoid causing visible stutters. 
The environment is composed of tiles of geometry, differing in size and resolution (categorized as &quot;levels of detail&quot; or LoDs)
depending on how close they will appear to the camera. In typical games with a free-roaming camera, different LoDs must be constantly
loaded and unloaded to detail the player&#039;s surroundings wherever they may choose to go. This can be an expensive and wasteful operation,
especially when the environment itself is dynamically generated. Fortunately, this convention can be entirely subverted in Slow Roads
thanks to the contextual expectation that the user should stay on the road. Instead, high-detail geometry can be reserved for the narrow
corridor directly flanking the route.

  
  
    A view of the environment geometry in Slow Roads rendered as a wireframe, indicating corridors of high-resolution geometry flanking the road. Distant portions of the environment, which should never be seen up close, are rendered at a much lower resolution.
  

The midline of the road itself is generated far ahead of the player&#039;s arrival, allowing for accurate prediction of exactly
when and where the environment detail will be needed. The result is a lean system that can proactively schedule expensive work,
generating just the minimum needed at each point in time, and with no wasted effort on details that won&#039;t be seen. This technique
is only possible because the road is a single, non-branching path&mdash;a good example of making gameplay trade-offs that accommodate
architectural short-cuts.

  
  
    By looking a certain distance along the road, environment chunks can be pre-empted and generated gradually just before they&#039;re needed. Additionally, any chunks that will be revisited in the near future can be identified and cached to avoid unnecessary regeneration.
  

Being picky with the laws of physics #
Second to the computational demand of the environment engine is the physics simulation. Slow Roads uses a custom, minimal physics engine which takes every short-cut available.
 Physics engines are hard, but thankfully many excellent libraries exist to streamline the process. Custom implementations are necessary in extreme cases, but libraries like cannon.js are increasingly covering more bases. 
The major saving here is to avoid simulating too many objects in the first place&mdash;leaning into the minimal, zen context by
discounting things like dynamic collisions and destructible objects. The assumption that the vehicle will stay on the road
means that collisions with off-road objects can reasonably be ignored. Additionally, the encoding of the road as a sparse
midline enables elegant tricks for fast collision detection with the road surface and guard rails, all based on a distance
check to the road&#039;s center. Off-road driving then becomes more expensive, but this is another example of a fair trade-off
suited to the context of the gameplay.
Managing the memory footprint #
As another browser-restrained resource, it&#039;s important to manage memory with care&mdash;despite the fact JavaScript is
garbage-collected. It can be easy to overlook, but declaring even small amounts of new memory within a game loop can snowball
into significant issues when running at 60Hz. Besides eating up the user&#039;s resources in a context where they&#039;re likely multitasking,
large garbage collections can take several frames to complete, causing noticeable stutters. To avoid this, loop memory can be
pre-allocated in class variables at initialisation and recycled in each frame.

  
  
    While the overall memory utilization is barely changed, pre-allocating and recycling loop memory can greatly reduce the impact of expensive garbage collections.
  

It&#039;s also highly important that heavier data structures, such as geometries and their associated data buffers, are managed economically. In an infinitely-generated game like Slow Roads, most of the geometry exists on a sort of treadmill - once an old piece falls behind into the distance, its data structures can be stored and recycled again for an upcoming piece of the world, a design pattern known as object pooling.
These practices help to prioritize lean execution, with the sacrifice of some code simplicity. In high-performance contexts it&#039;s
important to be mindful of how convenience features sometimes borrow from the client for the benefit of the developer. For example, methods
like Object.keys() or Array.map() are incredibly handy, but it&#039;s easy to overlook that each creates a new array for their return
value. Understanding the inner workings of such black-boxes can help to tighten up your code and avoid sneaky performance hits.
Reducing load time with procedurally-generated assets #
While runtime performance should be the primary concern for game developers, the usual axioms concerning initial web page load time still
hold true. Users may be more forgiving when knowingly accessing heavy content, but long load times can still be detrimental to the experience,
if not user retention. Games often require large assets in the form of textures, sounds, and 3D models, and at a minimum these should be carefully
compressed wherever detail can be spared.
    Important Be sure to use the appropriate formats for your assets&mdash;converting all of the images to WebP format halved the Slow Roads bundle size with barely a perceptible difference in quality. 
Alternatively, procedurally generating assets on the client can avoid lengthy transfers in the first place. This is a huge benefit for users on slow connections,
and gives the developer more direct control over how their game is constituted&mdash;not just for the initial loading step, but also when it comes to adapting levels
of details for different quality settings.

Most of the geometry in Slow Roads is procedurally generated and simplistic, with custom shaders combining multiple textures to bring the detail.
The drawback is that these textures can be heavy assets, though there are further opportunities for savings here, with methods such as stochastic
texturing able to achieve greater detail from small source textures. And at an extreme level, it&#039;s also possible to generate textures entirely on the client with tools such as texgen.js. The same is even true for audio, with the Web Audio API allowing for sound generation with audio nodes.
With the benefit of procedural assets, generating the initial environment takes just 3.2 seconds on average. To best take advantage of
the small up-front download size, a simple splash screen greets new visitors and postpones the expensive scene initialisation until
after an affirmative button press. This also acts as a convenient buffer for bounced sessions, minimizing wasted transfer of dynamically-loaded
assets.

Taking an agile approach to late optimization #
I&#039;ve always considered the codebase for Slow Roads to be experimental, and as such have taken a fiercely agile approach to
development. When working with a complex and rapidly-evolving system architecture, it can be difficult to predict where the
important bottlenecks may occur. The focus should be on implementing the desired features quickly, rather than cleanly, and
then working backwards to optimize systems where it really counts. The performance profiler in Chrome DevTools is invaluable
for this step, and has helped me to diagnose some major issues with earlier versions of the game. Your time as a developer is
valuable, so be sure you aren&#039;t spending time deliberating over problems that may prove insignificant or redundant.
Monitoring the user experience #
While implementing all of these tricks, it&#039;s important to be sure the game performs as expected in the wild. Accommodating
a range of hardware capabilities is a staple aspect of any game development, but web games can target a much broader spectrum
comprising both top-end desktops and decade-old mobile devices at once. The simplest way to approach this is by offering settings
for adapting the most likely bottlenecks in your codebase&mdash;for both GPU- and CPU-intensive tasks&mdash;as revealed by your profiler.
Profiling on your own machine can only cover so much, however, so it&#039;s valuable to close the feedback loop with your users in
some way. For Slow Roads I run simple analytics which report on performance along with contextual factors such as screen resolution.
These analytics are sent to a basic Node backend using socket.io, along with any written feedback the user submits via the in-game
form. In the early days, these analytics caught a lot of important issues that could be mitigated with simple changes to the UX,
such as highlighting the settings menu when a consistently low FPS is detected, or warning that a user may need to enable hardware
acceleration if the performance is particularly poor.
The slow roads ahead #
Even after taking all of these measures, there remains a significant portion of the player base that needs to play on lower
settings&mdash;primarily those using lightweight devices which lack a GPU. While the range of quality settings available leads to a
fairly even performance distribution, only 52% of players achieve above 55 FPS.

  
  
    Note that this data is somewhat skewed by users who run their browser with hardware acceleration disabled, often causing artificially low performance.
  

Fortunately, there are still many opportunities for making performance savings. Alongside adding further rendering tricks
to reduce GPU demand, I hope to experiment with web workers in parallelising the environment generation in the near term,
and may eventually see a need for incorporating WASM or WebGPU into the codebase. Any headroom I&#039;m able to free up will allow
for richer and more diverse environments, which will be the enduring goal for the remainder of the project.
As hobby projects go, Slow Roads has been an overwhelmingly fulfilling way to demonstrate how surprisingly elaborate, performant,
and popular browser games can be. If I&#039;ve been successful in piquing your interest in WebGL, know that technologically Slow
Roads is a fairly shallow example of its full capabilities. I strongly encourage readers to explore the Three.js showcase,
and those interested in web game development in particular would be welcome to the community at webgamedev.com. ]]></description>
<link>https://tsecurity.de/de/1856286/IT+Betriebssysteme/Web+Tipps/How+Slow+Roads+intrigues+gamers+and+developers+alike%2C+spotlighting+the+surprising+capabilities+of+3D+in+the+browser/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1856286/IT+Betriebssysteme/Web+Tipps/How+Slow+Roads+intrigues+gamers+and+developers+alike%2C+spotlighting+the+surprising+capabilities+of+3D+in+the+browser/</guid>
<pubDate>Tue, 11 Apr 2023 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Progressive Web Apps: So erstellst du deine eigene PWA]]></title> 
<description><![CDATA[Eine Progressive Web App (PWA) ist eine Form von mobilen Anwendungen, die sich durch schnelle Ladezeiten, Offline-Funktionalit&auml;t und eine optimierte Benutzererfahrung auszeichnen. Als eine Art [&hellip;]
The post Progressive Web Apps: So erstellst du deine eigene PWA appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1854905/IT+Betriebssysteme/Web+Tipps/Progressive+Web+Apps%3A+So+erstellst+du+deine+eigene+PWA/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1854905/IT+Betriebssysteme/Web+Tipps/Progressive+Web+Apps%3A+So+erstellst+du+deine+eigene+PWA/</guid>
<pubDate>Sun, 09 Apr 2023 16:30:40 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Are Roblox Private Servers Permanent? 3 Minute Guide!]]></title> 
<description><![CDATA[Roblox Private Server being permanent is a query that many Roblox users might have. Unlike client servers that remain for an infinite time, private servers run only for a limited&hellip;
The post Are Roblox Private Servers Permanent? 3 Minute Guide! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1846259/IT+Betriebssysteme/Web+Tipps/Are+Roblox+Private+Servers+Permanent%3F+3+Minute+Guide%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1846259/IT+Betriebssysteme/Web+Tipps/Are+Roblox+Private+Servers+Permanent%3F+3+Minute+Guide%21/</guid>
<pubDate>Sun, 02 Apr 2023 16:47:35 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Why Roblox is Not Working? Reasons Explained!]]></title> 
<description><![CDATA[Well, you might not be very familiar with Roblox interruptions. There has been instances where issues like Roblox not working have been noticed by some of the users. Roblox being&hellip;
The post Why Roblox is Not Working? Reasons Explained! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1846258/IT+Betriebssysteme/Web+Tipps/Why+Roblox+is+Not+Working%3F+Reasons+Explained%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1846258/IT+Betriebssysteme/Web+Tipps/Why+Roblox+is+Not+Working%3F+Reasons+Explained%21/</guid>
<pubDate>Sun, 02 Apr 2023 16:49:48 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Will Roblox Shutdown In 2023? Details Revealed!]]></title> 
<description><![CDATA[Roblox since its release from 2006 have come a long way. It is widely adopted and have millions of users presently. Due to this magnificently huge number of users in&hellip;
The post Will Roblox Shutdown In 2023? Details Revealed! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1845497/IT+Betriebssysteme/Web+Tipps/Will+Roblox+Shutdown+In+2023%3F+Details+Revealed%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1845497/IT+Betriebssysteme/Web+Tipps/Will+Roblox+Shutdown+In+2023%3F+Details+Revealed%21/</guid>
<pubDate>Sat, 01 Apr 2023 19:20:58 +0200</pubDate>
</item>
<item> 
<title><![CDATA[What Roblox Game, Baller is From? Full Info!]]></title> 
<description><![CDATA[Roblox Baller is a boss character in online video game on Roblox called &ldquo;Boss fighting Stages Rebirth&rdquo;. In the game, player throws dodgeballs to attack the opponents. Roblox Baller became&hellip;
The post What Roblox Game, Baller is From? Full Info! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1844366/IT+Betriebssysteme/Web+Tipps/What+Roblox+Game%2C+Baller+is+From%3F+Full+Info%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1844366/IT+Betriebssysteme/Web+Tipps/What+Roblox+Game%2C+Baller+is+From%3F+Full+Info%21/</guid>
<pubDate>Fri, 31 Mar 2023 17:38:57 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Where Are APK Files Stored on Android? Updated OS Edition!]]></title> 
<description><![CDATA[There are lot of users who might want to know the location of APK files stored on their android device. Since there are lot of APK files in a user&rsquo;s&hellip;
The post Where Are APK Files Stored on Android? Updated OS Edition! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1836075/IT+Betriebssysteme/Web+Tipps/Where+Are+APK+Files+Stored+on+Android%3F+Updated+OS+Edition%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1836075/IT+Betriebssysteme/Web+Tipps/Where+Are+APK+Files+Stored+on+Android%3F+Updated+OS+Edition%21/</guid>
<pubDate>Sat, 25 Mar 2023 18:42:07 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How Roblox Was Made? 3 Minutes Story!]]></title> 
<description><![CDATA[Roblox was created by Roblox corporation. The game was launched in 2006.&nbsp; Its founders were David Baszuck and Erik Cassel. It is a gaming platform which has many cool features.&hellip;
The post How Roblox Was Made? 3 Minutes Story! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1821463/IT+Betriebssysteme/Web+Tipps/How+Roblox+Was+Made%3F+3+Minutes+Story%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1821463/IT+Betriebssysteme/Web+Tipps/How+Roblox+Was+Made%3F+3+Minutes+Story%21/</guid>
<pubDate>Mon, 13 Mar 2023 19:24:50 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Which Roblox Game Has Most Views? Full Analysis!]]></title> 
<description><![CDATA[Roblox is a very popular platform among gamers. Thousands of games are present into the platform. Since, the games present in Roblox is significantly high. Therefore, Users really gets the&hellip;
The post Which Roblox Game Has Most Views? Full Analysis! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1821464/IT+Betriebssysteme/Web+Tipps/Which+Roblox+Game+Has+Most+Views%3F+Full+Analysis%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1821464/IT+Betriebssysteme/Web+Tipps/Which+Roblox+Game+Has+Most+Views%3F+Full+Analysis%21/</guid>
<pubDate>Mon, 13 Mar 2023 19:20:35 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Why FreeFire Is Not Downloading In My Mobile? Easy FIX!]]></title> 
<description><![CDATA[Free fire is considered to be the best battle royale game presently available. The app consists of millions of users across the globe. Free fire can be played on multiple&hellip;
The post Why FreeFire Is Not Downloading In My Mobile? Easy FIX! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1810108/IT+Betriebssysteme/Web+Tipps/Why+FreeFire+Is+Not+Downloading+In+My+Mobile%3F+Easy+FIX%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1810108/IT+Betriebssysteme/Web+Tipps/Why+FreeFire+Is+Not+Downloading+In+My+Mobile%3F+Easy+FIX%21/</guid>
<pubDate>Sun, 05 Mar 2023 17:33:09 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Can Roblox be Played on Xbox? Full Tutorial [Updated]]]></title> 
<description><![CDATA[Roblox is an online gaming platform that lets users play games and create games that are to be played by another users. It certainly lets the users to use their&hellip;
The post Can Roblox be Played on Xbox? Full Tutorial [Updated] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1810109/IT+Betriebssysteme/Web+Tipps/Can+Roblox+be+Played+on+Xbox%3F+Full+Tutorial+%5BUpdated%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1810109/IT+Betriebssysteme/Web+Tipps/Can+Roblox+be+Played+on+Xbox%3F+Full+Tutorial+%5BUpdated%5D/</guid>
<pubDate>Sun, 26 Feb 2023 19:05:53 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Which FreeFire Server is Best? Latest Analysis]]></title> 
<description><![CDATA[Free fire is a battle royale game. The number of users the game has is massive. Millions of people from every corner of the world gather daily to play Free&hellip;
The post Which FreeFire Server is Best? Latest Analysis appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1810110/IT+Betriebssysteme/Web+Tipps/Which+FreeFire+Server+is+Best%3F+Latest+Analysis/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1810110/IT+Betriebssysteme/Web+Tipps/Which+FreeFire+Server+is+Best%3F+Latest+Analysis/</guid>
<pubDate>Sun, 26 Feb 2023 19:01:19 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Top 7 Fiction Books to Read on ZLibrary [2023]]]></title> 
<description><![CDATA[Reading is an activity that doesn&rsquo;t require much effort or special skills. Anyone can read. It&rsquo;s a rewarding experience and offers several benefits, including stress reduction and vocabulary enhancement. If&hellip;
The post Top 7 Fiction Books to Read on ZLibrary [2023] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1810111/IT+Betriebssysteme/Web+Tipps/Top+7+Fiction+Books+to+Read+on+ZLibrary+%5B2023%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1810111/IT+Betriebssysteme/Web+Tipps/Top+7+Fiction+Books+to+Read+on+ZLibrary+%5B2023%5D/</guid>
<pubDate>Fri, 24 Feb 2023 18:22:55 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Top 5 Websites to Visit Online When You Are Bored ]]></title> 
<description><![CDATA[When you have nothing better to do and don&rsquo;t have the energy to go out with your friends, all you want to do is mindlessly scroll through the web. But&hellip;
The post Top 5 Websites&nbsp;to&nbsp;Visit&nbsp;Online&nbsp;When&nbsp;You&nbsp;Are&nbsp;Bored&nbsp; appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1810112/IT+Betriebssysteme/Web+Tipps/Top+5+Websites%C2%A0to%C2%A0Visit%C2%A0Online%C2%A0When%C2%A0You%C2%A0Are%C2%A0Bored%C2%A0/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1810112/IT+Betriebssysteme/Web+Tipps/Top+5+Websites%C2%A0to%C2%A0Visit%C2%A0Online%C2%A0When%C2%A0You%C2%A0Are%C2%A0Bored%C2%A0/</guid>
<pubDate>Fri, 24 Feb 2023 18:03:34 +0100</pubDate>
</item>
<item> 
<title><![CDATA[What is Freefire Hack? Download Latest Mod Game Apk]]></title> 
<description><![CDATA[Free fire is definitely one of the games that is played by millions. It is considered one of the best battle royale game presently.Gamers invest their time to level up&hellip;
The post What is Freefire Hack? Download Latest Mod Game Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1806505/IT+Betriebssysteme/Web+Tipps/What+is+Freefire+Hack%3F+Download+Latest+Mod+Game+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1806505/IT+Betriebssysteme/Web+Tipps/What+is+Freefire+Hack%3F+Download+Latest+Mod+Game+Apk/</guid>
<pubDate>Tue, 21 Feb 2023 19:50:48 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Where Freefire is Made? Origin of FreeFire + History]]></title> 
<description><![CDATA[Free fire, a battle royale game that is enormously popular and is very addictive to many of its users. An assumed belief of whether or not it is a Chinese&hellip;
The post Where Freefire is Made? Origin of FreeFire + History appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1803624/IT+Betriebssysteme/Web+Tipps/Where+Freefire+is+Made%3F+Origin+of+FreeFire+%2B+History/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1803624/IT+Betriebssysteme/Web+Tipps/Where+Freefire+is+Made%3F+Origin+of+FreeFire+%2B+History/</guid>
<pubDate>Sun, 19 Feb 2023 19:09:03 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Can FreeFire Max Be Downloaded? 3 Minutes Tutorial]]></title> 
<description><![CDATA[Yes, Free Fire max can be downloaded. It is publicly made accessible to all. But before knowing the process of downloading, let us fist learn more about Free fire max.&hellip;
The post Can FreeFire Max Be Downloaded? 3 Minutes Tutorial appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1803625/IT+Betriebssysteme/Web+Tipps/Can+FreeFire+Max+Be+Downloaded%3F+3+Minutes+Tutorial/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1803625/IT+Betriebssysteme/Web+Tipps/Can+FreeFire+Max+Be+Downloaded%3F+3+Minutes+Tutorial/</guid>
<pubDate>Sun, 19 Feb 2023 19:04:23 +0100</pubDate>
</item>
<item> 
<title><![CDATA[50+ Working Free Hulu Accounts – Full Tutorial + UPDATED]]></title> 
<description><![CDATA[If you are looking for similar products like Netflix or Amazon prime, then it might not be a bad idea to try out Hulu. It is one of the prime&hellip;
The post 50+ Working Free Hulu Accounts &ndash; Full Tutorial + UPDATED appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1802996/IT+Betriebssysteme/Web+Tipps/50%2B+Working+Free+Hulu+Accounts+%E2%80%93+Full+Tutorial+%2B+UPDATED/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1802996/IT+Betriebssysteme/Web+Tipps/50%2B+Working+Free+Hulu+Accounts+%E2%80%93+Full+Tutorial+%2B+UPDATED/</guid>
<pubDate>Sat, 18 Feb 2023 20:27:47 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Will FreeFire Return in India? Detailed Analysis!]]></title> 
<description><![CDATA[Return of Free Fire in India is what the players are expecting for a significant period till now. However, predicting whether free fire app will return to India or not&hellip;
The post Will FreeFire Return in India? Detailed Analysis! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1802997/IT+Betriebssysteme/Web+Tipps/Will+FreeFire+Return+in+India%3F+Detailed+Analysis%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1802997/IT+Betriebssysteme/Web+Tipps/Will+FreeFire+Return+in+India%3F+Detailed+Analysis%21/</guid>
<pubDate>Sat, 18 Feb 2023 20:05:55 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Pokemon Go Like Games – Top 5 Similar Games Like Pokemon [Updated]]]></title> 
<description><![CDATA[If you like playing Pokemon Go than you might not mind trying out the games that can be the best substitute for Pokemon Go. Here are top 5 similar games&hellip;
The post Pokemon Go Like Games &ndash; Top 5 Similar Games Like Pokemon [Updated] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1799155/IT+Betriebssysteme/Web+Tipps/Pokemon+Go+Like+Games+%E2%80%93+Top+5+Similar+Games+Like+Pokemon+%5BUpdated%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1799155/IT+Betriebssysteme/Web+Tipps/Pokemon+Go+Like+Games+%E2%80%93+Top+5+Similar+Games+Like+Pokemon+%5BUpdated%5D/</guid>
<pubDate>Wed, 15 Feb 2023 19:49:35 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How to Tame a Cat in Minecraft? Full Updated Tutorial!]]></title> 
<description><![CDATA[If you want to have a friend in Minecraft that will follow you anywhere and obey your orders, then taming a stray cat might not be a bad option. Here&hellip;
The post How to Tame a Cat in Minecraft? Full Updated Tutorial! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1799001/IT+Betriebssysteme/Web+Tipps/How+to+Tame+a+Cat+in+Minecraft%3F+Full+Updated+Tutorial%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1799001/IT+Betriebssysteme/Web+Tipps/How+to+Tame+a+Cat+in+Minecraft%3F+Full+Updated+Tutorial%21/</guid>
<pubDate>Wed, 15 Feb 2023 19:37:43 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How to Make Lanterns in Minecraft? Full Tutorial]]></title> 
<description><![CDATA[Minecraft being a very popular game is worth spending time on. Lanterns in Minecraft will obviously give certain provisions to the user to his advantage. Lantern becomes extremely important in&hellip;
The post How to Make Lanterns in Minecraft? Full Tutorial appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1797013/IT+Betriebssysteme/Web+Tipps/How+to+Make+Lanterns+in+Minecraft%3F+Full+Tutorial/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1797013/IT+Betriebssysteme/Web+Tipps/How+to+Make+Lanterns+in+Minecraft%3F+Full+Tutorial/</guid>
<pubDate>Tue, 14 Feb 2023 17:44:38 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How to make lead in Minecraft – Updated FULL Tutorial]]></title> 
<description><![CDATA[Minecraft being a very popular game is a very exciting and worth spending time on. Lead in Minecraft facilitates the player to explore new fun in game horizons. Here is&hellip;
The post How to make lead in Minecraft &ndash; Updated FULL Tutorial appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1795543/IT+Betriebssysteme/Web+Tipps/How+to+make+lead+in+Minecraft+%E2%80%93+Updated+FULL+Tutorial/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1795543/IT+Betriebssysteme/Web+Tipps/How+to+make+lead+in+Minecraft+%E2%80%93+Updated+FULL+Tutorial/</guid>
<pubDate>Mon, 13 Feb 2023 19:02:45 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Arceus X Mod – Download Best Roblox Mod Menu Hack]]></title> 
<description><![CDATA[There are many different Roblox hacks present freely on the internet, multiple hacks are also created because each Roblox hack promises of offering solutions to different problems. Arceus X is&hellip;
The post Arceus X Mod &ndash; Download Best Roblox Mod Menu Hack appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1794972/IT+Betriebssysteme/Web+Tipps/Arceus+X+Mod+%E2%80%93+Download+Best+Roblox+Mod+Menu+Hack/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1794972/IT+Betriebssysteme/Web+Tipps/Arceus+X+Mod+%E2%80%93+Download+Best+Roblox+Mod+Menu+Hack/</guid>
<pubDate>Mon, 13 Feb 2023 18:57:22 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Mobdro APK Download – Latest App For Android [2023]]]></title> 
<description><![CDATA[Mobdro is an online video streaming app built for android. It lets you stream videos for free. It is known for its different genres of content. Mobdro also has many&hellip;
The post Mobdro APK Download &ndash; Latest App For Android [2023] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1792975/IT+Betriebssysteme/Web+Tipps/Mobdro+APK+Download+%E2%80%93+Latest+App+For+Android+%5B2023%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1792975/IT+Betriebssysteme/Web+Tipps/Mobdro+APK+Download+%E2%80%93+Latest+App+For+Android+%5B2023%5D/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Summoners War Mod Menu – Download Latest Hack Game]]></title> 
<description><![CDATA[Summoners war mod menu is a role playing game. It is one of the top most popular game. Since, its launch its user base constantly is seeking to grow. Summoners&hellip;
The post Summoners War Mod Menu &ndash; Download Latest Hack Game appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1792976/IT+Betriebssysteme/Web+Tipps/Summoners+War+Mod+Menu+%E2%80%93+Download+Latest+Hack+Game/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1792976/IT+Betriebssysteme/Web+Tipps/Summoners+War+Mod+Menu+%E2%80%93+Download+Latest+Hack+Game/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Dragon City APK – Download Latest Gaming App]]></title> 
<description><![CDATA[Dragon city is a free online multiplayer social simulation game. It is one of the many popular game playable in multiple platforms. Dragon City is one of the most engaging&hellip;
The post Dragon City APK &ndash; Download Latest Gaming App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1792202/IT+Betriebssysteme/Web+Tipps/Dragon+City+APK+%E2%80%93+Download+Latest+Gaming+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1792202/IT+Betriebssysteme/Web+Tipps/Dragon+City+APK+%E2%80%93+Download+Latest+Gaming+App/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Appmuck – Download Latest App for Android APK]]></title> 
<description><![CDATA[Appmuck is a site people get in to search modified apps. It is a very well known source for downloading mod apps. The site consists of more than hundred mod&hellip;
The post Appmuck &ndash; Download Latest App for Android APK appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1792203/IT+Betriebssysteme/Web+Tipps/Appmuck+%E2%80%93+Download+Latest+App+for+Android+APK/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1792203/IT+Betriebssysteme/Web+Tipps/Appmuck+%E2%80%93+Download+Latest+App+for+Android+APK/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Kahoot Cheat – How to cheat on Kahoot? Full Tutorial!]]></title> 
<description><![CDATA[Kahoot is a learning-based game paltform. It is one form of education but represented more interestingly. The features Kahoot offers really make it to stand out of many similar products.&hellip;
The post Kahoot Cheat &ndash; How to cheat on Kahoot? Full Tutorial! appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1790155/IT+Betriebssysteme/Web+Tipps/Kahoot+Cheat+%E2%80%93+How+to+cheat+on+Kahoot%3F+Full+Tutorial%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1790155/IT+Betriebssysteme/Web+Tipps/Kahoot+Cheat+%E2%80%93+How+to+cheat+on+Kahoot%3F+Full+Tutorial%21/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Clash Royale Hacked – Download Latest Game APK]]></title> 
<description><![CDATA[Clash Royale is a multiplayer real-time, head-to-head battle game. It is one of the most popular games. It is needed to be played tactfully implementing various strategies. Since, with its&hellip;
The post Clash Royale Hacked &ndash; Download Latest Game APK appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1790156/IT+Betriebssysteme/Web+Tipps/Clash+Royale+Hacked+%E2%80%93+Download+Latest+Game+APK/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1790156/IT+Betriebssysteme/Web+Tipps/Clash+Royale+Hacked+%E2%80%93+Download+Latest+Game+APK/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[1v1.lol Unblocked – Unblock Gaming Website [2023]]]></title> 
<description><![CDATA[1v1.lol is a multiplayer third Person shooter game. It is the successor of the very popular Just Build lol. It is intended to hone your gaming skills for many battle&hellip;
The post 1v1.lol Unblocked &ndash; Unblock Gaming Website [2023] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1789184/IT+Betriebssysteme/Web+Tipps/1v1.lol+Unblocked+%E2%80%93+Unblock+Gaming+Website+%5B2023%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1789184/IT+Betriebssysteme/Web+Tipps/1v1.lol+Unblocked+%E2%80%93+Unblock+Gaming+Website+%5B2023%5D/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Free Fire Advance Server – Download Latest Apk]]></title> 
<description><![CDATA[An app that will give you in-game rewards. An app that will give you hands on first impressions on new features. Well, that is what Free Fire Advance is created&hellip;
The post Free Fire Advance Server &ndash; Download Latest Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1789109/IT+Betriebssysteme/Web+Tipps/Free+Fire+Advance+Server+%E2%80%93+Download+Latest+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1789109/IT+Betriebssysteme/Web+Tipps/Free+Fire+Advance+Server+%E2%80%93+Download+Latest+Apk/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Emergence of Cloud Management Dominating It Conventional Infrastructure]]></title> 
<description><![CDATA[The cloud is considered a cornerstone of the future technological landscape. Midway through the 2010s, the cloud became the de facto location for most if not all infrastructure, data center,&hellip;
The post Emergence of Cloud Management Dominating It Conventional Infrastructure appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1784610/IT+Betriebssysteme/Web+Tipps/Emergence+of+Cloud+Management+Dominating+It+Conventional+Infrastructure/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1784610/IT+Betriebssysteme/Web+Tipps/Emergence+of+Cloud+Management+Dominating+It+Conventional+Infrastructure/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[5 Advanced Tips and Tricks -Rainbow Six Siege]]></title> 
<description><![CDATA[Rainbow Six Siege now rivals the acclaimed Call of Duty series as one of the most popular first-person shooters. Its popularity is well-deserved since it is the most tactical shooter&hellip;
The post 5 Advanced Tips and Tricks -Rainbow Six Siege appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1784611/IT+Betriebssysteme/Web+Tipps/5+Advanced+Tips+and+Tricks+-Rainbow+Six+Siege/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1784611/IT+Betriebssysteme/Web+Tipps/5+Advanced+Tips+and+Tricks+-Rainbow+Six+Siege/</guid>
<pubDate>Tue, 07 Feb 2023 00:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Top 10 Countries That Are the Largest Adopters of Crypto]]></title> 
<description><![CDATA[2021 was a year where cryptocurrencies saw massive growth. This growth was followed by a drop, and the industry remains volatile. According to experts, the number of people who hold&hellip;
The post Top 10 Countries That Are the Largest Adopters of Crypto appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1737302/IT+Betriebssysteme/Web+Tipps/Top+10+Countries+That+Are+the+Largest+Adopters+of+Crypto/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1737302/IT+Betriebssysteme/Web+Tipps/Top+10+Countries+That+Are+the+Largest+Adopters+of+Crypto/</guid>
<pubDate>Sat, 17 Dec 2022 17:25:27 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How Data Is Integral To Any Business Today?]]></title> 
<description><![CDATA[Data is integral to any business today. Whether it&rsquo;s understanding customer behavior, analyzing trends, or building models, data is a valuable asset. As data and cloud become more and more&hellip;
The post How Data Is Integral To Any Business Today? appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1737253/IT+Betriebssysteme/Web+Tipps/How+Data+Is+Integral+To+Any+Business+Today%3F/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1737253/IT+Betriebssysteme/Web+Tipps/How+Data+Is+Integral+To+Any+Business+Today%3F/</guid>
<pubDate>Sat, 17 Dec 2022 16:40:28 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How Mercado Libre optimized for Web Vitals (TBT/FID)]]></title> 
<description><![CDATA[Mercado Libre is the largest e-commerce and payments ecosystem in Latin America. It is present in 18
countries and is a market leader in Brazil, Mexico, and Argentina (based on unique visitors and
pageviews).
Web performance has been a focus for the company for a long time, but they recently formed a team to
monitor performance and apply optimizations across different parts of the site.
This article summarizes the work done by Guille Paz, Pablo
Carminatti, and Oleh
Burkhay from Mercado Libre&#039;s frontend architecture team to optimize
one of the Core Web Vitals: First Input Delay (FID) and its lab proxy,
Total Blocking Time (TBT).

  
    90%
    Reduction in Max Potential FID in Lighthouse
  
  
    9%
    More users perceiving FID as &quot;Fast&quot; in CrUX
  

Long tasks, First Input Delay, and Total Blocking Time #
Running expensive JavaScript code can lead to long tasks,
which are those that run for more than 50ms in the browser&#039;s main thread.
FID (First Input Delay) measures the time from when a user first interacts with a page (e.g. when
they click on a link) to the time when the browser is actually able to begin processing event
handlers in response to that interaction. A site that executes expensive JavaScript code will likely
have several long tasks, which will end up negatively impacting FID.
To provide a good user experience, sites should strive to have a First Input Delay of less than 100
milliseconds:

  
  

While Mercado Libre&#039;s site was performing well in most sections, they found in the Chrome User
Experience Report that
product detail pages had a poor FID. Based on that information, they decided to focus their efforts
on improving the interactivity for product pages in the site.

  
   
      Mobile and Desktop versions of a Mercado Libre product detail page.
  

These pages allow the user to perform complex interactions, so the goal was interactivity
optimization, without interfering with valuable functionality.
Measure interactivity of product detail pages #
FID requires a real user and thus cannot be measured in the lab. However, the Total Blocking Time
(TBT) metric is lab-measurable, correlates well with FID in the field, and
also captures issues that affect interactivity.
In the following trace, for example, while the total time spent running tasks on the main thread
is 560 ms, only 345 ms of that time is considered total blocking time (the sum of the portions
of each task that exceeds 50ms):

Mercado Libre took TBT as a proxy metric in the lab, in order to measure and improve the
interactivity of product detail pages in the real world.
Here&#039;s the general approach they took:

Use WebPageTest to determine exactly which scripts were keeping
the main thread busy on a real device.
Use Lighthouse to determine the impact of
the changes in Max Potential First Input Delay (Max Potential
FID).

 During this project Mercado Libre used Max Potential FID in Lighthouse because that was the tool&#039;s main metric for measuring interactivity at that time. Lighthouse now recommends using Total Blocking Time instead. 
Use WebPageTest to visualize long tasks #
WebPageTest (WPT) is a web performance tool that allows you to run tests on real devices in
different locations around the world.
Mercado Libre used WPT to reproduce the experience of their users by choosing a device type and
location similar to real users. Specifically, they chose a Moto 4G device and Dulles,
Virginia, because they wanted to approximate the experience of Mercado Libre users in Mexico. By
observing the main thread view of WPT, Mercado Libre found that there were several consecutive long
tasks blocking the main thread for 2 seconds:

  
   
      Main thread view of Mercado Libre&#039;s product detail pages.
  

Analyzing the corresponding waterfall they found that a considerable part of those two seconds came
from their analytics module. The main bundle size of the application was large (950KB) and took a
long time to parse, compile, and execute.

  
   
      Waterfall view of Mercado Libre&#039;s product detail pages.
  

Use Lighthouse to determine Max Potential FID #
Lighthouse doesn&#039;t allow you to choose between different devices and locations, but it&#039;s a very
useful tool for diagnosing sites and obtaining performance recommendations.
When running Lighthouse on product detail pages, Mercado Libre found that the Max Potential FID
was the only metric marked in red, with a value of 1710ms.

  

Based on this, Mercado Libre set a goal to improve their Max Potential FID score in a laboratory
tool like Lighthouse and WebPageTest, under the assumption that these improvements would affect
their real users, and therefore, show up in real user monitoring tools like the Chrome User
Experience Report.
Optimize long tasks #
First iteration #
Based on the main thread trace, Mercado Libre set the goal of optimizing the two modules that were
running expensive code.
They started optimizing the performance of the internal tracking module. This module contained a
CPU-heavy task that wasn&#039;t critical for the module to work, and therefore could be safely removed.
This led to a 2% reduction in JavaScript for the whole site.
After that they started to work on improving the general bundle size:
Mercado Libre used
webpack-bundle-analyzer to detect
opportunities for optimization:

Initially they were requiring the full Lodash module. This was replaced
with a per-method require to load only a subset of
Lodash instead of the whole library, and used in conjunction with
lodash-webpack-plugin to shrink Lodash even
further.

They also applied the following Babel optimizations:

Using @babel/plugin-transform-runtime
to reuse Babel&#039;s helpers throughout the code, and reduce the size of the bundle considerably.
Using
babel-plugin-search-and-replace
to replace tokens at build time, in order to remove a large configuration file inside the main
bundle.
Adding
babel-plugin-transform-react-remove-prop-types
to save some extra bytes by removing the prop types.

As a result of these optimizations, the bundle size was reduced by approximately 16%.
Measure impact #
The changes lowered Mercado Libre&#039;s consecutive long tasks from two seconds to one second:

  
   
      In the top waterfall of WPT there&rsquo;s a long red bar (in the Page is Interactive row) between seconds 3 and 5. In the bottom waterfall, the bar has been broken into smaller pieces, occupying the main thread for shorter periods of time.
  

Lighthouse showed a 57% reduction in Max Potential First Input Delay:

  

Second iteration #
The team continued digging into long tasks in order to find subsequent improvements.

  
   
      The Waterfall (not pictured) helped Mercado Libre identify which libraries were using the main thread heavily (Browser Main Thread row) and the Page is Interactive row clearly shows that this main thread activity is blocking interactivity.
  

Based on that information they decided to implement the following changes:

Continue reducing the main bundle size to optimize compile and parse time (e.g. by removing
duplicate dependencies throughout the different modules).
Apply code splitting at
component level, to divide JavaScript in smaller chunks and allow for smarter loading of the
different components.
Defer component
hydration to
allow for a smarter use of the main thread. This technique is commonly referred to as partial
hydration.

Measure impact #
The resulting WebPageTest trace showed even smaller chunks of JS execution:

  

And their Max Potential FID time in Lighthouse was reduced by an additional 60%:

  

Visualize progress for real users #
While laboratory testing tools like WebPageTest and Lighthouse are great for iterating on solutions
during development, the true goal is to improve the experience for real users.
The Chrome User Experience
Report provides user
experience metrics for how real-world Chrome users experience popular destinations on the web. The
data from the report can be obtained by running queries in
BigQuery,
PageSpeedInsights, or the CrUX
API.
The CrUX
dashboard
is an easy way to visualize the progress of core metrics:

  
    
      Mercado Libre&#039;s FID progress between Jan 2020 and April 2020. Before the optimization project, 82% of the users were perceiving FID as fast (below 100ms). After, more than 91% of the users were perceiving the metric as fast.
    

Next steps #
Web performance is never a finished task, and Mercado Libre understands the value these
optimizations bring to their users. While they continue applying several optimizations across the
site, including prefetching in
product listing pages, image optimizations, and others, they continue adding improvements to product
listing pages to reduce Total Blocking Time (TBT), and by proxy FID, even more. These optimizations
include:

Iterating on the code splitting solution.
Improving the execution of third-party scripts.
Continuing improvements in asset bundling at the bundler level
(webpack).

Mercado Libre has a holistic view of performance, so while they continue optimizing interactivity in
the site, they have also started assessing opportunities for improvement on the other two current
Core Web Vitals: LCP (Largest Contentful Paint)
and CLS (Cumulative Layout Shift) even more. ]]></description>
<link>https://tsecurity.de/de/1725702/IT+Betriebssysteme/Web+Tipps/How+Mercado+Libre+optimized+for+Web+Vitals+%28TBT%2FFID%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725702/IT+Betriebssysteme/Web+Tipps/How+Mercado+Libre+optimized+for+Web+Vitals+%28TBT%2FFID%29/</guid>
<pubDate>Mon, 21 Sep 2020 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Shopping for speed on eBay.com]]></title> 
<description><![CDATA[Speed was a company-wide initiative for eBay in 2019, with many teams determined to make the
site and apps as fast as possible for users. In fact, for every 100 milliseconds improvement in
search page loading time, eBay saw a 0.5% increase in &quot;Add to Cart&quot; count.

  
    100ms
    Improvement in load time
  
  
    0.5%
    Increase in &quot;Add to Cart&quot; count
  

Through the adoption of Performance Budgets (derived
after doing a competitive study with the Chrome User Experience
Report) and a focus on key
user-centric performance metrics, eBay was able to make
significant improvements to site speed.

  
  
    eBay&#039;s speed improvements.
  

&hellip;and their Chrome User Experience Report data highlights these improvements, too.

  
  
    Chrome User Experience Report data for First Contentful Paint and First Input Delay for the eBay.com origin.
  

There&#039;s still more work ahead but here&#039;s eBay&#039;s learnings so far.
Web Performance &quot;cuts&quot; #
The improvements eBay made were possible due to the reduction or &quot;cuts&quot; (in the size and time) of
various entities that take part in a user&#039;s journey.  This post covers topics that are relevant to
the web developer community at large, rather than eBay-specific topics.
Reduce payload across all text resources #
One way to make sites fast is to simply load less code. eBay reduced their text payloads by trimming
all the unused and unnecessary bytes of JavaScript, CSS,
HTML, and JSON responses served to users. Previously, with every new feature, eBay kept increasing
the payload of their responses, without cleaning up what was unused. This added up over time and
became a performance bottleneck. Teams usually procrastinated on this cleanup activity, but you&#039;d
be surprised by how much eBay saved.
The &quot;cut&quot; here is the wasted bytes in the response payload.
Critical path optimization for above-the-fold content #
Not every pixel on the screen is equally important. The content above-the-fold is more
critical than something below-the-fold. iOS/Android/desktop and web apps
are aware of this, but what about services? eBay&#039;s service architecture has a layer called
Experience
Services,
which the frontends (platform-specific apps and web servers) talk to.
This layer is specifically designed to be view- or device-based, rather than entity-based like item,
user, or order. eBay then introduced the concept of the critical path for Experience Services.
When a request comes to these services, they work on getting the data for above-the-fold
content immediately, by calling other upstream services in parallel. Once data is ready, it is
instantly flushed.
The below-the-fold data is sent in a later chunk or lazy-loaded. The outcome: users get to see
above-the-fold content quicker.
The &quot;cut&quot; here is the time spent by services to display relevant
content.
Image optimizations #
Images are one of the largest contributors to page
bloat. Even
small optimizations go a long way. eBay did two optimizations for images.
First, eBay standardized on the WebP image format for search
results across all platforms, including iOS, Android, and supported browsers. The search
results page is the most image-heavy page at eBay, and they were already using WebP, but not in a
consistent pattern.

  
  
    WebP images being served to supported browsers on eBay.com.
  

Second, though eBay&#039;s listing images are heavily optimized (in both size and format), the same rigor
did not apply for curated images (for example, the top module on the
homepage). eBay has a lot of hand-curated images, which are uploaded
through various tools. Previously the optimizations were up to the uploader, but now eBay enforces
the rules within the tools, so all images uploaded will be optimized appropriately.
The &quot;cut&quot; here is the wasted image bytes sent to users.
Predictive prefetch of static assets #
A user session on eBay is not just one page. It is a flow. For example, the flow can be a navigation from the homepage to a search page to an item page. So why don&#039;t pages in the flow help each other? That is the idea of predictive prefetch, where one page prefetches the static assets required for the next likely page.
With predictive prefetch, when a user navigates to the predicted page, the assets are already in the browser cache. This is done for CSS and JavaScript assets, where the URLs can be retrieved ahead of time. One thing to note here is that it helps only on first-time navigations. On subsequent navigations, the static assets will already be in the cache.

  

The &quot;cut&quot; here is the network time for CSS and JavaScript static assets on the first navigation.
Prefetching top search results #
When a user searches eBay, eBay&#039;s analytics data suggests that it is highly likely that the user
will navigate to an item in the top 10 of the search results. So eBay now prefetches the
items from search and keeps them ready for when the user navigates. The prefetching happens at two levels.
The first level happens server-side, where the item service caches the top 10 items in search results. When the user
goes to one of those items, eBay now saves server processing time. Server-side caching is leveraged by
platform-specific apps and is rolled out globally.
The other level happens in the browser cache, which is available
in Australia. Item prefetch was an advanced optimization due to the dynamic nature of items. There
are also many nuances to it: page impressions, capacity, auction items, and so on. You can learn more
about it in LinkedIn&#039;s Performance Engineering Meetup
presentation, or stay tuned for a detailed blog
post on the topic from eBay&#039;s engineers.

  

The &quot;cut&quot; here can either be server processing time or network time,
depending on where the item is cached.
Eager downloading of search images #
In the search results page, when a query is issued at a high level, two things happen. One is the recall/ranking step, where the most relevant items matching the query are returned. The second step is augmenting the recalled items with additional user-context related information such as shipping costs.
eBay now immediately sends the first 10 item images to the browser in a chunk along with the header, so the downloads can start before the rest of the markup arrives. As a result, the images will now appear quicker. This change is rolled out globally for the web platform.
The &quot;cut&quot; here is the download start time for search result images.
Edge caching for autosuggestion data #
When users type in letters in the search box, suggestions pop-up. These suggestions do not change for letter combinations for at least a day. They are ideal candidates to be cached and served from a CDN (for a max of 24 hours), instead of requests going all the way to a data center. International markets especially benefit from CDN caching.

  

There was a catch, though. eBay had some elements of personalization in the suggestions pop-up,
which can&#039;t be cached efficiently. Fortunately, it was not an issue in the platform-specific apps, as the user
interface for personalization and suggestions could be separated. For the web, in international
markets, latency was more important than the small benefit of personalization. With that out of the
way, eBay now has autosuggestions served from a CDN cache globally for platform-specific apps and non-US
markets for eBay.com.
The &quot;cut&quot; here is the network latency and server processing time for
autosuggestions.
Edge caching for unrecognized homepage users #
For the web platform, the homepage content for unrecognized users is the same for a particular region. These are users who are either using eBay for the first time or starting a fresh session, hence no personalization. Though the homepage creatives keep changing frequently there is still room for caching.
eBay decided to cache the unrecognized user content (HTML) on their edge network (PoPs) for a short period. First-time users can now get homepage content served from a server near them, instead of from a faraway data center. eBay is still experimenting with this in international markets, where it will have a bigger impact.
The &quot;cut&quot; here is again both network latency and server processing time for unrecognized users.
Optimizations for other platforms #
iOS/Android app parsing improvements #
iOS/Android apps talk to backend services whose response format is typically JSON. These JSON payloads can be large. Instead of parsing the whole JSON to render something on the screen, eBay introduced an efficient parsing algorithm that optimizes for content that needs to be displayed immediately.
Users can now see the content quicker. In addition, for the Android app, eBay starts initializing the search view controllers as soon as the user starts typing in the search box (iOS already had this optimization). Previously this happened only after users pressed the search button. Now users can get to their search results faster. The &quot;cut&quot; here is the time spent by devices to display relevant content.
Android app startup time improvements #
This applies to cold start time optimizations for Android apps. When an app is cold started, a lot of initialization happens both at the OS level and application level. Reducing the initialization time at the application level helps users see the home screen quicker. eBay did some profiling and noticed that not all initializations are required to display content and that some can be done lazily.
More importantly, eBay observed that there was a blocking third-party analytics call that delayed the rendering on the screen. Removing the blocking call and making it async further helped cold start times. The &quot;cut&quot; here is the unnecessary startup time for Android apps.
Conclusions #
All the performance &quot;cuts&quot; eBay made collectively contributed towards moving the needle, and it happened over a period of time. The releases were phased in throughout the year, with each release shaving off tens of milliseconds, ultimately reaching the point where eBay is now:

  
  
    The impact of eBay&#039;s speed efforts on their field metrics over time, as illustrated by the Chrome UX Report Dashboard.
  

Performance is a feature and a competitive advantage. Optimized experiences lead to higher user engagement, conversions, and ROI. In eBay&#039;s case, these optimizations varied from things that were low-effort to a few that were advanced.
Check out Speed by a thousand cuts to learn more and be on the lookout for more detailed articles by eBay engineers on their performance work in the near future. ]]></description>
<link>https://tsecurity.de/de/1725703/IT+Betriebssysteme/Web+Tipps/Shopping+for+speed+on+eBay.com/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725703/IT+Betriebssysteme/Web+Tipps/Shopping+for+speed+on+eBay.com/</guid>
<pubDate>Wed, 22 Jan 2020 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How Truebil made the web its channel of growth]]></title> 
<description><![CDATA[About #
Founded in 2015, Truebil is an Indian online marketplace that sells 100% certified used cars. With over 1.4 million monthly active users, it&#039;s a one-stop solution that includes title transfer, insurance, loans, and service warranties. Prospective customers can see individual product pages with images and detailed inspection reports and get vehicle evaluations with the site&#039;s &quot;Compare&quot; and &quot;Truescore&quot; features. Truebil differentiates its product with rich features, including personalized recommendations based on machine learning, an add-to-favorites feature, a share-a-car feature, and more.
Challenge #
Truebil is a lean startup with low-frequency, high-value transactions, so it was critical to choose the right platform to prioritize and invest in.
Truebil identified mobile as their target platform, and they chose the web for their first app, Truebil Lite, because of the web&#039;s easy discovery and low friction. Web technology provides lower development costs, less data and memory usage, and significantly lower customer acquisition costs than building an Android/iOS app. And by building a progressive web app (PWA), Truebil could get all the perks of the web and the benefits of iOS/Android.
Solution #
An in-house team took four months to develop Truebil Lite using React, Django, and Preact (for production migration). They set clear guiding principles for the web app based on user goals. The experience had to be:

Fast on first load and subsequent navigations,
Reliable, independent of the user&#039;s network or device constraints, and
Engaging, especially for small mobile screens, so users would want to return to it.

Optimize for fast first load and navigations #
Using Lighthouse to guide performance optimizations, the team adopted a performance-first culture while implementing new features. Truebil was able to significantly improve user experience by prioritizing the First Contentful Paint and Time to Interactive (TTI) metrics and optimizing for fast first loads, repeat visits, and smooth navigation. The team achieved those results by setting performance budgets and using a variety of techniques to achieve them.
Set performance budgets #
With a performance-first mindset, the Truebil team chose to architect their experience as a single page app with server-side rendering for first load and client-side rendering for subsequent loads. Keeping web apps with client side rendering performant can be difficult, so Truebil set very strict performance budgets to ensure they don&#039;t compromise on speed, especially as they add more features.
The team set strict milestone-based budgets for TTI with the goal of keeping it below five seconds. To meet that goal they manually ensured no build would exceed a 250 KB JavaScript bundle size, kept a constant check on image sizes, and continually tracked the app&#039;s Lighthouse performance score.
Optimize JavaScript bundles #
The team started with the basics by using the PRPL pattern to precache and optimize JavaScript payloads and by moving to HTTP/2 to serve critical JavaScript bundles.
To lazy-load non-critical resources, they used their framework-level lazy-loading components to load below-the-fold fragments.
To remove any JavaScript bundle bottlenecks, the team reduced payloads via code splitting. They used component- and route-based chunking to reduce main bundle size and improve their loading time by 44%, with TTI falling from 6 seconds to about 5 seconds and First Meaningful Paint (FMP) from 4.1 seconds to 3.6 seconds.

  
  Impact of reducing chunk size.

Inline critical CSS #
To further improve FMP, the team used Lighthouse to find opportunities for and validate the impact of performance optimizations. Lighthouse indicated that reducing render blocking CSS would have the biggest effect, so Truebil inlined all critical CSS and deferred non-critical CSS. This technique reduced FMP by around 2 seconds.

  
  Impact of inlining critical CSS.

Avoid multiple, costly round trips to any origin #
To mitigate overhead from DNS and TLS, Truebil used  and . This approach causes the browser to complete the TLS handshake as soon as possible on page load and pre-resolve cross-origin domain names, allowing for a secure, snappy user experience.

  
  Impact of adding .

Dynamically prefetch the next page #
By analyzing their data, the team identified the most common user journeys that they could optimize for. In these cases, the app dynamically downloads the next page resource by using  to ensure smooth navigation for users. While the team manually identifies the links to prefetch, they use webpack to bundle the JS for those links.

  
  The effect of prefetching assets for common user journeys.

Optimize images and fonts #
Images are a critical part of Truebil&#039;s product experience and credibility, with each product listing including up to 40 pictures. To ensure that images do not block page load, the team chose to serve all their resources from a CDN and use imagemagick for image optimization. They also Gzipped all compressible resources, including images, JavaScript, and CSS, to further cut down load time.
To avoid a flash of invisible text while keeping load time as low as possible, Truebil set up their CSS to use system fonts as a fallback until external fonts have loaded.
Further optimizations #
When the app was ready, the team wanted to further reduce the vendor bundle size and JavaScript execution time, so they switched their React app to Preact in production. (Learn more in the React collection.) This approach helped them reduce the vendor bundle size from 82.3 KB to 51.2 KB.
Build in reliability #
With a focus on the Indian market, a vast majority of Truebil&#039;s users access their product on patchy networks that sometimes fall into bandwidths as low as 2G. So building a resilient experience was critical not only to improving performance under constrained network conditions but also to delivering a product that their users could rely on&mdash;one that always works.
A hybrid caching strategy for reliable loading #
The interactivity and rate of change for Truebil&#039;s content vary a lot. To ensure that all its content is both fresh and reliable, the Truebil team implemented API caching using a combination of network-first, cache-first, and fastest-first strategies.
For static pages, such as the subscriptions page, Truebil uses a cache-first strategy to go to their subscription API cache first, falling back to the network.
For pages with dynamic content that rarely changes, such as their product listing or details pages, Truebil uses a network-first strategy so that the browser first checks the network for content before falling back to the API cache if the network is unavailable.
And for dynamic pages that change often, such as the home, filter, search, and city pages, Truebil uses a fastest-first strategy to choose between network or cache based on whichever comes first. To ensure that content is fresh, the cache is updated whenever the network response differs from what&#039;s in the cache.
Service workers for a full offline experience #
Even though a large part of Truebil&#039;s content is highly dynamic&mdash;cars can be added or bought at any time&mdash;the team wanted to ensure that their users had some content to engage with, even if they were going through patchy networks or were completely offline.
Using service workers, the team was able to cache both static data and the dynamic data that a user has already interacted with so that the user can view it offline. To make sure users know that content might change when they come back online, the team changed the UI to grayscale to indicate offline mode. Browsing product pages is a critical part of the Truebil user journey. Users who have visited the PWA at least once can browse listings and product pages that they have visited before but won&#039;t be able to see any updates to the listing or the product.

  
  
    Truebil Lite in offline mode.
  

Improve engagement to keep users coming back #
An engaging first experience #
Since most of their users come from paid channels, Truebil needed to supplement their fast loading web app with a product that surfaces highly relevant recommendations to increase conversions. While the team uses a recommendation system based on sophisticated filtering for existing users, their system doesn&#039;t work for users who log in for the first time.
To avoid giving their first-time users a cold start, the team integrated a recommendation system using their digital marketing efforts. They add product details such as car model, price, and body type into an ad&#039;s destination URL through a UTM parameter, which is read by their recommendation system and reflected in the products surfaced. In case the sysme reads no such details in the URL, it falls back to popular cars, which is a combination of popular models, popular budgets, and cars that have been popular in the last few weeks or days.
An installable web app #
Having built a fast, full-featured web app with a compelling user experience, Truebil wanted to ensure that their users would keep coming back. They realized that making the app installable would make repeat visits much more seamless.
The team implemented the Add to Home Screen feature to make their product a full progressive web app (PWA). This approach allowed users to add Truebil Lite to the home screen and launch it in full-screen mode. And since they had already implemented an offline mode, the team was able to add the new feature easily.
To ensure that their users weren&#039;t spammed and to increase the probability that users would install the app, the team recently updated their strategy for promoting PWA installation so that  installation prompts appear when they&#039;ll actually be useful to different kinds of users. Truebil settled on a three-part strategy:

Show prompts when the user has completed an action or is idle.
Show contextual prompts to mature users.
Show a banner when the user has spent a set amount of time on the site.

Default banners on process completion and on high-traffic pages #
The team decided to show an installation banner when a user completes a task or is on high-traffic pages but idle (that is, not taking an action, such as scrolling or filling out a form). This approach allowed them to avoid interrupting the user&#039;s activity.

Contextual prompts for mature users #
For users who had interacted with the app for a while, the team used highly contextual custom messages to show the value of installing the app to the home screen:

A custom banner for time-based prompts #
Finally, the team built in a non-intrusive banner with a notification-like design that&#039;s triggered at specific events, such as opening a listing page or after the user has spent a set amount of time spent in the app:

  

Because of these improvements, Truebil&#039;s conversion and engagement rates have grown significantly with 26% longer user sessions and 61% more conversions, which is significant for their business given the high transaction value of each conversion.

  For a startup with limited resources, choosing the right platform can be critical to the success of the business. Moving to a PWA focused on speed, resilience, and engagement, enabled us to increase our revenue-to-marketing spend by 80% thanks to increased conversions and the frictionless reach of the web.
  Rakesh Raman, Co-Founder and Chief of Product &amp; Data Science at Truebil


  
    44%
    Improvement in loading time
  
  
    26%
    Longer user sessions
  
  
    61%
    Increase in conversions
  
  
    80%
    Increase in revenue-to-marketing spend
  
 ]]></description>
<link>https://tsecurity.de/de/1725704/IT+Betriebssysteme/Web+Tipps/How+Truebil+made+the+web+its+channel+of+growth/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725704/IT+Betriebssysteme/Web+Tipps/How+Truebil+made+the+web+its+channel+of+growth/</guid>
<pubDate>Fri, 16 Aug 2019 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Building a Better Web - Part 1: A faster YouTube on web]]></title> 
<description><![CDATA[The Chrome team often talks about &quot;building a better web&quot;, but what does that
mean? Web experiences should be fast,
accessible, and use device
capabilities in the moment when users need it most.
Dogfooding is part of Google&#039;s culture, so the Chrome team has partnered with
YouTube to share lessons learned along the way in a new series called, &quot;Building
a better web&quot;. The first part of the series will dive into how YouTube built a
faster web experience.


  
    The YouTube for mobile web Watch page passing the Core Web Vitals thresholds.
  

Building a faster web #
At YouTube, performance relates to how fast videos and other content&mdash;such as
recommendations and comments&mdash;load on web pages. Performance is also measured by how quickly YouTube
responds to user interactions such as search, player control, likes, and shares.
Growing developing markets, such as Brazil, India, and Indonesia are important
for YouTube mobile web. Because many users in these regions have slower devices
and limited network bandwidth, ensuring a fast and seamless experience is a
critical goal.
To provide an inclusive experience for all users, YouTube set out to improve
performance metrics such as Core Web Vitals through lazy-loading and code
modernization.
Improving Core Web Vitals #
To identify areas of improvement, the YouTube team used the Chrome User Experience Report (CrUX) to see how real users were experiencing video watch and search result pages on
mobile in the
field. They
realized their Core Web Vitals metrics had a lot of room for improvement, with
their Largest Contentful Paint (LCP) metric clocking in
at 4-6 seconds in some cases. This was substantially higher than their target of
2.5 seconds.

To identify areas for improvement, they turned to
Lighthouse to audit
the YouTube watch pages, revealing a low Lighthouse
(lab) score with a
First Contentful Paint (FCP) of 3.5 seconds and a LCP of 8.5 seconds.


  
    Chrome sets a target of 1.8s for FCP and 2.5s for LCP as a gold standard. The FCP and LCP were clearly in the yellow and red at 3.5s and 8.5s, respectively.
  

To optimize FCP and LCP, the YouTube team dove into several experiments,
resulting in two big discoveries.


The first discovery was that they could improve performance by moving the HTML for the Video Player above the script that makes the Video Player interactive. Lab tests indicated that this could improve both FCP and LCP from 4.4 seconds to 1.1 seconds.


The second discovery was that LCP only considers  element poster images and not frames from the video stream itself. YouTube has traditionally optimized for the fastest time until the video starts playing, so to improve LCP the team started also optimizing how quickly they could deliver their poster image. They experimented with a few variations of poster images and picked the one that scored the best in user testing. As a result of this work, both FCP and LCP showed marked improvement, with field LCP improving from 4.6 seconds to 2.0 seconds.




  
    In the lab, we observed an improvement in FCP and LCP from 4.4s to 1.1s after this change landed. Experiment A: Using the actual video thumbnail works well on pages where the video starts out paused, but for auto-play video pages like the watch page it performed poorly in user studies. It also resulted in a drop in active users. Experiment B: Using a solid black poster image showed the best results in user studies. Users found the transition from solid black to the first frame of the video to be a less-jarring experience for autoplay videos. 
  



  
    Black thumbnail was deployed in production for all mobile web users July 2021 showing marked improvement in FCP and LCP, as seen in the above RUM analysis.
  

 While bringing these optimizations to all platforms, YouTube also took advantage of the new Priority Hints fetchpriority attribute, which we use with  to prioritize discovering and loading the poster image early:   
While these optimizations did improve LCP, the team felt that the current definition of the LCP metric wasn&#039;t fully capturing, from the user&#039;s perspective, when the &quot;main content&quot; of the page had loaded&mdash;which is the goal of LCP.
To address these concerns, members of the YouTube team partnered with members of the Chrome team to explore ways that the LCP metric could be improved to address their use case. After considering the feasibility and impact of a few options, the teams landed on a proposal to consider the paint time of the first frame of a video element as an LCP candidate.
Once this change lands in Chrome, the YouTube team is excited to continue their work optimizing for LCP. And the updated version of the metric will mean these optimizations will have a more direct impact on real-user experiences.
Modularization with lazy loading #
YouTube pages contained many modules that were eagerly loaded. To optimize how
50+ components were rendered, the team built a component to JS module map that
would tell the client which modules to load. By marking components as lazy, the
JS modules would load later, reducing the initial load time of the page and the
amount of unused Javascript sent to the client.
However, after lazy loading was implemented, the team noticed a waterfall effect
that lazy loaded components and their dependencies would load at suboptimal
times.
To solve this problem, the team determined the minimal set of components needed
in a view and batched them in a single network request. The results were
improved page speed, reduced JavaScript parse time, and, ultimately, better
initial rendering times.
State-management across components #
YouTube was experiencing performance issues due to its player controls,
especially on older devices. Code analysis showed that the player, which allows
users to control features such as playback speed and progress, had become
over-componentized over time.


  
    The YouTube video player allows users to control playback speed, follow progress, skip sections, and others. When a user taps on a particular control, the change in the state must be communicated to other controls e.g. a user tap on the progress bar must be shared to controls such as play-head, subtitles etc.
  

Each progress bar touch-move event triggered two
extra style recalculations and took 21.17 ms during performance test runs in the lab. As new controls were added over time, the pattern of decentralized control would often cause circular dependencies and memory leaks, negatively impacting watch page performance.


  
    Chrome DevTools with a 4 times CPU slow-down performance run. 
  

To fix the issues due to decentralized control, the team updated the player UI
to synchronize all updates, essentially refactoring the player to one top-level
component that would pass down data to its children. This ensured only one UI
update (render) cycle for any state change, eliminating chained updates. The new
player progress bar touch-move event has no style recalculations during its
JavaScript execution and now only requires 25% the time of the old player.

This code modernization also resulted in additional performance improvements
such as improved watch load times on old devices, fewer abandoned playbacks, and
a reduced number of non-fatal errors.
Conclusion #
As a result of YouTube&#039;s investment in performance, watch pages load much faster with 76% of YouTube&#039;s mobile website URLs now passing Core Web Vitals metric thresholds in the field. On desktop, lab LCP for the watch page was reduced from approximately 4.6 seconds to 1.6 seconds. Interaction and rendering performance of the site, especially on the YouTube video player, are seeing up to 75% less time spent in JavaScript execution than before.
    Success 76% of YouTube&#039;s mobile web URLs now pass the Core Web Vitals metrics, with improvements to business metrics like watch time as a result. 
Improvements to the performance of YouTube web over the last year have also improved business metrics, including watch time and daily active users. Based on the success of these efforts, we plan to continue exploring even more ways to optimize in the future.
In part two of this series, &quot;Building an accessible web&quot;, you&rsquo;ll read how YouTube made their website more accessible for screen-reader users.
With special thanks to Gilberto Cocchi, Lauren Usui, Benji Bear, Bo Aye, Bogdan Balas, Kenny Tran, Matthew Smith, Phil Harnish, Leena Sahoni, Jeremy Wagner, Philip Walton, Harleen Batra and both the YouTube and Chrome teams for their contributions to this work. ]]></description>
<link>https://tsecurity.de/de/1725681/IT+Betriebssysteme/Web+Tipps/Building+a+Better+Web+-+Part+1%3A+A+faster+YouTube+on+web/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725681/IT+Betriebssysteme/Web+Tipps/Building+a+Better+Web+-+Part+1%3A+A+faster+YouTube+on+web/</guid>
<pubDate>Thu, 20 Oct 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How Rakuten 24's investment in Core Web Vitals increased revenue per visitor by 53.37% and conversion rate by 33.13%]]></title> 
<description><![CDATA[Rakuten 24 is an online store that collaborates with both major multinational and domestic consumer goods manufacturers to offer a great variety of daily necessities including healthcare, beverage, pet supplies, baby products, and more. This store is provided by Rakuten Group, Inc.&mdash;a global leader in internet services, and is among the top performers on their digital marketplace platform in Japan.
Understanding the impact of web performance on user experience, the Rakuten 24 team has been continuously measuring, optimizing and monitoring Core Web Vitals and other metrics.
As a result, over 75% of their users are experiencing good Largest Contentful Paint (LCP), First Input Delay (FID) and First Contentful Paint (FCP). However, they are still working on Cumulative Layout Shift (CLS) improvements.
After analyzing homepage data, Rakuten 24 found that a good LCP score can lead to:

An increase of up to 61.13% in conversion rate.
26.09% in revenue per visitor.
11.26% in average order value.
A good FID score can lead to an increase of up to 55.88% in conversion rate.

To further correlate Core Web Vitals and business metrics, Rakuten 24 also ran an A/B test focused on optimizing Core Web Vitals and related metrics, and saw an improvement of:

53.37% in revenue per visitor.
33.13% in conversion rate.
15.20% in average order value.
9.99% in average time spent.
A 35.12% reduction in exit rate.

Highlight the opportunity #
Though optimizing web performance is a smart investment to improve user experience and business growth, Rakuten 24 team understands how difficult it can be to convince stakeholders to adopt Core Web Vitals and focus on web performance. They believe that showing stakeholders exactly what kind of Return on Investment (ROI) performance optimization can bring is the best way to get them on board.
Being a relatively new and independent service, Rakuten 24 used their advantage of flexibility to take up the challenge. They believe that the result of their case study would help them make more data-oriented decisions in the future, as well as help other developers measure the impact of their work and convince their stakeholders that improving performance is worth the investment. Find out how they did it in this post.

  
  
    Some example screenshots of Rakuten 24&#039;s homepage.
  

Optimize JavaScript and resources #

Eliminate render-blocking resources.
Split code and use dynamic import().
Split all content into separate parts and lazy load below-the-fold HTML files.
Execute and load JavaScript on demand.
Identify slow JavaScript resources and optimize the loading process by using the async attribute on  tags and establishing early connections to important origins (Resource hints such as dns-prefetch, preconnect, and preload).
Remove unused code, and minify and compress code.
Use a CDN.
Control caching using Service Worker with Workbox.

Optimize images #

Lazy load below-the-fold images.
Optimize images with a CDN, deliver properly sized images, compress images, and adopt the right image formats for the job (WebP, SVG, Web Fonts).

Optimize CLS #

Use CSS aspect-ratio to reserve the required space for images while the images are loading.
Use CSS min-height to minimize layout shifts while elements are lazy loaded.

Performance measuring #
Besides using PageSpeed Insights to audit their website, the team wanted to find a better way to know what the users are actually experiencing in the field. Therefore, Rakuten 24 decided to use the web-vitals JavaScript library to measure Core Web Vitals and other metrics in the field and send the data to inhouse analytics tool.

  

Performance analyzing #
The team analyzed the collected field data to determine if there is any correlation between the Core Web Vitals and the key business metrics. They found out that the converted users tend to experience a better LCP than the users who didn&rsquo;t convert.

  

The collected data also revealed that:

A good LCP can lead to an increase of up to 61.13% in conversion rate, 26.09% in revenue per visitor, and 11.26% in average order value.
A good FID can lead to an increase of up to 55.88% in conversion rate compared to the overall average data.


  
  
    The impact of LCP on conversion rate.
  


  
  
    The impact of LCP on revenue per visitor.
  


  
  
    The impact of LCP on average order value.
  


  
  
    The impact of FID on conversion rate.
  

Performance monitoring #
The team built a performance monitoring dashboard using the data collected in the field and business intelligence tool. This is important for monitoring progress and preventing regressions.

  
  
    Performance monitoring dashboard.
  

A/B test #
Believing that A/B tests are a good way to measure the business impact of performance optimizations, the team optimized one of their landing pages for Core Web Vitals then compared the optimized version with the original page via A/B test for a month. They picked a landing page with significant traffic and conversion so that the test could achieve meaningful results. During the test duration, 50% of the traffic was sent to the optimized landing page (version A), and 50% was sent to the original page (version B). The only difference between version A and version B was that version A was optimized for Core Web Vitals and there were no other functional or visual differences.

  

The optimized version A finished loading 0.4 seconds earlier in the mobile load test and shows no significant layout shift. In fact, the CLS of version A improved by 92.72% compared to version B. Other Web Vitals scores also improved: FID improved by 7.95%, FCP improved by 8.45%, and TTFB improved by 18.03%.

  
  
    Mobile load test result of version A and version B.
  

Comparing the optimized version A to the unoptimized version B, Rakuten 24 found that version A brings about:

53.37% increase in revenue per visitor.
33.13% increase in conversion rate.
15.20% increase in average order value.
9.99% increase in average time spent.
35.12% reduction in exit rate.


  

Conclusion #
Web performance optimization is challenging but rewarding. By taking a data-driven approach, Rakuten 24 has successfully delivered better user experience as well as measured positive impact on their business. Understanding that this is just a part of the journey not the destination, they will continue improving their website to provide online shoppers with more delightful experiences.
Optimization requires a joint effort and developers do not have to be alone on this journey. By sharing their struggles and achievements, Rakuten 24 hopes that more developers can use Core Web Vitals data to develop a mutual understanding with stakeholders then work together towards high-quality user experience and business growth. ]]></description>
<link>https://tsecurity.de/de/1725682/IT+Betriebssysteme/Web+Tipps/How+Rakuten+24%27s+investment+in+Core+Web+Vitals+increased+revenue+per+visitor+by+53.37%25+and+conversion+rate+by+33.13%25/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725682/IT+Betriebssysteme/Web+Tipps/How+Rakuten+24%27s+investment+in+Core+Web+Vitals+increased+revenue+per+visitor+by+53.37%25+and+conversion+rate+by+33.13%25/</guid>
<pubDate>Wed, 24 Aug 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How GoDaddy's Websites + Marketing service improved customer Core Web Vitals by 75%]]></title> 
<description><![CDATA[GoDaddy is the world&#039;s largest services platform for entrepreneurs around the globe. We&#039;re on a mission to empower our worldwide community of over 20 million customers&mdash;and entrepreneurs everywhere&mdash;by giving them all the help and tools they need to grow online.
In 2019 GoDaddy launched Websites + Marketing with a commitment to deliver tools and services that are easy to use and help business owners achieve their goals. Websites + Marketing integrates website building with marketing and eCommerce tools and pairs them with best-in-class guidance to help customers achieve success with their new ventures.
Since the launch of Websites + Marketing, performance has been an important part of the product and something that has been monitored and worked on actively. In this article, we will review GoDaddy&#039;s journey from using lab performance testing to using real world data with Core Web Vitals, and the series of improvements made to the product to get a very high pass rate for our customer&#039;s sites.
Tracking performance with Lighthouse #
We have relied on Lighthouse data for performance tracking. Every time a website is published on the platform, we measure its performance using our internal tool named &quot;Lighthouse4u&quot;, which provides Google Lighthouse as a service https://github.com/godaddy/lighthouse4u. This gave us a good indication of how sites were generally performing in a lab setting.
Because the millions of sites we host on our platform have a wide range of features and content, it was important to combine performance data with metadata about each site being tested (such as template used, type of widgets rendered, and so on). This allowed us to draw conclusions on what website features had lower performance, while also providing insight for where to look for improvements.
For example, this helped us identify that the &quot;popup modal&quot; was having a negative impact on page speed; sites with the feature performed 12 points lower than without. After making updates to the code to defer loading of JavaScript, we improved our Lighthouse score by 2 points. We were able to apply this learning to other features such as the &quot;cookie banner&quot; that renders soon after page load.

  
  Chart showing performance score for sites with and without a &quot;pop up modal&quot;  (blue and green lines respectively) before and after performance improvement.

Along with looking at problematic sites based on features, we conducted an analysis of our JavaScript bundle and saw that a large portion of its size came from external dependencies (immutable.js and draft.js). We reduced the bundle size by restructuring consumers to lazy load dependencies on demand. This resulted in over a 50% drop in common JavaScript bundle size, which went from over 200&nbsp;KB to around 90&nbsp;KB (minified). The smaller bundle size allowed the browser to load external assets and execute critical scripts earlier in the initial site loading lifecycle, leading to gains in Largest Contentful Paint (LCP) and First Input Delay (FID).

  
  Average Lighthouse score for newly published sites over time. Major optimizations are overlaid on the graph to show impact.

Thanks to our continued efforts, the average customer site Lighthouse score moved from around 40 points in November 2020 to above 70 points in May 2021. However, not all our attempts worked and we were sometimes surprised when the results were not always consistent between what was tested in local test environments and the results we got in the field. Lab results had been really helpful, but it was time to focus on real user experiences observed in the field.
Tracking real user data with Core Web Vitals #
After adding the web-vitals library to our customer&#039;s sites, we were able to measure data on actual devices from real visitors, where hardware, network speed, user interaction (such as scrolling or clicking) are not at a consistent baseline as in a lab setting using Lighthouse. This was a big step in the right direction, as we now had data that was representative of what our website visitors were experiencing.
Focusing on our weakest link: Cumulative Layout Shift (CLS) #
Analyzing new data gave us a new perspective on what had to be done to improve website speed. Because of work done to improve the Lighthouse score, our 75th percentile LCP was 860 ms and our FID at the same threshold was below 10 ms, so we enjoyed a high pass rate for these metrics on our customer&#039;s sites: 78% and 98%, respectively. However, the Cumulative Layout Shift (CLS) numbers look quite different from what we were used to with Lighthouse. Our CLS at the 75th percentile was 0.17&ndash;above the 0.1 threshold to &quot;pass&quot;&ndash;and our pass rate was thus only 47% over all of our sites.
That metric dragged down our overall pass rate to 40%, so we decided to set an ambitious goal to move that number to above 60% by the end of August 2021. To do that, we would have to focus on CLS.
In real life, users interact with the page and scroll past the &quot;above the fold&quot; content, which is something Core Web Vitals captures better. Due to the variability in how users interact with the site while it initially loads, CLS differed from lab and field data.
The road to passing all Core Web Vitals #
Improving performance takes trial and error, and every attempt doesn&#039;t always work as expected. However, here are a few improvements that helped us achieve our goals.
Reserving space for loading images drastically improved our CLS score as it prevents the content below the images from shifting. We used the CSS aspect-ratio property to address this on browsers which support it. For those that do not, we loaded a transparent placeholder image that was cached and just a few bytes in size, thus loading almost instantaneously.
This generic image behavior allowed us to pre-calculate the final image height during server-side rendering, based on viewport width and image aspect ratio. This resulted in HTML markup with vertical space appropriately reserved for the final image. The improvement was particularly observable on mobile devices, since images are rendered to the full span of mobile viewports.
Certain components on our customers sites have dynamic content (for example, a list of external customer reviews) and could not be converted to pure CSS to leverage performance benefits of server side rendering. These are difficult areas to improve layout shifts because content (thus height) will vary. In those cases, we wrapped the component in a container with a min-height applied, predetermined based on observation of the average height for each of the specific components. The min-height is removed once the inner dynamic component is done rendering. While not perfect, this solution allowed us to reduce layout shift by a lot.
While focusing on CLS improvements, we continued to work on LCP. On many websites, images are the biggest culprit contributing to LCP and for us it was an obvious area of improvement. We had made improvements to lazy load images using IntersectionObserver but realized that image sizes were not set in the most optimal way for each breakpoint (mobile, tablet, desktop, large desktop), so we updated our image generation code to clamp and scale images per breakpoint and then again scale resolution based on pixel density. As an example, this reduced the size of a specific large image from 192&nbsp;KB to 102&nbsp;KB.
To quickly render websites on devices with poor network connections, we added code to dynamically scale down image quality based on connection speed. This can be done using the downlink property returned by navigator.connection. We apply URL-based query parameters to reduce image quality through our asset API based on those network conditions.
A number of sections of our customer sites are dynamically loaded. Since we know what sections will be rendered on a given site when it&#039;s published, we used the rel=preconnect resource hint to initialize the connection and necessary handshakes ahead of time. We also use resource hints to load fonts and other important resources quickly.
When building their sites, customers add various sections which might have inline scripts to allow different functionalities. Having these scripts inline throughout the HTML page isn&#039;t always optimal for performance. We decided to externalize these scripts to allow the browser to load and parse script content asynchronously. Newly externalized scripts could also be shared across pages. This allowed for additional performance gains in the form of browser and CDN caching. We kept critical scripts in-line in order for the browser to parse and execute them faster.
Results #
Focusing our effort on CLS paid off, our Core Web Vitals pass rate went from around 40% to almost 70%: an improvement of 75%!

  
  Percentage of live Website+Marketing websites with &quot;passing Core Web Vitals&quot; over time (overall and sub-metric).

As users come back to our platform to make updates and republish their sites, they get the latest performance improvements and as a result the number of sites with &quot;passing Core Web Vitals&quot; has been steadily growing as shown on the chart below:

  
  Chart representing GoDaddy Website Builder sites with &quot;good Core Web Vitals&quot;. Source: cwvtech.report

Conclusions #
Finding areas for performance improvements and successfully tracking progress is highly dependent on what tools are used for measurement. While Lighthouse was useful for measuring above-the-fold performance in a &quot;lab setting&quot;, it did not accurately capture performance issues that only occurred from user interactions (such as scrolling through the page).
Tracking real world Core Web Vitals with metadata allowed us to visualize, target, and measure the impact of our improvements. The journey to improve Core Web Vitals scores allowed the team to identify and replace non-performant patterns found throughout our codebase. Sometimes promising changes didn&#039;t have nearly the impact we expected, other times the opposite happened. It&#039;s not a pristine world out there, so you have to keep trying. ]]></description>
<link>https://tsecurity.de/de/1725683/IT+Betriebssysteme/Web+Tipps/How+GoDaddy%27s+Websites+%2B+Marketing+service+improved+customer+Core+Web+Vitals+by+75%25/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725683/IT+Betriebssysteme/Web+Tipps/How+GoDaddy%27s+Websites+%2B+Marketing+service+improved+customer+Core+Web+Vitals+by+75%25/</guid>
<pubDate>Thu, 14 Jul 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Luxury retailer Farfetch sees higher conversion rates for better Core Web Vitals]]></title> 
<description><![CDATA[Inside many companies, website speed performance and Core Web Vitals are still mostly seen as the responsibility of the engineering teams. Site speed can become invisible to other areas of the business if the business and customer experience worth is not understood. This can cause performance to be overlooked when key decisions are made and roadmaps are defined.
To improve the performance culture across teams and drive significant improvements to their web experience, luxury e-commerce fashion retailer Farfetch launched a project to define and use true customer-centric performance metrics. They aimed to correlate these to business metrics as a way of illuminating how performance affects the company&#039;s KPIs.
Their ambitions didn&#039;t end there, though. Ultimately, the project&#039;s objective was cultural change at scale&mdash;breaking down silos within the organization and introducing a new business-oriented language to give everyone a shared way to talk about what used to be considered technical topics. Farfetch wanted to have website speed performance as a shared responsibility, facilitate informed decision making and establish it as a main pillar of what makes a good web experience.

  

To kick off, Farfetch realized a single department couldn&#039;t achieve this as before and assembled a core team of experts from various areas in the company&mdash;engineering, infrastructure, architecture, and product&mdash;that put in place a step-by-step strategy to revamp how the company looked at this topic.
Step 1: Defining, measuring and monitoring metrics #
First of all, Farfetch needed to have the right monitoring tools in place to understand current state and deviations across journey touchpoints and applications.
They used both lab data and real user monitoring (field data) to track Core Web Vitals and additional user-centric performance metrics to analyze the current state of speed performance. They used JavaScript and the web-vitals.js library to capture the data, which allowed the product analytics team to gain visibility of performance metrics alongside business metrics in the same session and thereby start examining how one affects the other.
The multidisciplinary group set out to understand which metrics mattered most for the business. To do so, they looked at the critical journey path of Farfetch users and tried to link that journey with performance markers. In addition to the Core Web Vitals metrics that Google has outlined, each representing a distinct facet of the user experience, they also used custom JavaScript to track Time to First Byte (TTFB), First Contentful Paint (FCP), First Paint and Time to Interactive (TTI).
The metrics are collected using several methods of the Performance API, Long Tasks API and Google&#039;s polyfills. More details can be found in this mid 2020 Farfetch Tech Blog post by Manuel Garcia, Senior Principal Engineer for the Web.
On the data analytics side, Farfetch have their own multi-channel tracking solution used by front end applications called Omnitracking. It tracks the events generated by page views, user actions and system actions. The Omnitracking Data Model is Farfetch&#039;s solution for analytical, data exploration and reporting cases, made on the top of the events generated by trackers. The data model&#039;s objective is to help and support anyone who needs to understand:

User behavior
User experience on Farfetch applications
Applications usage
Macro and micro conversions
Cross channel and funnel analysis

The idea was then to add the performance data of each pageview on farfetch.com, captured by JavaScript, to this data layer. Following this model guaranteed a match between performance data and the main conversion funnel metrics for each session and the base for an analytical exploration on the topic.
Finally, Farfetch established time-based performance budgets for each metric across the main journey pages and a governance process to handle budget breaches. They&#039;ve also started incorporating performance metrics on CI pipelines to understand budget deviations as soon as possible in the development flow.
Step 2: Communicating via business language #
With performance data now available in Farfetch&#039;s internal business intelligence datasets, the analytics team started exploring mathematical models and patterns in the data that could indicate a correlation between performance metrics and business KPIs (for example, conversion rate and percentage of single-page visits), allowing a new view of the financial impact of site speed and UX for the business. This enabled performance to be discussed in a common language with the business decision makers. The analysis included all Core Web Vitals and the other metrics Farfetch deemed valuable. It revealed truly impactful insights.
Having in mind that Google recommends Largest Contentful Paint (LCP) to stay below 2.5 seconds to provide an optimal user experience, Farfetch studied this threshold carefully and found meaningful results.
Farfetch statistical correlation analysis showed that beyond that point, the conversion rate starts to drop, as well as the exit rate rises. This shows that users really start to feel the downside of a slow page load perception and conversion rate decreases on average -1.3% with each 100ms more of LCP.

  

Farfetch also verified an exit rate decrease of -3.1% for each 0.01 less on the Cumulative Layout Shift (CLS) score, reaffirming the impact of page stability to keep users on a website.

  

Regarding page interactivity and fluidity, although First Input Delay (FID) is tracked and analyzed continuously, Farfetch also measures TTI, which proved to be a considerably impactful metric for the Farfetch business conversion funnel.
For this, they injected Google&#039;s TTI polyfill into the website to store this metric. Using the Long Tasks API to report long tasks (tasks taking longer than 50 milliseconds on the browser&#039;s main thread).
    Caution It&#039;s no longer recommended to measure TTI in the field, as user interaction can affect your page&#039;s TTI in ways that lead to variance in your reports! 
The analytics team was then able to find that the conversion rate increased 2.8% for each second reduction on TTI, making a strong case for better code efficiency and unclogging the browser&#039;s main thread.

  

In the end, this analysis was also able to show that some metrics didn&#039;t have a significant impact on business KPIs, or some would be more relevant at different stages of the user journey. This allowed for a complete understanding of the opportunities at hand on each point of the conversion funnel.
Step 3: Embedding cultural change #
Showcasing the insights above alongside qualitative user research on user perception of site speed was paramount to establish alignment with company goals, secure executive-level awareness and buy-in for performance based decision making across product roadmaps. It was now possible to prove how much performance was worth for Farfetch.
To streamline prioritization, Farfetch created a self-service tool they named the Site Speed Business Case Calculator, taking inspiration from Google&#039;s Speed Impact Calculator. It allows any product manager to create a business case out of performance improvements by calculating the business impact on the fly. With a data model using the correlation between conversion rate and user experience metrics, it&#039;s flexible to adapt to different product scopes, devices and user journey touch points.

  

Meanwhile, a set of self-service analytical dashboards have created business-wide visibility of real-time performance indicators and their impact on the business. Performance is now becoming fully embedded in product development, and product teams enjoy easy access to metrics, auditing tools, and performance budget monitoring. Furthermore, because of the data layer integration, performance metrics are also available on Farfetch A/B testing tooling, giving product managers yet another powerful vector of insights.
In recent months, the core team is also on track to establish this culture not only on front-end development teams but also within the platform domain, using similar methodologies to monitor and prove the impact of the main micro services and transactions.
There have been a number of Farfetch driven presentations on this topic but also external mentions. For example, a mention on a 2021 Google I/O talk on the business impact of Core Web Vitals. This also contributed to giving continuous relevance to the theme and solidified the team&#039;s strategy on culture.
Step 4: Improving metrics #
In the end, all of this work needed to contribute to Farfetch objectively improving their website speed metrics, and guaranteeing that their teams would follow best in class practices and pursue enhancement opportunities.
One of the main opportunities detected in 2021 was the need to improve LCP on the two main page types of Farfetch&mdash;product pages and product listing pages.
The teams addressed how they were loading the main content of those pages. Armed with a business case that showed the impact of chasing this opportunity, they were able to:

Adapt the product image loading component from a JavaScript-based solution to a native implementation.
Define the priority of the images and divide them into critical and non-critical assets.
Load critical images early, with the source already inline in the HTML and using  so they download as soon as possible.
Use the  attribute for non-critical images, with a polyfill using Intersection Observer on unsupported browsers, such as Safari.

With this, they were able to move the needle and prove through A/B testing the hypothesis and business impact. On product pages for example, this effort shaved off more than 600ms, and the A/B test showed an uplift on conversion rate in the range of 1-5% with the company&#039;s defined confidence level.
Below are the improvements the team were able to make in terms of the percentage of pageviews that are considered &quot;good&quot;, &quot;needs improvement&quot; and &quot;poor&quot;, based on Google&#039;s definition for LCP score.

  


  

The rewards of a faster site and better working practices #
Building a culture around performance and tools like the business case calculator allowed everyone to begin speaking a shared language that can be understood by product managers, stakeholders, and engineers alike. This has precipitated ongoing discussions around how to prioritize new initiatives and performance enhancements.
&quot;We wanted to break the cycle of performance being a tech-only concern, something owned only by the engineering team to deal with and fix,&quot; explains Farfetch&#039;s Web Channels Senior Principal Product Manager, Rui Santos. &quot;Connecting performance metrics with business metrics was surprisingly effective to pass the message across very, very quickly. Business drives the company, and connecting its success to speed metrics encouraged a broader set of stakeholders to understand and navigate the trade-off decisions.&quot;
In the luxury e-commerce segment, whether your site is fast or slow can dictate how consumers see your brand and your service quality as a whole. For users, quality equates to luxury&mdash;and this applies to every aspect of their experience, including how your website performs. With site speed producing a proven effect on conversion rate, performance now occupies a safe position in forward planning at Farfetch. ]]></description>
<link>https://tsecurity.de/de/1725684/IT+Betriebssysteme/Web+Tipps/Luxury+retailer+Farfetch+sees+higher+conversion+rates+for+better+Core+Web+Vitals/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725684/IT+Betriebssysteme/Web+Tipps/Luxury+retailer+Farfetch+sees+higher+conversion+rates+for+better+Core+Web+Vitals/</guid>
<pubDate>Tue, 12 Jul 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Yahoo! JAPAN はパスワードレス認証で問い合わせを 25% 削減、ログイン時間も 2.6 倍速に]]></title> 
<description><![CDATA[Yahoo! JAPAN は日本にて検索やニュースといったメディアサービス、e コマース、メールサービスなど、100を超えるサービスを提供している企業です。これらのサービスで利用するためのユーザーアカウントも長年提供し続け、月間のログインユーザーは 5,000 万を超える規模となっています。しかし、このユーザーアカウントを提供する中で、ユーザーアカウントに対しての攻撃を継続的に受けており、また、アカウントを継続利用する上での課題についてユーザーから問い合わせも多く頂いていました。これらの課題の多くはパスワードという認証手段に依存するものでした。また、当時、技術的にもパスワード以外の認証手段を提供するための機能やデバイスの普及が始まりつつありました。こういった背景のもと、Yahoo! JAPAN はパスワードによる認証からパスワードレスな認証へ移行すると判断しました。
なぜパスワードレスか #
Yahoo! JAPAN では以前、一般的なWebサービスのようにログイン ID とパスワードによる認証を基本としていました。しかし、パスワードは不正アクセスの被害を受ける可能性が高く、また、パスワードにまつわる問い合わせも非常に多い状況でした。
パスワードに関連して様々な攻撃を観測しておりますが、パスワードリスト型攻撃やフィッシング詐欺などが中心となっています。上述したとおり、Yahoo! JAPAN が提供するサービスには e コマースなど金銭に関わるものがあるため不正アクセスの被害やアカウントを失った際のユーザーの被害が大きくなりがちです。
パスワードリスト型攻撃が多い背景としては、複数のアプリや Web サイトでのパスワード使いまわしが多い現状があります。以下の数字は Yahoo! JAPAN が行ったアンケートの結果です。おおよそ 60% 以上のユーザーが複数のサービスでパスワードを使いまわしていると回答しており、パスワードリスト型攻撃が有効な攻撃方法となっていると考えられます。



50
%

50% 以上が ID / パスワードを 6 個以上使用



60
%

60% 以上が「複数のサービスでパスワードを使いまわしている」



70
%

最も利用されているログイン方法は「パスワード」で約 76%


パスワードに関する問い合わせとしては、パスワードを忘れてしまったという問い合わせが大半でした。パスワードに関連して、ログイン ID も忘れてしまったという問い合わせもあり、これらの問い合わせだけで、最も多い時期ではアカウントにまつわる問い合わせの 1/3 以上を占めている状況でした。
これらの状況を改善するべく、Yahoo! JAPAN はパスワードレスに移行すると判断しました。パスワードレスを進めることでセキュリティだけでなくユーザビリティについても改善できると考えています。
セキュリティ観点ではユーザーの認証手段からパスワードを無くすことで、特にリスト型攻撃への被害を減らすことが出来、ユーザビリティ観点ではパスワードという記憶による認証に頼らない認証手段を提供することで、パスワードを忘れてログインできない、という事態を無くすことが出来ます。
従来からいろいろなセキュリティ向上の取り組みを行っていましたが、単純にセキュリティが高いだけでは利用者に負担をかけるだけになってしまい、結果としてセキュリティの高い状態を実現できません。ユーザビリティを共に向上させられることや、セキュリティを高める必然性が伝わるようなコミュニケーションを心がける必要があると考えています。それが結果としてユーザビリティだけではなく、セキュリティを向上させることに
繋がります。
Yahoo! JAPAN のパスワードレスの取り組み #
Yahoo! JAPAN ではパスワードレスを進めるため、いろいろな取り組みをしています。大別すると、

パスワードに代わる認証手段の提供
パスワードの無効化
パスワードレスなアカウント登録

の3つがあります。
1、2 は既存の利用者に対して、3 は新規の利用者に対しての取り組みです。
1. パスワードに代わる認証手段の提供 #
パスワードを無効にするのであれば、パスワードに変わる認証手段を提供しなければいけません。
Yahoo! JAPAN では、パスワードの代替として主に下記のような手段を提供しています。

SMS 認証
FIDO 認証

加えて、メール認証やパスワード + SMS OTP、パスワード + メール OTP などの認証手段も提供しています。
SMS 認証 #
SMS 認証は、ログインしようとしているユーザーが登録・確認済みの電話番号に SMS で 6 桁程度の認証用コードを送り、そのコードの入力によって認証する仕組みです。ユーザーは SMS が届くと、アプリを開いて認証用コードを記憶、もしくはコピーして入力する必要がありました。



iOS では以前から SMS を OS が読み取り本文中の認証用コードをサジェストする機能がありましたが、最近では、input 要素の autocomplete 属性に &quot;one-time-code&quot;と指定することで、サジェストが利用できるようになりました。Android や Windows、Mac の Chrome でも、WebOTP API という仕組みを利用することによって同様の体験を提供可能になっています。
HTML
    sign in
JavaScript
if (&#039;OTPCredential&#039; in window) {  const input = document.getElementById(&#039;code&#039;);  if (!input) return;  const ac = new AbortController();  const form = input.closest(&#039;form&#039;);  if (form) {    form.addEventListener(&#039;submit&#039;, e =&gt; {      ac.abort();    });  }  navigator.credentials.get({    otp: { transport:[&#039;sms&#039;] },    signal: ac.signal  }).then(otp =&gt; {    input.value = otp.code;  }).catch(err =&gt; {    console.log(err);  });}
いずれのアプローチも、SMS 文中にドメインを記載することで、指定されたドメインでのみサジェストすることにより、フィッシングされにくい仕組みになっています。 WebOTP API および autocomplete=&quot;one-time-code&quot; についての詳細はこちらの記事をご覧ください。



FIDO / WebAuthn #
FIDO / WebAuthn はハードウェア認証器で公開鍵暗号ペアを生成し、所持証明する認証方式です。特にスマートフォンが認証器の場合は、指紋センサーや顔識別といった生体認証と組み合わせて、一段階二要素認証を行うことができます。この際、サーバーには署名と生体認証が成功したという情報のみが送られるため、生体情報が盗まれる危険性はありません。
下記の図は FIDO / WebAuthn を行うサーバ/クライアントの構成図です。Client にある Authenticator は生体認証などを用いてユーザーの認証を行い、その結果に対して公開鍵暗号方式による署名を行います。また、署名作成に用いる秘密鍵を TEE (Trusted Execution Environment) などに安全に保管します。FIDO では FIDO を利用するサービス提供者などのことを RP と呼びますが、RP のアプリケーションは OS、Browser を通して Authenticator から取得した検証結果を Server に送信し、Server は検証結果の妥当性を検証することで認証を完了します。

   

詳しくはこちらの記事をご覧ください。
FIDO についてはデバイスの対応も進み、現在では下記のような対応状況となっています。

  
    
       
   
    OS
   
   
    FIDO サポート
   
  
  
  
  
   
    Android
   
   
    アプリ、ブラウザ (Chrome)
   
  
  
   
    iOS
   
   
    アプリ (iOS14 以降)、ブラウザ (Safari 14 以降)
   
  
  
   
    Windows
   
   
    ブラウザ (Edge, Chrome, Firefox)
   
  
  
   
    Mac (Big Sur 以降)
   
   
    ブラウザ (Safari, Chrome)
   
  

  

また、Yahoo! JAPAN ではこのうち、Android アプリ  / Web、iOS アプリ / Web、Windows (Edge、Chrome、Firefox)、Mac (Safari、Chrome)で FIDO に対応しています。コンシューマー向けのサービスとしてはおおよそのデバイスで FIDO は使える状況と言えますので、パスワードレスを進める上で FIDO はとても良い選択肢だと考えています。
Yahoo! JAPAN ではユーザーが他の手段で認証後、FIDO / WebAuthn を登録していなければ、登録を推奨します。こうすることで、ユーザーが同じデバイスでログインする必要がある場合、例えば SMS 認証を繰り返すことなく、指紋認証だけですぐに認証することができ、ユーザー体験が向上します。

  
  Yahoo! JAPAN で利用される FIDO

ただし、登録した生体認証は同じデバイスでしか利用できないため、ユーザーは新しいデバイスに移る度に別の手段で認証し、新しく生体認証を登録する必要があります。
パスワードレスの普及を段階的に進めるためには、その過程でパスワードから移行中のユーザーを含め、複数の認証手段をユーザーに提供する必要があります。複数の認証手段を提供すると、ユーザーによって認証手段の設定状態も違いますし、ブラウザによって使える認証手段も違います。さらには、前回の認証手段と同じ認証手段でのログインができるとユーザーにとっては良い体験となると思います。これらの要件を満たすため、前回認証に用いた認証手段が何であるか、Cookie などに情報を保持してクライアントに紐づけて管理したり、認証時に利用しているブラウザ / アプリを分析する必要があります。認証時はユーザーの設定状態、クライアントで前回行われた認証手段、最低限必要な認証のレベルなどから判断して適切な認証手段をユーザーに求めます。
2. パスワードの無効化 #
Yahoo! JAPAN ではパスワードの代替となる認証手段をユーザーに設定してもらった上でパスワードを無効化し、パスワードを使えないようにしています。パスワードの代替となる認証手段を設定するだけではなく、パスワードを使えなくすること（もしくはパスワードだけでサインイン出来なくすること）によって初めてリスト型攻撃への防御となります。
ここで問題となるのが、如何にユーザーにパスワードを無効化してもらうかということです。ユーザーにパスワードを無効化してもらえるよう、下記のような取り組みを行っています。

ユーザーがパスワードを再設定する場面でパスワードの代替となる認証手段を訴求
頻度高く認証を求める場面で使いやすい認証手段（FIDO など）の設定とともにパスワードの無効化を訴求
e コマースの決済のようなリスクの高いサービスを利用する前にパスワードの無効化を訴求

特にパスワードを忘れた場合、いわゆるアカウントリカバリをユーザーは行いますが、この際に以前であればパスワードを再設定していましたが、パスワード以外の認証手段も登録できるようにしており、これを推奨しています。
3. パスワードレスなアカウント登録 #
これが最もシンプルかつ効率的な対策です。アカウント作成時からパスワード不要のアカウントとして登録するのです。
Yahoo! JAPAN では SMS認 証をした上でまずSMSによるサインインが出来るアカウントとして登録をするようになっています。その後、任意で FIDOの 登録を出来るよう FIDO設定の訴求を行っています。FIDO はデバイスごとの設定であるためデバイスが利用できなくなってしまうとアカウントリカバリーが難しいため、まずは電話番号を登録し、その後に FIDO など他の認証手段の登録を求めています。
パスワードレスについての主な課題 #
パスワードという認証手段は人間の記憶に頼ったもので、デバイスに依存しない認証手段です。一方、パスワードレスへの取り組みとしてここまでに紹介した認証手段はデバイスに依存します。そのため、複数デバイスの間で同じアカウントを使うケースや、デバイスを失ったケースにおいて課題を抱えています。
複数デバイスに関する課題の具体例を紹介します。複数デバイスに関する課題は主にユーザビリティに関わるもので、下記のようなものがあります。

SMS 認証を利用する際、PCを利用しているときにスマートフォンに届く SMS を閲覧する必要があり、面倒である
FIDO で、特に Platform Authenticator と呼ばれる OS などに紐付いた Authenticator を使う場合、ユーザーが複数のデバイスを利用すると登録していないデバイスでは FIDO による認証が行えず、デバイスごとに登録する必要がある

デバイスを失ったケースの課題の具体例としては下記のようなものがあります。

電話番号の回線を契約解除すると登録された電話番号への SMS の送信ができなくなる
FIDO は秘密鍵をデバイスに保管する方式であり、当然デバイスを失うと発行した秘密鍵は利用できなくなる

パスワードレスの推進においてこれらの課題は重要なトピックで、Yahoo! JAPAN でもいろいろな取組をしています。
シンプルかつ最も重要な解決手段として、複数の認証手段を登録してもらうというやり方があります。これはデバイスを紛失するなどといった事態に備えた取り組みであり、デバイスごとでの最適な認証手段の設定でもあります。FIDO の鍵はデバイスに依存するので、複数のデバイスで FIDO の秘密鍵を登録することも良いやり方です。
他にも、WebOTP API を使うことで SMS の届く Android から PC の Chrome に SMS 内にある確認コードを受け渡すこともできます。詳しくはこちらの記事をご覧ください。また、最近では Apple が PassKeys という機能を発表しています。この機能は iCloud KeyChain を用いることで、デバイスに保存された秘密鍵を同じApple ID で Sign In しているデバイス間で共有し、デバイスごとの登録を不要にするものです（その後 Google、Microsoft と同名のプロジェクトを共同で推進することを発表）。なお、FIDO アライアンスもアカウントリカバリに関する課題を重要視しておりホワイトペーパーを発行しています。
これらの課題に対する取り組みはパスワードレスの拡大に伴って、更に重要なトピックとなっていくと考えています。
パスワードレスの推進 #
これらのパスワードレスへの取り組みを Yahoo! JAPAN は 2015 年頃より進めてきました。2015 年 5 月の FIDO サーバーの認定取得を始めとして、そこから SMS 認証の導入や、パスワード無効化機能の提供、各デバイスでの FIDO 対応などを順次進めて来ました。いまでは月間アクティブユーザーのうち、3,000 万を超えるユーザーがパスワードを無効化済みで、パスワード以外の認証手段を用いています。Yahoo! JAPAN での FIDO への対応は Android ブラウザ（Chrome）から始まり、いまでは FIDO の設定したユーザーは 1,000 万を超えています。
この取組の成果として、ログイン ID / パスワードを忘れたという問い合わせについて、最も多かった時期から比べて、全体に占める割合が25%も減少しましたし、不正アクセスについても、パスワードレスのアカウントが増えることにより減少することが確認できています。
特に FIDO は設定も簡単なため、その設定 CVR も高くなっています。実際に、Yahoo! JAPANでは前述の SMS 認証などより CVR が高いことがわかっています。また、FIDO については SMS認証に比べ認証時の成功率が高いこと、また認証にかかる時間についても平均速度が速く中央値も最も速いことがわかっています。なお、パスワードについては認証時間が短いグループもいることがわかっており、これはブラウザの autocomplete=&quot;current-password&quot; によるものではないかと考えています。



25
%

ログイン ID / パスワード忘れの問い合わせの削減



74
%

FIDO での認証成功率



65
%

SMS 認証での認証成功率




平均すると、パスワードでは 21 秒、SMS では 27 秒かかるが、FIDO では 8 秒で認証できる。

パスワードレスを進める上で一番難しいことは、認証手段の追加ではなく、その利用を如何に普及させるかというところです。パスワードレスによるサービス利用の体験が良く、またユーザーにとって合理的でなければなかなか移行は進みませんので、ユーザビリティを高めることで結果としてユーザーのセキュリティ向上を実現させる必要があり、これらはサービスによって独自の工夫が必要になると考えています。
まとめ #
今回は Yahoo! JAPAN のパスワードレスへの取り組みを紹介させていただきました。パスワードによる認証はセキュリティ面のリスクもあり、またユーザビリティの点でも課題を抱えています。その上、現在は、Web OTP API や FIDO など、パスワード以外での認証を支える技術も普及してきていますので、パスワードレスの取り組みを始めるべき時期と言えます。Yahoo! JAPAN では、このパスワードレスの取り組みにより、ユーザビリティ、セキュリティ双方の効果が確実に出ています。ただ、まだ多くのユーザーがパスワードを使用されておりますので、引き続きパスワードレスな認証手段の利用を拡大させていきます。また、パスワードレスな認証手段にプロダクトのユーザー体験を最適化するよう、プロダクトの改善も続けていきたいと考えています。
Photo by olieman.eth on Unsplash ]]></description>
<link>https://tsecurity.de/de/1725685/IT+Betriebssysteme/Web+Tipps/Yahoo%21+JAPAN+%E3%81%AF%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89%E3%83%AC%E3%82%B9%E8%AA%8D%E8%A8%BC%E3%81%A7%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E3%82%92+25%25+%E5%89%8A%E6%B8%9B%E3%80%81%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E6%99%82%E9%96%93%E3%82%82+2.6+%E5%80%8D%E9%80%9F%E3%81%AB/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725685/IT+Betriebssysteme/Web+Tipps/Yahoo%21+JAPAN+%E3%81%AF%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89%E3%83%AC%E3%82%B9%E8%AA%8D%E8%A8%BC%E3%81%A7%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E3%82%92+25%25+%E5%89%8A%E6%B8%9B%E3%80%81%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E6%99%82%E9%96%93%E3%82%82+2.6+%E5%80%8D%E9%80%9F%E3%81%AB/</guid>
<pubDate>Tue, 10 May 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Yahoo! JAPAN's password-free authentication reduced inquiries by 25%, sped up sign-in time by 2.6x]]></title> 
<description><![CDATA[Yahoo! JAPAN is one of the largest media companies in Japan, providing
services such as search, news, e-commerce, and e-mail. Over 50 million users
log in to Yahoo! JAPAN services every month.
Over the years, there were many attacks on user accounts and issues that led
to lost account access. Most of these issues were related to password usage
for authentication.
With recent advances in authentication technology, Yahoo! JAPAN has decided to
move from password-based to passwordless authentication.
Why passwordless? #
As Yahoo! JAPAN offers e-commerce and other money-related services, there&#039;s a
risk of significant damage to users in the event of unauthorized access or
account loss.
The most common attacks related to passwords were password list attacks and
phishing scams. One of the reasons why password list attacks are common and
effective is many people&#039;s habit of using the same password for multiple
applications and websites.
The following figures are the results of a survey conducted by Yahoo! JAPAN.



50
%

use the same ID and password on six or more sites



60
%

Use the same password across multiple sites



70
%

use a password as the primary way to login


Users often forget their passwords, which accounted for the majority of
password-related inquiries. There were also inquiries from users who had
forgotten their login IDs in addition to their passwords. At their peak, these
inquiries accounted for more than a third of all account-related inquiries.
By going passwordless, Yahoo! JAPAN aimed to improve not only security, but
also usability, without placing any extra burden on users.
From a security perspective, eliminating passwords from the user
authentication process reduces the damage from list-based attacks, and from a
usability perspective, providing an authentication method that does not rely
on remembering passwords prevents situations where a user is unable to login
because they forgot their password.
Yahoo! JAPAN&#039;s passwordless initiatives #
Yahoo! JAPAN is taking a number of steps to promote passwordless
authentication, which can be broadly divided into three categories:

Provide an alternative means of authentication to passwords.
Password deactivation.
Passwordless account registration.

The first two initiatives aimed at existing users, while passwordless
registration is aimed at new users.
1. Providing an alternative means of authentication to passwords #
Yahoo! JAPAN offers the following alternatives to passwords.

SMS authentication
FIDO with WebAuthn

In addition, we also offer authentication methods such as e-mail
authentication, password combined with SMS OTP (one time password), and
password combined with email OTP.
    Important Yahoo! JAPAN restricts their service to phone carriers operating inside Japan and prohibits VoIP SMS. 
SMS authentication #
SMS authentication is a system which allows a registered user to receive a
six-digit authentication code through SMS. Once the user receives the SMS,
they can enter the authentication code in the app or website.



Apple has long allowed iOS to read SMS messages and suggest authentication
codes from the text body. Recently, it&#039;s become possible to use suggestions by
specifying &quot;one-time-code&quot; in the autocomplete attribute of the input
element. Chrome on Android, Windows, and Mac can provide the same experience
using the WebOTP API.
For example:
    sign in
if (&#039;OTPCredential&#039; in window) {  const input = document.getElementById(&#039;code&#039;);  if (!input) return;  const ac = new AbortController();  const form = input.closest(&#039;form&#039;);  if (form) {    form.addEventListener(&#039;submit&#039;, e =&gt; {      ac.abort();    });  }  navigator.credentials.get({    otp: { transport:[&#039;sms&#039;] },    signal: ac.signal  }).then(otp =&gt; {    input.value = otp.code;  }).catch(err =&gt; {    console.log(err);  });}
Both approaches are designed to prevent phishing by including the domain in
the SMS body and providing suggestions only for the specified domain.
For more information about the WebOTP API and autocomplete=&quot;one-time-code&quot;,
check out SMS OTP form best practices.



FIDO with WebAuthn #
FIDO with WebAuthn uses a hardware authenticator to generate a public key
cipher pair and prove possession. When a smartphone is used as the
authenticator, it can be combined with biometric authentication (such as
fingerprint sensors or facial recognition) to perform one-step two-factor
authentication. In this case, only the signature and the success indication
from the biometric authentication are sent to the server, so there is no risk
of biometric data theft.
The following diagram shows the server-client configuration for FIDO. The
client authenticator authenticates the user with biometrics and signs the
result using public key cryptography. The private key used to create the
signature is securely stored in a TEE (Trusted Execution Environment)
or similar location. A service provider that uses FIDO is called an RP
(relying party).

   

Once the user performs the authentication (commonly with a biometric scan or PIN), the authenticator uses a private key to send a signed verification signal to the browser. The browser then shares that signal with the RP&#039;s website.The RP website then sends the signed verification signal to the RP&#039;s server, which verifies the signature against the public key to complete the authentication.


For more information, read
authentication guidelines from the FIDO Alliance.
Yahoo! JAPAN supports FIDO on Android (mobile app and web), iOS (mobile app
and web), Windows (Edge, Chrome, Firefox), and macOS (Safari, Chrome). As a
consumer service, FIDO can be used on almost any device, which makes it a good
option for promoting passwordless authentication.

  
    
       
   
    Operating System
   
   
    Support for FIDO
   
  
  
  
  
   
    Android
   
   
    Apps, Browser (Chrome)
   
  
  
   
    iOS
   
   
    Apps (iOS14 or later), Browser (Safari 14 or later)
   
  
  
   
    Windows
   
   
    Browser (Edge, Chrome, Firefox)
   
  
  
   
    Mac (Big Sur or later)
   
   
    Browser (Safari, Chrome)
   
  

  


  
  Sample Yahoo! JAPAN prompt to authenticate with FIDO.

Yahoo! JAPAN recommends that users register for FIDO with WebAuthn, if they&#039;ve
not already authenticated through other means. When a user needs to log in
with the same device, they can quickly authenticate using a biometric sensor.
Users must set up FIDO authentication with all devices they use to log in to
Yahoo! JAPAN.
To promote passwordless authentication and be considerate of users who are
transitioning away from passwords, we provide multiple means of
authentication. This means that different users can have different
authentication method settings, and the authentication methods they can use
may differ from browser to browser. We believe it&#039;s a better experience if
users log in using the same authentication method each time.
To meet these requirements, it&#039;s necessary to track previous authentication
methods and link this information to the client by storing it in the form of
cookies, etc. We can then analyze how different browsers and applications are
used for authentication. The user is asked to provide appropriate
authentication based on the user&#039;s settings, the previous authentication
methods used, and the minimum level of authentication required.
2. Password deactivation #
Yahoo! JAPAN asks users to set up an alternative authentication method and
then disable their password so that it cannot be used. In addition to setting
up alternative authentication, disabling password authentication (therefore
making it impossible to sign in with only a password) helps protect users from
list-based attacks.
We&#039;ve taken the following steps to encourage users to disable their
passwords.

Promoting alternative authentication methods when users reset their passwords.
Encouraging users to set up easy-to-use authentication methods (such as
FIDO) and disable passwords for situations that require frequent
authentication.
Urging users to disable their passwords before using high-risk services,
such as e-commerce payments.

If a user forgets their password, they can run an account recovery. Previously
this involved a password reset. Now, users can choose to set up a different
authentication method, and we encourage them to do so.
3. Passwordless account registration #
New users can create password-free Yahoo! JAPAN accounts. Users are first
required to register with an SMS authentication. Once they&#039;ve logged in, we
encourage the user to set up FIDO authentication.
Since FIDO is a per-device setting, it can be difficult to recover an account,
should the device become inoperable. Therefore, we require users to keep their
phone number registered, even after they&#039;ve set up additional authentication.
Key challenges for passwordless authentication #
Passwords rely on human memory and are device-independent. On the other hand,
the authentication methods introduced thus far in our passwordless initiative
are device-dependent. This poses several challenges.
When multiple devices are used, there are some issues related to usability:

When using SMS authentication to log in from a PC, users must check their
mobile phone for incoming SMS messages. This may be inconvenient, as it
requires the user&#039;s phone to be available and easy to access at any time.
With FIDO, especially with platform authenticators, a user with multiple
devices will be unable to authenticate on unregistered devices.
Registration must be completed for each device they intend to use.

FIDO authentication is tied to specific devices, which requires they remain in
the user&#039;s possession and active.

If the service contract is canceled, it will no longer be possible to send
SMS messages to the registered phone number.
FIDO stores private keys on a specific device. If the device is lost, those
keys are unusable.

Yahoo! JAPAN is taking various steps to address these problems.
The most important solution is to encourage users to set up multiple
authentication methods. This provides alternative account access when devices
are lost. Since FIDO keys are device-dependent, it is also good practice to
register FIDO private keys on multiple devices.
Alternatively, users can use the WebOTP API to pass SMS verification
codes from an Android phone to Chrome on a PC.
 Apple recently announced the passkeys feature. Apple uses iCloud Keychain to share the private key (stored on the device) among devices that are signed in with the same Apple ID, which eliminates the need for registration for each device.  The FIDO Alliance recognizes the importance of account recovery issues and has published a white paper. 
We believe that addressing these issues will become even more important as
passwordless authentication spreads.
Promoting passwordless authentication #
Yahoo! JAPAN has been working on these passwordless initiatives since 2015.
This began with the acquisition of FIDO server certification in May 2015,
followed by the introduction of SMS authentication, a password deactivation
feature, and FIDO support for each device.
Today, more than 30 million monthly active users have already disabled their
passwords and are using non-password authentication methods. Yahoo! JAPAN&#039;s
support for FIDO started with Chrome on Android, and now more than 10 million
users have set up FIDO authentication.
As a result of Yahoo! JAPAN&#039;s initiatives, the percentage of inquiries
involving forgotten login IDs or passwords has decreased by 25% compared to the
period when the number of such inquiries was at its highest, and we have also
been able to confirm that unauthorized access has declined as a result of the
increase in the number of passwordless accounts.
Since FIDO is so easy to set up, it has a particularly high conversion rate.
In fact, Yahoo! JAPAN has found that FIDO has a higher CVR than SMS
authentication.



25
%

Decrease in requests for forgotten credentials



74
%

Users succeed with FIDO authentication



65
%

Succeed with SMS verification


FIDO has a higher success rate than SMS authentication, and faster average and
median authentication times. As for passwords, some groups have short
authentication times, and we suspect that this is due to the browser&#039;s
autocomplete=&quot;current-password&quot;.


On average, FIDO takes 8 seconds to authenticate, while passwords take 21 seconds, and SMS verification takes 27.

The greatest difficulty for offering passwordless accounts is not the addition
of authentication methods, but popularizing the use of authenticators.
If the experience of using a passwordless service is not user-friendly, the
transition will not be easy.
We believe that to achieve improved security we must first improve usability,
which will require unique innovations for each service.
Conclusion #
Password authentication is risky in terms of security, and it also poses
challenges in terms of usability. Now that technologies supporting
non-password authentication, such as WebOTP API and FIDO, are more widely
available, it&#039;s time to start working toward passwordless authentication.
At Yahoo! JAPAN, taking this approach has had a definite effect on both
usability and security. However, many users are still using passwords, so we
will continue to encourage more users to switch to passwordless authentication
methods. We will also continue improving our products to optimize the user
experience for passwordless authentication methods.
Photo by olieman.eth on Unsplash ]]></description>
<link>https://tsecurity.de/de/1725686/IT+Betriebssysteme/Web+Tipps/Yahoo%21+JAPAN%27s+password-free+authentication+reduced+inquiries+by+25%25%2C+sped+up+sign-in+time+by+2.6x/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725686/IT+Betriebssysteme/Web+Tipps/Yahoo%21+JAPAN%27s+password-free+authentication+reduced+inquiries+by+25%25%2C+sped+up+sign-in+time+by+2.6x/</guid>
<pubDate>Tue, 10 May 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How RebelMouse grew loyalty and engagement by optimizing Core Web Vitals]]></title> 
<description><![CDATA[RebelMouse is a cloud-based CMS with the data-driven tools and creative strategy publishers need to provide the best experience possible for audiences, both new and old. We power high-traffic web properties for media companies like Upworthy, Narcity, Raw Story, Brit + Co, and The Independent, as well as high-value sites like Penske Trucks, Vault12, Gaingels, and many others.
Our platform reaches over 100 million people monthly in the U.S. alone. The company was founded on the belief that the open web needs to perform at the highest levels of consumer expectations to thrive, and the standards set by Google&#039;s Core Web Vitals align with this user-first vision.
For more than a decade, our global team has been engineering a CMS that creates positive and intuitive user experiences that translate into meaningful business. Core Web Vitals are a benchmark that ensure this symbiotic loop continues across every new site we power.
Why prioritizing performance means better business #
Many publishers doubt whether excellent scores on Core Web Vitals are worth the effort. They also worry that even a quality user experience won&#039;t deliver the boost in readership they need. Fortunately, our prioritization of performance at RebelMouse has given us the data to prove that Core Web Vitals are an excellent way to generate new traffic and build the user loyalty needed to have a successful business.
In order to illustrate this, we analyzed the audience behavior of a number of sites we power, both before and after we optimized for high performance scores on Core Web Vitals. In particular, we defined types of users to separate the audiences into the following key categories:

New Visitors: Users who visited a site for the first time.
Returning Visitors: Users who had at least two sessions.
Loyal Visitors: Users who had at least three sessions or more.
Fans: Users who had at least four sessions or more.
Superfans: Users who had at least five sessions or more.

References:

https://www.hotjar.com/google-analytics/glossary/users
https://databox.com/new-vs-returning-visitors

The data from the field, gathered by Google Analytics, was overwhelmingly clear. When focusing on loyal visitors, fans, and superfans categories, we found that users are far more likely to stay longer, consume more content, and return more often on sites that receive excellent marks on their Core Web Vitals. Here&#039;s a look at some prominent examples:

  
    
      
        
        
          Loyal Visitors
          (3 or More Sessions/User)
        
        
          Fans
          (4 or More Sessions/User)
        
        
          Superfans
          (5 or More Sessions/User)
        
      
      
        Website
        Pages/User
        Time/User
        Pages/User
        Time/User
        Pages/User
        Time/User
      
    
    
      
        Brit + Co
        +1.9%
        +2.6%
        +6.6%
        +7.2%
        +6.3%
        +7.8%
      
      
        Hamu &eacute;s Gy&eacute;m&aacute;nt
        +10.6%
        +48.2%
        +13.1%
        +47.2%
        +6.9%
        +35.3%
      
      
        Knocksense
        +37.5%
        +52.8%
        +46.9%
        +64.4%
        +47.0%
        +64.6%
      
      
        Upworthy
        +117.6%
        +50.0%
        +117.1%
        +50.8%
        +114.2%
        +49.2%
      
    
  

But content consumption and time spent per user weren&#039;t the only metrics to spike. The number of users visiting and pages accessed also increased among the same categories:

  
    
      
        
        
          Loyal Visitors
          (3 or More Sessions/User)
        
        
          Fans
          (4 or More Sessions/User)
        
        
          Superfans
          (5 or More Sessions/User)
        
      
      
        Website
        Users
        Pageviews
        Users
        Pageviews
        Users
        Pageviews
      
    
    
      
        Am&eacute;ricaEconom&iacute;a
        +16.0%
        +10.4%
        +11.8%
        +6.8%
        +6.9%
        +4.6%
      
      
        EHN
        +24.2%
        +13.8%
        +24.9%
        +13.4%
        +24.0%
        +9.0%
      
      
        PAPER Magazine
        +24.7%
        +20.0%
        +39.7%
        +32.1%
        +55.7%
        +35.7%
      
      
        Second Nexus
        +16.8%
        +14.2%
        +15.0%
        +13.4%
        +15.7%
        +13.3%
      
    
  

From normal to high-performing: How RebelMouse transforms websites #
The good news is that performing well on Core Web Vitals is possible with thoughtful, strategic changes made to your site&#039;s codebase. Here are a few ways RebelMouse powers high-performing websites:
Progressive web app #
RebelMouse optimizes all third-party calls in a progressive web app that delivers the most important content first, and then sequences the rest of the calls as the reader needs to see them.
We have a method that loads JavaScript immediately after the Largest Contentful Paint (LCP) event has completed. We give our users the option to load JavaScript through three different priority levels:

Optimized is best for users who want the latest cutting-edge approaches. We use it in our own development work. This priority level will pause JavaScript from firing until well after the page has fully loaded, which gives you the highest performance.
Load Blocking is used for executing JavaScript right away, and will generally have a negative impact on your performance scores. This priority level will fire the JavaScript immediately after the page has completed loading. This has the potential to drop your performance scores by 10&ndash;40 points depending on the extra call.
Post LCP is the best option to blend great performance scores with a very fast load. This priority level will cause JavaScript to load immediately after the Largest Contentful Paint event has completed. (This is recommended for ads only, where you have increased revenue in delivering ads to users who are only on the page for five seconds or so.)

Optimize social embeds #
To protect Cumulative Layout Shift (CLS) and LCP scores, all social embeds need to be set to lazy load.
For CLS preservation, you have to dynamically find the size of the embed with server-side technology, and insert it into your own storage of the properties of that embed. Then, the embed needs to be delivered to your front end to prevent the layout from shifting upon load. For those with interest in deeper dives on this topic, we have posts specifically on Twitter and TikTok examples with more details.
Ultra-light, smart HTML and CSS #
Site HTML and CSS has to be constructed in a way that allows for the delivery of above-the-fold images and text to preload before the rest of the page.

Bad HTML constructs will force the browser to process many unnecessary site elements that are below the fold in order to render what is above the fold in the first viewport.
We have more in-depth articles on how we achieve this on RebelMouse here:

A breakdown on how to improve Core Web Vitals.
A full guide on implementing fast page speeds while also including third-party scripts.
An in-depth guide on optimizing for LCP.



Publish with a performance-first mindset #
Since the rollout of Core Web Vitals, developers have felt the impact of how their publishing platforms stack up against Google&#039;s recommended thresholds.
HTTP Archive, an open-source project that identifies trends and records historical patterns across millions of URLs, has revealed how top content management systems perform against Google&#039;s page experience standards in its Core Web Vitals Technology Report. RebelMouse has consistently outperformed major CMS platforms on Google&#039;s most critical metrics since its rollout and into 2022:

  

Performance without compromise #
Creating quality content is now only half the battle for publishers and brands alike. Quality content must be supported by modern technology that can keep up with the speed and standards of today&#039;s web. We&#039;re able to deliver Core Web Vitals that make the grade because site performance isn&#039;t just a goal, it&#039;s a company pillar that&#039;s woven into our culture. We use our intense focus on performance to help our clients make the most of the open web by growing traffic and building revenue without sacrificing user experience.
If you&#039;d like to learn more about how we can help your site exceed the industry standard on Core Web Vitals, click here to learn more about RebelMouse today. ]]></description>
<link>https://tsecurity.de/de/1725687/IT+Betriebssysteme/Web+Tipps/How+RebelMouse+grew+loyalty+and+engagement+by+optimizing+Core+Web+Vitals/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725687/IT+Betriebssysteme/Web+Tipps/How+RebelMouse+grew+loyalty+and+engagement+by+optimizing+Core+Web+Vitals/</guid>
<pubDate>Fri, 15 Apr 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[A modern web experience on Adobe Experience Manager with WorkBox]]></title> 
<description><![CDATA[If you are a technical lead or digital marketing analyst interested in providing a modern Web experience to your Adobe Experience Manager (AEM) web application and have been looking for your options in doing so, then you have come to the right article. This will cover what Progressive Web Apps (PWA) are and what you need to create a PWA in AEM leveraging the WorkBox library through configuration, without coding.
Why PWA? #
Progressive Web Apps leverage what the modern web can do. They are installable on your device, load quickly, with subsequent visits loading instantly. They respond to input quickly. They work well on an unreliable connection or when offline. PWAs use modern APIs to provide an engaging app-like experience with an optional full screen UI, background updating, and offline access to data.

  

To enhance a web app into a Progressive Web App requires adding two artifacts:

A web app manifest: a JSON configuration file that defines the app&#039;s entry point URL, the icon used to represent the PWA and other configuration that describe how the application looks and behaves.
A service worker: a script that provides background services that enrich your PWA by defining resources your PWA uses and the strategies to access them.

What is a service worker? #
At its core, a service worker is just a script that your browser runs independently as you interact with your web application. An active service worker provides services such as smart caching using the Cache API, keeping data up to date using the Background Sync API, and integrating with push notifications. A service worker with the right caching strategy provides stable and reliable user experiences for various scenarios, returning pre-cached resources instantly, storing data in cache, and updating resources when connected to the web.

  


Service workers can be hard to write from scratch. Workbox was created to make it easier. Workbox is a set of libraries to help you write and manage service workers and caching with the Cache Storage API. Service workers and the Cache Storage API, when used together, control how assets (HTML, CSS, JS, images, etc.) are requested from the network or cache, even allowing you to return cached content when offline. With Workbox, you can quickly set up and manage both, and more, with production-ready code.
Upgrading an AEM site to a PWA #
Adobe Experience Manager (AEM) is a comprehensive content management solution for building websites, mobile apps, forms, and digital signage. It makes it easy to manage your marketing content and assets.
While AEM provides a rich library for building web applications, until now it&#039;s been difficult to build a PWA by adding a service worker and a manifest.
Adobe Experience Manager Sites is the UI building tool that is part of Adobe Experience Manager. When used with Adobe Experience Manager as a cloud service, AEM Sites makes it easy to convert any existing AEM website or single page application into an installable offline-enabled Progressive Web App with just configuration and no coding. It uses Workbox to deliver the best practices for Progressive Web Apps and abstracts the complexities of writing boilerplate manifests and service workers.
AEM supports localization of content which means you can have different branding and even different offline content for different locales. To do this build different PWA configurations for each language master.
Getting started with PWA configuration on AEM #
Log into Adobe Experience Manager as a Cloud Service and select any Adobe Experience Manager Sites page or language master and click properties. You should see a tab called Progressive Web App. (Note: if you do not see this tab, please contact Adobe to enable this feature.) You can configure the installation and the look and feel of your Progressive Web Apps with just a few clicks.
If you&#039;ve completed AEM Sites tutorials you have likely seen the WKND site before. This article uses the WKND demo as the starting point. When you are done you will have updated WKND from a web app to a PWA using WorkBox.
Configure the manifest #
The web app manifest is a JSON file that contains properties that describe the look and behavior of a PWA. Adobe Experience Manager Sites provides a friendly user interface to configure the properties.

  

The start URL is the entry point of your PWA. When a user taps on the the PWA icon on their phone, they will be accessing the startup URL. The display mode configures whether the app is a windowed or fullscreen experience. You can also specify the screen orientation of the application. The theme color is the color of the window and toolbar while the background color is the color of the splash screen when the application is launched. The icon is the image that is shown on the devices home screen or application drawer when the application is installed on the device. The configuration shown in the image generates the manifest JSON shown below.
{  &quot;name&quot;: &quot;WKND Adventures and Travel&quot;,  &quot;short_name&quot;: &quot;WKND Adventures and Travel&quot;,  &quot;start_url&quot;: &quot;/content/wknd/us/en.html&quot;,  &quot;display&quot;: &quot;standalone&quot;,  &quot;theme_color&quot;: &quot;#FFDC00&quot;,  &quot;background_color&quot;: &quot;#FF851B&quot;,  &quot;orientation&quot;: &quot;any&quot;,  &quot;icons&quot;: [    {      &quot;src&quot;: &quot;/content/dam/wknd/pwa-logo.png&quot;,      &quot;type&quot;: &quot;image/png&quot;,      &quot;sizes&quot;: &quot;512x512&quot;,      &quot;purpose&quot;: &quot;any maskable&quot;    }  ]}
The start URL can be different from the default landing page for your domain. By changing the start_url parameter, you can send your users directly to the application experience rather than the default page a non-authenticated or new user would be presented. This provides PWA users with a smoother, more app-like experience.
AEM understands that different locales can have a different look and feel. You can configure different properties, colors, and icons for different locales or languages and then synchronize the configuration with the linked pages.
Once the PWA is accessed on the browser, you can right click and inspect to bring up DevTools and view the manifest under the Applications panel.

  

Configure the service worker #
You can configure the content to cache and the caching strategy to use.
If you have been using service workers you may be familiar with caching strategies. Caching strategies specify which resources to cache and whether to look for those resources in the cache first, the network first, or in the cache with a network fallback. You can then choose the resources to pre-cache when the service worker is installed. AEM Application service workers implement a warm cache strategy which means user&#039;s experience will not break even if you specify a missing or broken path.

  

In AEM, the term &quot;clientlibs&quot; refers to client-side Libraries: the combination of related JavaScript, CSS, and static resources that have been added to your project that are served to and utilized by the client web browser. You can easily set your client-side libraries to be used offline by specifying those libraries in the user interface.

  

You can also include third-party resources such as fonts. This offline cache configuration provides configuration information to a service worker that is generated for your application that internally uses workbox. That is pretty much all there is to make your application installable. Once installed, the application icon will show up on your mobile device home screen just like a platform app. Clicking the icon will access the wknd site.
Please note that you can change your content or these settings at any time. When you publish your changes, the service worker will be updated at the client by the browser and a message will be presented to the user that a newer version of the PWA is available. The user can click the message to reload the application and get the latest updates. You can open the browser developer tools and applications panel to view the service worker details.

  

You can expand cache storage to view the content that has been cached locally:

  

The results #
It&#039;s time to look at the results of your hard work. With just configuration and without coding you have just enhanced your AEM site to become a Progressive Web App.

Chrome developer tools provide a lighthouse audit that lets you check how compliant your web application and configuration is with Progressive Web App standards.

  

Conclusion #
Progressive Web Apps provide an app-like experience for your website, that uses the cross platform and open nature of the web at a lower cost of development and maintenance while providing control over distribution. This enhances engagement, retention, and most importantly, drives higher conversion rates. AEM in conjunction with Workbox makes it easy to enhance your existing site into a PWA with just configuration and no coding.
References #

WKND Tutorial
Service Workers
Cache API
Web application manifest
Adaptive icon support in PWAs with maskable icons
Learn more about Adobe Experience Manager Sites: https://business.adobe.com/products/experience-manager/sites/aem-sites
Learn more about Workbox: https://developers.google.com/web/tools/workbox/guides/get-started
Workbox Caching strategies: https://developers.google.com/web/tools/workbox/modules/workbox-strategies
Learn more about Progressive Web Apps
 ]]></description>
<link>https://tsecurity.de/de/1725688/IT+Betriebssysteme/Web+Tipps/A+modern+web+experience+on+Adobe+Experience+Manager+with+WorkBox/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725688/IT+Betriebssysteme/Web+Tipps/A+modern+web+experience+on+Adobe+Experience+Manager+with+WorkBox/</guid>
<pubDate>Tue, 12 Apr 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[MishiPay's PWA increases transactions 10 times and saves 2.5 years of queuing]]></title> 
<description><![CDATA[MishiPay empowers shoppers to scan and pay for their shopping with their smartphones, rather than
wasting time queuing at the checkout. With MishiPay&#039;s Scan &amp; Go technology,
shoppers can use their own phone to scan the barcode on items and pay for them, then simply leave
the store. Studies reveal that
in-store queuing costs the global retail sector about $200 billion annually.
Our technology relies on device hardware capabilities such as GPS sensors and cameras that allow
users to locate MishiPay-enabled stores, scan item barcodes within the physical store, and then pay
using the digital payment method of their choice. The initial versions of our Scan &amp; Go technology
were platform-specific iOS and Android applications, and early adopters loved the technology. Read
on to learn how switching to a PWA increased transactions by 10 times and saved 2.5 years of
queuing!

  
    
      10&times;
    
    Increased transactions
  
  
    
      2.5 years
   
    Queuing saved
  

Challenge #
Users find our technology extremely helpful when waiting in a queue or check-out line, as it allows
them to skip the queue and have a smooth in-store experience. But the hassle of downloading an
Android or iOS application made users not choose our technology despite the value. It was a growing
challenge for MishiPay, and we needed to increase user adoption with a lower barrier of entry.
Solution #
Our efforts at building and launching the PWA helped us remove the installation hassle and
encouraged new users to try our technology inside a physical store, skip the queue, and have a
seamless shopping experience. Since the launch, we have seen a massive spike in user adoption with
our PWA compared to our platform-specific applications.

            
  
    Side-by-side comparison of directly launching the PWA (left, faster) vs. installing and launching the Android app (right, slower).
  


  
  
    The majority of all transactions happen on the web.
  

Technical deep-dive #
Locating MishiPay enabled stores #
To enable this feature, we rely on the
getCurrentPosition()
API along with an IP-based fallback solution.
const geoOptions = {  timeout: 10 * 1000,  enableHighAccuracy: true,  maximumAge: 0,};window.navigator.geolocation.getCurrentPosition(  (position) =&gt; {    const cords = position.coords;    console.log(`Latitude :  ${cords.latitude}`);    console.log(`Longitude :  ${cords.longitude}`);  },  (error) =&gt; {    console.debug(`Error: ${error.code}:${error.message}`);    /**     * Invoke the IP based location services     * to fetch the latitude and longitude of the user.     */  },  geoOptions,);
This approach worked well in the earlier versions of the app, but was later proven to be a huge pain
point for MishiPay&#039;s users for the following reasons:

Location inaccuracies in the IP-based fallback solutions.
A growing listing of MishiPay-enabled stores per region requires users to scroll a list and
identify the correct store.
Users accidentally occasionally choose the wrong store, causing the purchases to be recorded
incorrectly.

To address these issues, we embedded unique geolocated QR codes on the in-store displays for each
store. It paved the way for a faster onboarding experience. Users simply scan the geolocated QR
codes printed on marketing material present in the stores to access the Scan &amp; Go web application.
This way, they can avoid typing in the web address mishipay.shop to access the service.

            
  
    In-store scanning experience using the PWA.
  

Scanning products #
A core feature in the MishiPay app is the barcode scanning as this empowers our users to scan their
own purchases and see the running total even before they would otherwise have reached a cash
register.
To build a scanning experience on the web, we have identified three core layers.

Video stream #
With the help of the
getUserMedia() method, we
can access the user&#039;s rear view camera with the constraints listed below. Invoking the method
automatically triggers a prompt for users to accept or deny access to their camera. Once we have
access to the video stream, we can relay it to a video element as shown below:
/** * Video Stream Layer * https://developer.mozilla.org/docs/Web/API/MediaDevices/getUserMedia */const canvasEle = document.getElementById(&#039;canvas&#039;);const videoEle = document.getElementById(&#039;videoElement&#039;);const canvasCtx = canvasEle.getContext(&#039;2d&#039;);fetchVideoStream();function fetchVideoStream() {  let constraints = { video: { facingMode: &#039;environment&#039; } };  if (navigator.mediaDevices !== undefined) {    navigator.mediaDevices      .getUserMedia(constraints)      .then((stream) =&gt; {        videoEle.srcObject = stream;        videoStream = stream;        videoEle.play();        // Initiate frame capture - Processing Layer.      })      .catch((error) =&gt; {        console.debug(error);        console.warn(`Failed to access the stream:${error.name}`);      });  } else {    console.warn(`getUserMedia API not supported!!`);  }}
Processing layer #
For detecting a barcode in a given video stream, we need to periodically capture frames and transfer
them to the decoder layer. To capture a frame, we simply draw the streams from VideoElement onto
an HTMLCanvasElement using the
drawImage()
method of the Canvas API.
/** * Processing Layer - Frame Capture * https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Manipulating_video_using_canvas */async function captureFrames() {  if (videoEle.readyState === videoEle.HAVE_ENOUGH_DATA) {    const canvasHeight = (canvasEle.height = videoEle.videoHeight);    const canvasWidth = (canvasEle.width = videoEle.videoWidth);    canvasCtx.drawImage(videoEle, 0, 0, canvasWidth, canvasHeight);    // Transfer the `canvasEle` to the decoder for barcode detection.    const result = await decodeBarcode(canvasEle);  } else {    console.log(&#039;Video feed not available yet&#039;);  }}
For advanced use cases, this layer also performs some pre-processing tasks such as cropping,
rotating, or converting to grayscale. These tasks can be CPU-intensive and result in the application
being unresponsive given that barcode scanning is a long-running operation. With the help of the
OffscreenCanvas API, we can offload
the CPU-intensive task to a web worker. On devices that support hardware graphics acceleration,
WebGL API and its
WebGL2RenderingContext can
optimize gains on the CPU-intensive pre-processing tasks.
Decoder layer #
The final layer is the decoder layer which is responsible for decoding barcodes from the frames
captured by the processing layer. Thanks to the
Shape Detection API (which is
not yet available on all browsers) the browser itself decodes the barcode from an
ImageBitmapSource, which can be an img element, an SVG image element, a video element, a
canvas element, a Blob object, an ImageData object, or an ImageBitmap object.

/** * Barcode Decoder with Shape Detection API * https://web.dev/shape-detection/ */async function decodeBarcode(canvas) {  const formats = [    &#039;aztec&#039;,    &#039;code_128&#039;,    &#039;code_39&#039;,    &#039;code_93&#039;,    &#039;codabar&#039;,    &#039;data_matrix&#039;,    &#039;ean_13&#039;,    &#039;ean_8&#039;,    &#039;itf&#039;,    &#039;pdf417&#039;,    &#039;qr_code&#039;,    &#039;upc_a&#039;,    &#039;upc_e&#039;,  ];  const barcodeDetector = new window.BarcodeDetector({    formats,  });  try {    const barcodes = await barcodeDetector.detect(canvas);    console.log(barcodes);    return barcodes.length &gt; 0 ? barcodes[0][&#039;rawValue&#039;] : undefined;  } catch (e) {    throw e;  }}
For devices that don&#039;t support the Shape Detection API yet, we need a fallback solution to decode
the barcodes. The Shape Detection API exposes a
getSupportedFormats()
method which helps switch between the Shape Detection API and the fallback solution.
// Feature detection.if (!(&#039;BarceodeDetector&#039; in window)) {  return;}// Check supported barcode formats.BarcodeDetector.getSupportedFormats().then((supportedFormats) =&gt; {  supportedFormats.forEach((format) =&gt; console.log(format));});

Fallback solution #
Several open-source and enterprise scanning libraries are available that can be easily integrated
with any web application to implement scanning. Here are some of the libraries that MishiPay
recommend.

  
    
      
        Library Name
        Type
        Wasm Solution
        Barcode Formats
      
    
    
      
        QuaggaJs
        Open Source
        No
        1D
      
      
        ZxingJs
        Open Source
        No
        1D &amp; 2D (Limited)
      
      
        CodeCorp
        Enterprise
        Yes
        1D &amp; 2D
      
      
        Scandit
        Enterprise
        Yes
        1D &amp; 2D
      
    
    
      Comparison of open-source and commercial barcode scanning libraries
    
  

All the above libraries are full-fledged SDKs that compose all the layers discussed above. They also
expose interfaces to support various scanning operations. Depending on the barcode formats and
detection speed needed for the business case, a decision can be between Wasm and non-Wasm solutions.
Despite the overhead of requiring an additional resource (Wasm) to decode the barcode, Wasm
solutions outperform the non-Wasm solution in terms of accuracy.
Scandit was our primary choice. It supports all barcode
formats required for our business use cases; it beats all the available open-source libraries in
scanning speed.
Future of scanning #
Once the Shape Detection API is fully supported by all major browsers, we could potentially have a
new HTML element  that has the capabilities required for a barcode scanner. Engineering
at MishiPay believes there is a solid use case for the barcode scanning functionality to be a new
HTML element due to the growing number of open source and licensed libraries that are enabling
experiences such as Scan &amp; Go and many others.
Conclusion #
App fatigue is an issue that developers face when their products enter the market. Users often want
to understand the value that an application gives them before they download it. In a store, where
MishiPay saves shoppers&#039; time and improves their experience, it is counterintuitive to wait for a
download before they can use an application. This is where our PWA helps. By eliminating the barrier
to entry, we have increased our transactions by 10 times and enabled our users to save 2.5 years of
waiting in the queue.
Acknowledgements #
This article was reviewed by Joe Medley. ]]></description>
<link>https://tsecurity.de/de/1725689/IT+Betriebssysteme/Web+Tipps/MishiPay%27s+PWA+increases+transactions+10+times+and+saves+2.5+years+of+queuing/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725689/IT+Betriebssysteme/Web+Tipps/MishiPay%27s+PWA+increases+transactions+10+times+and+saves+2.5+years+of+queuing/</guid>
<pubDate>Mon, 28 Mar 2022 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How The Economic Times passed Core Web Vitals thresholds and achieved an overall 43% better bounce rate]]></title> 
<description><![CDATA[With internet speeds improving day-by-day, users expect websites to respond and behave faster than ever. The Economic Times handles over 45 million monthly active users. By optimizing for Core Web Vitals across the domain, on AMP and non-AMP pages, we managed to significantly reduce bounce rates and improve the reading experience.
Measuring the Impact #
We focused on Largest Contentful Paint (LCP) and Cumulative Layout Shift (CLS), as they matter the most when it comes to providing a great reading experience to our users. After implementing various performance fixes as described below, The Economic Times managed to improve Chrome User Experiments (CrUX) report metrics significantly within a few months.
Overall, CLS improved by 250% from 0.25 to 0.09.
Overall, LCP improved by 80% from 4.5 seconds to 2.5 seconds.
Further, LCP values in the &quot;Poor&quot; range were reduced by 33% from October 2020 to July 2021:

  

Additionally, CLS values in the &quot;Poor&quot; range were reduced by 65%, and CLS values in the &quot;Good&quot; range increased by 20% in the same timeframe:

  

The result was that The Economic Times&mdash;which was previously not meeting CWV thresholds&mdash;now passed CWV thresholds across its entire origin and reduced bounce rates by 43% overall.

            
  
    A before and after animation of The Economic Times&#039;s Article page.
  

What is LCP and how did we improve it? #
The largest element is the most relevant one for improving user experience and recognizing load speed. Performance metrics like First Contentful Paint (FCP) only capture the very initial experience of page loading. On the other hand, LCP reports the render time of the largest image, text or video section visible to the user.
In addition to switching to a faster DNS provider and optimizing images, here are some of the techniques we applied we covered to improve LCP.
Critical requests first #
As all modern browsers limit the concurrent number of requests, developers need to prioritize loading the critical content first. To load a complex web page we need to download assets such as header elements, CSS, JavaScript resources, hero image, article body, comments, other related news, footer, and ads. We evaluated what elements were required for LCP, and provided the preference to load those items first to improve LCP. We also deferred the calls that were not part of the initial page rendering.
Text appearance #
We experimented with the font-display property as this impacts both LCP and CLS. We tried font-display: auto; and then switched to font-display: swap;. This renders the text initially in the best matching and available font, then switches to the font when it has been downloaded. This resulted in our text rendering quickly, independent of network speed.
Better Compression #
Brotli is an alternative compression algorithm to Gzip and Deflate developed by Google. We replaced our fonts and assets and changed server compression from Gzip to Brotli to achieve a smaller footprint:

Javascript files are 15% smaller than with Gzip.
HTML files are 18% smaller than with Gzip.
CSS and font files are 17% smaller than with Gzip.

Preconnect to third-party domains #
preconnect should be used carefully as it can still take up valuable CPU time, and delay other important resources, especially on secure connections.
However, if it&#039;s known that a fetch for a resource on a third-party domain will occur, preconnect is good. If it only happens occasionally on a high traffic website, preconnect might trigger unnecessary TCP and TLS work. Thus dns-prefetch was a better fit for third-party resources&mdash;for example, social media, analytics, etc.&mdash;to perform DNS lookups ahead of time.
Break up code into chunks #
In the site&#039;s head, we only loaded those resources which contain either an essential part of the business logic or were critical for above the fold page rendering. Furthermore, we split our code into chunks with code splitting. This helped us to further improve page LCP.
Better caching #
For all the front-end routes, we added a Redis layer which served templates from the cache. This reduces the computation time on the server and builds the whole UI in each request, thus decreasing LCP in subsequent requests.
Summarizing LCP Goals and achievements #
Before beginning the optimization project, the team benchmarked their LCP score at 4.5 seconds (for the 75th percentile of their users, based on CrUX report field data). After the optimization project, it was reduced to 2.5 seconds.

  
  
    Source: CrUX Report of The Economic Times overall LCP
  

What is CLS and how did we improve it? #
Have you ever noticed any unexpected movement of page content while browsing a website? One cause of this is asynchronous loading of media (images, videos, ads, etc.) on the page with unknown dimensions. As soon as media resources load, they shift the layout of the page.
 For more information on CLS, read the CLS metric page. 
We&#039;re going to cover the measures we took to improve CLS on the The Economic Times website.
Use placeholders #
We used a styled placeholder for ad units and media elements of known dimensions to avoid layout shifts when the ad library loads and renders page ads. This ensures layout shifts are eliminated by reserving space for the ad.

  

Defined container dimensions #
We specified explicit dimensions for all images and containers so that the browser engine doesn&#039;t need to calculate the DOM elements&#039; width and height once they are available. This avoided unnecessary layout shifts and extra painting work.
Summarizing CLS goals and achievements #
Before beginning the optimization project, the team benchmarked their CLS score at 0.25. We were able to reduce it significantly by 90% to 0.09.

  

What is First Input Delay (FID) and how did we improve it? #
First Input Delay is the metric that tracks a website&#039;s responsiveness to user input. The primary cause of a poor FID score is heavy JavaScript work that keeps the browser&#039;s main thread busy, which can delay user interactions. We improved FID in several ways.
Break up long JavaScript tasks #
Long tasks are tasks that are 50 milliseconds or longer. Long tasks occupy the browser&#039;s main thread and prevent it from responding to user input. We broke up long running tasks into smaller tasks where possible on user request, which helped to reduce the Javascript bloat.

  

Defer unused JavaScript #
We prioritized page content over third-party scripts such as analytics to keep the page more responsive. However, there are certain limitations on some libraries since they need to be loaded in the document  in order to accurately track the user journey.
Reduce polyfills #
We reduced our dependency on certain polyfills and libraries, since browsers provide support for modern APIs, and less users are using legacy browsers, such as Internet Explorer.
Lazy load ads #
Lazily loading below-the-fold ads helped cut down main thread blocking time and thereby improved FID.
Summarizing FID goals and achievements #
From routine experiments, we were able to reduce our FID from 200 ms to under 50 ms today.

  

Preventing regressions #
The Economics Times plans to introduce automated performance checks in production to avoid page performance regressions. They plan to evaluate Lighthouse-CI to automate lab tests, which can prevent regressions on their production branch. ]]></description>
<link>https://tsecurity.de/de/1725690/IT+Betriebssysteme/Web+Tipps/How+The+Economic+Times+passed+Core+Web+Vitals+thresholds+and+achieved+an+overall+43%25+better+bounce+rate/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725690/IT+Betriebssysteme/Web+Tipps/How+The+Economic+Times+passed+Core+Web+Vitals+thresholds+and+achieved+an+overall+43%25+better+bounce+rate/</guid>
<pubDate>Tue, 21 Dec 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How Terra improved user engagement thanks to Dark Mode]]></title> 
<description><![CDATA[Terra, one of Brazil&#039;s largest media companies with 75 million monthly users, reduced the bounce rate by 60% and increased the pages read per session by 170% on desktop for users that prefer dark mode by providing a custom dark theme.
In this article, we&#039;ll analyze Terra&#039;s journey from identifying the size of the &quot;dark mode&quot; cohort, to applying a custom dark theme, and finally measuring the impact of this implementation on their main KPIs.

  
    60%
    Reduction in Bounce Rates
  
  
    170%
    More pages per session
  

What is dark mode? #
Historically user interfaces in devices are displayed in &quot;light mode&quot;, which usually means displaying black text on top of light interfaces. The alternative is &quot;dark mode&quot;, with light text on a dark background, such as gray or black.
Dark Mode has benefits for user experience. Some people prefer it for aesthetic or accessibility reasons. It has  other advantages, such as preserving battery life in devices. Users can express that they prefer dark mode via a setting in their devices, which depends on the operating system. For example, the following screenshot shows what the Dark Theme configuration option looks like in devices that run Android Q:

  
  Android&nbsp;Q dark theme settings.

To offer a better experience to users who prefer &quot;dark mode&quot;, you can use the prefers-color-scheme media query, with a value of light or dark. This media query reflects the user&#039;s choice in their device. You can then load a custom dark theme for those that prefer dark. For example, by loading a &quot;dark&quot; CSS file, and changing values such as font and background colors. The following code shows an example of that:
@media (prefers-color-scheme: dark) {   // apply a dark theme}@media (prefers-color-scheme: light) {  // apply a light theme}

      Browser support:
      
          chrome 76, Supported
      
      
        76
      
      
          firefox 67, Supported
      
      
        67
      
      
          edge 79, Supported
      
      
        79
      
      
          safari 12.1, Supported
      
      
        12.1
      
      
        
          Source
        
      
    
 This article will only cover the technique of applying a custom dark theme, provided by the developer. Chrome 96 has introduced an origin trial for &quot;Auto Dark Themes&quot; on Android, for which the browser applies an automatically generated dark theme to light themed sites, when the user has opted into dark themes in the operating system, without requiring the developer to provide styles for it. For more information about &quot;Chrome Auto Dark Mode&quot;, check out this article. 
Identifying the &quot;prefers light&quot; vs &quot;dark&quot; user cohorts #
At the time of writing (December 2021), Chrome Platform Status determines that approximately 22% of the web traffic comes from users with the &quot;prefer dark&quot; setting.
This is aggregated data, so the real percentage of users who prefer dark that come to a site can vary. For that reason, to understand the size of this group it is advisable to run in house measurement.
The following code creates an analytics dimension, to measure the performance of users that prefer light vs. dark:
function getColorScheme() {    let colorScheme = &#039;Unknown&#039;;    if (window.matchMedia) {        if (window.matchMedia(&#039;(prefers-color-scheme: dark)&#039;).matches) {            colorScheme = &#039;Dark&#039;;        } else if (window.matchMedia(&#039;(prefers-color-scheme: light)&#039;).matches) {            colorScheme = &#039;Light&#039;;        }    }    return colorScheme;}window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; ga(&#039;create&#039;, &#039;UA-ID&#039;, &#039;auto&#039;);ga(&#039;set&#039;, &#039;color-scheme-preference&#039;, getColorScheme());ga(&#039;send&#039;, &#039;pageview&#039;);
Terra implemented this code in their site and compared the behavior of both groups in mobile (Android) and desktop (Windows) devices. At that moment Terra wasn&#039;t providing a custom dark theme, so the goals of this experiment were:

Determining the size of the group of users who prefer dark.
Identifying patterns: for example, do users that prefer dark leave the site more quickly compared to those that prefer light?

Knowing this can inform decisions, for example: if it&#039;s necessary to provide a custom dark theme.
These are the results Terra obtained after testing for 14 days:
Mobile (Android) #
In the case of mobile (Android) the numbers for bounce rate and pages per session didn&#039;t show big differences between the users that prefer &quot;light&quot;, compared to those that prefer &quot;dark&quot;:

  
    
      
        Display Mode
        Bounce Rate
        Pages Per Session
      
    
    
      
        Prefers Light
        25.84%
        3.96
      
      
        Prefers Dark
        26.10%
        3.75
      
    
  

Desktop (Windows) #
In the case of desktop (Windows), the group of users that preferred &quot;dark&quot; stayed much less on the site: they had almost twice the bounce rate and read a little more than half of the pages than those users that preferred &quot;light&quot;:

  
    
      
        Display Mode
        Bounce Rate
        Pages Per Session
      
    
    
      
        Prefers Light
        13.20%
        7.42
      
      
        Prefers Dark
        24.12%
        4.68
      
    
  

Based on this data, Terra hypothesized that users who prefer &quot;dark&quot; stay less in desktop devices, due to the lack of support of a dark theme in their site.
As a next step Terra decided to work on a &quot;dark theme&quot; strategy to see if they could improve the engagement for the group of users that preferred dark.
Implementing a dark theme #
Most websites implement a dark theme by using the simple strategy shown previously of listening to user&#039;s configuration changes via the prefers-color-scheme media query and changing styles based on that.
Terra decided to give more control to the user: when they detect that they have the &quot;prefer dark&quot; setting turned on in their devices (via the media query), they show them a prompt to ask them if they want to navigate in &quot;night mode&quot;. As long as the user doesn&#039;t deny the prompt (by clicking on the &quot;Ignore&quot; button), they honor the user&#039;s OS-setting, and apply a custom dark theme:

  
  Terra shows a prompt to the user asking if they want to navigate in dark mode after detecting that they prefer dark in their devices.

As a complement of this strategy they provide additional configuration options in the &quot;settings&quot; screen, where the user can decide if they explicitly prefer &quot;light&quot;, &quot;dark&quot;, or want to rely on the underlying device settings.

  
  Terra&#039;s themes configurations allow users to choose between &quot;Dark&quot; and &quot;Light&quot; themes or rely on the device&#039;s settings.

This is how Terra&#039;s &quot;Night Mode&quot; looks like:

  
  Terra&#039;s dark theme, &quot;Night Mode&quot;.

 We have used mobile screenshots for simplicity, but Terra has applied the same strategy across mobile and desktop devices. 
Measuring the impact of Terra&#039;s dark theme #
To measure the impact of the dark theme, Terra took the group of users that have the &quot;Prefer Dark&quot; setting turned on in their devices and compared engagement metrics when showing a &quot;Light&quot; vs. a &quot;DarK&quot; theme.
Here are the results for mobile (Android) and desktop (Windows):
Mobile (Android) #
While bounce rates remained similar, pages and sessions almost doubled (from 2.47 to 5.24) when users were exposed to a dark theme:

  
    
      
        Display Mode
        Bounce Rate
        Pages Per Session
      
    
    
      
        Prefers Light
        26.91%
        2.47
      
      
        Prefers Dark
        23.91%
        5.24
      
    
  


  
    2X
    More pages per session
  

Desktop (Windows) #
Both metrics improved when showing a dark theme: bounce rates went from 27.25% to 10.82% and pages per session almost tripled (from 3.7 to 9.99).

  
    
      
        Display Mode
        Bounce Rate
        Pages Per Session
      
    
    
      
        Prefers Light
        27.5%
        3.7
      
      
        Prefers Dark
        10.82%
        9.99
      
    
  


  
    60%
    Reduction in Bounce Rates
  
  
    170%
    More pages per session
  

Based on this data, Terra could confirm the benefits for the users from implementing a dark theme, and has decided to continue maintaining it as a core feature of the site.
Conclusion #
Dark Mode is a preference that users can turn on in their devices  to change the style of the screens into dark themes. This technique has reported benefits from the user experience and for different aspects of the user&#039;s devices such as saving  battery life.
In this article we saw how providing a custom dark theme improved engagement metrics for the group of Terra&#039;s users that have the preferred dark mode setting turned on in their devices.
For companies with the resources to implement an alternative dark theme this is the recommended approach. For those that don&#039;t have the time to invest in such a feature, Chrome is starting to roll out an Auto Dark Mode feature. ]]></description>
<link>https://tsecurity.de/de/1725691/IT+Betriebssysteme/Web+Tipps/How+Terra+improved+user+engagement+thanks+to+Dark+Mode/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725691/IT+Betriebssysteme/Web+Tipps/How+Terra+improved+user+engagement+thanks+to+Dark+Mode/</guid>
<pubDate>Sat, 18 Dec 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How QuintoAndar increased conversion rates and pages per session by improving page performance]]></title> 
<description><![CDATA[QuintoAndar is a Brazilian proptech company whose products offer digital end-to-end solutions for real estate. This year, we carried out a project focused on improving the performance of a content hub in our app, and had encouraging results in increasing user traffic and conversion metrics.

 
   46%
   reduction in bounce rate
 
 
   87%
   increase in pages per session
 
 
   5%
   improvement in conversion during validation phase
 

Challenges #
Our app has a condominium content hub with over 40,000 pages, where users can get information about their properties, check photos of the common areas, read about the neighborhood, and find available listings for rent or sale. These pages are very important for QuintoAndar:

They are an important source of organic traffic, with a steadily increasing number of users coming from search engine results.
They have high conversion rates in the medium to long-term compared to other pages.

However, there were challenges when it came to the performance and user experience in these pages:

Their performance as measured by Core Web Vitals was not optimized, and there were known issues regarding slow page loads, slow responsiveness to user input, and layout instability.
Their bounce rates were high, even if we expected them to be higher than in other parts of the app.
The page experience update in Google Search&mdash;which, at that time, was not yet released&mdash;would include Core Web Vitals into the ranking algorithm, which meant page performance could affect how search results were going to be displayed.

At the same time, we identified some developer experience opportunities that could unlock gains in other projects across the company:

Our server-side rendering logic&mdash;which renders all high-traffic pages, including condominium pages&mdash;was created in-house, and became too complex to maintain and onboard new hires.
Essential features to achieve good app performance, such as code splitting, also required a custom setup plus manual work from the developers.
QuintoAndar has over 30 React web applications. Delivering updates to these applications and maintaining them in accordance to best practices is an arduous task.

Approach #
We began a performance optimization project of the condominium content hub to improve its user experience, as these improvements could lead to conversion gains, better SEO, and better usability. This initiative was also a fitting opportunity to improve the developer experience as well.
Migrating to Next.js #
The new version of the condominium page was implemented with Next.js. Being largely independent from other parts of the app, the condominium content hub seemed like a good candidate for trying out a new framework. We would be able to understand the magnitude of migration efforts and evaluate how its features could help without affecting the other React apps in QuintoAndar.
A hard requirement was to ensure pages remained crawlable by search engines. Next.js meets this requirement by supporting server-side rendering out-of-the-box, and removes the need for a custom setup. The documentation makes it much easier to share knowledge on how to do tasks such as data fetching on the server and onboard new developers. Server-side rendering is also known to improve performance metrics such as First Contentful Paint (FCP).
The framework provides other performance-friendly features such as automatic code splitting and prefetching. Even though the existing structure already provided such features, the additional work required from developers stalled their adoption. For example, code splitting at page or component-level had to be done manually.
Optimizing JavaScript resources #
The first step was to remove unused code. We looked at the Webpack Bundle Analyzer reports, which shows the contents of each JS bundle, and carefully reviewed all third-party scripts. As a result, we were able to clean up some tracking libraries that were not used in this specific page.
Our team went further and evaluated the performance cost of existing features. For instance, the &quot;like&quot; button required quite a lot of JS to work. However, in the condominium page, less than 0.5% of the users interacted with the button, which is available and used more frequently in other parts of our app. After a discussion involving both Engineering and Product, we decided to remove this feature.

            
  
    An animation showing the &ldquo;like&rdquo; button feature. There is a card about an apartment available for rent. In the bottom right corner of the card, there is a grey heart-shaped button that turns blue when clicked.
  

Other JS optimizations were already in place, such as static compression with Brotli, which was done at build time using BrotliWebpackPlugin, and was also applied to other types of static resources. At first, we were relying on the compression provided by the CDN, and Brotli reduced JS size by 18% compared to gzip. But then, we switched to Brotli compression at build time, and were able to achieve a 24% reduction.
Optimizing image resources #
There is a hero image occupying most of the area above the fold in the mobile version. It also happens to be the Largest Contentful Paint (LCP) of the page.

  
  
    The hero image of a condominium page.
  

Previously, all images already had srcset and sizes attributes to serve responsive images. We also used Thumbor to resize images on-demand and configured our CDN to cache them efficiently.
Modern mobile devices have displays with very high pixel density, meaning the browser would render 3x or 4x versions of the image, if available. As resolution increases, it gets harder for the human eye to perceive the differences, but file sizes will increase regardless. Capping the maximum image resolution improved image size without compromising the user experience. We limited the hero image to serve its 2x version at most, which is approximately 35% smaller than the 3x version and 50% smaller than the 4x one.
To finish, we used a preloading strategy to download and display it as soon as possible, looking forward to improving the LCP metric.

The Next.js built-in image component includes many of these optimizations such as responsive resizing and prioritized loading. During this project, we did not migrate the existing images to use this component, but we are planning to adopt it in new features.
Reducing layout shift #
The condominium page had a few issues with Cumulative Layout Shift (CLS). The elements responsible for the layout shifts were rendered only in the client&mdash;for instance, hydrating server-side markup with client-rendered components, or images without defined width and height attributes.
To solve these problems, we set exact dimensions for these elements when possible, or estimated values with min-height. There are more options, such as using the aspect-ratio CSS property. We also created placeholders to prevent dynamically rendered components from causing layout shifts.

  
  
    Defining dimensions for elements such as the map image reduced the CLS.
  

Progressively rolling out changes #
Our team wanted to validate that the optimized version of the condominium hub page to make sure the user experience would be better. To achieve this, we adopted a progressive rollout strategy:

In the first phase, the new version was published for a few hand-picked URLs, so only a few hundreds of users per day would see them;
In the second phase, it was published for more pages, accounting to a few thousand users per day;
In the third and final phase, it was published for all pages, and the roll-out was completed for all users.

During this period, the engineering team continuously measured page performance in production and kept working on improvements. Additionally, the team compared business metrics between the new and previous versions. The results in this validation period were promising.
Results #
The team used SpeedCurve to continuously run lab tests against the condominium page. These are the results for the mobile version:

  
    
      
        Lab metric
        Before
        After
        Difference
      
    
    
      
        Largest Contentful Paint (LCP)
        2.41 seconds
        1.48 seconds
        -39%
      
      
        Time to Interactive (TTI)
        12.16 seconds
        7.48 seconds
        -39%
      
      
        Total Blocking Time (TBT)
        1124 milliseconds
        1056 milliseconds
        -4%
      
      
        Cumulative Layout Shift (CLS)
        0.0402
        0.0093
        -77%
      
    
    
      Lab metrics results collected with SpeedCurve.
    
  

We also wanted to check the impact on our real users. Using field data collected with Instana Website Monitoring, we looked at the 1-month period before and after the roll-out. Comparing the 75th percentile for mobile users, we found that LCP decreased by 26%, and FID decreased by 72%.

  


  
  
    Field metrics results collected with Instana.
  

PageSpeed Insights provides a field data report for the last 28 days. The most accessed condominium page alone had enough data to generate a report for mobile users. As of November 2021, all Core Web Vitals are in the &quot;good&quot; bucket.

  
  
    PageSpeed Insights shows that mobile users are having a good experience in the most accessed condominium page.
  

During the progressive roll-out, we noticed a drop in bounce rates. By the time we had finished the release for all pages, Google Analytics showed a 46% decrease in bounce rate, a 87% increase in pages per session, and a 49% increase in average session duration. The bounce rate reduction was even bigger for paid searches, reaching a 59% drop &mdash; a positive sign when it comes to the investments in pay-per click (PPC) ads.

  
  
    Google Analytics shows the bounce rate decreasing as we rolled-out the new version in more pages.
  

As for the impact in business metrics, we analyzed conversion rates for transactions like scheduling a tour and applying to rent or buy an estate. While improvements were still being rolled out, our team compared the conversion between the previous and new versions. In the same week, the group of pages with the new version showed a 5% conversion increase, while the other pages had a slight decrease in the same metric.

  
  
    In the same week, the conversion for the new version increased, while the previous version had a small decrease.
  

Conclusion #
This project is the first part of a long-term migration effort from framework-less React to Next.js. The teams who worked on the condominium page since then gave positive feedback about the improved developer experience. Other teams who had to bootstrap new web apps have already done so with Next.js. We believe Next.js will simplify maintenance efforts and establish a common ground between different apps.
Overall, the condominium content hub has been continuously growing in terms of absolute number of users and transactions. In the long-term analysis, there are many factors contributing to this, like the expansion of QuintoAndar&rsquo;s operation and SEO initiatives such as improved page indexing. During this project, we have seen that page performance is also one of these factors with great potential for positive conversion impact.
Special thanks to Pedro Carmo, Product Manager of the SEO team, for diving into the user data and creating all the conversion analysis seen in this case study. ]]></description>
<link>https://tsecurity.de/de/1725692/IT+Betriebssysteme/Web+Tipps/How+QuintoAndar+increased+conversion+rates+and+pages+per+session+by+improving+page+performance/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725692/IT+Betriebssysteme/Web+Tipps/How+QuintoAndar+increased+conversion+rates+and+pages+per+session+by+improving+page+performance/</guid>
<pubDate>Fri, 10 Dec 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Kapwing: Powerful video editing for the web]]></title> 
<description><![CDATA[ Joshua is the Chief Technology Officer at Kapwing. 
Online video consumption has grown rapidly since the start of the pandemic.
People are spending more time consuming endless high-quality video on
platforms such as TikTok, Instagram, and YouTube. Creatives and small business
owners all over the world need quick and easy-to-use tools to make video
content.
Companies like Kapwing make it possible to create all this video content right
on the web, by using the latest in powerful APIs and performance tools.
    
About Kapwing #
Kapwing is a web-based collaborative video editor designed mainly for casual
creatives like game-streamers, musicians, YouTube creators, and meme-rs. It&#039;s
also a go-to resource for business owners who need an easy way to produce
their own social content, such as Facebook and Instagram ads.
People discover Kapwing by searching for a specific task, for example &quot;how to
trim a video,&quot; &quot;add music to my video,&quot; or &quot;resize a video.&quot; They can do what
they searched for with just one click&mdash;without the added friction of
navigating to an app store and downloading an app. The web makes it simple for
people to search for precisely what task they need help with, and then do it.
After that first click, Kapwing users can do a whole lot more. They can
explore free templates, add new layers of free stock videos, insert
subtitles, transcribe videos, and upload background music.
How Kapwing brings real-time editing and collaboration to the web #
While the web provides unique advantages, it also presents distinct
challenges. Kapwing needs to deliver smooth and precise playback of complex,
multi-layered projects across a wide range of devices and network conditions.
To achieve this, we use a variety of web APIs to achieve our performance and
feature goals.
 Kapwing&#039;s work was featured at Chrome Developer Summit in November 2021. Watch the keynote for an overview of Kapwing&#039;s work, and keep reading to take a closer look at the technical implementation. 
IndexedDB #
High performance editing requires that all of our users&#039; content live on the
client, avoiding the network whenever possible. Unlike a streaming service,
where users typically access a piece of content once, our customers reuse
their assets frequently, days and even months after upload.
IndexedDB allows us to provide persistent file
system-like storage to our users. The result is that over 90% of media
requests in the app are fulfilled locally. Integrating IndexedDB into our
system was very straightforward.
Here is some boiler plate initialization code that runs on app load:
import {DBSchema, openDB, deleteDB, IDBPDatabase} from &#039;idb&#039;;let openIdb: Promise ;const db =  (await openDB)   (    &#039;kapwing&#039;,    version, {      upgrade(db, oldVersion) {        if (oldVersion &gt;= 1) {          // assets store schema changed, need to recreate          db.deleteObjectStore(&#039;assets&#039;);        }        db.createObjectStore(&#039;assets&#039;, {          keyPath: &#039;mediaLibraryID&#039;        });      },      async blocked() {        await deleteDB(&#039;kapwing&#039;);      },      async blocking() {        await deleteDB(&#039;kapwing&#039;);      },    }  );
We pass a version and define an upgrade function. This is used for
initialization or to update our schema when necessary. We pass error-handling
callbacks, blocked and blocking, which we&#039;ve found useful in
preventing issues for users with unstable systems.
Finally, note our definition of a primary key keyPath. In our case, this is a
unique ID we call mediaLibraryID. When a user adds a piece of media to our system, whether via our uploader or a third party extension, we add the media
to our media library with the following code:
export async function addAsset(mediaLibraryID: string, file: File) {  return runWithAssetMutex(mediaLibraryID, async () =&gt; {    const assetAlreadyInStore = await (await openIdb).get(      &#039;assets&#039;,      mediaLibraryID    );        if (assetAlreadyInStore) return;            const idbVideo: IdbVideo = {      file,      mediaLibraryID,    };    await (await openIdb).add(&#039;assets&#039;, idbVideo);  });}
runWithAssetMutex is our own internally defined function that serializes
IndexedDB access. This is required for any read-modify-write type operations,
as the IndexedDB API is asynchronous.
Now let&#039;s take a look at how we access files. Below is our getAsset function:
export async function getAsset(  mediaLibraryID: string,  source: LayerSource | null | undefined,  location: string): Promise {  let asset: IdbAsset | undefined;  const { idbCache } = window;  const assetInCache = idbCache[mediaLibraryID];  if (assetInCache &amp;&amp; assetInCache.status === &#039;complete&#039;) {    asset = assetInCache.asset;  } else if (assetInCache &amp;&amp; assetInCache.status === &#039;pending&#039;) {    asset = await new Promise((res) =&gt; {      assetInCache.subscribers.push(res);    });   } else {    idbCache[mediaLibraryID] = { subscribers: [], status: &#039;pending&#039; };    asset = (await openIdb).get(&#039;assets&#039;, mediaLibraryID);    idbCache[mediaLibraryID].asset = asset;    idbCache[mediaLibraryID].subscribers.forEach((res: any) =&gt; {      res(asset);    });    delete (idbCache[mediaLibraryID] as any).subscribers;    if (asset) {      idbCache[mediaLibraryID].status = &#039;complete&#039;;    } else {      idbCache[mediaLibraryID].status = &#039;failed&#039;;    }  }   return asset;}
We have our own data structure, idbCache, that is used to minimize IndexedDB
accesses. While IndexedDB is fast, accessing local memory is faster. We
recommend this approach so long as you manage the size of the cache.
The subscribers array, which is used to prevent simultaneous access to
IndexedDB, would otherwise be common on load.
Web Audio API #
Audio visualization is incredibly important for video editing. To understand
why, take a look at a screenshot from the editor:

This is a YouTube style video, which is common in our app. The user doesn&#039;t
move very much throughout the clip, so the timelines visual thumbnails aren&#039;t
as useful for navigating between sections. On the other hand, the audio
waveform shows peaks and valleys,
with the valleys typically corresponding to dead time in the recording. If you
zoom in on the timeline, you&#039;d see more fine grained audio information with
valleys corresponding to stutters and pauses.
Our user research shows that creators are often guided by these waveforms as
they splice their content. The web audio API allows us to present this
information performantly and to update quickly on a zoom or pan of the
timeline.
The snippet below demonstrates how we do this:
const getDownsampledBuffer = (idbAsset: IdbAsset) =&gt;  decodeMutex.runExclusive(    async (): Promise =&gt; {      const arrayBuffer = await idbAsset.file.arrayBuffer();      const audioContext = new AudioContext();      const audioBuffer = await audioContext.decodeAudioData(arrayBuffer);      const offline = new OfflineAudioContext(        audioBuffer.numberOfChannels,        audioBuffer.duration * MIN_BROWSER_SUPPORTED_SAMPLE_RATE,        MIN_BROWSER_SUPPORTED_SAMPLE_RATE      );      const downsampleSource = offline.createBufferSource();      downsampleSource.buffer = audioBuffer;      downsampleSource.start(0);      downsampleSource.connect(offline.destination);      const downsampledBuffer22K = await offline.startRendering();      const downsampledBuffer22KData = downsampledBuffer22K.getChannelData(0);      const downsampledBuffer = new Float32Array(        Math.floor(          downsampledBuffer22KData.length / POST_BROWSER_SAMPLE_INTERVAL        )      );      for (        let i = 0, j = 0;        i  {    demuxer.info = info;    demuxer._info_resolver(info);  };  demuxer.loadMetadata();}const loadMetadata = async () =&gt; {  let offset = 0;  const asset = await getAsset(this.mediaLibraryId, null, this.url);  const maxFetchOffset = asset?.file.size || 0;  const end = offset + FETCH_SIZE;  const response = await fetch(this.url, {    headers: { range: `bytes=${offset}-${end}` },  });  const reader = response.body.getReader();  let done, value;  while (!done) {    ({ done, value } = await reader.read());    if (done) {      this.file.flush();      break;    }    const buf: ArrayBufferLike &amp; { fileStart?: number } = value.buffer;    buf.fileStart = offset;    offset = this.file.appendBuffer(buf);  }};
This snippet refers to a demuxer class, which we use to encapsulate the
interface to MP4Box. We once again access the asset from IndexedDB. These
segments aren&#039;t necessarily stored in byte order, and that the appendBuffer
method returns the offset of the next chunk.
Here&#039;s how we decode a video frame:
const getFrameFromVideoDecoder = async (demuxer: any): Promise =&gt; {  let desiredSampleIndex = demuxer.getFrameIndexForTimestamp(this.frameTime);  let timestampToMatch: number;  let decodedSample: VideoFrame | null = null;  const outputCallback = (frame: VideoFrame) =&gt; {    if (frame.timestamp === timestampToMatch) decodedSample = frame;    else frame.close();  };    const decoder = new VideoDecoder({    output: outputCallback,  });   const {    codec,    codecWidth,    codecHeight,    description,  } = demuxer.getDecoderConfigurationInfo();  decoder.configure({ codec, codecWidth, codecHeight, description });   /* begin demuxer interface */  const preceedingKeyFrameIndex = demuxer.getPreceedingKeyFrameIndex(    desiredSampleIndex  );    const trak_id = demuxer.trak_id  const trak = demuxer.moov.traks.find((trak: any) =&gt; trak.tkhd.track_id === trak_id);  const data = await demuxer.getFrameDataRange(    preceedingKeyFrameIndex,    desiredSampleIndex  );    /* end demuxer interface */  for (let i = preceedingKeyFrameIndex; i  ]]></description>
<link>https://tsecurity.de/de/1725693/IT+Betriebssysteme/Web+Tipps/Kapwing%3A+Powerful+video+editing+for+the+web/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725693/IT+Betriebssysteme/Web+Tipps/Kapwing%3A+Powerful+video+editing+for+the+web/</guid>
<pubDate>Mon, 06 Dec 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[SVGcode: a PWA to convert raster images to SVG vector graphics]]></title> 
<description><![CDATA[ In a hurry? Go straight to the SVGcode app and read the article later. 

      
  
    (If you prefer watching over reading, this article is also available as a video.)
  

From raster to vector #
Have you ever scaled an image and the result was pixelated and unsatisfactory? If
so, you have probably dealt with a raster image format such as WebP, PNG, or JPG.

            
  
    Scaling up a raster image makes it look pixelated.
  

In contrast, vector graphics are images that are defined by points in a coordinate system. These
points are connected by lines and curves to form polygons and other shapes. Vector graphics have an
advantage over raster graphics in that they may be scaled up or down to any resolution
without pixelation.

            
  
    Scaling up a vector image with no loss of quality.
  

Introducing SVGcode #
I have built a PWA called SVGcode that can help you convert raster images to
vectors. Credit where credit is due: I didn&#039;t invent this. With SVGcode, I just stand on the
shoulders of a command line tool called Potrace by
Peter Selinger that I have
converted to Web Assembly, so it can be used in a
Web app.

  
  
    The SVGcode app.
  

Using SVGcode #
First, I want to show you how to use the app. I start with the teaser image for Chrome Dev Summit
that I downloaded from the ChromiumDev Twitter channel. This is a PNG raster image that I then
drag onto the SVGcode app. When I drop the file, the app traces the image color by color,
until a vectorized version of the input appears. I can now zoom into the image, and as you can see,
the edges stay sharp. But zooming in on the Chrome logo, you can see that the tracing wasn&#039;t
perfect, and especially the outlines of the logo look a bit speckled. I can improve the result by
de-speckling the tracing by suppressing speckles of up to, say, five pixels.

            
  
    Converting a dropped image to SVG.
  

Posterization in SVGcode #
An important step for vectorization, especially for photographic images, is posterizing the input
image to reduce the number of colors. SVGcode allows me to do this per color channel, and see the
resulting SVG as I make changes. When I&#039;m happy with the result, I can save the SVG to my hard disk
and use it wherever I like.

            
  
    Posterizing an image to reduce the number of colors.
  

APIs used in SVGcode #
Now that you have seen what the app is capable of, let me show you some of the APIs that help make
the magic happen.
Progressive Web App #
SVGcode is an installable Progressive Web App and therefore fully offline enabled. The app is based
on the
Vanilla JS template
for Vite.js and uses the popular
Vite plugin PWA, which creates a service worker that
uses Workbox.js under the hood. Workbox is a set
of libraries that can power a production-ready service worker for Progressive Web Apps, This pattern
may not necessarily work for all apps, but for SVGcode&#039;s use case it&#039;s great.
Window Controls Overlay #
To maximize the available screen real estate, SVGcode uses
Window Controls Overlay customization by moving its main menu up into
the titlebar area. You can see this get activated at the end of the install flow.

            
  
    Installing SVGcode and activating the Window Controls Overlay customization.
  

File System Access API #
To open input image files and save the resulting SVGs, I use the
File System Access API. This allows me to keep a reference to previously
opened files and to continue where I left off, even after an app reload. Whenever an image gets
saved, it is optimized via the svgo library, which may take a moment,
depending on the complexity of the SVG. Showing the file save dialog requires a user gesture. It is
therefore important to obtain the file handle before the SVG optimization happens, so the user
gesture is not invalidated by the time the optimized SVG is ready.
try {  let svg = svgOutput.innerHTML;  let handle = null;  // To not consume the user gesture obtain the handle before preparing the  // blob, which may take longer.  if (supported) {    handle = await showSaveFilePicker({      types: [{description: &#039;SVG file&#039;, accept: {&#039;image/svg+xml&#039;: [&#039;.svg&#039;]}}],    });  }  showToast(i18n.t(&#039;optimizingSVG&#039;), Infinity);  svg = await optimizeSVG(svg);  showToast(i18n.t(&#039;savedSVG&#039;));  const blob = new Blob([svg], {type: &#039;image/svg+xml&#039;});  await fileSave(blob, {description: &#039;SVG file&#039;}, handle);} catch (err) {  console.error(err.name, err.message);  showToast(err.message);}
Drag an drop #
For opening an input image, I can either use the file open feature, or, as you have seen above, just
drag and drop an image file onto the app. The file open feature is pretty straightforward, more
interesting is the drag and drop case. What&#039;s particularly nice about this is that you can
get a file system handle from the data transfer item via the
getAsFileSystemHandle()
method. As mentioned before, I can persist this handle, so it&#039;s ready when the app gets reloaded.
document.addEventListener(&#039;drop&#039;, async (event) =&gt; {  event.preventDefault();  dropContainer.classList.remove(&#039;dropenter&#039;);  const item = event.dataTransfer.items[0];  if (item.kind === &#039;file&#039;) {    inputImage.addEventListener(      &#039;load&#039;,      () =&gt; {        URL.revokeObjectURL(blobURL);      },      {once: true},    );    const handle = await item.getAsFileSystemHandle();    if (handle.kind !== &#039;file&#039;) {      return;    }    const file = await handle.getFile();    const blobURL = URL.createObjectURL(file);    inputImage.src = blobURL;    await set(FILE_HANDLE, handle);  }});
For more details, check out the article on the File System Access API and,
if you&#039;re interested, study the SVGcode source code in
src/js/filesystem.js.
Async Clipboard API #
SVGcode is also fully integrated with the operating system&#039;s clipboard via the Async Clipboard API.
You can paste images from the operating system&#039;s file explorer into the app either by clicking the
paste image button or by pressing command or control plus v on your keyboard.

            
  
    Pasting an image from the file explorer into SVGcode.
  

The Async Clipboard API has recently gained the ability to deal with SVG images as well, so you can
also copy an SVG image and paste it into another application for further processing.

            
  
    Copying an image from SVGcode into SVGOMG.
  

copyButton.addEventListener(&#039;click&#039;, async () =&gt; {  let svg = svgOutput.innerHTML;  showToast(i18n.t(&#039;optimizingSVG&#039;), Infinity);  svg = await optimizeSVG(svg);  const textBlob = new Blob([svg], {type: &#039;text/plain&#039;});  const svgBlob = new Blob([svg], {type: &#039;image/svg+xml&#039;});  navigator.clipboard.write([    new ClipboardItem({      [svgBlob.type]: svgBlob,      [textBlob.type]: textBlob,    }),  ]);  showToast(i18n.t(&#039;copiedSVG&#039;));});
To learn more, read the Async Clipboard article, or see the file
src/js/clipboard.js.
File Handling #
One of my favorite features of SVGcode is how well it blends in with the operating system. As an
installed PWA, it can become a file handler, or even the default file handler, for image files. This
means that when I&#039;m in the Finder on my macOS machine, I can right-click an image and open it with
SVGcode. This feature is called File Handling and works based on the file_handlers property in the
Web App Manifest and the launch queue, which allows the app to consume the passed file.

            
  
    Opening a file from the desktop with installed SVGcode app.
  

window.launchQueue.setConsumer(async (launchParams) =&gt; {  if (!launchParams.files.length) {    return;  }  for (const handle of launchParams.files) {    const file = await handle.getFile();    if (file.type.startsWith(&#039;image/&#039;)) {      const blobURL = URL.createObjectURL(file);      inputImage.addEventListener(        &#039;load&#039;,        () =&gt; {          URL.revokeObjectURL(blobURL);        },        {once: true},      );      inputImage.src = blobURL;      await set(FILE_HANDLE, handle);      return;    }  }});
For more information, see Let installed web applications be file handlers, and view the source code in
src/js/filehandling.js.
Web Share (Files) #
Another example of blending in with the operating system is the app&#039;s share feature. Assuming I want
to make edits to an SVG created with SVGcode, one way to deal with this would be to save the file,
launch the SVG editing app, and then open the SVG file from there. A smoother flow, though, is to
use the Web Share API, which allows for files to be shared directly. So if
the SVG editing app is a share target, it can directly receive the file without deviation.
shareSVGButton.addEventListener(&#039;click&#039;, async () =&gt; {  let svg = svgOutput.innerHTML;  svg = await optimizeSVG(svg);  const suggestedFileName =    getSuggestedFileName(await get(FILE_HANDLE)) || &#039;Untitled.svg&#039;;  const file = new File([svg], suggestedFileName, { type: &#039;image/svg+xml&#039; });  const data = {    files: [file],  };  if (navigator.canShare(data)) {    try {      await navigator.share(data);    } catch (err) {      if (err.name !== &#039;AbortError&#039;) {        console.error(err.name, err.message);      }    }  }});

            
  
    Sharing an SVG image to Gmail.
  

Web Share Target (Files) #
The other way round, SVGcode can also act as a share target and receive files from other apps. To
make this work, the app needs to let the operating system know via the
Web Share Target API what types of data it can accept. This happens via a
dedicated field in the Web App Manifest.
{  &quot;share_target&quot;: {    &quot;action&quot;: &quot;https://svgco.de/share-target/&quot;,    &quot;method&quot;: &quot;POST&quot;,    &quot;enctype&quot;: &quot;multipart/form-data&quot;,    &quot;params&quot;: {      &quot;files&quot;: [        {          &quot;name&quot;: &quot;image&quot;,          &quot;accept&quot;: [&quot;image/jpeg&quot;, &quot;image/png&quot;, &quot;image/webp&quot;, &quot;image/gif&quot;]        }      ]    }  }}
The action route does not actually exist, but is handled purely in the service worker&#039;s fetch
handler, which then passes on received files for actual processing in the app.
self.addEventListener(&#039;fetch&#039;, (fetchEvent) =&gt; {  if (    fetchEvent.request.url.endsWith(&#039;/share-target/&#039;) &amp;&amp;    fetchEvent.request.method === &#039;POST&#039;  ) {    return fetchEvent.respondWith(      (async () =&gt; {        const formData = await fetchEvent.request.formData();        const image = formData.get(&#039;image&#039;);        const keys = await caches.keys();        const mediaCache = await caches.open(          keys.filter((key) =&gt; key.startsWith(&#039;media&#039;))[0],        );        await mediaCache.put(&#039;shared-image&#039;, new Response(image));        return Response.redirect(&#039;./?share-target&#039;, 303);      })(),    );  }});

            
  
    Sharing a screenshot to SVGcode.
  

Conclusion #
Alright, this was a quick tour through some of the advanced app features in SVGcode. I hope this app
can become an essential tool for your image processing needs alongside other amazing apps like
Squoosh or SVGOMG.
SVGcode is available at svgco.de. See what I did there? You can
review its source code on GitHub. Note that since Potrace is
GPL-licensed, so is SVGcode. And with that, happy vectorizing! I hope SVGcode will be useful, and
some of its features can inspire your next app.
Acknowledgements #
This article was reviewed by Joe Medley. ]]></description>
<link>https://tsecurity.de/de/1725694/IT+Betriebssysteme/Web+Tipps/SVGcode%3A+a+PWA+to+convert+raster+images+to+SVG+vector+graphics/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725694/IT+Betriebssysteme/Web+Tipps/SVGcode%3A+a+PWA+to+convert+raster+images+to+SVG+vector+graphics/</guid>
<pubDate>Fri, 19 Nov 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Improving Core Web Vitals on the Mail.ru home page resulted in an average 10% increase in conversion rates]]></title> 
<description><![CDATA[Where we started #
Mail.ru is one of the leading e-mail services on the Russian-speaking Internet and is in the top 5 sites in Russia in terms of traffic. Mail.ru is an important resource for many people. It receives several hundred million visits per month, and is a portal from where people can access email, news, social media, performance internet searches and more.
Mail.ru wanted to provide its visitors with a high quality user experience, so work began to improve Core Web Vitals. Before discussing our optimization strategy, a few technical details of the Mail.ru home page should first be noted.
Though the project had long been developed using our in-house templating engine Fest, we began to migrate to Svelte 3 in 2019.
 You can find out more about Fest and our reasons for changing the technology stack to Svelte in our team&#039;s presentation at Svelte Russia Meetup #1. 
Svelte implements reactivity in a way that doesn&#039;t use Virtual DOM, which makes it less resource-intensive. Svelte&#039;s approach removes unused functions from production bundles because the code implementing them isn&#039;t generated by the compiler if the functions aren&#039;t used. Unused code is removed during compilation, resulting in smaller bundles. This may help reduce Total Blocking Time (TBT) during page startup.
Tracking performance metrics #
Before optimizing Core Web Vitals, it&#039;s helpful to evaluate performance in the field. Before Core Web Vitals, we tracked other metrics, such as First Contentful Paint (FCP), in our internal performance dashboard.
Our metrics collection script was modified to collect Core Web Vitals and transmit them to our performance dashboard for visualization. In line with Google&#039;s recommendations, our script uses PerformanceObserver API to obtain metrics, which is part of the universal frontend &quot;Platform&quot; inside Mail.ru.
The dashboard displayed the following metrics for users (mean values for the week of 15-21 March 2021):

  
    
      
        Metrics group name
        Core Web Vitals
        Other Web Vitals
      
    
    
      
        Metric name
        LCP
        FID
        CLS
        FCP
        TBT
        TTI
      
      
        Share of users in accordance with Core Web Vitals thresholds
        good
        52%
        92%
        33%
        35%
        42%
        43%
      
      
        needs-improvement
        19%
        5%
        23%
        38%
        16%
        25%
      
      
        poor
        29%
        3%
        44%
        27%
        42%
        32%
      
    
    Metrics for the week of 15-21 March 2021
  


  
  Web Vitals values before the improvements.

Improving Core Web Vitals #
While plenty of guidance exists for improving Core Web Vitals, every project has unique challenges. For the Mail.ru home page, the following opportunities were identified:

Implementing placeholders for ad banners to reduce CLS.
Using server-side rendering (SSR) to reduce Largest Contentful Paint (LCP).
Code splitting to reduce LCP and First Input Delay (FID).

Skeletons for CLS improvement #
CLS was one of the worst performing field metrics for the Mail.ru home page. Subsequent profiling of this page in the Performance panel of Chrome&#039;s DevTools revealed that ads were the source of the problem. To improve layout stability, our team decided to use placeholders to reserve space for ads before they load.
When implementing placeholders, the first step is to determine the dimensions of the content that will replace them. Luckily, the desktop version of Mail.ru home page has strictly documented sizes for ads. After talking with the design team, SVG-animated UI skeletons were used as placeholders as they reduce the perceived load time of the content.
    Caution SVG animations are not supported in Internet Explorer 11, consider using CSS if legacy browser support is essential to your application. 
The return of SSR #
To ease the transition from Fest to Svelte, we incrementally rewrote the existing project rather than start over. By March 2021, we had migrated most of the frontend to Svelte, and eventually brought SSR to our production application after triaging and fixing backend performance issues.
 SSR was not used for the entire application, as it can be an expensive process that can delay Time to First Byte (TTFB), which may affect LCP. We decided to use SSR for crucial content that the user will see on initial render, and offload rendering of hidden content on the client. At the moment, Mail.ru is experimenting with Islands Architecture to see if further performance gains can be had. 
After implementing SSR, the team discovered the cause of CLS regression that initially went unnoticed: the news section was not inserted at the moment of rendering the first content on the page. There was a delay between the initial painting of the page markup provided by the server and the insertion of news section on the client. This behaviour resulted in an ad skeleton shift, which worsened CLS.
Although Chrome&#039;s DevTools showed Layout Shift events, we couldn&#039;t find the reason for it at first. Though SSR itself wasn&#039;t the problem, it helped in discovering the solution later on. Fixing the code responsible for the painting delay improved layout stability of the news component.

  
  Finding the news painting problem with JavaScript disabled.


  
  Fixing the news painting problem with JavaScript disabled.

Another effect SSR can have on CLS is the movement of components before and after hydration, which can lead to further layout shifts. We encountered this on the mobile version in particular and it required paying special attention to the hydrated component markup. A good solution to this problem was transferring as much display logic from JavaScript to CSS when possible.
Code splitting and unused polyfills #
To improve the perceived page load speed, work was required to decrease LCP and FID values. One way to achieve this is through code splitting. In addition to the Mail.ru home page itself, our team is developing a widget for portal navigation. It is currently embedded in many of our company&#039;s projects.
For historical reasons, the widget is inserted at the very beginning of the page as a synchronously loading script. The share of polyfills in this script grew over time. To limit the negative performance effects of loading these polyfills, we implemented code splitting for both modern and legacy browsers.
We decided against the module/nomodule pattern for loading JavaScript bundles for modern or legacy browsers, as the  element&#039;s type=&quot;module&quot; attribute didn&#039;t target browsers that were modern enough for our needs. To address this, Mail.ru uses an in-house tool for identifying modern browser versions on the backend, and can adapt to those browsers accordingly.
 The Browserslist Useragent package is a publicly available alternative to custom tooling for comparing a project&#039;s .browserslistrc to the User-Agent string in an application backend. However, our team strongly recommends considering using User-Agent Client Hints (for example, Sec-CH-UA header, as Mail.ru does in our in-house tool. 
Once browsers could be identified in the backend, we implemented code splitting for modern and legacy browsers. The result was a 43.3% reduction in size of the synchronously-loaded JavaScript widget for modern browsers. This practice has been applied to some other portal scripts as well.
In addition to bundle size reduction and positive effects on Core Web Vitals, code splitting improves the developer experience as well. Only 3.5% of our users use legacy browsers and that share is on a downward trend, so implementing code-splitting allowed our developers to use the latest browser APIs without introducing the polyfill bloat necessary for legacy browsers to all users.
Results #
After the optimization effort, we observed the mean values for the week of 24-30 May 2021 in our field data:

  
    
      
        Metrics group name
        Core Web Vitals
        Other Web Vitals
      
    
    
      
        Metric name
        LCP
        FID
        CLS
        FCP
        TBT
        TTI
      
      
        Share of users in accordance with Core Web Vitals thresholds
        good
        58% (+6%)
        93% (+1%)
        93% (+60%)
        43% (+8%)
        49% (+7%)
        51% (+8%)
      
      
        needs-improvement
        18%
        4%
        3%
        34%
        17%
        24%
      
      
        poor
        24%
        3%
        4%
        23%
        34%
        25%
      
    
    Metrics for the week of 24-30 March 2021
  


  
  Comparison of Web Vitals before and after (change in &#039;good&#039; group is shown in brackets).

The graphs below show changes in web page performance metrics values according to the &quot;Platform&quot;. Note the two important dates on the graphs:

23 March 2021: the release of iteration with the last page sections migrated to Svelte;
19 April 2021: the release of iteration with returned SSR and layout modified to correct CLS regressions.

The decrease in values from May 1 to May 10 is due to May holidays in Russia.

  
  LCP graph in &#039;Platform&#039;: 16 March to 1 June 2021.


  
  FID graph in &#039;Platform&#039;: 16 March to 1 June 2021.


  
  CLS graph in &#039;Platform&#039;: 16 March to 1 June 2021.

Results obtained using the &quot;Platform&quot; are in line with the growth of metric values in Chrome UX Report (CrUX).

  
  LCP metric change in CrUX in 2021.


  
  FID metric change in CrUX in 2021.


  
  CLS metric change in CrUX in 2021.

A comparison of mean user session duration values a week before the roll-out of initial improvements and a week after the roll-out shows 2.7% growth. Moreover, there is an overall significant increase in conversion in most sections of the page. In particular, conversions to the Mail.ru email app increased by 11.6%, the conversion of the news section increased by 13.5%.

  
    181%
    Boost of share of good CLS threshold
  
  
    2.7%
    Higher mean session duration
  
  
    13.5%
    Increase of news section conversion rate
  

The most unexpected result we got was a 17.4% increase in the Click-Through Rate (CTR) of the marketing banner (its rendering time was significantly reduced by the introduction of SSR and preload tags).
 An unintended consequence of our work was that we saw a decrease in the conversion rate of some sections on the page. The search section in particular saw a decrease of 6.7%. Our team associates this with a change in the rendering of the page, as earlier on, this component was one of the first to render. We were able to reverse this decrease by introducing new product features into this section. 
After analyzing the rest of the sections on the page, we noticed significant performance improvement in the vast majority of them. Even for sections such as Weather and Coronavirus&mdash;which are not key on our page&mdash;we see an increase in conversion by 9.6% and 9.5%, respectively.
Conclusion #
Improving performance is challenging in that the work involved may be prolonged. You should regularly monitor changes in metrics over time and ensure that all new product features don&#039;t cause regressions in Core Web Vitals. To achieve this, we monitor changes in Core Web Vitals in our performance budget.
Most importantly, we stressed the importance of Core Web Vitals to all members of our product team, from managers and designers to testers and QA. Each team member should be aware of performance metrics and be empowered to improve them. We also incorporate performance optimization objectives into our business processes on a regular cadence. Successfully providing a high-quality user experience is only possible through a joint effort by all team members. ]]></description>
<link>https://tsecurity.de/de/1725695/IT+Betriebssysteme/Web+Tipps/Improving+Core+Web+Vitals+on+the+Mail.ru+home+page+resulted+in+an+average+10%25+increase+in+conversion+rates/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725695/IT+Betriebssysteme/Web+Tipps/Improving+Core+Web+Vitals+on+the+Mail.ru+home+page+resulted+in+an+average+10%25+increase+in+conversion+rates/</guid>
<pubDate>Mon, 15 Nov 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How Renault improved its bounce and conversion rates by measuring and optimizing Largest Contentful Paint]]></title> 
<description><![CDATA[Groupe Renault is a French multinational automobile manufacturer with a presence in over 130 countries. For an automotive group such as Renault, performant brand sites driving more user engagement and conversions mean more business. All of its brand sites aim at providing the best user experience at scale while maintaining flexibility of content and features for localized sites. In this context, performance monitoring is a key stake for the customer experience team which is in charge of developing and maintaining the global platform.
Measuring the business impact of Core Web Vitals #
Measurement in Google Analytics #
Working with fifty-five, its global data partner, Renault set up the web-vitals library, which allows sending to Google Analytics all the Web Vitals metrics from real users in a way that accurately matches how they&#039;re measured by Chrome and reported to other Google tools.
The following analysis showcases a dataset captured using these tools over four months between December 2020 and March 2021.
Optimized LCP strongly correlates with user engagement and business metrics #
The teams have identified a particularly strong correlation between a low Largest Contentful Paint (LCP) and favorable bounce rates and conversion rates, shown in the visualization below.

The dataset captures over 10 million visits in 33 countries over four months and shows how lower LCP measures correlates with:

Lower bounce rates
More conversions (lead forms completed)

Interestingly, as the website runs as a Single Page Application (SPA), all these measures are captured on landing pages only. The data shows that it is worth optimizing the website until the LCP reaches below 1 second. The group&#039;s brand sites can never be too optimized!

This dataset not only shows the negative correlation between LCP and business metrics, but also highlights performance discrepancies among the best performing landing pages. In the context of this website, getting LCP under 1 second leads to large increases in conversions and reductions in bounce.
Eja Rakotoarimanana, Consultant, fifty-five

1 second LCP improvement can lead to a 14 percentage points (ppt) decrease in bounce rate and 13% increase in conversions.

  
    
      
        1 second LCP improvement
        Result
      
    
    
      
        LCP around 1&nbsp;s
        +13% CVR
      
      
        LCP under 1.6&nbsp;s
        -14 ppt bounce rate
      
      
        LCP above 1.6&nbsp;s
        -5 ppt bounce rate
      
    
  

 The numbers above are derived from linear regressions computed over the dataset to understand the relationship between LCP and other technical and business metrics. The numbers linking LCP and bounce show that the marginal gain on bounce rates increases as LCP gets low (below 1.6 seconds). 
Renault&#039;s approach to optimizing Core Web Vitals at scale #
Since early 2020, in the brand&#039;s top 5 European markets, the number of visitors experiencing a fast LCP (under 2.5&nbsp;s) has improved by an average of 22 ppt for Renault domains (from 51% to 73%).

Here is how they&#039;ve approached it.
A central optimization of the SPA #
From a platform standpoint, performance has been a priority for years and including Core Web Vitals (CWV) as key metrics was a smooth process. Central teams have set up a comprehensive monitoring solution (with Google Lighthouse and Chrome UX Report API) and established a performance culture across the organization. There were several strategies to optimize their Single Page Application, including:

Server side rendering (SSR) to ensure a fast First Contentful Paint (FCP).
Code splitting to deliver only the JS and CSS chunks needed for the landing page (for better LCP and FID).
CDN with a high level of resource caching (including a Lambda@Edge to sort and remove unnecessary query parameters). This helped avoid the drawbacks of SSR (slower TTFB due to server computation) and deliver content closer to the final user (for better TTFB and LCP).
Optimizing compression with brotli to reduce the code size.
HTTP2 to enable multiplexing of requests and responses.
Using responsive images with WebP support and srcset and sizes attribute to serve the most appropriate image size and format to users.
Lazy-loading images, videos, and iframes using IntersectionObserver and FPOs (small 1&nbsp;KB thumbnails).
Removing blocking scripts and adjusting transpilation to browser targets to reduce JS file sizes (by avoiding unnecessary polyfills).
Reducing the size of the Google Tag Manager container to load third-party scripts only where and when needed.
Reducing the number of custom fonts, using woff/woff2 formats with unicode-range, and  font-display:swap to reduce font file sizes and show text as soon as possible even if custom fonts are not yet available.
Preloading hero images which are often LCP elements.

The team is still working on future improvements such as:

Server push to improve FCP by delivering CSS faster. (On standby due to lack of AWS support and deprecation proposal.
Progressive hydration to improve FID.
ES6 Module support to deliver a faster experience by using ES6 builds for modern browsers.

The SPA approach can be beneficial for performance as a full page reload is not necessary when users navigate across pages. That being said, current CWV measurement methodology on SPA can be perceived as a downside as route transitions are not being measured; hence comparatively faster page loads within a session, due to UI caching, are not taken into account. It also makes it difficult to compare CWV metrics against a Multi Page Application competitor website where a warm cache would bring the measures down on each page a user would browse during a session. Read the Web Vitals SPA FAQ for more details.
These are known limitations that are being investigated by the Chrome product teams. An update to the CLS metric has already been shipped to improve measurement on SPAs.

Performance requires constant monitoring as various technical teams can impact it. Despite limitations in how they are measured on SPAs, CWV metrics allow us to track the impact of the actions our teams take. Hopefully route transitions will be taken into account soon!
Cedric Bazureau, Tech Lead, Renault

Local guidelines promoting performance optimization as a shared responsibility #
Performance is communicated as both a global (central) and local responsibility. Teams have put together a series of best practices that local content owners are meant to follow. Here are a few examples from these guidelines:

Optimize local Google Tag Manager container to improve site performance. for example conditionally trigger certain tags.
Limit size of video content by compressing it using internal tools or hosting it on a external platform (such as YouTube).
Avoid uploading pictures via Google Tag Manager.


A deep understanding of our digital performance is key to ensuring a continuous optimization of our brand sites. Our customer experience team&#039;s approach is to provide a global platform that positively impacts local teams&#039; business outcomes while empowering these teams with guidelines and best practices to maintain this performance at a high level.
Alexandre Perruche, Head of Performance, Renault

To conclude, website performance has always been a priority at Renault, and its website platform is continuously optimized. Measuring Core Web Vitals alongside business metrics has allowed them to promote this topic as a globally shared responsibility, and local guidelines equip teams with the ability to participate in this beneficial effort. ]]></description>
<link>https://tsecurity.de/de/1725696/IT+Betriebssysteme/Web+Tipps/How+Renault+improved+its+bounce+and+conversion+rates+by+measuring+and+optimizing+Largest+Contentful+Paint/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725696/IT+Betriebssysteme/Web+Tipps/How+Renault+improved+its+bounce+and+conversion+rates+by+measuring+and+optimizing+Largest+Contentful+Paint/</guid>
<pubDate>Fri, 08 Oct 2021 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Improving Cumulative Layout Shift at Telegraph Media Group]]></title> 
<description><![CDATA[ Chris is a principal software engineer at The Telegraph. 
The visual stability challenge #
Layout shifts can be very disruptive. At Telegraph Media Group (TMG) visual stability
is particularly important because readers predominantly use our applications to
consume the news. If the layout shifts while reading an article, the reader will
likely lose their place. This can be a frustrating and distracting experience.
From an engineering perspective, ensuring the pages don&#039;t shift and interrupt
the reader can be challenging, especially when areas of your application are
loaded asynchronously and added to the page dynamically.
At TMG, we have multiple teams contributing code client-side:

Core engineering. Implementing third-party solutions to power areas such
as content recommendations and commenting.
Marketing. Running A/B tests to assess how our readers interact with new
features or changes.
Advertising. Managing advert requests and advert pre-bidding.
Editorial. Embedding code within articles such as tweets or videos, as
well as custom widgets (for example, Coronavirus case tracker).

Ensuring each of these teams do not cause the layout of the page to jolt can be
difficult. Using the Cumulative Layout Shift metric to measure how
often it&#039;s occurring for our readers, the teams got more insight into the real
user experience and a clear goal to strive to. This resulted in our 75th
percentile CLS improving from 0.25 to 0.1 and our passing bucket growing from
57% to 72%.

  
    250%
    75th percentile CLS improvement
  
  
    15%
    More users with good CLS score
  

Where we started #
Using CrUX dashboards we were able
to establish that our pages were shifting more than we&#039;d like.

    
    Our Cumulative Layout Shift scores between June 2020 and February 2021.

We ideally wanted at least 75% of our readers to have a &quot;good&quot; experience so we
started identifying the causes of the layout instability.
How we measured the layout shifts #
We used a combination of Chrome
DevTools and
WebPageTest to help recognize what was causing
the layout to shift. In DevTools, we used the Experience
section of the
Performance
tab to highlight individual instances of shifting layout and how they
contributed to the overall score.

    
    Identifying a layout shift caused by the advert loading client-side above the header using the Experience section of Chrome DevTools.

WebPageTest helpfully highlights where the
layout shift occurs in the timeline view when &quot;Highlight Layout Shifts&quot; is
selected.

    
    WebPageTest highlighting where the layout shifted.

After reviewing each shift across our most visited templates we came up with a
list of ideas as to how we could improve.
Reducing layout shifts #
We focused on four areas where we could reduce layout shifts:

adverts
images
headers
embeds

Adverts #
The adverts load after the initial paint via JavaScript. Some of the containers
they loaded in did not have any reserved height on them.


    The &quot;More stories&quot; block below the advert is shifted down after the advert loads.

Although we don&#039;t know the exact height, we&#039;re able to reserve space by using
the most common advert size loaded in the slot.

    
    By reserving space for the advert, the &quot;More stories&quot; block below remains static before and after the advert loads.

We had misjudged the average height of the advert in some cases. For tablet
readers, the slot was collapsing.


The advert slot collapsing after it loaded for readers on tablet sized devices.

We revisited the slot and adjusted the height to use the most common size.


Ensuring the space we reserved for the advert slot matched the most commonly served height of the advert.


Images #
A lot of the images across the website are lazy loaded and have their space
reserved for them.

    
    Lazy loading images without disrupting the layout.

However the inline images at the top of the articles did not have any space
reserved on the container, nor did they have width and height attributes
associated with the tags. This caused the layout to shift as they loaded in.

    
    A layout shift caused by the article&#039;s main image.

Simply adding the width and height attributes to the images ensured the layout
did not shift.

    
    The main article image loading without causing the layout to shift.

Header #
The header was below the content in the markup and was positioned at the top
using CSS. The original idea was to prioritise the content loading before the
navigation however this caused the page to momentarily shift.

    
    The header of the page loading inelegantly.

Moving the header to the top of the markup allowed the page to render without
this shift.

    
    The layout is no longer disrupted by the header of the page loading.

Embeds #
Some of the frequently used embeds have a defined aspect ratio. For example,
YouTube videos. While the player is loading, we pull the thumbnail from YouTube
and use it as a placeholder while the video loads.


    The video player slot loading a low resolution thumbnail while the video player loads.


Measuring the impact #
We were able to measure the impact at a feature level quite easily using the
tooling mentioned towards the start of the article. However we wanted to measure
CLS both at a template level and at a site level. Synthetically, we used
SpeedCurve to validate changes both in pre-production
and production.

    
    Tracking CLS progress synthetically using SpeedCurve.

We&#039;re able to then validate the results in our RUM data (provided by
mPulse)
once the code reached production.

    
    Validating site-wide CLS improvements with mPulse RUM data before and after making changes.

Checking the RUM data provides us with a good level of confidence that the
changes we&#039;re making are having a positive impact for our readers.
The final numbers we looked at are for the RUM data Google collects. This is
especially relevant now as they will soon have an impact on page
ranking.
For starters we used the Chrome UX Report, both in the
monthly origin level data available through the CrUX
dashboard, as well as by querying
BigQuery to retrieve historic p75 data. This way
we were easily able to see that for all of the traffic measured by CrUX, our
75th percentile CLS improved by 250% from 0.25 to 0.1 and our passing bucket
grew from 57% to 72%.

    
    Results from the Crux Dashboard.


    
    BigQuery run displaying the p75 values of 2021 to date.

In addition, we were able to make use of the Chrome UX Report
API
and create some internal dashboards split into templates.

    
    Internal dashboards making use of the Chrome UX Report API highlighting our average score and the worst performing pages using that template.

Avoiding CLS regressions #
An important aspect of making performance improvements is avoiding regressions.
We&#039;ve set up some basic performance budgets for our
key metrics and included CLS in those.

    
    A performance budget dashboard which shows synthetic checks measuring CLS on some of our high traffic templates. The budget is currently set at 0.025.

If the test exceeds the budget it&#039;ll send a message to a Slack channel so we can
investigate the cause. We&#039;ve also set up weekly reports, so that even if the
templates remain in budget we&#039;re aware of any changes that have had a negative
impact.
We&#039;re also planning to expand our budgets to use RUM data as well as synthetic
data, using mPulse to set both static
alerts
and potentially anomaly
detection
which would make us aware of any changes that are out of the ordinary.
It&#039;s important for us to approach new features with CLS in mind. A lot of the
changes I&#039;ve mentioned are those we&#039;ve had to fix after they&#039;ve been released to
our readers. Layout stability will be a consideration for the solution design of
any new feature going forward so that we can avoid any unexpected layout shifts
from the start.
Conclusion #
The improvements we&#039;ve made so far were quite easy to implement and have had a
significant impact. A lot of changes I&#039;ve outlined in this article didn&#039;t take
much time to deliver and they were applied to all of the most commonly used
templates which means they&#039;ve had a widespread positive impact for our readers.
There are still areas of the site we need to improve. We&#039;re exploring ways we
might be able to do more of our client-side logic server-side which will improve
CLS even more. We will keep tracking and monitoring our metrics with an aim to
constantly improve them and provide our readers with the best user experience
possible. ]]></description>
<link>https://tsecurity.de/de/1725697/IT+Betriebssysteme/Web+Tipps/Improving+Cumulative+Layout+Shift+at+Telegraph+Media+Group/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725697/IT+Betriebssysteme/Web+Tipps/Improving+Cumulative+Layout+Shift+at+Telegraph+Media+Group/</guid>
<pubDate>Mon, 14 Jun 2021 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How Wix improved website performance by evolving their infrastructure]]></title> 
<description><![CDATA[ Alon leads the core backend team at Wix. 
Thanks to leveraging industry standards, cloud providers, and CDN capabilities,
combined with a major rewrite of our website runtime, the percentage of Wix
sites reaching good 75th percentile scores on all Core Web Vitals (CWV) metrics
more than tripled year over year, according to data from
CrUX
and
HTTPArchive.
Wix adopted a performance-oriented culture, and further improvements will
continue rolling out to users. As we focus on performance KPIs, we expect to see
the number of sites passing CWV thresholds grow.
Overview #
The world of performance is beautifully complex,
with many variables and intricacies. Research shows that site speed has a
direct impact on conversion rates and revenues for
businesses. In recent years, the industry has put more emphasis on performance
visibility and making the web faster. Starting in May 2021, page
experience
signals
will be included in Google Search ranking.
The unique challenge at Wix is supporting millions of sites, some of which
were built many years ago and have not been updated since. We have various
tools and
articles
to assist our users on what they can do to analyze and improve the performance
of their sites.
Wix is a managed environment and not everything is in the hands of the user.
Sharing common infrastructures presents many challenges for all these sites, but
also opens opportunities for major enhancements across the board, i.e.
leveraging the economies of scale.
 In this post I will focus on enhancements done around serving the initial HTML, which initiates the page loading process. 
Speaking in a common language #
One of the core difficulties with performance is finding a common terminology to
discuss different aspects of the user experience, while considering both the
technical and perceived performance. Using a well-defined, common language
within the organization enabled us to easily discuss and categorize the
different technical parts and trade-offs, clarified our performance reports and
tremendously helped to understand what aspects we should focus on improving
first.
We adjusted all our monitoring and internal discussions to include industry
standard metrics such as Web Vitals, which include:

  
  Core Web Vitals

Site complexity and performance scores #
It&#039;s pretty easy to create a site that loads instantly so long as you
make it very simple using only
HTML and serve it via a CDN.

  

However, the reality is that sites are getting more and more complex and
sophisticated, operating more like applications rather than documents, and
supporting functionalities such as blogs, e-commerce solutions, custom code,
etc.
Wix offers a very large variety of
templates, enabling its users to easily
build a site with many business capabilities. Those additional features often
come with some performance costs.
The journey #
In the beginning, there was HTML #
Every time a webpage is loaded, it always starts with an initial request to a
URL in order to retrieve the HTML document. This HTML response triggers all the
additional client requests and browser logic to run and render your site. This
is the most important part of the page loading, because nothing happens until
the beginning of the response arrives (known as TTFB - time to first byte).

  
  WebPageTest First View

The past: client-side rendering (CSR) #
When operating large scale systems, you always have trade-offs you need to
consider, such as performance, reliability and costs. Up to a few years ago, Wix
used client-side rendering (CSR), in which the actual HTML content was generated
via JavaScript on the client side (i.e. in the browser) allowing us to support a
high scale of sites without having huge backend operational costs.
CSR enabled us to use a common HTML document, which was essentially empty. All
it did was trigger the download of the required code and data which was then
used to generate the full HTML on the client device.
Today: server-side rendering (SSR) #
A few years ago we transitioned to server-side rendering (SSR), as that was
beneficial both to SEO and performance, improving initial page visibility times
and ensuring better indexing for search engines that do not have full support
for running JavaScript.
This approach improved the visibility experience, especially on slower
devices/connections, and opened the door for further performance optimizations.
However, it also meant that for each web page request, a unique HTML response
was generated on the fly, which is far from optimal, especially for sites
with a large amount of views.
Introducing caching in multiple locations #
The HTML for each site was mostly static, but it had a few caveats:

It frequently changes. Each time a user edits their site, or makes changes in site data,
such as on the website store inventory.
It had certain data and cookies that were visitor specific,
meaning two people visiting the same site would see somewhat different HTML. For example,
to support products features such as remembering what items a visitor put in the cart,
or the chat the visitor started with the business earlier, and more.
Not all pages are cacheable. For example a page with custom user code on it,
that displays the current time as part of the document, is not eligible for caching.

Initially, we took the relatively safe approach of caching the HTML without visitor data, and then only
modified specific parts of the HTML response on the fly for each visitor, for
each cache hit.
In-house CDN solution #
We did this by deploying an in-house solution: Using Varnish HTTP
Cache for proxying and caching, Kafka for
invalidation messages, and a Scala/Netty-based service which proxies these HTML
responses, but mutates the HTML and adds visitor-specific data and cookies to
the cached response.
This solution enabled us to deploy these slim components in many more
geographic locations and multiple cloud provider regions, which are spread
across the world. In 2019, we introduced over 15 new regions, and gradually
enabled caching for over 90% of our page views that were eligible for caching.
Serving sites from additional locations reduced the network
latency between the clients and the servers
serving the HTML response, by bringing the content closer to the website&#039;s
visitors.
We also started caching certain read-only API responses by using the same
solution and invalidating the cache on any change to the site content. For
example, the list of blog posts on the site is cached and invalidated when a
post is published/modified.
Reducing complexities #
Implementing caching improved performance substantially, mostly on the
TTFB and FCP phases, and improved our
reliability by serving the content from a location closer to the end user.
However, the need to modify the HTML for each response introduced an unnecessary
complexity that, if removed, presented an opportunity for further performance
improvements.
Browser caching (and preparations for CDNs) #

  
    
     ~ 13%
     HTML requests served directly from the browser cache,
     saving much bandwidth and reducing loading times for repeat views
    
  

The next step was to actually remove this visitor-specific data from the HTML
entirely, and retrieve it from a
separate endpoint, called by the client for this purpose, after the HTML has
arrived.
We carefully migrated this data and cookies to a new endpoint, which is called
on each page load, but returns a slim JSON, which is required only for the
hydration process, to reach
full page interactivity.
This allowed us to enable browser caching of the HTML, which means that browsers
now save the HTML response for repeating visits, and only call the server to
validate that the content hasn&#039;t changed. This is done using HTTP
ETag, which is basically an identifier
assigned to a specific version of an HTML resource. If the content is still the
same, a 304 Not
Modified response
is sent by our servers to the client, without a body.

  
  WebPageTest Repeat View

In addition, this change means that our HTML is no longer visitor-specific and
contains no cookies. In other words it can basically be cached anywhere, opening
the door to using CDN providers that have much better geo presence in hundreds
of locations around the world.
DNS, SSL and HTTP/2 #
With caching enabled, wait times were reduced and other important parts of the
initial connection became more substantial. Enhancing our networking
infrastructure and monitoring enabled us to improve our DNS, connection, and SSL
times.

  

HTTP/2 was enabled for all user domains,
reducing both the amount of connections required and the overhead that comes
with each new connection. This was a relatively easy change to deploy, while
taking advantage of the performance and resilience
benefits that
come with HTTP/2.
Brotli compression (vs. gzip) #

  
    
     21 - 25%
     Reduction of median file transfer size
    
  

Traditionally, all our files were compressed using gzip
compression, which is the most prevalent
HTML compression option on the web. This compression protocol was initially
implemented almost 30 years ago!

  
  
    Brotli Compression Level Estimator
  

The newer Brotli compression introduces
compression improvements with almost no trade-offs, and is slowly becoming more
popular, as described in the yearly Web Almanac Compression
chapter.
It has been supported by all the major browsers
for a while.
We enabled Brotli support on our nginx proxies in the edges, for all clients
that support it.
Moving to use Brotli compression reduced our median file transfer sizes by
21% to 25% resulting in a reduced bandwidth usage and improved loading times.

  
  Median Response Sizes

Content delivery networks (CDNs) #
Dynamic CDN selection #
At Wix, we have always used CDNs to serve all the
JavaScript code and images on user websites.
Recently, we integrated with a solution by our DNS provider, to automatically
select the best performing CDN according to the client&#039;s network and origin.
This enables us to serve the static files from the best location for each
visitor, and avoid availability issues on a certain CDN.
Coming soon&hellip; user domains served by CDNs #
The final piece of the puzzle is serving the last, and most critical part,
through a CDN: the HTML from the user domain.
As described above, we created our own in-house solution to cache and serve the
site-specific HTML and API results. Maintaining this solution in so many new
regions also has its operational costs, and adding new locations becomes a
process we need to manage and continually optimize.
We are currently integrating with various CDN providers to support serving the
entire Wix site directly from CDN locations to improve the distribution of our
servers across the globe and thus further improve response times. This is a
challenge due to the large amount of domains we serve, which require SSL
termination at the edge.
Integrating with CDNs brings Wix websites closer than ever to the customer and
comes with more improvements to the loading experience, including newer
technologies such as HTTP/3 without added effort on our side.

A few words on performance monitoring #
If you run a Wix site, you&#039;re probably wondering how this translates to your Wix
site performance results, and how we compare against other website platforms.
Most of the work done above has been deployed in the past year, and some is
still being rolled out.
The Web Almanac by HTTPArchive recently published the 2020
edition which includes an excellent
chapter on CMS user experience.
Keep in mind that many of the numbers described in this article are from the
middle of 2020.
We look forward to seeing the updated report in 2021, and are actively
monitoring
CrUX
reports for our sites as well as our internal performance metrics.
We are committed to continuously improve loading times and provide our users
with a platform where they can build sites as they imagine, without compromising
on performance.

  
  LCP, Speed Index and FCP for a mobile site over time

DebugBear recently released a very interesting Website Builder Performance
Review,
which touches on some of the areas I mentioned above and examines the
performance of very simple sites built on each platform. This
site was built almost two years
ago, and not modified since, but the platform is continually improving, and the
site performance along with it, which can be witnessed by viewing its
data
over the past year and a half.
Conclusion #
We hope our experience inspires you to adopt a performance-oriented culture at
your organisation and that the details above are helpful and applicable to your
platform or site.
To sum up:

Pick a set of metrics that you can track consistently using tools endorsed by
the industry. We recommend Core Web Vitals.
Leverage browser caching and CDNs.
Migrate to HTTP/2 (or HTTP/3 if possible).
Use Brotli compression.

Thanks for learning our story and we invite you to ask questions, share ideas on
Twitter and
GitHub and join the web performance
conversation on your favorite channels.
So, how does your recent Wix site performance look like? # ]]></description>
<link>https://tsecurity.de/de/1725698/IT+Betriebssysteme/Web+Tipps/How+Wix+improved+website+performance+by+evolving+their+infrastructure/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725698/IT+Betriebssysteme/Web+Tipps/How+Wix+improved+website+performance+by+evolving+their+infrastructure/</guid>
<pubDate>Wed, 10 Mar 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Cómo Wix mejoró el rendimiento de su sitio web mediante la evolución de su infraestructura]]></title> 
<description><![CDATA[ Alon lidera el equipo central de backend en Wix. 
Gracias al aprovechamiento de los est&aacute;ndares de la industria, los proveedores de nube y las capacidades de CDN, combinado con una reescritura importante del tiempo de ejecuci&oacute;n de nuestro sitio web, el porcentaje de sitios Wix que alcanzaron buenas puntuaciones del percentil 75 en todas las m&eacute;tricas de Core Web Vitals (CWV) se triplic&oacute; a&ntilde;o tras a&ntilde;o, seg&uacute;n a los datos de CrUX y HTTPArchive.
Wix adopt&oacute; una cultura orientada al rendimiento y se seguir&aacute;n implementando nuevas mejoras para los usuarios. A medida que nos centramos en los KPI de rendimiento, esperamos ver crecer el n&uacute;mero de sitios que superan los umbrales de CWV.
Descripci&oacute;n general #
El mundo del desempe&ntilde;o es maravillosamente complejo, con muchas variables y cosas muy rebuscadas. Las investigaciones muestran que la velocidad del sitio tiene un impacto directo en las tasas de conversi&oacute;n y los ingresos de las empresas. En los &uacute;ltimos a&ntilde;os, la industria ha puesto m&aacute;s &eacute;nfasis en la visibilidad del rendimiento y en hacer que la web sea m&aacute;s r&aacute;pida. A partir de mayo de 2021, las se&ntilde;ales de experiencia de la p&aacute;gina se incluir&aacute;n en el ranking de b&uacute;squeda de Google.
El desaf&iacute;o &uacute;nico en Wix es dar su apoyo a millones de sitios, algunos de los cuales se crearon hace muchos a&ntilde;os y no se han actualizado desde entonces. Contamos con varias herramientas y art&iacute;culos para ayudar a nuestros usuarios sobre lo que pueden hacer para analizar y mejorar el rendimiento de sus sitios.
Wix es un entorno gestionado y no todo est&aacute; en manos del usuario. Compartir infraestructuras comunes presenta muchos desaf&iacute;os para todos estos sitios, pero tambi&eacute;n abre oportunidades para mejoras importantes en todos los &aacute;mbitos, es decir, aprovechar las econom&iacute;as de escala.
 En esta publicaci&oacute;n, me centrar&eacute; en las mejoras realizadas en torno al servicio del HTML inicial, que inicia el proceso de carga de la p&aacute;gina. 
Hablar en un idioma com&uacute;n #
Una de las principales dificultades del desempe&ntilde;o es encontrar una terminolog&iacute;a com&uacute;n para discutir diferentes aspectos de la experiencia del usuario, considerando tanto el desempe&ntilde;o t&eacute;cnico como el percibido. El uso de un lenguaje com&uacute;n bien definido dentro de la organizaci&oacute;n nos permiti&oacute; discutir y categorizar f&aacute;cilmente las diferentes partes t&eacute;cnicas y sus intercambios, clarific&oacute; nuestros informes de desempe&ntilde;o y ayud&oacute; enormemente a comprender en qu&eacute; aspectos deber&iacute;amos enfocarnos en mejorar primero.
Ajustamos todo nuestro monitoreo y discusiones internas para incluir m&eacute;tricas est&aacute;ndar de la industria como Web Vitals, que incluyen:
 Core Web Vitals
Puntajes de rendimiento y complejidad del sitio #
Es bastante f&aacute;cil crear un sitio que se cargue instant&aacute;neamente siempre que lo hagas muy simple usando solo HTML y lo sirvas a trav&eacute;s de un CDN.

Sin embargo, la realidad es que los sitios son cada vez m&aacute;s complejos y sofisticados, funcionan m&aacute;s como aplicaciones que como documentos y soportan funcionalidades como blogs, soluciones de comercio electr&oacute;nico, c&oacute;digo personalizado, etc.
Wix ofrece una gran variedad de plantillas, lo que permite a sus usuarios crear f&aacute;cilmente un sitio con muchas capacidades comerciales. Esas caracter&iacute;sticas adicionales a menudo incluyen algunos costos de rendimiento.
El viaje #
Al principio, exist&iacute;a HTML #
Cada vez que se carga una p&aacute;gina web, siempre comienza con una solicitud inicial a una URL para recuperar el documento HTML. Esta respuesta HTML activa todas las solicitudes de clientes adicionales y la l&oacute;gica del navegador para ejecutar y renderizar tu sitio. Esta es la parte m&aacute;s importante de la carga de la p&aacute;gina, porque no sucede nada hasta que llega el comienzo de la respuesta (conocido como Time to First Byte (TTFB): Tiempo para el primer byte).
 Primera vista de WebPageTest
El pasado: renderizaci&oacute;n del lado del cliente (CSR) #
Cuando se opera sistemas a gran escala, siempre hay compensaciones que debes considerar, como el rendimiento, la confiabilidad y los costos. Hasta hace unos a&ntilde;os, Wix utilizaba la renderizaci&oacute;n del lado del cliente (CSR), en la que el contenido HTML real se generaba a trav&eacute;s de JavaScript en el lado del cliente (es decir, en el navegador), lo que nos permite admitir una gran escala de sitios sin tener costos operativos de un backend enorme.
CSR nos permiti&oacute; usar un documento HTML com&uacute;n, que estaba esencialmente vac&iacute;o. Todo lo que hizo fue activar la descarga del c&oacute;digo y los datos requeridos que luego se utilizaron para generar el HTML completo en el dispositivo cliente.
Hoy: renderizado del lado del servidor (SSR) #
Hace unos a&ntilde;os hicimos la transici&oacute;n a la renderizaci&oacute;n del lado del servidor (SSR), ya que fue beneficioso tanto para el SEO como para el rendimiento, mejorando los tiempos de visibilidad inicial de la p&aacute;gina y asegurando una mejor indexaci&oacute;n para los motores de b&uacute;squeda que no tienen soporte completo para ejecutar JavaScript.
Este enfoque mejor&oacute; la experiencia de visibilidad, especialmente en dispositivos y conexiones m&aacute;s lentos, y abri&oacute; la puerta a m&aacute;s optimizaciones de rendimiento. Sin embargo, tambi&eacute;n signific&oacute; que para cada solicitud de p&aacute;gina web, se gener&oacute; una respuesta HTML &uacute;nica sobre la marcha, lo que est&aacute; lejos de ser &oacute;ptima, especialmente para sitios con una gran cantidad de visitas.
Introducci&oacute;n al almacenamiento en cach&eacute; en varias ubicaciones #
El HTML de cada sitio era en su mayor&iacute;a est&aacute;tico, pero ten&iacute;a algunas advertencias:

Con frecuencia cambia. Por ejemplo, cada vez que un usuario edita su sitio o realiza cambios en los datos del sitio, como en el inventario de la tienda del sitio web.
Ten&iacute;a ciertos datos y cookies que eran espec&iacute;ficos del visitante, lo que significa que dos personas que visitan el mismo sitio ver&iacute;an el HTML algo diferente. Por ejemplo, para respaldar las caracter&iacute;sticas de los productos, como recordar qu&eacute; elementos coloc&oacute; un visitante en el carrito, o el chat que el visitante inici&oacute; con el negocio antes, y m&aacute;s.
No todas las p&aacute;ginas se pueden almacenar en cach&eacute;. Por ejemplo, una p&aacute;gina con un c&oacute;digo de usuario personalizado, que muestra la hora actual como parte del documento, no es elegible para el almacenamiento en cach&eacute;.

Inicialmente, tomamos el enfoque relativamente seguro de almacenar en cach&eacute; el HTML sin datos de visitantes y luego solo modificamos partes espec&iacute;ficas de la respuesta HTML sobre la marcha para cada visitante, para cada visita de cach&eacute;.
Soluci&oacute;n CDN interna #
Hicimos esto mediante la implementaci&oacute;n de una soluci&oacute;n interna: utilizando Varnish HTTP Cache para proxy y almacenamiento en cach&eacute;, Kafka para mensajes de invalidaci&oacute;n y un servicio basado en Scala/Netty que procesa estas respuestas HTML, pero muta el HTML y agrega datos espec&iacute;ficos del visitante y cookies a la respuesta en cach&eacute;.
Esta soluci&oacute;n nos permiti&oacute; implementar estos componentes delgados en muchas m&aacute;s ubicaciones geogr&aacute;ficas y m&uacute;ltiples regiones de proveedores de nube, que se encuentran repartidas por todo el mundo. En 2019, presentamos m&aacute;s de 15 regiones nuevas y, gradualmente, habilitamos el almacenamiento en cach&eacute; para m&aacute;s del 90% de nuestras p&aacute;ginas vistas que eran elegibles para el almacenamiento en cach&eacute;. El servicio de sitios desde ubicaciones adicionales redujo la latencia de la red entre los clientes y los servidores que sirven la respuesta HTML, al acercar el contenido a los visitantes del sitio web.
Tambi&eacute;n comenzamos a almacenar en cach&eacute; ciertas respuestas de API de solo lectura utilizando la misma soluci&oacute;n e invalidando la cach&eacute; en cualquier cambio en el contenido del sitio. Por ejemplo, la lista de publicaciones de blog en el sitio se almacena en cach&eacute; y se invalida cuando se publica y/o modifica una publicaci&oacute;n.
Reducir las complejidades #
La implementaci&oacute;n del almacenamiento en cach&eacute; mejor&oacute; sustancialmente el rendimiento, principalmente en las fases TTFB y First Contentful Paint (FCP): Despliegue del primer contenido y mejor&oacute; nuestra confiabilidad al ofrecer el contenido desde una ubicaci&oacute;n m&aacute;s cercana al usuario final.
Sin embargo, la necesidad de modificar el HTML para cada respuesta introdujo una complejidad innecesaria que, si se eliminaba, presentaba una oportunidad para mejorar el rendimiento.
Almacenamiento en cach&eacute; del navegador (y preparativos para CDN) #

  
    
     ~ 13 %
     Las solicitudes HTML se sirven directamente desde la memoria cach&eacute; del navegador, lo que ahorra mucho ancho de banda y reduce los tiempos de carga para las vistas repetidas.
    
  

El siguiente paso fue eliminar por completo estos datos espec&iacute;ficos del visitante del HTML y recuperarlos de un punto final separado, llamado por el cliente para este prop&oacute;sito, despu&eacute;s de que haya llegado el HTML.
Migramos cuidadosamente estos datos y cookies a un nuevo punto final, que se llama en cada carga de p&aacute;gina, pero devuelve un JSON delgado, que se requiere solo para el proceso de hidrataci&oacute;n, para alcanzar la interactividad completa de la p&aacute;gina.
Esto nos permiti&oacute; habilitar el almacenamiento en cach&eacute; del HTML del navegador, lo que significa que los navegadores ahora guardan la respuesta HTML para visitas repetidas y solo llaman al servidor para validar que el contenido no haya cambiado. Esto se hace usando HTTP ETag, que es b&aacute;sicamente un identificador asignado a una versi&oacute;n espec&iacute;fica de un recurso HTML. Si el contenido sigue siendo el mismo, nuestros servidores env&iacute;an una respuesta 304 Not Modified al cliente, sin un cuerpo.
  Vista de repetici&oacute;n de WebPageTest
Adem&aacute;s, este cambio significa que nuestro HTML ya no es espec&iacute;fico del visitante y no contiene cookies. En otras palabras, b&aacute;sicamente se puede almacenar en cach&eacute; en cualquier lugar, lo que abre la puerta al uso de proveedores de CDN que tienen una presencia geogr&aacute;fica mucho mejor en cientos de ubicaciones en todo el mundo.
DNS, SSL y HTTP/2 #
Con el almacenamiento en cach&eacute; habilitado, los tiempos de espera se redujeron y otras partes importantes de la conexi&oacute;n inicial se volvieron m&aacute;s sustanciales. Mejorar nuestra infraestructura de red y monitoreo nos permiti&oacute; mejorar nuestros tiempos de DNS, conexi&oacute;n y SSL.

HTTP/2 se habilit&oacute; para todos los dominios de usuario, lo que redujo tanto la cantidad de conexiones necesarias como la sobrecarga que conlleva cada nueva conexi&oacute;n. Este fue un cambio relativamente f&aacute;cil de implementar, mientras se aprovechaban los beneficios de rendimiento y resistencia que vienen con HTTP/2.
Compresi&oacute;n Brotli (contra gzip) #

  
    
     21 - 25 %
     Reducci&oacute;n del tama&ntilde;o de la mediana de transferencia de archivos
    
  

Tradicionalmente, todos nuestros archivos se comprim&iacute;an mediante la compresi&oacute;n gzip, que es la opci&oacute;n de compresi&oacute;n HTML m&aacute;s com&uacute;n en la web. &iexcl;Este protocolo de compresi&oacute;n se implement&oacute; inicialmente hace casi 30 a&ntilde;os!
 Estimador de nivel de compresi&oacute;n Brotli
La m&aacute;s reciente compresi&oacute;n Brotli introduce mejoras de compresi&oacute;n casi sin concesiones y poco a poco se est&aacute; volviendo m&aacute;s popular, como se describe en el anual Compression chapter de Web Almanac. Ha sido compatible con todos los principales navegadores durante un tiempo.
Habilitamos el soporte de Brotli en nuestros proxies nginx en los bordes, para todos los clientes que sean compatibles.
Al pasar a utilizar la compresi&oacute;n Brotli, redujo nuestro tama&ntilde;o mediano de transferencia de archivos entre un 21% y un 25%, lo que result&oacute; en un uso reducido del ancho de banda y tiempos de carga mejorados.
 Tama&ntilde;os de respuesta de la mediana
Redes de entrega de contenido (CDN) #
Selecci&oacute;n de CDN din&aacute;mica #
En Wix, siempre hemos utilizado CDN para servir todo el c&oacute;digo JavaScript y las im&aacute;genes en los sitios web de los usuarios.
Recientemente, nos integramos con una soluci&oacute;n de nuestro proveedor de DNS, para seleccionar autom&aacute;ticamente la CDN con mejor desempe&ntilde;o seg&uacute;n la red y el origen del cliente. Esto nos permite servir los archivos est&aacute;ticos desde la mejor ubicaci&oacute;n para cada visitante y evitar problemas de disponibilidad en una determinada CDN.
Pr&oacute;ximamente&hellip; dominios de usuario servidos por CDN #
La &uacute;ltima pieza del rompecabezas servira la &uacute;ltima y parte m&aacute;s cr&iacute;tica a trav&eacute;s de un CDN: el HTML del dominio del usuario.
Como se describi&oacute; anteriormente, creamos nuestra propia soluci&oacute;n interna para almacenar en cach&eacute; y entregar los resultados de API y HTML espec&iacute;ficos del sitio. Mantener esta soluci&oacute;n en tantas regiones nuevas tambi&eacute;n tiene sus costos operativos y agregar nuevas ubicaciones se convierte en un proceso que debemos administrar y optimizar continuamente.
Actualmente nos estamos integrando con varios proveedores de CDN para respaldar el servicio de todo el sitio de Wix directamente desde las ubicaciones de CDN para mejorar la distribuci&oacute;n de nuestros servidores en todo el mundo y as&iacute; mejorar a&uacute;n m&aacute;s los tiempos de respuesta. Este es un desaf&iacute;o debido a la gran cantidad de dominios que atendemos, que requieren terminaci&oacute;n SSL en el borde.
La integraci&oacute;n con CDN acerca los sitios web de Wix al cliente m&aacute;s que nunca y viene con m&aacute;s mejoras en la experiencia de carga, incluidas tecnolog&iacute;as m&aacute;s nuevas como HTTP/3 sin un esfuerzo adicional de nuestra parte.

Algunas palabras sobre el monitoreo del desempe&ntilde;o #
Si ejecutas un sitio Wix, probablemente te est&eacute;s preguntando c&oacute;mo esto se traduce en los resultados de rendimiento de tu sitio Wix y c&oacute;mo lo comparamos con otras plataformas de sitios web.
La mayor parte del trabajo realizado anteriormente se implement&oacute; el a&ntilde;o pasado y cierta parte a&uacute;n se est&aacute; implementando.
El Web Almanac de HTTPArchive public&oacute; recientemente la edici&oacute;n 2020 que incluye un excelente cap&iacute;tulo sobre la experiencia del usuario de CMS. Ten en cuenta que muchos de los n&uacute;meros descritos en este art&iacute;culo son a mediados del 2020.
Esperamos ver el informe actualizado en 2021 y estamos monitoreando activamente los informes de CrUX para nuestros sitios, as&iacute; como nuestras m&eacute;tricas de rendimiento internas.
Estamos comprometidos a mejorar continuamente los tiempos de carga y proporcionar a nuestros usuarios una plataforma en la que puedan crear sitios como ellos lo imaginen, sin comprometer el rendimiento.
 La LCP, Speed Index y FCP para un sitio m&oacute;vil a lo largo del tiempo
DebugBear lanz&oacute; recientemente una revisi&oacute;n de rendimiento del Website Builder (creador de sitios web) muy interesante, que toca algunas de las &aacute;reas que mencion&eacute; anteriormente y examina el rendimiento de sitios muy simples construidos en cada plataforma. Este sitio se construy&oacute; hace casi dos a&ntilde;os y no se modific&oacute; desde entonces, pero la plataforma est&aacute; mejorando continuamente y el rendimiento del sitio junto con &eacute;l, lo que se puede observar al ver sus datos durante el &uacute;ltimo a&ntilde;o y medio.
Conclusi&oacute;n #
Esperamos que nuestra experiencia te inspire a adoptar una cultura orientada al desempe&ntilde;o en tu organizaci&oacute;n y que los detalles anteriores sean &uacute;tiles y aplicables a tu plataforma o sitio.
Para resumir:

Elije un conjunto de m&eacute;tricas de las que puedas realizar un seguimiento de forma constante mediante el uso de herramientas respaldadas por la industria. Recomendamos Core Web Vitals.
Aprovecha el almacenamiento en cach&eacute; del navegador y las CDN.
Migra a HTTP/2 (o HTTP/3 si es posible).
Utiliza la compresi&oacute;n Brotli.

Gracias por conocer nuestra historia y te invitamos a hacer preguntas, compartir ideas en Twitter y GitHub y unirte a la conversaci&oacute;n sobre rendimiento web en tus canales favoritos.
Entonces, &iquest;c&oacute;mo se ve el rendimiento de tu sitio Wix reciente? # ]]></description>
<link>https://tsecurity.de/de/1725699/IT+Betriebssysteme/Web+Tipps/C%C3%B3mo+Wix+mejor%C3%B3+el+rendimiento+de+su+sitio+web+mediante+la+evoluci%C3%B3n+de+su+infraestructura/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725699/IT+Betriebssysteme/Web+Tipps/C%C3%B3mo+Wix+mejor%C3%B3+el+rendimiento+de+su+sitio+web+mediante+la+evoluci%C3%B3n+de+su+infraestructura/</guid>
<pubDate>Wed, 10 Mar 2021 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Clipchamp's video editor PWA installs see a 97% monthly growth]]></title> 
<description><![CDATA[
  
    97%
    Monthly growth in PWA installations
  
  
    2.3x
    Performance improvement
  
  
    9%
    Higher retention in PWA users
  

Clipchamp is the in-browser online video
editor that empowers anyone to tell
stories worth sharing through video. Around the world, over 12 million creators
use Clipchamp to easily edit videos. We offer simple solutions for making videos,
from intuitive tools like crop and trim, to practical features like our screen
recorder, and even a meme maker.
Who uses Clipchamp? #
Our users (or everyday editors as we call them) are diverse. No expertise is
necessary to be a video editor with Clipchamp. Specifically, we&#039;re currently
noticing sales, support training, and product marketing teams using our webcam
and screen recorder for quick explainer content with added text and GIFs to make
it engaging. We&#039;re also observing a lot of small businesses edit and post social
videos while on the move.
What challenges do they face? #
We recognise that video editing can be intimidating at first. The assumption is
that it&#039;s hard, probably due to previous frustrating experiences with complex
editing software. In contrast, Clipchamp focuses on ease and simplicity,
providing support with text overlays, stock video and music, templates, and
more.
We find most everyday editors aren&#039;t wanting to create motion picture
masterpieces. We talk to our users a lot and are continually reminded that
they&#039;re busy and just want to get their story out to the world as quickly and
easily as possible, so this is a focus for us.
Developing a Clipchamp PWA #
At Clipchamp, we&#039;re all about empowering people to tell their stories through
video. To live up to this vision, we soon realised that allowing our users to
use their own footage when putting together a video project is important.
That insight put the pressure on Clipchamp&#039;s engineering team to come up with a
technology that can efficiently process Gigabyte-scale media files in a web
application. Having network bandwidth constraints in mind, we were quick to rule
out a traditional cloud-based solution. Uploading large media files from a
retail internet connection would invariably introduce massive wait times
before editing could even begin, effectively resulting in a poor user
experience.
That made us switch to a fully in-browser solution, where all the &quot;heavy
lifting&quot; of video processing is done locally using hardware resources available
on the end user&#039;s device. We strategically bet on the Chrome browser and, by
extension, the ChromeOS platform to help us overcome the inevitable challenges
of building an in-browser video creation platform.
Video processing is enormously resource hungry, affecting computer and storage
resources alike. We started out building the first version of Clipchamp on top
of Google&#039;s (Portable) Native Client (PNaCl). While eventually phased out, PNaCl
was a great confirmation for our team that web apps can be fast and low latency,
while still running on end user hardware.
When later switching to WebAssembly, we were glad to see Chrome taking the lead
in incorporating post-MVP features such as bulk memory operations, threading,
and most recently: fixed-width vector operations. The latter has been hotly
anticipated by our engineering team, offering us the ability to optimize our
video processing stack to take advantage of SIMD
operations, prevalent on contemporary CPUs. Taking advantage of Chrome&#039;s
WebAssembly SIMD support, we were able to speed up some particularly demanding
workloads such as 4K video decoding and video encoding.

With little prior experience and in less than a month of effort for one of our
engineers, we managed to improve performance by 2.3x. While still limited to a
Chrome origin trial, we were already able to roll out these SIMD enhancements to
the majority of our users. While our users run wildly different hardware setups,
we were able to confirm a matching performance uplift in production without
seeing any detrimental effects in failure rates.
More recently, we integrated the emerging WebCodecs API, currently available
under another Chrome origin trial. Using this new capability, we will be able to
further improve performance of video decoding on low-spec hardware as found
in many popular Chromebooks.
With a PWA created, it&#039;s important to encourage its adoption. As with many web
apps, we&#039;ve focused on ease of access which includes things like social logins
including Google, quickly getting the user into a place where they can edit
video and then making it easy to export the video. Additionally, we promoted
our PWA install prompts in the toolbar and as a pop-up notice in our menu
navigation.
Results #
Our installable Chrome PWA has been doing really well. We&#039;ve been so pleased to
see 9% higher retention with PWA users than with our standard desktop users.
Installation of the PWA has been massive, increasing at a rate of 97% a month
since we launched five months ago. And, as mentioned before, the WebAssembly
SIMD enhancements improved performance 2.3x.

  
  
    Clipchamp PWA installs over the last 6 months.
  

Future #
We&#039;re pleasantly surprised by the engagement and uptake of our PWA. We think
Clipchamp user retention benefited because the PWA is installed and easier to
get to. We also noted the PWA performs better for the editor, which makes it
more compelling and keeps people coming back.
Looking to the future, we&#039;re excited about the opportunity ChromeOS provides
for even more users to get more done with less fuss. Specifically, we&#039;re excited
about some of the convenience integrations with the local OS when working with
files. We think this will help speed up workflows for our busy everyday editors,
and that&#039;s one of our highest priorities. ]]></description>
<link>https://tsecurity.de/de/1725700/IT+Betriebssysteme/Web+Tipps/Clipchamp%27s+video+editor+PWA+installs+see+a+97%25+monthly+growth/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725700/IT+Betriebssysteme/Web+Tipps/Clipchamp%27s+video+editor+PWA+installs+see+a+97%25+monthly+growth/</guid>
<pubDate>Tue, 08 Dec 2020 01:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[How focusing on web performance improved Tokopedia's click-through rate by 35%]]></title> 
<description><![CDATA[Tokopedia is one of the largest e-commerce companies in Indonesia. With 2.7M+ nationwide merchant
networks, 18M+ product listings, and 50M+ monthly visitors, the web team knew  that investment in
web performance was essential. By building a performance-first culture, they achieved a 35% increase
in click-through rates (CTR) and an 8% increase in conversions (CVR).

  
    35%
    Increase in CTR
  
  
    8%
    Increase in CVR
  
  
    4sec
    Improvement in TTI
  

Highlighting the opportunity #
The web team talked to their leadership team on the importance of investing in web performance to
improve user experience and engagement, and also showed the impact of performance using advanced
patterns and APIs.
 Check out web.dev&#039;s Build a performance culture collection for tips on how to persuade your cross-functional stakeholders to focus on website performance. 
The approach they used #
JavaScript and resource optimization #

  
    
      Render-blocking or long-running JavaScript
      is a common cause of performance issues. The team took several steps to minimize this:
    
    
      
        Built a script controller library to selectively load third-party scripts to optimize for
        critical rendering path.
      
      
        Replaced heavier libraries with lighter ones.
      
      
        Implemented code splitting
        and optimized for above-the-fold content.
      
      
        Implemented adaptive loading, e.g. only
        loading high-quality images for devices on fast networks and using lower-quality images for
        devices on slow networks.
      
      
        Lazy-loaded below-the-fold images.
      
      
        Deferred loading of non-critical JavaScript.
      
    
  
  
    
  

Homepage optimization #

  
    The team used Svelte to build a lite version of the homepage
    for first-time visitors, ensuring a fast website experience. This version also used a service
    worker to cache the non-lite assets in the background.
  
  
    
  

Performance budgeting and monitoring #

  
    
      The team built a performance monitoring dashboard using
      Lighthouse
      and other tools to improve the quality of web pages:
    
    
      
        Measures network quality, infrastructure monitoring, frontend performance, and server
        performance.
      
      
        Uses a combination of web platform APIs (such as the
        
          Resource Timing API
         and the
        Server-Timing
        header), the 
          PageSpeed Insights (PSI) API, and
        
          Chrome User Experience Report data to monitor field and lab metrics.
      
      
        Analyzes images from Lighthouse to help identify image optimization opportunities.
      
      
        Enforces a bundle-size budget during continuous integration (CI). The CI run fails if the
        bundle size is over budget.
      
    
  
  
    
  


  
    Being an e-commerce business, user acquisition is at the heart of our success. We acknowledge
    the importance of the web and thus we are passionate about investing in all
    the tools and features that will give the best user experience to our users.
  
  Dendi Sunardi, Engineering Manager, Web Platform, Tokopedia

Check out the Scale on web case studies page for more success
stories from India and Southeast Asia. ]]></description>
<link>https://tsecurity.de/de/1725701/IT+Betriebssysteme/Web+Tipps/How+focusing+on+web+performance+improved+Tokopedia%27s+click-through+rate+by+35%25/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1725701/IT+Betriebssysteme/Web+Tipps/How+focusing+on+web+performance+improved+Tokopedia%27s+click-through+rate+by+35%25/</guid>
<pubDate>Tue, 13 Oct 2020 02:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Überwachungskamera Livestream am Raspberry Pi einrichten (mit USB Webcam)]]></title> 
<description><![CDATA[&Uuml;berwachungskamera Livestream mit einem Raspberry Pi? Nat&uuml;rlich! Mit wenigen Hilfsmitteln ist das ganz einfach m&ouml;glich und funktioniert super. &Uuml;berwachungskameras sind h&auml;ufig sehr teuer und manchmal [&hellip;]
The post &Uuml;berwachungskamera Livestream am Raspberry Pi einrichten (mit USB Webcam) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1709270/IT+Betriebssysteme/Web+Tipps/%C3%9Cberwachungskamera+Livestream+am+Raspberry+Pi+einrichten+%28mit+USB+Webcam%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1709270/IT+Betriebssysteme/Web+Tipps/%C3%9Cberwachungskamera+Livestream+am+Raspberry+Pi+einrichten+%28mit+USB+Webcam%29/</guid>
<pubDate>Tue, 08 Nov 2022 09:00:00 +0100</pubDate>
</item>
<item> 
<title><![CDATA[XvideoStudio Video Editor Apk – Latest App￼￼￼]]></title> 
<description><![CDATA[Xvideostudio.video Editor App io Download Apk is a video editing app that was released by Apple. Xvideostudio is the most recent version. In this article you will come to know&hellip;
The post XvideoStudio Video Editor Apk &ndash; Latest App￼￼￼ appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1700137/IT+Betriebssysteme/Web+Tipps/XvideoStudio+Video+Editor+Apk+%E2%80%93+Latest+App%EF%BF%BC%EF%BF%BC%EF%BF%BC/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1700137/IT+Betriebssysteme/Web+Tipps/XvideoStudio+Video+Editor+Apk+%E2%80%93+Latest+App%EF%BF%BC%EF%BF%BC%EF%BF%BC/</guid>
<pubDate>Fri, 18 Nov 2022 19:23:11 +0100</pubDate>
</item>
<item> 
<title><![CDATA[MANGAKAKALOT App Free Download – Latest Apk]]></title> 
<description><![CDATA[To watch manga online, install &ldquo;Mangakakalot Apk&rdquo; for Android phones and tablets. Manga is a kind of Japanese graphic novel (fiction) that includes various topics and styles. All Free Manga&hellip;
The post MANGAKAKALOT App Free Download &ndash; Latest Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1696986/IT+Betriebssysteme/Web+Tipps/MANGAKAKALOT+App+Free+Download+%E2%80%93+Latest+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1696986/IT+Betriebssysteme/Web+Tipps/MANGAKAKALOT+App+Free+Download+%E2%80%93+Latest+Apk/</guid>
<pubDate>Wed, 16 Nov 2022 13:20:39 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Yowhatsapp App Download – Latest Whatsapp Application [2023]]]></title> 
<description><![CDATA[YoWhatsApp Apk v9.30 For Android was created by Yousef. However, he stopped working on it after a while. Yousef gave Fouad Mokdad (creator of FMWhatsApp) permission to take over the&hellip;
The post Yowhatsapp App Download &ndash; Latest Whatsapp Application [2023] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1694863/IT+Betriebssysteme/Web+Tipps/Yowhatsapp+App+Download+%E2%80%93+Latest+Whatsapp+Application+%5B2023%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1694863/IT+Betriebssysteme/Web+Tipps/Yowhatsapp+App+Download+%E2%80%93+Latest+Whatsapp+Application+%5B2023%5D/</guid>
<pubDate>Mon, 14 Nov 2022 18:46:39 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Need of Security in Online Gaming [2023]]]></title> 
<description><![CDATA[Online gaming has grown tremendously in the recent past. With this heightened interest has come greater security challenges for operators and gamers alike. A lot can go wrong, from a&hellip;
The post Need of Security&nbsp;in&nbsp;Online&nbsp;Gaming [2023] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1679589/IT+Betriebssysteme/Web+Tipps/Need+of+Security%C2%A0in%C2%A0Online%C2%A0Gaming+%5B2023%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1679589/IT+Betriebssysteme/Web+Tipps/Need+of+Security%C2%A0in%C2%A0Online%C2%A0Gaming+%5B2023%5D/</guid>
<pubDate>Sun, 30 Oct 2022 11:52:16 +0100</pubDate>
</item>
<item> 
<title><![CDATA[VPN mit DynDNS an der FRITZ!Box einrichten]]></title> 
<description><![CDATA[VPNs sind beliebter denn je. Aber wusstest du, dass du auch deine FRITZX!Box als VPN-Server verwenden kannst? Im Zusammenspiel mit DynDNS eine unschlagbare Kombination. In [&hellip;]
The post VPN mit DynDNS an der FRITZ!Box einrichten appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1644928/IT+Betriebssysteme/Web+Tipps/VPN+mit+DynDNS+an+der+FRITZ%21Box+einrichten/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1644928/IT+Betriebssysteme/Web+Tipps/VPN+mit+DynDNS+an+der+FRITZ%21Box+einrichten/</guid>
<pubDate>Tue, 27 Sep 2022 09:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Live Charts & Diagramme mit Google Chart API erstellen (HTML + JavaScript)]]></title> 
<description><![CDATA[Mit Live Charts und Diagrammen kannst du dein Dashboard oder Infoboard aufwerten und die neusten Daten in Echtzeit abrufen und darstellen. Eine nette Funktion, um [&hellip;]
The post Live Charts &amp; Diagramme mit Google Chart API erstellen (HTML + JavaScript) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1639542/IT+Betriebssysteme/Web+Tipps/Live+Charts+%26amp%3B+Diagramme+mit+Google+Chart+API+erstellen+%28HTML+%2B+JavaScript%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1639542/IT+Betriebssysteme/Web+Tipps/Live+Charts+%26amp%3B+Diagramme+mit+Google+Chart+API+erstellen+%28HTML+%2B+JavaScript%29/</guid>
<pubDate>Mon, 19 Sep 2022 14:31:29 +0200</pubDate>
</item>
<item> 
<title><![CDATA[FM Whatsapp Apk – Download Latest Chatting App]]></title> 
<description><![CDATA[WhatsApp is among the most popular social networking tools of all ages, with lots of current users and those who downloads all over the earth. As a such scenario, it&hellip;
The post FM Whatsapp Apk &ndash; Download Latest Chatting App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1636963/IT+Betriebssysteme/Web+Tipps/FM+Whatsapp+Apk+%E2%80%93+Download+Latest+Chatting+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1636963/IT+Betriebssysteme/Web+Tipps/FM+Whatsapp+Apk+%E2%80%93+Download+Latest+Chatting+App/</guid>
<pubDate>Sun, 18 Sep 2022 18:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Star an Email to Mark Important Emails]]></title> 
<description><![CDATA[How to star an email is a common query among email users. Though we receive numerous emails every day, not all of them are important. By starring emails, you can categorize the crucial ones separately and access them quickly. Read on to know how to star an email. In this blog, we&rsquo;ll focus on top [&hellip;]
The post How to Star an Email to Mark Important Emails appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635130/IT+Betriebssysteme/Web+Tipps/How+to+Star+an+Email+to+Mark+Important+Emails/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635130/IT+Betriebssysteme/Web+Tipps/How+to+Star+an+Email+to+Mark+Important+Emails/</guid>
<pubDate>Wed, 22 Jun 2022 11:00:41 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Upload to Google Drive – Learn Top 4 Methods]]></title> 
<description><![CDATA[Google Drive is a cloud-based storage service provider. Users can store and access their files on this platform for free. You can use it as a part of the Google Workspace plan as well. It instantly syncs all the stored files including documents, photos, and videos across all the connected devices (mobile, tablets, PC) of [&hellip;]
The post How to Upload to Google Drive &ndash; Learn Top 4 Methods appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635131/IT+Betriebssysteme/Web+Tipps/How+to+Upload+to+Google+Drive+%E2%80%93+Learn+Top+4+Methods/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635131/IT+Betriebssysteme/Web+Tipps/How+to+Upload+to+Google+Drive+%E2%80%93+Learn+Top+4+Methods/</guid>
<pubDate>Mon, 13 Jun 2022 11:00:41 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Save Google Docs as PDF: Top 2 Reliable Methods]]></title> 
<description><![CDATA[The PDF file is a widely used document file format that enjoys popularity all over the world. It can be opened on any common platform and easily compressed to make the file size smaller. Moreover, if someone tries to edit a PDF file, there&rsquo;ll be a digital footprint. While these are the reasons people want [&hellip;]
The post How to Save Google Docs as PDF: Top 2 Reliable Methods appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635132/IT+Betriebssysteme/Web+Tipps/How+to+Save+Google+Docs+as+PDF%3A+Top+2+Reliable+Methods/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635132/IT+Betriebssysteme/Web+Tipps/How+to+Save+Google+Docs+as+PDF%3A+Top+2+Reliable+Methods/</guid>
<pubDate>Sun, 12 Jun 2022 11:00:50 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Delete a Gmail Account: A Step-by-Step Guide]]></title> 
<description><![CDATA[Privacy has become a major concern for every who has an online presence. It&rsquo;s not a secret anymore that various tech giants are making money out of your personal data and online habits. Gmail is no different as it reads all the emails you send and receive. For this reason, you might want to discontinue [&hellip;]
The post How to Delete a Gmail Account: A Step-by-Step Guide appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635133/IT+Betriebssysteme/Web+Tipps/How+to+Delete+a+Gmail+Account%3A+A+Step-by-Step+Guide/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635133/IT+Betriebssysteme/Web+Tipps/How+to+Delete+a+Gmail+Account%3A+A+Step-by-Step+Guide/</guid>
<pubDate>Thu, 09 Jun 2022 11:00:44 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to See Word Count While Typing on Google Docs]]></title> 
<description><![CDATA[Suppose you have a knack for trying out different writing programs like me, one feature you&rsquo;ll find yourself looking towards often would be a word counter. This same feature is why I&rsquo;ve always stuck with Microsoft Word, with the program displaying the number of characters and words I&rsquo;ve input on the screen as I type. [&hellip;]
The post How to See Word Count While Typing on Google Docs appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635134/IT+Betriebssysteme/Web+Tipps/How+to+See+Word+Count+While+Typing+on+Google+Docs/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635134/IT+Betriebssysteme/Web+Tipps/How+to+See+Word+Count+While+Typing+on+Google+Docs/</guid>
<pubDate>Wed, 08 Jun 2022 13:03:58 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Block Emails on Gmail to Get a Clutter-Free Inbox]]></title> 
<description><![CDATA[Email is a powerful communication tool that lets you interact with others for professional and personal reasons. Gmail is an email client that enjoys immense popularity all over the world. Almost everyone using the email service has a Gmail account. Now, the problem arises when you keep getting unwanted emails, and it becomes difficult to [&hellip;]
The post How to Block Emails on Gmail to Get a Clutter-Free Inbox appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635135/IT+Betriebssysteme/Web+Tipps/How+to+Block+Emails+on+Gmail+to+Get+a+Clutter-Free+Inbox/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635135/IT+Betriebssysteme/Web+Tipps/How+to+Block+Emails+on+Gmail+to+Get+a+Clutter-Free+Inbox/</guid>
<pubDate>Tue, 07 Jun 2022 11:00:48 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How Does DuckDuckGo Make Money: Learn the Truth]]></title> 
<description><![CDATA[DuckDuckGo (DDG) is a search engine that focuses on the privacy of the end-users. It&rsquo;s known for not selling your personal data to third parties. Nevertheless, it garnered $100 million as revenue in 2021. So the question arises, how does DuckDuckGo make money. If you&rsquo;ve got the same question in mind, continue reading this blog. [&hellip;]
The post How Does DuckDuckGo Make Money: Learn the Truth appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635136/IT+Betriebssysteme/Web+Tipps/How+Does+DuckDuckGo+Make+Money%3A+Learn+the+Truth/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635136/IT+Betriebssysteme/Web+Tipps/How+Does+DuckDuckGo+Make+Money%3A+Learn+the+Truth/</guid>
<pubDate>Mon, 06 Jun 2022 11:00:07 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Delete Cash App Account From Android, iOS, and PC]]></title> 
<description><![CDATA[Cash App makes your life easier by digitizing your finances like sending, spending, banking, and investing online from Android, iOS, and computer. However, since it&rsquo;s a monetary transaction app, it&rsquo;s wise to delete the account if you don&rsquo;t want to use it anymore. Learn below how to delete Cash App account and keep your data [&hellip;]
The post How to Delete Cash App Account From Android, iOS, and PC appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635137/IT+Betriebssysteme/Web+Tipps/How+to+Delete+Cash+App+Account+From+Android%2C+iOS%2C+and+PC/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635137/IT+Betriebssysteme/Web+Tipps/How+to+Delete+Cash+App+Account+From+Android%2C+iOS%2C+and+PC/</guid>
<pubDate>Sat, 04 Jun 2022 11:00:52 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Wrap Texts on Google Sheets: 2 Easy-to-follow Methods]]></title> 
<description><![CDATA[If you&rsquo;re newly coming onto Google Docs, many things on the web-based program will come off as different. As such, you might need help navigating through the UI and using some of its features, especially if you&rsquo;re coming from its evergreen Microsoft alternative, Excel. Thankfully, Google Sheets is just as intuitive as the competitions out [&hellip;]
The post How to Wrap Texts on Google Sheets: 2 Easy-to-follow Methods appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635138/IT+Betriebssysteme/Web+Tipps/How+to+Wrap+Texts+on+Google+Sheets%3A+2+Easy-to-follow+Methods/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635138/IT+Betriebssysteme/Web+Tipps/How+to+Wrap+Texts+on+Google+Sheets%3A+2+Easy-to-follow+Methods/</guid>
<pubDate>Thu, 02 Jun 2022 14:00:31 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Alphabetize in Google Sheets: Know the 4 Best Methods]]></title> 
<description><![CDATA[Google Sheets offer some excellent tools for working with data and discovering actionable insight. One such tool is organizing column data alphabetically. But, you may be wondering how to alphabetize in Google Sheets? Your search ends here! Continue reading to learn the best methods of alphabetizing data ranges or the entire worksheet. How to Alphabetize [&hellip;]
The post How to Alphabetize in Google Sheets: Know the 4 Best Methods appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635139/IT+Betriebssysteme/Web+Tipps/How+to+Alphabetize+in+Google+Sheets%3A+Know+the+4+Best+Methods/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635139/IT+Betriebssysteme/Web+Tipps/How+to+Alphabetize+in+Google+Sheets%3A+Know+the+4+Best+Methods/</guid>
<pubDate>Thu, 02 Jun 2022 11:00:29 +0200</pubDate>
</item>
<item> 
<title><![CDATA[How to Add Drop Down List in Google Sheets: 2 Quick Methods]]></title> 
<description><![CDATA[Drop down lists are helpful when you want error-free and quick data entry. Such a spreadsheet data validation system also gives you the power to keep the worksheet free from junk and invalid data. That&rsquo;s why hundreds of thousands of Google Sheets users want to learn how to add drop down list in Google Sheets. [&hellip;]
The post How to Add Drop Down List in Google Sheets: 2 Quick Methods appeared first on AddictiveTips. ]]></description>
<link>https://tsecurity.de/de/1635140/IT+Betriebssysteme/Web+Tipps/How+to+Add+Drop+Down+List+in+Google+Sheets%3A+2+Quick+Methods/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1635140/IT+Betriebssysteme/Web+Tipps/How+to+Add+Drop+Down+List+in+Google+Sheets%3A+2+Quick+Methods/</guid>
<pubDate>Wed, 01 Jun 2022 11:00:12 +0200</pubDate>
</item>
<item> 
<title><![CDATA[TikTok 18+ Free Download – Latest Short Video App]]></title> 
<description><![CDATA[Social media has become increasingly popular for its speed and ability to connect with others. One can watch live streaming music, sports, and other content without going through multiple platforms.&hellip;
The post TikTok 18+ Free Download &ndash; Latest Short Video App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1634462/IT+Betriebssysteme/Web+Tipps/TikTok+18%2B+Free+Download+%E2%80%93+Latest+Short+Video+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1634462/IT+Betriebssysteme/Web+Tipps/TikTok+18%2B+Free+Download+%E2%80%93+Latest+Short+Video+App/</guid>
<pubDate>Sat, 17 Sep 2022 18:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[TikTok 18+ App Download – Latest Apk [UPDATE]]]></title> 
<description><![CDATA[TikTok is a mobile social media platform where users can post various short video clips. Although the app is understood for its adultery moves, all of these films have been&hellip;
The post TikTok 18+ App Download &ndash; Latest Apk [UPDATE] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1633681/IT+Betriebssysteme/Web+Tipps/TikTok+18%2B+App+Download+%E2%80%93+Latest+Apk+%5BUPDATE%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1633681/IT+Betriebssysteme/Web+Tipps/TikTok+18%2B+App+Download+%E2%80%93+Latest+Apk+%5BUPDATE%5D/</guid>
<pubDate>Fri, 16 Sep 2022 18:35:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Unlinked Apk Download – Firestick Latest App]]></title> 
<description><![CDATA[Unlinked Apk is a feature-rich, safe, and secure third-party app. It offers clever TV customers a smooth entry to all reputable and third-celebration apps. In this newsletter, you&rsquo;ll examine the&hellip;
The post Unlinked Apk Download &ndash; Firestick Latest App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1633682/IT+Betriebssysteme/Web+Tipps/Unlinked+Apk+Download+%E2%80%93+Firestick+Latest+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1633682/IT+Betriebssysteme/Web+Tipps/Unlinked+Apk+Download+%E2%80%93+Firestick+Latest+App/</guid>
<pubDate>Fri, 16 Sep 2022 18:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Plesk CI/CD: Automatisches Bereitstellen einer Node.js App (+ automatischer Frontend Build)]]></title> 
<description><![CDATA[Mit diesem Plesk CI/CD Workflow musst kannst du komplett automatisiert deine Node.js App inkl. Frontend auf deinem Plesk Server hosten. Mit automatischem Build deiner Frontend [&hellip;]
The post Plesk CI/CD: Automatisches Bereitstellen einer Node.js App (+ automatischer Frontend Build) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1632939/IT+Betriebssysteme/Web+Tipps/Plesk+CI%2FCD%3A+Automatisches+Bereitstellen+einer+Node.js+App+%28%2B+automatischer+Frontend+Build%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1632939/IT+Betriebssysteme/Web+Tipps/Plesk+CI%2FCD%3A+Automatisches+Bereitstellen+einer+Node.js+App+%28%2B+automatischer+Frontend+Build%29/</guid>
<pubDate>Tue, 16 Aug 2022 08:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Yacine TV Apk – Download Latest APP]]></title> 
<description><![CDATA[It is convenient to watch our favorite movies, TV shows, and other media these days. Thanks to apps available, we can watch TV on our phones whenever and wherever we&hellip;
The post Yacine TV Apk &ndash; Download Latest APP appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1632461/IT+Betriebssysteme/Web+Tipps/Yacine+TV+Apk+%E2%80%93+Download+Latest+APP/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1632461/IT+Betriebssysteme/Web+Tipps/Yacine+TV+Apk+%E2%80%93+Download+Latest+APP/</guid>
<pubDate>Thu, 15 Sep 2022 18:35:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[  Minecraft Java Edition: Free Download Apk￼]]></title> 
<description><![CDATA[Arcade games are a joy to play and connect with. Arcade games are popular all around the world due to the sheer tasks and adventure they provide. We can find&hellip;
The post &nbsp;&nbsp;Minecraft Java Edition: Free Download Apk￼ appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1632462/IT+Betriebssysteme/Web+Tipps/%C2%A0%C2%A0Minecraft+Java+Edition%3A+Free+Download+Apk%EF%BF%BC/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1632462/IT+Betriebssysteme/Web+Tipps/%C2%A0%C2%A0Minecraft+Java+Edition%3A+Free+Download+Apk%EF%BF%BC/</guid>
<pubDate>Thu, 15 Sep 2022 18:30:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox Studio Free – Download Roblox Studio APK]]></title> 
<description><![CDATA[Roblox Studio is a free programme that allows users to make their own Roblox games and content. Users can create game worlds, levels, and unique servers in the intuitive Creation&hellip;
The post Roblox Studio Free &ndash; Download Roblox Studio APK appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1631216/IT+Betriebssysteme/Web+Tipps/Roblox+Studio+Free+%E2%80%93+Download+Roblox+Studio+APK/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1631216/IT+Betriebssysteme/Web+Tipps/Roblox+Studio+Free+%E2%80%93+Download+Roblox+Studio+APK/</guid>
<pubDate>Wed, 14 Sep 2022 18:20:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox Studio App  – Download Latest Studio APK]]></title> 
<description><![CDATA[Roblox Studio is an important system for making Roblox games. This software works on both Windows and Mac computers. It&rsquo;s a free app that helps you create games and other&hellip;
The post Roblox Studio App  &ndash; Download Latest Studio APK appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1631215/IT+Betriebssysteme/Web+Tipps/Roblox+Studio+App++%E2%80%93+Download+Latest+Studio+APK/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1631215/IT+Betriebssysteme/Web+Tipps/Roblox+Studio+App++%E2%80%93+Download+Latest+Studio+APK/</guid>
<pubDate>Wed, 14 Sep 2022 18:25:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Top 7 Mobile Test Automation Tools [2023]]]></title> 
<description><![CDATA[It is a known fact that mobile has taken over a large part of the market as well as in people&rsquo;s day-to-day experiences. To get easy access to things people&hellip;
The post Top 7 Mobile Test Automation Tools [2023] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1620686/IT+Betriebssysteme/Web+Tipps/Top+7+Mobile+Test+Automation+Tools+%5B2023%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1620686/IT+Betriebssysteme/Web+Tipps/Top+7+Mobile+Test+Automation+Tools+%5B2023%5D/</guid>
<pubDate>Sun, 04 Sep 2022 18:56:41 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Mangakakalot APK Download – Latest Apk For Android]]></title> 
<description><![CDATA[Would you like to read novels for unlimited access? If that&rsquo;s the case, you&rsquo;ve come to the correct location because we&rsquo;ll be talking about Mangakakalot APK today, which has a&hellip;
The post Mangakakalot APK Download &ndash; Latest Apk For Android appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1607686/IT+Betriebssysteme/Web+Tipps/Mangakakalot+APK+Download+%E2%80%93+Latest+Apk+For+Android/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1607686/IT+Betriebssysteme/Web+Tipps/Mangakakalot+APK+Download+%E2%80%93+Latest+Apk+For+Android/</guid>
<pubDate>Mon, 22 Aug 2022 09:47:19 +0200</pubDate>
</item>
<item> 
<title><![CDATA[MP3 App Download – Latest Apk Free For Android]]></title> 
<description><![CDATA[The effect of music on healing the psyche is unquestionable. Presently, MP3 music App can be obtained automatically to your device thanks to WI-FI, but selecting the optimal MP3 installer&hellip;
The post MP3 App Download &ndash; Latest Apk Free For Android appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1607687/IT+Betriebssysteme/Web+Tipps/MP3+App+Download+%E2%80%93+Latest+Apk+Free+For+Android/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1607687/IT+Betriebssysteme/Web+Tipps/MP3+App+Download+%E2%80%93+Latest+Apk+Free+For+Android/</guid>
<pubDate>Mon, 22 Aug 2022 09:39:09 +0200</pubDate>
</item>
<item> 
<title><![CDATA[MP3 Juice APK – Download Latest Apk for ANDROID]]></title> 
<description><![CDATA[MP3 Juices is a popular MP3 search engine and converter available for free. Like squeezing juice from oranges, the service allows you to type in the music you want and&hellip;
The post MP3 Juice APK &ndash; Download Latest Apk for ANDROID appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1607645/IT+Betriebssysteme/Web+Tipps/MP3+Juice+APK+%E2%80%93+Download+Latest+Apk+for+ANDROID/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1607645/IT+Betriebssysteme/Web+Tipps/MP3+Juice+APK+%E2%80%93+Download+Latest+Apk+for+ANDROID/</guid>
<pubDate>Mon, 22 Aug 2022 08:13:54 +0200</pubDate>
</item>
<item> 
<title><![CDATA[MP3 Juice CC – Download Latest Apk]]></title> 
<description><![CDATA[MP3Juices is a simple function that makes it easy to find YouTube and other web pages for MP3 music songs. You can search MP3 music files on this site and&hellip;
The post MP3 Juice CC &ndash; Download Latest Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1607301/IT+Betriebssysteme/Web+Tipps/MP3+Juice+CC+%E2%80%93+Download+Latest+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1607301/IT+Betriebssysteme/Web+Tipps/MP3+Juice+CC+%E2%80%93+Download+Latest+Apk/</guid>
<pubDate>Sun, 21 Aug 2022 11:48:21 +0200</pubDate>
</item>
<item> 
<title><![CDATA[ Instagram Video Downloader Apk – Download Latest APK]]></title> 
<description><![CDATA[If you want to save videos from Instagram so you can look at them anytime, even when you don&rsquo;t have access to the Internet. Instagram Video Downloader is terrific software&hellip;
The post &nbsp;Instagram Video Downloader Apk &ndash; Download Latest APK appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1607302/IT+Betriebssysteme/Web+Tipps/%C2%A0Instagram+Video+Downloader+Apk+%E2%80%93+Download+Latest+APK/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1607302/IT+Betriebssysteme/Web+Tipps/%C2%A0Instagram+Video+Downloader+Apk+%E2%80%93+Download+Latest+APK/</guid>
<pubDate>Sun, 21 Aug 2022 11:40:25 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Plesk CI/CD: Automatisches Bereitstellen einer Node.js App (+ automatischer Frontend Build)]]></title> 
<description><![CDATA[Mit diesem Plesk CI/CD Workflow musst kannst du komplett automatisiert deine Node.js App inkl. Frontend auf deinem Plesk Server hosten. Mit automatischem Build deiner Frontend [&hellip;]
The post Plesk CI/CD: Automatisches Bereitstellen einer Node.js App (+ automatischer Frontend Build) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1603553/IT+Betriebssysteme/Web+Tipps/Plesk+CI%2FCD%3A+Automatisches+Bereitstellen+einer+Node.js+App+%28%2B+automatischer+Frontend+Build%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1603553/IT+Betriebssysteme/Web+Tipps/Plesk+CI%2FCD%3A+Automatisches+Bereitstellen+einer+Node.js+App+%28%2B+automatischer+Frontend+Build%29/</guid>
<pubDate>Tue, 16 Aug 2022 08:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[My Singing Monsters – Download Latest Android APK + OBB [2022]]]></title> 
<description><![CDATA[Installing My Singing Monsters Mod Apk will meet your expectations as you&rsquo;ll be willing to view a wide choice islands occupied by dragons. If you are fond of playing mobile&hellip;
The post My Singing Monsters &ndash; Download Latest Android APK + OBB [2022] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1580513/IT+Betriebssysteme/Web+Tipps/My+Singing+Monsters+%E2%80%93+Download+Latest+Android+APK+%2B+OBB+%5B2022%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1580513/IT+Betriebssysteme/Web+Tipps/My+Singing+Monsters+%E2%80%93+Download+Latest+Android+APK+%2B+OBB+%5B2022%5D/</guid>
<pubDate>Sat, 23 Jul 2022 18:39:49 +0200</pubDate>
</item>
<item> 
<title><![CDATA[My Singing Monsters Apk – Download Latest App]]></title> 
<description><![CDATA[Big Blue Bubble Inc. created the music game My Singing Monsters Apk. The Blue Stacks app player is the perfect PC platform (emulator) for playing this Adventure game on your&hellip;
The post My Singing Monsters Apk &ndash; Download Latest App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1580490/IT+Betriebssysteme/Web+Tipps/My+Singing+Monsters+Apk+%E2%80%93+Download+Latest+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1580490/IT+Betriebssysteme/Web+Tipps/My+Singing+Monsters+Apk+%E2%80%93+Download+Latest+App/</guid>
<pubDate>Sat, 23 Jul 2022 17:55:10 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Loklok Movie App – Download Latest Streaming Apk]]></title> 
<description><![CDATA[Loklok Movie App has chosen several well-known movies and television shows worldwide for your enjoyment. At any time and any place, you can watch the actual contents in Chinese, Korea,&hellip;
The post Loklok Movie App &ndash; Download Latest Streaming Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1569802/IT+Betriebssysteme/Web+Tipps/Loklok+Movie+App+%E2%80%93+Download+Latest+Streaming+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1569802/IT+Betriebssysteme/Web+Tipps/Loklok+Movie+App+%E2%80%93+Download+Latest+Streaming+Apk/</guid>
<pubDate>Wed, 13 Jul 2022 19:14:38 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Manga Owl Apk – Download Latest Manga App]]></title> 
<description><![CDATA[After novels, manga stories are the second most popular among readers. If you enjoy reading colorful visuals and manga stories, this book is for you. Then we recommend that you&hellip;
The post Manga Owl Apk &ndash; Download Latest Manga App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1569799/IT+Betriebssysteme/Web+Tipps/Manga+Owl+Apk+%E2%80%93+Download+Latest+Manga+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1569799/IT+Betriebssysteme/Web+Tipps/Manga+Owl+Apk+%E2%80%93+Download+Latest+Manga+App/</guid>
<pubDate>Wed, 13 Jul 2022 19:11:39 +0200</pubDate>
</item>
<item> 
<title><![CDATA[My Singing Monsters Free Download – Get Latest APK Here]]></title> 
<description><![CDATA[My Singing Monsters is a very vivid and popular type of video game available for free. One can ensure its popularity by knowing it has over 10 M downloads on&hellip;
The post My Singing Monsters Free Download &ndash; Get Latest APK Here appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1565204/IT+Betriebssysteme/Web+Tipps/My+Singing+Monsters+Free+Download+%E2%80%93+Get+Latest+APK+Here/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1565204/IT+Betriebssysteme/Web+Tipps/My+Singing+Monsters+Free+Download+%E2%80%93+Get+Latest+APK+Here/</guid>
<pubDate>Sat, 09 Jul 2022 17:07:33 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Macro Free Fire – Download Latest APK]]></title> 
<description><![CDATA[Macro Free Fire Macro Free Fire is the second most common android game in terms of downloads and playtime. Some faults occur as technology advances, but they never disrupt the&hellip;
The post Macro Free Fire &ndash; Download Latest APK appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1565203/IT+Betriebssysteme/Web+Tipps/Macro+Free+Fire+%E2%80%93+Download+Latest+APK/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1565203/IT+Betriebssysteme/Web+Tipps/Macro+Free+Fire+%E2%80%93+Download+Latest+APK/</guid>
<pubDate>Sat, 09 Jul 2022 17:11:14 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Vue.js Apps ohne Node, Webpack, npm, Build Tools oder CLI erstellen]]></title> 
<description><![CDATA[Ich liebe Vue.js und f&uuml;r gr&ouml;&szlig;ere Anwendungen ist die Entwicklung mit Node.js gut machbar. Wenn du allerdings eine &bdquo;normale&ldquo; Website erstellen m&ouml;chtest ist das oft [&hellip;]
The post Vue.js Apps ohne Node, Webpack, npm, Build Tools oder CLI erstellen appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1565106/IT+Betriebssysteme/Web+Tipps/Vue.js+Apps+ohne+Node%2C+Webpack%2C+npm%2C+Build+Tools+oder+CLI+erstellen/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1565106/IT+Betriebssysteme/Web+Tipps/Vue.js+Apps+ohne+Node%2C+Webpack%2C+npm%2C+Build+Tools+oder+CLI+erstellen/</guid>
<pubDate>Mon, 04 Jul 2022 15:28:34 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Minecraft Java Edition Download – Latest Game [FREE]]]></title> 
<description><![CDATA[Minecraft Java Edition is a sandbox game. It allows you to create large structures and objects out of cubes. Its goal is to create in the daytime to survive at&hellip;
The post Minecraft Java Edition Download &ndash; Latest Game [FREE] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1563523/IT+Betriebssysteme/Web+Tipps/Minecraft+Java+Edition+Download+%E2%80%93+Latest+Game+%5BFREE%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1563523/IT+Betriebssysteme/Web+Tipps/Minecraft+Java+Edition+Download+%E2%80%93+Latest+Game+%5BFREE%5D/</guid>
<pubDate>Thu, 07 Jul 2022 17:45:46 +0200</pubDate>
</item>
<item> 
<title><![CDATA[FREE FIRE HACK DOWNLOAD – Latest Game Mod Apk]]></title> 
<description><![CDATA[Garena Free Fire is a mobile adventure game. Free Fire is a fantastic royal battle game. This game is famous by PUBG Mobile. In this article you will come to&hellip;
The post FREE FIRE HACK DOWNLOAD &ndash; Latest Game Mod Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1563513/IT+Betriebssysteme/Web+Tipps/FREE+FIRE+HACK+DOWNLOAD+%E2%80%93+Latest+Game+Mod+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1563513/IT+Betriebssysteme/Web+Tipps/FREE+FIRE+HACK+DOWNLOAD+%E2%80%93+Latest+Game+Mod+Apk/</guid>
<pubDate>Thu, 07 Jul 2022 17:43:03 +0200</pubDate>
</item>
<item> 
<title><![CDATA[TikTok 18+ Apk Free Download – Latest Short Video App]]></title> 
<description><![CDATA[Various short videos can be shared using the mobile media app TikTok. The developer has already removed these movies, even though the program is well-known for its adulterous activities. They&hellip;
The post TikTok 18+ Apk Free Download &ndash; Latest Short Video App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1562355/IT+Betriebssysteme/Web+Tipps/TikTok+18%2B+Apk+Free+Download+%E2%80%93+Latest+Short+Video+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1562355/IT+Betriebssysteme/Web+Tipps/TikTok+18%2B+Apk+Free+Download+%E2%80%93+Latest+Short+Video+App/</guid>
<pubDate>Wed, 06 Jul 2022 17:35:01 +0200</pubDate>
</item>
<item> 
<title><![CDATA[TIKTOK 18+ APP DOWNLOAD – Latest Short Video Apk]]></title> 
<description><![CDATA[TikTok 18+ Apk is a mobile social media platform where users can post various short video clips. Although the app is for its adultery moves. All of these films is&hellip;
The post TIKTOK 18+ APP DOWNLOAD &ndash; Latest Short Video Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1562356/IT+Betriebssysteme/Web+Tipps/TIKTOK+18%2B+APP+DOWNLOAD+%E2%80%93+Latest+Short+Video+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1562356/IT+Betriebssysteme/Web+Tipps/TIKTOK+18%2B+APP+DOWNLOAD+%E2%80%93+Latest+Short+Video+Apk/</guid>
<pubDate>Wed, 06 Jul 2022 17:32:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Movie Box Pro APK – Download Latest Movie App]]></title> 
<description><![CDATA[This post contains the showcase of Movie Box PRO apk for users to use this great tool and to highlight its features. Most people these days are too busy looking&hellip;
The post Movie Box Pro APK &ndash; Download Latest Movie App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1561466/IT+Betriebssysteme/Web+Tipps/Movie+Box+Pro+APK+%E2%80%93+Download+Latest+Movie+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1561466/IT+Betriebssysteme/Web+Tipps/Movie+Box+Pro+APK+%E2%80%93+Download+Latest+Movie+App/</guid>
<pubDate>Tue, 05 Jul 2022 20:22:38 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Pubg Hack Download – Download Latest Android Game]]></title> 
<description><![CDATA[Nowadays, nobody is unaware of the PUBG Hack game. The most popular game in the world is PUBG MOBILE MOD APK 2022, which also includes PUBG Mobile Hack&nbsp; (Unlimited Uc,&hellip;
The post Pubg Hack Download &ndash; Download Latest Android Game appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1561467/IT+Betriebssysteme/Web+Tipps/Pubg+Hack+Download+%E2%80%93+Download+Latest+Android+Game/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1561467/IT+Betriebssysteme/Web+Tipps/Pubg+Hack+Download+%E2%80%93+Download+Latest+Android+Game/</guid>
<pubDate>Tue, 05 Jul 2022 20:20:17 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Pubg Mod Menu Apk – Download Latest Game]]></title> 
<description><![CDATA[When today&rsquo;s youth sit down to play Pubg mod menu apk, they don&rsquo;t see any other work if we talk dementedly about it. Youths become disoriented in this virtual environment.&hellip;
The post Pubg Mod Menu Apk &ndash; Download Latest Game appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1560473/IT+Betriebssysteme/Web+Tipps/Pubg+Mod+Menu+Apk+%E2%80%93+Download+Latest+Game/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1560473/IT+Betriebssysteme/Web+Tipps/Pubg+Mod+Menu+Apk+%E2%80%93+Download+Latest+Game/</guid>
<pubDate>Mon, 04 Jul 2022 19:05:47 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox Mod – Download Latest Hacked Game]]></title> 
<description><![CDATA[A popular multiplayer sandbox game is called Roblox Mod. You can go to other places, construct your site, and watch as people come and go from it&mdash;battleground, role-playing game location,&hellip;
The post Roblox Mod &ndash; Download Latest Hacked Game appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1560346/IT+Betriebssysteme/Web+Tipps/Roblox+Mod+%E2%80%93+Download+Latest+Hacked+Game/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1560346/IT+Betriebssysteme/Web+Tipps/Roblox+Mod+%E2%80%93+Download+Latest+Hacked+Game/</guid>
<pubDate>Mon, 04 Jul 2022 17:14:10 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox Hack Apk – Download Latest Game FREE]]></title> 
<description><![CDATA[Are you looking to find the very next amazing mobile phone game? Do you dislike wasting time switching between games with different mechanics and setups? However, Roblox Hack Apk has&hellip;
The post Roblox Hack Apk &ndash; Download Latest Game FREE appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1559575/IT+Betriebssysteme/Web+Tipps/Roblox+Hack+Apk+%E2%80%93+Download+Latest+Game+FREE/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1559575/IT+Betriebssysteme/Web+Tipps/Roblox+Hack+Apk+%E2%80%93+Download+Latest+Game+FREE/</guid>
<pubDate>Sun, 03 Jul 2022 17:40:43 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox Mod APK – Download Latest Mod Apk]]></title> 
<description><![CDATA[No matter if you prefer playing racing or war royale games, ROBLOX mod apk is a great platform for both! Since its debut in 2006, ROBLOX has been one of&hellip;
The post Roblox Mod APK &ndash; Download Latest Mod Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1559576/IT+Betriebssysteme/Web+Tipps/Roblox+Mod+APK+%E2%80%93+Download+Latest+Mod+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1559576/IT+Betriebssysteme/Web+Tipps/Roblox+Mod+APK+%E2%80%93+Download+Latest+Mod+Apk/</guid>
<pubDate>Sun, 03 Jul 2022 17:34:31 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Pokemon Go Mod APK – Download Latest Apk]]></title> 
<description><![CDATA[The Pokemon GO MOD APK, which one can install from the link below. You can use it quickly and can avail free an unreal GPS. The solitary genre of adventure&hellip;
The post Pokemon Go Mod APK &ndash; Download Latest Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1559130/IT+Betriebssysteme/Web+Tipps/Pokemon+Go+Mod+APK+%E2%80%93+Download+Latest+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1559130/IT+Betriebssysteme/Web+Tipps/Pokemon+Go+Mod+APK+%E2%80%93+Download+Latest+Apk/</guid>
<pubDate>Sat, 02 Jul 2022 16:39:54 +0200</pubDate>
</item>
<item> 
<title><![CDATA[8 Ball Pool MOD APK Download – Latest GAME]]></title> 
<description><![CDATA[One of the most played pool games on an Android device is the 8 Ball Pool Mod Apk. You will compete online against live gamers in this game. Honor your&hellip;
The post 8 Ball Pool MOD APK Download &ndash; Latest GAME appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1559113/IT+Betriebssysteme/Web+Tipps/8+Ball+Pool+MOD+APK+Download+%E2%80%93+Latest+GAME/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1559113/IT+Betriebssysteme/Web+Tipps/8+Ball+Pool+MOD+APK+Download+%E2%80%93+Latest+GAME/</guid>
<pubDate>Sat, 02 Jul 2022 16:13:38 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Pokemon Go Hack Download – Latest Apk]]></title> 
<description><![CDATA[From the URL in this post, you may obtain the most recent Pokemon Go hack download. One of the most hit AR games right now is Pokemon Go. As you&hellip;
The post Pokemon Go Hack Download &ndash; Latest Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1559114/IT+Betriebssysteme/Web+Tipps/Pokemon+Go+Hack+Download+%E2%80%93+Latest+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1559114/IT+Betriebssysteme/Web+Tipps/Pokemon+Go+Hack+Download+%E2%80%93+Latest+Apk/</guid>
<pubDate>Sat, 02 Jul 2022 16:05:53 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Roblox Hack Download – Latest Mod Apk v2.470.419211  [Unlimited Robux] by Pro_misiek6776]]></title> 
<description><![CDATA[i need so much bobux like 1924124154123124
pls ]]></description>
<link>https://tsecurity.de/de/1558890/IT+Betriebssysteme/Web+Tipps/Comment+on+Roblox+Hack+Download+%E2%80%93+Latest+Mod+Apk+v2.470.419211++%5BUnlimited+Robux%5D+by+Pro_misiek6776/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558890/IT+Betriebssysteme/Web+Tipps/Comment+on+Roblox+Hack+Download+%E2%80%93+Latest+Mod+Apk+v2.470.419211++%5BUnlimited+Robux%5D+by+Pro_misiek6776/</guid>
<pubDate>Thu, 08 Apr 2021 14:08:09 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Roblox Hack Download [UPDATED] – Latest Mod Apk [2022] by abidrehman]]></title> 
<description><![CDATA[how do i download hack i have noob ipad computer som i can open and tnot working good its like you think you will break it and how to download a hack in roblox. ]]></description>
<link>https://tsecurity.de/de/1558891/IT+Betriebssysteme/Web+Tipps/Comment+on+Roblox+Hack+Download+%5BUPDATED%5D+%E2%80%93+Latest+Mod+Apk+%5B2022%5D+by+abidrehman/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558891/IT+Betriebssysteme/Web+Tipps/Comment+on+Roblox+Hack+Download+%5BUPDATED%5D+%E2%80%93+Latest+Mod+Apk+%5B2022%5D+by+abidrehman/</guid>
<pubDate>Mon, 08 Mar 2021 19:15:45 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Octosniff Free – Download+Review+Setup V3.0 PS/XBOX IP Sniffer by kack]]></title> 
<description><![CDATA[what is login and password once your on octosniff? ]]></description>
<link>https://tsecurity.de/de/1558892/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+kack/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558892/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+kack/</guid>
<pubDate>Mon, 22 Feb 2021 20:29:38 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Among Us Mod Menu Apk – Hack Game v2020.11.17 by Danislav]]></title> 
<description><![CDATA[Good ]]></description>
<link>https://tsecurity.de/de/1558893/IT+Betriebssysteme/Web+Tipps/Comment+on+Among+Us+Mod+Menu+Apk+%E2%80%93+Hack+Game+v2020.11.17+by+Danislav/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558893/IT+Betriebssysteme/Web+Tipps/Comment+on+Among+Us+Mod+Menu+Apk+%E2%80%93+Hack+Game+v2020.11.17+by+Danislav/</guid>
<pubDate>Fri, 19 Feb 2021 18:35:55 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Update MXQ Pro 4k Firmware in 2 minutes {Latest} by james]]></title> 
<description><![CDATA[ware is the firmware for themx2proe? i want to update it ]]></description>
<link>https://tsecurity.de/de/1558894/IT+Betriebssysteme/Web+Tipps/Comment+on+Update+MXQ+Pro+4k+Firmware+in+2+minutes+%7BLatest%7D+by+james/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558894/IT+Betriebssysteme/Web+Tipps/Comment+on+Update+MXQ+Pro+4k+Firmware+in+2+minutes+%7BLatest%7D+by+james/</guid>
<pubDate>Wed, 17 Feb 2021 06:32:24 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Octosniff Free – Download+Review+Setup V3.0 PS/XBOX IP Sniffer by The Suyash]]></title> 
<description><![CDATA[In reply to DUSTIN LYONJS.

Please search for other videos on youtube brother. ]]></description>
<link>https://tsecurity.de/de/1558895/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+The+Suyash/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558895/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+The+Suyash/</guid>
<pubDate>Mon, 15 Feb 2021 08:50:49 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Octosniff Free – Download+Review+Setup V3.0 PS/XBOX IP Sniffer by DUSTIN LYONJS]]></title> 
<description><![CDATA[In reply to The Suyash.

the video doesnt work ]]></description>
<link>https://tsecurity.de/de/1558896/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+DUSTIN+LYONJS/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558896/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+DUSTIN+LYONJS/</guid>
<pubDate>Mon, 15 Feb 2021 01:08:59 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Roblox Hack Download [UPDATED] – Latest Mod Apk [2022] by kirby]]></title> 
<description><![CDATA[thankkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk ]]></description>
<link>https://tsecurity.de/de/1558897/IT+Betriebssysteme/Web+Tipps/Comment+on+Roblox+Hack+Download+%5BUPDATED%5D+%E2%80%93+Latest+Mod+Apk+%5B2022%5D+by+kirby/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558897/IT+Betriebssysteme/Web+Tipps/Comment+on+Roblox+Hack+Download+%5BUPDATED%5D+%E2%80%93+Latest+Mod+Apk+%5B2022%5D+by+kirby/</guid>
<pubDate>Wed, 03 Feb 2021 00:42:15 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Octosniff Free – Download+Review+Setup V3.0 PS/XBOX IP Sniffer by The Suyash]]></title> 
<description><![CDATA[In reply to Carter.

password is written brother please check. ]]></description>
<link>https://tsecurity.de/de/1558898/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+The+Suyash/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558898/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+The+Suyash/</guid>
<pubDate>Fri, 29 Jan 2021 18:43:54 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Comment on Octosniff Free – Download+Review+Setup V3.0 PS/XBOX IP Sniffer by Carter]]></title> 
<description><![CDATA[there is a password but i dont see one stated what would it be? ]]></description>
<link>https://tsecurity.de/de/1558899/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+Carter/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1558899/IT+Betriebssysteme/Web+Tipps/Comment+on+Octosniff+Free+%E2%80%93+Download%2BReview%2BSetup+V3.0+PS%2FXBOX+IP+Sniffer+by+Carter/</guid>
<pubDate>Fri, 29 Jan 2021 05:58:17 +0100</pubDate>
</item>
<item> 
<title><![CDATA[LUCKY LAND CASINO DOWNLOAD – Latest Casino App]]></title> 
<description><![CDATA[The game is a social swing game from the United States that allows you to play the best online slots and casinos from the comfort of your own home. Luckyland&hellip;
The post LUCKY LAND CASINO DOWNLOAD &ndash; Latest Casino App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539591/IT+Betriebssysteme/Web+Tipps/LUCKY+LAND+CASINO+DOWNLOAD+%E2%80%93+Latest+Casino+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539591/IT+Betriebssysteme/Web+Tipps/LUCKY+LAND+CASINO+DOWNLOAD+%E2%80%93+Latest+Casino+App/</guid>
<pubDate>Mon, 13 Jun 2022 15:43:53 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Mega Personal Apk Download – Get Latest Apk Now]]></title> 
<description><![CDATA[Mega Personal is a new dating app that can assist you in finding your ideal partner. Mega Personal has it all, whether you&rsquo;re looking for a long-term relationship, marriage, or&hellip;
The post Mega Personal Apk Download &ndash; Get Latest Apk Now appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539592/IT+Betriebssysteme/Web+Tipps/Mega+Personal+Apk+Download+%E2%80%93+Get+Latest+Apk+Now/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539592/IT+Betriebssysteme/Web+Tipps/Mega+Personal+Apk+Download+%E2%80%93+Get+Latest+Apk+Now/</guid>
<pubDate>Mon, 13 Jun 2022 15:25:42 +0200</pubDate>
</item>
<item> 
<title><![CDATA[FREE FIRE HACK FREE DOWNLOAD – Latest Game]]></title> 
<description><![CDATA[Garena Free Fire is an action-adventure game for mobile devices. Free Fire is a fantastic royal battle game that was inspired by PUBG Mobile and gained a lot of traction&hellip;
The post FREE FIRE HACK FREE DOWNLOAD &ndash; Latest Game appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539593/IT+Betriebssysteme/Web+Tipps/FREE+FIRE+HACK+FREE+DOWNLOAD+%E2%80%93+Latest+Game/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539593/IT+Betriebssysteme/Web+Tipps/FREE+FIRE+HACK+FREE+DOWNLOAD+%E2%80%93+Latest+Game/</guid>
<pubDate>Mon, 13 Jun 2022 15:08:26 +0200</pubDate>
</item>
<item> 
<title><![CDATA[AMONG US MOD MENU APK – Download Latest Hack Game]]></title> 
<description><![CDATA[Are you looking for AMONG US MOD MENU APK? Yes you are in the right place. In this article you will come to know about the modified version of AMONG&hellip;
The post AMONG US MOD MENU APK &ndash; Download Latest Hack Game appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539594/IT+Betriebssysteme/Web+Tipps/AMONG+US+MOD+MENU+APK+%E2%80%93+Download+Latest+Hack+Game/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539594/IT+Betriebssysteme/Web+Tipps/AMONG+US+MOD+MENU+APK+%E2%80%93+Download+Latest+Hack+Game/</guid>
<pubDate>Mon, 13 Jun 2022 14:58:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[KIMCHI TV APK – Download Latest TV Application]]></title> 
<description><![CDATA[Kimchi TV Apk is a latest Android application that gives subscribers access to great IPTV facilities for actually watching TV on their Android phones. Users can watch different channels on&hellip;
The post KIMCHI TV APK &ndash; Download Latest TV Application appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539595/IT+Betriebssysteme/Web+Tipps/KIMCHI+TV+APK+%E2%80%93+Download+Latest+TV+Application/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539595/IT+Betriebssysteme/Web+Tipps/KIMCHI+TV+APK+%E2%80%93+Download+Latest+TV+Application/</guid>
<pubDate>Mon, 13 Jun 2022 14:37:49 +0200</pubDate>
</item>
<item> 
<title><![CDATA[PICASSO APK DOWNLOAD – Download Latest App]]></title> 
<description><![CDATA[Picasso is a free app for watching live TV, downloading movies, and playing cricket. In this article, you will gain knowledge about the Picasso App&rsquo;s introduction, characteristics, and configuration.&nbsp; INTRODUCTION:&nbsp;&hellip;
The post PICASSO APK DOWNLOAD &ndash; Download Latest App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539596/IT+Betriebssysteme/Web+Tipps/PICASSO+APK+DOWNLOAD+%E2%80%93+Download+Latest+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539596/IT+Betriebssysteme/Web+Tipps/PICASSO+APK+DOWNLOAD+%E2%80%93+Download+Latest+App/</guid>
<pubDate>Mon, 13 Jun 2022 14:29:22 +0200</pubDate>
</item>
<item> 
<title><![CDATA[FREE FIRE HACK DOWNLOAD – Latest Game App]]></title> 
<description><![CDATA[Garena Free Fire is a mobile adventure game. Free Fire is a fantastic royal battle game that was inspired by PUBG Mobile and quickly gained popularity. In this article you&hellip;
The post FREE FIRE HACK DOWNLOAD &ndash; Latest Game App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539597/IT+Betriebssysteme/Web+Tipps/FREE+FIRE+HACK+DOWNLOAD+%E2%80%93+Latest+Game+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539597/IT+Betriebssysteme/Web+Tipps/FREE+FIRE+HACK+DOWNLOAD+%E2%80%93+Latest+Game+App/</guid>
<pubDate>Mon, 13 Jun 2022 14:10:03 +0200</pubDate>
</item>
<item> 
<title><![CDATA[AMONG US HACK DOWNLOAD – Latest Game Apk]]></title> 
<description><![CDATA[Among Us is a small indie game released in 2018 about detecting imposters among players and surviving to win. In order to deceive other players and achieve each player&rsquo;s own&hellip;
The post AMONG US HACK DOWNLOAD&nbsp;&ndash; Latest Game Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1539598/IT+Betriebssysteme/Web+Tipps/AMONG+US+HACK+DOWNLOAD%C2%A0%E2%80%93+Latest+Game+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1539598/IT+Betriebssysteme/Web+Tipps/AMONG+US+HACK+DOWNLOAD%C2%A0%E2%80%93+Latest+Game+Apk/</guid>
<pubDate>Mon, 13 Jun 2022 14:00:03 +0200</pubDate>
</item>
<item> 
<title><![CDATA[PICASSO APP – Download Latest LIVE Streaming App￼]]></title> 
<description><![CDATA[The Picasso app is a brand-new app that allows users to stream movies, web series, and cricket, especially the World Cup and IPL. This is the most recent Android version,&hellip;
The post PICASSO APP&nbsp;&ndash; Download Latest LIVE Streaming App￼ appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1535958/IT+Betriebssysteme/Web+Tipps/PICASSO+APP%C2%A0%E2%80%93+Download+Latest+LIVE+Streaming+App%EF%BF%BC/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1535958/IT+Betriebssysteme/Web+Tipps/PICASSO+APP%C2%A0%E2%80%93+Download+Latest+LIVE+Streaming+App%EF%BF%BC/</guid>
<pubDate>Thu, 09 Jun 2022 17:00:22 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Among Us Hack – Download Latest Game APP]]></title> 
<description><![CDATA[Among Us is a small indie game about finding imposters among players and surviving to win that was released in 2018. Conversation and politics are crucial in this game to&hellip;
The post Among Us Hack &ndash; Download Latest Game APP appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1535656/IT+Betriebssysteme/Web+Tipps/Among+Us+Hack+%E2%80%93+Download+Latest+Game+APP/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1535656/IT+Betriebssysteme/Web+Tipps/Among+Us+Hack+%E2%80%93+Download+Latest+Game+APP/</guid>
<pubDate>Thu, 09 Jun 2022 03:49:10 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Among Us Mod APK – Download Latest Game App]]></title> 
<description><![CDATA[Among Us Mod Menu APK is the most recent hacked version, which includes a slew of new features that will help you win the game whether you&rsquo;re playing online or&hellip;
The post Among Us Mod APK &ndash; Download Latest Game App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1535650/IT+Betriebssysteme/Web+Tipps/Among+Us+Mod+APK+%E2%80%93+Download+Latest+Game+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1535650/IT+Betriebssysteme/Web+Tipps/Among+Us+Mod+APK+%E2%80%93+Download+Latest+Game+App/</guid>
<pubDate>Thu, 09 Jun 2022 03:41:34 +0200</pubDate>
</item>
<item> 
<title><![CDATA[RegEx Validierung: Cheatsheet der häufigsten Regulären Ausdrücke zur Validierung (+ Anleitung)]]></title> 
<description><![CDATA[Zur Validierung von Benutzereingaben werden h&auml;ufig Regul&auml;re Ausdr&uuml;cke verwendet. Diese wiederholen sich bei der &Uuml;berpr&uuml;fung gleicher Eingaben. Daher habe ich dir hier eine Liste mit [&hellip;]
The post RegEx Validierung: Cheatsheet der h&auml;ufigsten Regul&auml;ren Ausdr&uuml;cke zur Validierung (+ Anleitung) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1527847/IT+Betriebssysteme/Web+Tipps/RegEx+Validierung%3A+Cheatsheet+der+h%C3%A4ufigsten+Regul%C3%A4ren+Ausdr%C3%BCcke+zur+Validierung+%28%2B+Anleitung%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1527847/IT+Betriebssysteme/Web+Tipps/RegEx+Validierung%3A+Cheatsheet+der+h%C3%A4ufigsten+Regul%C3%A4ren+Ausdr%C3%BCcke+zur+Validierung+%28%2B+Anleitung%29/</guid>
<pubDate>Tue, 31 May 2022 09:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[RegEx Validierung: Cheatsheet der häufigsten Regulären Ausdrücke zur Validierung (+ Anleitung)]]></title> 
<description><![CDATA[Zur Validierung von Benutzereingaben werden h&auml;ufig Regul&auml;re Ausdr&uuml;cke verwendet. Diese wiederholen sich bei der &Uuml;berpr&uuml;fung gleicher Eingaben. Daher habe ich dir hier eine Liste mit [&hellip;]
The post RegEx Validierung: Cheatsheet der h&auml;ufigsten Regul&auml;ren Ausdr&uuml;cke zur Validierung (+ Anleitung) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1527848/IT+Betriebssysteme/Web+Tipps/RegEx+Validierung%3A+Cheatsheet+der+h%C3%A4ufigsten+Regul%C3%A4ren+Ausdr%C3%BCcke+zur+Validierung+%28%2B+Anleitung%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1527848/IT+Betriebssysteme/Web+Tipps/RegEx+Validierung%3A+Cheatsheet+der+h%C3%A4ufigsten+Regul%C3%A4ren+Ausdr%C3%BCcke+zur+Validierung+%28%2B+Anleitung%29/</guid>
<pubDate>Tue, 31 May 2022 09:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Roblox Mod – Dowload Latest Game Apk]]></title> 
<description><![CDATA[Roblox is one of the most popular and adventurous action games for android users. The game is available in two modes out of which the first one is single player&hellip;
The post Roblox Mod &ndash; Dowload Latest Game Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1521396/IT+Betriebssysteme/Web+Tipps/Roblox+Mod+%E2%80%93+Dowload+Latest+Game+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1521396/IT+Betriebssysteme/Web+Tipps/Roblox+Mod+%E2%80%93+Dowload+Latest+Game+Apk/</guid>
<pubDate>Tue, 03 May 2022 14:01:33 +0200</pubDate>
</item>
<item> 
<title><![CDATA[15 wunderschöne CSS Formulare]]></title> 
<description><![CDATA[CSS Formulare sollten nicht nur ihren praktischen Zweck erf&uuml;llen, sondern k&ouml;nnen ganz neben bei auch noch sehr sch&ouml;n aussehen! Eine Liste von sehr anschaulichen Formularen [&hellip;]
The post 15 wundersch&ouml;ne CSS Formulare appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1519889/IT+Betriebssysteme/Web+Tipps/15+wundersch%C3%B6ne+CSS+Formulare/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519889/IT+Betriebssysteme/Web+Tipps/15+wundersch%C3%B6ne+CSS+Formulare/</guid>
<pubDate>Tue, 26 Apr 2022 09:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[JavaScript Arrays – JS Array Funktionen erklärt (Cheatsheet)]]></title> 
<description><![CDATA[JavaScript Arrays sind listen&auml;hnlichen Strukturen, k&ouml;nnen Daten speichern und bei nahezu jedem Programm notwendig. Die wichtigsten JavaScript Array Funktionen erkl&auml;re ich dir hier. Neben den [&hellip;]
The post JavaScript Arrays &ndash; JS Array Funktionen erkl&auml;rt (Cheatsheet) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1519238/IT+Betriebssysteme/Web+Tipps/JavaScript+Arrays+%E2%80%93+JS+Array+Funktionen+erkl%C3%A4rt+%28Cheatsheet%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519238/IT+Betriebssysteme/Web+Tipps/JavaScript+Arrays+%E2%80%93+JS+Array+Funktionen+erkl%C3%A4rt+%28Cheatsheet%29/</guid>
<pubDate>Fri, 10 Dec 2021 12:35:42 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Reading Position Indicator programmieren (CSS & JavaScript)]]></title> 
<description><![CDATA[Der Reading Position Indicator ist ein Balken auf deiner Website der anzeigt, wie viel der Besucher bereits von deinem Inhalt gelesen hat &ndash; und so [&hellip;]
The post Reading Position Indicator programmieren (CSS &amp; JavaScript) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1519239/IT+Betriebssysteme/Web+Tipps/Reading+Position+Indicator+programmieren+%28CSS+%26amp%3B+JavaScript%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519239/IT+Betriebssysteme/Web+Tipps/Reading+Position+Indicator+programmieren+%28CSS+%26amp%3B+JavaScript%29/</guid>
<pubDate>Fri, 10 Dec 2021 12:04:26 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Git SSH Keys: Privates GitHub Repository nutzen (klonen, pushen, etc.)]]></title> 
<description><![CDATA[Um mit einem privaten GitHub Repository zu arbeiten ben&ouml;tigt man einen SSH Key, um sich gegen&uuml;ber GitHub zu authentifizieren. Wie die Einrichtung einfach von der [&hellip;]
The post Git SSH Keys: Privates GitHub Repository nutzen (klonen, pushen, etc.) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1519240/IT+Betriebssysteme/Web+Tipps/Git+SSH+Keys%3A+Privates+GitHub+Repository+nutzen+%28klonen%2C+pushen%2C+etc.%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519240/IT+Betriebssysteme/Web+Tipps/Git+SSH+Keys%3A+Privates+GitHub+Repository+nutzen+%28klonen%2C+pushen%2C+etc.%29/</guid>
<pubDate>Fri, 26 Nov 2021 13:04:26 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Ajax in WordPress richtig nutzen]]></title> 
<description><![CDATA[Mit Ajax lassen sich Daten mit einem Server austauschen, ohne die Seite neu laden zu m&uuml;ssen. WordPress stellt Funktionalit&auml;ten bereit, um die Kommunikation einfach durchzuf&uuml;hren. [&hellip;]
The post Ajax in WordPress richtig nutzen appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1519241/IT+Betriebssysteme/Web+Tipps/Ajax+in+WordPress+richtig+nutzen/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519241/IT+Betriebssysteme/Web+Tipps/Ajax+in+WordPress+richtig+nutzen/</guid>
<pubDate>Mon, 15 Nov 2021 12:00:42 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Modzilla.io Apk – Download Among Us, Pokemon Go Here]]></title> 
<description><![CDATA[Modzilla.io is one of the most popular third party applications providing its users with a variety of modded applications and games. It is an app store which is powered by&hellip;
The post Modzilla.io Apk &ndash; Download Among Us, Pokemon Go Here appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519223/IT+Betriebssysteme/Web+Tipps/Modzilla.io+Apk+%E2%80%93+Download+Among+Us%2C+Pokemon+Go+Here/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519223/IT+Betriebssysteme/Web+Tipps/Modzilla.io+Apk+%E2%80%93+Download+Among+Us%2C+Pokemon+Go+Here/</guid>
<pubDate>Thu, 21 Apr 2022 21:58:18 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Lynx Apk – Download Latest Apk]]></title> 
<description><![CDATA[Lynx apk in an ancient Greek word which means secret keeper and this particular application guards your secret media as a secret keeper. It is designed especially to protect your&hellip;
The post Lynx Apk &ndash; Download Latest Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519224/IT+Betriebssysteme/Web+Tipps/Lynx+Apk+%E2%80%93+Download+Latest+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519224/IT+Betriebssysteme/Web+Tipps/Lynx+Apk+%E2%80%93+Download+Latest+Apk/</guid>
<pubDate>Thu, 21 Apr 2022 21:51:02 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Among us Mod Download – Latest Game]]></title> 
<description><![CDATA[Among Us mod is an application of the original version of Among Us game, the only difference is that the mod version needs to be downloaded from any third party&hellip;
The post Among us Mod Download &ndash; Latest Game appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519225/IT+Betriebssysteme/Web+Tipps/Among+us+Mod+Download+%E2%80%93+Latest+Game/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519225/IT+Betriebssysteme/Web+Tipps/Among+us+Mod+Download+%E2%80%93+Latest+Game/</guid>
<pubDate>Wed, 20 Apr 2022 13:11:53 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Among US Hack Apk – Download Latest GAME App]]></title> 
<description><![CDATA[Among Us Hack gameplay has been designed in a space themed where players are characterized looking like armless astronauts. The goal of the crew mate is to find the imposter&hellip;
The post Among US Hack Apk&nbsp;&ndash; Download Latest GAME App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519226/IT+Betriebssysteme/Web+Tipps/Among+US+Hack+Apk%C2%A0%E2%80%93+Download+Latest+GAME+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519226/IT+Betriebssysteme/Web+Tipps/Among+US+Hack+Apk%C2%A0%E2%80%93+Download+Latest+GAME+App/</guid>
<pubDate>Tue, 29 Mar 2022 19:14:26 +0200</pubDate>
</item>
<item> 
<title><![CDATA[File Linked – Download Latest Application [2022]]]></title> 
<description><![CDATA[Filelinked application has a store which stores bulk of applications from various developers using different codes. It is basically a file sharing app. This particular application is available for both&hellip;
The post File Linked &ndash; Download Latest Application [2022] appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519227/IT+Betriebssysteme/Web+Tipps/File+Linked+%E2%80%93+Download+Latest+Application+%5B2022%5D/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519227/IT+Betriebssysteme/Web+Tipps/File+Linked+%E2%80%93+Download+Latest+Application+%5B2022%5D/</guid>
<pubDate>Tue, 29 Mar 2022 19:06:27 +0200</pubDate>
</item>
<item> 
<title><![CDATA[File Linked Apk – Download Latest Updated APP]]></title> 
<description><![CDATA[File Linked enables its users to share files with unique codes. It is a bulk downloader application allowing its user to install desired software without any browsing over search engines&hellip;
The post File Linked Apk &ndash; Download Latest Updated APP appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519228/IT+Betriebssysteme/Web+Tipps/File+Linked+Apk+%E2%80%93+Download+Latest+Updated+APP/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519228/IT+Betriebssysteme/Web+Tipps/File+Linked+Apk+%E2%80%93+Download+Latest+Updated+APP/</guid>
<pubDate>Tue, 29 Mar 2022 19:02:54 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Pirlo TV Apk – Download Latest UPDATED APP]]></title> 
<description><![CDATA[If you want to have access to various sports shows live streaming it is an ideal platform for you. Pirlo Tv is basically a Football streaming application. Where users can&hellip;
The post Pirlo TV Apk &ndash; Download Latest UPDATED APP appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519229/IT+Betriebssysteme/Web+Tipps/Pirlo+TV+Apk+%E2%80%93+Download+Latest+UPDATED+APP/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519229/IT+Betriebssysteme/Web+Tipps/Pirlo+TV+Apk+%E2%80%93+Download+Latest+UPDATED+APP/</guid>
<pubDate>Tue, 29 Mar 2022 18:49:55 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Twitch App auf Samsung TV installieren – So geht’s!]]></title> 
<description><![CDATA[Samsung bietet aktuell keine offizielle Twitch App f&uuml;r Samsung Smart TVs an. Es gibt trotzdem eine M&ouml;glichkeit eine Twitch App auf einem Samsung TV zu [&hellip;]
The post Twitch App auf Samsung TV installieren &ndash; So geht&rsquo;s! appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1519230/IT+Betriebssysteme/Web+Tipps/Twitch+App+auf+Samsung+TV+installieren+%E2%80%93+So+geht%E2%80%99s%21/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519230/IT+Betriebssysteme/Web+Tipps/Twitch+App+auf+Samsung+TV+installieren+%E2%80%93+So+geht%E2%80%99s%21/</guid>
<pubDate>Tue, 29 Mar 2022 09:00:00 +0200</pubDate>
</item>
<item> 
<title><![CDATA[Mega Personal Apk – Download Latest Dating App]]></title> 
<description><![CDATA[Mega personal Apk is widely used by the majority of people and is one of the most popular dating sites. It provides a chat room to its user with whom&hellip;
The post Mega Personal Apk &ndash; Download Latest Dating App appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519231/IT+Betriebssysteme/Web+Tipps/Mega+Personal+Apk+%E2%80%93+Download+Latest+Dating+App/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519231/IT+Betriebssysteme/Web+Tipps/Mega+Personal+Apk+%E2%80%93+Download+Latest+Dating+App/</guid>
<pubDate>Tue, 22 Mar 2022 07:25:07 +0100</pubDate>
</item>
<item> 
<title><![CDATA[Roblox Hack Download – Latest Game Mod Apk]]></title> 
<description><![CDATA[Roblox hack provides you with the advantage to beat your opponent. Hats provides you with more than required features required for the game victory. Players can customize their avatar with&hellip;
The post Roblox Hack Download &ndash; Latest Game Mod Apk appeared first on CSHAWK. ]]></description>
<link>https://tsecurity.de/de/1519232/IT+Betriebssysteme/Web+Tipps/Roblox+Hack+Download+%E2%80%93+Latest+Game+Mod+Apk/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519232/IT+Betriebssysteme/Web+Tipps/Roblox+Hack+Download+%E2%80%93+Latest+Game+Mod+Apk/</guid>
<pubDate>Fri, 18 Mar 2022 17:29:03 +0100</pubDate>
</item>
<item> 
<title><![CDATA[WordPress Admin Bar Item hinzufügen (inkl. Icon)]]></title> 
<description><![CDATA[Hier erf&auml;hrst du, wie du mit wenigen Zeilen Code eigene Items in die WordPress Admin Bar hinzuf&uuml;gen und nach deinen Vorstellungen anpassen kannst. Um einen [&hellip;]
The post WordPress Admin Bar Item hinzuf&uuml;gen (inkl. Icon) appeared first at webdeasy.de. ]]></description>
<link>https://tsecurity.de/de/1519233/IT+Betriebssysteme/Web+Tipps/WordPress+Admin+Bar+Item+hinzuf%C3%BCgen+%28inkl.+Icon%29/</link>
<guid isPermaLink="true">https://tsecurity.de/de/1519233/IT+Betriebssysteme/Web+Tipps/WordPress+Admin+Bar+Item+hinzuf%C3%BCgen+%28inkl.+Icon%29/</guid>
<pubDate>Tue, 22 Feb 2022 09:00:00 +0100</pubDate>
</item>
</channel> 
</rss>
<!-- Generated in 0,23ms -->