Week 3011

Getting ready for my first trip to Hyderabad!

Health

Been working on dragon flags and handstand pushups at the gym. Only 3 biking days this week :(. On the other hand, they were all good days. It’s cold enough now to break out the gloves here in NYC, so I’m looking forward to warmer days in Hyd for the next few weeks. I wonder if I can rent a bike there easily?

Family

One of the reasons for that: I got to take Max Lazer to go see Tinga Tinga. He got to see it, I just got to be part of the parental escort through the subways to Times Square. He handled it great, but it was amazing to see the way the teachers handle 22 kindergartners getting through the subway system.

Z is teething and it’s so tough on her. I hope it ends soon. On the other hand, I managed to get both kids to sleep in the same room at the same time on Wednesday and Thursday we got Z to sleep the whole night through!

My Kobo broke and I sent it off to be replaced, but I must have an e-reader for the trip so I am now the owner of a Kindle Paperwhite as well. As someone who’s now owned and used a Nook, Kobo and Kindle, I’ll write up my take on it. Should have some time on the 16 hours or so of flight time!

Code

Been helping folks at work learn some more advanced Python. I get excited every time I talk about list or dictionary comprehensions because they were a real light when I was learning python in the beginning.

You often need to transform data structures and the first way is usually to just iterate a list, construct new instances of something else, then pop them into a list of new things.

Say you have a list of cool coders you want to talk about.

 


from collections import namedtuple
Coder = namedtuple('Person', 'name login url')
cool_coders = [Coder(name="Grace Hopper", login="ghopper", url="https://en.wikipedia.org/wiki/Grace_Hopper"),
Coder(name="Ada Lovelace", login="ladyada", url="https://en.wikipedia.org/wiki/Ada_Lovelace"),
Coder(name="Jenn Schiffer", login="jennmoney", url="https://jennmoney.biz/"),
Coder(name="Nina Zharenko", login="nnja", url="https://www.nnja.io/"),
]

intro = "Here's a list of some cool coders and more you can learn about them: "

Maybe you want to produce a markdown sentence listing them.

coder_markup = []
for programmer in cool_coders:
    coder_markup.append( "[{}]({})".format(programmer.name, programmer.url) )
markup = intro + ", ".join(coder_markup)

Sure, that could be more complicated and have more changes or filtering that needs to be done. But what’s nice about a comprehension is that it helps cut down boilerplate and it makes things clearer.

coder_markup2 = ["[{}]({})".format(coder.name, coder.url) for coder in cool_coders]
markup = intro + ", ".join(coder_markup2)

And of course, if we were on python 3.6 we could make that even smaller by just using fstrings.

I’ve been using tmux pretty heavily, but now I get annoyed that on reboot I have to rebuild all of my workspaces. So now I’ve installed tmuxinator. It should be useful for setting up project/workspaces and then firing them up after a reboot.

Of course – I don’t just install tmuxinator. I set it so that it can auto-install on any account I’ve got with my jumpstart script.  If you know any cool tricks or experiences you want to share about either, I’m eager to learn.

 

Week 3010

Another combo because I’m late!

Here’s the The Owl from I Love You but I’ve Chosen Darkness

It’s rainy and dark and suddenly fall.

More riding in the rain.  Had to skip a day because I felt horrrrrible after the happy hour Wednesday night.

Sleeping poorly is the rule in our house as we struggle to figure out how to get Max Lazer and Queen Z to bed in the same room at a reasonable hour. It takes forever.  We think some of Max’s trouble in kindergarten is that he just can’t get good sleep at home anymore. So he goes in tired and can’t be his best.

I’ve got my visa for the Hyderabad Trip coming up and while I’m excited to go visit India I think my first trip will be almost entirely business – there’s a DR test that weekend so I’ll probably spend the whole trip in just the one city.

Going to our building’s yearly meeting for the first time in a while as NOT a board member. WOO!

Got to work on competitor pricing and take friends out to lunch to discuss. Also got to spend time with our R&D project plans for 2019.

 

 

Week 3009

VERY interested in trying to make a MagicMirror.

But I want to see if I can simulate it first before I buy a bunch of stuff to have around the house. So I’m trying to figure out how to emulate a  raspberry pi on Ubuntu and its a bit of a nightmare.

On the other hand I finally figured out how to remote into work on my linux laptop. Just for future reference:

  • downgrade to Citrix Receiver 13.8 – this gets you at least to a point where you just get a certificate error.
  • cd  /opt/Citrix/ICAClient/keystore
  • sudo mv cacerts cacerts.old
  • sudo ln –s /etc/ssl/certs cacerts

This is very stupid, but hey. At least I can remote in now!

I only got in 4 days of biking because I needed to go to a conference with Max Lazer’s teachers. They are working hard to find the best ways to help him.

So this was Thursday’s office:

Week 3008

Welp, I’m getting this in a bit late, so I’ll also put in some Music Monday.

But since the world is a pit, you get Cotton Eye Joe Gregorian Chant Nightcore Hardcore Dubstep remix. Do better this week, world! The Senate confirmation hearings for Brett Kavanaugh were a reminder of how little women’s pain matters. The guy is also clearly lying.

Code

My team won one of the 2nd place slots in the Hackathon as “Most Complete Hack”! We are talking about bringing it through to complete prod deployment.

Read up on Conflict Free Replicated Data Types which are a really interesting way to do mergable data structures. Underlies lots of interesting stuff like Redis.

Experimented with Mozilla’s Configman – the docs are NOT good enough, because they actually have a great drop in replacement for the standard ArgumentParser in there.

Bike

Got in all but 1 day last week. Rode in the rain 2 days! The first convinced me that I need to either own rainproof pants or just plan on riding in shorts in the rain. I bought a pair of Showers Pass transit pants and they worked great on Friday. Also got to randomly ride in with my buddy Lance again and reminded how nice that is.

Family

Zeebus is really smart and understands a lot of what we say! She picks things up and puts them where you ask, she understands that we need sleep, she’s got a lot going on upstairs.

She puts on Max’s bike helmet to let us know she wants to go riding!

When she slapped Sam hard in the face she realized she had hurt her- then Z gave her a big hug and patted her. That’s what Max does when he plays too rough with her!

Max and I did a really good hike together. We went a little crazy and climbed up next to a little waterfall and did some semi-safe bouldering nearby.  Max and I actually climbed way up a small cliff and got to the top. We also found a cool Puffball mushroom. But we didn’t eat it because we didn’t know how to tell if it was poisonous or not. (now we know and we’ll eat it next time!)

Week 3007

I’m writing this one bushed after 24 hours at the company hackathon. Most of our developers are in HYD, so our hackathon starts at 10:30pm Friday and ends 10:30pm Saturday.

Right now we are all done with our deck, the app is finished, we’ve polished everything we can and we don’t want to touch anything in case we break it. So it’s a strange calm.

Another 60 miles on the bike this week and feeling fine. In the gym, we’re working on handstands. Zelda is growing smarter every day, Max suddenly started saying his “R”s like an American instead of a Brit.

I gave Sam a day to travel to Coney Island with Jeremy Fox on friday while I watched Z. Only fair because I’m spending 24 hours away from them.

Speaking of Jeremy, we got to go out and drink and play nerd games and it was SO MUCH FUN. Got to introduce him to another friend who’s out in LA, Dewitt. Hope they actually meet up and hit it off.

Week 3006

Work

We are  having a hackathon! I’m excited.  Its my first since Music Hack Day NYC. We’re going to try out Amazon Lex, Lambda, and some containers.

Some folks are already using my code for working with ELK, so that’s nice.

I’ve been focusing around automating my testing and such, and I really am centering around just learning to write better makefiles. Make is installed everywhere, like vim and other things I like. It just works. And makefiles do almost everything you want. The downside is that it is an ugly syntax. The upside is that if you learn one ugly syntax, you don’t need to learn everything about Rake, Yarn, etc.

Around the web

Best Practices for Staging Environments – this article by the excellent Alice Goldfuss came up at work as we wrestle with big calcs and datasets for our clients.

Why you hate Contemporary Architecture – This is grrrreat. One little note for the computer nerds. If you’ve heard of the Gang of 4 Design Patterns book, read the article and come back. The Design Patterns book was based in part on Christopher Alexander’s “A Pattern Language” which is a great guide to things that seem to work in architecture.

I discovered two things that similar to a POC I was working on (voracious-etl)

  • Datasette provides a readonly JSON api for any SQLite DB.
  • Dataset provides an ORM for any CSV or JSON file

The plugin system at the core of pytest is a library: Pluggy. I like that and I might use it earlier.

A good podcast: Flash Forward. Explores a new future every week. The most recent focuses on fungal enslavement, which I love. If you like that one, I highly recommend the mindblowing Parasite Rex by Carl Zimmer or Sensation by Nick Mamatas

 

 

Politics

None of the big progressive candidates made it in the democratic primaries. Cuomo still won. Tish won, which is OK. However, I see that  some progressive candidates made it through.

I hope they can do some real work and win in November. I’ll be calling and doing work to support them.  I long for a day when I can start moaning about free speech vs hate speech and trying to reign in some liberal excesses. However, right now, the work has to get done.

I also note that children are still in cages and parents are getting deported without hearings, but it isn’t in the headlines anymore. I’m still pissed about it. I’m still pissed that the probable governor of NY seems to only work for progressive issues when pushed and won’t use his clemency powers.

Exercise

I biked around 37 miles this week! Had to take off Monday and Tuesday due to rain and being pretty sick. But otherwise, I rode in. Got to stop on Christie street and help a guy who’d been knocked down by a cab.

Worked to a slightly lower pistol squat and my butt hurts sooo bad. Also, my dragon flag work is getting better. I can kind of hold it.

I started doing partial handstand pushups against the wall and they feel pretty good. I can do 5 at a time part way down and up. Next I’ll try lower and lower, then try freestanding ones.