What I did this week
Got my first miss since starting this — while I was able to knock out two of the things I wanted to do this week (converting recipe directions to the new syntax and tinkering with the footer CTAs), I was unable to get the background/worker stuff finalized. Not for lack of time invested: it’s just that (and I’ll expand on this later) Elastic Beanstalk was proving very unhelpful.
I still made a bunch of progress: I decided on what to use (django-rq and Redis), got a Redis instance spun up with ElastiCache, and was able to actually connect the two. The problem is that I have no idea how to actually tell EB to spin up a worker daemon on deployments (two, actually: one for the actual
rqworker and one to manage the
phantomjs server that generates the recipe diagrams). So I made progress, but it’s still a bummer that I can’t get it all wired up since I know if I try and duct-tape something together myself it’ll end super poorly.
That being said, I did a bunch of other minor stuff too:
- Refactored the table header view for the ingredient search controller
- Improved the logic and performance of drilling up and down the ingredient search controller in a bunch of different ways; sorting persists as you add more ingredients (and as you go back), you can actually go back when you tap the browse recipe button, sorting by name works as expected, etc.
- Fixed a bug where you can’t actually leave the feedback email prompt. Whoops.
- All ingredients have colors!
What I’m doing next week
So, like, all of iPad is broken right now. This is my bad and makes me feel super guilty whenever I open Crashlytics even though iPad users are a pretty small minority. So, gonna fix that (and improve the actual UX while I’m in there.) The only goal I’m setting is that by this time next week I push a build that unblocks iPad, but I’d ideally like to get it in a pretty good design place.
On Elastic Beanstalk
FUCK ELASTIC BEANSTALK.
I really like the AWS ecosystem for a lot of reasons but holy shit working with EB is super frustrating. The amount of culture and documentation there pales in comparison to Heroku. There’s way more esoterica. It’s just unpleasant.
Sorry, this isn’t really a concrete or constructive thing. I like Beanstalk when Everything Is A Okay — I can just hit
eb deploy and it works great and I’m super happy. It feels like it’s explicitly optimized to be on the super far end of the spectrum where the general use case is very easily handled but anything outside of that is anathema.
… Mainly, I’m worried this is gonna culminate in me having to actually set up Docker for this. Which would just be so unfortunate.
Discovered, made, and drank a couple rounds of Blackberry Smashes with S and P. They are delicious, and go down well. (To be honest, probably more of a March drink than a February one, but it was an unusually sunny weekend so that’s as good a reason as any, right?)