<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Ernest Ojeh</title>
    <link>https://ernestojeh.com/</link>
    <description>Portfolio of Ernest Ojeh, a senior digital product designer and developer</description>
    <language>en</language>
    <lastBuildDate>Wed, 11 May 2022 24:00:00 GMT</lastBuildDate>
    <atom:link href="https://ernestojeh.com/feed.xml" rel="self" type="application/rss+xml"/>
    <item>
      <title>Factory reset Logitech MX Keys Keyboard</title>
      <link>https://ernestojeh.com/factory-reset-mx-keys</link>
      <pubDate>Wed, 11 May 2022 24:00:00 GMT</pubDate>
      <guid>https://ernestojeh.com/factory-reset-mx-keys</guid>
      <description>&lt;p&gt;I recently needed to remove some devices from Logitech&#39;s easy-switch feature, and realised there wasn&#39;t an easy way to do this. I did a search online and luckily found a keyboard shortcut that does just this.&lt;/p&gt;
&lt;img src=&quot;https://ernestojeh.com/img/posts/easy-switch.jpg&quot; /&gt;
&lt;br /&gt;
&lt;h5&gt;How to reset Logitech MX keys&lt;/h5&gt;
&lt;ol&gt;
&lt;li&gt;Unpair your keyboard from Bluetooth settings.&lt;/li&gt;
&lt;li&gt;Press the following keys in this order:&lt;br /&gt;
&lt;span class=&quot;keybutton wide&quot;&gt;esc&lt;/span&gt;
&lt;span class=&quot;keybutton&quot;&gt;O&lt;/span&gt;
&lt;span class=&quot;keybutton wide&quot;&gt;esc&lt;/span&gt;
&lt;span class=&quot;keybutton&quot;&gt;O&lt;/span&gt;
&lt;span class=&quot;keybutton wide&quot;&gt;esc&lt;/span&gt;
&lt;span class=&quot;keybutton&quot;&gt;B&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;The lights on the keyboard should flash multiple times.&lt;/li&gt;
&lt;li&gt;Turn off and on the keyboard, and all devices in easy-switch should be removed.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;p&gt;&lt;a href=&quot;https://www.bestbuy.com/site/questions/logitech-mx-master-3-advanced-wireless-bluetooth-laser-mouse-for-mac-with-ultrafast-scrolling-space-gray/6404201/question/fd78d2d4-68f4-3518-98ab-1e3232b70322#:~:text=Reset%20the%20keyboard%20by%20pressing,will%20be%20ready%20to%20go!&quot; target=&quot;_blank&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;
</description>
      <category>Tips</category>
      <category>Tech</category>
    </item>
    <item>
      <title>How to fix Jekyll after upgrading to macOS 11 Big Sur</title>
      <link>https://ernestojeh.com/fix-jekyll-on-macos-big-sur</link>
      <pubDate>Sun, 08 Nov 2020 24:00:00 GMT</pubDate>
      <guid>https://ernestojeh.com/fix-jekyll-on-macos-big-sur</guid>
      <description>&lt;p&gt;I recently upgraded from MacOS Catalina to Big Sur beta and the first thing I noticed was that my dev environment was broken. My website was setup locally using Jekyll and when I tried to run &#39;&lt;strong&gt;bundle exec jekyll serve&#39;&lt;/strong&gt;, I got this error:&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-shell&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Could&lt;/span&gt;&lt;span&gt; not&lt;/span&gt;&lt;span&gt; find&lt;/span&gt;&lt;span&gt; eventmachine-1.2.7&lt;/span&gt;&lt;span&gt; in&lt;/span&gt;&lt;span&gt; any&lt;/span&gt;&lt;span&gt; of&lt;/span&gt;&lt;span&gt; the&lt;/span&gt;&lt;span&gt; sources&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Run&lt;/span&gt;&lt;span&gt; `&lt;/span&gt;&lt;span&gt;bundle&lt;/span&gt;&lt;span&gt; install`&lt;/span&gt;&lt;span&gt; to&lt;/span&gt;&lt;span&gt; install&lt;/span&gt;&lt;span&gt; missing&lt;/span&gt;&lt;span&gt; gems.&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;p&gt;And running &lt;strong&gt;&#39;bundle install&#39;&lt;/strong&gt; didn&#39;t seem to solve it (even with sudo), it showed this error:&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-shell&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;An&lt;/span&gt;&lt;span&gt; error&lt;/span&gt;&lt;span&gt; occurred&lt;/span&gt;&lt;span&gt; while&lt;/span&gt;&lt;span&gt; installing&lt;/span&gt;&lt;span&gt; eventmachine&lt;/span&gt;&lt;span&gt; (1.2.7), and Bundler cannot continue.&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;Make&lt;/span&gt;&lt;span&gt; sure&lt;/span&gt;&lt;span&gt; that&lt;/span&gt;&lt;span&gt; `&lt;/span&gt;&lt;span&gt;gem&lt;/span&gt;&lt;span&gt; install eventmachine &lt;/span&gt;&lt;span&gt;-v&lt;/span&gt;&lt;span&gt; &#39;1.2.7&#39; &lt;/span&gt;&lt;span&gt;--source&lt;/span&gt;&lt;span&gt; &#39;https://rubygems.org/&#39;`&lt;/span&gt;&lt;span&gt; succeeds&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;before&lt;/span&gt;&lt;span&gt; bundling.&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;p&gt;Running &lt;strong&gt;gem install eventmachine&lt;/strong&gt; also returns an error, and the mkmf.log file showed an error with ruby:&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-shell&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;&quot;xcrun clang -o conftest -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/universal-darwin20 -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/backward -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT    -g -Os -pipe -DHAVE_GCC_ATOMIC_BUILTINS -DUSE_FFI_CLOSURE_ALLOC conftest.c  -L. -L/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib -L. -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.Internal.sdk/usr/local/lib     -lruby.2.6   &quot;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;In&lt;/span&gt;&lt;span&gt; file&lt;/span&gt;&lt;span&gt; included&lt;/span&gt;&lt;span&gt; from&lt;/span&gt;&lt;span&gt; conftest.c:1:&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;In&lt;/span&gt;&lt;span&gt; file&lt;/span&gt;&lt;span&gt; included&lt;/span&gt;&lt;span&gt; from&lt;/span&gt;&lt;span&gt; /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby.h:33:&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/ruby.h:24:10:&lt;/span&gt;&lt;span&gt; fatal&lt;/span&gt;&lt;span&gt; error:&lt;/span&gt;&lt;span&gt; &#39;ruby/config.h&#39;&lt;/span&gt;&lt;span&gt; file&lt;/span&gt;&lt;span&gt; not&lt;/span&gt;&lt;span&gt; found&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;#include &quot;ruby/config.h&quot;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;         ^~~~~~~~~~~~~~~&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/ruby.h:24:10:&lt;/span&gt;&lt;span&gt; note:&lt;/span&gt;&lt;span&gt; did&lt;/span&gt;&lt;span&gt; not&lt;/span&gt;&lt;span&gt; find&lt;/span&gt;&lt;span&gt; header&lt;/span&gt;&lt;span&gt; &#39;config.h&#39;&lt;/span&gt;&lt;span&gt; in&lt;/span&gt;&lt;span&gt; framework&lt;/span&gt;&lt;span&gt; &#39;ruby&#39;&lt;/span&gt;&lt;span&gt; (loaded &lt;/span&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; &#39;/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks&#39;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt; error&lt;/span&gt;&lt;span&gt; generated.&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;checked&lt;/span&gt;&lt;span&gt; program&lt;/span&gt;&lt;span&gt; was:&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;/*&lt;/span&gt;&lt;span&gt; begin&lt;/span&gt;&lt;span&gt; *&lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;1:&lt;/span&gt;&lt;span&gt; #include &quot;ruby.h&quot;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;2:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;3:&lt;/span&gt;&lt;span&gt; int&lt;/span&gt;&lt;span&gt; main&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;int&lt;/span&gt;&lt;span&gt; argc,&lt;/span&gt;&lt;span&gt; char&lt;/span&gt;&lt;span&gt; **&lt;/span&gt;&lt;span&gt;argv&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;4:&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;5:&lt;/span&gt;&lt;span&gt;   return&lt;/span&gt;&lt;span&gt; 0&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;6:&lt;/span&gt;&lt;span&gt; }&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;/*&lt;/span&gt;&lt;span&gt; end&lt;/span&gt;&lt;span&gt; *&lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;package&lt;/span&gt;&lt;span&gt; configuration&lt;/span&gt;&lt;span&gt; for&lt;/span&gt;&lt;span&gt; openssl&lt;/span&gt;&lt;span&gt; is&lt;/span&gt;&lt;span&gt; not&lt;/span&gt;&lt;span&gt; found&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;p&gt;And at the time of writing this post, &lt;a href=&quot;https://github.com/Homebrew/brew/issues/8797#issuecomment-698247386&quot;&gt;Homebrew doesn&#39;t support MacOS 11 Big Sur&lt;/a&gt;, so &lt;strong&gt;&amp;quot;brew install rbenv ruby-build&amp;quot;&lt;/strong&gt; doesn&#39;t work.&lt;/p&gt;
&lt;div class=&quot;block border-solid border border-slate-300 rounded-md p-2 mb-8&quot;&gt;
    &lt;img src=&quot;https://ernestojeh.com/img/posts/homebrew-post.png&quot; class=&quot;object-contain&quot; /&gt;
&lt;/div&gt;
&lt;h5&gt;How to fix command line tools (CLT) in MacOS Big Sur:&lt;/h5&gt;
&lt;p&gt;I did some search online, and found &lt;a href=&quot;https://stackoverflow.com/a/64039371&quot;&gt;this answer on stack overflow&lt;/a&gt; (Which involves installing &lt;a href=&quot;https://developer.apple.com/download/&quot;&gt;Xcode 12 beta&lt;/a&gt;);&lt;/p&gt;
&lt;p&gt;So follow these steps to install rbenv. You need xcode installed for step 4. Also, I updated the steps to match my use case;&lt;/p&gt;
&lt;ul class=&quot;list-disc mb-8 ml-6 text-base sm:text-lg text-slate-900 dark:text-slate-300 leading-loose sm:leading-loose&quot;&gt;
    &lt;li class=&quot;mb-4&quot;&gt;
        &lt;code class=&quot;bg-slate-100 dark:bg-slate-800 px-2 py-2 rounded-md&quot;&gt;
            git clone https://github.com/rbenv/rbenv.git ~/.rbenv
        &lt;/code&gt;
    &lt;/li&gt;
    &lt;li class=&quot;mb-4&quot;&gt;
        &lt;code class=&quot;bg-slate-100 dark:bg-slate-800 px-2 py-2 rounded-md&quot;&gt;cd ~/.rbenv &amp;&amp; src/configure &amp;&amp; make -C src&lt;/code&gt;
    &lt;/li&gt;
    &lt;li class=&quot;mb-4&quot;&gt;
        Add &lt;code class=&quot;bg-slate-100 dark:bg-slate-800 px-2 py-2 rounded-md&quot;&gt;~/.rbenv/bin&lt;/code&gt; to your $PATH for access to the rbenv command-line utility. see: &lt;a href=&quot;https://github.com/rbenv/rbenv#basic-github-checkout&quot; target=&quot;_blank&quot;&gt;https://github.com/rbenv/rbenv#basic-github-checkout&lt;/a&gt;
    &lt;/li&gt;
    &lt;li class=&quot;mb-4 hidden&quot;&gt;
        Make sure &lt;code class=&quot;bg-slate-100 dark:bg-slate-800 px-2 py-2 rounded-md&quot;&gt;export PATH=&quot;$HOME/.rbenv/shims:${PATH}&quot;&lt;/code&gt; was added to your $PATH
    &lt;/li&gt;
    &lt;li class=&quot;mb-4&quot;&gt;
        &lt;code class=&quot;bg-slate-100 dark:bg-slate-800 px-2 py-2 rounded-md&quot;&gt;xcode-select --switch /Applications/Xcode-beta.app/Contents/Developer&lt;/code&gt;
    &lt;/li&gt;
    &lt;li class=&quot;mb-4&quot;&gt;
        Now in your Jekyll project&#39;s root, you should be able to run &lt;code class=&quot;bg-slate-100 dark:bg-slate-800 px-2 py-2 rounded-md&quot;&gt;bundle install&lt;/code&gt; and it should install all missing dependencies.
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Now running &lt;strong&gt;bundle exec jekyll serve&lt;/strong&gt; should start your server.&lt;/p&gt;
&lt;p&gt;I hope this helps someone ✌🏾&lt;/p&gt;
</description>
      <category>Tech</category>
    </item>
    <item>
      <title>Site redesign: Considerations and overview</title>
      <link>https://ernestojeh.com/site-design-2020</link>
      <pubDate>Fri, 29 May 2020 24:00:00 GMT</pubDate>
      <guid>https://ernestojeh.com/site-design-2020</guid>
      <description>&lt;p&gt;I recently started redesigning my website and for the first time, I didn&#39;t start by opening my code editor. All the &lt;a href=&quot;http://namzo.netlify.app/&quot;&gt;previous&lt;/a&gt; versions of this site had mainly been designed in the browser and I wanted to approach this differently and put some more thought into the overall structure of the page and type of content I wanted to showcase.&lt;/p&gt;
&lt;p&gt;This is more important to me now because moving forward I intend to treat this as my continuously evolving little corner of the internet, where I&#39;ll share things that inspire me, what I&#39;m learning, creating etc, so it should be easily scalable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; All this is still a work-in-progress and I&#39;m figuring stuff out as I go, so if you have any tips, suggestions, or questions,  please share them with me &lt;a href=&quot;http://twitter.com/namzo&quot;&gt;on Twitter&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ernestojeh.com/img/posts/site-thumbnail.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;h5&gt;Designing in Figma:&lt;/h5&gt;
&lt;p&gt;I created a lot of explorations before I choose the current design, one major role designing first played was to help in figuring out the grid I wanted to use, and what parts would be reusable (turned into components) when coding.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://ernestojeh.com/img/posts/figma-frames.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;I had some idea of what I wanted the design and layout for the site to be, but I also got some inspiration from sites like &lt;a href=&quot;https://httpster.net/&quot;&gt;httpster&lt;/a&gt;, &lt;a href=&quot;https://www.hoverstat.es/&quot;&gt;hoverstates&lt;/a&gt;, and portfolio sites of designers I admire like &lt;a href=&quot;https://frankchimero.com/&quot;&gt;Frank Chimero&lt;/a&gt; and &lt;a href=&quot;https://paulstamatiou.com/&quot;&gt;Paul Stamatiou&lt;/a&gt;.&lt;/p&gt;
&lt;h5&gt;Typography:&lt;/h5&gt;
&lt;p&gt;I initially picked &lt;a href=&quot;https://fonts.adobe.com/fonts/roc-grotesk&quot;&gt;Roc grotesk&lt;/a&gt; for headings and &lt;a href=&quot;https://fonts.adobe.com/fonts/neue-haas-unica&quot;&gt;Neue Haas Unica&lt;/a&gt; for the body font, but decided to use a single font for header and body, so I went with &lt;a href=&quot;https://abcdinamo.com/typefaces/monument-grotesk&quot;&gt;Monument Grotesk&lt;/a&gt;.&lt;/p&gt;
&lt;h5&gt;Sticking with Jekyll:&lt;/h5&gt;
&lt;p&gt;&lt;a href=&quot;https://jekyllrb.com/&quot;&gt;Jekyll&lt;/a&gt; is a static static site generator written in Ruby that transforms plain text files into websites or blogs. I love it because it doesn&#39;t come with the complexity of setting up a CMS, or databases and I love the idea of being able to create pages or blog posts on my site by pushing a markdown or html file to Github.&lt;/p&gt;
&lt;h5&gt;Switching from Skeleton to Tailwind:&lt;/h5&gt;
&lt;p&gt;For the previous version of my site, I used &lt;a href=&quot;http://getskeleton.com/&quot;&gt;Skeleton&lt;/a&gt; which is a simple responsive CSS boilerplate - I basically used the grid and utility classes, it was light (only 11kb), and worked great but for this redesign I needed more modern and detailed framework that had things like CSS grid, flexbox, colors etc. So that&#39;s where &lt;a href=&quot;https://tailwindcss.com/&quot;&gt;Tailwind CSS&lt;/a&gt; comes in.&lt;/p&gt;
&lt;p&gt;Before I decided on Tailwind, I was considering &lt;a href=&quot;https://tachyons.io/&quot;&gt;Tachyons&lt;/a&gt; or &lt;a href=&quot;https://bulma.io/&quot;&gt;Bulma&lt;/a&gt; but I chose Tailwind because it seemed to fit my needs more and even though it may not be the lightest but I love how extendable it is, and also there are ways to &lt;a href=&quot;https://tailwindcss.com/docs/controlling-file-size/&quot;&gt;purge unused styles&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;To make setting up my new site easier, I used a &lt;a href=&quot;https://github.com/mhanberg/jekyll-tailwind-starter&quot;&gt;Jekyll tailwind starter template&lt;/a&gt; (by &lt;a href=&quot;https://github.com/mhanberg&quot;&gt;@mhanberg&lt;/a&gt;)&lt;/p&gt;
&lt;h5&gt;Hosting:&lt;/h5&gt;
&lt;p&gt;Nothing changed here. My website is still hosted on Github, and deployed using Netlify.&lt;/p&gt;
&lt;h5&gt;Photo blog:&lt;/h5&gt;
&lt;p&gt;I used to use &lt;a href=&quot;https://www.netlify.com/products/large-media/&quot;&gt;Netlify large media&lt;/a&gt; + GitLFS to store my photos and manually create new pages for photos (similar to blog posts), but I wanted something with less friction so I decided to move the photo part of this site to a separate repo and switched to using &lt;a href=&quot;https://github.com/maxvoltar/photo-stream&quot;&gt;photostream&lt;/a&gt; (by &lt;a href=&quot;https://twitter.com/maxvoltar&quot;&gt;@maxvoltar&lt;/a&gt;) - It&#39;s an opensource photo blog with cool features like lazy loading, managing image resolution depending on bandwidth, and it&#39;s easy to add a new photo - Just drop into a folder and it&#39;s file name becomes the url.&lt;/p&gt;
&lt;h5&gt;Next Steps:&lt;/h5&gt;
&lt;p&gt;I&#39;m still working on it, but so far I&#39;m happy with the base structure I have for now. Next I&#39;m considering adding some interaction animations in a few places, optimizing images for mobile devices, and sharing some more posts that explains my process in detail.&lt;/p&gt;
</description>
      <category>Design</category>
    </item>
    <item>
      <title>What is UX?</title>
      <link>https://ernestojeh.com/what-is-ux</link>
      <pubDate>Tue, 11 Jul 2017 24:00:00 GMT</pubDate>
      <guid>https://ernestojeh.com/what-is-ux</guid>
      <description>&lt;p&gt;A short exchange I had with an Immigration official at the airport in Accra yesterday;&lt;/p&gt;
&lt;div class=&quot;chat-wrap&quot;&gt;
  &lt;div class=&quot;chat pull-left&quot;&gt;
    &lt;small class=&quot;font-medium&quot;&gt;Immigration Lady:&lt;/small&gt;
    &lt;p&gt;Your profession is UX Designer? What is UX?&lt;/p&gt;
  &lt;/div&gt;
  &lt;div class=&quot;chat pull-right&quot;&gt;
    &lt;small class=&quot;font-medium&quot;&gt;Me:&lt;/small&gt;
    &lt;p&gt;It&#39;s User Experience. (Then I go ahead to explain)&lt;/p&gt;
  &lt;/div&gt;
  &lt;div class=&quot;chat pull-left&quot;&gt;
    &lt;small class=&quot;font-medium&quot;&gt;Immigration Lady:&lt;/small&gt;
    &lt;p&gt;Then you should write &quot;User Experience&quot;. Not everyone knows what UX means.&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;
</description>
      <category>Tech</category>
    </item>
    <item>
      <title>Jekyll snippets</title>
      <link>https://ernestojeh.com/jekyll-snippets</link>
      <pubDate>Thu, 08 Jun 2017 24:00:00 GMT</pubDate>
      <guid>https://ernestojeh.com/jekyll-snippets</guid>
      <description>&lt;p&gt;This is just a quick post listing a few of the jekyll snippets I&#39;m using on this site. I&#39;ve been running this site on github pages for a few years now, and I love how simple it is to setup and how lightweight it is.&lt;/p&gt;
&lt;h5&gt;Show reading time&lt;/h5&gt;
&lt;p&gt;This shows how much time in minutes it would take to complete reading a post, in the format &amp;quot;3 min read&amp;quot;.&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-liquid&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;assign&lt;/span&gt;&lt;span&gt; words = content | &lt;/span&gt;&lt;span&gt;number_of_words&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  {% &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; words &lt;/span&gt;&lt;span&gt;&amp;#x3C;&lt;/span&gt;&lt;span&gt; 270&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    1 min&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  {% &lt;/span&gt;&lt;span&gt;else&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    {{ words | &lt;/span&gt;&lt;span&gt;divided_by:135&lt;/span&gt;&lt;span&gt; }} mins&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;endif&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;h5&gt;Auto-load minified sass files inline&lt;/h5&gt;
&lt;p&gt;So, I came across this snippet when I was trying to find a way to dynamically detect critical above-the-fold css in order to optimize page speed. It doesn&#39;t exactly do that, but close. I don&#39;t have so much css on this site, so I basically load a combined version of my minified sass files inline.&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-liquid&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;capture&lt;/span&gt;&lt;span&gt; include_to_scssify %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    {% &lt;/span&gt;&lt;span&gt;include&lt;/span&gt;&lt;span&gt; critical.scss %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;endcapture&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{{ include_to_scssify | &lt;/span&gt;&lt;span&gt;scssify&lt;/span&gt;&lt;span&gt; }}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;p&gt;Also, it was one of the things I did to get a perfect score on &lt;a href=&quot;https://developers.google.com/speed/pagespeed/insights/?url=ernestojeh.com&amp;amp;tab=desktop&quot; target=&quot;_blank&quot;&gt;Google Pagespeed Insights&lt;/a&gt;.&lt;/p&gt;
&lt;br /&gt;
&lt;h5&gt;Show latest post on home page&lt;/h5&gt;
&lt;p&gt;Yesterday, I added a section on the homepage that shows the latest post published on this site. I wasn&#39;t sure this was going to be possible but a quick search got me this;&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-liquid&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;assign&lt;/span&gt;&lt;span&gt; post = site.posts.first %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  {% &lt;/span&gt;&lt;span&gt;assign&lt;/span&gt;&lt;span&gt; content = post.content %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;include&lt;/span&gt;&lt;span&gt; post-home.html %}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;p&gt;And then in your &amp;quot;_includes/post-home.html&amp;quot;, you add this;&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-liquid&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; post.title %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  {{ post.title }}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  {{ post.date | &lt;/span&gt;&lt;span&gt;date_to_string&lt;/span&gt;&lt;span&gt; }}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{% &lt;/span&gt;&lt;span&gt;endif&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;{{ post.excerpt | &lt;/span&gt;&lt;span&gt;strip_html&lt;/span&gt;&lt;span&gt; | &lt;/span&gt;&lt;span&gt;truncatewords:18&lt;/span&gt;&lt;span&gt; }}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;p&gt;Note, I added a &amp;quot;truncatewords:18&amp;quot; to limit the text excerpt. Take it out if you don&#39;t need it.&lt;/p&gt;
&lt;br /&gt;
&lt;h5&gt;Show recent posts on post page&lt;/h5&gt;
&lt;p&gt;This basically shows the recently published posts on your site. You can change the limit to modify the number of posts shown.&lt;/p&gt;
&lt;pre class=&quot;shiki shiki-themes github-light github-dark&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-liquid&quot;&gt;&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  {% &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; post &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; site.posts &lt;/span&gt;&lt;span&gt;limit:&lt;/span&gt;&lt;span&gt;3&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    {{ post.title }}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;    Published on {{ post.date | &lt;/span&gt;&lt;span&gt;date_to_string&lt;/span&gt;&lt;span&gt; }}&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span&gt;  {% &lt;/span&gt;&lt;span&gt;endfor&lt;/span&gt;&lt;span&gt; %}&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;p&gt;And.. that&#39;s it. Thanks for reading.&lt;/p&gt;
</description>
      <category>Tech</category>
    </item>
  </channel>
</rss>
