mark cerqueira well-rounded nerd

Calendar Colorist!

When I shared my Management Systems - Time Management via Color-Coded Calendar blog post on Twitter it got some nice traction because of a generous retweet from Will Larson. In the blog post I mention automating color-coding in the future via the Google Calendar API and someone asked for me to share that system once I built it.

Striking while the iron is hot… Calendar Colorist is here!

Calendar Colorist is a simple rule-based utility written in Kotlin to color code your Google Calendar. The README on GitHub walks you through setting it up to color code your calendar. I hope it’s helpful for your color-coding needs!

P.S. For bonus points, once you’ve got it all set up, configure that personal TeamCity server you have (it’s free!) to run it once a week to fully automate this automated process!

Fully automated!

P.P.S. A few thoughts on Kotlin after taking it on this most recent whirl:

  • Kotlin’s interoperability with Java is fantastic. I used the Java version of the Google Calendar API and had zero drama getting things working. It literally just worked™️ although it would be nice if Google added nullability annotations to their code.
  • Kotlin extensions are also great for extending classes in libraries that cannot be easily edited. I added several properties and functions to the Event class via an extensions to make Events easier to work with.
  • I got tripped up using Kotlin’s let with a trailing Elvis operator ?:. I assumed in an expression like a()?.let { ... } ?: b() that so long as a() was not null b() would never get executed but turns out the ... inside the let block can end up getting us to b(). Many thanks to Heath for helping me diagnose and fix this one! 🙏

Management Systems - Time Management via Color-Coded Calendar

This past summer at Twitch I went from working with our Viewer Experience team to owning all viewer-side features on mobile. This meant working with another team, Viewer Engagement. In preparation for this increase in scope and team size my manager asked me to look at where I was spending time to ensure I could continue to deliver on all my responsibilities.

In his fantastic book An Elegant Puzzle: Systems of Engineering Management William Larson describes time management as “the enduring meta-probem of leadership.” When describing effective time management strategies one of Larson’s methods stuck out to me:

Quarterly time retrospective: Every quarter, I spend a few hours categorizing my calendar from the past three months to figure out how I’ve invested my time. This is useful for me to reflect on the major projects I’ve done, and also to get a sense of my general allocation of time. I then use this analysis to shuffle my goal time allocation for the next quarter.

Categorizing my calendar got me way more excited than I expected! I went through my (Google) calendar and color-coded events based on different types of events. After doing a coloring pass I looked at my calendar from earlier in 2019 to see if the system accurately reflected my hunches about where my time was going. Growing the team was a big focus in 2019 so I spent a lot of time recruiting and interviewing. All the red here matches that hunch!

Early 2019 - lots of recruiting!

These days with hiring mostly done I spend less time recruiting. But with a much larger team I spend a good amount of time in 1:1s (yellow) and working with my Viewer Experience (light blue) and Viewer Engagement (grey) partners:

More recently - a more balanced calendar!

With this system I’m able to quickly scroll through weeks in my calendar and get a good feel for where my time is being spent. I currently manually set colors; for recurring events I only have to do it once and for one-offs it’s really easy to set the color (e.g. right click and pick a color). That said, I am already looking into automating this process via Google’s Calendar API. From there I can even produce a quarterly reviews by adding up time by event color. Update! Calendar Colorist is now available! The sky’s the limit with a color-coded calendar!

Got an interesting system you use to manage your time? Let me know on Twitter!

Enjoyed this episode of Management Systems? Check out more in the Management Systems corner!

Trails of Cold Steel 3 is Coming to the Switch!

After Xenoblade Chronicles, Trails of Cold Steel is my favorite JRPG series the past decade has blessed us with. I loved the first entry and the second entry even more. When the third entry finally landed stateside in late October, I was torn because it was a PS4 exclusive.

Don’t get me wrong: I was definitely planning on playing this game on the PS4 once I acclimated to being a parent. Having played the first two games on the Vita reminded me how much more convenient gaming on the Vita and now the Switch is (e.g. commute, plane trips, bed).


Fortunately acclimating to parenting takes months (or maybe years) so I got some great news in the convenience department this week: Trails of Cold Steel 3 is coming to the Switch in Spring 2020!

If you’re considering picking this up on the Switch and haven’t played the first two entries I highly recommend you do so because this game is very, very, very plot-heavy. I’m bummed the first two entries aren’t also coming to the Switch but given you can play those entries on the PS3, PS4, Vita, and PC it shouldn’t be too hard to find a way to play them.

Looking at the bigger picture, the Nintendo Switch is increasingly becoming a fantastic console for JRPG games: Xenoblade Chronicles, Trails of Cold Steel, Valkyria Chronicles, Octopath Traveler, Tales of Vesperia, Dragon Quest, Pokémon, Fire Emblem, and it rounds things out nicely with ports from fantastic series like Grandia, Secret of Mana, and Final Fantasy. Seal the deal Nintendo and get Persona on the Switch and bring Super Mario RPG, Chrono Trigger, Terranigma, Lufia, and Earthbound to the SNES virtual console. Also, revive Valkyrie Profile too. Thanks!

Finally Done with Dragon Quest XI

After getting hooked on the ridiculously long demo, I dove into Dragon Quest XI: Echoes of an Elusive Age when it came out for the Switch at the end of September. 118 hours later, I’m finally done with the game!

This game is great! You build a unique cast of characters and the game does a good job of developing each of their personal stories. The world is big but doesn’t feel like it’s repeating itself; the overworld music being shared across snowy tundras and dry deserts doesn’t help here though. The story - divided into three acts - takes a while to go through. Some plot twists are expected and easy to see coming, especially for those who have played previous Dragon Quest games but the end of Act 2 really took me by surprise.

My face when there's nothing left to do in Dragon Quest XI

My gripes with the game are relatively minor, but if ever addressed, would make Dragon Quest XI an all-time great:

  • A repetitive soundtrack - the battle theme being reused in the horse races takes the cake here for me.
  • A silent protagonist - give him a voice!
  • Painful item management - transferring items from the Item Bag to each character is annoying.

Waiting for the Definitive Edition on the Switch was worth the wait as it includes many quality-of-life improvements and additional content. This includes an optional superboss, the Timewyrm, that challenges you both in strong it is and in how quick you can defeat it. I took it down in 43 actions which earned me the Warp-Speed Wyrminator accolade. Accolades are the in-game trophy system; we should all continue to pray for Nintendo to one day build a proper trophy system. 🙏

Overall, I am very pleased with Dragon Quest XI. It’s a JRPG through and through that I very much enjoyed.

The Dragon Quest XI Demo Is Bonkers

Dragon Quest XI: Echoes of an Elusive Age came out on the PS4 and Steam on September 18th, 2018. While I’m a big fan of the Dragon Quest series, Square Enix said the game would be coming to the Nintendo Switch in the future so I held off on picking it up. Fast forward to this weekend when I downloaded the Dragon Quest XI demo on my Switch to give it a go before committing to purchasing it on its release date: September 27th, 2019.

The demo is amazing. It’s long… Four hours in, I actually looked it up because it felt too long. The demo covers about 10 hours of the game and any progress you make in the demo can be carried straight into the full version of the game. You’ll get introduced to the story, game mechanics, and even recruit extra party members.

The Dragon Ball Z vibes from Akira Torayama on full display

The demo gave me enough time with the game to get a great feel for what I like and don’t like about it. It might’ve been because I just finished Grandia HD which didn’t have amazing graphics but this game looks amazing. The character design, by Akira Torayama, is top-notch as expected. The world and towns are wonderfully designed. It would’ve been nice to have a bit more variety in the music tracks - different dungeons and overworld areas share the same exact tracks. The battle theme is also very divisive. And I’m bummed that we’ve got yet another silent protagonist in this game. They have got to go; it’s such a bummer to assemble a great cast of characters where one stays silent and communicates via gesticulation.

All things said, I’m very excited to jump into the world of Erdrea again on the 27th!