575 karma · joined December 7, 2008
https://rg3.name/
printf("%Lf\n", 9999999999999999.0L - 9999999999999998.0L);
In my x86_64 computer it breaks when you add enough digits. At this point it started outputting 0.0 as the difference:
printf("%Lf\n", 99999999999999999999.0L - 99999999999999999998.0L);
With 63 bits for the fraction part you more or less get around 19 decimal digits of precision, and the expression above uses 20 significant digits.
[1] https://en.wikipedia.org/wiki/Extended_precision#x86_extende...
Edit: I mentioned that because you don't lose any quality reencoding.
Some people want to download the whole playlist when passing a URL from one of the videos (because otherwise it's hard to get an URL that contains just the playlist). Some other people just want to download the video they are currently watching.
That's why we have the --no-playlist option, which you can use and even stick in the configuration file. There's also --yes-playlist to override the configuration file if you need to.
I remember starting the project around 2006. Back then, I had a dial-up connection and it wasn't easy for me to watch a video I liked a second time. It took ages. There were Greasemonkey scripts for Firefox that weren't working when I tried them, so I decided to start a new project in Python, using the standard urllib2. I made it command line because I thought it was a better approach for batch downloads and I had no experience writing GUI applications (and I still don't have much).
The first version was a pretty simple script that read the webpages and extracted the video URL from them. No objects or functions, just the straight work. I adapted the code for a few other websites and started adding some more features, giving birth to metacafe-dl and other projects.
The raise in popularity came in 2008, when Joe Barr (RIP) wrote an article about it for Linux.com.[1] It suddenly became much more popular and people started to request more features and support for many more sites.
So in 2008 the program was rewritten from scratch with support multiple video sites in mind, using a simple design (with some defects that I regret, but hey it works anyway!) that more or less survives until now. Naturally, I didn't change the name of the program. It would lose the bit of popularity it had. I should have named it something else from the start, but I didn't expect it to be so popular. One of these days we're going to be sued for trademark infringement.
In 2011 I stepped down as the maintainer due to lack of time, and the project is since then maintained by the amazing youtube-dl team which I always take an opportunity to thank for their great work.[2] The way I did this is simply by giving push access to my repository in Github. It's the best thing I did for the project bar none. Philipp Hagemeister[3] has been the head of the maintainers since then, but the second contributor, for example, was Filippo Valsorda[4], of Heartbleed tester[5] fame and now working for Cloudflare.
[1] http://archive09.linux.com/articles/114161 [2] http://rg3.name/201408141628.html [3] https://github.com/phihag [4] https://github.com/filosottile [5] https://filippo.io/Heartbleed/
https://play.google.com/store/apps/details?id=org.thoughtcri...
https://plus.google.com/+LennartPoetteringTheOneAndOnly/post...
I don't think there's anything wrong with the government dictating software features for the software they want to use. If anyone doesn't want to implement a specific feature, that's totally fine. But their software won't be eligible for government use and working with official documents.
After all, it's public money and documents may better be saved in a good and properly documented format so anybody could, in theory, open them now or in the future.
Here's a short (less than one minute) video on how to create a local profile:
There's one thing missing that I always wanted to have: put the contents of the README file _above_ the file listing. The truth is, many people in Github don't use the Pages feature and rely instead on the README being the main project page containing the description, instructions, etc. And sometimes you have to scroll a bit to get to that information. If the README was on top, the main project page at github.com would be given the importance many projects give it.
Variations of this idea: let the code be on top but only after a single click to expand the repo contents, unless the project lacks a README file. In that case expand the repo contents directly.
Not long ago, this story was discussed here and makes a similar recommendation:
Github and Bitbucket simply provided pages and sites which were easier to navigate. Specially Bitbucket, which has kept the Downloads section that Github removed. However, for me, the biggest "feature" that Github and Bitbucket provided was the ability to create projects easily because (a) the project name only had to be unique to your own projects instead of globally and (b) you could simply fill the project name and a brief project description to create it, instead of having to fill a form with lots of information about the project area and categories, licenses, development language or technologies, etc.
Note I haven't used SourceForge for new projects in a long time, so I don't know if my observations still stand true.