2021-05-20 06:00

Notion Releases Their Public APIs — Here Is Why I’m Excited

It’s now official: Notion offers APIs ([currently in beta]). This is good news for Craft users like me who is awaiting for a way to move my Notion data into Craft. I don’t have a lot of data but the data that I’ve got, I’d like to move it out. According to my sources close to the Craft team, they are looking at it. No timeline was given. I’m patient.

View comments Notion API Craft
2021-05-16 07:00

Migrating My Content From Hey World to Substack

Yesterday, I put an end to my HEY World experiment. After making the call, I wanted to keep my content and migrate it to Substack. So, I tried the Substack RSS feed import feature, but it wasn’t working. As shown in the following screenshot, the error wasn’t explicit enough to pinpoint the cause of the problem.

Substack’s RSS feed import couldn’t see my HEY World content

I had 23 posts to import, not a big deal, but I preferred not to move my content manually. Trying different variations of the URL didn’t help. Substack simply wouldn’t detect any feeds from HEY World. Here is my solution.

HEY World uses ATOM RSS feed format. I thought Substack couldn’t parse those. The idea was to transform the ATOM RSS feed into something else. After googling for a solution, I remembered about RSSMix. This free web service enables merging many feeds into one. I use it to merge all my personal RSS feeds into a single one to build a publishing timeline. It’s pretty cool1. For my HEY World content migration, I took the ATOM RSS feed with another one and merged the content2. The end-result is another feed but this time in XML format. I went to Substack again and sure enough, the resulting feed could be imported. After the import was completed, all I had to do was to delete posts from the second feed content which wasn’t part of HEY World3. Simple as that.

You can find my Substack page here.

  1. I think I should write about it in a different post.↩︎

  2. RSSMix requires at least two RSS feeds to work. I chose one of mine where there wasn’t too much content associated with it.↩︎

  3. The one thing I would have liked from Substack was a way to select each post individually before hitting the Import button.↩︎

View comments HEY World Substack RSS RSSMix
2021-04-27 06:15

Bye Bye Universe

Nearly a year ago, I introduced my Numeric Citizen Visual Space, a website made with Universe, a website creation application running on iPhone, iPad and macOS. This space never really took off, never attracted trafic, probably because of the lack of a social network dimension to it. In retrospective, this was an experiment more than any thing else. The tool took all the place. Universe is a special application where website are built by using a visual block metaphor. There is nothing like it. I was seduced by it and forgot the end goal of building a web presence to expose my urban exploration photography work. Eventually, I stopped updating my website. I decided to cancel my expensive subscription (159.99$ CAN per year). If there was a free tier, I wold probably keep it, but that’s not the case.

I’m still looking for a better photo sharing solution besides the usual suspects. Glass? Bokeh? Both of these are still under wrap and their future is uncertain. As I’m waiting, I decided to park” my work on a lesser-known place called Ello. Ello is a lot like Tumblr. It’s free and does the job for now.

You can still have a look at my Visual Space up until my subscription expiration date, on May, 17th, 2021. After that date, my work will vanish forever.

View comments Service Universe Subscription Photography
2021-04-17 10:00

Getting Ready for Google’s May 2021 Algorithm Update

My blog visitors traffic from 2019 to 2021

Coming in May, Google is going to tweak their ranking algorithm, yet again, by including new experience metrics into the equation. Those changes were first announced back in May 2020. According to a recent post on Yoast’s blog:

In May 2021, Google will add Core Web Vitals as ranking factors in its algorithm. This means your site’s page speed and page loading time will impact your rankings.

And, from Liz Moorehead of ImpactPlus:

…these page experience signals” will be rolling out in May 2021 as part of an algorithm update, meaning how well you measure up against these page experience factors will positively or negatively affect your rankings after this update takes effect.

After reading this, I was expecting the worst. I felt like it was like a storm waiting to strike. The feeling is not really cool, a feeling of deja vue”. On November 2019, something happened to my blog visitors analytics: it dropped by more than 50% in just a few days. I was astonished, and didn’t really know what happened or if I broke something with my blog. I did some research and found out that it was the consequence of a ranking algorithm change by Google1, an update that put my blog at disadvantage2.

Preparing for this upcoming change, I had to look for ways to minimize the impacts on my main blog, fearing I would lose traffic, again.

The Starting Point

At first, when I started to look into this matter, I discovered the pagespeed insights tool from Google3. Don’t miss this insightful article about why PageSpeed Insights is an important tool. As you might expect, I tried it against my websites. According to this tool, my main blog didn’t score well, both from a mobile user perspective and from a desktop user perspective, albeit it did fair a bit better for the latter. Both scores weren’t in the green range”. I ran the test many times, and sure enough, on average, the scores were bad. Consider the following two scorecards.

Initial scorecard for the desktop version of Numeric Citizen Blog
Initial scorecard for the mobile version of Numeric Citizen Blog with AMP pages enabled

That’s not good, but it serves as the starting point. I had to make improvements on all fronts. Does all WordPress websites need to be slow? They certainly have a bad reputation in that respect. As a Business Plan subscriber on WordPress.com, I get to run my website on its own virtual instance, this makes a big difference. Yet, the next steps weren’t clear to me.

Improving the Mobile Experience

The worst score shows that mobile users were the most affected. How many visitors come from the desktop and how many come from mobile devices? According to my Plausible analytics, the vast majority of my visitors are surprisingly coming from the desktop, not from mobile devices, as shown in the following table. Yet, the score needed some improvements.

Blog visitors by device types

A big change was to remove support for Google’s AMP page format. AMP pages aren’t the best idea for the open web and made my website run slower according to my testing. Disabling AMP support in WordPress.com is as simple as turning off a switch. After doing do, I could already observe big improvements in loading time, but that wasn’t enough to get my score into the green zone. What else could I do?

Revisiting My WordPress Plug-In Usage

WordPress is well-known for its support of plug-ins. The more plug-ins installed, the higher the possibility of a slower than normal website. It’s easy to have a plug-ins overload. For my optimization work, I had to revisit the usefulness of each of them.

I simplified my blog’s main page a bit by removing a rarely used footer widget. This widget allowed people to subscribe to my Mailbrew newsletter. This change did improve response time quite a bit. For some reasons, the Mailbrew widget contained many scripts calling Mailbrew’s home which was increasing latency.

The Twitter timeline widget was removed too; I don’t think people cared much about my latest tweets showing up there4. By removing the sidebar on the main page, content retakes the center stage in a cleaner page layout.

The IndieWeb support plug-ins (three in total: IndieWeb, Micropub, IndieAuth) were disabled as I suspected they could negatively impact the performance. After re-testing the website, speed didn’t change much, those plugins were re-enabled5. Media Cleaner, Mailchimp support were no longer needed and were removed too, but I don’t think they were negatively impacting my website loading time, though.

There are other plug-ins in use like CoBlocks, which adds a richer set of block types in the WordPress editor. This plug-in adds a few scripts and CSS according to my research. By disabling this plug-in, some of my posts would break, not that there are many of them but still, some care is required here.

Adding Two Optimization Services to My Toolbox

In How to speed up WordPress, I discovered two paying services: the first one is WP Rocket, to optimize many internal aspects of my WordPress website and Imagify to optimize images.

After reading on WP Rocket capabilities, I went ahead installing the plug-in. After installing the plug-in, WP Rockets does many optimizations behind the scene without any intervention. Then, I poked around the provided features and started to enable options one-by-one, carefully testing my website at each step, as suggested in the plug-in documentation, to catch if anything was broken. At each step, everything was loading perfectly. At the end of this process, I did a new round of performance testing using the page insight tool, and to my delight, my score went up even more.

In summary, the following options in WP Rocket were enabled:

  • Cache / Enable caching for mobile devices
  • Cache / Enable caching for logged-in WordPress users
  • File Optimization / Minify CSS files
  • File Optimization / Optimize CSS delivery
  • File Optimization / Minify JavaScript files
  • File Optimization / Load JavaScript deferred
  • File Optimization / Delay JavaScript execution
  • Media / LazyLoad for images
  • Media / LazyLoad for iframes and videos
  • Media / Add missing image dimensions
  • Preload cache

All in all, I’m pleased with WP Rocket. The optimizations may not provide a night and day difference, but they do add up to make my website a better web citizen.

Next up, is a companion service to WB Rocket, Imagify. It is simple to install and configure. The free version allows for 500 mb of image content to be optimized. I went with the unlimited version, so I could process all my published content. It took 12 hours to process about 5 GB of images. The end-result is that my image library size was reduced by 62%. That’s a big improvement. As expected, optimized images look pretty much the same as before.

Optimization results from Imagify

Other Considerations

I considered using a content delivery network service (CDN), but after much thought, some internet research, I decided not to do so. My blog isn’t using a lot of heavy content like videos, only some pictures and many screenshots. I don’t think this would have made much of a difference6 for the majority of my visitors7. The following is a Lighthouse test result for speed access according to geographic locations. The next graphic shows where my visitors are coming from.

My website performance by geographic locations
My website visitors origins

My WordPress theme is flexible and allows for many customizations. This means a lot CSS is involved. I’m also using custom fonts which also add some weight to the website. According to SolarWinds’ Pingdom tool, the main page of my blog weights about 784K, where 40% is for the fonts, 27% for images and 26% is for scripts and CSS. Repeated tests show the main page loads in about 3 seconds or less. This doesn’t fit with own observation when I’m visiting my website from my machine, which seems to load a bit faster than in 3 seconds. Three seconds isn’t bad, isn’t? Anyway, I’m not planning to undo my fonts selection as the standard ones are ugly as hell.

Another step was to look at Google-related stuff. Since I’m using Plausible analytics, references to Google Analytics were no longer needed and were removed from WordPress.com configuration settings found in the JetPack settings. Good riddance.

Final Scores and Looking Forward

Final scorecard for the desktop version
Final scorecard for the mobile version with AMP pages enabled

I’m happy with all the improvements I’ve made to my website. The mobile version is where the improvements were the most impressive. It could be better, but I’m utterly happy about where the score stands now.

Keep in mind that WordPress-based sites are dynamically generated. A lot of processing happens behind the scene when hitting the homepage with a browser. My microblog and the site you are reading now are static-generated and are really fast to load. But, if you compare the loading time of all these sites, you’ll find that they are comparable.

Now, the big question: am I ready for Google’s 2021 algorithm update? I think so. Will my optimization efforts be rewarded? Who knows? Google is like a beast that we have to feed and please, who knows if he will like the served meal this time.

By increasing the score of my website for mobile users by as much as 225% and by more than 25% for the desktop users, by meeting most of Google’s requirements for website providing a great user experience”, I hope that the upcoming Google changes in May could be beneficial.

  1. I wasn’t the only victim of Google’s action.↩︎

  2. This change prompted me to change the type of content that I post on my main blog: longer posts with more meaningful content.↩︎

  3. Another useful tool is GTmetrix.↩︎

  4. Anyway, I recently reduced my Twitter usage by a lot, as fully documented in this blog post.↩︎

  5. IndieWeb plugins provide a useful integration of comments from other websites.↩︎

  6. According to my research, my blog is hosted on WordPress.com in the US, where the vast majority of my visitors come from.↩︎

  7. WP Rocket offers a CDN service for 7$ a month. I’m not willing to pay for that.↩︎

View comments Google SEO Optimization WP Rocket WordPress Plug-in
2021-04-14 06:30

Plausible Now Supports APIs

My beloved Google Analytics replacement, Plausible, just announced that their APIs are now out of beta, and ready for consumption. As much as I find this news exciting, I’m turning to the developers community to come up with native applications. I’m really hoping that developers behind applications like Numerico will come up with something for those who no longer trust Google for their analytics needs. See Numerico in action in the following promotional YouTube video.

View comments Analytics Plausible API
2021-04-05 08:15

Instapaper vs Pocket — Which Read Later Service Is Better for Me

As much as I love Craft, in its current version, it is not suitable as a read later solution. I do keep a list of bookmarks within Craft’s, but the article’s content is not fetched and saved into Craft, something Notion is able to do. This list is kept for other purposes like helping me build my Numeric Citizen Introspection newsletter. I need a better reading solution.

Reading is something that requires the least distraction possible. Safari reader mode is great, I use it quite frequently to remove the noise from a webpage, but it is lacking the highlighting feature of Instapaper or Pocket. Using a shortcut to save a text highlight is possible but it is distracting. This is where an app like Instapaper or Pocket comes into play. But which one is the best? For me, it is Pocket1, here is a quick comparison of both solutions.

  • Pocket design is richer while Instapaper is minimalistic, which could be seen as an advantage. Yet, Pocket in that regards is still frictionless for reading.
  • Pocket updates are more frequent.
  • Pocket is more expansive than Instapaper.
  • IFTTT support is more extensive with Instapaper than it is with Pocket.
  • Instapaper allows quick notes to be created next to the highlighted text. It could prove to be useful. Think of it as meta-highlighting.
  • Instapaper seems stuck in the pass when it was created by Marco Arment.
  • Instapaper allows organization of bookmarks into folders, something I wish Pocket would support. I’m a bit compulsive on the organization front.
  • Pocket supports iOS widgets, not Instapaper.
  • Share sheet allows tagging with Pocket which makes me more efficient.
  • Page rendering seems better in Pocket.
  • On the Mac, Instapaper Safari extension doesn’t work. It keeps asking me to authenticate with the application, which I did. See next observation.
  • Both, Pocket and Instapaper, doesn’t support Sign in with Apple within the macOS application; only on the website. Because of this, the Instapaper is useless on the Mac while Pocket supports creating an password for the account which fix this issue.
  • Pocket offers a public profile page where article recommendations can be shared.
  • I have more confidence in Pocket’s future and sustainability than in Instapaper’s.
The following screenshots are page rendering example of the same article from both service.
Instapaper page rendering example
Pocket page rendering example

If Craft is ever updated to extract an article from a website, allows tagging and highlighting, I’ll probably reconsider my use of Pocket. For now, I’m a very happy user of Pocket, a service which helps me read more and better.

My Pocket profil.

  1. I used to be a Pocket user back in the days when the service was started, but somehow I stopped using it, maybe because of Apple’s introduction of the Read later feature in Safari.↩︎

View comments Pocket Instapaper Services Reading