{"version":"https://jsonfeed.org/version/1","title":"Micro.blog - Gene Goykhman","home_page_url":"https://micro.blog","feed_url":"https://micro.blog/posts/gene","_microblog":{"about":"https://micro.blog/about/api","id":"284","username":"gene","bio":"","pronouns":"","is_following":false,"is_you":false,"following_count":23,"discover_count":0},"author":{"name":"Gene Goykhman","url":"","avatar":"https://www.gravatar.com/avatar/c5c2d56b2ebd079f41b4ebdc61efca38?s=96&d=https%3A%2F%2Fmicro.blog%2Fimages%2Fblank_avatar.png"},"items":[{"id":"94517606","content_html":"<p>Building Emacs 30 on macOS: <a href=\"https://goykhman.ca/gene/blog/2025-12-10-building-emacs-30-on-macos.html\">goykhman.ca</a></p>","summary":"December 10, 2025\n\nThis is an update to my post about compiling Emacs 29.4 from source. Emacs has been moving forward but unfortunately my beloved Mitsuharu Emacs Mac Port has not. Happily JD Smith has picked up the mantle and there is an up-to-date (albeit experimental) Emacs 30 fork on GitHub. Thi...","url":"https://goykhman.ca/gene/blog/2025-12-10-building-emacs-30-on-macos.html","date_published":"2025-12-10T05:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2025-12-10 05:00","date_timestamp":1765342800,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517605","content_html":"<p>Emacs ibuffer live update: <a href=\"https://goykhman.ca/gene/blog/2025-09-14-emacs-ibuffer-live-update.html\">goykhman.ca</a></p>","summary":"September 14, 2025\n\nInspired by a a recent post by The Emacs Cat about their ibuffer configuration, I was wondering why the ibuffer didn’t update live as buffers were created and killed. With some help from Prot here is a way to hook into the relevant function in Emacs to update the ibuffer list any...","url":"https://goykhman.ca/gene/blog/2025-09-14-emacs-ibuffer-live-update.html","date_published":"2025-09-14T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2025-09-14 04:00","date_timestamp":1757822400,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517604","content_html":"<p>Quickly summing up the whole stack in Emacs Calc: <a href=\"https://goykhman.ca/gene/blog/2025-02-02-quickly-summing-up-the-whole-stack-in-emacs-calc.html\">goykhman.ca</a></p>","summary":"February  2, 2025\n\nHere is a nice little improvement to calc-mode that adds up all the numbers on the stack. It’s equivalent to hitting the + key until the stack is exhausted, and it’s more handy than I would have expected.\n\n\n(defun my/calc-sum-stack ()\n  (interactive)\n  (when-let* ((stack calc-stac...","url":"https://goykhman.ca/gene/blog/2025-02-02-quickly-summing-up-the-whole-stack-in-emacs-calc.html","date_published":"2025-02-02T05:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2025-02-02 05:00","date_timestamp":1738472400,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517603","content_html":"<p>Setting up an iPad as a dedicated sketchbook: <a href=\"https://goykhman.ca/gene/blog/2024-10-29-setting-up-an-ipad-as-a-dedicated-sketchbook.html\">goykhman.ca</a></p>","summary":"October 29, 2024\n\nFor as long as I’ve owned an iPad I’ve been looking for its place in my life. Recently I thought that I’d try using it as a distraction-free sketching and notetaking tool.\n\n\nFirst I took the iPad out of its Magic Keyboard folio. Sketchbooks don’t have keyboards. I found a nice ligh...","url":"https://goykhman.ca/gene/blog/2024-10-29-setting-up-an-ipad-as-a-dedicated-sketchbook.html","date_published":"2024-10-29T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2024-10-29 04:00","date_timestamp":1730174400,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517602","content_html":"<p>Battery Service: <a href=\"https://goykhman.ca/gene/blog/2024-09-19-battery-service-ios.html\">goykhman.ca</a></p>","summary":"September 19, 2024\n\nA few days ago I shipped my Apple Watch Series 7 to Apple for battery service. I have had it for almost 3 years and it was time. \n\n\nI was disappointed, but not really surprised, to learn that I would be receiving a entirely different, presumably refurbished, watch. Not a replacem...","url":"https://goykhman.ca/gene/blog/2024-09-19-battery-service-ios.html","date_published":"2024-09-19T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2024-09-19 04:00","date_timestamp":1726718400,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517600","content_html":"<p>Speeding up Emacs Lisp functions by disabling garbage collection: <a href=\"https://goykhman.ca/gene/blog/2024-08-28-speeding-up-emacs-lisp-functions.html\">goykhman.ca</a></p>","summary":"August 28, 2024\n\nEmacs Lisp has nice built-in profiling tools but if you’re just curious to see how long a function takes to run, you can call it from inside benchmark-run:\n\n\n(benchmark-run (my-slow-function))\n\n\n\nThis will output a list with three elements. The first is total runtime in seconds. The...","url":"https://goykhman.ca/gene/blog/2024-08-28-speeding-up-emacs-lisp-functions.html","date_published":"2024-08-28T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2024-08-28 04:00","date_timestamp":1724817600,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517599","content_html":"<p>Failing to share the benefits of using Emacs: <a href=\"https://goykhman.ca/gene/blog/2024-08-19-the-compounding-benefits-of-being-an-emacs-user.html\">goykhman.ca</a></p>","summary":"August 19, 2024\n\nI’ve become self-conscious about proselyting Emacs to my friends and in public spaces. As enthusiastic as I am about Emacs, I find it difficult to convince others to invest in the learning process. And it is undeniably an investment. I limit my pitch attempts to already technical pe...","url":"https://goykhman.ca/gene/blog/2024-08-19-the-compounding-benefits-of-being-an-emacs-user.html","date_published":"2024-08-19T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2024-08-19 04:00","date_timestamp":1724040000,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517598","content_html":"<p>Upgrading to Emacs 29.4 on Apple Silicon Macs: <a href=\"https://goykhman.ca/gene/blog/2024-08-17-upgrading-to-emacs-294-on-apple-silicon-macs.html\">goykhman.ca</a></p>","summary":"August 17, 2024\n\nThis is an update to my post about compiling Emacs 29.1 from source. Probably due to shifting dependencies that procedure no longer seems to work for me in Sonoma 14.6.1, and there have also been some important security fixes to Emacs and Org Mode that make it advantageous to update...","url":"https://goykhman.ca/gene/blog/2024-08-17-upgrading-to-emacs-294-on-apple-silicon-macs.html","date_published":"2024-08-17T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2024-08-17 04:00","date_timestamp":1723867200,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517597","content_html":"<p>Always Yes in Emacs Lisp: <a href=\"https://goykhman.ca/gene/blog/2024-06-09-always-yes-in-emacs-lisp.html\">goykhman.ca</a></p>","summary":"June  9, 2024\n\nSome Emacs commands tend to ask too many confirmation questions, or at least it would be nice to have the option to skip the confirmation step. For example, saving and quitting a merge session in ediff requires quitting, confirming the quit, and then confirming the save.\n\n\nI wanted to...","url":"https://goykhman.ca/gene/blog/2024-06-09-always-yes-in-emacs-lisp.html","date_published":"2024-06-09T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2024-06-09 04:00","date_timestamp":1717905600,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"94517596","content_html":"<p>I Don’t Trust Parental Controls: <a href=\"https://goykhman.ca/gene/blog/2024-05-29-i-dont-trust-parental-controls.html\">goykhman.ca</a></p>","summary":"May 29, 2024\n\nIf you are the parent of a young gamer, consider opting out of any platform parental controls and doing parental controls the old-fashioned way: keeping an eye on what your child is playing and with whom.\n\n\nThis may not be something you’re able to consistently do, and every parent has ...","url":"https://goykhman.ca/gene/blog/2024-05-29-i-dont-trust-parental-controls.html","date_published":"2024-05-29T04:00:00+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2024-05-29 04:00","date_timestamp":1716955200,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":true,"is_mention":false,"is_podcast":false,"note":"","syndication":[]}},{"id":"17602557","content_html":"<p><a href=\"https://micro.blog/joec\">@joec</a> that’s a gorgeous shot.</p>\n","url":"https://micro.blog/gene/17602557","date_published":"2023-03-11T22:07:23+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2023-03-11 22:07","date_timestamp":1678572443,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"9955007","content_html":"<p><a href=\"https://micro.blog/helgeg\">@helgeg</a> this is great, thank you. Do you recommend any modifications to the recipe?</p>\n","url":"https://micro.blog/gene/9955007","date_published":"2020-07-18T06:36:04+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2020-07-18 06:36","date_timestamp":1595054164,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"9944708","content_html":"<p><a href=\"https://micro.blog/helgeg\">@helgeg</a> that sounds great. I never thought of trying it with a jar with an airlock. Are you using a particular recipe?</p>\n","url":"https://micro.blog/gene/9944708","date_published":"2020-07-16T12:18:20+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2020-07-16 12:18","date_timestamp":1594901900,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"9934825","content_html":"<p><a href=\"https://micro.blog/helgeg\">@helgeg</a> cool! I’d love to hear how it turns out. My own attempts many years ago were ... explosive. It took days to get it off the ceiling. </p>\n","url":"https://micro.blog/gene/9934825","date_published":"2020-07-14T21:47:28+00:00","author":{"name":"Gene Goykhman","url":"","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Fwww.gravatar.com%2Favatar%2Fc5c2d56b2ebd079f41b4ebdc61efca38%3Fs%3D96%26d%3Dhttps%253A%252F%252Fmicro.blog%252Fimages%252Fblank_avatar.png","_microblog":{"username":"gene"}},"_microblog":{"date_relative":"2020-07-14 21:47","date_timestamp":1594763248,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}}]}