I’ve been looking for (or rather, chasing!) the right note-taking workflow in Emacs for over a decade now. Back in 2013, I wrote about setting up Deft mode with Org-Mode and it was my attempt at bringing that Notational Velocity-style simplicity into Emacs, and I used it for a long time. I genuinely liked Deft, but it’s no longer actively maintained, and the same goes for Zetteldeft…
After recently releasing magit-git-toolbelt , a Transient interface for git-toolbelt in magit , I’m happy to share another Magit extension I’ve been working on – magit-gh , an Emacs package that integrates the GitHub CLI ( gh ) into Magit . Similar to my former package, it provides a Transient menu interface to list, checkout, and view pull requests directly from Emacs without…
I’ve been a long-time user of both Magit and git-toolbelt , a suite of useful git helper commands by Vincent Driessen ( @nvie ). Often times I find myself reaching for several commands constantly in my day-to-day workflow - things like cleaning up merged branches, listing recent branches, checking which local commits haven’t been pushed yet, and more. My two favorite ones are git…
I’ve always been interested in developer experience and understanding the metrics often used to measure this unique type of productivity. It’s extremely enticing to think that If I could change my tooling, gain insight through telemetry and other metrics, I could potentially “game” a better and more fullfilling developer experience overall - and ultimately over-achieve when…
For most of my life, I’ve always preferred a dark theme when it comes to coding whether I’m in Emacs or the terminal. Lately though, the past two years specifically, I’ve switched to a light theme for both Emacs and iTerm. I really don’t have a better rationale other than I feel like the lighter theme means it’s “work” time and helps me focus, whereas a…
I’ve been meaning to move my email management to Emacs for the past year and finally made the jump after see Mike Zamansky’s video on this ( YouTube ). Here are my notes on how I got this all setup and configured. This is an opinionated setup based on Mac OS X and Fastmail. First, make sure you have Homebrew installed to install the packages needed. Receiving email Link to heading…
I was fortunate enough to get to present at EmacsConf 2019 in November of last year and I wanted to share the content from my presentation: {{<youtube vS7YNdl64gY>}} And here’s the source for my org slides on GitHub: https://github.com/jonathanchu/emacsconf-2019-magit-deep-dive
I’ve been learning Clojure in my spare time and coming from a predominantly Python-focused career, I wanted to chronicle my experiences with learning Clojure and integrating it within my Emacs config. This article will be geared towards beginners, like me, looking to get started with Clojure and Emacs on OS X. Install Homebrew - http://brew.sh/ I won’t go into too much detail here,…
This past weekend I hacked together a new Emacs color theme that is essentially a port of a Atom.io’s One Dark theme . Here’s the repo for this - One Dark Theme for Emacs It is based off of the official syntax and UI themes: One Dark UI One Dark Syntax I use Emacs as my main text editor for any kind of real work, but I do like to keep up the other editors out there just to keep my ear…
In Django 1.8, a new template system was introduced along with the ability to choose a templating engine, with Jinja2 having built-in support. I tried this out on a newly created Django project and getting setup with Jinja2 was trivial following the docs; however, upon checking the /admin page, I was greeted with this: Ah, right! The contrib app Admin does not ship with Jinja2 templates. I read…
I’ve tried out a number of keyboards in the past year in an attempt to move away from my beloved, but aging, Microsoft Natural Ergonomic Keyboard 4000 and wanted to put my reviews of them up for anyone looking for an overview of the ones I tried. A few years back, I developed a small case of carpal tunnel and knew I had to change some of my habits before it got worse - these kind of problems…
With Django 1.5, one of the biggest changes introduced was the ability to configure the user model. Anyone who has coded a Django app with a business requirement of adding a birthday field, an arbitrary checkbox to the user registration fields, or even making the signup process email-only with no usernames, knows the awkward feeling of implementing their own custom user and feeling a little less…
I’ve been a big fan of Notational Velocity for quite a few years now - and more recently, nValt which is a popular fork of Notational Velocity, but with a bit more features. Everyone has their own process when it comes to taking notes, and to each his own, but the one thing that really turned me on to Notational Velocity/nValt is the simplicity and unstructured process of taking and…
Intro Link to heading Throughout the years, I’ve flipped back and forth between Org-Mode and applications such as Drafts (iOS) , Evernote , Simplenote , and even plain ol’ text files (with the Notational Velocity and nValt ) for my most basic note-taking needs; however, I’ve always found myself coming back to Org-Mode in the end for another spin around the block. The one positive…
Recently, I updated all of the packages I have installed via Homebrew and ran into some issues with the PostgreSQL package. I was getting this error: The data directory was initialized by PostgreSQL version 9.0, which is not compatible with this version 9.1.4 A quick search took me to this page , however the docs left a lot to be desired to say the least. Here’s a step-by-step to how I…
I have a Buffalo TeraStation that I bought in 2006 to store all my big media files. Through the years it has served me well, although with Mac OS X Lion, connectivity to the TeraStation stopped working altogether - mainly due to Lion’s changed AFP connectivity. Usually with hardware of this age, it would be simply replaced; however, I’ve always found Buffalo’s hardware to be of…
About two years ago, I bought my dad a MacBook Pro as a gift and with him being a long-time Windows user, the transition wasn’t seemless to say the least. I wanted to write an article on the applications I use to give him an idea of what’s out there. So here are some common and not-so-common applications I use on a daily basis: General Link to heading Alfred Alfred is a handy utility…
Since it seems that everyone and their mother is doing a “year in review” post, I find it fitting that I be no different and write one as well - except it’s three weeks later than everyone else. 2011 was an exciting year for me for a variety of reasons, as I went through some big work and life changes, met some great new friends, and reunited with a few long lost ones. Work Link…
When doing any kind of Python development, one tool I find indispensable is virtualenv . Virtualenv, along with virtualenvwrapper and pip , make for a great way to completely isolate your development environment. When I first started out developing Django sites, I used to use easy_install to install all packages I needed to the system-wide site-packages directory. Even as a newbie to Django, I…
After a long blogging hiatus, I recently decided to switch over my custom Django blog to a static site generator, following the trend that many others have started. What made the switch so appealing, going from a full-featured blogging engine to a simple static site generator, was that I could write my blog entries in a text editor of my choice and keep everything under version control with Git. A…
I recently decided to purchase a MacBook Air to use as my primary computer, saying goodbye to my previous laptop - a 15" MacBook Pro with a HiRes AntiGlare display, 2.66GHz i7, 8GB RAM, and 500GB HD @ 7200RPM, NVIDIA GeForce GT 330M with 512MB memory. I went with the 13", 2.13GHz Core 2 Duo, 4GB RAM, 256GB flash storage configuration and could not be happier with its performance. Portability was a…