HN user

dominicl

320 karma
Posts10
Comments48
View on HN

IMHO the differentiator is deeper yet everywhere engrained in OTP/Behaviours and the famous "Let it crash" slogan. It is the OS-Style process and resource isolation. That is something you can't port with a library into a language that doesn't have it built-in. Lightweight processes, are not the same if they can crash each other, or messup some shared objects/resources/...

You can implement actor behaviours in go or node or even c, but without that lower level support it will never give you the stability guarantees that Erlang process isolation is giving.

To draw a weird comparison Elixir (with Erlang process isolation) brings two world together. First it's a PHP/Ruby level of fire-and-forget productivity because each http request is handled in an independent isolated process, which if it crashes won't affect the system, but instead provide automatically a nicely debuggable crash log. And second it provides natively all distributed tools for long-lived systems. E.g. PubSub , Sessions and database connections don't have to be rebuilt like in ruby/PHP on a per request basis but can be their own long-lived processes.

If there would be a library that could bring this easy to use process isolation+communication e.g. to C programming it would be a game changer. But the best you get in all other languages I'm aware of is to use actual process isolation (fork multiple node/ruby/go processes) and then use some kind of IPC manually or redis or k8s...

There is something fundamentally flawed in the maintenance cost of the Deutsche Bahn. According to the Deutschen Instituts für Wirtschaftsforschung (DIW) it's costing the Deutsche Bahn 312,000€ per year to maintain a single kilometer of rail tracks. Given that and the already high subsidies of 10 billion € just to keep DB running, any kilometer additional track built is just increasing that hole.

I feel we are in a shit triangle here. Ticket prices are too high <-> quality is too low <-> overall cost is too high. There have been ongoing attempts to fix this by increasing rider amounts but at Germanys population density it's impossible to ever get even near to Japanese levels [2] of low total kilometers built with high usages. After my interpretation of things there is some innovation necessary to bring the per KM cost down before the Deutsche Bahn can play a more important role in the transportation.

On the same coin the cost of public transport for families vs. car ownership is just ridiculous. I've got a family of 5 - For every German intercity route going by car is significantly cheaper than going by train - usually 5x cheaper but often more. Same is true for traveling within a city that isn't your hometown (where you might have a monthly ticket). At this point I'm not even sure whether this is a problem that can be solved socioeconomicly.

I feel electric cars, robotaxis and in the future electric planes are much more likely to solve the larger part of of transportation than that railway is going to do it. Especially given that building another set of rails now in Germany is going to take from planning to delivery 15 years. The change of technology should be planned in.

[1] https://www.diw.de/documents/publikationen/73/diw_01.c.34457... [2] https://www.econstor.eu/bitstream/10419/141066/1/vjh_v63_i03...

Anyone having experience with contabo.com? I've got a couple of VPS there and so far pretty happy but didn't yet have any more involved interaction with the team or support to fully judge. No managed DBs but object storage as well.

From this response it's not quite clear to me: So this identity collision is against their Curve25519 implementation? Does this mean the attacker has effectively found a new brute force attack on that specific public/private key algorithm? That seems it would be bigger news and affecting more than just zerotier. Or is here some proprietary crypto in place on which the collision has been generated? Maybe I'm missing an important link with the details?

AS or just artificial stupidity I've heard a couple of times. It's quite mind boggling if you think about how many people had to engineer tensors and train networks for months if not years to create a system capable of so blatant stupidity.

Would love to discuss this over drinks. For me it's the opposite. It's feels pretty natural to me to imagine that intelligence and (perceived) free will are emergent properties. But consciousness troubles me, we still can't prove for anyone but ourselves that it does in fact exist - while it's existance is "apparent" to oneself. Also it does not make logical sense to me why such a feature should even develop, why have consciousness if you can have intelligence and problem solving without it? Loved the discussion between Lex Friedmann and Sam Harris on this very topic:

https://youtu.be/4dC_nRYIDZU

I can't help but to see this two ways at the same time. 1st this is totally what we should think and do in terms of moral standard and 2nd this in international law is the perfect vehicle for all kind of end-of-humanity scenarios. Feed this into an AI and it will find the optimal solution to this problem (which might not include human existance anymore), or give this to a lunatic politician and he can use it for his war of aggression. The intention is good but what is the balancing power? How much human life is worth how much CO2/*? And who are the judges?

What's the maximum traction that an electromagnet can cause? Is a thermonuclear powered super- in orbit thinkable? At least most human produced space garbage is magnetic I assume? So if we send multiple of those super magnets into orbit they would clean by slowly attracting small objects. So we reduce the problem from many tiny objects to a few larger easier to track electric dustballs. Anyone has some insight on why that does not work?

Nice benchmark, but I think the results tell us more about the grpc+protobuf+http2 libraries in use than the languages. It's quite amazing though to see such a highly optimized Java libraries.

Richard Stallmann has an interesting piece on FLOSS and FOSS definition, containing this:

A researcher studying practices and methods used by developers in the free software community decided that these questions were independent of the developers' political views, so he used the term “FLOSS,”

Unfortunately he doesn't name that researcher, whom he is attributing FLOSS to. Anyone knows?

According to Stallmann "FLOSS" is the most inclusive term including open source with a non-free license though:

Thus, if you want to be neutral between free software and open source, and clear about them, the way to achieve that is to say “FLOSS,” not “FOSS.”

So and I'm suprised by that, while L stands for libre according to Stallman, the acronym FLOSS is a actually a more liberal term because it is neutral to whether the software in question free or only open source.

[0] https://www.gnu.org/philosophy/floss-and-foss.en.html

A definitive reference would be great, for me the "tried in the past" quote has always been a pointer to the Java VM. Which has great benefits of it's own but always had the problem of global GC induced freezes. Working with Cassandra instances this has always been a problem since 2013 till today. It just seems to be a very hard problem to solve when object references flow everywhere. But it's really unpleasant when your whole DB instance with all it's parallel requests locks up for GC.

[0] https://stackoverflow.com/questions/21992943/persistent-gc-i...

I'm curious about this argument. Haven't heard the "tiger states" growth attributed solely to US policies. Any links/pointers to those advantages that were granted these states but not other developing countries at the time?

We're using the blockchain to register unique usernames, drive addresses and store drive memberships (public keys) so there is no central database required to keep the system up and running. The goal is to provide the convenience of a centralized system, without a centralized system. That said we still have to improve convenience... beta as it says

Hey, cofounder here, thanks for the interest. We just released our beta and I'm happy to answer any questions / take them to improve our site/docs. Here a couple of answers on questions I'm seeing in the comments right now:

Privacy: The clients are operating peer-2-peer and their communication is end-2-end encrypted. Meaning you and your peers host the data. The relay servers if needed are never and can never see your data.

Unlimited Storage: As it's a peer to peer system, there are no 3rd party servers storing any of your data. So it's limited only by your clients capacity

Open Source: The relay network servers are open source on our github site. The GUI client is closed source, you pay for the convenience. We might open source a pure command line client in the future.

Privacy Policy & Terms: They are linked at the bottom of the page: https://diode.io/privacy-policy/ & ttps://diode.io/msa/

I'm happy to answer all questions on this. Keep em coming.

But why do strlen() at all? And why are all platforms (Linux, Windows, MacOS) seemingly doing that?

I think you're right that there is no upper bound but it shouldn't be necessary to do a full strlen() if you're instead scanning incremental. You could go char by char until the pattern '%f' is fullfilled and then return. That would solve the issue on it's root -- and who know how many programs would suddenly get faster...

So looking at glibc souces I've found the culprit in abstraction. Looks like a FILE* like stringbuffer object is created around the c-string: https://sourceware.org/git/?p=glibc.git;a=blob;f=stdio-commo...

And that abstraction does call something similiar to strlen() when initializing to know it's bounds here: https://sourceware.org/git/?p=glibc.git;a=blob;f=libio/strop...

I'm reading this source the first time, but I guess to not break anything one could introduce a new type of FILE* stringbuffer let's say in 'strops_incr.c' that is working incrementally reading one char at the time from the underlying string skipping the strlen()...

Would be awesome cool if GTA online would be loading faster under wine than on windows :-)

Chinese Demography 6 years ago

Have heard this before 8 billion would be too much. I've learned human population is always in an equilibrium with the technological ability to provide for them. So agriculture innovation leads to further population growths. What hard limit are we running into? Why not further innovation and 16 billion?

Having the same implementations on all layers seems like a reasonable approach. But I don't see how the choice of the framework helps getting pixel perfect matches especially between different browsers. It seems to me rather the right implementation counts. E.g. using canvas drawing would be one approach to guarantee pixel perfect matches. Also you could do then checksumming in test cases to ensure the images are always the same.