s6ro's comments

s6ro | 2 years ago | on: Talking with the inventor of C++ [video]

I used to love C++, template wrangling :-P aah, but pretty much gave up after C++11. Right about the time when Scott Meyers also said: "enough" (paraphrasing).

My biggest issue for giving up was the ever growing list of "don't"-s, its not fun to write in language where the design is so "loose" that to get reasonably correct/predictable code you always have to reference the list of "don't"-s.

And then having been a build maintainer on various projects the build and package management was a nightmare. Still vividly remember the first time I looked at Rust's cargo - mind blown :-)

s6ro | 2 years ago | on: I would rather see my books get pirated than this

This "delightful" experience is not just Amazon. Its what happens when large tech. companies play "who blinks first". Apple has a fair share of blame here, with their cut of 30%/15% from digital content they did not help to produce.

As someone who enjoys reading on my Kindle and as an early Audible customer, the crap in app browsing and purchasing experience was one of the reasons I put off having an iPhone.

After years of complaints, now at least in app Audible books browsing and purchasing works on iPhone, sigh ...

Now having an iPhone, I have simply traded one set of bad experiences for another, as currently the set of bad experiences on an iPhone, is less important than the on an Android.

s6ro | 2 years ago | on: Writing Python like Rust (2020)

Elixir is functional and immutable first, (and structs) - that alleviates somewhat the pain of not having a strong type system. I really like the architecture of OTP, but I still find myself using Elixir in anger.

Especially, if I'm trying to bring and old(er) codebase (Elixir 1.9) up to the newest release... and upgrading packages, checking if things are likely to brake etc.

I constantly find myself realising that I cannot trust the compiler, which means more defensive coding, more tests, more time spent...

As an example, upgraded postgrex. The return tuple of one its functions had changed from 2 elements to 3 elements. Did the compiler caught it? No. Had I had dialyzer type spec-s on my private function, I would at least gotten a warning. Thus, morale of the story: always type spec even your private functions , especially if they use 3rd party code.

s6ro | 2 years ago | on: Writing Python like Rust (2020)

Ah memories... I once had 100K Python 2.x codebase to maintain. No docs, no tests and then being required to add features. Had to use the debugger[1] to make sense of the codebase and types, formats etc. Sheer madness and such a waste of time...

To this day, I'm baffled by the dynamic language folks who cannot get their head around how strictness/rigor (via a good expressive type system) actually makes maintenance easier and more importantly: cheaper.

[1] https://github.com/inducer/pudb

s6ro | 2 years ago | on: Toward a more useful keyboard

Same for me, learned to properly touch type with my language layout and with the help of notches on 'f' and 'j' to help me find home row. Being able to keep my eyes on the screen while typing catches a lot of mistakes.

When travelling I still like to bring the old trusty Microsoft Bluetooth Mobile Keyboard 6000 [1] (phew :), even though the laptop is a Mac.

[1] https://www.amazon.com/Microsoft-Bluetooth-Mobile-Keyboard-6...

s6ro | 2 years ago | on: Why F# evangelism isn't working (2015)

I found it rather annoying that you cannot organise your code to be readable from top-to-bottom in a file, going from the big picture to finer details. Which, I think is much easier for humans.

s6ro | 3 years ago | on: Millions of active WebSockets with Node.js

If anything, the article proves that when you want performance don't use Node.js - or more generally, abstractions have a cost.

The actual library, as already pointed out, is written is C/C++ and bypasses Node for everything, other than providing an usage API layer.

Its the same as claiming that Tensorflow is written in Python ;)

page 1