This is the weekly thread to discuss what you’ve done recently and are working on this week.
Please be descriptive and don’t hesitate to ask for help, advice or other guidance.
This week is Rust 1.0. Kinda freaking out a bit.
I’m up late right now working my last few patches through CI, and then it’s time to build and test test test….
Work: Submitted my PR to add Holt-Winters moving averages (both additive and multiplicative) to Elasticsearch. Unfortunately, they are kinda clunky to use at the moment, and will need another iteration. In particular, I’d like to add backcasting to remove the “cold start” at the beginning, and a way to auto-tune the alpha/beta/gamma parameters, and autodetect periodicity. There are also different initialization methods that could be use, which are more complicated but give better results and/or don’t require as much data. What we are using right now is pretty simplistic.
For fun: Working on setting up a simple S3/Cloudfront/Route53 static blog, tired of dealing with wordpress garbage. I have plans to start writing a “Let’s build a Distributed Key:Value Store in Rust” series, mostly because I want to learn how to do it, and others might like to follow along. Basically an excuse to play with Mio + Capn'Proto in something a bit more sophisticated than toy examples.
Also working on sewing up an ultralight backpack for hiking. I’m tired of hauling my heavy 5lb canyoneering bag up mountains when a 1lb pack would suffice. Should be a fun little side project when I need to get away from my computer.
Please share the K/V in Rust series on here if/when you start it; I’d be interested to read it.
Working on two talks for next week - one at Write the Docs about docs for people that don’t read, and one for Signal Conf about scaling microservices - diving into how http requests work, fun ways they fail that will take down your service, stability patterns for your service. draft versions here: http://kev.inburke.com/slides/reliable-http and https://kev.inburke.com/slides/documentation/
I love your slides on docs!
$work Slaying Paypal APIs and billing monsters for PCI reasons. Such a bundle of fun.
!$work Figuring out how FreeBSD jails work, and getting going with ezjail flavours. I think I understand how to get to my end goal, but it’ll require some more puppet & git hook shenanigans, coupled with encouraging ezjail to dance to my tempo.
On the bike front, realised that my Look Delta left cleat is almost snapped entirely in half on one shoe, so I’ve picked up some Shimano SPD M520 pedals & cleats to replace them. Hopefully not going to notice too much of a difference going from such a big cleat to a small one, but given the replacement has cost me £5 more than a new pair of Delta cleats, I’m willing to risk it. (Also wouldn’t mind a pair of cleated bike trainers for riding t'pub, which pretty much means you have to go SPD over anything else.)
Realised today that I haven’t booked any Triathlons this year, and have now missed a couple that I was intending on entering as well. Coupled with being too ill to run the 10k race round my town this last weekend too, got me thinking about what I want to do this year. Thinking I might enter a couple of open water swims, and a cycling sportive or two this year, and leave the triathlons till next year. Really not enjoying the running at the minute, and training for the other two for a year should shift some more weight and leave me in a better place to be running again. (And now I’ve typed that out, it makes even more sense in my head. Yay, lobsters!)
On a final note, the week took a turn for the better today as the four year old discovered how to balance his balance bike and made it home the mile from nursery in half the time it takes him to walk it. \o/
Just wrapped up at my job on Monday and I’ll be starting at a new company next week. The new position is more heavily front-end, so I’ll be spending my time off doing discovery into fancy frontend things I haven’t had a chance to touch. To that extent, I’m working on a JS framework that uses idempotent views (virtual-dom), immutable data (mori) and channels (jschannels). I’m taking this framework seriously in that I’m thinking hard about what features are necessary, but I’m not taking it that serious to think anybody will put this into production. It’s been interesting seeing the benefits/limitations of using channels to manage UI state.
Work: compiling queries to bytecode in Scala using ASM. It’s my first time doing this type of work, so I’ve had to ramp up on JVM internals learning individual byte codes and the JVM class format. Lots to learn but it’s super interesting and way more low-level than most of the work I’ve done.
Reading: just got my copy of “Big Data”. Only a few pages in but I think it’s going to be a great read.
Fitness: getting more rigorous about training for rock climbing. Just bought “The Rock Climber’s Training Manual” and am starting out with lots of ARC training. Also mountain biking a ton now that the weather’s nice.
work: Finally finished the application I’ve been working on to track documents. Yay!
home: Going on a lot of job interviews lately. A couple with different companies I really want to work for. I don’t know what my chances are at this point, but hopefully at least one will toss me an offer. In a sort of ironic way, it’s depressing to go on a lot of interviews.
Currently, fixing a build system and migrating CI servers. TeamCity can go eat a bag of rocks.
To go into detail–while there is a handy “Backup everything” button in their admin interface, the actual restoration of said backup must be done manually. Moreover, it relies on files that don’t actually exist until you do a full reinstall, and then you need to deinstall it after grabbing those files, and reinstall it and not run it so as to get a partial install that the restoration utilities can use. It’s annoying.
Later, starting on a bunch of client libraries (Elixir, JS, Ruby, Python) for our platform, and sorting out a bunch of logging nonsense.
be sure to check this out on client libs! https://kev.inburke.com/kevin/client-library-design/