RSSAmplifier

Blog

Jim Kubicek

jimkubicek.comRSS feed ↗40 posts

Latest posts

Desolation Wilderness

On Friday I dropped our oldest off at Two Sentinels Girl Scout Camp. Luckily I was able to snag a backcountry permit for Desolation Wilderness for Friday -> Sunday! I think this is the second time I ve been out there, but the first trip was cut short due to some grumpy kids. The backcountry passes [ ]

You can now leave comments on my blog

See the footer for instructions. Because of the decentralized nature of Mastodon, it s a little awkward; you need to search for my post on your instance and reply to it there, but it works! If anyone has any ideas on how to make this a smoother process, please let me know (by leaving a comment [ ]

Winter in Yosemite

A few weeks ago I had a chance to go winter camping in Yosemite. I ended up camping in almost the same spot I did last time, except starting the hike at the Badger Pass Ski area saved me about 4 miles of hiking. The overnight temperatures barely got below freezing, so it was pretty [ ]

Flatten Nested Lists in Prolog

A follow up to my last post, here s how you flatten a list in prolog. % Base cases, empty lists match empty lists flatten([],[]). % Pick the head and tail out of a list flatten([H1 T1],L2):- % Try and flatten the head, if it fails (because the head is not a list), wrap that element in [ ]

An Annotaed Solution to the Prolog Zebra Problem

My solution is the simplified Zebra problem from this SWI-Prolog tutorial. Here s the problem statement: There is a street with three neighbouring houses that all have a different colour, namely red, blue, and green. People of different nationalities live in the different houses and they all have a different pet. Here are some more facts [ ]

“your system has run out of application memory” on macOS Tahoe

I ve been getting occasional your system has run out of application memory since I upgraded to macOS Tahoe. I ve casually tried to fix it, but hadn t found any good solutions until now. The main clue: mds_stores using much much more memory than any other process. The solution: the caches this process is building became corrupt [ ]

Selecting the most recent non-blank value in Numbers

Stephanie is running an ultra in Wisconsin this weekend, I wanted to track her progress and give myself an idea of her pace and when I could expect her to complete the next segment. Here s the numbers table I setup: As each split comes in, I add her new pace and time and everything updates. [ ]

The Dodge Hornet is the worst car I’ve ever driven

I rented a car this weekend and I tried the Dodge Hornet. This car is ass, it s bad in ways I didn t know a car could be bad. Bad Quality Granted, this was a rental car, so maybe it s seen more abuse than a family car, but the interior was falling apart. The vent controls [ ]

I am now tracking you

I just added Umami tracking to the blog. I can see what pages people are visiting, where they are coming from, and how they browse through the site. No identifiable information is collected, no cookies are set, and all the data is compliant with GDPR and CCPA regs. I just want to see how people [ ]

Weekend Trip to Yosemite

Last weekend was my birthday and I was able to get a last-minute backcountry pass for the Pohono Trail (starting at Glacier Point). Since this was a solo trip, I was able to take just a tarp for my shelter, so my pack was relatively light (only 17lb not counting food and water). Not ultralight, [ ]

The political compass quizz needs a 3rd dimension

I took the Political Compass quiz. No idea how accurate or respected these kinds of quizzes are, but my alignment matches exactly what I expected it would, tending towards the extreme for being socially liberal, tending towards the center for economic conservatism. I know the phrase social liberal, fiscally conservative has been co-opted by absolute [ ]

The best use for the action button

The best action button setting I have so far is using it for TODO dictation. I have it set call a shortcut that creates a new item in my reminders, those reminders are automatically imported into Things. Not only is it insanely useful, but the entire thing feels like I m a suit-wearing CEO from 1986 [ ]

Please stop tracking me

Google has finally admitted that it tracks your search history, activities, the websites you visit and the services they use even in Incognito mode. news.abplive.com I m fairly technical and extremely online, so Google tracking me when I m in incognito mode is unsurprising, which is why I mostly don t use it for anything other than [ ]

This is a bad use of AI

github.com/vanna-ai/vanna AI tools excel in areas where an exact answer isn t necessary ( draw a picture of a unicorn ) or where it s easy to verify the correctness of the answer ( write a python script to download and merge some log files ). This is neither. The answers Vanna.ai gives you must be correct, and verifying the correctness [ ]

Walking home with dinner last night

We re spending the week at Kirkwood. The view is not half bad.

Migrating python environments from Intel to Apple Silicon with Virtual Fish

I just upgraded my work laptop from a 2019 Intel MacBook to a 2024 M2 MacBook. I was able to copy the contents of my .virtualenvs to the new machine, but since everything was compiled for Intel, nothing worked. You can check to see which environments were broken with this command: vf ls --details Spoiler [ ]

Two small notes on the blog

First, I ve written my first WordPress theme. I wanted to use WordPress here just so I could make the maintenance of my blog as trivial as possible. My goal was something that emulated the old manually-coded HTML of ancient blogs, and I think I mostly hit it. There are a few things I want to [ ]

I’m back!

OK, maybe not fully back, but better than nothing? I spent a few years dicking around with static site generators, some false starts with Ghost, etc. All in all, I m just not really going to post anything here unless it s trivially easy. So that said, I m back to the setup I was using during my [ ]

The Ember Cup

Stephanie and I got matching Ember cups for Christmas. I’m generally happy with mine, but there are some things that folks should know to avoid frustration. First, here’s what this cup is not: It’s not a way to warm up a chilled drink. It can warm Chemex …

I’m writing this on an iPad

Well, my last post was about how I have my whole deployment pipeline setup in Github, let s see if I can use it from an iPad to publish a post. I wonder if this will work?

Setting up Github Actions for Deploying Pelican

Github actions allow me to implement continuous delivery for this blog. Each time I merge to master, jimkubicek.com is built and deployed. First, this action should run anytime the master branch is updated. name : Build and Deploy on : push : branches : [ master ] Now we need to create our deploy steps …

Setting up Let’s Encrypt with Nginx

This blog is a static site generated with Pelican . It's now almost 2020, which means that using https isn't just a good idea, it's pretty-much mandatory. The good news is that setting up Ubuntu, Nginx and Let's Encrypt is incredibly straightforward. Start to finish it only took me a bit …

Creating a Swift Collection

Let's say you'd like to create your own collection class. In this example, it's going to be a collection of books that only allow the addition of a new book if it's written by a select list of your favorite authors. typealias Book = ( title : String , author : String ) struct MyCollection { private …

Creating a Homebrew formula for a Python project

I just finished writing a homebrew formula for a python script I wrote, I'm going to walk through how I did it. Hopefully this helps anyone else who is thinking about distributing their code. Why did I use Homebrew and not Pip? Two reasons: first, my code requires some Java …

I’m learning Android Dev

It's about time I took a look and saw how the other half lived. I'm learning Android development. I bought the BNR Android book and have started working my way through the chapters. Keeping in mind I've only been doing this for two or three days, here are my thoughts …

Waterfield Designs Staad Backback

Just a few weeks ago Waterfield Designs released their first pack, the Staad Backback . Strangely enough, every review I've seen is just a regurgitation of the press release and the product page, so I thought I'd give a little write-up after actually handling the pack. First, my current backpack is …

Amend Files to Previous Commit

I run into this frequently when doing big a big refactor. I'm carefully committing my changes in nice bisectable units, but then Woah! there's a change that should be included in a previous commit. Here's how you fix this up in Git. Disclaimer: We are modifying Git history. Do not …

Debugging Smashed Memory in Obj-C

We were getting a crash inside a button. Calling po self wasn't helpful. (lldb) po self $1 = 0x0ce854d0 [no Objective-C description available] Well.. That's weird. I wonder what's at that memory location? (lldb) memory read 0x0ce854d0 0x0ce854d0: 00 00 00 b0 93 6a ce a0 0e 00 00 00 00 …

List Rake Tasks by Default

I add this to all my Rakefiles. task :default do system 'rake --tasks' end It prints a list of Rake tasks when you run Rake without a command. Not only does it help you remember what options are available in the current project, but it keeps you from accidentally performing …

Unit Testing Parse Cloud Code

Like many people, I was thrilled when Parse announced their cloud code product. I've just started a little iOS project that required both persistent cloud storage and pulling data from a 3rd party API. Since the API had a great JavaScript library, but no built-in Obj-C support, moving the code …

JSLint: Expected ‘return’ at column X, not column Y

I've been writing some Javascript using the default settings in Chocolat , tabs instead of spaces and each tab is equivalent to 2 spaces. Running most of my javascript files through JSLint is fine, but there were a few lines that were generating warnings, even though the spacing looked just fine …

When isKindOfClass is not kind of class?

I've been running into an issue over the past few days where [objA isKindOfClass:[ClassA class]] is returning false when clearly objA is a kind of ClassA. I'm running these tests using SenTesting kit and I'm not compiling the .m files in my test target, which is the only issue …

Abusing UIView

Sometimes I long for the day when I get to create an iOS app that just uses Apple's default interface element. Of course, this doesn't last long, because using and abusing UIView is fun . Over the years I've picked up a few tips and tricks for making the most out …

Sensational.ist

This is my million dollar idea. The idea is called "Sensational.ist". Install an extension in your browser. Whenever you read a news article that is full of sensationalist nonsense, trigger the extension. If enough people have labeled an article as sensationalist, all new visiters will see a warning page …

Sort Obj-C Methods with Automator

Big view controllers in big projects tend to accumulate a lot of private methods and properties. In a perfect world, these methods and properties should be carefully organized into functional groups and carefully documented. In the world we actually live in, that shit doesn't happen, which is why I've resigned …

Open sourcing? Eliminate all warnings

A few months ago Matt Gemmell created a fantastic writeup on creating open-source components. One salient point he missed, though, is that you must compile and test your code with the strictest warnings available. You never know who's going to be using your code and what warnings they have enabled …

Having trouble with Adium and iMessage?

I exclusively use Apple's iMessage for chat. Most of my coworkers use Adium. Ever since I started this job there have been weird issues were coworkers can't see me online and don't respond when I message them. I've confirmed that they are not actually getting the messages (and they aren't …

Configure git to only push current branch

I've always used plain git push to update my remote repos and I'm finally getting tired of seeing this error every time: ( master ) git push ... To git @github . com : jkubicek / my_proj . git 21 b430d .. dd378ca master - master ! [ rejected ] release - release ( non - fast - forward ) error : failed to push some refs to …

Don’t Lazily Load Your Views

I seem to run accross a lot of developers lazily loading their properties. As an example: - ( UILabel * ) myTextLabel { if ( _myTextLabel == nil ) { _myTextLabel = [[ UILabel alloc ] init [ self addSubview : _myTextLabel } } At least in iOS developement, I suspect this is caused by Apple's sample code, particularly Apple's default setup for Core Data projects …

OK. For serious this time

OK. This is a fresh start. I think I've got this blogging thing figured out for once. I'm using Octopress to create the site. I attempted to install Octopress a few months ago, but ran into a whole host issues trying to get ruby 1.9.2 to build. Luckily …