Engineering manager, Kotlin enthusiast, speaker, and dad. Writing about tech, work, and life.

Dan Kim
Dan Kim · Jun 17, 2017

Kotlin — It’s the little things

Kotlin has a bunch of amazing features, and certain ones tend to grab the headlines — things like extension functions, higher order functions, and null safety among them. And rightfully so — those are all incredibly powerful, fundamental features of the language upon which everything else builds on.…
Read more →
Dan Kim
Dan Kim · Jun 10, 2017

Kotlin makes me a happier (better) programmer

What’s Kotlin’s best feature? Creating programmer happiness. There’s been a lot of action around Kotlin lately. So one question you’ll often hear is “What’s your favorite Kotlin feature?” And while there are many wonderful things about the language, for me it isn’t about any single technical…
Read more →
Dan Kim
Dan Kim · Mar 10, 2017

Get to the point

If you want to consistently improve your everyday writing, there’s one really straightforward thing you can do… Get to the point. When you get to the point quickly, your writing becomes instantly clearer. Clarity makes your writing easier to understand, easier to retain, and more enjoyable to read.…
Read more →
Dan Kim
Dan Kim · Dec 21, 2016

A few tips to avoid the never ending comment thread

Asynchronous communications are a wonderful thing for productivity. But they do have a dark side: the all-too-common, never ending comment thread. Emails and message boards are where they’re commonly seen. It usually goes something like this: Dan: “I think we should try this.” <5 seconds…
Read more →
Dan Kim
Dan Kim · Dec 3, 2016

Don’t overlook the quiet voices and contributions

A few years ago I worked at a mega corporation. I had just finished up a brutal week of all-day meetings with 20 people. My boss and I sat down to catch up. Eventually, she warned: “Dan, you need to speak up more. You need to participate and contribute during these meetings.” I was livid. She felt…
Read more →
Dan Kim
Dan Kim · Nov 12, 2016

A shining example of how to teach

I was recently fumbling my way through a programming problem. I couldn’t figure out the root issue, so I cobbled together a shaky solution and posted my ¯_(ツ)_/¯. Then Sam Stephenson stepped in to help. I admire and respect Sam a lot — he’s patient, thoughtful, and wicked smart. He wrote such a…
Read more →
Dan Kim
Dan Kim · Aug 27, 2016

It’s OK to be pragmatic

Being pragmatic is engrained in me. I’m at my best being practical and boring. Here’s the problem — experience has taught me that you’ll never do your best work through sheer pragmatism alone. While I’m good at weighing options and making decisions, I’m not that visionary who can conceptualize grand…
Read more →
Dan Kim
Dan Kim · Jul 30, 2016

Life as an impatient programmer

Life as an impatient programmer I have to admit — patience has never been one of my strengths. My parents tell me over and over, “Try to be more patient!” It’s never quite stuck. I get why they harp on me. Impatience is by definition pretty negative sounding: having or showing a tendency to be…
Read more →
Dan Kim
Dan Kim · Jun 25, 2016

How I became and stayed a successful programmer

For a while now, interest in programming has been skyrocketing. So there are a lot of beginners out there starting their careers — and that’s a wonderful thing! If you’re one of those beginners, eventually you may start thinking about the long-term prospects of your new skills: How do I take a new…
Read more →
Dan Kim
Dan Kim · May 28, 2016

Some of my favorite Kotlin features

Unlike most articles that introduce you to a language, I’m going to avoid using too much programming lingo. Instead, I’ll try using plain English in the hopes that it’s more accessible to beginners. 🤗 Some notes about the code examples: I am by no stretch an expert in Kotlin. Read, consider, and…
Read more →
Dan Kim
Dan Kim · May 21, 2016

“Eat, sleep, code, repeat” is such bullshit

I’m on my way back home from Google I/O 2016. It was a fantastic conference — I met some great people and learned a lot. But while I was there, I saw something horrifying, something I couldn’t shake from the moment I saw it… “Eat. Sleep. Code. Repeat.” was printed on everything. I’d seen the phrase…
Read more →
Dan Kim
Dan Kim · May 14, 2016

How I fell in love with a programming language

For all its warts, Java has served me well. And as Android’s native language, it’s been a true blessing in disguise. Who knew all those years of writing webapps would turn into such an awesome mobile opportunity? But I’ve never had strong feelings about Java itself. I liked some things about it, and…
Read more →
Dan Kim
Dan Kim · Apr 2, 2016

I'm a boring programmer (and proud of it)

I have a confession to make — I’m not a rock star programmer. Nor am I a hacker. I don’t know ninjutsu. Nobody has ever called me a wizard. Still, I take pride in the fact that I’m a good, solid programmer. One who works hard at his craft and really enjoys it, even without the fancy labels. Yet…
Read more →
Dan Kim
Dan Kim · Mar 7, 2016

Writing software is easy

If you think building a software product is tough, try building a legendary car from scratch. I recently watched A Faster Horse, a documentary about the development of the 2015 Ford Mustang. It examines how that Mustang, whose nameplate is an icon in Ford’s history (and America’s), went from idea to…
Read more →
Dan Kim
Dan Kim · Aug 14, 2014

I quit Facebook

Recently there have been a lot of people out there quitting Facebook, myself included. Some are upset by the experiments that Facebook ran to see how users would react to changes in stories they were fed. Others, like me, are simply realizing how much pent up frustration Facebook is causing. A few…
Read more →
Dan Kim
Dan Kim · Feb 7, 2014

I finally figured out budgeting

At the ripe age of 36 - a modest 18 years after starting to do my own finances - I think I’ve finally figured how to budget my money properly. It’s not that I’ve ever been in a bad financial situation. I’ve always had positive cash flow, reasonable debt, and a decent…
Read more →
Dan Kim
Dan Kim · Mar 29, 2013

How people learn

The Spring 2013 quarter at The Starter League has begun, and we’re excited to get started! Part of that excitement is the chance to make every quarter successively better. Everyone on The Starter League team takes teaching and learning seriously. We’re always looking to improve so that…
Read more →
Dan Kim
Dan Kim · Feb 28, 2013

Change and happiness

Today I had some time to reflect on the changes I made in the past two months. I came to a simple conclusion: Life isn’t just good. It’s great. The reason is astoundingly simple. I recognized a part of my life that made me unhappy and changed it. For me that was work. Work is a huge part…
Read more →