Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Cloudflare Quick Tunnels(cloudflare.com ↗)
    163comments
  2. Photon-Emission-Guided Laser Fault Injection Enables RP2350 Secure Debug(ledger.com ↗)
    19comments
  3. Show HN: Cactus Needle 3: 8-29MB automation models can match DeepSeek V4 Flash(cactuscompute.com ↗)
    38comments
  4. North Korean nuclear test sets off years of earthquakes(science.org ↗)
    99comments
  5. US Military had close call after using AI for hallucinated intelligence report(cnn.com ↗)
    57comments
  6. OpenJev(openjev.com ↗)
    225comments
  7. C++26: Trivial infinite loops are no longer undefined behaviour(sandordargo.com ↗)
    127comments
  8. Systemd is a suite of basic building blocks(systemd.io ↗)
    13comments
  9. Show HN: Ax-check.com – Can agents use your product?(ax-check.com ↗)
    10comments
  10. I vibed a proof of Conway's conjecture(overreacted.io ↗)
    129comments
  11. A heap overflow and SSO misconfiguration to compromise OpenAI internal repos(hacktron.ai ↗)
    187comments
  12. Mathematicians Build Long-Awaited Graph Sandwich(quantamagazine.org ↗)
    10comments
  13. I don't like passkeys(hawksley.dev ↗)
    601comments
  14. Border agents can search cellphones without a warrant or reasonable suspicion(lawandcrime.com ↗)
    10comments
  15. Jemalloc 5.4.0(github.com/jemalloc ↗)
    77comments
  16. NATS publishes preliminary report on technical incident of 8 September(nats.aero ↗)
    24comments
  17. The scourge of x86 emulation(fex-emu.com ↗)
    71comments
  18. Show HN: Scry, programmable internet search w/ congestion pricing(scry.io ↗)
    8comments
  19. Cekura (YC F24) Is Hiring(ycombinator.com ↗)
    discuss
  20. The Shadows Lurking in the Equations – Underwater Islands(gods.art ↗)
    13comments
  21. Warren Buffett Steps Down as Berkshire Chairman, Names Son to Replace Him(nytimes.com ↗)
    171comments
  22. GrassLobster: AI Agentic Generation of Parametric Geometry Workflows(miro.vision ↗)
    5comments
  23. BeanShell3 in Development(beanshell.github.io ↗)
    18comments
  24. Replacing Pull Requests with Delta(zed.dev ↗)
    80comments
  25. AI chatbots are becoming experts at changing people's minds(science.org ↗)
    81comments
  26. An empirical study of harness design for coding agents(arxiv.org ↗)
    49comments
  27. Bend 2 and the Vibe-Coding Trap(liampwll.com ↗)
    224comments
  28. Build Faster Feedback Loops Using Qualitative User Research(nseldeib.com ↗)
    2comments
  29. Pre-Greek: The lost language hidden within Ancient Greek(linguisticdiscovery.com ↗)
    63comments
  30. Microsoft exec called AI scraping 'the largest theft of labor in human history'(techcrunch.com ↗)
    684comments

Gwan – a fast 150kb web server supporting 14 scripting languages

80 pointsby 12y agogwan.ch
34 comments
12y agoHN ↗

The frontpage describes what it actually supports:

http://gwan.ch/

Interestingly they do not provide a windows version of the server, citing it being slower than the nix one, which entirely ignores that quite a few people develop on windows and deploy to nix.

Edit: Oh wow.

http://gwan.ch/insurance : "To Secure your Investment on G-WAN... ...Buy G-WAN's Source Code!"

12y agoHN ↗

Oh wow, since 2009, I tried it at work for a minute, it was indeed very fast. That's all I can say. He should have let the old version online just for the sake of trying.

12y agoHN ↗

To be fair in enterprise software we end up with escrow agreements all the time. It’s not that crazy. Can’t speak to the author of the project, just this one little snippet.

12y agoHN ↗

Very interesting, and - entertaining. I've had a feeling something was off, looking at the website. If something is too good to be true, it probably is.

12y agoHN ↗

Perhaps I'm overly critical and/or cynical, but it's difficult to take this page seriously when there's a graph right at the top showing that IIS 7.0 Windows / C# can handle 0 concurrent users per sec.

Either this is a poor attempt at humor (indicating a naive or dangerous opionated author), or the testing isn't thorough (indicating the author isn't thorough enough to care despite making very bold claims about similar software). Neither lead to very promising conclusions about the quality of the software.

12y agoHN ↗

If you look closely, the point is a little past 0, perhaps 5-10.

I've read somewhere that, a laboratory has been able to to acheive this level. I'm unable to find the article to back this claim up, however.

(I'm a .NET developer)

12y agoHN ↗

That article then proceeds to say absolutely nothing about its performance.

12y agoHN ↗

From reading the article, it's clear that repeated tries didn't yield a working server. I'm not surprised that there was no performance testing of something that does not work at all.

12y agoHN ↗

Oh, and their examples are weird. I found this snippet earlier on, and it made me go “Huh?”

    if(s[0] == '%' && s[1] == '2' && s[2] == '0') // escaped space?

That can read past the end of the string if it ends in a '%'. The length check is missing. Maybe it's not such a big deal here, and this is only an example, but if the author's examples are this sloppy, and we can't see the actual source code of his server, then it's hard not to generalise.

12y agoHN ↗

It will not read past the string if it's null-terminated.

12y agoHN ↗

It took me a moment to figure out why that won't happen. It could use a comment in that place.

12y agoHN ↗

"G-WAN is the Gentoo of the Application Server field."

False. Gentoo is all about control and configurability.

12y agoHN ↗

I wrote that (the article, rather than the software), incidentally.. The most interesting thing that happened was that it prompted a Disqus flame-war where I was inundated with comments on that post, and a whole bunch of others from G-WAN employees (and their friends - I presume) taking pot-shots.

I realise that my writing style can sometimes be seen as abrasive, but I still don't think that I've done a very good job of explaining my surprise that a) GWAN exists at all, or b) people are actually using it..

I spent a whole weekend trying to get my head inside it, and eventually gave up, after wondering what on earth I was doing.

12y agoHN ↗

whilst performance does look staggeringly good, it is entirely negated by the pitiful rationalisations made against not being open source. given everything that's happened regarding privacy recently, why on earth should anyone trust their binaries?

it might fly in the world of Windows, but i can't see this becoming a thing on Linux.

12y agoHN ↗

I'm sure I read that it only works on *nix environments, because Windows execution is slower. If true, it doesn't fly in any worlds.

12y agoHN ↗

Yeah, it inspires a reaction of "these numbers look surprisingly good" followed by "the only evidence I have for its performance is that a person who is clearly crazy claimed they got these results".

I would like to see some independent testing, by somebody who is alert for benchmark-cheating hacks.

12y agoHN ↗

Unless you're only serving static files (on a 10Gbit+ connection) or are still running Apache/IIS, the web server is not the bottleneck, it's either your (Python/Ruby/Node/...) code or the underlying database.

12y agoHN ↗

I kind of feel bad when this project gets a bad rap online. Lets look at the pros and cons :

Pros

1. Very fast

Cons

1. Author looks unstable. (S)He may leave the project causing technical debt. Mitigation : Use the proxy in some standard way ?

2. Author's criticism of open source. Seriously ? You will not use someone's software because of his/her political opinion ?

3. Non-open source. How many of us use Windows ? Linux with binary blobs ? Fully open processors ?

4. Author seems conceited. So what ? (S)He managed to do something no one else has, shouldn't (s)he be proud ?

12y agoHN ↗

I agree with you. There are legitimate reasons to only want to use open source software, but the people who take it to the extreme and get angry at other people for choosing to use closed source software, or who think closed source software should not exist, kind've irk me.

This is probably not a product I would ever recommend to anyone. It's not a product I would deploy myself on an important project, but the level of negativity and name calling against the product and the author is completely unwarranted. He has a right to his opinion, and he has a right to distribute his product however he wants. You have a right not to use it and to criticize him - but keep it respectful!

12y agoHN ↗

Also, quoting Wilde instead of Sorros would be infinitely more classy :-)

e.g.: "Experience is simply the name we give our mistakes." - Oscar Wilde

12y agoHN ↗

More cons:

5. Nobody appears to use it. No community.

6. Example code is bizarre and irrational.

7. Benchmarks are probably not representative of real-world workloads.

12y agoHN ↗

150KB? No... it's packed with UPX. Unpacked size is over 400KB.

This, and the fact that he seemingly chose to obfuscate random strings in the binary with an absolutely trivial cipher, make me quite wary of trusting this.

12y agoHN ↗

A few releases ago, it was also killing (with segv!) whatever process was observing the server with ptrace(), such as gdb or strace. I ended up unpacking and firing IDA; found the routine, and yes, that was exactly what was happening. I don't know if the current version does that anymore.

12y agoHN ↗

Sure enough, trustleap.ch offers custom crypto, too. Quote: "TrustLeap will protect your data forever [...] we can do so without disclosing how it works."

These guys are, in all likelihood, selling gourmet food snake-oil.

12y agoHN ↗

Awhile back I tested this by making my own lib which did sleep and then print a random number, it worked fine, but the moment I did a benchmark, with randomized cookies and other things, which is read from inside the source, all requests returned the same result.

This server will not respect contexts which will change what the user sees. It just games the benchmarks with an in-memory cache.

12y agoHN ↗

So where is it in use?

I am always skeptical of any claim of more than twice of an improvement over things that are already highly optimized (like nginx).

Found this list of "customers" http://twd-industries.com/customers.html but not sure if gwan users or what websites.

g-wan website needs a redesign for certain

12y agoHN ↗

I think it performs really well on some crappy vps's. That floating point exception is happening with the newer kernels, but who really cares. The claim with php (500k requests) they actually managed to get there with ph7 (which is way off). Still, even so, you could use gwan to get some high performance out of your static files.

12y agoHN ↗

Looks interesting, but the C# benchmark is horrible.

There's no way a properly written C# program would take IIS + ASP.Net C# ............ 171.8 ms! A bare bone Katana/OWIN self-hosted hello world echoing endpoint can easily surpass 5K+ req/s while the equivalent ASP.NET MVC hello world echoing endpoint can surpass 3.5K+ req/s with the standard routing.

I suspect the biggest contributor to the slowness is all that string concatenation - because every 'version' of a string is hashed and stored in memory e.g. "a" ["a"], "a" + "b" ["a","b","ab"] etc. (use StringBuilder or write directly to the output)

I suspect the Java benchmark also suffers due to this. (use StringBuffer)