<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Tools on Noetic Nought</title>
    <link>https://punchagan.muse-amuse.in/tags/tools/</link>
    <description>Recent content in Tools on Noetic Nought</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    <copyright>© 2006-2026 CC-BY-SA-4.0</copyright>
    <lastBuildDate>Wed, 08 Mar 2023 23:35:00 +0530</lastBuildDate>
    <atom:link href="https://punchagan.muse-amuse.in/tags/tools/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Made in 2022</title>
      <link>https://punchagan.muse-amuse.in/blog/made-in-2022/</link>
      <pubDate>Wed, 08 Mar 2023 23:35:00 +0530</pubDate>
      <guid>https://punchagan.muse-amuse.in/blog/made-in-2022/</guid>
      <description>&lt;p&gt;Keeping with last year&amp;rsquo;s tradition, this post comes when we are almost 1/5th&#xA;through this year.&lt;/p&gt;&#xA;&lt;h2 id=&#34;2022-projects&#34;&gt;2022 projects&lt;/h2&gt;&#xA;&lt;dl&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/punchagan/expense-tracker&#34;&gt;Expense Tracker&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;I built a personal Expense Tracker over the month of&#xA;October using SQLite and Streamlit, because I wasn&amp;rsquo;t comfortable sharing my&#xA;financial data with a 3rd party. I&amp;rsquo;ve tried to keep it simple, so it&amp;rsquo;s not a&#xA;pain to use.  But, I&amp;rsquo;ve also tried to keep it extensible, for others to try&#xA;and use.&#xA;&lt;p&gt;The last few months have been quite busy personally, and I haven&amp;rsquo;t been able&#xA;to use it as much as I would like to, but hopefully things will settle down&#xA;soon.  A couple of things that I&amp;rsquo;d like to improve:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;The Sqlite file is stored locally, and the data is not synced between&#xA;different computers.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;The tagging/categorization of expenses is very manual, and a little bit&#xA;more automation would be handy.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/punchagan/artful-dodger/&#34;&gt;artful-dodger&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;A Next.js project for hosting an art/photo gallery with&#xA;metadata stored in a Google Spreadsheet and images in a Google Drive (with an&#xA;optional CDN, recommended). I built this for a friend, who is experimenting&#xA;with creating &amp;ldquo;a more equitable model for curating, buying, and selling&#xA;art&amp;rdquo;. The gallery is currently in &amp;ldquo;private beta&amp;rdquo;, and I can&amp;rsquo;t link to&#xA;it. But, here&amp;rsquo;s a sample gallery &lt;a href=&#34;https://punchagan.github.io/artful-dodger/&#34;&gt;here&lt;/a&gt;, whose configuration lives &lt;a href=&#34;https://github.com/punchagan/artful-dodger/blob/main/.env.local.default&#34;&gt;here&lt;/a&gt;.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/punchagan/ox-gist&#34;&gt;ox-gist&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;I released my first Emacs MELPA package &amp;ndash; &lt;a href=&#34;https://melpa.org/#/ox-gist&#34;&gt;ox-gist&lt;/a&gt; &amp;ndash; an Orgmode&#xA;backend to export and update sub-trees and buffers to GitHub gists.  It was a&#xA;great experience contributing to MELPA.  I wrote a blog post about it &lt;a href=&#34;https://punchagan.muse-amuse.in/blog/ox-gist/&#34;&gt;too&lt;/a&gt;.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/punchagan/android-dotfiles/tree/main/bin&#34;&gt;Termux scripts&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;I&amp;rsquo;ve started using Termux on my Android phone and have&#xA;found the Text-to-Speech (TTS) API quite handy.  I&amp;rsquo;ve a couple of scripts on&#xA;my phone that lets me use TTS to read out contents on the clipboard or an&#xA;article from my browser.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/india-ultimate/fantasy&#34;&gt;Fantasy League Site&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;With help from a bunch of volunteers collecting and&#xA;validating data, &lt;a href=&#34;https://github.com/Joe2k&#34;&gt;Jonny&lt;/a&gt; and I built a &lt;a href=&#34;https://fantasy.indiaultimate.org/&#34;&gt;website&lt;/a&gt; for the Fantasy League for&#xA;Indian Ultimate State Championships. There was nothing technically&#xA;challenging about the project, but it just involved a lot of data cleaning&#xA;and co-ordination between the volunteers. The data was collected using pen&#xA;and paper, instead of a digital app for collecting the stats.  This made the&#xA;data cleaning and validation significantly harder. I&amp;rsquo;d definitely push for&#xA;digital data collection if people try to do something like this again.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/punchagan/bookmarklets&#34;&gt;Bookmarklets&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;A &lt;a href=&#34;https://punchagan.github.io/bookmarklets/&#34;&gt;web-page&lt;/a&gt; with a bunch of Bookmarklets from my browser&amp;rsquo;s&#xA;Bookmarks bar. I&amp;rsquo;ve had most of them around for a while, but putting them on&#xA;a web page makes it easy to share and find myself on other&#xA;browsers/computers.&lt;/dd&gt;&#xA;&lt;dt&gt;Music&lt;/dt&gt;&#xA;&lt;dd&gt;Unlike 2021, I&amp;rsquo;ve only been able to record a couple of songs. And&#xA;this year (2023) hasn&amp;rsquo;t been any better, so far. I hope I&amp;rsquo;ll be able to make&#xA;amends to this, soon, though.&lt;/dd&gt;&#xA;&lt;/dl&gt;&#xA;&lt;h2 id=&#34;review-of-2021-projects&#34;&gt;Review of 2021 projects&lt;/h2&gt;&#xA;&lt;dl&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/punchagan/earworm/&#34;&gt;Earworm&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;I didn&amp;rsquo;t make any updates to the package, not because it&amp;rsquo;s perfect&#xA;but because I didn&amp;rsquo;t use it much in 2022 &amp;ndash; thanks to how little I&amp;rsquo;ve been&#xA;able to record.&#xA;&lt;p&gt;While, writing this blog post I realized that workflow had a couple of&#xA;annoyances. I improved the code to fix them.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;I need to move an audio file back-and-forth between my phone and my&#xA;laptop, one full round trip to add ID3 tags and cover image.  This makes&#xA;me put off uploading recorded files to the site.  Also, the new media file&#xA;needs to be named in a specific format.  I&amp;rsquo;ve added a new CLI subcommand&#xA;to automate all of this for me.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;I always need the full collection of the music files on the computer,&#xA;where I&amp;rsquo;m updating the site from. I can just &lt;code&gt;scp&lt;/code&gt; the existing site onto&#xA;my computer and merge the media directories.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://ukulele.muse-amuse.in/&#34;&gt;Ukulele Tutorials Aggregator&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;The job of manually updating the site is a&#xA;lot of work, and I haven&amp;rsquo;t had the interest to keep doing it.&lt;/dd&gt;&#xA;&lt;dt&gt;RPi Server and Phone Backup&lt;/dt&gt;&#xA;&lt;dd&gt;The physical setup was accidentally dismantled&#xA;by folks I share my physical space with, and I haven&amp;rsquo;t been able to put back&#xA;everything in place, yet.  I&amp;rsquo;m hoping I&amp;rsquo;ll be able to get back to doing this&#xA;at some point this year.&lt;/dd&gt;&#xA;&lt;/dl&gt;&#xA;&lt;h2 id=&#34;outro&#34;&gt;Outro&lt;/h2&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve already built a couple of small things in 2023, and I hope I am able to&#xA;find some interesting things to do this year.&lt;/p&gt;&#xA;&lt;p&gt;Link to the &lt;a href=&#34;https://punchagan.muse-amuse.in/blog/made-in-2021/&#34;&gt;2021&lt;/a&gt; post.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Made in 2021</title>
      <link>https://punchagan.muse-amuse.in/blog/made-in-2021/</link>
      <pubDate>Thu, 24 Feb 2022 02:23:00 +0530</pubDate>
      <guid>https://punchagan.muse-amuse.in/blog/made-in-2021/</guid>
      <description>&lt;p&gt;Some things I made in 2021:&lt;/p&gt;&#xA;&lt;dl&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://github.com/punchagan/earworm/&#34;&gt;Earworm&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;A static site generator to listen to audio (and video?) files in a&#xA;directory. I use it to host a couple of simple websites for music files. It&#xA;also happens to be the first package I uploaded to PyPI despite writing&#xA;Python for many years.&lt;/dd&gt;&#xA;&lt;dt&gt;&lt;a href=&#34;https://ukulele.muse-amuse.in/&#34;&gt;Ukulele Tutorials Aggregator&lt;/a&gt;&lt;/dt&gt;&#xA;&lt;dd&gt;Inspired by &lt;a href=&#34;https://ukealong.com/&#34;&gt;Ukealong.com&lt;/a&gt;, I set out to create&#xA;an aggregator for Ukulele Tutorials for Indian songs. I&amp;rsquo;ve, with help from&#xA;&lt;a href=&#34;https://twitter.com/kamalx&#34;&gt;Kamal&lt;/a&gt;, populated about 300 songs on the site. I haven&amp;rsquo;t been able to keep up&#xA;with maintaing it, after an initial bunch of work. I&amp;rsquo;ve wanted to automate&#xA;more of the workflow, but haven&amp;rsquo;t yet.&lt;/dd&gt;&#xA;&lt;dt&gt;RPi Server and Phone Backup&lt;/dt&gt;&#xA;&lt;dd&gt;I&amp;rsquo;ve started to use a Raspberry Pi to backup&#xA;data from my phone and laptop to a personal Hard disk. I&amp;rsquo;ve &lt;a href=&#34;https://github.com/punchagan/ansible-raspberry-pi&#34;&gt;ansible scripts&lt;/a&gt;&#xA;to reproduce the RPi&amp;rsquo;s setup, and some &lt;a href=&#34;https://github.com/punchagan/sync-rpi&#34;&gt;scripts to &amp;ldquo;sync&amp;rdquo;&lt;/a&gt; my phone&amp;rsquo;s data&#xA;every few hours, when it&amp;rsquo;s on the same network. There&amp;rsquo;s a lot more that I&#xA;need here, before I can ditch cloud backups of important things.&lt;/dd&gt;&#xA;&lt;dt&gt;Music&lt;/dt&gt;&#xA;&lt;dd&gt;I made covers of about 10 songs on the Ukulele, that I shared with&#xA;some friends. I&amp;rsquo;ve ways to go before I&amp;rsquo;m comfortable sharing them on the web,&#xA;publicly.&lt;/dd&gt;&#xA;&lt;/dl&gt;&#xA;&lt;p&gt;I&amp;rsquo;m glad to have had the energy, time and resources to be able to spend time&#xA;working on some fun things despite everything that 2021 had in store for&#xA;us. Let&amp;rsquo;s see what 2022 has in store!&lt;/p&gt;&#xA;&lt;p&gt;PS: This post is quite late into 2022, but it&amp;rsquo;s an excuse to post something to&#xA;a blog that&amp;rsquo;s not seen any updates since the middle of 2020.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Hat tip to Bryan Braun whose &lt;a href=&#34;https://www.bryanbraun.com/2022/01/11/made-in-2021/&#34;&gt;post&lt;/a&gt; inspired me to write this&lt;/em&gt;&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Instagram&#39;s user-friendliness</title>
      <link>https://punchagan.muse-amuse.in/blog/instagram-user-friendliness/</link>
      <pubDate>Wed, 24 Jun 2020 20:13:00 +0530</pubDate>
      <guid>https://punchagan.muse-amuse.in/blog/instagram-user-friendliness/</guid>
      <description>&lt;p&gt;TL; DR: I&amp;rsquo;m a video content creator on Instagram, and don&amp;rsquo;t tell me Instagram is&#xA;user friendly. Being able to preview posts before making them viewable for&#xA;everyone will go a long way, though.&lt;/p&gt;&#xA;&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve been using Instagram quite regularly from around the beginning of this&#xA;year, posting about one video a week on an average. Previously, I used it&#xA;primarily as a content consumer for about an year, before getting off it for&#xA;quite long since it started to turn into a big time-suck. In the current stint&#xA;of using Instagram as a content-creator, I&amp;rsquo;ve had quite a few frustrating user&#xA;experiences. On a platform that comes with a giant reputation of being&#xA;user-friendly, this is a surprise.&lt;/p&gt;&#xA;&lt;p&gt;A lot of my posts this year have been video content. While posting them, I ran&#xA;into a bunch of things that didn&amp;rsquo;t &amp;ldquo;just work&amp;rdquo;. For instance, in the first 3 or&#xA;4 posts of the &lt;a href=&#34;https://www.instagram.com/tiks_ultimate/channel/&#34;&gt;Humans of TIKS&lt;/a&gt; series, every post had some thing broken, leading&#xA;to a poor viewing experience.&lt;/p&gt;&#xA;&lt;p&gt;Some of my friends, though, found it surprising that I was frustrated with&#xA;Instagram. &amp;ldquo;Isn&amp;rsquo;t it very user-friendly?&amp;rdquo;, I was asked by many. I think&#xA;Instagram is just riding on their reputation from the past. The newer features,&#xA;especially around video content, aren&amp;rsquo;t exactly &amp;ldquo;user-friendly&amp;rdquo;. Instagram does&#xA;focus on giving the content consumer a nice (read: addictive) experience. But,&#xA;as a creator, there are a bunch of hoops to jump. Content creators probably put&#xA;up with it just for the reach Instagram gives.&lt;/p&gt;&#xA;&lt;p&gt;In this post, I&amp;rsquo;ve listed down everything that I see as broken. I&amp;rsquo;ve also tried&#xA;to suggest improvements to each broken feature that would make the experience&#xA;more friendly. I start with the more common problem scenarios and progress&#xA;towards the edge cases.&lt;/p&gt;&#xA;&lt;h2 id=&#34;caption-formatting-is-needlessly-hard&#34;&gt;Caption formatting is needlessly hard&lt;/h2&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve always had to fiddle with the caption of a post, after publishing it, if it&#xA;had multiple paragraphs. There&amp;rsquo;s a magic algorithm that Instagram uses to decide&#xA;if multiple line-breaks in the text actually mean separate paragraphs or not.&lt;/p&gt;&#xA;&lt;p&gt;After some trial and error, I&amp;rsquo;ve figured out a few things about it. For&#xA;instance, leaving a trailing space at the end of a paragraph causes paragraphs&#xA;to be joined together. But, when the second &amp;ldquo;paragraph&amp;rdquo; starts with a non-text&#xA;character, it doesn&amp;rsquo;t seem to matter what the previous paragraph ends with, they&#xA;always are joined together as a single one.&lt;/p&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t want to find out these details by trial and error. Adding previews for&#xA;captions would make this so much nicer. Some documentation for the &amp;ldquo;magic&amp;rdquo; would&#xA;probably help too. Instagram could even look at WhatsApp, its messaging cousin,&#xA;for some lessons on how to make writing text easier. Switching to a more common&#xA;markup language would be a nice bonus.&lt;/p&gt;&#xA;&lt;h2 id=&#34;albums-are-restrictive&#34;&gt;Albums are restrictive&lt;/h2&gt;&#xA;&lt;p&gt;Posting multiple images in a single post (an album) is a pain. All images are&#xA;&lt;a href=&#34;https://help.instagram.com/269314186824048&#34;&gt;cropped to the same orientation&lt;/a&gt; &amp;ndash; square, portrait or landscape.&lt;/p&gt;&#xA;&lt;p&gt;Until a few years ago, Instagram required every image to be square. If you want&#xA;to keep things dead simple for your users, the square image restriction is as&#xA;simple as it can get. At least it&amp;rsquo;s easy to understand and remember, even though&#xA;I can&amp;rsquo;t post my pictures exactly the way I want.&lt;/p&gt;&#xA;&lt;p&gt;The current same orientation restriction is worse on both fronts. I&amp;rsquo;m still left&#xA;with not being able to post my pictures exactly the way I want. But, also the&#xA;restriction is not easy to infer from the UI. I had to fiddle with the UI and my&#xA;pictures for a while, to understand that there&amp;rsquo;s no way around this, and that&#xA;Instagram is actually enforcing this restriction.&lt;/p&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t want to be thinking about Instagram&amp;rsquo;s restrictions while clicking my&#xA;pictures. I want to take the best pictures I can, and upload them with the best&#xA;possible orientation/crop.&lt;/p&gt;&#xA;&lt;p&gt;Instagram may have these restrictions in place to ensure the best possible&#xA;&amp;ldquo;viewing&amp;rdquo; experience. But, for the creators the user-friendly thing to do here&#xA;would be to remove these restrictions. I think, even going back to the universal&#xA;square image restriction would feel more user-friendly!&lt;/p&gt;&#xA;&lt;h2 id=&#34;public-profiles-really&#34;&gt;Public profiles, really?&lt;/h2&gt;&#xA;&lt;p&gt;I think, a public profile should be viewable by anybody without having to login,&#xA;or having to use a specific kind of device. But, Instagram&amp;rsquo;s idea of &amp;ldquo;public&amp;rdquo;&#xA;profiles is quite different.&lt;/p&gt;&#xA;&lt;p&gt;If you are not logged into Instagram, and are viewing a public profile, you are&#xA;prompted to login after scrolling down through a few posts on the profile. If&#xA;you are on a desktop browser, you can&amp;rsquo;t open up any post from a public profile.&#xA;You are prompted to login, when you try to view a post. Even on a mobile&#xA;browser, you are prompted to login after opening 3 or 4 posts. Opening direct&#xA;links (or opening posts in a new tab) works, though.&lt;/p&gt;&#xA;&lt;p&gt;Instagram obviously wants to grow as much as it can, and it doesn&amp;rsquo;t really care&#xA;about people not on the platform. As a content creator, though, I care about my&#xA;audience, irrespective of whether they have an Instagram account or not. A user&#xA;friendly platform would keep their users&amp;rsquo; interests ahead of their growth goals&#xA;and not do such shady stuff. Or at least, tell us the truth and stop calling it&#xA;&amp;ldquo;public&amp;rdquo; profiles.&lt;/p&gt;&#xA;&lt;h2 id=&#34;so-many-video-types&#34;&gt;So many video types!&lt;/h2&gt;&#xA;&lt;p&gt;When I want to post a video on Instagram, I&amp;rsquo;ve to first decide what kind of a&#xA;&amp;ldquo;post&amp;rdquo; to make. If I want to post a &amp;ldquo;short&amp;rdquo; video, it can go into a normal&#xA;post/album if it is under a minute. If not, I&amp;rsquo;ll either need to split it up into&#xA;smaller segments, or post it as an IGTV video. Stories can only be 15 seconds&#xA;long, or they get chopped into multiple shorter stories.&lt;/p&gt;&#xA;&lt;p&gt;IGTV supports longer videos &amp;ndash; from 1 minute up to 60 minutes long. The videos&#xA;need to be portrait videos with an aspect ratio of 4:5 or smaller, 9:16 is&#xA;recommended, while normal posts prefer square (1:1) videos.&lt;/p&gt;&#xA;&lt;p&gt;Just like with pictures, I don&amp;rsquo;t want to care about Instagram&amp;rsquo;s restrictions&#xA;when capturing a video. I want to shoot my video, and let Instagram do what is&#xA;required to share that video. I find it strange that there are hundreds of blog&#xA;posts documenting how to upload an already recorded video to IGTV.&lt;/p&gt;&#xA;&lt;p&gt;A user-friendly platform would let users upload the videos as they shot them,&#xA;and prompt about adding some padding, or allowing users to crop and select a&#xA;part of the video, to match the aspect ratio requirements.&lt;/p&gt;&#xA;&lt;h2 id=&#34;9-16-igtv-videos-are-broken&#34;&gt;9:16 IGTV videos are broken&lt;/h2&gt;&#xA;&lt;p&gt;The documented aspect ratio for an IGTV video is 9:16, but guess what! They&#xA;aren&amp;rsquo;t displayed correctly in the mobile app.&lt;/p&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;https://user-images.githubusercontent.com/315678/85221173-6017dc00-b3cf-11ea-8b84-43d44cf89d20.png&#34; width=&#34;150px&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;They are displayed correctly in mobile and desktop browsers, though. But, given&#xA;how Instagram nudges everyone to use the app, I would guess that 90-95% of&#xA;viewers would be using the app, if not more.&lt;/p&gt;&#xA;&lt;figure&gt;&lt;img src=&#34;https://user-images.githubusercontent.com/315678/85098070-21d7bc80-b217-11ea-9432-bfb8ebe3ab0b.png&#34; width=&#34;150px&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;After a lot of trial and error, I figured out that I need to upload my videos at&#xA;a ratio of 9:21 or lower to be able to prevent the sides from being chopped off.&#xA;Instagram&amp;rsquo;s UI or docs don&amp;rsquo;t mention this at all. Also, this workaround only&#xA;works when uploading from a destkop browser. I haven&amp;rsquo;t yet figured out how to&#xA;prevent mobile uploads from looking broken.&lt;/p&gt;&#xA;&lt;p&gt;For a visual platform that is so bullish on everything looking perfect, this is&#xA;horrendous! I don&amp;rsquo;t know where to place this - is this a bug in Instagram&amp;rsquo;s&#xA;processing pipeline? Or is this a part of attempts to provide the best viewing&#xA;experience? Just display my videos as advertised, please!&lt;/p&gt;&#xA;&lt;h2 id=&#34;video-post-processing-is-magic&#34;&gt;Video post-processing is magic&lt;/h2&gt;&#xA;&lt;p&gt;Any video I upload goes through a processing pipeline, that is undocumented,&#xA;before it gets displayed to the users. This is possibly done to optimize for&#xA;space, etc., but it has led to broken user experience for at least a couple of&#xA;my videos.&lt;/p&gt;&#xA;&lt;p&gt;On one occassion, it made the audio and video go out of sync. To be fair, the&#xA;video did have some issues with the audio stream data missing for the first 3&#xA;seconds of the video, due to a &lt;a href=&#34;https://github.com/thatte-idli-kaal-soup/humans/commit/77f10800ce6663e1e118b425421662206e3f50c4&#34;&gt;bug in my video processing pipeline&lt;/a&gt;. The same&#xA;video worked perfectly fine in &lt;a href=&#34;http://www.mplayerhq.hu/design7/news.html&#34;&gt;MPlayer&lt;/a&gt;, &lt;a href=&#34;https://mpv.io/&#34;&gt;mpv&lt;/a&gt;, &lt;a href=&#34;https://www.videolan.org/vlc/&#34;&gt;VLC&lt;/a&gt;, and on YouTube. Noticing that&#xA;Instagram&amp;rsquo;s post-processing made the audio and video go out of sync, after about&#xA;50 people watched it, is such a shame!&lt;/p&gt;&#xA;&lt;p&gt;To avoid such problems, we decided to make a demo account and upload every video&#xA;there, before posting it from the real account. Needing to do this seems super&#xA;broken to me. I still did it, since I wanted everything to work just right. But,&#xA;that wasn&amp;rsquo;t to be.&lt;/p&gt;&#xA;&lt;p&gt;We had a video where we added some background music on the video, and it ended&#xA;up having a 4-channel audio stream. It turns out the Instagram app on iOS won&amp;rsquo;t&#xA;play such videos, and we only detected that after some people in our audience&#xA;let us know. Instagram has this documented on their IGTV documentation under&#xA;&lt;a href=&#34;https://help.instagram.com/1038071743007909&#34;&gt;additional technical details&lt;/a&gt;. But, I only read that because things weren&amp;rsquo;t&#xA;working. Again, our followers had a broken experience because of this.&lt;/p&gt;&#xA;&lt;p&gt;It can be hard to &amp;ldquo;document&amp;rdquo; all the technical details of the post-processing&#xA;pipeline. But, it should be fairly easy to detect things like 4-channel audio,&#xA;and warning users about it!&lt;/p&gt;&#xA;&lt;p&gt;Even simpler, but user-friendlier thing to do here would be to allow users to&#xA;view the video after it has been uploaded and processed, before making it&#xA;viewable by everyone. Currently, draft posts cannot be shared with friends. I&amp;rsquo;m&#xA;not sure if they can even be found and viewed from multiple devices &amp;ndash; it wasn&amp;rsquo;t&#xA;intuitive to do this, when I tried. Just making it easy to preview posts before&#xA;sharing it publicly would make things a lot lot more user-friendly. It feels&#xA;quite backward to be using a private account for this to ensure no broken&#xA;content is published.&lt;/p&gt;&#xA;&lt;p&gt;This may sound too extreme, but just give me the exact &lt;a href=&#34;https://www.ffmpeg.org/&#34;&gt;ffmpeg&lt;/a&gt; command being run&#xA;on the uploaded videos somewhere in the docs! I would then be able to verify&#xA;that my videos are Instagram compliant, without having to upload a dozen videos&#xA;and checking on multiple devices. With a lot of big brands using Instagram, I&#xA;think there&amp;rsquo;d be other &amp;ldquo;expert&amp;rdquo; users who would appreciate these details.&lt;/p&gt;&#xA;&lt;h2 id=&#34;published-content-is-uneditable&#34;&gt;Published content is uneditable&lt;/h2&gt;&#xA;&lt;p&gt;I would find the brokenness more tolerable if I could go back and change the&#xA;uploaded videos. But, Instagram doesn&amp;rsquo;t let you edit published posts. It does&#xA;seem like a reasonable restriction, since this content may have been referenced&#xA;elsewhere. This seems to be Twitter&amp;rsquo;s take too, for instance.&lt;/p&gt;&#xA;&lt;p&gt;For something as &amp;ldquo;heavy&amp;rdquo; as a video, though, it seems a little too restrictive.&#xA;It may not be a great idea to allow changing content behind people&amp;rsquo;s backs. But,&#xA;I&amp;rsquo;m not happy about my followers having to watch a broken post. Deleting a&#xA;broken post and making a new one doesn&amp;rsquo;t really cut it &amp;ndash; it feels spammy.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;d like to see some kind of versioning added to the videos. Let user upload a&#xA;newer version, and make it possible for users to see older versions too, if they&#xA;chose to. Google Drive and Dropbox seem to do this, for instance.&lt;/p&gt;&#xA;&lt;h2 id=&#34;outro&#34;&gt;Outro&lt;/h2&gt;&#xA;&lt;p&gt;Instagram started off by allowing users to only post square pictures. It was&#xA;very easy to undestand and use, even if not very accomodating of different use&#xA;cases. Everyone and their dog could use it!&lt;/p&gt;&#xA;&lt;p&gt;A whole bunch of new features have been added in the last few years, trying to&#xA;compete with the other platforms. Doing the simplest thing - posting a single&#xA;picture - may still be easy to do, but trying to do anything more than that&#xA;leads to a frustrating experience quite often. I think the reputation of being&#xA;user-friendly is now just a vestige of the past.&lt;/p&gt;&#xA;&lt;p&gt;People who use it regularly get used to its quirks and probably put up with the&#xA;annoyances, because it gives them a way to reach their audiences with whom&#xA;Instagram is popular. Instagram is &amp;ldquo;friendly&amp;rdquo; to the content consumer, and tries&#xA;its best to keep the content extremely consumable to keep them coming back for&#xA;more. The burden of figuring out and making the content fit the restrictions is&#xA;left on the content-creators. This can often be frustrating.&lt;/p&gt;&#xA;&lt;div style=&#34;font-size:small;&#34; class=&#34;reviewers&#34;&gt;&#xA;&lt;p&gt;Thanks to &lt;a href=&#34;https://balu.muse-amuse.in/&#34;&gt;Kartik&lt;/a&gt;, Meghana, Nitin, Pratiksha, &lt;a href=&#34;https://a-travelers-tales.blogspot.com/&#34;&gt;Ranjan&lt;/a&gt;, &lt;a href=&#34;https://www.lightstalking.com/author/riteshsaini/&#34;&gt;Ritesh&lt;/a&gt;, &lt;a href=&#34;http://baali.muse-amuse.in&#34;&gt;Shantanu&lt;/a&gt; and &lt;a href=&#34;https://vkrishnaswam.github.io/&#34;&gt;Vivek&lt;/a&gt;&#xA;for reading drafts (or parts) of this post and helping by boucing off ideas.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>The tools we build change us</title>
      <link>https://punchagan.muse-amuse.in/blog/the-tools-we-build-change-us/</link>
      <pubDate>Wed, 22 Apr 2020 12:54:00 +0530</pubDate>
      <guid>https://punchagan.muse-amuse.in/blog/the-tools-we-build-change-us/</guid>
      <description>&lt;p&gt;A couple of weeks ago, I spent some time building a couple of &amp;ldquo;automation tools&amp;rdquo;&#xA;for myself. It is still early days to talk about their impact, but I have&#xA;already noticed some changes, and have some thoughts to share.&lt;/p&gt;&#xA;&lt;p&gt;Thanks to the lock-down, I felt like I needed to do something to get more&#xA;fresh-air and sunlight. I figured out a nice setup to work from my balcony, when&#xA;I feel like it. It&amp;rsquo;s nice to sit in the balcony, since there&amp;rsquo;s not as much&#xA;traffic, and there&amp;rsquo;s enough fresh-air and sunlight.&lt;/p&gt;&#xA;&lt;p&gt;I usually work with dark themes in all my tools - code editor, terminal, OS,&#xA;chat clients, etc. But, switching to the balcony during the day makes it harder&#xA;to read text in dark mode. I have to switch all my tools to light mode. And then&#xA;switch back, when I come back in. It takes me about a minute or so, each time to&#xA;make this switch. In a few days, this started to seem like work! And I could see&#xA;myself needing to push myself to step out, or step back in.&lt;/p&gt;&#xA;&lt;p&gt;A few days later, I spent about half a day writing a tool that could switch&#xA;modes for all of these programs with one command. If I was doing the switches&#xA;manually each time, it would take 2-4 months for the switching time to add up to&#xA;the 4-6 hours, I spent on getting everything working correctly. So, it&amp;rsquo;s not&#xA;really a bad investment. But, what matters more is that I don&amp;rsquo;t feel a mental&#xA;block to alternate between indoors and outdoors because of all the extra work&#xA;that manual theme switching felt like. I am getting some fresh air and sunlight&#xA;everyday. :)&lt;/p&gt;&#xA;&lt;p&gt;The other tool I wrote recently was for generating a daily summary of what I&#xA;worked on from my org-mode based clock entries. I add more detail to the&#xA;bulleted-list summary that gets generated, and then post it on our team&amp;rsquo;s Zulip.&#xA;I noticed a couple of changes because of this.&lt;/p&gt;&#xA;&lt;p&gt;First, I clock things more diligently than I did before. If I forget to clock&#xA;into something, I go back and add some manual entries, to maintain a proper log.&#xA;Second, a couple of other people on my team also have started posting a summary&#xA;of their day&amp;rsquo;s work, which is quite nice. This tool may have triggered a change&#xA;in my teammates&amp;rsquo; behavior, though I didn&amp;rsquo;t really intend it to.&lt;/p&gt;&#xA;&lt;p&gt;We are creatures of habit, often going through the motions, without needing to&#xA;think about what we are doing. This is evolution helping us save energy for the&#xA;more critical tasks. But, our environments can have a big impact on our habits.&#xA;Having tools around us, that are easy to use, can help us nudge ourselves in&#xA;directions that we want to be nudged in.&lt;/p&gt;&#xA;&lt;p&gt;The tools we build can change us; if we let them.&lt;/p&gt;&#xA;&lt;div style=&#34;font-size:small;&#34; class=&#34;reviewers&#34;&gt;&#xA;&lt;p&gt;Thanks to Rajesh, &lt;a href=&#34;https://www.lightstalking.com/author/riteshsaini/&#34;&gt;Ritesh&lt;/a&gt;, &lt;a href=&#34;https://tcluri.github.io/&#34;&gt;Tejaa&lt;/a&gt; and &lt;a href=&#34;http://baali.muse-amuse.in&#34;&gt;Shantanu&lt;/a&gt; for reading drafts of this post.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Automation and Habits</title>
      <link>https://punchagan.muse-amuse.in/blog/automation-and-habits/</link>
      <pubDate>Wed, 15 Aug 2018 18:44:00 +0530</pubDate>
      <guid>https://punchagan.muse-amuse.in/blog/automation-and-habits/</guid>
      <description>&lt;p&gt;We usually see automation as a thing we do to save time. But, there&amp;rsquo;s more to it&#xA;than just saving time.&lt;/p&gt;&#xA;&lt;p&gt;Several years ago, I built a tool called &lt;a href=&#34;https://github.com/org2blog/org2blog&#34;&gt;org2blog&lt;/a&gt; that let me write blog posts&#xA;in my text-editor, and publish them with just a couple of key-strokes. I spent&#xA;several man-weeks getting it to work well &amp;ndash; adding lots of features including&#xA;image uploads. The time I spent on developing and maintaining it dwarfs the time&#xA;saved by automation.&lt;/p&gt;&#xA;&lt;p&gt;But, in the three months following this, I published 30 blog posts &amp;ndash; as many as&#xA;I would&amp;rsquo;ve otherwise published during the whole year. &lt;code&gt;org2blog&lt;/code&gt; wasn&amp;rsquo;t just&#xA;saving time &amp;ndash; it drastically reduced the friction to publish new posts. On some&#xA;occasions where I would&amp;rsquo;ve previously avoided writing a new post, I ended up&#xA;writing one because &lt;code&gt;org2blog&lt;/code&gt; made it a breeze. I could focus on actually&#xA;writing the post and not let my attention be hijacked by the repetitive and&#xA;boring steps that were previously required to start writing a new post and&#xA;publish it.&lt;/p&gt;&#xA;&lt;p&gt;Automation abstracts away the details that we would&amp;rsquo;ve otherwise had to spend&#xA;our attention on. This reduced mental overload encourages us to &amp;ldquo;do the right&#xA;thing&amp;rdquo;, when we would&amp;rsquo;ve otherwise been lazy and taken the easier route of not&#xA;doing something. No wonder, Douglas Adams &lt;a href=&#34;https://www.goodreads.com/quotes/587524-i-have-a-well-deserved-reputation-for-being-something-of-a&#34;&gt;confessed&lt;/a&gt; to happily spending a day on&#xA;automating something that would&amp;rsquo;ve taken him ten seconds.&lt;/p&gt;&#xA;&lt;p&gt;When extended to a team setting this would mean our (automation) tools nudging&#xA;everyone on the team towards better habits and behavior. We must recognize this&#xA;and treat our tools as an integral part of our team, and not just time-savers.&#xA;The Zulip &lt;a href=&#34;https://github.com/zulip/zulip/tree/master/tools&#34;&gt;community&lt;/a&gt; is a good example of this. Tim, the lead developer of Zulip,&#xA;pays particular attention to developer workflows in Zulip and is constantly on&#xA;the lookout to automate tasks and/or eliminate unnecessary tasks, to make it&#xA;easier for everyone to &amp;ldquo;do things right&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;The tools we build aren&amp;rsquo;t just saving us time, but are changing us back.&#xA;Building better tools helps build better teams. Go forth and automate!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;PS:&lt;/strong&gt; This post is inspired from &lt;a href=&#34;https://www.youtube.com/watch?v=Lbcyyu8XB%5FY&#34;&gt;this talk by Jessica Kerr&lt;/a&gt; where, among other&#xA;things, she talks about Automation and some reasons for doing it.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;PPS:&lt;/strong&gt; &lt;a href=&#34;https://www.facebook.com/jasonlsilva/videos/1735277136736564/UzpfSTE1NzgwNTI3MDU3OTIzNDI6MTg2OTEyNDY5NjY4NTE0MA/&#34;&gt;Jason Silva talks&lt;/a&gt; about humans as being a technology creating species,&#xA;and how the tools we create change us, and how we change them to change us&#xA;further. This seems a lot like the idea in this post, except at a much larger&#xA;scale.&lt;/p&gt;&#xA;&lt;p&gt;Thanks to &lt;a href=&#34;http://baali.muse-amuse.in&#34;&gt;Shantanu&lt;/a&gt; for reviewing this blog post.&lt;/p&gt;&#xA;</description>
    </item>
  </channel>
</rss>
