Monday, October 23, 2017

My Latest Project: TypeAlias

There are lots of great reasons to explore new programming languages, even if you don't end up using them in production. I especially appreciate the new perspective that they give me. And sometimes, I come across a language that ends up being a fantastic fit for the particular set of problems that I'm working on at the time.

As I focused a lot of my development efforts on Android over the past year, I came to appreciate the benefits of Kotlin quickly. I liked it back when it was in beta a few years ago, and I put in enough time with the language to understand most of what it had to offer.

But there's nothing like applying it to your everyday project to really understand the ins and outs. Once I started using it as my main programming language, I really began to get a fuller understanding and appreciation for it.

And of course, ever since that epic moment when Google announced first-class support for it in the Android world, it really has made sense for developers in that community to get familiar with it.

Growing with a Language

There's something to be said for learning a language as it grows. For example, if today you were to try to sit down and learn from scratch everything that C# has to offer, you'd have a very long ways to go. And you'd wonder why certain features exist the way that they do. But if you had gotten in on C# back in the early 2000s, and kept up with it over time, you'd have a very thorough understanding of the language, not just as a single photograph of what it is today, but you'd have seen the movie - the progress and evolution of the language over time.

Kotlin is at a great point in its lifetime if you want to learn it. It's mature enough to be used in production code, but it's new enough that you can still sit down and get a high-level overview of all of its features in an afternoon.

I decided that this was one of those languages that I'd love to know deeply. So I've taken it upon myself to explore the language in detail, and I'm sharing my discoveries with you along the way.

Meet - a website I've dedicated to developing a thorough knowledge of Kotlin.

How TypeAlias Works

Here's how it works.

  • I explore Kotlin concepts in detail, developing a sort of encyclopedia along the way. For example, as I've been exploring generics, I've written concept articles about type parameter constraints and reified type parameters.
  • Once I've pieced together enough concepts, I come to some conclusions about how I believe those concepts can be used well in an application. At that point, I write a guide. For example, after writing the concept article about reified type parameters, I wrote an article to help introduce readers to this language feature, and provide guidance on how to best take advantage of it.
  • Finally, with some regularity, I post news updates on the site. This includes a brief curated list of articles, videos, and podcasts from the wider Kotlin community, plus some notes about articles I've added to the site recently.

I hope you'll join me on my latest adventure. Kotlin is a fantastic language for anyone, and especially for Android developers. If you're wondering whether you should take the plunge, do it!

No comments:

Post a Comment

Profile Picture
Dave Leeds
My Hobbies:
  • Programming
  • Cartooning
  • Music Writing
Full Profile