Sunday, May 28, 2023
Not Just Tech
This blog will henceforth be about more than just tech, reflecting me.
Sunday, April 30, 2023
I tried hosting my own stuff and failed.
Friday, April 21, 2023
Boolean Properties in Python: A Pitfall
I love using class properties as boolean flags, but occasionally forget the @property decorator.
Friday, April 14, 2023
Every time I mount my bicycle on the roof rack on my car, I risk demolishing it on the way back home. I think I have an idea for the solution.
Thursday, March 30, 2023
Getting Nothing Out of a Python Dictionary
A bit of nuance about dealing with null and missing values in Python dictionaries.
Wednesday, March 8, 2023
Dedupe a List in Python, Slowly
A pretty slow way of removing duplicate elements in a Python list.
Wednesday, January 11, 2023
I wrote some words mostly as an excuse to also post a photo and a video.
Friday, January 6, 2023
Many things influencing us throughout our lives go unnoticed.
Sunday, January 1, 2023
2023: No Goals
OK, so it’s “no *public* goals”, sorry for the clickbait.
Friday, December 30, 2022
2022: The Year of Habits in Review
How’d this year’s theme go?
Thursday, December 29, 2022
Solve the Problem You Have
It’s all too easy to find oneself solving the wrong problems. Here’s how I try and combat that.
Saturday, December 3, 2022
I started going back down the self-hosting path and learned some things.
Sunday, August 7, 2022
Getting Back into Self-Hosting
It’s 2022 and self-hosting stuff is cool again.
Friday, June 10, 2022
Tests Are Docs
Automated tests are documentation, and–if done well—even useful and up to date!
Tuesday, April 12, 2022
✶ Understanding Developer Interruptions
Why interrupting a programmer is even more costly than you think, illustrated by u/nkukard.
Friday, April 1, 2022
Programming Sucks and Is Amazing
Tuesday, February 8, 2022
The Mix Has Died
Before even launching the publicly available version of TheMixNeverDies.com, I’m shelving the project.
Sunday, January 16, 2022
I goofed up the CalVer implementation because I had the dumbs, and now I’ve fixed it. Oops.
Saturday, January 8, 2022
I made a tiny tool for generating Markdown URL tags and want to tell you about it.
Monday, January 3, 2022
I was today years old when I learned that “my favorite quote of all time is a misattribution”.
Sunday, January 2, 2022
2022: The Year of Habits
Shifting away from specific goals to a more meta—and hopefully sustainable—approach: yearly themes.
Wednesday, December 29, 2021
Goals for 2021 in Review
Half a dozen years later, another wrap-up.
Monday, September 27, 2021
There’s a limit to how much we can handle.
Saturday, September 18, 2021
“Growing apart and losing touch is human and healthy”
DHH wrote something poignant in 2018 and here it is.
Friday, September 17, 2021
Simple, Easy, Complex, Difficult
Some language nuance.
Monday, September 13, 2021
Make the Important Things Easy
An old nugget of wisdom.
Sunday, August 22, 2021
Starminder is relaunching with notable changes.
Monday, August 9, 2021
Some of my projects are languishing and need rethinking.
Sunday, July 18, 2021
Quick and Dirty Python: HOWTO
Let’s build up small Python script.
Wednesday, March 31, 2021
Quick and Dirty Python
Something I absolutely love about Python is just how well it scales from tiny scripts to complex systems. Here’s an example of the former.
Monday, March 1, 2021
I got super excited for a new awesome looking email service, but it’s got a fatal flaw that has me looking elsewhere.
Saturday, February 27, 2021
It didn’t take me all that long to come back around to this, did it?
Wednesday, February 24, 2021
I made an environment variable parsing library for Python, and forgot to tell you all about it!
Thursday, January 21, 2021
Django Site Dispatch, Improved
Turns out I like this problem so much I had to solve it again.
Friday, January 15, 2021
Django Site Dispatch
Django’s “sites” framework is quite cool, but what if you need to make some exceptions?
Sunday, January 3, 2021
I adopted a cat last year, and she’s the best.
Wednesday, December 30, 2020
Goals for 2021
Early again, some aspirations for 2021.
Monday, December 28, 2020
Python’s dict.setdefault Rocks
Python’s dictionaries are awesome, and I just learned about yet another reason that’s the case.
Sunday, December 27, 2020
Goals for 2020 in Review
The longest year in recorded history (so far) is coming to an end. How’d I do?
Wednesday, October 21, 2020
Hire Me! (v.2020.10)
Back on the job market again, so here’s my updated “dating profile”.
Friday, October 16, 2020
I made a little Git hook manager and some people even use it!
Thursday, October 15, 2020
I made a URL shortener with a static site generator.
Thursday, June 18, 2020
Black Lives Matter: Venice Beach and Santa Monica
Painted boards from Venice Beach and Santa Monica on the morning of June 8th, 2020
Wednesday, May 6, 2020
✶ # TODO: add comments
5 Tips for Winning at Code Comments
Thursday, February 13, 2020
PyBeach 2020 Tickets Are on Sale!
You should attend!
Thursday, January 16, 2020
DogTown CrossFit Blog — Member Feature: Me!
I lost a buttload of weight and got a cool shoutout on my gym's blog, and it's hard not to brag.
Friday, December 20, 2019
Goals for 2020
Ahead of the curve this time, a look forward at what I'm hoping to accomplish professionally in 2020.
Tuesday, December 17, 2019
Goals for 2019 in Review
2019 is just about done—let's wrap it up.
Tuesday, December 10, 2019
✶ Simple Is Funner than Complex
I think I've figured out why I've been having such a hard time starting to migrate my projects to the cloud.
Monday, November 11, 2019
✶ Keynotes to Watch
I think everyone should watch these two keynotes, but especially those of us working in tech.
Wednesday, October 9, 2019
Thursday, August 8, 2019
Free (from) Project Ideas
I'm letting some domains expire because I have neither the time nor desire to build what I wanted, so here you go.
Wednesday, June 12, 2019
I'm Speaking at PyOhio 2019!
Look, I'm just bragging…
Wednesday, May 1, 2019
See You at PyCon 2019
PyCon 2019 is here and so are we.
Friday, February 15, 2019
✶ Supporting Windows
It's neither ethical nor smart to ignore about half of all Python users.
Friday, February 8, 2019
Goals for 2019
About as late as last year, here is my next set of professional goals.
Thursday, February 7, 2019
Goals for 2018 in Review
How did my goals for 2018 go?
Wednesday, December 19, 2018
Hire Me! (v.2018.12)
I'm looking for my next destination. Could your company be it?
Monday, December 17, 2018
PyCon 2019 Reminder
I'm going to PyCon 2019 and hope to see you there.
Monday, November 19, 2018
✶ North Bay Python 2018: Talks
I attended my favorite regional Python conference for the second time, saw some amazing talks, and wanted to tell you about them.
Sunday, November 18, 2018
✶ PyBay 2018: Talks
I went to PyBay 2018 and enjoyed some talks. Here they are.
Thursday, August 16, 2018
PyBay 2018: See You There!
I'm going to PyBay 2018 and hope to see you there.
Monday, May 28, 2018
✶ PyCon 2018: The Afterfeels
I went to PyCon (again) and it was amazing (again).
Thursday, February 22, 2018
✶ There's No Going Back
Saturday, February 10, 2018
Goals for 2018
Here we are again, with a bit of a twist.
Friday, February 9, 2018
A new Python conference is coming to town.
Tuesday, January 23, 2018
Goals for 2017 in Review
Time for another look back, this time at 2017.
Thursday, October 5, 2017
✶ Modifying a List in Place in Python
A neat (if questionably legible) trick for modifying a list in place in Python, and a more Pythonic solution for the same problem.
Tuesday, August 22, 2017
Crush Cancer 2017
Donate to cancer research and watch me do a grueling workout.
Monday, July 31, 2017
I got tired of forgetting all about my 400+ starred GitHub projects and made a reminder app.
Monday, April 17, 2017
My New Vim Statusline
I realized my statusline was still bloated, so I trimmed it even more.
Friday, April 14, 2017
✶ Programmer, Developer, Engineer, Lexicographer
What am I even supposed to call myself these days?
Tuesday, February 14, 2017
An Otter Valentine's Day
A friend and I made SendOtterLove.com and you should use it to send someone otterable otters today.
Wednesday, January 18, 2017
I made a Vim planet!
Friday, January 13, 2017
My Vim Statusline
I don't use Airline or anything fancy, but my statusline still tells me everything I need to know.
Saturday, January 7, 2017
Goals for 2017
This worked well for last year, so lets try it again.
Tuesday, January 3, 2017
Goals for 2016 in Review
Let's talk about some things I set out to accomplish in 2016.
Wednesday, December 28, 2016
SSH Agent on macOS Sierra 10.12.2
How to make ssh-agent remember passphrases on macOS Sierra 10.12.2.
Friday, July 29, 2016
I wrote a Vim plugin to help with GitHub's issue and pull request templates.
Saturday, March 26, 2016
I Took the Vim Plunge and I Love It!
I started using Vim full-time a month ago and it's been great. Here are some thoughts on the transition and a few plugins that have made it fantastic.
Wednesday, March 16, 2016
✶ Instagram to Abandon Chronological Feed
Instagram has announced a switch to alogorithmic feed ordering instead of the current chronological one, and I think it'll prove a problem for myself and many others.
Tuesday, March 15, 2016
YouCompleteMe Compilation with Little RAM Solvable with Swap
I ran into a compilation issue on my small DigitalOcean droplet and solved it with some good ol' swap.
Sunday, January 10, 2016
Goals for 2016
Some things I'd like to do better in 2016.
Tuesday, September 8, 2015
Vim + Spacegray + OS X = A Champagne Color Problem
I'd like to use the Spacegray theme for Vim on OS X, but other things look a bit wonky.
Monday, July 27, 2015
A Few Podcast Reviews
I've been listening to some great podcasts and would like to promote them.
Thursday, July 23, 2015
Why and for Whom I Write
Thoughts on why I write here and who the intended audience is.
Tuesday, July 7, 2015
Free Project/Startup Ideas
I'd like to use these things but don't have the time to build them. Do you?
Thursday, June 11, 2015
A new face for nkantar.com, and a slightly different approach.
Wednesday, May 6, 2015
Drupal Is a Nightmare and Done Is Better than Perfect
Sometimes you have to take your pride in doing things well and distract it while you do something badly. This was one of those times.
Monday, April 13, 2015
✶ Programmer Interrupted
Why interrupting a programmer is even more costly than you think, illustrated by Jason Heeris.
Wednesday, April 8, 2015
Web Development on a Chromebook — Not for Me
I tried migrating to a Chromebook and didn't like it.
Wednesday, March 18, 2015
New Mac Order
Quick thoughts on Apple's fancy new MacBook.
Wednesday, December 3, 2014
Eight Days without Blue Brother
Brief reflection on a few days without Facebook.
Tuesday, December 2, 2014
Sorting with Randomization
Sorting with pure chance, with some elementary stats.
Tuesday, November 25, 2014
I deactivated my Facebook account and thought I should write about it.
Monday, November 24, 2014
I made a silly game.
Tuesday, October 7, 2014
✶ Free Isn't Free
We live in a world built on software that's given away for free, and we should support it.
Tuesday, September 9, 2014
September to Remember
Quick thoughts on the iPhone 6/6+ and Apple Watch.
Friday, August 29, 2014
✶ How Not to Recruit a Developer
An irritated dissection of an unappealing recruiter email.
Tuesday, August 26, 2014
Why I chose a static site generator in a sea of fancy dynamic solutions.