#Dev

  • Timezone bug fix and NaiveDate conversion for habitctl

    With a little leave time around XMas and a flight back to Canada, I had a bit more time to play around with Rust, and managed to fix an irksome timezone bug that was plaguing habitctl, the minimalist habit tracker CLI.

    I’m really enjoying coding in Rust. As a language, I find it makes sense, is performant, and its prescient compiler checking on types and such makes it hard to shoot yourself in the face.

  • Warning sigil added to habitctl habit tracker

    Rust is addictive. Added a warning sigil feature into the Rust-based habitctl minimalist habit tracker CLI.

    Continuing on from a couple of weeks back , I decided to add the Warns feature I’d been wanting in habitctl .

    The original author has still not merged my feature PRs, so I’ve just continued to add in the features I wanted.

    Up his week, I sometimes have this issue where I don’t notice a habit is about to be broken from being satisfied (or skipped). Mostly this is because the usual “?” sigil for the latest day ends up not letting you know if that would potentially be the last chance you have to not bfreak the chain in your Seinfeld chain/consistency graph.

  • Skips added to habitctl habit tracker

    One of the best things about open source software is the ability to scratch your own itch (and that it may even force you to learn a new language). Added a skips feature into the Rust-based habitctl minimalist habit tracker CLI.

    I’ve mentioned before how much I like the habitctl command line habit tracker for its minimalism, simplicity, portability, and great consistency graphs that give me real information I can action.

  • Static site hosting on Amazon S3 with SSL, http/2, and Amazon's Cloudburst CDN

    I’ve been using this hosting setup for three years now to make my blog fast, cheap, secure, SEO-friendly, and using commodity cloud resources to host it. This is the HOWTO.

    I have to admit to being impressed with sites that load with preternatural quickness and a bit judgey about technical influencers whose sites take forever to load. Sure, devs are not designers and backend guys are generally not great at frontend optimization, but I still find it the littlest bit inexcusable. Add loading slow to not using https, broken links/images, or a site not being mobile responsive, and well… I think that’s borderline sloppy.

  • Desktop Tools I Use - 2019 edition

    Every year I like doing a refresh on my Desktop tools posts 2018 here and 2017 here . I’m constantly tweaking and clarifying my toolchain to try and eek a bit more productivity out of my tools.

    I’m still on my trusty, early-2016 Macbook which is now going on three years old, but I’m mow at the point I could probably move over to Linux with little disruption. Also, investigating ways to do things cross-platform has really added better arrows to the quiver. Strangely, now the issue in moving to Linux is finding a laptop as good, light, and powerful as the Macbook I currently have (and additionally, is fanless and silent.).

  • Easing into Emacs org-mode

    Productivity gains compound. So, every year I experiment tweaking my GTD system to get better at goals, planning, and, well… Getting Things Done. This is how things have gone otg-more so far compared with the Taskpaper system I’ve been using for most of the previous five years.

    TLDR

    Emacs (and by extension, org-mode) has a different philosophy than other tools. The idea is to do everything in emacs, which is a bit out of line with the unix philosophy I’m used to of one tool doing things well (eg. vim) and being able to string them together. It has taken a while to get used to, but after years of vim, I have to admit, I am kinda sold on the idea of an interpreter in your text editor (sorry, vim) though I am not completely sold on emacs itself (though worried I may not be able to move back from org-mode, org-habit, and org-journal anytime soon.). As an experiment, it’s been positive. Is it life-changing? Possibly. Am I sticking with emacs and org-mode? Let’s see.

  • Desktop tools I use - 2018 edition

    It’s time for the 2018 refresh of the Desktop tools I use . I’m amazed what changes year-to-year as I try to simplify and clarify my toolchain and productivity.

    Some of the evolutionary changes were interesting as I started experimenting with moving off the Apple ecosystem and moving back to Linux and an environment I move directly control and can future-proof. In particular, it’s brought up interesting compromises (and opportunities) I’d have to consider before making the leap.

  • Supercharging Padrino admin with Datatables, will_paginate, and RABL

    One of the best things about Padrino is the drop-in admin generator (inspired by Django’s) that makes building simple, robust apps that need to work, run, and be admin-ed by real people a pleasure to work with. At some point though, the natural limits of the default generator will need to be extended as you return huge numbers of records. This is one battle-tested approach we used to be able to paginate and search across 7000+ records via ajax and DataTables setup with will_paginate when the default Padrino admin hit its limits.

  • Desktop tools I use - 2017 edition

    I love reading Uses This where people share their tools and workflows. I’ve sniped some great tools from their posts. And back in 2004 when I started the blog, one of my most popular posts was about the tools I’d moved over to as an Apple switcher and early adopter. Time for a 2017 refresh post.

    The first thing that amazes me is how much the character of my desktop and tools have changed over a decade. I’ve also changed my tastes considerably to tool selection and usage. I’ve shifted over time to moving to simpler, well-designed tools, with a much greater emphasis on text formats and simpler syncing and future-proofing, as well as adding much fewer things judiciously rather than trying to jumping to the next shiny thing unless it has a clear and compelling value over my current stack in productivity or problems it can solve.

  • Easy Excel exports from Padrino

    At some point in the lifecycle of any useful application you write, there will be a request to get something out of your system in Excel format. Here’s an easy, transparent method to get downloadable Excel reports out of your Padrino app.

    Spreadsheets are still king in most organizations and Excel is still the main tool business users and decision makers comfortably interact with, often for for end user reporting, data consolidation, or intermediary analysis purpose.