skip to content
Site header image Nerdy Momo Cat

Stream

  • TIL about template tags in HTML

    One reason I believe I was having trouble getting pages indexed was due to the DOM size. This assumption is based on two observations: (a) when I had the same site in Quatro, it was much easier to get indexed; and (b) Notion returns a very shell-based HTML to Google's crawler (no images, colors, or icons). Most of my pages are stuck in "Discovered - currently not indexed." While I can't guarantee this will help, one major factor contributing to the large DOM size was the popovers I was creating.

    So, I asked Claude and GPT-4, and they told me about the <template> tag. I never knew about it before, but it reduced the DOM size from around 2000 to about 1200 (see here Show information for the linked content ). Not sure if it would make a difference, but a smaller DOM size always helpsShow information for the linked content!

    Popovers, both pages and blocks, now use template tags to avoid rendering in the DOM, significantly reducing its size.
    Popovers, both pages and blocks, now use template tags to avoid rendering in the DOM, significantly reducing its size.

  • Webtrotion vs Notion Sites v2

    Comparing Notion's new site versions with external notion to site builders: pros, cons, and why I'm sticking with Webtrotion.

    So, Notion's got these new site versions, right? And now we gotta think about whether to stick with Notion or go for something external. Let's break it down.

    First up, pricing and domains. You need a Plus plan for custom domains, which is free for education but costs extra otherwise. Notion charges you $8 for the custom domain thing, and you get five sites or however many domains you want. Sounds cool, but it might be a pain if you're trying to host a bunch of project sites with custom domains. Webtrotion Show information for the linked content , works with Notion's free plan. You can host a site from a single database on GitHub Pages for free, which is neat but has its limits. And you can host on subpaths as well, aka, example.com/blog.

    Notion sites are great if you want sub-pages inside posts, inline databases, table row colors, cropped images, post display options (Webtrotion has either a stream or a list view) or those fancy new preview cards. Webtrotion can't do that stuff unless you get into some complicated scraping businessShow information for the linked content. But here's where Webtrotion shines: consistent URLs (Notion's URLs go crazy if you change titles), custom tag pages, no unnecessary property visibility, better custom headers, custom persistent footers, floating table of contents on mobile, stream view, custom styling, theming and colors, add html embedsShow information for the linked content, actually useful (sortable and searchableShow information for the linked content) simple tables and it can pull out references, block mentions, post comments using giscus (you need to be signed into Notion to comment), and even make RSS feeds. Oh, and it's got this cool Shiki transform for code blocksShow information for the linked content that I added recently.

    When it comes to hosting and SEO, Webtrotion on GitHub Pages can be a bit iffy with Google indexing. Notion's got the upper hand here with their new Google Analytics and SEO stuff. But Webtrotion auto-generates those social media (OG) sharing images, while with Notion, you gotta do it manually every time. Update-wise, Notion sites are instant. Webtrotion on GitHub? Every eight hours, but you can tweak that to be 10 minutes, but not instant.

    So, why am I sticking with Webtrotion? Because I want and prefer traditional website, and using Notion as my CMS. I want to be able to provide people with a URL and know where it lands, not having to worry about link rot, or add redirects, and change some fonts, pin posts etc. But honestly, it depends on what you need. I wish someday Notion lets us embed blocks into public websites. That'd be the best of both worlds.


  • Link Previews in Chrome using MaxFocus

    Those cool link popups in Arc can now be yours, in Chrome.

    MaxFocus is a new-ish extension focussing on creating link previews on any link you hover on. It works on apps that do not allow for iframe embeds (like Notion), and hence is different than the majority extensions out there. You really do not need the PRO option with this one, unless you really want AI summaries of the page, but I can usually skim the page faster than the AI can generate a good summary of. The looks and feel are customizable and you can make it look just like Arc, which is a feature that I always missed when I switched back to Chrome.


    The features setting is a bit messy, but this quick guide should probably help.

    Screenshot of MaxFocus Link Preview settings with options for interaction preferences, activation triggers, advanced protection, performance, popup behavior, AI settings, appearance, and disabling on specific websites.
    Screenshot of MaxFocus Link Preview settings with options for interaction preferences, activation triggers, advanced protection, performance, popup behavior, AI settings, appearance, and disabling on specific websites.

    And this is how the popup looks like

    Screenshot of a MaxFocus popup displaying an article. Annotations highlight features: share option, open in new tab, change ratio, maximize, close, pin popup, reader mode, AI tools, zoom, and settings.
    Screenshot of a MaxFocus popup displaying an article. Annotations highlight features: share option, open in new tab, change ratio, maximize, close, pin popup, reader mode, AI tools, zoom, and settings.

    Something you might find frustrating is, you cannot access right click menu inside this popup. When I open articles like these, I often want to save them to reader. But because clicking on the top link opens it in a new tab, and I cannot access right click to use the Save to Reader option, I often end up needing to copy link address and then saving it in Reader. I wish the share option copied or provided MacOS or custom share menu than the QR code it has at the moment.

    Sidenote Jun 17, 2024: Chrome is testing native Link Previews too, and it would be fun to see what they entail
    Chrome Flags entry for "Link Preview." Description: Enables previewing a linked page in a small window before navigating. Triggered by context menu or user actions. May be unstable on some platforms. Options: Default.
    Chrome Flags entry for "Link Preview." Description: Enables previewing a linked page in a small window before navigating. Triggered by context menu or user actions. May be unstable on some platforms. Options: Default.

    This is what the native Chrome link previews look like. They are basically a headless window, always on bottom right, if you click on them you open the site on a new tab. Not a huge fan at the moment.

    The native  Link preview  option on Chrome shows a popup on bottom right.
    The native Link preview option on Chrome shows a popup on bottom right.
    If you miss the vertical tabs from Arc, check out the modded Polychrome extension for the same utility Give Your Chrome the Vertical Tabs It Deserves!

  • My favorite “find a time” app

    So, like everyone else, I have too wandered down the roads of using doodle, when2meet, zcal and all other 800 alternatives to the problem. Until 5 months back that is, when I found, schej.it; and trust me, it is the best app ever (in my opinion) for finding a time to meet. Allows you to overlay your google calendar, restrict participant visibility, send google calendar invite based on the decided time, everything you can think of.


  • Want to Unlike All Liked Pages on Facebook?

    I have been wanting to unlike all pages on Facebook that I liked as a teen in 2010. Because I stopped using Facebook pretty early (around 2014) — I thought unliking all of them made perfect sense. I did find some extensions to do so, that are now defunct; and 2 console tricks, that no longer work because Facebook keeps changing it layouts.

    That is, until I landed on this comment on a gist.

    Long story short; log into Facebook, open this link, install TamperMonkey if you don’t have it, paste and save the code below as user script, refresh that page and let it run. This uses the activity log to unlike pages, so when you go to your likes; there might still be brands that you ned to go to pages of and unlike and unfollow manually. The reload built into the script is required because after a few iterations, Facebook stops loading your earlier activity unless you refresh the page.

    // ==UserScript==
    // @name         Facebook Auto Unlike
    // @namespace    http://tampermonkey.net/
    // @version      2024-04-24
    // @description  Automatically unlikes posts on Facebook
    // @author       You
    // @match        https://www.facebook.com/usrID/allactivity?activity_history=false&category_key=LIKEDINTERESTS&manage_mode=false&should_load_landing_page=false
    // @icon         https://www.google.com/s2/favicons?sz=64&domain=facebook.com
    // @grant        none
    // ==/UserScript==
    
    (function() {
        'use strict';
    
        function runAutomation() {
            setTimeout(() => {
                const options = [].slice.call(document.querySelectorAll('[aria-label="Action options"]'));
                options.forEach(option => option.click());
    
                setTimeout(() => {
                    const menuItems = [].slice.call(document.querySelectorAll('[role="menuitem"]'));
                    const unlikeItems = menuItems.filter(item => item.innerText.includes('Unlike'));
                    unlikeItems.forEach(item => item.click());
    
                    setTimeout(() => {
                        location.reload();
                    }, 3000); // 10 seconds after clicking unlike
    
                }, 3000); // 5 seconds after clicking action options
    
            }, 3000); // Start 5 seconds after page load
        }
    
        // Run the automation function when the page loads
        window.addEventListener('load', runAutomation);
    })();
    



  • My Company Shifted to Linear and It's Meh?

    Seriously, why is it regarded as pinnacle of software engineering? Just because it's opinionated?

    I don't understand why people rave about Linear. Sure, it is a bit faster than Notion but then I have way less content in Linear. It also does not instant search for some reason? So the search results show up when you press enter and then you have to retype your query if it doesn't bring up what you wanted it to. The flat design is up my alley, but interactions are heavily keyboard based and require reading documentation — example how do you move an existing issue as a subtask of another issue? You then use Cmd+K to type Mark Issue As which isn't obvious at all? You can't drag issues into one another for some reason? You can't assign project just by typing like Todoist. 🤷🏽‍♀️ Am I missing something here?


  • Sync Mutes and Blocks

    I finally synced the block list and muted word list between my main and alt accounts on twitter, and I feel so relieved 😅. You might be wondering how I did it?

    At the moment, it's a completely non-automated process because API costs money. I downloaded the archived data through X, extracted the block list and mute list from block.js and mute.js using GPT4 code analysis, and then copied and pasted the curl commands into a for loop for all the darn accounts with userid as a variable. I even took a scrolling screenshot of muted words, converted it into a list using GPT4-V, and muted those through a bash script with cookie tokens.

    You can sense my desperation from this. I was tired of seeing the same nonsense across multiple accounts for over a year, and I just had to do something about it.

    Mar 3, 2024, 08:52 PM: I got tired of trying to find userids from usernames for new blocks, because of course I wasn’t going to download the archive every time. There are websites you can do it from, but I wanted an option to not leave the website, and hence this comment from github helped. Paste it into console and voila.

    id = JSON.parse(
    document.evaluate(
        '//script[@type="application/ld+json"]', 
        document.lastChild, 
        null,
        XPathResult.ANY_TYPE, null).iterateNext().textContent
    ).author.identifier;

    Someday, I will use these libraries but today is not that day


  • This is a Shottr Appreciation Post

    Just a tiny Shottr appreciation post, for everything it has. When I started using Shottr, I didn’t have Cleanshot X. The only reason I got Cleanshot X was because (a) it had a deal on AppSumo; and; (b) I can record videos with my face in them easily.

    But for everything screenshot related (and now you can paste in multiple screenshots too!); you should definitely use Shottr.



  • Discovered Clop

    I recently discovered this app called Clop. And man, it is so good. I often take these 3MB full screen screenshots and directly paste them into Notion (including on these pages rendered as a website), and Clop basically auto-optimizes any images on clipboard, whether shot directly, or if you use ⌘+C in your finder on an image file.

    The free version works for all images (though doesn’t have an option to auto-convert to webp, I so wish it did!). The paid version (or with limits on the free version) can also work with videos and pdfs, though, I haven’t tested that part much.


  • I Tried Many Canvas Apps For Paper Reading

    I have been wanting to explore paper reading apps that work on a spatial canvas like structure. I do want them to work with Apple Pencil because I feel the most comfortable writing with papers, so heptabase is not on the list. I am not looking for paper annotation apps like Highlights, more for excerpting regions of paper into a canvas I can drag those “components” around in. The main thing I am looking for that isn’t a usual part of most canvas apps like tldraw or concepts, is the ability to locate the “snippet” or excerpt back in the pdf.

    The main app that does this is Muse, but (a) it is an expensive (fairly priced subscription) for just paper reading, and (b) I would pay that much if you could share the boards on web, but you need the Muse app, unfortunately.

    So, I tried other apps, and I am going to try BoardNotes for a bit, because that kinda checks the boxes of snippets, canvas, Apple Pencil, and pdf locator. GUGA on the other hand is collaborative, has snippets, has a great canvas, works well with Apple Pencil, but does not have pdf locator unless the specific pdf is already open. Neither of them have a macOS app like Muse does, or have publicly shareable boards, but they both are pretty cheap, a one-time purchase. Kosmik 2.0 seems to have public universes as a thing even for free plans, and there is an extract option, that doesn’t remember pdf location, but remembers the pdf the extraction came from. Or maybe I should stop trying to find something and just use Muse or Liquid Text (though I am unsure how it compares with MarginNote).

    Some apps that I tested
    You can open multiple “pages” in  XNote
    You can open multiple “pages” in XNote
    And you can create excerpts for ONE pdf in  XNote , but not multiple ones that can be combined onto a board
    And you can create excerpts for ONE pdf in XNote, but not multiple ones that can be combined onto a board
    Board Notes  on the other hand works with multiple pdfs on the page and has pdf locator option even when pdf is not specifically opened.
    Board Notes on the other hand works with multiple pdfs on the page and has pdf locator option even when pdf is not specifically opened.
    Interface of  liquid text  is a bit dated, but it works across multiple devices (especially, it works on mac), you can create connections, ink stuff, but it is a paid app, and I am unsure if it is any better than Muse then.
    Interface of liquid text is a bit dated, but it works across multiple devices (especially, it works on mac), you can create connections, ink stuff, but it is a paid app, and I am unsure if it is any better than Muse then.


    BigPaper  on the other hand imports pdf as a series of images that you can draw on etc, but it is not the snippets structure that I was looking for
    BigPaper on the other hand imports pdf as a series of images that you can draw on etc, but it is not the snippets structure that I was looking for


    Highlights  might be good for pdf data labeling, because it has an option to extract just the “annotated” content but it is not what I am looking for
    Highlights might be good for pdf data labeling, because it has an option to extract just the “annotated” content but it is not what I am looking for
    For  GUGA  though, you need to have the pdf open in side view before the locator option works
    For GUGA though, you need to have the pdf open in side view before the locator option works
    Kosmik  has a web app and a mac app, it doesn’t work really well on the ipad but that is fine, I think? It does have public universes though releasing in Feb 24, so maybe it is worth a shot?
    Kosmik has a web app and a mac app, it doesn’t work really well on the ipad but that is fine, I think? It does have public universes though releasing in Feb 24, so maybe it is worth a shot?