Kat Kitay

Engineer & Creative Techie

Read this first

Raccoon, a new digital wellbeing app

At the beginning of this year, I started having RSI-associated arm pain and started wearing a wrist brace. Coincidentally, around the same time, I was experiencing headaches and eye strain while using the computer.

My computer was hurting me! Most people who work on the computer a lot have experienced these problems. After seeing an optometrist and my GP, their advice was the same: take more breaks.

The problem is that when I’m working, I get really focused and often miss notifications. As much as I’d like to take breaks, the truth is that I won’t.

I determined to build an app to force me to take breaks. That app is Raccoon, and you can download it at raccoon.technology!

a window pops up over the desktop notifying you to take a break

Raccoon is simple: it sits in your tray and every 20 minutes, your computer screen fades to white for 30 seconds. You can take a quick break then get back to it, and you can’t miss it.

It’s built with Electron, a...

Continue reading →


Halfway to never graduating

Last week was my sixth at the Recurse Center and the halfway point through my full 12-week batch. This was the point at which the batch previous to mine “never graduated”, and on Monday, a whole new batch starts their RC experience!

Before getting into the swing at RC, I did a lot of research and loved reading other peoples’ experiences. Here’s a freeform catalogue of some of mine.

  1. The last six weeks flew by so fast.
  2. I’ve been really productive, spentd lots of time coding, and have built some great portfolio projects. All good things, but it’s come partly at the cost of pair programming and being more experimental. A tough balance.
  3. So far I’m 6 for 6 in iron blogger and alternating technical and non technical posts has been good, but serious y'all didn’t like my last post?! Too gross?
  4. I learned that once I start a project, I get a little obsessed and have a hard time context...

Continue reading →


Scraping the bowels of the Twitch API with Node.js

I had one deeply important question: who is on Twitch right now with nobody watching them? I find the performativeness of Twitch pretty hilarious and wanted to see what people are doing sans audience.

Screen Shot 2018-10-31 at 13.10.46.png

So I built Streaming Into the Void. I’ve since seen some great stuff like 24/7 Screaming Cowboy and a woman metal detecting alone in a forest.

The process of making this was about as strange and painful as the streams it scrapes, so here’s the story of how I did it.

The Twitch API

Twitch has a new API which you can use to grab streams. It has a few unique attributes:

  • You are able to filter by games (I filtered out as many gaming topics as I could to get the IRL streams)
  • By default stream results are sorted by greatest viewers. There is no option to sort in reverse.
  • You are rate limited to 120 calls per minute and each call can retrieve maximum 100 streams.
  • You can page across the...

Continue reading →


Catskills Conf

This weekend I went upstate to Catskills Conf, a gathering for technologists just a few hours outside NYC!

Catskills Conf is my first tech conference. I would describe it as a “boutique conference” with <100 attendees. It’s very intimate and the vibe was comfortable and family-like. It’s also at an outdoors center in the woods during the fall, the best season.

Here’s my report:

  1. I gave a 5-minute lightning talk about my game. It was fun! I want to speak more. I love that they gave attendees an opportunity to take the stage. There was even an open mic night.

  2. Small conferences that focus on the local area (in this case, Hudson Valley & surrounds) are wonderful. It really felt like the community was invested in each other and in the place itself.

  3. @bridgs_dev gave a great...

Continue reading →


The subway game

Rules

  1. Don’t hold the bars.
  2. Don’t lean on anything.
  3. Don’t fall.

IMG_7071.jpg

Tips

Hold a wide stance

If there’s room, stand wide and lean into the heels of your feet to stabilize you. Throw your weight backward to brace against the momentum of the car.

Bend your legs

Knees-Bent-1024x243.png

Illustration from “The Proper Surfing Stance” on Barefoot Surf Travel

Imagine you’re surfing. Lower your center of gravity and make it easy for you to shift your weight around. If your legs are locked straight you’ll topple over like a doll.

Express vs local trains

Express trains move fast and stop less frequently. The cars have more side-to-side rocking. Position your feet more across the width of the car to absorb the rocking.

On local trains, you’ll have to position yourself along the length of the car to brace against stopping and starting.

Stay light on your feet

Reposition yourself throughout the ride to find the...

Continue reading →


Raising chickens and rendering sprites with React

ezgif.com-crop (1).gif

Two sprite components rendering a chicken and egg without any images.

I spent my second week at the Recurse Center learning React and rebuilt one of my old repositories, Chicken Rancher, a clicker game about raising as many chickens as possible. It’s inspired by my childhood experience raising chickens and the long-running farming game Harvest Moon.

After whipping up a Game of Life, I was excited about how easy React makes rendering and updating the DOM. That let me spend more time on the game logic; I even learned how to use Redux to manage the game’s state and completely refactored the game in a more componentized way in the latter half of the week.

The game is powered by a game-wide time counter that increments every 500 milliseconds. Every half-second each <Chicken /> (which receives the game time as props, triggering an update) has a chance to become hungry. After 30 ticks...

Continue reading →


Flow vs. passion

In the last 6 months I made some big changes. I left my career in product management, moved out of NYC to spend time abroad, rediscovered programming, and came back for the Recurse Center. I’m at RC to refocus my life around coding, making, and being in the zone. This post is about my new motivations and a lesson I learned in finding fulfilling work.

Flow […] provided a sense of discovery, a creative feeling of transporting the person into a new reality. It pushed the person to higher levels of performance and led to previously undreamed-of states of consciousness. In short, it transformed the self by making it more complex. In this growth of the self lies the key to flow activities. — Mihaly Csikszentmihalyi

I quit my job to find my “passion.”

Product management wasn’t for me, but I’ll write about that another time. I left my last job pretty burnt out. Nothing excited me except...

Continue reading →