30.03.2016 Views

Hacker Bits, April 2016

HACKER BITS is the monthly magazine that gives you the hottest technology and startup stories crowdsources by the readers of Hacker News. We select from the top voted stories for you and publish them in an easy-to-read magazine format. Get HACKER BITS delivered to your inbox every month! For more, visit http://hackerbits.com.

HACKER BITS is the monthly magazine that gives you the hottest technology and startup stories crowdsources by the readers of Hacker News. We select from the top voted stories for you and publish them in an easy-to-read magazine format.

Get HACKER BITS delivered to your inbox every month! For more, visit http://hackerbits.com.

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Wget's major strong side<br />

compared to curl is its ability to<br />

download recursively...<br />

• HTTP multipart/form-data<br />

sending, which allows users<br />

to do HTTP "upload" and in<br />

general emulate browsers<br />

and do HTTP automation to<br />

a wider extent<br />

• curl supports gzip and inflate<br />

Content-Encoding and<br />

does automatic decompression<br />

• curl offers and performs decompression<br />

of Transfer-Encoded<br />

HTTP, wget doesn't<br />

• curl supports HTTP/2 and<br />

it does dual-stack connects<br />

using Happy Eyeballs<br />

• Much more developer activity.<br />

While this can be debated,<br />

I consider three metrics<br />

here: mailing list activity,<br />

source code commit frequency<br />

and release frequency.<br />

Anyone following these<br />

two projects can see that the<br />

curl project has a lot higher<br />

pace in all these areas, and<br />

it has been so for 10+ years.<br />

Compare on openhub.<br />

Wget<br />

• Wget is command line only.<br />

There's no library.<br />

• Recursive! Wget's major<br />

strong side compared to<br />

curl is its ability to download<br />

recursively, or even just<br />

download everything that is<br />

referred to from a remote<br />

resource, be it a HTML page<br />

or a FTP directory listing.<br />

• Older. Wget has traces back<br />

to 1995, while curl can be<br />

tracked back no earlier than<br />

the end of 1996.<br />

• GPL. Wget is 100% GPL v3.<br />

curl is MIT licensed.<br />

• GNU. Wget is part of the GNU<br />

project and all copyrights<br />

are assigned to FSF. The<br />

curl project is entirely standalone<br />

and independent with<br />

no organization parenting at<br />

all with almost all copyrights<br />

owned by Daniel.<br />

• Wget requires no extra<br />

options to simply download<br />

a remote URL to a local file,<br />

while curl requires -o or -O.<br />

• Wget supports only GnuT-<br />

LS or OpenSSL for SSL/TLS<br />

support<br />

• Wget supports only Basic<br />

auth as the only auth type<br />

over HTTP proxy<br />

• Wget has no SOCKS support<br />

• Its ability to recover from a<br />

prematurely broken transfer<br />

and continue downloading<br />

has no counterpart in curl.<br />

• Wget enables more features<br />

by default: cookies,<br />

redirect-following, time<br />

stamping from the remote<br />

resource etc. With curl most<br />

of those features need to<br />

be explicitly enabled.<br />

• Wget can be typed in using<br />

only the left hand on a qwerty<br />

keyboard!<br />

Additional stuff<br />

Some have argued that I should<br />

compare uploading capabilities<br />

with wput, but that's a separate<br />

tool/project and I don't include<br />

that in this comparison.<br />

Two other capable tools<br />

with similar feature set include<br />

aria2 and axel (dead project?) -<br />

try them out!<br />

For a stricter feature by<br />

feature comparison (that also<br />

compares other similar tools),<br />

see the curl comparison table.<br />

Thanks<br />

Feedback and improvements<br />

by: Micah Cowan and Olemis<br />

Lang. •<br />

Reprinted with permission of the original author. First appeared at daniel.haxx.se.<br />

hacker bits<br />

55

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!