HNHacker News
TopNewBestAskShowJobs

dzik

65 karma · joined March 4, 2019

submissionscomments
dzik··on EurKEY: The European Keyboard Layout – For Europeans, Coders and Translators
European language - there is no such thing so there is no need for such keyboard layout.
dzik··on Memories: First exposure to computers
My dad used to work as a "system programmer" in Poland, starting in late 70's. He has worked in a biggest (I think) government facility back then. He used to write IO code for a database system. Because of a ban on IP imports across the Iron Curtain, or maybe how expensive DB/2 was, rewriting from scratch was the only option to have something that actually worked. It was all about registering child births, deaths, marriages, etc. So whole that database system was written by just a handful of people in S/370 Assembler (I think) using obviously 3270 terminal.

I was in his office number of times. Journey usually was starting in the morning. We did not have a car so we were taking a tram, about 45 mins to get there. Then about 5 mins walk and we are saluted by fully armed soldier. Then my dad calls the captain, using a phone handed over by another soldier behind the desk, asking if he can enter facility with his son. Permission granted, we enter.

For me, that was a completely different and magical world behind that gate. Everything neat and tidy, very unlike the world outside. My dad was taking me to his room (no open spaces back then) shared with one maybe two colleagues. Each had a terminal and a phone on their desks. Room was full of documentation books, punch cards here and there, other strangely formatted papers. I was allowed to wander through the office, use lifts (very hi-techy compared to what I saw before) and so on. I was 10. A boy in communist country in a middle of such facility.

Every now and then my dad was taking me to the main DC. One of the places I could not enter on my own. For me, it was stunning. Risen floor (with cables running below), noisy climate control and a room, 40m x 40m maybe full of mixture of washing machine or refrigerator size devices. One corner of that place was behind a glass with people in white coats there. Considering the noise, probably a good idea. One, maybe two of them, were wandering around in that DC looking at all the flashy lights.

So my dad was walking me around, telling me what those devices were: that's the disk (10MB If I remember correctly), that's the tape backup, that's a printer (A3 printer, noisy and fast), and here it is, that's the main CPU. I think it was IBM, but cannot be sure. There was also this Odra system there, probably with 1Mhz CPU, being a top of the line back then. In our country.

Later on my dad got a PC from his employer, it was a 4.77Mhz 8086 PC with 20MB disk. I was allowed to use it. This was the machine that got me into programming. It was so slow and noncompetitive to Atari and Amiga that the only fun thing to do with it was to program it. That sealed the deal.

dzik··on Achieving 100k connections per second with Elixir
That's the thing. You can always hack something in C to prove there is a better way for a specific task. In the past I did things like that just for fun. But in the real world it does not work like that. You buy into things as a whole, accepting their pros and cons as a whole. If you need to hack - change your tools.
dzik··on Achieving 100k connections per second with Elixir
Sorry, where do the authors claim they achieved >100k connections per second?
dzik··on Achieving 100k connections per second with Elixir
It means CPU is not saturated, so it is not the bottleneck, which means it is likely not enough Erlang processes have been started.
dzik··on Achieving 100k connections per second with Elixir
Point taken and I am already looking at stressgrid, "millions of users" is definitely a selling point to me. It is actually quite hard to generate enough and correct traffic to stress test large distributed systems.
dzik··on Achieving 100k connections per second with Elixir
Would you mind sharing the details? (URL maybe)

I think limiting factor might be not number of cores and outside of erl scope, that is eth card they used, network infrastructure, etc. Even Elixir could be something that impacts the tests.

dzik··on Achieving 100k connections per second with Elixir
Did starting more acceptors than the number of cores make any difference?
dzik··on Achieving 100k connections per second with Elixir
This article is quite good, especially part about bottleneck caused by single supervisor in ranch. However I have to say that title is a bit misleading because all of this has nothing to do with Elixir, it's all about Linux kernel and Erlang, cowboy and ranch are written in Erlang.

Having said that, I will add that I think it is good to have Elixir.

dzik··on Ask HN: What made you change your mind about a programming language/paradigm?
There are 2 erlang books. "OTP in action" and "Learn you some Erlang". I highly recommend both of them.
dzik··on Ask HN: What made you change your mind about a programming language/paradigm?
Erlang. Same here. Reading first few pages of a book describing principles of OTP (processes, share-nothing, messages, etc) was mind blowing. Company I worked for at the time (and I still do) decided to switch from Java to Erlang in middleware area. This decision seemed like a mixture of insanity and enlightment. Do you switch from one of the most popular languages in the world to something that most developers never heard of? Surely, exciting, but will it work? How do we hire new staff? After our R&D confirmed it was promising, me with couple of other developers were tasked with rewriting quite an expensive piece of middleware software that was unfortunately reaching its maximum capacity. We had no knowledge of how the software worked, we just knew its API. We were given time to learn erlang so we did. We all switched from eclipse to vim (some to emacs). After a bit of playing around with erlang we did our job in just 3 months. New app was much smaller and was easily capable of handling many more messages than the previous one. And it was written by erlang newbies! Then many more erlang apps we have created. It turned out to be a really good choice. Also the level of introspection you get out-of-the box with erlang is just amazing. I have never seen anything like this before.

Now I can compare Erlang to Java and it is really baffling how the heck Java took over the world. To do erlang I just need an editor with some plugins, ssh connection to linux with OTP installed and of course rebar3. To do Java I need 4GB of RAM to simply run an IDE with gazillion of plugins, maven to cater for thousands of dependencies for the simplest app and I need to know Spring, Hibernate, AOP, MVC and quite a chunk of other 26^3 3-letter abbreviations. No thanks.