An opinionated piece in favor of Typescript. Answers what Typescript isn’t supposed to do, what it does do and what could be improved!

I recently read an article that presented “7 good reasons not to use Typescript” at the end of which I was a bit disappointed by the arguments that were brought up and the considerable number of claps and approvals the article got. While I don’t have reason to believe the author had ill-fated biases to do so, I do believe it is the lack of experience with Typescript that gave course to holding such opinions.

If anything this is my indirect response to that and just one more developer’s attempt to set Typescript’s name straight, as in my personal experience…

Born out of the idea of connecting with our friends during the quarantine times is a web platform (d̵e̵s̵k̵t̵o̵p̵ ̵o̵n̵l̵y̵ ̵f̵o̵r̵ ̵n̵o̵w̵) built by me and my good friend Andrei Topli that let’s you play a game of chess while face-timing with a good friend (or six), or with a complete stranger if you are feeling adventurous.

The name is inspired by the (in)famous and by all means we think it’s a fun play on words but we do hope the similarities will stop here. …

For a while now I’ve been wanting to work on a data science/analysis project that would allow me to dip my toes in this complex field. This past week I suddenly realized I’m “sitting” on a gold mine. For the last three years I’ve been regularly playing chess (almost daily) and I managed to accumulate a little bit over 2 thousand games.This is a pretty good amount of data and I thought I could leverage it in my data science learning endeavors. In addition, I could learn a thing or two about my chess progress.

Before I start, I’ll take…

April 5th, 2016

Originally written during my Ten Cities in Ten Days solo trip back in April 2016.

The minute I got out of the bus I realized it’s much colder here than in Philadelphia. I looked at the weather app and saw the temperature just above 30 degrees. Put my hood on, tightened the scarf around my neck and tucked it inside my jacket, stuck my hands deep inside the pockets and thanked God for bringing a sweater with me. I started moving fast, crossing streets back and forth like a disoriented dog, while looking for any directional signs…

Here I’m presenting two cool little functions that are making my days spent in the JS Promise land just a bit happier.

All code snippets are written using ECMAScript 2015.

So, I’ve often found myself writing code like this:

const getUser = (id) => {
return httpClient.get('' + id)
.then((response) => {
// Side Effects Logic
return cacheData(response);
.then((response) => parseUserResponse(response))
.then((user) => {
// more side effects on the User Data now
return user;
then((user => {
// even more side effects
return user;

const cacheData = (response) => {
cacheStore.put('user', response);

Saturday, April 2nd 2016

As I promised to myself, at the end of each day I’ll be putting my thoughts down on the paper, in an attempt to eternalize the feelings and emotions conveyed by each city.

It started this morning at 7am, when I got out of the bed, being 10 minutes late, and rushed through my morning routine and out the door. It turns out you don’t need to be 1 hour earlier at the Greyhound bus terminal, as they suggest, because 10 minutes will do just fine. I’d have probably ended up next to the really loud…

This is a story I’m writing while riding the train to and from work. If you have something to say please do. If you think it sucks please tell me why. Thank you!

It is cold outside. He felt it when he looked out from the window and saw the white blanket of snow covering the sidewalk in front of his building. The feeling started to move down into his body, serving as a reminiscent of all the times that he was out in the cold.

“I don’t want to get out of the house. I don’t want to go…

Programming is a hard job man. And I don’t mean it in the way a person with no love for computers sees it. I’m speaking from the perspective of a guy who dreams code during the night. I’m speaking about design patterns, architectures, legacy code, decision making processes and all the other stuff a so called software engineer must hold under his tool belt.

I mean, how do you know when to stop thinking?
When the problem is fixed!? There’s always room for improvement!

What about doing? How much is too much?
I believe dreaming the problem and the code at…

Gabriel C. Troia

99% Human. 1% Humor.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store