As an AI language model, ChatGPT has gained a lot of attention lately. It is widely known for being quite powerful and having impressive natural language processing capability (especially for programming). This is why I decided to create a Ruby gem, RubyGPT, built on top of the newly released ChatGPT API which will enable me to chat with ChatGPT from the command line.
I recorded a demo of how RubyGPT works. I encourage you to watch it to understand better how this tool can make interacting with ChatGPT more efficient. It can be used directly from the command line or integrated into almost any editor and used like an interactive REPL.
I also created a corresponding AppleScript that passes the currently edited file from BBEdit into the `rubygpt` gem, parses the request then updates the file, making it feel like an editable conversation.
RubyGPT can be helpful in programming sessions, brainstorming, or general inquiry. It feels like you’re editing a Markdown text with an AI pair.
I may release this tool if there is a demand for it.
Scarlet is a personal issue tracker that saves to a file that you can include in your project directory, or anywhere you prefer. No accounts, no cloud services, no syncing, no third-party integration. Just a simple place to file away your project’s to-dos and close them when they’re complete.
The Services menu is getting a well deserved love from the Kaleidoscope blog:
The Services menu, originally part of NeXTSTEP, was introduced to the Mac with the advent of OS X in 2001. Throughout the entire history of OS X (now called macOS), Services never received a lot of love or major updates. Luckily, Services continues to work to this day and can be remarkably helpful.
One of the things I like about LaunchBar is its integration with the Services menu. There is no need to install a bunch of LaunchBar plugins; you can simply reuse already provided system services and share extensions from installed apps.
I found this old video of me doing a morning browsing session on my old plastic MacBook. This video was recorded 14 years ago! Please don’t ask me why I recorded this.
I recently started making read/review-related GTD projects to be more disciplined about consuming websites and books. I do this because I want to extract information from them and not just read and forget it.
The current one is 43folders.com, which is old, but still contains many valuable tips and tricks regarding Mac productivity. I’m unsure if there is anything like that today like the Mac blogging scene was from 2003-2008 – maybe MPU Talk — when everybody was obsessed with GTD, QuickSilver, Mac OS X, and productivity. Good times!
Anyway… I started to archive interesting articles linked on 43 Folders into DEVONthink. Sadly, many of those blogs are no longer around, but archive.org has them saved.
I constantly tweak my workflows this time of the year. I usually provide tools for others—that’s what I do for a living—but I also have to keep my knives sharp.
I like to think about my Zettelkasten being a large outline. Keeping it inside Bike could be beneficial.
I’m trying to mimic the analog Zettelkasten (or Antinet).
I won’t use an analog one since I like the digital one’s benefits better, but I also want ideas from the analog one.
I’m a programmer and I use my Zettelkasten to understand coding concepts. I have some code snippets stored in SnippetsLab, so it’s easier to link to those from my Zettelkasten outline than keeping them on paper.
I can use the classical LuhmannIDs to add an ID each note.
I can nest notes under each other.
I can easily link notes together thanks to the Bike and Hook integration.
Disadvantages
I don’t have backlinks, but I’m not sure I need that inside a Zettelkasten.
I watched a video from Cal Newport on how he uses a simple text file for the sense-making of a bunch of new information. He mentioned that instead of processing his emails one by one, he captures the essence of every email into his text file, then starts to categorize it, organize it by projects, etc. This gave me an idea about solving a similar problem I had with my GTD inbox for a while now.
GTD recommends that we process our stuff in the inbox sequentially, without grouping beforehand. The problem with this approach is that many items related to different projects are scattered in our inbox, so we’re jumping in and out of projects while processing our inbox. This constant context switching drains energy from our brain.
If we want to spare our attention, it is a good idea to group our unprocessed inbox items by project, so we can reduce the context switching when we process them. Using this approach for the GTD Process and Organize steps will ensure that we clean things related to each project in one go, not randomly.
I will show you how to do this inside OmniFocus, but you can also steal this approach for Things using a similar “Process” tag.
Why is this a problem?
The point is to add a temporary structure to information in the inbox. I usually do some form of project planning and next action creation when I’m emptying my inbox. The problem is that I constantly switch thoughts about many different things as I go through each item. It would be nice to have them batched and grouped by their project. This can reduce the attention switching to different topics/projects.
Let’s say we have an inbox like this:
Item 1 (could be about Project X)
Item 2 (could be about Project Y)
Item 3 (could be about Project Z)
Item 4 (could be about Project X) ← This is where I will have to return to “Project X” again. This item can even be connected to “Item 1” somehow.
I hate when I have to switch my current context (not my GTD context, but the current mindset that I’m in) and go back to a project I already thought about and assigned a next action to; possibly, I even closed its support material since then.
Having new information pre-organized by projects (or topics) can reduce the load of thinking about a project twice or more in an inbox processing session.
Using the Process workflow
The first step is to create a new perspective in OmniFocus called Process with the rules shown on the screenshot above. You’ll use this perspective to process things instead of the standard OmniFocus Inbox.
It’s essential to have everything corralled into the OmniFocus Inbox, so you can stop jumping around different inboxes, but more importantly, have everything pre-organized by the project. Go through your inboxes (email, Slack, DEVONthink, etc.) and link a new action to all unprocessed items in OmniFocus. The Hook app can help a lot with this step.
Open the Process perspective, where you’ll see your unorganized stuff sitting in the Inbox waiting to be pre-organized. You must quickly go through each item and assign it to an existing or new project (don’t assign tags). You don’t have to come up with the final name for a new project. Set whatever comes to your mind; the important thing is to pre-organize unprocessed items in this step. If you don’t know where to assign it, just skip it, or move it into a singular action list related to an area.
When you have pre-organized everything, you can click the clean-up button (or press Command-K) to see all of your unprocessed items grouped by project. Now you can go through each item and deal with them in the context of its project instead of having them all over the place.
Why having a pre-organized inbox is better than a flat list of unknown stuff
I always get annoyed when I deal with something related to a big project in my inbox, and then 5 minutes later, another thing pops into my view about the same subject. I have to open the project and its support material again, get into the same mindset, and maybe even reconsider everything I figured out 5 minutes ago. It is a dumb way to plan things.
I’ve been pre-organizing inbox actions by the project for about a month now, and I can assure you that having unprocessed stuff grouped by the project can make a big difference. I can process my OmniFocus Inbox about 15-20% faster than before, but more importantly, I don’t feel tired after doing it. I stopped switching contexts for every item; instead, I’m spending more time at the project level and dealing with new things from this perspective.
Yesterday I installed the latest version of Craft. I waited for iCloud sync because I’m very conservative about where I sync my stuff, and Craft only had its sync server.
The update released yesterday makes it possible to add external folders from iCloud Drive or even offline folders. It is a start, although I was expecting full CloudKit sync, not just an external folder.
It still has some issues and bugs related to syncing. I migrated my Zettelkasten from DEVONthink to Craft; it has about 150 notes right now. I installed Craft on all of my devices, and I’m still experiencing sync errors.
It seems like Craft is stuck in a state where it stops updating files from the iCloud Drive folder I set as a space. I have to reload the folder every time I change something, which is annoying.
The app itself is lovely, way better to use for Zettelkastens than DEVONthink on iOS. I like the initial experience, but syncing problems doesn’t make me trust in the app. I saw the developers are responsive and fix stuff quickly, so I’m hopeful. Until then, I keep testing Craft and see how it will change my habit of writing into my Zettelkasten.
Nekem alapvetően nincs problémám a Safari tabkezelésével, nem úgy mint a linkelt posztban Dan Morennek, de a Debug menü engedélyezése önmagában is érdekes lehet. Van jópár olyan opció ebben a menüben, amit mi nördök valószínűleg tweakelni fogunk.
Már régóta idegesített, hogy az iOS-en oly sokat használt Site Search shortcutomnak nincs macOS megfelelője, úgyhogy ma reggel összeraktam Automatorben. Mindössze annyit csinál a cucc, hogy adott weblapon elindítva megkérdezi mire szeretnék rákeresni, majd megnyitja a Google találatokat egy új Safari tabon az adott oldalról.
Miután az új csapatban Slacket használunk kommunikációra, így megint felmerült a hivatalos Electronos kliens, amit nem vagyok hajlandó használni – akkor inkább megnyitom Safariban. Szerencsére most jött velem szembe a Shrugs app, ami egy egész pofás natív Slack kliens Macre.
Ezt a screenshotot pedig csak itt hagyom a poszt végén.
Megnéztem a Big Sur bétát. Elsőre sokkal előrébb van, mint az iOS 7 volt, de az ikonok árnyékai miatt valakit seggbe kellene rúgni az Applenél. Az ablakokból hiányzik a kontraszt – sok a fehér — és nem egyértelmű melyik aktív.
It shouldn’t surprise anyone that Steve Jobs liked to take pictures. He was even taking a picture the last time I saw him. However, many people might not know that some of his photos shipped as Desktop Pictures in Mac OS X 10.5 Leopard.
A Grass Blades hátteret én is használtam sokáig. Ez volt az a vizes, Vista-szerű, füves kép, amivel bemutatták a Leopardot a 2007-es WWDC-n. Kár, hogy nincs már belőle nagyobb felbontású verzió.
I always run into Mac utilities that are trying to patch a missing feature of macOS. Some of these are helpful tools but there are ones that are completely unnecessary since macOS provides a way to replicate them by default. The problem is that sometimes these features are hidden or require a bit of automation via Automator. I’m going to start a series here to share these tips, so you don’t have to clutter up your menubar (and waste system resources) for pointless utilities.
Toggle dark mode via keyboard
Open Automator and create a new Quick Action.
Set “Workflow receives” to “no input” in the top of the window. Also make sure it’s set to “any application”.
Search for “Change System Appearance” action on the left and drag it into the right side of the window. Automator now should look something like this.
Save it as “Toggle Dark Mode” or “Change System Appearance”.
Go to System Preferences/Keyboard/Shortcuts and choose Services on the left.
Find your newly created service in the list, then assign a keyboard shortcut to it.
You can now toggle dark mode via the keyboard shortcut you’ve picked in any app.
Show hidden files in Finder
You can just open any Finder window, press ⌘⇧. (Command+Shift+dot) to show or hide hidden files without installing anything special.
I was browsing Twitter yesterday and run into a group of people who disabled call receiving on their Mac because of macOS makes your Mac ring like any other mobile device by default. This can be great if your phone is in another room, but if you like me, your devices are nearby most of the time, so it’s really annoying when all of them are starting to ring at once when I receive a call.
Luckily there is a way to mute ringtones but keep the call notification around. This means your iPhone will ring, but other devices will stay silent and just show you the incoming call, giving you an option to answer them or hang up right there.
For some reason FaceTime notification settings are also controlling the appearance of phone calls on macOS, iOS, and iPadOS, so you have to customize that.
macOS
Go to System Preferences/Notifications, find FaceTime in the list and turn off "Play sound for notifications". This way macOS will show all incoming FaceTime, FaceTime Audio, and regular phone calls in the top right, but your Mac gonna stay silent.
iOS/iPadOS
For some reason, there is no way to disable sound for call notifications on iOS and iPadOS, although there is a workaround: you can create a silent ringtone using GarageBand or you can buy one from the iTunes Store (buying will also make it available for your other iOS devices).
After acquiring the ringtone, go to Settings/Notifications, select FaceTime and set your new silent ringtone under Sounds.
watchOS
Open the Watch app on your phone, scroll down, select Phone and turn off Sound.
I like to keep Haptic turned on because sometimes I’m away from my iPhone but I still want to "feel" incoming calls on my wrist.
Setting up your devices this way gives you the best of both worlds: your devices – other than your iPhone – will stay silent when you receive an incoming phone or FaceTime call, but you’ll see the caller ID on the device you’re using. Also it will give you the option to answer the call without picking up your iPhone.
It’s too bad that Black Pixel got bought by another company. No updates come to their apps since then.
2020.02.20.
Since nobody mentioned yet that the 10.15.4 beta 2 contains a new lyrics view in Music, I’m going to mention that the 10.15.4 beta 2 contains a new lyrics view in Music.