41 comments

[ 3.3 ms ] story [ 70.9 ms ] thread
Seeing how this prize, named after the "Father of Swedish engineering", dates back to the 1800's, and is thus older than the Nobel prize, it has typically rewarded engineers from the classical engineering fields.

As such, it's very nice to see a feat almost exclusively carried out in the digital world of software get rewarded, and put right next to accomplishments in construction, metallurgy, etc.

Among notable earlier recipients with a tech connection (technnection?) stands Håkan Lans:

https://en.wikipedia.org/wiki/H%C3%A5kan_Lans

> tech connection (technnection?)

I’d call that a portman-nooo. But thanks for that bit of context to the award. Made me appreciate it more coming from the the industry that created “the webbys” (sorry webbys.)

If I remember correctly, Daniel has been working on curl for at least 2 hours a day for ~20 years. I hope he and his family have a well deserved vacation. Thanks Daniel for your hard work.
Agreed. The prize money is 250k SEK ($30k). That should buy a pretty sleek vacation. Even if the prize money is taxed (I'm unsure of that. My thinking is it counts sort of as a scholarship or grant, tax-wise, and should thus be exempt of taxation in this case.).
I wonder if the media attention due to him getting banned from traveling to the USA contributed to him being known to a wider audience, and thus on the radar of whoever picks the award winner.
That story went by me. Was there a rationale for banning him?
https://daniel.haxx.se/blog/2017/06/28/denied-entry/

I can't see any follow-up on why he was denied entry though.

We were never able to get any answers as to why I was denied - in spite of some real efforts in finding out. It will remain an unanswered mystery.

I will make a renewed attempt to travel to the US at a later time. Hopefully it was just some mess-up, a human error or whatever.

/ Daniel

My guess is that it's similar to the reason curl (and wget) sometimes get identified as malware by virus checkers.

Someone in US Immigration Googled 'curl' with your name and found a bunch of malware hits.

Certainly curl is used by lots of malware, and many a hacker probably use curl in their software.

I guess it's possible he was flagged by someone reviewing malware. Would malware creators give any credits?

I got naturalized in US a few years back. Yes, big mess, great potential for random mishaps and general ignorance.

Fingers crossed on your future trip.

Did not know much about curl until I saw this. I have seen a few curl something.sh | sh instructions online that I always skip and wget the script for inspection. I guess it took a prestigious swedish award to the author to add it to my afternoon reading :-)

Judging from the respect in all the comments, it looks like a very well deserved honour. Congratulations and thanks for your work! I will appreciate even more after my reading.

From my experience both wget and curl deserve respect. Both are fantastic tools, similar in some ways but covering much ground in other directions. I find wget ideal as a spider (checking broken linnks, making local backups of webpages and similar) while curl is much easier to use for quick inspection of web pages (including headers and https certificates).

Congratulations to author for the prize! And NZ is a great destination, hope they enjoy it. :)

And i think that is exactly how they differ.

Wget is first and foremost aimed at being a file downloader/spider. If used with no switches it will grab the first file behind the url and save it locally.

Curl on the other hand it more of a HTTP client lib with a cli interface. Unless fed a specific switch, it will send the file behind the url to stdout. Meaning that it is more at home at one end of a pipe.

> I have seen a few curl something.sh | sh instructions online that I always skip and wget the script for inspection.

That's the `| sh` that you don't like though, not the `curl something.sh`...

Implementing a HTTP client might seem trivial, but it's actually hard, and it's getting more and more difficult.
In large part because HTTP is turning into TCP. A generic data carrier that who knows what will flow across.
And cURL isn't just a HTTP client, it does loads more.

"[curl] is a free client-side URL transfer library, supporting cookies, DICT, FTP, FTPS, Gopher, HTTP (with HTTP/2 support), HTTP POST, HTTP PUT, HTTP proxy tunneling, HTTPS, IMAP, Kerberos, LDAP, POP3, RTSP, SCP, and SMTP. The library supports the file URI scheme, SFTP, Telnet, TFTP, file transfer resume, FTP uploading, HTTP form-based upload, HTTPS certificates, LDAPS, proxies, and user-plus-password authentication."

(comment deleted)
Curl (as well as many other tools) are crucial to me everyday. Thanks to Daniel (and all the other contributors of all the projects and libraries)! Enjoy your holiday. Aotearoa (Maori name for NZ) is a beautiful place.

Full disclosure: I'm kiwi, so might be somewhat biased ;-)

I love the last quote of the interview which roughly translates to:

"But this prize might contribute to my family understanding that I do something of value while they sleep."[0]

Spoken by a person who has created something that has probably been used by hundreds of millions of people. Obviously the quote is very tounge in cheek, but still.

[0] http://www.polhemspriset.se/aktuellt/arets-polhemspris-till-...

Curl is in everything. And you can tell, if you find the license. In my 2014 Chevy Cruze, if you look in the owner's manual, there is the curl license, in all its glory. I've used it many times myself, and it's always proven itself to be a great piece of software.
I've never actively used it beyond the occasional `curl` commandline thing; have I subconsciously been using libcurl? Whenever I do a http request from idk, Java or Go, is libcurl involved?
Depends, it can be a http connection over tcp without curl being involved or it can be a curl request wrapped in underneath the hood, like in guzzle, for example.
I wrote a tiny (< busybox) curl, and found some needed http features (like redirection) required a different architecture than the naive one I started (and stayed) with. I wonder how many such details have informed the architecture of curl...
Yup, building a tiny subset of a HTTP client is easy...and then you start running into the quirks of the protocol, of the servers, even of the network stack. Building a mostly-functional HTTP client is much harder.

I am deeply grateful for curl - most of the pain of speaking HTTP has been abstracted away from me, thank you @bagder.

Thank you Daniel!

Let's also not forget the anonymous authors of Wget - a venerable tool that eventually lost the battle with curl

lolwut?

I've downloaded hundreds of billions of things with wget.

Not to mention the two aren't even in competition.
Straight from the GNU page:

"The original author of GNU Wget is Hrvoje Nikšić."

The authors of Wget are far from anonymous. Hrvoje started with the first version, but hasn't been around for a while now. However, it's not that Wget "lost" the battle with curl. They are two different applications with different use cases. Curl is predominantly a library, while wget focuses on being a small downloader application.

Only thing is, curl has far more contributors than wget. This is because of its licensing and it being a library. Not to mention the brilliant stewardship provided by Daniel.

P.S. I do often contribute to Wget and may be a little biased towards it.

My most sincere congratulations. Good job Daniel.
Congratulations Daniel, well deserved!

Thank you for creating and maintaining curl. I'm sure it was not always easy to stay motivated and dedicated at working on this magnificent tool.

I use curl hundreds of times every day. It is an amazing tool!