Hacker Newsnew | past | comments | ask | show | jobs | submit | dimaaan's commentslogin

Don't forget NPM packages Mocha and Chai (Pee and Tea)




And "Search by picture"


Right, fixed such test today


And standard library design errors also.

Properly designed date/time API invented relatively recently.

System.DateTime (.NET) - 2002 | System.DateTimeOffset - 2005

Joda time (JVM) - 2005 | java.time - 2014

Temporal (JavaScript) - still experimental


Thank you for that kind of words.

It's so rare nowadays.

While i agree with technology, art (painters, literature), dance (ballet), i didn't think Russia brings much to the worlds of music.

Curious what is in you iTunes rotation?


Mostly techno stuff.

Also, surprisingly, some really good flamenco guitar, and Arabic-inspired stuff.

Some might be from former Russian nations, but some is straight from St. Petersburg.

I’m not really in a position, at the moment, to find the various songs. I have a big library, and it takes a while to find stuff.

I have very eclectic tastes.


s/former Russian/former Soviet/


Good point. Thanks for the heads-up.


Also, Russian rock bands are really good if you know the language. The words are deep and emotional and far from banal standards.


And the greatest Russian rock singer was Korean.

https://en.wikipedia.org/wiki/Viktor_Tsoi


>> No, https://twitter.com/ is probably not blocked in Russia

>> No, https://www.instagram.com/ is probably not blocked in Russia

Seems like its not working at all.


Similar trick for JSON-based web API's that returns either error message or result

    async fetchApi<TResult = void>(request: Request): Promise<TResult> {
      type SuccessfulApiResponse = { Succeeded: true; Result: TResult }
      type FailedApiResponse = { Succeeded: false; Error: string | null | undefined }
      type ApiResponse = SuccessfulApiResponse | FailedApiResponse;
      const response = await fetch(request);
      ensureStatusOK(response);
      const result = await response.json() as ApiResponse
      if (!result.Succeeded) throw new Error(result.Error || 'Unknown API error');
      return result.Result
    }


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: