<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Paweł Ludwiczak</title>
    <description>The latest articles on Forem by Paweł Ludwiczak (@pp).</description>
    <link>https://forem.com/pp</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F257782%2Fc0b05267-63ab-4829-83c8-9ad687d49959.png</url>
      <title>Forem: Paweł Ludwiczak</title>
      <link>https://forem.com/pp</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/pp"/>
    <language>en</language>
    <item>
      <title>No way!</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Wed, 13 Nov 2024 15:52:53 +0000</pubDate>
      <link>https://forem.com/pp/no-way-2fkn</link>
      <guid>https://forem.com/pp/no-way-2fkn</guid>
      <description></description>
    </item>
    <item>
      <title>Accessible Toggle</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Fri, 08 Apr 2022 15:25:41 +0000</pubDate>
      <link>https://forem.com/pp/accessible-toggle-3690</link>
      <guid>https://forem.com/pp/accessible-toggle-3690</guid>
      <description>&lt;h2&gt;
  
  
  Intro
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Toggle&lt;/em&gt; is a TRUE/FALSE switch that looks like a... switch... Similar control you can find in your smartphone settings probably.&lt;/p&gt;

&lt;p&gt;Under the hood, since it's a TRUE/FALSE type of a control, it's basically just a more fancy styled &lt;code&gt;input[type="checkbox"]&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;And here's why it's tricky to make it accessible.&lt;/p&gt;

&lt;h2&gt;
  
  
  Usual way
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Usually&lt;/strong&gt;, to build such a toggle with HTML &amp;amp; CSS you need a visually hidden checkbox within a fancy styled &lt;code&gt;label&lt;/code&gt; element. And that's what most of the tutorials will tell you.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;label&lt;/code&gt; element makes sure that the entire toggle is "interactive" (i.e. clickable). &lt;/p&gt;

&lt;p&gt;You can't just hide the checkbox with &lt;code&gt;display: none&lt;/code&gt; because it would make it invisible to assistive technologies. So here's the trick to make it invisible to screens yet accessible:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;label.toggle {
    position: relative;
    ...

    [type="checkbox"] {
        position: absolute;
        left: -10000px;
        top: auto;
        width: 1px;
        height: 1px;
        overflow: hidden;
    }

    ...
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  The Problem and The Solution
&lt;/h2&gt;

&lt;p&gt;And here's a caveat: our toggle (which is a checkbox) is wrapped with &lt;code&gt;label&lt;/code&gt; therefore it's &lt;strong&gt;required&lt;/strong&gt; (by the a11y police 👮) to provide an actual text description. But we don't want our component to dictate how that text description should look like... Because it might be used in several different ways: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;sometimes text might be in front of a toggle, sometimes after it, and sometimes above it,&lt;/li&gt;
&lt;li&gt;sometimes text might be longer and styled and sometimes not.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hence we can't use &lt;code&gt;label&lt;/code&gt; 🤷‍♂️. But if we use regular &lt;code&gt;div&lt;/code&gt; or &lt;code&gt;span&lt;/code&gt; instead, then we lose the "clickability" of our toggle.&lt;/p&gt;

&lt;p&gt;So the actual trick is to enlarge the checkbox to be as big as the toggle wrapper (that &lt;code&gt;div&lt;/code&gt; or &lt;code&gt;span&lt;/code&gt;) and hide it differently:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;div.toggle {
    position: relative;
    ...

    [type="checkbox"] {
        width: 100%;
        height: 100%;
        opacity: 0.00001;
        ...
    }

    ...
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;First we make sure checkbox takes full width and height. Then we &lt;strong&gt;almost&lt;/strong&gt; hide the checkbox with &lt;code&gt;opacity: 0.00001;&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Opacity can take values between &lt;code&gt;0&lt;/code&gt; (fully invisible) and &lt;code&gt;1&lt;/code&gt; (fully visible). We use value very close to 0 so it's basically invisible on the screen but visible to assistive technologies.&lt;/p&gt;

&lt;p&gt;That's it folks. Below is a full demo :)&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/ludwiczakpawel/embed/bGavoZR?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;^ try to remove that opacity property to see the actual checkbox placement.&lt;/p&gt;




&lt;p&gt;Couple notes: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You could practically use any element to create toggle if you also sprinkle it with JS. But I wanted to avoid it.&lt;/li&gt;
&lt;li&gt;Keep in mind, all form elements should be placed inside &lt;code&gt;label&lt;/code&gt;, but in the World of Components, we don't really want such a low-level component to dictate how everything around it should look like. Components should be self-contained and not affect its surroundings (at least that's my philosophy).&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>a11y</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>TailwindCSS @apply - the right approach?</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Wed, 10 Mar 2021 16:35:33 +0000</pubDate>
      <link>https://forem.com/pp/tailwindcss-apply-the-right-approach-5ghd</link>
      <guid>https://forem.com/pp/tailwindcss-apply-the-right-approach-5ghd</guid>
      <description>&lt;p&gt;I've been experimenting with Tailwind quite a lot recently and there's one thing that I can't figure out... Which of these is better:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight scss"&gt;&lt;code&gt;&lt;span class="nc"&gt;.element&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;@apply&lt;/span&gt; &lt;span class="nt"&gt;bg-red&lt;/span&gt; &lt;span class="nc"&gt;...&lt;/span&gt; &lt;span class="nt"&gt;hover&lt;/span&gt;&lt;span class="nd"&gt;:bg-green&lt;/span&gt; &lt;span class="nc"&gt;...&lt;/span&gt; &lt;span class="nt"&gt;focus&lt;/span&gt;&lt;span class="nd"&gt;:bg-yellow&lt;/span&gt; &lt;span class="nc"&gt;...&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight scss"&gt;&lt;code&gt;&lt;span class="nc"&gt;.element&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;@apply&lt;/span&gt; &lt;span class="nt"&gt;bg-red&lt;/span&gt; &lt;span class="nc"&gt;...&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nd"&gt;:hover&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
     &lt;span class="k"&gt;@apply&lt;/span&gt; &lt;span class="nt"&gt;bg-green&lt;/span&gt; &lt;span class="nc"&gt;...&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="k"&gt;&amp;amp;&lt;/span&gt;&lt;span class="nd"&gt;:focus&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;@apply&lt;/span&gt; &lt;span class="nt"&gt;bg-yellow&lt;/span&gt; &lt;span class="nc"&gt;...&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The latter example is probably more readable but on the other hand it doesn't utilize Tailwind's variants. So I'm wondering if there's any difference between one and the other? Maybe performance?&lt;/p&gt;

</description>
      <category>discuss</category>
    </item>
    <item>
      <title>Here's my website setup...</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Tue, 02 Mar 2021 11:00:18 +0000</pubDate>
      <link>https://forem.com/pp/here-s-my-website-setup-2j01</link>
      <guid>https://forem.com/pp/here-s-my-website-setup-2j01</guid>
      <description>&lt;p&gt;My wife came up with a business idea and she needed a simple website. So I decided to build one. And this post is basically me documenting some of the tools I've used.&lt;/p&gt;

&lt;h1&gt;
  
  
  Context
&lt;/h1&gt;

&lt;p&gt;It's a simple page with one short form to gather emails and some extra data. It's likely going to have two more subpages, including one with extra form. Mostly static content. Easy-peasy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I'm fully aware this may not work for everyone and this may not be enough (or too much!) for other scenarios. But this was my playground and my toys and I just wanted to share with you all my experience and rationale behind my choices.&lt;/strong&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Tools
&lt;/h1&gt;

&lt;p&gt;I could build everything with pure HTML and CSS and then upload it through FTP on my own server. But I thought it's gonna be fun taking alternative path.&lt;/p&gt;

&lt;h2&gt;
  
  
  Frontend
&lt;/h2&gt;

&lt;p&gt;Instead of creating one &lt;code&gt;index.html&lt;/code&gt; file in Notepad.exe I decided to go with &lt;a href="http://gatsbyjs.com/"&gt;Gatsby&lt;/a&gt; - which is basically a framework for creating websites 🤷‍♂️.&lt;/p&gt;

&lt;p&gt;It's based on &lt;a href="https://reactjs.org/"&gt;React&lt;/a&gt; and its API/documentation seems pretty straightforward and understandable. Plus I wanted to play with React a bit more.&lt;/p&gt;

&lt;h2&gt;
  
  
  CSS
&lt;/h2&gt;

&lt;p&gt;I used to use &lt;a href="https://sass-lang.com/"&gt;Sass&lt;/a&gt; or &lt;a href="http://lesscss.org/"&gt;Less&lt;/a&gt; in my previous projects but this time I wanted to try something new so I went with &lt;a href="https://postcss.org/"&gt;PostCSS&lt;/a&gt; which basically adds a bit of magic to normal CSS.&lt;/p&gt;

&lt;p&gt;Plugins I've added on top of PostCSS:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/postcss/autoprefixer"&gt;Autoprefixer&lt;/a&gt; - so I don't have to add &lt;code&gt;-moz&lt;/code&gt; or &lt;code&gt;-webkit&lt;/code&gt; vendor prefixes to some CSS properties.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/postcss/postcss-nested"&gt;PostCSS Nested&lt;/a&gt; - so I can use Sass-like nesting.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://preset-env.cssdb.org/"&gt;postcss-preset-env&lt;/a&gt; - it lets you use some cutting-edge CSS but understandable by modern browsers.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  CSS Modules
&lt;/h3&gt;

&lt;p&gt;Since my project is based on Gatsby and React, I basically created components for everything: header, footer, forms, buttons and specific content sections. And because of componentized nature of my codebase, I decided to utilize &lt;a href="https://github.com/css-modules/css-modules"&gt;CSS Modules&lt;/a&gt; concept so I don't have to be worried about using too generic names for my CSS selectors and everything can be scoped locally.&lt;/p&gt;

&lt;h2&gt;
  
  
  "Server"
&lt;/h2&gt;

&lt;h3&gt;
  
  
  GitHub
&lt;/h3&gt;

&lt;p&gt;I store everything as a &lt;a href="https://github.com"&gt;GitHub&lt;/a&gt; repo. You may wonder if it makes any sense to do so if it's a tiny project that I don't collaborate on with anyone else... And my answer is: YES! I make small commits and this alone saved my butt once or twice already - for example when I had to restore some previous version of a component. And you're right - I don't utilize 95% of what GitHub (or Git alone) provides, but the rest 5% is still worth it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Netlify
&lt;/h3&gt;

&lt;p&gt;And everything is online thanks to &lt;a href="https://www.netlify.com/"&gt;Netlify&lt;/a&gt;! I love how smooth this whole process is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Make a change.&lt;/li&gt;
&lt;li&gt;Commit and &lt;code&gt;git push&lt;/code&gt; to my repo.&lt;/li&gt;
&lt;li&gt;Boom, after a minute or two it's online.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;^ My Netlify account is connected with my GitHub repo so it all happens automatically.&lt;/p&gt;

&lt;h4&gt;
  
  
  Forms!
&lt;/h4&gt;

&lt;p&gt;But there's more! As I mentioned earlier - that landing page has one "interactive" element - a form to collect emails and some additional data. Apparently &lt;a href="https://www.netlify.com/products/forms/"&gt;Netlify can handle form submissions&lt;/a&gt; and store all the collected data for you. The best part: all you have to do is basically add &lt;code&gt;netlify&lt;/code&gt; attribute to the form and it will do all the hard work for you... 🤯&lt;/p&gt;




&lt;p&gt;I could have done some things differently but I wanted to play with these particular tools as I personally consider them being &lt;em&gt;the future&lt;/em&gt; of "simple" site building.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>coding</category>
    </item>
    <item>
      <title>Any reason for not using loading="lazy" attribute?</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Mon, 26 Oct 2020 14:08:28 +0000</pubDate>
      <link>https://forem.com/devteam/any-reason-for-not-using-loading-lazy-attribute-3gn8</link>
      <guid>https://forem.com/devteam/any-reason-for-not-using-loading-lazy-attribute-3gn8</guid>
      <description>&lt;p&gt;One of our community members suggested using &lt;code&gt;loading="lazy"&lt;/code&gt; for &lt;strong&gt;all&lt;/strong&gt; images on DEV. Pros are pretty clear to me. But are there any cons of this? Any kind of gotchas or edge cases we should watch out for?&lt;/p&gt;

&lt;p&gt;If not, why isn't that the default for loading images in browser?&lt;/p&gt;

</description>
      <category>html</category>
      <category>performance</category>
      <category>explainlikeimfive</category>
    </item>
    <item>
      <title>10x CSS</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Mon, 03 Aug 2020 19:41:55 +0000</pubDate>
      <link>https://forem.com/pp/10x-css-5dan</link>
      <guid>https://forem.com/pp/10x-css-5dan</guid>
      <description>&lt;p&gt;This post is just a collection of some CSS tricks and magic I've learned about over the last couple months.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;background-repeat: space|round&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;When you have tiles-type background and you don't a tile to be cut-off.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href="https://css-tricks.com/almanac/properties/b/background-repeat/" rel="noopener noreferrer"&gt;CSS-Tricks&lt;/a&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;scroll-margin-top&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;Having sticky header (or nav) is pretty common UI pattern. But it's a bit tricky when your app also has anchor links (&lt;code&gt;https://....#section&lt;/code&gt;) that users use to navigate between page sections. Header will likely overlay part of the section that user navigated to. &lt;code&gt;scroll-margin-top&lt;/code&gt; will help with this.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href="https://www.bram.us/2020/03/01/prevent-content-from-being-hidden-underneath-a-fixed-header-by-using-scroll-margin-top/" rel="noopener noreferrer"&gt;Bram.us&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;resize: both&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;It's not really surprising you can use &lt;code&gt;resize: ...&lt;/code&gt; to define how users can resize the &lt;code&gt;textarea&lt;/code&gt; (it's the little handle in the bottom right corner). But what I think is pretty cool about it is you can use it elsewhere - for example on &lt;code&gt;iframe&lt;/code&gt; - which I personally found very useful when testing responsiveness on certain elements.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href="https://www.bram.us/2020/05/15/css-only-resizable-elements/" rel="noopener noreferrer"&gt;Bram.us&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;place-items&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;Nifty shorthand for two properties.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;place-items&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;center&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="c"&gt;/* ...instead of: */&lt;/span&gt;
&lt;span class="nt"&gt;align-items&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;center&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;justify-items&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;center&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Source: &lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/place-items" rel="noopener noreferrer"&gt;MDN&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;inset&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;Another shorthand:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;inset&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;10&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt; &lt;span class="err"&gt;20&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt; &lt;span class="err"&gt;30&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt; &lt;span class="err"&gt;40&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="c"&gt;/* ...instead of: */&lt;/span&gt;
&lt;span class="nt"&gt;top&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;10&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;right&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;20&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;bottom&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;30&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;left&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;40&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It has similar syntax to &lt;code&gt;margin&lt;/code&gt; or &lt;code&gt;padding&lt;/code&gt;, so you can also use it like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;inset&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;10&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt; &lt;span class="err"&gt;20&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="c"&gt;/* ...instead of: */&lt;/span&gt;
&lt;span class="nt"&gt;top&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;10&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;right&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;20&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;bottom&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;10&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;left&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="err"&gt;20&lt;/span&gt;&lt;span class="nt"&gt;px&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Source: &lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/inset" rel="noopener noreferrer"&gt;MDN&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;user-select: all&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;Not crazy useful but it's a nice proof of concept. You can use a &lt;code&gt;user-select: all&lt;/code&gt; trick to select, for example, a code snippet on click.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href="https://codersblock.com/blog/using-css-to-control-text-selection/" rel="noopener noreferrer"&gt;Coder's Block&lt;/a&gt; (there's actually much more info about this property in general)&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;-webkit-fill-available&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;If you have ever tried to use &lt;code&gt;vh&lt;/code&gt; units you probably know how "tricky" things get on mobile, especially webkit-based browsers. Below is a really nice trick to make things more predictable.&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1254151507412496384-260" src="https://platform.twitter.com/embed/Tweet.html?id=1254151507412496384"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1254151507412496384-260');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1254151507412496384&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;counter-*&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;I have no idea if this could be any useful but I thought it's interesting 😂.&lt;/p&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1258283004465680384-134" src="https://platform.twitter.com/embed/Tweet.html?id=1258283004465680384"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1258283004465680384-134');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1258283004465680384&amp;amp;theme=dark"
  }



&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;code&gt;gap&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;One of the best things about CSS &lt;code&gt;grid&lt;/code&gt; is &lt;code&gt;grid-gap&lt;/code&gt;. It's something I've been missing on flexbox but looks like it's coming: &lt;code&gt;gap&lt;/code&gt; will be universal property that can work on both - &lt;code&gt;grid&lt;/code&gt; AND &lt;code&gt;flexbox&lt;/code&gt;. Browser support is pretty poor as of today but... Hey! It's coming!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Source: &lt;a href="https://developer.mozilla.org/pl/docs/Web/CSS/gap" rel="noopener noreferrer"&gt;MDN&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Browser support: &lt;a href="https://caniuse.com/#search=gap" rel="noopener noreferrer"&gt;Can I use...&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>css</category>
    </item>
    <item>
      <title>new header, who dis</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Thu, 26 Mar 2020 16:55:28 +0000</pubDate>
      <link>https://forem.com/devteam/new-header-who-dis-458j</link>
      <guid>https://forem.com/devteam/new-header-who-dis-458j</guid>
      <description>&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; You may have started noticing more updates in the UI recently. And we have just updated the header!&lt;br&gt;
We've been working pretty hard on building new awesome features and improvements. Some of them are meant to be invisible yet super helpful: feed improvements or upgrading some of our infra. But we've also made some changes that affected visuals.&lt;/p&gt;

&lt;h1&gt;
  
  
  Frontend Codebase
&lt;/h1&gt;

&lt;p&gt;Like in many projects, the front-end part of a codebase is... well... not ideal. We have tons of CSS files, lots of spaghetti code, duplicated styles, and much, much, more...&lt;/p&gt;

&lt;p&gt;It's a classic scenario: the feature or view needs to be built. The Dev or Designer decides to write super short and simple front-end code to ship a feature fast. And 2000 lines of code later you just can't go back :)&lt;/p&gt;

&lt;p&gt;Taking a more holistic approach is actually what we've been trying to do. We've started building our own Design System. It includes not only design guidelines, but also front-end documentation of how to use the styles and components.&lt;/p&gt;

&lt;p&gt;Overall, this is our approach (I will write more about our Design System in the future):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;We now have real components and views built in SCSS (well, just a few of them, but that's a good start!).&lt;/li&gt;
&lt;li&gt;We also have utility-first classes (&lt;a href="https://tailwindcss.com/" rel="noopener noreferrer"&gt;TailwindCSS&lt;/a&gt; - does that ring a bell?) ready to be used anywhere in the markup.&lt;/li&gt;
&lt;li&gt;At the same time 95% of our code is legacy code, not following any rules or guidelines. We will be slowly updating that alongside releasing new style.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Which is a good segue to...&lt;/p&gt;

&lt;h1&gt;
  
  
  New header
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fa725mkkizo8bzzfkzlkl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fa725mkkizo8bzzfkzlkl.png" alt="Header" width="800" height="96"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One of the very first elements that we've decided to update is our header. You may notice it looks slightly different than couple days ago (if not, hit the hard refresh... If still nothing, I could have broken something and we had to roll it back :D). It's just a refresh, not complete redesign or anything. But we hope you'll like it! There's much more coming and this header update is just a teaser.&lt;/p&gt;

</description>
      <category>meta</category>
      <category>design</category>
    </item>
    <item>
      <title>Where are we going?</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Wed, 26 Feb 2020 10:20:23 +0000</pubDate>
      <link>https://forem.com/devteam/where-are-we-going-38o</link>
      <guid>https://forem.com/devteam/where-are-we-going-38o</guid>
      <description>&lt;p&gt;For the last couple weeks we've been working pretty hard to improve the UI &amp;amp; UX on DEV. Our efforts so far were focused around the home page, but mostly under the hood. There's a lot of spaghetti in the frontend codebase and there were temporary solutions that were never replaced with  more sustainable ones. Hence, the work that we’re doing right now is not really visible.&lt;/p&gt;

&lt;p&gt;But some of it is.&lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/devteam" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DGMHY8k9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://res.cloudinary.com/practicaldev/image/fetch/s--DG4H-3cI--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/organization/profile_image/1/d908a186-5651-4a5a-9f76-15200bc6801f.jpg" alt="The DEV Team" width="150" height="150"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--QVF_SF-2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://res.cloudinary.com/practicaldev/image/fetch/s--4WwS25ay--/c_fill%2Cf_auto%2Cfl_progressive%2Ch_150%2Cq_auto%2Cw_150/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/257782/c0b05267-63ab-4829-83c8-9ad687d49959.png" alt="" width="150" height="150"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/devteam/shipping-home-page-cleanups-2d3i" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Shipping Home Page Cleanups&lt;/h2&gt;
      &lt;h3&gt;Paweł Ludwiczak for The DEV Team ・ Feb 19 '20&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#design&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#meta&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ux&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#changelog&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;First of all, thank you for feedback! We really appreciate it and you helped us spot and fix many bugs. 🙌&lt;/p&gt;

&lt;p&gt;I mentioned a couple times that what we’ve shipped so far is just a step towards something bigger. It's still far from being ideal but we’ve had to make some changes here and there to make it easier in future to implement new things. This is an ongoing process and will take time.&lt;/p&gt;

&lt;p&gt;Today I'd love to show you a sneak peek of where we want to be in some time. Again: it's not ideal, it's not finished and it keeps evolving (like literally every day :)). But I still think it's worth sharing with a broader audience!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--__-0g3Qm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/bhs28idhma3xv91tyviy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--__-0g3Qm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/i/bhs28idhma3xv91tyviy.png" alt="Home page preview" width="720" height="513"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From yours, the community perspective, it should be more readable, easier to navigate and more fun to use. From our perspective this will be a step towards not only a more maintainable design system but also a North Star for UI improvements in other areas and views.&lt;/p&gt;

</description>
      <category>meta</category>
      <category>design</category>
      <category>ux</category>
    </item>
    <item>
      <title>Shipping Home Page Cleanups</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Wed, 19 Feb 2020 16:53:40 +0000</pubDate>
      <link>https://forem.com/devteam/shipping-home-page-cleanups-2d3i</link>
      <guid>https://forem.com/devteam/shipping-home-page-cleanups-2d3i</guid>
      <description>&lt;h1&gt;
  
  
  TL;DR
&lt;/h1&gt;

&lt;p&gt;Today we're shipping some small UI changes for the home page. Let us know if you can spot any bugs or issues since changes might have affected other views too.&lt;/p&gt;




&lt;p&gt;A couple weeks ago the DEV team started looking into possible improvements for the DEV home page. We asked you for feedback and opinions and OMG my product designer soul was like 🤩🤩🤩🤩🤩🤩🤩&lt;/p&gt;

&lt;h1&gt;
  
  
  TL;DR of what happened
&lt;/h1&gt;

&lt;p&gt;We had this idea to do a home page makeover. You gave us tons of input around what we should be focused on, tons of ideas for features and improvements, and tons of great feedback. Here's a bit more detailed recap: &lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/devteam" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__org__pic"&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F1%2Fd908a186-5651-4a5a-9f76-15200bc6801f.jpg" alt="The DEV Team" width="800" height="800"&gt;
      &lt;div class="ltag__link__user__pic"&gt;
        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F247053%2Ffa9ecdd6-df20-468c-83d3-e574b52acd3e.png" alt="" width="800" height="667"&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/devteam/follow-up-your-feedback-on-the-home-page-2cij" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Follow-up: your feedback on the home page 👋🏼&lt;/h2&gt;
      &lt;h3&gt;Lisa Sy (she/her) for The DEV Team ・ Feb 10 '20&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#design&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ux&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#meta&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;For the Home Page itself, we decided to split our efforts into three separate "projects": 1) Low Hanging Fruits, 2) Feed Improvements, and 3) North Star Vision.&lt;/p&gt;

&lt;h1&gt;
  
  
  Shipping Low Hanging Fruit 🚢
&lt;/h1&gt;

&lt;p&gt;Today we're super pumped about shipping &lt;strong&gt;just a tiny bit of what we have planned&lt;/strong&gt;. We made some small UI optimizations that are mostly visible on the home page but also on other views. Some of the improvements include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;De-emphasizing sidebars&lt;/strong&gt; – there will be fewer "boxes" in the sidebars so that you can better focus on the feed itself. It helps us build some layout hierarchy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Spacing&lt;/strong&gt; – it should be less random now.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Typography&lt;/strong&gt; – font sizes, line height, and colors should also be less random :D&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;...I guess we could call it "DE-RANDOMIZING DESIGN". That would be a catchy title for a &lt;del&gt;medium&lt;/del&gt; DEV post, huh? &lt;/p&gt;

&lt;p&gt;It's technically not much but visually, it may feel different. Give it a couple days to get used to it. And remember it's just a first step. &lt;/p&gt;

&lt;h1&gt;
  
  
  What you may notice 👀
&lt;/h1&gt;

&lt;p&gt;This update is more minimalistic, and may even look less DEV-ish. Some of you pointed out that that DEV’s eclectic, glitchy &amp;amp; imperfect style is 100% on-brand, so why does it look like we’re scrapping all of that? Don’t worry, &lt;strong&gt;we see this&lt;/strong&gt;. Although we love this “style”, a lot of it is caused by lack of rules and guidelines especially in design. We’re cleaning it up now so that we can re-incorporate more of the DEV brand of “organized disorder” over time. Plus, this will let us build great features and improvements efficiently in the future. Trust us when we’re saying that your initial impression will just be a temporary feeling. &lt;/p&gt;

&lt;h1&gt;
  
  
  What's next?
&lt;/h1&gt;

&lt;p&gt;Of course, we still want your feedback. If you see any issues or bugs, please let us know either here or in &lt;a href="https://github.com/thepracticaldev/dev.to"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;We're also looking at some metrics to see if we didn't screw up anything. If we notice that "omg signups went down by 50000%" then we do &lt;code&gt;git revert&lt;/code&gt; or whatever you do in that case (hey, I'm not a developer!). Also, I could be fired then 🤷‍♂️.&lt;/p&gt;

&lt;h2&gt;
  
  
  It's not over.
&lt;/h2&gt;

&lt;p&gt;This is just a very first step towards where we want to be. The whole team is working pretty hard at defining that North Star vision, not only in terms of features, but also in UI. &lt;/p&gt;

&lt;p&gt;Cheers!&lt;/p&gt;

&lt;p&gt;(Cover photo by &lt;a href="https://unsplash.com/@jeshoots" rel="noopener noreferrer"&gt;JESHOOTS.COM&lt;/a&gt;)&lt;/p&gt;

</description>
      <category>design</category>
      <category>meta</category>
      <category>ux</category>
      <category>changelog</category>
    </item>
    <item>
      <title>Icon for bookmark, save...</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Sat, 08 Feb 2020 14:20:50 +0000</pubDate>
      <link>https://forem.com/pp/icon-for-bookmark-save-1a61</link>
      <guid>https://forem.com/pp/icon-for-bookmark-save-1a61</guid>
      <description>&lt;p&gt;Many sites have functionality for saving links or articles. You can bookmark tweets, save instagram photos, and of course save articles on DEV to read them later.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Nzebz749--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/o9heo1bus21ge5vufatw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Nzebz749--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/o9heo1bus21ge5vufatw.png" alt="Save disk"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Couple days ago we've been debating internally about symbol for "SAVE" action on DEV, wondering how many people nowadays actually know what the icon above means. Do you know what it is? Is it too meta or is it actually perfectly on brand? And the most importantly: do you feel old now 👴😆?&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>design</category>
    </item>
    <item>
      <title>Hello again. It's time to do some work!</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Tue, 04 Feb 2020 19:53:06 +0000</pubDate>
      <link>https://forem.com/devteam/hello-again-time-to-do-some-work-3b6o</link>
      <guid>https://forem.com/devteam/hello-again-time-to-do-some-work-3b6o</guid>
      <description>&lt;h1&gt;
  
  
  tl;dr
&lt;/h1&gt;

&lt;p&gt;DEV is redesigning the home page. But we need your help and feedback. Also, hi!&lt;/p&gt;

&lt;h1&gt;
  
  
  Hello, again.
&lt;/h1&gt;

&lt;p&gt;This is Paweł, I'm a part of the Product Design team, here at DEV. Lisa and I joined DEV recently. &lt;/p&gt;


&lt;div class="ltag__link"&gt;
  &lt;a href="/lisasy" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F247053%2Ffa9ecdd6-df20-468c-83d3-e574b52acd3e.png" alt="lisasy"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/lisasy/dev-product-design-6pf" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;DEV + Product Design 👋🏼&lt;/h2&gt;
      &lt;h3&gt;Lisa Sy (she/her) ・ Dec 9 '19&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#meta&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#design&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ux&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;a href="/pp" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F257782%2Fc0b05267-63ab-4829-83c8-9ad687d49959.png" alt="pp"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/pp/hello-world-20j5" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Hello World!&lt;/h2&gt;
      &lt;h3&gt;Paweł Ludwiczak ・ Jan 14 '20&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#meta&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;So, what does the Design team at DEV actually do? Great question! To keep it short: we're trying to make DEV more usable, better-looking, and welcoming. We're also going to work on our design system — a bunch of tools and guidelines to make designing and building features much easier; it should also help us make things more consistent because… well:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fo2hkcblgv3shtafceagv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fo2hkcblgv3shtafceagv.png" alt="Buttons"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  The Home Page
&lt;/h1&gt;

&lt;p&gt;One of our very first projects will be improving DEV's home page. There are several things we'd love to do here — some of them will be subtle changes and others more drastic and groundbreaking (ok, I'm exaggerating a bit).&lt;/p&gt;

&lt;h2&gt;
  
  
  Goals
&lt;/h2&gt;

&lt;p&gt;We have one main problem to solve with the home page makeover: people struggle to find relevant content. They don't know where to look because the current home page is a bit overwhelming.&lt;/p&gt;

&lt;h1&gt;
  
  
  We need you!
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fxj6vu1z3lr4jxw105wpa.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fxj6vu1z3lr4jxw105wpa.jpg" alt="WE NEED YOU"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, the most important part.&lt;/p&gt;

&lt;p&gt;We don't want to sit in a closed room, moving pixels around and suddenly deploy changes that you may totally hate. We want to stay in touch with you through the entire process. We want to inform you of our ideas and progress. But most importantly, we want you, the DEV Community, to help us by providing feedback, words of wisdom, opinions, and your ideas... DEV is open source and we want to be as transparent as possible. That being said, can you let us know:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What are some things about the home page that you dislike the most?&lt;/li&gt;
&lt;li&gt;What are some things about the home page that you like a lot?&lt;/li&gt;
&lt;li&gt;What did you wish the home page did more of?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thank you so much for your help. We’re going to take your feedback and make DEV a better place for us all! ❤️ Expect another follow-up post soon with more details about Home Page work.&lt;/p&gt;

</description>
      <category>meta</category>
      <category>design</category>
      <category>ux</category>
    </item>
    <item>
      <title>What to use to measure frontend metrics?</title>
      <dc:creator>Paweł Ludwiczak</dc:creator>
      <pubDate>Mon, 03 Feb 2020 10:54:49 +0000</pubDate>
      <link>https://forem.com/pp/what-to-use-to-measure-frontend-metrics-omf</link>
      <guid>https://forem.com/pp/what-to-use-to-measure-frontend-metrics-omf</guid>
      <description>&lt;p&gt;(Photo by &lt;a href="https://unsplash.com/@valeon"&gt;Mitchel Boot&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;I'm curious what are your, DEV Community, choices for &lt;strong&gt;frontend analytics tools&lt;/strong&gt;. And what I mean by that?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Let's say I want to check click-rate on links in DEV sidebar (left) nav to see which are used the least (so maybe we can hide some?).&lt;/li&gt;
&lt;li&gt;Let's say I want to measure how often people click links in right sidebar widgets and break it down per each widget (listings, #help, #ama, #challenge, ...). Are some widgets used less than the others?&lt;/li&gt;
&lt;li&gt;Let's say I want to compare if people prefer to click "Write a post" CTA  in header OR the one in profile pic dropdown.&lt;/li&gt;
&lt;li&gt;Let's say I want to compare if people prefer to go to own profile by clicking the widget in left sidebar OR the one in profile pic dropdown.&lt;/li&gt;
&lt;li&gt;Let's say I want to see how the onboarding performs - what people click on each step, when do they drop-off, how many people skip some fields etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Why? Good design decisions are driven by data. Data also helps validate ideas and its success.&lt;/p&gt;

&lt;p&gt;PS. Bonus points if it's open source :).&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>analytics</category>
      <category>metrics</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
