• If you want a peak at my current reading notes management workflow, you might find this video interesting (Craft, Bear 2, Omnivore, Readwise).

  • 🔗 Mobivention announces its own iOS App Marketplace

    As detailed by the company in a press release, mobivention’s App Marketplace will let developers distribute B2B and B2C apps to their customers outside the iOS App Store. “The mobivention App marketplace is primarily aimed at business customers who are looking for an alternative solution for distributing their apps,” mobivention explains.

    Tired: there is an app for that. Wired: There is a marketplace for that. 🤓

  • How Do I Read and Process an Article

    Let’s say I stumble on an article I wish to read and process. I’ll follow the following steps, covering the collection and archival stages.

    1. Save the article in Omnivore1,2.
    2. Set tags in Omnivore.
    3. Read the article, highlight text as needed and write comments if required.
    4. Summarize the article using Raycast AI. I have a Keyboard Maestro macro for that.
    5. Copy and paste the summary into the Omnivore notebook accompanying the article.
    6. Archive the article in Omnivore.
    7. Export the Readwise highlights (done automatically from Omnivore syncing).
    8. Import the created markdown files into Bear.
    9. Adjust tags if required.

    I realize this workflow is essentially for the Mac. Nothing like this can be done on the iPad without a major tweak or two.

    You can find this article on the “My Micro-Workflows Explained” website.


    1. The article can be saved from Inoreader, Reeder or the Arc Browser. ↩︎

    2. Some articles come in using my Omnivore’s email address that I use for subscribing to some newsletters. ↩︎

  • Each week, I use this template in Things 3 to help me out with my planning. Each Sunday, I duplicate the whole project and rename it accordingly. I love Things 3[^1]. [^1] I tried to do this in Apple Reminders but I prefer Things 3 experience.

  • Today I added a new global changelog1 page to my metablog. The changelog will cover all the changes applied to my digital publishing space.


    1. A changelog is a document or record that details the changes made in a software project. It typically includes information about new features, enhancements, bug fixes, and any modifications made to the software between different versions or updates. ↩︎

  • Some Hurdles to Fix Already

    I encountered my first few hurdles in transposing my content from a Craft document to a Micro.blog. Craft enables rich document content and supports block types like JSON output or command line examples. Posts containing these need special Markdown attention. Thanks to some help1, I figured that out, so the output looks ok. Next up are documents with images like screenshots. When exporting from Craft to Ulysses, images are inserted in Ulysses as references to Craft’s backend storage. When posting on Micro.blog, the images are not uploaded on Micro.blog’s backend. I need to manually download each image and insert them in Ulysses so they get uploaded to Micro.blog and be self-contained there. If I ever drop Craft, I want the images in my post to stay valid and display correctly.


    1. I want to thank MacGPT here for the hint. 😅 ↩︎

  • Browsing Past Published Articles on Ghost

    Circumventing Ghost’s limited posts management capabilities.

    List of publications in Ghost admin panel.

    I recently decided to spend some time editing past articles published on my Numeric Citizen Space website. I first thought that by going to my Ghost admin page, I could quickly browse past published articles by month. I couldn’t be more wrong. In fact, Ghost offers limited post management capabilities, thanks to its limited content browsing capabilities. I cannot go back, say, list articles published early in 2023. I can sort by ascending or descending order, but from there, I have to scroll through a long, dynamically created list of posts. It’s not very effective for a website with 600-plus posts. I had to find a different option to locate a post for an update. This is where Ghost’s content APIs come into play.

    The following API request doesn’t do the job (API key voluntarily removed!):

    curl -H "Accept-Version: v5.0" "https://numeric-citizen-introspection.ghost.io/ghost/api/content/posts/?key={APIkeygoeshere}&fields=title,url,published_at,updated_at&filter=published_at:>2024-01-01%2Bpublished_at:<2024-02-01" | json_pp
    

    Let me explain what is this API request.

    First, I’m going to the request using the macOS command line, hence the curl command. Next, the whole query follows in quotes. I query the content/posts API endpoint. Next, I pass my API key, followed by a field selection (&fields), and next with the filter using the published date between two dates. Finally, I pipe the results in the pretty JSON print macro (is this a macro?) so the output looks like this:

    jfm@CraftingMAChine ~ % curl -H "Accept-Version: v5.0" "https://numeric-citizen-introspection.ghost.io/ghost/api/content/posts/?key={API-key-goes-here}&fields=title,id,url,published_at,updated_at&filter=published_at:>2024-01-01%2Bpublished_at:<2024-02-01" | json_pp
    	{
    	   "meta" : {
    	      "pagination" : {
    	         "limit" : 15,
    	         "next" : null,
    	         "page" : 1,
    	         "pages" : 1,
    	         "prev" : null,
    	         "total" : 9
    	      }
    	   },
    	   "posts" : [
    	      {
    	         "id" : "65b6a09840566000015b0d37",
    	         "published_at" : "2024-01-28T13:50:19.000-05:00",
    	         "title" : "My Weekly Creative Summary for the Week of 2024/03",
    	         "updated_at" : "2024-01-28T13:50:19.000-05:00",
    	         "url" : "https://numericcitizen.me/my-weekly-creative-summary-for-the-week-of-2024-03/"
    	      },
    	      {
    	         "id" : "65b6540640566000015b0cf7",
    	         "published_at" : "2024-01-28T08:23:26.000-05:00",
    	         "title" : "Special Message to Paying Subscribers",
    	         "updated_at" : "2024-01-28T08:23:26.000-05:00",
    	         "url" : "https://numericcitizen.me/special-message-to-paying-subscribers/"
    	      },
    	      {
    	         "id" : "65b16e25bc7fde0001314ccb",
    	         "published_at" : "2024-01-24T15:09:24.000-05:00",
    	         "title" : "The Mac Turns 40",
    	         "updated_at" : "2024-01-24T15:09:24.000-05:00",
    	         "url" : "https://numericcitizen.me/the-mac-turns-40/"
    	      },
    	      {
    	         "id" : "65ad35418532ae000169ddd2",
    	         "published_at" : "2024-01-21T10:22:33.000-05:00",
    	         "title" : "My Weekly Creative Summary for the Week 2024/02",
    	         "updated_at" : "2024-01-21T10:22:33.000-05:00",
    	         "url" : "https://numericcitizen.me/my-weekly-creative-summary-for-the-week-2024-02/"
    	      },
    	   ]
    	}
    

    Next, I copy the post ID of one article and paste it my browser for edition using this special URL:

    https://numeric-citizen-introspection.ghost.io/ghost/#/editor/post/652e6eedb8a2650001ad9c5b

    This URL brings me directly into the Ghost editor, provided that i was already authenticated with my account. That’s pretty much it. It could be much simpler. For this, I miss WordPress.

    You can find the Ghost API document right here.

  • Let's start something new. Again.

    This blog is a Micro.blog hosted version of the Craft-hosted version. I’m currently in the slow process of copying my content over here.

  • Browsing Past Published Articles on Ghost

    Image.png

    I recently decided to spend some time editing past articles published on my Numeric Citizen Space website. I first thought that by going to my Ghost admin page, I could quickly browse past published articles by month. I couldn’t be more wrong. In fact, Ghost offers limited post management capabilities, thanks to its limited content browsing capabilities. I cannot go back, say, list articles published early in 2023. I can sort by ascending or descending order, but from there, I have to scroll through a long, dynamically created list of posts. Not very effective for a 600-plus posts website. I had to find a different option to locate a post up for an update. This is where Ghost’s content APIs come into play.

    The following API request doesn’t the job (API key voluntarly removed!):

    curl -H "Accept-Version: v5.0" "https://numeric-citizen-introspection.ghost.io/ghost/api/content/posts/?key={APIkeygoeshere}&fields=title,url,published_at,updated_at&filter=published_at:>2024-01-01%2Bpublished_at:<2024-02-01" | json_pp

    Let me explain what is this API request.

    First, I’m going the request using macOS command line, hence the curl command. Next, the whole query follows in quotes. I query the content / posts API endpoint. Next, I pass my API key, followed by a fields selection (&fields), next with the filter using the published date between two dates. Finally, I pipe the results in the pretty JSON print macro (is this a macro?) so the output looks like this:

    jfm@CraftingMAChine ~ % curl -H "Accept-Version: v5.0" "https://numeric-citizen-introspection.ghost.io/ghost/api/content/posts/?key={API-key-goes-here}&fields=title,id,url,published_at,updated_at&filter=published_at:>2024-01-01%2Bpublished_at:<2024-02-01" | json_pp
    {
       "meta" : {
          "pagination" : {
             "limit" : 15,
             "next" : null,
             "page" : 1,
             "pages" : 1,
             "prev" : null,
             "total" : 9
          }
       },
       "posts" : [
          {
             "id" : "65b6a09840566000015b0d37",
             "published_at" : "2024-01-28T13:50:19.000-05:00",
             "title" : "My Weekly Creative Summary for the Week of 2024/03",
             "updated_at" : "2024-01-28T13:50:19.000-05:00",
             "url" : "https://numericcitizen.me/my-weekly-creative-summary-for-the-week-of-2024-03/"
          },
          {
             "id" : "65b6540640566000015b0cf7",
             "published_at" : "2024-01-28T08:23:26.000-05:00",
             "title" : "Special Message to Paying Subscribers",
             "updated_at" : "2024-01-28T08:23:26.000-05:00",
             "url" : "https://numericcitizen.me/special-message-to-paying-subscribers/"
          },
          {
             "id" : "65b16e25bc7fde0001314ccb",
             "published_at" : "2024-01-24T15:09:24.000-05:00",
             "title" : "The Mac Turns 40",
             "updated_at" : "2024-01-24T15:09:24.000-05:00",
             "url" : "https://numericcitizen.me/the-mac-turns-40/"
          },
          {
             "id" : "65ad35418532ae000169ddd2",
             "published_at" : "2024-01-21T10:22:33.000-05:00",
             "title" : "My Weekly Creative Summary for the Week 2024/02",
             "updated_at" : "2024-01-21T10:22:33.000-05:00",
             "url" : "https://numericcitizen.me/my-weekly-creative-summary-for-the-week-2024-02/"
          },
          {
             "id" : "65ac3aa68532ae000169ddb6",
             "published_at" : "2024-01-20T16:28:20.000-05:00",
             "title" : "New IT Rules at the Office Prompts Me to Revisit My Mac Usage at Home",
             "updated_at" : "2024-01-20T16:28:20.000-05:00",
             "url" : "https://numericcitizen.me/new-it-rules-at-the-office-prompts-me-to-revisit-my-mac-usage-at-home/"
          },
          {
             "id" : "65a3ed6e8532ae000169dbe0",
             "published_at" : "2024-01-14T09:24:25.000-05:00",
             "title" : "My Weekly Creative Summary for the Week of 2024/01",
             "updated_at" : "2024-01-14T09:24:25.000-05:00",
             "url" : "https://numericcitizen.me/my-weekly-creative-summary-for-the-week-of-2024-01/"
          },
          {
             "id" : "659e86018532ae000169dbbf",
             "published_at" : "2024-01-10T06:58:44.000-05:00",
             "title" : "Adobe Lightroom 2016-2024 RIP — How To Migrate From Adobe Lightroom to Photomator",
             "updated_at" : "2024-01-10T06:58:44.000-05:00",
             "url" : "https://numericcitizen.me/adobe-lightroom-2016-2024-rip-how-to-migrate-from-adobe-lightroom-to-photomator/"
          },
          {
             "id" : "659d32eb8532ae000169dba7",
             "published_at" : "2024-01-09T06:53:21.000-05:00",
             "title" : "Apple Vision Pro — The Missing Apple Keynote Case",
             "updated_at" : "2024-01-09T06:53:21.000-05:00",
             "url" : "https://numericcitizen.me/apple-vision-pro-the-missing-apple-keynote-case/"
          },
          {
             "id" : "659953468532ae000169db6d",
             "published_at" : "2024-01-06T08:27:04.000-05:00",
             "title" : "A Tough Year Ahead for Apple",
             "updated_at" : "2024-01-06T16:52:59.000-05:00",
             "url" : "https://numericcitizen.me/a-though-year-for-apple/"
          }
       ]
    }
    

    Next, I copy the post ID of one article and paste it my browser for edition using this special URL:

    https://numeric-citizen-introspection.ghost.io/ghost/#/editor/post/652e6eedb8a2650001ad9c5b

    This URL brings me directly into the Ghost editor, provided that i was already authenticated with my account. That’s pretty much it. It could be much simpler. For this, I miss WordPress.

    You can find the Ghost API document right here.

    https://ghost.org/docs/content-api/

    This article is also available here.

  • My Content Creator Workflow as of 2023-11

    My-Creative-Workflow-2023-11.png

    My creative workflow as of 2023-11. You can download an higher resolution here.

    This 2023-11 version has a few changes and a cleaner and more focused workflow. Before going into specific details, I wanted to remind readers that I support the " POSSE " idea. You can read one post about it here. This workflow presented reflects this. As a reminder, here is one definition of the POSSE principle according to ChatGPT:

    “POSSE” is an acronym that stands for “Publish (on your) Own Site, Syndicate Elsewhere.” It’s a content publishing model that first encourages publishing content on your own website, and then syndicating (or sharing) that content on other platforms or websites. This approach is often recommended in digital marketing and personal branding strategies, as it allows individuals to maintain control over their original content while still benefiting from the audience and engagement found on larger, established platforms. The POSSE model is particularly relevant in the context of blogging, social media, and online content creation.

    Welcome AI, welcome ChatGPT, Dall-E, Midjourney

    AI is making an official entry in my creative workflow. I wrote a long piece stating my guidelines for using AI in my creative work. You should read those and maybe get some inspiration out of them. The header image of this article was generated using Dall-E.

    A new setup to share files easily

    Dropshare coupled with Short.io enables me to share files like screenshots or other things. The setup was documented in detail in a previous article on this meta blog. Behind the scene, Dropshare is configured to use Backblaze to store files in a S3 bucket.

    Bye bye to my Digital Garden

    I came to the conclusion that a digital garden isn’t something for me. I decided to move some portions into my official about page. You can still access the remains of the garden, here.

    A fun experience with Tinylytics

    I’ve been using Plausible for my analytics needs but a cool guy (the same who’s also working with Manton Reece on Micro.blog hosting service, developed a lightweight version which I decided to support.

    Safari-Personal (Default) — Sites tinylytics@2023-11-23@20.13.49@2x.png

    The Tinylytics dashboard

    Google Sheets is out too

    I was using Google Sheets to save links to every post on Micro.blog via an IFTTT automation. I no longer feel the need to key this in place.

    Brief

    Brief is now part of my workflow because they also took over Mailbrew, both are forming a powerful content consumption enabler duo. Some of my Mailbrew newsletters contain Brief as a source for news, which is heavily using AI for summarization.

  • My Reading Workflow Explained

    The many facets of my reading workflow needed to be examined and studied. When do I read, using which device and application? How is my reading affecting or contributing to my creative workflow? What happens when I find something interesting while I’m reading? How do I store important information pieces? How do I get back to them? How often and for what purpose? The answer to these numerous questions drive my choice of application for reading.

    I’ve been thinking for a long time about ways to improve my reading workflow for a few reasons. First, I want to read more and more consistently. Two, I’m not sure which app is better to support this. I’ve been switching read-later service many times and until now, I wasn’t able to settle on one. Third, when reading, I want to get the most out of it and use the gathered knowledge more effectively. The following diagram depicts the flow of my reading workflow, inspired by the CODE methodology. Each box is explained in more detail below.

    Freeform-My Reading Workflow as of 2023-09@2023-09-30@21.26.57@2x.png

    First, let’s start with my possible reading sources.

    1. RSS feeds can be imported directly into Omnivore by using the RSS feed address. I follow a few dozen feeds via Inoreader and Reeder, but just a few are selected to go directly into Omnivore for the quality of their content. As I’m writing this, four feeds are configured for direct importation. This feature was only recently introduced into Omnivore, and it works great. Occasionally, I go into Omnivore, select the RSS tag and start reading from there.

    Image.png

    1. Reeder is a very popular RSS reader. There are so many of them, but something hard to describe in Reeder sets it apart. Simplicity but not simplistic might be a good characterization. Reeder is also a great Inoreader client. Recently, I decided that for interesting articles in Reeder that I want to read, I save them into Things 3. One of the reasons is that when the article is read and analyzed, I can check it off from the to-do list, and Things will log this into the LogBook. I like the journaling capabilities of Things 3. I use it in my weekly creative summary.

    Image.png

    1. Safari is my go-to browser. Surfing the web triggers reading opportunities. When I’m not ready to plunge into a 2500-word article, I use the Omnivore Safari extension to save it for a read later occasion. Another possibility is to save a bookmark directly into Craft from Safari (via Copy & Paste, thanks to Craft Safari extension limitations). When this happens, it’s because I was looking for something in Safari and needed to keep the bookmark for later use. The same process sometimes happens right in Reeder. In that case, a simple “copy & paste” of the bookmark is executed from Reeder to Craft. But, overall, I try to save a bookmark into Things 3 for the same reason I do it from Reeder. Things 3 helps me keep track in an effective way of all my future readings.

    Image.png

    1. Things 3 helps me manage and be consistent with my creative activities. Unsurprisingly, it plays a role in the Collect portion of my CODE workflow. For each article I plan to read and possibly analyze, I create a new task in Things 3 with a link to the article in the task’s note. As I wrote previously, each time I check an item from the list, the item is logged in Things 3’s logbook. This way, I keep track of what I have read and when.

    Image.png

    1. From Things 3, I’ll open the link in Safari for the article I decided to read. Sadly, I cannot save the link from Things 3 to Omnivore directly. It’s possible only through Omnivore’s Safari extension. From there, if I think the article is long enough and needs more thorough reading, I’ll send it to Omnivore. I might save the bookmark into Craft also, depending on my needs. I often visit an article only to copy and paste its URL into a Craft document as a reference. However, I could directly import the article’s content into a new Craft document using a “CraftClip” shortcut. In this scenario, I want to import knowledge into Craft to backlink to it and select the portion to include as a quote in another document.
    2. Omnivore is my go-to “read-later” service. I won’t write a review here (maybe for another article). Once the content is saved into Omnivore (via the Safari browser extension or automatically from the few selected RSS feeds, articles are stored in Omnivore’s Inbox and are available for reading, highlighting, annotation and tagging. The nice thing about Omnivore is that it is free, it is constantly evolving, and, more importantly, I can copy and paste all my highlights and annotations in one click and paste them into a Craft document, and they will be formatted exactly the way it should be.
    3. Omnivore highlights are synced to Readwise. I also copy and paste the link to the stored article back into Craft for easier and quicker access.

    Image.png

    1. Central to my creative workflow, Craft is a repository of bookmarks from Safari, Reeder, and highlights stored in Readwise. I import those from time to time to consolidate knowledge. Anybox, a bookmarks manager, has a different role of holding bookmarks about specific subjects without contextual information. This is why I don’t consider Anybox part of my reading workflow.
    2. When working on a review or an article about a specific subject, I will create a unique document container in Craft based on a template I made (the template is available for sale here). Everything I read, potentially highlighted and annotated, might be stored in this container as a reference, a bookmark, or the full article. The idea is to bring related things closer together so I can build relations.

    My reading workflow might look complex but it really isn’t. I’ve been testing it while reading articles about the iPhone 15 Pro Max. It’s not perfect but it is close to be just right for my needs. There are always possible improvements, but those will come in due time. Previously, my workflow was centered around Craft, you might take a look at the following video if you are curious.

    My Reading Workflow Using Craft

    Still to come: how do I read the newsletters I subscribe to? 🤔

  • Moving Out of WordPress — The DNS Side of the Story

    The migration from GoDaddy to CloudFlare was mandatory to support the ability to use a custom domain with Ghost at the root level (numericcitizen.me), using CNAME. This is something that is not possible using GoDaddy. The process is relatively simple once you’ve done your homework of reading ALL the documentation from both GoDaddy and CloudFlare.

    WordPress: numericcitizen.me current config

    Hosted on GoDaddy, the host file:

    numericcitizen.me.txt

    Image.png

    WordPress configuration to use numericcitizen.me

    Image.png

    Image.png

    website will only be available through: https://numericcitizen.wordpress.com once domain disconnected

    Ghost: numericcitizen-introspection.blog current configuration

    Hosted on CloudFlare

    Image.png

    CloudFlare host file:

    numericcitizen-introspection.blog.txt

    Image.png

    Start of DNS changes

    Because I’m planning to use a root domain for Ghost, as per this Ghost article, GoDaddy doesn’t support root domain:

    Image.png

    The numericcitizen.me domain will need to be transferred from GoDaddy to CloudFlare first.

    1. On GoDaddy: Update contact information on the source domain on GoDaddy to be exactly the same for both domains.
    2. On GoDaddy: Unlock the domain to allow for registrar change.

    Image.png

    1. On CloudFlare: Add the domain name to my CloudFlare account.

    Image.png

    Image.png

    CloudFlare name servers:

    hans.ns.cloudflare.com

    noor.ns.cloudflare.com

    1. On GoDaddy, edit nameservers on the domain:

    Image.png

    Proceed to the CloudFlare procedure, but first, add the numericcitizen.me domain to the CloudFlare account using this article. Then, continue using GoDaddy’s procedure. Once done, proceed with the following steps.

    Steps to follow once the domain has been successfully transferred to CloudFlare.

    1. Disconnect numericcitizen.me from WordPress (website should stop resolving under numericcitizen.me except https://numericcitizen.wordpress.com).
    2. In the GoDaddy domain manager, remove two A records pointing to WordPress servers (192.0.78.*).
    3. Add CNAME @ numeric-citizen-introspection.ghost.io so that https://numericcitizen.me (root domain) resolves to numeric-citizen-introspection.ghost.io.

    The use of a CNAME for a root domain is explained in super and great details here.

    1. Wait for propagation using https://www.whatsmydns.net (like a few hours).
    2. In Ghost(Pro) > Domain, Update current domain:
      1. change the following according to the actual process.

    Image.png

    Image.png

    Safari-Ghost(Pro) - Numeric Citizen Blog@2023-03-24@15.55.40@2x.png

    Safari-Ghost(Pro) - Numeric Citizen Blog@2023-03-24@15.55.48@2x.png

    1. Still using Ghost(Pro) > Domain, set new ghost subdomain to numericitizen-me.ghost.io
    2. Wait for the process to complete
    3. Test https://numericcitizen.me
    4. Test intra-links.

    Done.

  • Why It’s So Hard to Make Up My Mind About Digital Tools?

    This article posted back in 2022, was a glimpse at a great moment of confusion. Following the publication of “Things That Don’t Stick With Me”, the next logical thing to do now is to talk about my seemingly permanent state of confusion with my choices of many digital tools.

    In short, the problem is that, in many cases, I use different apps to do the same thing. The worst case to come to my mind is RSS feeds readers. After many years with News Explorer, I tried NetNewsWire, Reeder and Inoreader. Oh, I forgot about ReadKit too. The light at the end of the tunnel is in sight because News Explorer is now out. After discovering and experimenting with Inoreader, I concluded that News Explorer no longer fit my needs. One of them being the text-highlighting capability. That is one less app to use or consider. NetNewsWire simplicity makes the app attractive. Reeder’s design is also attractive. I do use Inoreader with Inoreader web service. I’m not decided yet on the next steps: which one should I keep?

    Twitter vs Tweetbot was another example. When I was on Twitter, I constantly switched between those two. The funny thing is that for those still on Twitter, third-party apps for Twitter are all dead. This would have fixed my issue! Now, with Mastodon, it’s worst because of the plethora of available apps. There are too many to list here and the list keeps expanding. Thankfully, I don’t use Mastodon much, but if I did, well, you know the drill by now, right?

    On Micro.blog, same issue. I’m constantly moving between the original Micro.blog app and Gluon. Both are great but latter is a bit more complete.

    Box and Dropbox used to be examples of my indecision before I went all in with iCloud Drive a few years ago. I still use Google’s Drive for storing Google’s Sheets updated via an IFTTT automation. That, I’m no longer sure about its usefulness.

    Clipboard managers were another source of conflicting views. There were three apps in that space: Copied, Pastebot and Unclutter. I’ve settled on the latter because it is so much more than a clipboard manager. Yet, it took me way too long before deciding which one to keep. I don’t use a clipboard manager on the iPhone anymore.

    Unclutter window on my Mac — Three Areas: the clipboard history, content of a folder and content of a specific text file.

    • Here’s another one: Apple’s Notes, Notion or Craft. I use Craft 95% of the time, Notes 4% of the time, and Notion 1% for the rest. Oh, I forgot to mention Tot, a nifty tech editor! What is preventing me from settling on Craft for everything? I use Notion for storing information about a sideline project because Craft is not as good for that type of information.
    • For my photo processing and retouching needs: Acorn 7, Pixelmator Pro, Photomator, Adobe Lightroom CC and Lightroom Classic are installed somewhere on my devices. I should probably drop Adobe Suite, but It would be a mess to retrieve all my photos backed up to the Adobe Cloud. I’m being lazy here. I’m really enjoying Photomator on my iPad and iPhone. This application is better designed than Apple’s Photos for photo editing. Photomator is coming soon to the Mac, too, apparently, to make matters worst, I guess. I’m on the waiting list for a TestFlight invite.
    • As a computer performance enthusiast, I use utilities like Sensei, iStats Menu, iStatistica Pro, and the open-source project “Stats” available on GitHub. I use iStats Menu on my Mac mini, Stats on my Mac Pro (used for my SDDCbox project) and iStatistica Pro on my MacBook Air. Sensei should probably be dropped.

    Image.png

    • Reddit, Apollo, Slide and Comet. There are all Reddit clients. They all offer nice and different things when consuming or interacting with Reddit content. For example, Slide comes with the best widgets, but is lacking active development and isn’t the best at browsing content. Comet isn’t been updated in two years. Apollo runs on Apple Silicon Macs but suffers from some display bugs.
    • Password Managers, another story of indecision and laziness: 1Password and Apple’s Password Keychain. I should move from 1Password to Apple’s solution once and for all. Maybe if Apple had a discreet password manager? I’m undecided.
    • Tasks managers represent another case of spreading myself all over the place. For personal to-dos, I depend on Apple’s Reminders. For my creative workflow, I depend on Things 3 but there was a time last year when I tried using Craft as a to-do manager. It didn’t go well, and I decided to bring back Things 3 in my workflow. I documented my change of heart in this video. One comforting thought, I know that I’m not alone in my quest for the best tools. This documented case with Things 3 and OmniFocus is a good example.

    There is hope

    I might sound like a tormented person, but I’m not. I would say that I’m not as focused as I should be. But there is hope because I do make decisions from time to time when things become clear or obvious. Let’s see a few examples.

    • On the publishing platforms front, things are improving. Thankfully, this year, I’m focusing. There use to be WordPress, Micro.blog, Substack, Ghost, Blot and Write.as. WordPress is out. Substack is out. Blot is out. I’m down to two publishing platforms: Ghost and Micro.blog. That’s it. Sure, i cross-post some content to Mastodon, Bluesky and Flipboard. But that doesn’t count.
    • On the photography side, at some point, there was 500px, Smugmug, Unsplash, Glass, Exposure. 500px is out. I decided to move out of Smugmug by the end of my subscription (next year), so that I can focus on Glass and Exposure.

    Image.png

    • I recently dropped Pocket, Matter and Readwise Reader. So, you see, there is hope!
    • For bookmarking, at some point, I was using Apple’s Safari Reading List, Pocket, Craft bookmarks, Apple’s Quick Notes, and Mailbrew saved items. I dropped all of these in the last year to focus on Anybox. I couldn’t be happier. Oh, I sometimes use Micro.blog bookmarking feature to archive articles than I can highlight then create a linkpost using these highlights.
    • Ever since I got my M1-based Mac mini, I bought a M1 MacBook Air. I constantly use both of them. One thing that I like to do is to use on app on one Mac and another competitive app on the other Mac. For example, on my MacBook Air, I use “Stats” and on my Mac mini, I use iStats Menu.
    • iPad Pro vs MacBook Air: because reasons. I love both but in different usage scenarios. I’m fortunate enough to have both.
    • My reading workflow was in a state of flux: https://numericcitizen.micro.blog/2022/05/07/my-reading-workflow.html. But, thanks to my decisions to drop traditional read-later services like Matter or Pocket, I’m more focused now in that area.

    I should probably update this article occasionally because my digital toolkit is constantly evolving. You probably should keep an eye on my documented toolset that I keep up to date.

    This article was previously published on Numeric Citizen Space:

    Why It’s So Hard to Make Up My Mind About Digital Tools?

  • From an Idea to a Blog Post

    In this blog post, I want to share a different “behind the scene” look at how I process information that will eventually give birth to a new blog post. It’s a bit different than the one I publish from time to time about my blogger workflow. This behind-the-scenes view emphasizes something vital to me: the process. Sure, the results are always important, but the process that leads to these results is equally important. Moreover, tools are involved in each process, which, for a blogger and writer like me, are applications and services. I often think that I love creating because I usually love to use tools in general, especially if they are well crafted. For example, the act of writing in a great writing app like Ulysses is a satisfying experience. So. let’s see how I do all this.

    In general, my inspiration comes from my readings and my time spent on Inoreader. Each morning, I spend between thirty and ninety minutes doing just that: consuming content from many sources like RSS feeds, Reddit, etc. I do spend time on YouTube, but I’m mostly reading stuff. I spend less than 10% of my time on video consumption. I force myself into reading; it’s one of the best ways to find subjects to write about or get new post ideas. There is too much content available online; I do have to use applications to bookmark things to read later. For that, Inoreader and Anybox (review of Anybox here) help me bookmark articles on which I want to react or write in a very short time frame.

    When I write, depending on the expected length, complexity or destination of the piece, I may write it down directly on Micro.blog or use their macOS application which is good enough. When I plan to publish on my main blog, I’ll go with Ulysses, which is the case for this current blog post.

    Another important tool that I use is Craft. This application is a repository for many things like future articles in the research phase. I do use Anybox to collect all the pieces that will go in a future issue of my Numeric Citizen Introspection newsletter. Craft will support my writing process as I can reuse tidbits of information that I saved in there for longer posts. The more I use Craft, the more I depend on it for everything. This is why Craft has a special place in the following diagram, showing how all the pieces fit together. Finally, all references to my posts on Micro.blog are stored in Google Sheets so I can easily refer to and include them while writing. It’s a time saver.

    My information processing workflow.

    I guess my process has nothing really special, but it is perfectly crafted for my needs. I do publish a lot, and I need to be as efficient as possible, and this process enables and supports it every day.

  • My Content Creator Workflow as of 2023-04

    Time for another workflow update (the previous update can be found here). This update probably contains the most profound changes in a long time. My journey with WordPress as a CMS (content management platform) has ended. It started in 2015, after closing my indie developer blog hosted on Google’s Blogger. There are a lot of moving parts. The dust is starting to settle a bit now. Let’s dig in.

    CleanShot-CleanShot@2023-03-26@20.05.48@2x.png

    As for the diagram, I wanted to make it more focused on digital tools and how they relate to each other, so I removed the devices representation as well as icons of apps that are better documented in my toolset (see down below). I kept the essential making the foundation of my workflow.

    Bye Bye WordPress.com

    Following the completion of my migration from WordPress to Ghost, I think it’s the right time for an update to my content creator workflow. This WordPress migration forced a reconsideration of many tools that I use to create. This post will highlight most of these changes.

    Bye bye Twitter

    Up until a few months ago, Twitter was really at the center of my online presence. It’s no longer the case. It’s (nearly) nowhere to be seen (except for searches through Inoreader). With Twitter out from my digital landscape, the following are no longer needed.

    • Birdbrain, an iPhone app that allowed me to track who was following or unfollowing me.
    • Buffer, a scheduling service to post content on Twitter. It was used to repost past content to stimulate exposure and traction. If I consider the price of the service, I don’t think the return on investment was worth it.
    • My @Apple_Observer Twitter account is in read-only mode. My @numericcitizen Twitter account is also in read-only mode but is used in conjunction with Inoreader for searching and scrapping Twitter for specific content using specific keywords.

    Changing reading habits

    My reading habits are evolving too. Reading is the fuel behind my creative activities.

    • Speaking of Inoreader earlier, this content consumption service appeared on my radar and was later adopted. It is replacing News Explorer, an RSS reader. Inoreader allows for much more than reading RSS feeds. Reeder (read my review here) and ReadKit are two RSS readers that I use alternatively to consume my content on Inoreader simply because these two apps offer a native experience on the Mac that Inoreader currently doesn’t offer. I’m still undecided as to which of the two apps I’m going to keep. That’s for another content creator workflow update.
    • Gone is Matter and Readwise Reader. Since I’m mostly reading content through RSS feeds, these two services are no longer needed. I keep Readwise highlights subscription, though. It serves as an archiving service of some sort. All text annotations by Inoreader are saved to Readwise.

    A more focused publication channel

    • Content publishing services were also reconsidered. Medium is out. Spending time there’s no longer viable as readership is stagnant at best. Tumblr is out too. I was cross-posting content there, but it is no longer viable too. Even if it was an automated process, thanks to Micro.blog cross-posting ability and to IFTTT, it doesn’t make sense to maintain Tumblr as this platform is a walking dead.
    • Back to the WordPress migration, for obvious reasons, all my WordPress plugins, like Yoast, are no longer needed. Many others were dropped, too, saving me quite a lot on recurring expenses. Yoast was useful when writing a blog post to optimize SEO content but added some friction and probably didn’t make a big difference for my SEO optimization aspirations.

    Is my Craft usage fading out?

    • My Craft usage is still important, but a few use cases were dropped. I don’t use daily notes to manage my things to do (as explained in this video “Why I’m No Longer Using Craft Daily Notes”). I went back to Things 3 for this. The other use case that was removed from Craft is bookmarks management, as explained in detail in this video “Why I’m Moving My Bookmarks Out of Craft”. Now, I’m depending on the excellent Anybox bookmarks manager, as I explained in this article: “Anybox – My Experience with a Bookmarks Manager”. Switching to Anybox also means I dropped Raindrop.io too. Even as a free service, it was redundant to keep.

    Finally, since my tool set is always changing, I created and shared a Craft document where you can have a complete view of the apps and services I depend on to create things and put them out there on the net. You’ll also see tools that are under consideration and the tools that I dropped in the past. Link: https://world.numericcitizen.io/meta-toolset.

    Image.png

  • Moving Out of WordPress — My Detailed Experience

    So it began. Then it concluded. After thinking about it for a while doing some detailed planning, I’m officially done with moving out of WordPress.com for my blog hosting service. I’m leaving after so many years of joy and pain (I’ve been on WordPress since 2015).

    https://numericcitizen.me/bye-bye-wordpress-hello-again-ghost/

    https://numericcitizen.me/special-announcement-some-important-changes-coming-soon/

    https://numericcitizen.me/2023/01/20/a-message-to-my-readers-followers-on-wordpress-com/

    https://numericcitizen.me/important-change-coming-to-this-website/

    https://numericcitizen.me/a-message-to-my-readers-followers-on-wordpress-com/

    I recently spent quite some time working on my WordPress.com exit. First, I prepared a project plan and make it one of my main focuses for the year. Second, I started to clean up my content. I reviewed in more or less detail all of my 766 posts. Many posts were deleted for different reasons: too much time-sensitive, irrelevant content, posts with many embedded tweets, etc.

    All in all, I’m now down to 325 posts. These are the ones that I want to migrate out of WordPress. Here is why.

    Why

    • WordPress is needy. It requires a configuration to run correctly when using many plugins.
    • Posting on WordPress requires too much work before a post becomes online.
    • I want to focus more on content less on management. I value frictionless experiences.
    • WordPress.com is very expensive. I was subscribing to the business plan because of my plugin usage, and I wanted to suppress ads for my readers.
    • By quitting Twitter, there were many plugins that I was longer using.
    • Many plugins are not free, and I was tired of paying for something with questionable value.
    • Some plugins didn’t have the expected effects on SEO.
    • I’m also on Ghost.org, and I feel it was redundant to keep both. Ghost is more polished, lighter to manage, cleaner to experience, and easier to use when posting content.

    Expected gains

    By moving out of WordPress, and merging content to Ghost, I’ll be gaining these features.

    • Newsletter functionality which could allow me to send mail on an as-needed basis.
    • A refreshed and more straightforward design is needed for a more responsive website.
    • The possibility to post directly from Craft to Ghost. I’m not expecting to use this, but if I want, it’s there.

    Image.png

    The process

    The next step was to dig a little bit into the migration process itself which is based on the use of a plugin: Export to Ghost, which is free and is currently at version 1.2.1. The process is well documented on Ghost’s website and on the web in different articles. Issues arise when you start to look deeper into the process. Upon the first try to export my content, the process timed out and I got a message from WordPress.com’s gateway (nginx). Ouch. A second try produced the same results. I couldn’t image either losing my content or having to move manually. I thought it was an issue with my WordPress instance so I asked for some help from WordPress.com’s support for an investigation. These guys are always willing to help but they couldn’t really fix it. After a bit more of reading, I tried connecting to my WordPress website with FTP and saw what was in there. I was surprised to see the following:

    Image.png

    The wp-content folder contained another folder called “uploads” and another named “ghost-exports”. The files I was expecting to start downloading to my Mac were sitting right there. The JSON file is the file to import into the Ghost service, while the other zip file was the images referenced by my posts. Exploring the JSON file revealed a typical structure Ghost expects while importing content.

    Image.png

    Oh, one thing that I learned: Firefox is a great tool for reading and parsing JSON files. Did you know that?

    The “mobiledoc” node is where the actual post content is. Digging a bit deeper, I could find HTTPS requests for each image like the following example:

    Image.png

    I was curious how this would work at the import stage. The ?w=124&… was added by one of my WordPress plugin for some image optimization purposes. I wasn’t quite sure it would work when trying to import that file into Ghost. I started to search for tool to remove those HTTPS parameters. Eventually, I gave up this path.

    Then I started questioning my strategy. Maybe it was easier to just translate everything from WordPress to a more portable format, like Markdown. I did some manual testing by downloading a single post, then tried to edit the resulting file in Ulysses and then upload it to Ghost. It required too much manual work. On top of that, I couldn’t back-date the article I was trying to push on Ghost. I gave up that route too.

    While searching for other solutions, I came across a web page on Ghost.org about a concierge service for Ghost(Pro) subscribers. I decided to write and ask If I was eligible. In less than 12 hours, I got an affirmative response. I was relieved.

    Over the course of three days, we exchanged emails detailing the migration process and for answering my numerous questions about the expected results. I cannot overstate enough how great the support was. Just before the weekend, everything was moved and my domain name setup updated. The latter part was on my responsibility. I’ll post a more detailed article just for the DNS portion of the migration.

    Plugins

    A few words about WordPress plugins and Ghost Integration. WordPress plugin economy is large and deep. It’s a rich ecosystem. On Ghost, plugins are called Integration. I’m not seeing the equivalent ecosystem, but that’s ok. I’m using the follow integration.

    • Unsplash for easy insertion of images into posts.
    • Ulysses for easy posting from this wonderful writing app.
    • Plausible for analytics.
    • Stripe to receive subscription fees from subscribers.
    • Custom integration for Craft support of posting from within the app.
    • Custom integration for cross posting of content from my Write.as account.

    Some important migration details

    • The first thing was to change the DNS from WordPress to GoDaddy where my domain name is registered. I later discovered that I the domain needed to move to CloudFlare to support CNAME for the root domain, something GoDaddy don’t support.
    • Domain name https://numericcitizen-introspection.blog will eventually lead to https://numericcitizen.me via the help of a forwarder. I still have this to fix.
    • Links should with slug /year/month/date in them should continue to work, thanks to redirections that were created the Ghost’s support personnel.
    • I created a backup file with WordPress.com backup plugin for archives purposes. I extracted all my images and uploaded them on my DS720+ Synology NAS for easy access.

    Image.png

    A few things were lost along the way

    • The possibility of getting “likes” on WordPress posts. I don’t care.
    • Past comments on each post couldn’t be migrated. That was expected. I’m a bit sad for this, but my content is worth more.
    • My 154 WordPress.com followers. I don’t have a mean of moving them to Ghost. The only thing is to write a blogpost asking them to subscribe to my new blog, with Ghost’s newsletter feature. After publishing such article, I didn’t see any increase in subscribers. I expect most of my WordPress followers just don’t care or are simply inactive.
    • Jetpack app and WordPress app on the iPad and iPhone, these are no longer needed.

    What I’m going to miss

    • Native application support on the iPad; Ghost doesn’t offer an iPad or iPhone app. The solution is to use Ulysses for my posting needs. I’m fine with this, I’m already using it for my Micro.blog posts.
    • Custom themes are seemingly more limited on Ghost compared to WordPress. I’ll probably explore alternatives in the future.
    • Posts path no longer uses the YYYY/MM/JJ/ document-title. I like it when the date if part of the path.
    • RSS feed users on WordPress will need to update their subscription so their feed keep working.

    Core web vitals change

    The following are snapshots of my PageSpeed Core Web Vitals stats.

    Safari-PageSpeed Insights@2023-03-24@17.46.49@2x.png

    Safari-PageSpeed Insights@2023-03-24@17.46.39@2x.png

    Before the migration

    Safari-PageSpeed Insights@2023-03-24@17.46.05@2x.png

    After the migration

    Overall, migrating to Ghost is an improvement. I’ll be monitoring this over the course of upcoming weeks and months so see how this will affect my visitors statistics.

    Conclusion

    It took me many long hours to make this move, but it was well worth it. I’m using a more modern and easier platform for my publication needs. I had to refresh my knowledge of a DNS service too. Since 2015, I learn a bit of WordPress and I consider to be an intermediate user. I prefer Ghost now.

    I hope you learn a few things with this article Feel free to post comments using the commenting feature of this Craft-made site.

  • Documenting My Numeric Life With Dayone

    Do you have a Flickr or Glass account where you posted your best shots describing your mood when the pictures were taken? Do you have a Twitter or Mastodon account where you describe what’s on your mind? Maybe you are a blogger posting on WordPress or Micro.blog about a trip you are currently doing? If you answered yes to a few or all of these questions, you must read this article explaining how you could be documenting your life, automatically. Why? how do you ensure the content you create on the Internet will stay forever accessible to you? How can you make sure you won’t lose anything when a service like Flickr changes the rules and remove pictures from its platform? I have set up a process to automatically document my numeric life with content I post online. Here is how.

    Dayone is available on iPhone, iPad and Mac too. All data is synced across devices.

    I’ve been using the excellent and powerful journaling app named Dayone to help me save a copy of my digital work. Dayone allows you to create journal entries containing text, photos, audio recordings, drawings, videos, etc. In addition, each entry contains metadata like the current weather, the GPS coordinates, the current music playing, etc. The key to my setup is to integrate Dayone with the automation service called IFTTT, which is a web service that allows you to automate tasks involving other web services. One such example of automation is to automatically post on Mastodon a photo you just uploaded to Flickr. Glass alone doesn’t do that, so to circumvent this, I use IFTTT to do it for me.

    On IFTTT to sync content from Micro.blog using the RSS feed to my personal journal app, Dayone.

    The cool thing is that you can also use IFTTT to push content to your Dayone journal. To integrate both, you need to subscribe to the premium tier of Dayone. This will enable many cool features like syncing your journals on Dayone web servers. Second, this will make it possible for IFTTT web services to push content into your Dayone journals over the web. Don’t worry about security here, all of this data movement is secured with encryption.

    As an example, I have created an “applet” on IFTTT that does this: if I publish a picture on Glass, I’d like to keep this post in my personal journal on Dayone and give it the tag “Glass”. The journal entry will include the picture itself, the description, the date and time and the source of information. Pretty cool huh?! I have many applets that I have created to save, for example, a copy of all my posts on Micro.blog, or create an entry each time I publish a new blog post here on numericcitizen.me. Using RSS feeds with IFTTT is super simple.

    My Dayone journal containing my archives of posts from Micro.blog

    With all these applets working for me in the background, it is documenting and saving what I post on the internet via different web services that I use. The following diagram shows the flow of information between the sources and the destination, Dayone.

    Document Numeric Life.png

    On the left, are the web services that I use for publishing content, and on the right, Dayone who gets all the information confined thanks to applets running at IFTTT.

    As you can see, my internet presence is not only here on WordPress. I publish YouTube videos, I have a Micro.blog account, I’m posting photos on Glass, and I’m a YouTube consumer too. Nearly all of my interactions with these services are saved within my personal journal on Dayone. I find it to be cool and relieving to know that I can find my personal archives readily available. After reading this article, maybe you’ll consider doing something similar for your content, too?

  • The Write.freely Ecosystem Explained

    The time has come for the return of a more open web. I’m embracing this movement by joining platforms or services that are built on open standards and promoting the open web in general as a byproduct.

    Write.as is an instantiation version of the WriteFreely writing platform, available as an open-source project. Think of WriteFreely as the open-source version of WordPress. Anyone can get the source and install their own instance.

    In May 2022, I took advantage of five-year special pricing to subscribe to the Write.as platform. Without exactly knowing what would be my use case for it, I decided to support the platform, just like I’ve been supporting Micro.blog since 2018. After a while, I discovered the many facets of this writing ecosystem and found it to be a bit confusing. In this article, I explain all the parts of the open and dedicated blogging platform.

    First, let’s see what ChatGPT says about Write.as.

    Aaron Taylor is the founder & CEO of Cosmic.org and a team of remote employees who work on the Write.as and Remark.as platforms. He is passionate about creating secure, anonymous spaces where people can express themselves without judgement or censorship. He has worked to create tools and features that make anonymous publishing easier and more secure for users. He is also the creator of the Remark.as platform, which gives users more control over how and when they share their thoughts.

    Write.as is a project of a small team led by the founder & CEO, Aaron Taylor, at Cosmic.org. They are a remote team based all over the world, from Portland to Berlin to Mexico City.

    Write.as is a platform designed to help people express themselves freely and anonymously. It provides a space for everyone to post their thoughts without worry of judgement or censorship. All posts are public and open to comments, however, the identities of the posters can remain anonymous. The project offers a suite of applications and services to make anonymous publishing easier, more secure, and more secure for users. It also provides a way for people to follow topics, publications, or users, engaging in thoughtful dialogue and idea exchange.

    Remark.as is a project that is a part of the Write.as platform. It is designed to help users to have conversations with each other in an anonymous, secure, and censorship-free environment. Remark.as has features like tagging topics and publications, creating polls, and engaging in private forums. It also gives users more control over how and when they share their thoughts. Remark.as also provides users with the ability to create polls, surveys, and other interactive features to encourage public participation.

    All in all, Write.as and Remark.as are projects by Aaron Taylor and the team at Cosmic.org that provide users with an anonymous, censorship-free space in which to express themselves freely and engage with others. They are both designed to make anonymous publishing easier, more secure, and to give users more control over how and when they share their thoughts.

    Write.as is a simple, privacy-focused writing platform. It allows users to create and publish anonymous blog posts, journal entries, and other types of writing without the need for an account or personal information. The platform also includes a built-in editor and the ability to customize the appearance of your writing with different fonts and themes. Additionally, Write.as supports markdown formatting and has a feature called “focuses” which allows users to group related posts together. The platform is designed for those who value privacy and simplicity.

    More seriously, here’s a brief description of each component, starting with an overview.

    An Overview of the WriteFreely Ecosystem

    The following diagram shows all the parts making up the Write.as service, which is part of the WriteFreely ecosystem.

    write.as platform.png

    • The Write.as service is where all the writing experience happens. Since this article isn’t a review, suffices it to say the editor offers a minimalistic and distraction-free environment. Write.as supports adding tags to any blog posts. Cross-posting content in Write.as is available for other platforms like Tumblr, Ghost and Twitter. I connected my account to Ghost but rarely cross-post over there. It’s nice to have, though.
    • The writer can attach photos at the end of each post by dragging them on the bottom bar. Photos attachments go to the “snap.as” minimalistic photo sharing add-on, tied to Write.as. All photo attachments are shown in one place, on snap.as. Photo galleries are available, albeit with a one-time fee of 10$. Some features are marked as coming soon, but I suspect they are long in coming. I’m unsure if I would invest in this as I prefer dedicated services like Glass.
    • Submit.as is another add-on to Write.as. As the name suggests, it is a way for an author to accept submissions from other writers. No registration is required from the submitter, helping a frictionless experience. This service is not cheap and comes with a 12$ per month minimal fee. It’s not cheap and I don’t know why. Again, integration with other platforms is marked as coming.
    • Remark.as is yet another add-on closely tied to Write.as and offers to comment to any of the writer’s blog posts. Commenting is enabled on a per-post basis by adding a special <—discuss—> line anywhere within the post.
    • Read.write.as is like a content feed coming from other writers. Content published on Write.as gets published on this feed. It comes from the hosted version of Write.as. According to this website, content is cross-posted to an RSS feed, Mastodon and Twitter, but I fear this has been abandoned as the content is somewhat old.
    • The Mail add-on is where you’ll receive comments from other writers. Those comments are grouped in one place and are public.
    • Café is a place for discussion, but frankly, I don’t know how posts get promoted there. Those discussions are conversations happening on the Read.write.as section.
    • Other add-ons like a post signature is available for a monthly 10$ addition (ouch) and eBooks export is also available for another monthly 10$ (ouch).

    Still with me? I know, it’s not simple. Write.as certainly feels like a bunch of add-ons taped together.

    Image.png

    Some remarks about the whole thing

    • The Write.as experience is minimalistic and needs some polishing. I didn’t see improvements since I’m subscribing to the platform. This annoys me.
    • Overall, the Write.as ecosystem feels minimalistic and unfinished. I don’t expect many improvements to come to the platform. Yet, Matt, the founder of Write.as, is active on discuss.write.as discussion forum, so it’s a good sign.
    • There’s a Mac app for the Write.freely ecosystem, which should support Write.as but it has been in beta for more than a year. iOS and iPadOS are also available. All apps are available here. I didn’t test these, preferring the web experience.
    • All these services are part of a suite called the Musing Studio. It’s more of a branding thing. The site hasn’t been updated for a while.

    With this article, I hope I shed some light on this open-source project dedicated to writers and bloggers. Overall, I like Write.as, even with some rough edges or unfinished integration. If I failed to explain something correctly, let me know in the comments!

    This article has been published on https://write.as/numericcitizen/ (here).

  • Some Updates to My Blogging Setup

    Following my departure from Twitter, as well documented here, it was time for me to make some changes to my blogging setup. First, as for my domain numericcitizen.me, I moved my DNS setup off WordPress.com to GoDaddy, so that everything is in one place. Plus, I have more control on GoDaddy than on WordPress.com. This change was required so I could add a subdomain, blog.numericcitizen.me and point it to Micro.blog, numericcitizen.micro.blog. My main site is not about blogging but about publishing longer articles on subjects that I care about, like Apple or general software and services matters. The change was easy to execute but took some time to go into effect.

    Image.png

    https://blog.numericcitizen.me (blogging site on Micro.blog)

    https://numericcitizen.me (main site on WordPress.com)

    On Micro.blog, entering my custom domain name is mandatory and Micro.blog handles all the rest. Nothing is broken. Even the RSS feed still works. I also added a way for a reader to respond to any individual post by using a plugin named “Conversation on Micro.blog”. I had to create a custom theme, based on Marfa, for setting up the plugin. Again, that was super easy to achieve.

    Image.png

    Finally, I made a tweak to the CSS setup so the highlight colour is more in line with my avatar: some kind of blue.

    nav.main-nav a.cta {

    background: #fff;

    color: #548EB9;

    border: 2px solid #548EB9; }

    nav.main-nav a.cta:hover {

    background: #548EB9;

    color: #FFFFFF;}

    nav.main-nav a, #footer a, #post-nav a, p a{

    box-shadow: inset 0 -2px 0 #548EB9;}

    nav.main-nav a:hover, #footer a:hover, #post-nav a:hover, p a:hover {

    box-shadow: inset 0 -25px 0 #548EB9;}

    With these changes, I’m ready to start the year.

  • A Month After Migrating Off Blot.im — Observations

    It’s now been a month since this website was migrated off Blot.im. The question you might ask: is the website getting as much traffic as it did before? The answer is no, a lot less traffic. According to this post, I got about 90 unique visitors daily during the 20 months with Blot.im. Now, under Craft, I’m getting less than 20.

    Image.png

    It’s hard to say why. Is the lack of RSS feed the reason? Now users need to come by often to see what’s new. I doubt people have time to waste doing that. The other reason might be that the new article posted here needs to be manually cross-posted on Twitter to get some exposure. Cross-posting to Reddit might help a lot as well, but the rules of many subreddit disallow self-promotion posts. Another factor might be that Craft doesn’t generate a sitemap, which is supposedly helping the Google search engine to process content. A quick search for something here works fine, though. The following Google search results for “my blogger workflow site:numericcitizen.io” reflect the updated website structure with the “world” subdomain followed by the trailing “/meta”.

    Image.png

    I don’t pay too much attention to visitors’ traffic; it’s more of a curiosity. If you’re looking into Craft for hosting a website, I hope to make you pause and think again about the implications. This meta website is more of a long-running documentation project that I share publicly. I don’t mind about Craft not being too SEO-friendly. Speaking of SEO, the site’s current Page Speed Insights does not look good at all.

    Image.png

    Image.png

    Image.png

    That could the other reason why this website isn’t performing too well.