waltera's comments

waltera | 6 years ago | on: Maturity

We had a very similar experience with Gitlab too.

Our teams evaluated Gitlab for a year before completely migrating away from it (to Github Enterprise for SCM, Confluence for wiki, YouTrack for issues and TeamCity for CI).

Not a single team (out of 20) was happy with the overall performance (and especially the performance of code search).

As far as wiki is concerned, Confluence's UI has its own share of issues, even after their recent overhaul, but all in all it is much better product. YouTrack and TeamCity are simply much more polished & stable products and are (in our experience) easier to administer than the competing offerings from Gitlab.

waltera | 6 years ago | on: TypeScript vs. ReasonML

I got interested in Reason last year after reading lorefnon's article [1] comparing Reason with TypeScript.

Recently, after evaluating both for a large project we decided to prefer TypeScript primarily because TypeScript's support for intersection types, mapped types and conditional types is really awesome and make integration with javascript libraries a lot easier. As far as I could find, similar things can't be done in ReasonML at all (although I could be wrong on it).

The tooling integration of TypeScript is also really awesome. Besides the usual refactoring, jump to definition support etc. a lot of effort has gone into small things that makes life easier. For example, if you have ctrl+click on a mapped type's property it will jump to the original type being mapped. In libraries like io-ts if you add doc comments on methods which are used to derive the types, the documentation will be propagated to the derived types [2].

I recently found that the author of the above post has been experimenting [3] with babel-macros [4] to facilitate nice type-safe fluent APIs/abstractions which are compiled away to simple readable javascript with zero/negligible runtime overhead and found it a really neat idea. Looking at some of that code, it appears to be a lot simpler than writing ppx macros [5] for ocaml which I very briefly experimented with.

[1] https://lorefnon.tech/2018/05/13/reasonml-vs-typescript-firs...

[2] https://github.com/gcanti/io-ts/issues/201#issuecomment-4347...

[3] https://github.com/ts-delight

[4] https://github.com/kentcdodds/babel-plugin-macros

[5] http://ocamllabs.io/doc/ppx.html

page 1