Shef Otis grabs the mic from Garrick and asks him about podcasting, Cullect, coffee roasting, and parenting.
[43 min].
About time. And product. And being more deliberate.
Here’s a quick 3 minute snippet from the latest First Crack podcast where Idescribe what Cullect is and how I use it.
The full conversation is at First Crack #118 – Shef Turns the Tables on Garrick
A couple years back Scott Davis and Paul Werni founded 45th Parallel Spirits, a distillery in New Richmond, WI – just a quick 45 minute drive from northeast Minneapolis. While there are number of craft brewers in the region, 45th Parallel is the only still I know of. Paul, Scott, and I talk about the distilling process and the benefits of sourcing locally.
[33 min].
Reminds me of an art installation I saw during my time in Germany.
Imagine a room.
With a single, wall-sized, framed painting leaning against the wall.
Hanging tools littering the floor.
As I pondered this room, a woman approached me, and gave me the background.
In Soviet Russia, it was common for workers to just stop. Mid-task. And walk away, onto another task. Different orders.
Also, if you haven’t seen it, Goodbye Lenin is quite enjoyable.
After a couple very rough weeks – I’m happy with where Cullect and it’s caching strategy is. It’s slightly different from where I talked about last. I’ve also added a slave DB to the mix since my last write up. Overall, it feels more solid, and is performing at or better than before
There are 1,630 results in Amazon’s book search for ‘podcasting’, 11,301 for ‘twitter’. Feels bubbly.
It’s a new year, with a new president. An ideal time to clear the ground for a new America.
To start the chopping, Garrick reviews Legends of Paul Bunyan by Harold W. Felton touching on a boyhood trip to Paul Bunyan Land and the story of Sport the Reversible Dog.
[9 min].
Chad Gillard lives a few houses down from me – and little did I know that his side project is making and selling tasty, tasty Danish apple treats under the Aunt Else’s Organic Aebleskiver brand (Aunt Elsies on Twitter)
It started with a goal so many Minnesotans have: sell food at the Minnesota State Fair.
While he’s still on his way to reaching that goal, we cover the conflicting aebleskiver recipes and the local food producers he’s met while selling at farmers markets and town festivals.
[35 min].
In my part 1, I laid out my initial approach on caching in Cullect.
It had some obvious deficiencies;
I just launched a second approach. It dramatically simplified, cache key (6 attributes down from 10) and rather than caching entire the items in that key, I just stored the pointer object to them.
Unfortunately, even the collection of pointer objects was too big to store in the cache, so I tried a combination of putting a LIMIT on the database query and trying to store 20 items a time in a different cache object.
This second approach had the additional problem of continually presenting hidden/removed items ( there’s 2 layers of caching that need to be updated).
Neither was a satisfactory performance improvement.
I’ve just launched a solution I’m pretty happy with and seems to be working (the cache store is updating as I write this).
Each Cullect.com reading list has 4 primary caches – important, latest, recommended, hidden – with a variants for filters in keyword searches. Each of these primary caches is a string containing the IDs of all the items in that view. Not the items themselves, or any derivative objects – both of those take up too much space.
When items are hidden, they’re removed from the appropriate cache strings as well.
Murphy willing, there won’t be a part 3. 😉
1. Storing the items in the cache as objects