News for hackers. Stuff that matters.

hissssst

Re:API testing tool which sucks less on Sunday May 25, 2025 @01:25PM (#44089278)
What are .http files?
Re:API testing tool which sucks less on Sunday May 25, 2025 @12:22PM (#44088888)
Remember HTTP? The plaintext protocol? Making an HTTP request used to be as simple as echo "GET / HTTP/1.0\r\n\r\n" | nc ... . Well, it's not anymore. We fucked it up with electron applications which require subscriptions, login pages, fail to work with basic headers, have fucking cloud versions and use some ultra-smart collaboration sync.

But HTTP is still plaintext. And even though HTTP 2 and 3 are not plaintext, they are still can be expressed as one (most of the times).

So I returned the plaintext back, just wrapped the curl and called it hxxp. The most similar program to hxxp is hurl, but hxxp is much simpler and much more straightforward, with regular shell interpolation and no testing framework inside. Just write the HTTP request and execute it, that's it.

echo "GET https://example.com/ HTTP/1.1" | hxxp -

Re:Erlang/OTP: Garbage Collector on Monday April 03, 2023 @05:26PM (#35431509)
> The VM itself is the cause of neither Java's reliability nor Erlang's. It's the programming model that matters. The JVM can now support the Erlang model

That's a common misconception. There is a huge practical difference between "being able to write share-nothing" and "having whole ecosystem built around it". While you're referring to Erlang running unsafe native code, you're completely ignoring the Java running unsafe Java code. To ensure guarantees like "share nothing" or "restartable processes" Erlang developer just needs to write only Erlang and Java developer needs to carefully pick every dependency and almost always rewrite some of them.

That's the exact reason why Akka didn't replace OTP: you're most likely using the dependency which is not written with Akka, and it might share mutable memory, use global mutable state etc. So, even with possibility of writing Erlang-like software, you most certainly will end up with Frankenstein where some parts are fault tolerant, immutable, functional and reasonable, and some parts are oldschool java 8 bullshit.

Do you know what is the definition of DSL? It is when you write your code in one language and get exception in another. And that's exactly why almost every JVM language (except Java) is a DSL.

You just can't have guarantees Erlang has without rewriting everything with your Akka of the day.