Unlimited Google Drive storage by splitting binary files into base64 - <AUTHOR> https://github.com/stewartmcgown/uds <comment><USER2> Base64 is such a wonderful gift.

Back when the commercial internet was just getting its act together there were companies that would give you free online access on Windows 3.1 machines in exchange for displaying ads in the e-mail client. (I think one was called Juno.)

The hitch was that you could only use e-mail. No web surfing. No downloading files. No fun stuff.

But that's OK, since there were usenet- and FTP-to-email gateways that you could ping and would happily return lists of files and messages. And if you sent another mail would happily send you base64-encoded versions of those binaries that you could decode on your machine.

The free e-mail service became slow-motion file sharing. But that was OK because you'd set it up before you went to bed and it would run overnight.

Thank you, whomever came up with base64.

<comment><USER3> That reminds me of the first time I accessed World Wide Web. Back in '96 I was browsing a computer magazine and happened upon a listing of useful mailing lists, one of which returned the contents of web pages for a requested HTTP address. Same magazine had an install CD for the free Juno email service.

Being a teenager, the first web page I ever requested was www.doom.com, which returned a gibberish of text to Juno's email client. It was an HTML file full of IMG tags (one of those "Click here to enter" gateway pages), but I had no idea what I was looking at at the time. Somehow figured out to open the file in IE2 and saw... a bunch of broken images :)

I still vividly remember the sense of wonder that the early Internet evoked.

EDIT: Just checked the Wayback Machine. Looks like www.doom.com was not affiliated with the game at the time, so I must have browsed to www.idsoftware.com instead.

<comment><USER4> It's really sad thinking how kids these days totally miss the wonder of the early internet.

In my case, it was at the public library. The lone internet computer was constantly booked. But by watching over a library clerk's shoulder, I was able to see the password needed to unlock the text-based library catalog terminals (which terminals were plentiful and always available). (My parents worked at the library, or else I never could have pulled that off.) Once unlocked, I was able to use Lynx to telnet into my favorite MUD game. Unfortunately it didn't last long until a librarian caught me, which I think resulted in me being grounded from the library for a month or something like that.

<comment><USER5> _It 's really sad thinking how kids these days totally miss the wonder of the early internet._

And before that, the wonder of bulletin board systems. I got my first modem in 1985!

<comment><USER4> Username checks out ;)

</comment></comment></comment></comment></comment><comment><USER6> For anyone else who's as confused as I initially was: Google Drive allows unlimited storage for anything stored as "google docs". Ie, their version of Word. This hack works by converting your binary files into base64 encoded text, and then storing the text in collection of google-doc files.

Ie, it's actually increasing the amount of storage space needed to store the same binary, but it's getting around the drive-quota by storing it in a format that has no quota.

<comment><USER7> Seems like a good way to earn yourself a Terms-of-Service ban.

If this considered an abuse-of-services now, the terms could be updated to clarify.

The finger print of big chunks of base-64 encoded blobs in Google Docs could be easy to spot.

If Google cares to notice this and take action, they can and will.

<comment><USER8> It's an arms race situation. Once you give me an information channel like a "word document", I've got an endless variety of ways to encode other things into it. I can encode bits as English sentences or other things that will be arbitrarily hard to pick up by scanning.

If I were Google, I wouldn't try to pick up on the content, I'd be looking for characteristic access patterns. It's harder to catch uploads, since "new account uploads lots of potentially large documents" isn't something you can immediately block, but "oh, look, here's several large files that are always accessed in consecutive order very quickly" would be harder to hide. It's still an arms race after that (e.g., "but what if I access them really slowly?"), but while Google would find a hard time conclusively winning this race in the technical sense, they _can_ win enough that this isn't fun or a cost-effectively technique anymore (e.g. "then you're getting your files really slowly, so where's the fun in that?"), which is close enough to victory for them.

So, I'd say, enjoy it while you can. If it gets big enough to annoy, it'll get eliminated.

<comment><USER9> They can just throttle access to Google documents to something like 4 GB per hour and then block obvious abuses. If people start encoding bits as English sentences they are reducing the amount of useful data they can download within an hour which is exactly what you want.

<comment><USER8> "They can just throttle access to Google documents to something like 4 GB per hour"

No, that's not likely to work. I'm sure there's far more legitimate users using 4GB of documents per hour than abusers right now. You have to remember things like bulk downloading, bulk scanning, bulk backing-up, shared automated accounts doing all sorts of legit things, etc. are all legitimate use cases. You can't just throw out all "big uses" or your enterprise customers are going to pitch a fit, and that's a bigger problem than people abusing your storage for a while.

(Those things will still have different access patterns than abusers, but thinking about how that will manifest and could be detected is an good exercise for the reader.)

<comment><USER10> I would guess those enterprise users _pay_ for Google docs, and could be exempted from throttling on that basis.

If they don't, Google wouldn't lose much by throttling them, would they?

</comment></comment></comment></comment></comment></comment><comment><USER11> In the same spirit, I made a few "just for fun" plugins for my (now abandoned) encrypted-arbitrary-storage Dropbox-like application Syncany:

The Flickr plugin [1] stores data (deduped and encrypted before upload) as PNG images. This was great because Flickr gave you 1 TB of free image storage. This was actually super cool, because the overhead was really small. No base64.

The SMTP/POP plugin [2] was even nastier. It used SMTP and POP3 to store data in a mailbox. Same for [3], but that used IMAP.

The Picasa plugin [4] encoded data as BMP images. Similar to Flickr, but different image format. No overhead here either.

All of this was strictly for fun of course, but hey it worked.

[1] [https://github.com/syncany/syncany-plugin- flickr](https://github.com/syncany/syncany-plugin-flickr)

[2] [http://bazaar.launchpad.net/~binwiederhier/syncany/trunk/fil...](http://bazaar.launchpad.net/~binwiederhier/syncany/trunk/files/head:/syncany/src/org/syncany/connection/plugins/pop3_smtp/)

[3] [http://bazaar.launchpad.net/~binwiederhier/syncany/trunk/fil...](http://bazaar.launchpad.net/~binwiederhier/syncany/trunk/files/head:/syncany/src/org/syncany/connection/plugins/imap/)

[4] [http://bazaar.launchpad.net/~binwiederhier/syncany/trunk/fil...](http://bazaar.launchpad.net/~binwiederhier/syncany/trunk/files/head:/syncany/src/org/syncany/connection/plugins/picasa/)

<comment><USER12> Anything that persists can be used to store arbitrary data... I remember (around a decade ago now, I'm not sure if these still exist) coming across some blogs that ostensibly had images of books, details about them, and links to buy them on Amazon and such... I only understood when I came across a forum posting from someone complaining that his ebook searches were clogged with such "spam blogs", and another poster simply told him to look more carefully at those sites, but not to say anything more about his discoveries. You can probably guess what you got if you saved the surprisingly large "full-size" cover image from those blogs and opened it in 7zip!

I feel less hesitant about revealing this now, given how long ago it was and that more accessible "libraries" are now available.

<comment><USER13> IIRC the "mods are asleep, post […]" 4chan meme originally came from "mods are asleep, post high res" threads where to an outside observer they were just posting high-resolution images of inane things, but there was actually steganography of some sort going on to hide child porn (I think) inside the files.

One of many Internet jokes with sinister origins.

</comment></comment></comment><comment><USER14> Sounds like a great way to lose your Google account (and all your other linked Google services) for ToS violations to me.

<comment> m-p-3 I would make sure to not do this in an important Google account.

<comment><USER15> I've seen a few stories of businesses and their employees all losing their Google accounts, just because the company hired a freelancer who had previously been banned, and Google detected the association. (Pretty sure they got the accounts back after some public outrage.) I wouldn't risk _intentionally_ violating their terms if you're not quite ready to wake up one day 100% Google-free, or very good at hiding your tracks.

<comment><USER16> The fact that this is even a remote possibility should worry everyone of the ugly monopoly that Google became.

I found myself in a similar situation a couple months ago. An android App falsely charged me on the Play store. After trying to contact Google for multiple weeks I gave up and disputed the charge on my credit card. This resulted in Google coming after me for 8.99$ and threatening me to close all my Google accounts including gmail, calendar, photos, drive and everything I rely daily in Google.

That was a wake-up call for me. I decided to move everything OUT of Google. That company got too much power, it should worry way more people.

<comment><USER17> > I decided to move everything OUT of Google

Have you been successful in it? Any guidelines / tips? How hard is it?

<comment><USER18> The sooner you start, the better. I've moved most of my email/contacts/calendar away [0], and the longer you give yourself to catch the things you've signed up for but forgotten, the better. Youtube was also a pain, but I transitioned my subscriptions manually to a different account. Maps seems like it'd be the trickiest if you're invested. I wasn't a heavy user, and maps still works pretty good when you're logged out.

[0] I use fastmail + custom domain, which works great, but you have to guard the domain very closely.

<comment><USER19> > [0] I use fastmail + custom domain, which works great, but you have to guard > the domain very closely.

What do you mean by guarding the domain? To prevent large volumes of spam?

<comment><USER20> I think OP means that you have to make sure you don't forget to/neglect to renew it and make sure you don't accidentally lose the domain for any reason.

<comment><USER19> Thank you for the clarification. I use a dedicated card for domain hosting (with autorenewal enabled) to prevent this specific issue but I recognize most people likely don't do the same.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> Base85 would probably be a better choice for storing binary as text, since it has a ratio of 5:4 instead of 4:3.

On the topic of "unusual and free large file hosting", YouTube would probably be the largest, although you'd need to find a resilient way of encoding the data since their re-encoding processes are lossy.

I like the "Linux ISO" and "1337 Docs" references ;-)

<comment> marquis-chacha You'd be at the mercy of them potentially changing their encoding scheme unannounced and corrupting your files.

<comment><USER21> Back in the day of email gateways between different networks, there used to be a terrible problems with all the tin-pot dictator IBM SYSADMINs at BITNET sites who maintained their own personal styles of ASCII<=>EBCDIC translation tables, so all the email that passed through their servers got corrupted.

EBCDIC based IBM mainframe SYSADMINs on BITNET were particularly notorious for being pig-headed and inconsiderate about communicating with the rest of the world, and thought they knew better about the characters their users wanted to use, and that the rest of the world should go fuck themselves, and scoffed at all the unruly kids using ASCII and lower case and new fangled punctuation, who were always trying to share line printer pornography and source code listings through their mainframes.

"HARRUMPH!!! IF I AND O ARE GOOD ENOUGH FOR DIGITS ON MY ELECTRIC TYPEWRITER, THEN THEY'RE GOOD ENOUGH FOR EMAIL! NOW GET OFF MY LAWN!!!" (shaking fist in air while yelling at cloud)

It was especially a problems for source code. That was one of the reasons for "trigraphs".

[https://stackoverflow.com/questions/1234582/purpose-of- trigr...](https://stackoverflow.com/questions/1234582/purpose-of-trigraph- sequences-in-c)

[https://en.wikipedia.org/wiki/Digraphs_and_trigraphs](https://en.wikipedia.org/wiki/Digraphs_and_trigraphs)

>Trigraphs were proposed for deprecation in C++0x, which was released as C++11. This was opposed by IBM, speaking on behalf of itself and other users of C++, and as a result trigraphs were retained in C++0x. Trigraphs were then proposed again for removal (not only deprecation) in C++17. This passed a committee vote, and trigraphs (but not the additional tokens) are removed from C++17 despite the opposition from IBM. Existing code that uses trigraphs can be supported by translating from the source files (parsing trigraphs) to the basic source character set that does not include trigraphs.

<comment><USER22> I always wondered what the purpose of trigraphs were other than to help win obfuscated code contests haha

</comment></comment></comment></comment><comment><USER23> Even URL shorteners offer unlimited storage if you jump through enough hoops.

To encode ABCDEFGHIJKLMNOPQRSTUVWXYZ first get a short url for [http://example.com/ABC](http://example.com/ABC), then take the resulting url and append DEF and run it through the service again. Repeat until you run out of payload, presumably doing quite a few more than 3 bytes at a time.

The final short url is the your link to the data, which can be unpacked by stripping the payload bytes then following the links backwards until you get to your initial example.com node.

<comment><USER8> I've lost track of the number of times I've seen variants on "Hey, a link shortener is a fun first project for this new language I'm learning; hey, $LANGUAGE_COMMUNITY, I've put this up on the internet now!... hey, uh, $LANGUAGE_COMMUNITY, I've had to take it down due to abuse." There are numerous abuse vectors. Optionally promise to get it back up real soon now, as if there are actually people depending on it.

Maybe it isn't a bad first project, but on no account should you put it up on the "real" internet and tell anyone it exists.

</comment></comment><comment><USER21> In 1998, the EFF and John Gilmore published the book about "Deep Crack" called "Cracking DES: Secrets of Encryption Research, Wiretap Politics, and Chip Design". But at the time, it would have been illegal to publish the code on a web site, or include a CDROM with the book publishing the "Deep Crack" DES cracker source code and VHDL in digital form.

[https://en.wikipedia.org/wiki/EFF_DES_cracker](https://en.wikipedia.org/wiki/EFF_DES_cracker)

[https://www.foo.be/docs/eff-des- cracker/book/crackingdessecr...](https://www.foo.be/docs/eff-des- cracker/book/crackingdessecre00elec.pdf)

>"We would like to publish this book in the same form, but we can't yet, until our court case succeeds in having this research censorship law overturned. Publishing a paper book's exact same information electronically is seriously illegal in the United States, if it contains cryptographic software. Even communicating it privately to a friend or colleague, who happens to not live in the United States, is considered by the government to be illegal in electronic form."

So to get around the export control laws that prohibited international distribution of DES source code on digital media like CDROMS, but not in written books (thanks to the First Amendment and the Paper Publishing Exception), they developed a system for printing the code and data on paper with checksums, with scripts for scanning, calibrating, validating and correcting the text.

The book had the call to action "Scan this book!" on the cover (undoubtedly a reference to Abby Hoffman's "Steal This book").

[https://en.wikipedia.org/wiki/Steal_This_Book](https://en.wikipedia.org/wiki/Steal_This_Book)

A large portion of the book included chapter 4, "Scanning the Source Code" with instructions on scanning the book, and chapters 5, 6, and 7 on "Software Source Code," "Chip Source Code," and "Chip Simulator Source Code," which consisted of pages and pages of listings and uuencoded data, with an inconspicuous column of checksums running down the left edge.

The checksums in the left column of the listings innocuously looked to the casual observer kind of like line numbers, which may have contributed to their true subversive purpose flying under the radar.

Scans of the cover and instructions and test pages for scanning and bootstrapping from Chapter 4:

[https://imgur.com/a/7pHSAT1](https://imgur.com/a/7pHSAT1)

(My small contribution to the project was coming up with the name "Deep Crack", which was silkscreened on all of the chips, as a pun on "Deep Thought" and "Deep Blue", which was intended to demonstrate that there was a deep crack in the United States Export Control policies.)

[https://en.wikipedia.org/wiki/EFF_DES_cracker#/media/File:Ch...](https://en.wikipedia.org/wiki/EFF_DES_cracker#/media/File:Chip300.jpg)

The exposition about US export control policies and the solution for working around them that they developed for the book was quite interesting -- I love John Gilmore's attitude, which still rings true today: "All too often, convincing Congress to violate the Constitution is like convincing a cat to follow a squeaking can opener, but that doesn't excuse the agencies for doing it."

[https://dl.packetstormsecurity.net/cracked/des/cracking- des....](https://dl.packetstormsecurity.net/cracked/des/cracking-des.htm)

Chapter 4: Scanning the Source Code

In This chapter:

The Politics of Cryptographic Source Code

The Paper Publishing Exception

Scanning

Bootstrapping

The next few chapters of this book contain specially formatted versions of the documents that we wrote to design the DES Cracker. These documents are the primary sources of our research in brute-force cryptanalysis, which other researchers would need in order to duplicate or validate our research results.

The Politics of Cryptographic Source Code

Since we are interested in the rapid progress of the science of cryptography, as well as in educating the public about the benefits and dangers of cryptographic technology, we would have preferred to put all the information in this book on the World Wide Web. There it would be instantly accessible to anyone worldwide who has an interest in learning about cryptography.

Unfortunately the authors live and work in a country whose policies on cryptography have been shaped by decades of a secrecy mentality and covert control. Powerful agencies which depend on wiretapping to do their jobs--as well as to do things that aren't part of their jobs, but which keep them in power--have compromised both the Congress and several Executive Branch agencies. They convinced Congress to pass unconstitutional laws which limit the freedom of researchers--such as ourselves--to publish their work. (All too often, convincing Congress to violate the Constitution is like convincing a cat to follow a squeaking can opener, but that doesn't excuse the agencies for doing it.) They pressured agencies such as the Commerce Department, State Department, and Department of Justice to not only subvert their oaths of office by supporting these unconstitutional laws, but to act as front-men in their repressive censorship scheme, creating unconstitutional regulations and enforcing them against ordinary researchers and authors of software.

The National Security Agency is the main agency involved, though they seem to have recruited the Federal Bureau of Investigation in the last several years. From the outside we can only speculate what pressures they brought to bear on these other parts of the government. The FBI has a long history of illicit wiretapping, followed by use of the information gained for blackmail, including blackmail of Congressmen and Presidents. FBI spokesmen say that was "the old bad FBI" and that all that stuff has been cleaned up after J. Edgar Hoover died and President Nixon was thrown out of office. But these agencies still do everything in their power to prevent ordinary citizens from being able to examine their activities, e.g. stonewalling those of us who try to use the Freedom of Information Act to find out exactly what they are doing.

Anyway, these agencies influenced laws and regulations which now make it illegal for U.S. crypto researchers to publish their results on the World Wide Web (or elsewhere in electronic form).

The Paper Publishing Exception

Several cryptographers have brought lawsuits against the US Government because their work has been censored by the laws restricting the export of cryptography. (The Electronic Frontier Foundation is sponsoring one of these suits, Bernstein v. Department of Justice, et al ).* One result of bringing these practices under judicial scrutiny is that some of the most egregious past practices have been eliminated.

For example, between the 1970's and early 1990's, NSA actually did threaten people with prosecution if they published certain scientific papers, or put them into libraries. They also had a "voluntary" censorship scheme for people who were willing to sign up for it. Once they were sued, the Government realized that their chances of losing a court battle over the export controls would be much greater if they continued censoring books, technical papers, and such.

Judges understand books. They understand that when the government denies people the ability to write, distribute, or sell books, there is something very fishy going on. The government might be able to pull the wool over a few judges' eyes about jazzy modern technologies like the Internet, floppy disks, fax machines, telephones, and such. But they are unlikely to fool the judges about whether it's constitutional to jail or punish someone for putting ink onto paper in this free country.

* See [http://www.eff.org/pub/Privacy/ITAR_export/Bernstein_case/](http://www.eff.org/pub/Privacy/ITAR_export/Bernstein_case/) .

Therefore, the last serious update of the cryptography export controls (in 1996) made it explicit that these regulations do not attempt to regulate the publication of information in books (or on paper in any format). They waffled by claiming that they "might" later decide to regulate books--presumably if they won all their court cases -- but in the meantime, the First Amendment of the United States Constitution is still in effect for books, and we are free to publish any kind of cryptographic information in a book. Such as the one in your hand.

Therefore, cryptographic research, which has traditionally been published on paper, shows a trend to continue publishing on paper, while other forms of scientific research are rapidly moving online.

The Electronic Frontier Foundation has always published most of its information electronically. We produce a regular electronic newsletter, communicate with our members and the public largely by electronic mail and telephone, and have built a massive archive of electronically stored information about civil rights and responsibilities, which is published for instant Web or FTP access from anywhere in the world.

We would like to publish this book in the same form, but we can't yet, until our court case succeeds in having this research censorship law overturned. Publishing a paper book's exact same information electronically is seriously illegal in the United States, if it contains cryptographic software. Even communicating it privately to a friend or colleague, who happens to not live in the United States, is considered by the government to be illegal in electronic form.

The US Department of Commerce has officially stated that publishing a World Wide Web page containing links to foreign locations which contain cryptographic software "is not an export that is subject to the Export Administration Regulations (EAR)."* This makes sense to us--a quick reductio ad absurdum shows that to make a ban on links effective, they would also have to ban the mere mention of foreign Universal Resource Locators. URLs are simple strings of characters, like [http://www.eff.org;](http://www.eff.org;) it's unlikely that any American court would uphold a ban on the mere naming of a location where some piece of information can be found.

Therefore, the Electronic Frontier Foundation is free to publish links to where electronic copies of this book might exist in free countries. If we ever find out about such an overseas electronic version, we will publish such a link to it from the page at [http://www.eff.org/pub/Privacy/Crypto_misc/DESCracker/](http://www.eff.org/pub/Privacy/Crypto_misc/DESCracker/) .

* In the letter at [http://samsara.law.cwru.edu/comp_law/jvd/pdj-bxa-gjs070397.h...](http://samsara.law.cwru.edu/comp_law/jvd/pdj-bxa-gjs070397.htm), which is part of Professor Peter Junger's First Amendment lawsuit over the crypto export control regulations.

[...]

<comment><USER24> It seems like a cute and irrelevant distinction that electronic software would be published in a book. If researchers created a computer that processed information using proteins in plant cells instead of electrons, and such a computer could execute programs on this book directly instead of "scanning" it, would not the textbook be software? When laws say "electronic versions" I don't think they literally mean to refer electrons, but rather, computer- consumables/executables.

Was this tested before a court and did they accept this sort of obviously subversive behavior? (Not that I personally agree with the laws restricting crypto export.)

<comment><USER25> IANAL, but if the distinction clashes with the crypto export laws, does it not follow that crypto export laws clash with the first amendment? Which then makes them unconstitutional and the focus should be on whether that is wanted behavior and the constitution should be amended, or not.

<comment><USER26> > The First Amendment made controlling all use of cryptography inside the U.S. > illegal, but controlling access to U.S. developments by others was more > practical

[https://en.wikipedia.org/wiki/Export_of_cryptography_from_th...](https://en.wikipedia.org/wiki/Export_of_cryptography_from_the_United_States)

</comment></comment></comment></comment><comment><USER27> I think in the long run, the user could risk the complete google-account if they begin rating the uploads a violation of TOS.

I advise a totally seperate account when using this tool.

But anyways, something inside me likes it. Nicely done. Good job :)

<comment><AUTHOR> This is a complete hack job and probably useless if Google changes free storage for docs.

That being said, they currently allow the guys at /r/datahoarder to use gsuite accounts costing £1 for life with unlimited storage quotas. These are regularly filled to like 50TB and Google doesn't bat an eye.

<comment><USER28> As a data hoarder myself with somewhere around 300TB on G Suite Business, please tell me more about those £1 for life accounts!

<comment><AUTHOR> Search them up on ebay! Loads of IT admins for schools sell a random email with you. Pretty scammy.

</comment></comment></comment></comment><comment><USER29> Anyone remember Gdrive? I can't find it now, but I think it was probably early or mid 2000s. It let you store files as a local disk (FUSE) via Gmail attachments.

<comment><USER30> I remember using it back in 2005 iirc, and it was amazing. The files had a label called gmailfs.gDisk which is how it could keep the "file system" separate from the rest.

Now Google generously offers Drive with 15Gigs of space.

<comment><USER31> 15 gigs would've been generous in 2005, now it's not.

<comment><USER32> Are there competitors who offer more for free?

<comment><USER33> Mega.co.nz

</comment></comment></comment></comment></comment><comment><USER34> Me and a friend came up with a similar idea of a sort of distributed file system implemented across a huge array of blog comment sections. Of course you'd need a bunch of replication and fault tolerance and the ability to automatically scrape for new blogs to post spammy-looking comments on, but I thought it was a pretty funny and neat idea when we came up with it.

<comment><USER35> I heard about a subreddit a while ago, where every post/comment was a random string. It was speculated at the time that something similar was going on.

</comment></comment><comment><USER36> Very neat, but it seems to me the issue with all wink-wink schemes like this is that you're ultimately getting something that wasn't explicitly promised, and so might be taken away at any time. So while interesting you couldn't really ever feel secure storing anything that mattered this way.

<comment><USER22> Yea but you could store unlimited backups across multiple accounts. (Not advocating this however)

</comment></comment><comment><USER37> You can also just use GSuite with a few users to get unlimited Google Drive storage.

[https://support.google.com/a/answer/139019?hl=en#6_storage](https://support.google.com/a/answer/139019?hl=en#6_storage)

<comment><USER38> That references "for education", but it's also true for GSuite Business (and enterprise, but not basic). You'll need to be paying for at least 5 users, or $60/month.

<comment><USER39> Here's the business info: [https://support.google.com/a/answer/6034782](https://support.google.com/a/answer/6034782)

</comment></comment></comment><comment><USER40> Someone is going to notice a few accounts with insanely high storage usage, and then comes the ban-hammer. Enjoy losing your Google account!

<comment><USER41> I think that depends on their tools and how they evaluate data usage. If the reporting states that the accounts are using very little storage because it's using the same measuring stick that the client does them it's invisible. The question comes up during an audit of the system when the disk usage doesn't match the report. Then again, if this is used by few people it may just look like a margin of error.

<comment><USER42> It'll more be that the Google docs "live editing" backends are expensive to use disk and memory wise. They store complete version history with each keystroke of a document.

There's a good chance a megabyte of "document" costs Google a gigabyte of internal storage...

<comment><USER43> > They store complete version history with each keystroke of a document.

I would expect them to only store a diff between each version instead of storing the whole thing. Couldn't find much about this after a quick search.

</comment></comment></comment></comment><comment><USER44> Honestly this isn't ground breaking, we have been using BASE64 to convert binary to ASCII as a way of "sharing" files all the way to USENET days. While applications like these make it easy for the masses to participate in the idea, they don't bring anything new to the table.

That all said, this is really cool from a design perspective and I poured over the code learned a lot.

<comment><USER45> It's also how email attachments work.

</comment></comment><comment><USER46> Google doc allows you to upload images from your computer. Why not just do that? With proper steganography no one will bat an eye on a few docs with some multi-megabyte pictures.

</comment><comment><USER47> I had an (evil; don't do this) idea a while back to create a Dropbox-like program that stores all your data as binary chunks attached to draft emails spread across an arbitrary number of free email accounts.

<comment><USER48> This existed just after gmail launched. Can't recall the name of the program, but I played around with it to store a few hundred MB in a test account.

<comment><USER49> GmailFS? [https://web.archive.org/web/20060424165737/http://richard.jo...](https://web.archive.org/web/20060424165737/http://richard.jones.name/google- hacks/gmail-filesystem/gmail-filesystem.html)

<comment><USER48> That might have been it!

</comment></comment></comment></comment><comment><USER50> I may be mistaken, but as far as I'm aware Google docs synced to your local machine are nothing more than links to documents in the Google Drive cloud. None of the data inside those docs is actually stored locally. I found this out the hard way when I decided to move away from GD and lost a lot of files.

So buyer beware I guess.

<comment><USER51> Should you want to move from Google services, the best way of ensuring you keep your data is to use Takeout [1], which exports your documents as both doc and html files.

[1] [https://takeout.google.com](https://takeout.google.com)

</comment></comment><comment><USER52> You could do the same thing with QR codes in Google Photos, the compression required for unlimited storage wouldn't affect them.

</comment><comment><USER53> Related: unlimited private incremental storage on Usenet (concept):

[https://gist.github.com/retroplasma/264d9fed2350feb19f977575...](https://gist.github.com/retroplasma/264d9fed2350feb19f977575981bb914#idea)

TL;DR: An alternative to NZB, RAR and PAR2. Private "magnet-link" that points to encrypted incremental data.

</comment><comment><USER54> Reminds me of the old programs that would turn your Gmail storage into a network drive by splitting everything into 25MB chunks. Utterly miserable experience with terrible latency and reliability.

<comment><USER55> Yeah, there were a couple of projects that implemented that functionality (mentioned more in my comment [https://news.ycombinator.com/item?id=19917018](https://news.ycombinator.com/item?id=19917018) if you're interested).

Also, "Utterly miserable experience with terrible latency and reliability." is such a great customer endorsement quote. :D

</comment></comment><comment><USER56> I couldn't find it with a quick search, but I remember many years ago someone creating a similar scheme for storing files inside of TinyURLs.

You would run the uploader and get back a list of TinyURLs that could then be used to retrieve the files later with a downloader.

But you couldn't store too much in each URL so the resulting list could be pretty big.

<comment><USER57> This is a favorite lunch topic at work. AFAIK we stumbled on the idea ourselves, but I'm not surprised to hear it's unoriginal. Rather than a list, our design is a tree structure where leaf nodes contain data and branch nodes contain lists of tinyurls...

</comment></comment><comment><USER58> Because I'm sure Google has NO data on pathalogical docs file sizes. I can't wait for the follow on 'Google banned my account with all my life's data that I didn't back up anywhere for no good reason'

</comment><comment><USER22> I wonder if this could be used to create a P2P network like bit torrent except trackers point to blocks at google doc urls instead of peers/seeds

<comment><USER59> I discovered that a lot of pirate stream sites are already doing something similar (but not exact) to this.

They store fragments of movies (rather than the full videos) in Google Drive files and then combine them together during playback. Each fragment could then be copied and mirrored across different accounts, so if any are taken down they can just switch to another copy. Pretty clever (albeit abusive) solution for free bandwidth.

</comment></comment><comment><USER60> Very cool! About a year ago I had a similar idea, but to store arbitrary data in PNG chunks[1] and upload them to "unlimited" image hosts like IMGUR and Reddit.

[1] [http://blog.brian.jp/python/png/2016/07/07/file-fun-with- pyh...](http://blog.brian.jp/python/png/2016/07/07/file-fun-with-pyhon.html)

<comment><USER61> I have a feeling PNG might work on Google Photos too, but I haven't tried it.

<comment><USER11> If you wanna give it a shot, try the code I linked here: [https://news.ycombinator.com/item?id=19916126](https://news.ycombinator.com/item?id=19916126)

Although if Picasa (predecessor to Google Photos) worked with BMP, it may be better to do that because it's much easier and more space efficient to encode arbitrary data in than PNG.

</comment></comment></comment><comment><USER62> So, are the +- 700 kB files too small to register as taking up any space?

<comment><USER63> google drive doesn't count docs, spreadsheets or presentations against your quota

</comment></comment><comment><USER64> Not so unlimited given these restrictions: [https://developers.google.com/apps- script/guides/services/qu...](https://developers.google.com/apps- script/guides/services/quotas)

</comment><comment><USER65> Could someone please ELI5 how Google Drive doesn't include text files toward usage?

<comment><USER66> These aren't text files, but Google Docs files, which Google doesn't count against an account's quota.

<comment><USER65> OK, I did see that.

But I don't understand why Google would do that. For most users, aren't Google Docs files a substantial part of their usage? Or do people mainly store backups?

<comment><USER67> Simple, Google wants to encourage people to use their office suite so they indirectly subsidise it in this way.

</comment></comment></comment></comment><comment><USER68> I've wondered if someone could do the same thing with videos and jpgs. Amazon prime, as one example, allows you to store an unlimited number of image files for "free". What if there was a program that would take a video file and split it up into its individual frames as jpgs and stored them on Amazon prime. When you wanted to watch the video the program would rebuild the video file from the individual jpgs on AWS.

<comment><USER69> My guess would be that the latency of this approach would be far too high to be practical. But you could probably abuse the JPEG format to stuff bits of the video into image files. I think you'd probably still need to spend a fair amount of time buffering before you could start watching without lag.

</comment></comment><comment><USER70> To me it looks like iodine ([https://code.kryo.se/iodine/](https://code.kryo.se/iodine/)): very nice as a hacking tool to prove a point, but unlikely to be actually helpful in all but very peculiar situations. As a hacker, of course, I value a lot the first part of it!

</comment><comment><USER71> I do the same on a different cloud storage provider. I won't name it because I don't want to be banned from it!

</comment><comment><USER72> I don't know anyone remember but some years ago I remember seeing a file compressed from 1GB to 1mb. And I was amazed.

<comment><USER73> 42.zip?

<comment><USER74> even more dangerous for bot

[https://rehmann.co/blog/10-gb-27-kb-gzip-file-present- http-s...](https://rehmann.co/blog/10-gb-27-kb-gzip-file-present-http- scanners/)

</comment></comment></comment><comment><USER75> Nice! I did a similar hack to get unlimited Dropbox space by creating many accounts and distributing the files across the accounts.

[https://github.com/WarrenGreen/InfiniteDrop](https://github.com/WarrenGreen/InfiniteDrop)

</comment><comment><USER76> How is this different from encrypting the binary locally, and store the result as hex strings?

<comment><USER77> It's 75% more space efficient. And it's automated.

</comment></comment><comment><USER78> Correction: unlimited as long as it takes Google to fix this oversight in quota calculation.

<comment><USER51> It isn't truly an oversight, it's an abuse of the fact that Docs/Sheets/Slides are not counted toward your quota. Their storage model is a little more complicated than a standard stream of bytes like an image or a text file.

</comment></comment><comment><USER79> Has anyone actually tried storing a large amount of data like this? I feel like creating a new google account and using it as a backup for a 300gb folder I have.

<comment><USER80> Yes. It's called: Post to alt.binaries.* on Usenet.

It's effectively the same thing under the hood. Binaries are split and converted to text using yEnc (or base64, et al.) and uploaded as "articles". An XML file containing all of the message-IDs (an "NZB") is uploaded as well so that the file can be found, downloaded, and reassembled in the right order.

This form of binary distribution has been around since the '80s if you change some of the technical details; e.g. using UUencode rather than yEnc.

Spend $5 for a 3-day unlimited Usenet account with e.g. UsenetServer.com and upload it.

If you want it to stay up, then make another account in 3925 days (the retention period), download it, and then reupload it for another 10+ years of storage.

</comment></comment><comment><USER81> This is very clever, and a neat interface.

On the one hand, I think this is great, on the other, I hope it doesn't force google to add limits that bother me in the future :P

</comment><comment><USER82> Couldn't you also embed data into images and upload them to Google photos, or is that discarded when they convert and compress the image in the backend?

<comment><USER83> Depends how you encode it. A bunch QR codes, no problem. But encoding into the individual pixel, probably not so much.

<comment><USER82> I mean include binary data in an image file. So you would have a 300x300px jpg picture of a flower that's 20mb which you could unpack to a binary file.

<comment><USER84> storing original photo will use google drive space quota (if you don't have a pixel phone).

only high quality is unlimited (reduced size)

so, if your data survive photo compression technology, you can do it.

</comment></comment></comment></comment><comment><USER28> I think I already saw this a few (>6) months ago on reddit, have you changed/improved anything in the meantime?

</comment><comment><USER85> Damn 4:3? That ain't too bad.

<comment><USER86> Base 64 gives you 6 bits per character. Assuming a character requires 8 bits to store eg in UTF8 then yep that's 8:6. Might be better with compression getting you closer to 1:1.

</comment></comment><comment><USER87> already better than s3 :) makes me think of [https://www.reddit.com/r/DataHoarder/](https://www.reddit.com/r/DataHoarder/)

</comment><comment><USER88> So what makes the data not count against the usage?

</comment><comment><USER89> It's such a weird trick that I love it!

</comment><comment><USER90> Google UseNet.

</comment><comment><USER91> Thinking outside the box.

</comment><comment><USER92> Nice!

</comment><comment><USER93> very clever, well done!

<comment><USER94> yeah! let's hope no google employees see this ... oh wait

<comment><USER51> :)

</comment></comment></comment><comment><USER95> ELI5 please?

<comment><USER74> The script split file into small base64 chunks that are stored into "documents" (mime type: application/vnd.google-apps.document ) that apparently don't count against google drive quota.

</comment></comment><comment><USER96> Google, give this man a job!

</comment><comment><USER97> Too bad there is no similar trick for atmospheric carbon.

<comment><USER97> everyone can go fuck off</comment></comment>


No Battle Plan Survives The First Enemy Fire - <AUTHOR> http://www.avc.com/a_vc/2012/08/no-battle-plan-survives-the-first-enemey-fire.html

<comment><USER2> I'd have to agree with the commenters more than the post.

<comment><AUTHOR> The post is aimed at people who spend too much time perfecting a single idea, and not enough time getting it out there.

The comments (andyswan's at least) are aimed at people who spend too much time getting ideas out there and not enough time perfecting a single idea.

IMHO it's easier to nudge the perfectionists toward success than the "ROOMBApreneurs".</comment></comment>


Ask HN: What do you backup your digital assets? - <AUTHOR> <comment><USER2> On machines in our household I have mix of SpiderOak (very useful if you want to back up a dual boot system and don't boot into it every 30 or 90 days like some backup systems require) and Backblaze.

</comment><comment><USER3> I upload everything to s3 using duplicity.</comment>


Apple's worldwide market share stalls as consumers await the iPhone 6 - <AUTHOR> http://www.networkworld.com/article/2690899/opensource-subnet/apples-worldwide-market-share-stalls-as-consumers-await-the-iphone-6.html

<comment><AUTHOR> Kantar World Panel's recent market share report suggests Apple fans are waiting for the new iPhone 6 and iPhone 6 Plus. Will the larger screen and new features help Apple steal away Android customers?</comment>


Parents Who Don't Vaccinate Children Make Us Sick - <AUTHOR> http://www.bloomberg.com/news/2011-02-08/parents-who-don-t-vaccinate-children-make-us-sick-amity-shlaes.html

<comment><USER2> Evolution, hard at work. In this case a memetic-genetic interaction will lead to selection trials.</comment>


Structor – a user interface builder for React - <AUTHOR> https://github.com/ipselon/structor/ <comment><USER2> past discussion (49 days ago): [https://news.ycombinator.com/item?id=10409979](https://news.ycombinator.com/item?id=10409979)

<comment><USER3> A lot of improvements have been done since that time.

</comment></comment><comment><USER3> All following about Structor (of which I'm apart of).

Imagine you should start a greenfield project for a Web app with modern UI (for example, a new micro service, which will have a Web app for the administration purpose).

And imagine, you have a starter-kit with a bunch of ready to use React UI components along with infrastructure for a Web app (for example, react-redux- starter-kit, but with React Bootstrap and React Widgets libs inside).

In addition, you have a tool, which allows visually combine any type of components on the Web page. Moreover, this tool has an ability to generate a scaffolded source code for UI components connected to any kind of frameworks like Redux, Relay, etc. (with actions, reducers, routes, so on…).

The tool automatically compiles all new source code and reuses all generated components on the page.

Of cause, you are not limited in editing the source code of the project in your favourite IDE, because compiler and hot-loader will patch pages with your changes in tool's workspace.

Would you like to use such a tool in your project?

And if yes, what type of the scaffolds for the source code you would like to use?

a) Infrastructure generators:

Generate REST service with Swagger docs by entered Swagger configuration format.

Generate GraphQL server by entered data structure in GraphQL schema format.

b) Component generators:

Generate Redux wrapped components connected to existing REST API.

Generate Relay wrapper components connected to existing GraphQL server.

<comment><USER4> How heavy is the page with all those Material components in it? Does it work on mobile?

<comment><USER3> Didn't try. But, you are right this set of components is rather unstable and heavy even for the browser on desktop.

</comment></comment></comment><comment><USER5> Looks interesting. "Marketplaces" are always tricky because the quality is so uneven. Usually like to see which components are produced by the core team, or at least which are "vetted".

</comment><comment><USER6> Join the Discord channel? Discord is a proprietary chat platform for video games with no Linux client. Really?

<comment><USER7> There's a web interface. It's no worse than having a Slack channel.

<comment><USER8> Discord doesn't have search. That's a non-trivial issue.

<comment><USER9> The "Reactiflux" community sent enough messages as to make search on Slack's free plan effectively useless (since old messages would expire within minutes or hours). I understand that Discord plans to add search.

<comment><USER10> Does Discord have a limit to how many messages they store?

<comment><USER11> No</comment></comment></comment></comment></comment></comment>


Jessie Freeze Policy - mike-cardwell https://release.debian.org/jessie/freeze_policy.html

<comment><AUTHOR> If you use the stable Debian release now it's time to start testing the transition. Make sure to get bugs that aren't discovered yet or vital to your operation reported or fixed.

Don't complain if something in Jessie that's important to you breaks, help now to make sure it won't.

<comment><USER2> Could you elaborate?

I'm on Wheezy right now on my Ultrabook (using just a couple of backports, but almost exclusively Wheezy at the moment).

Are you saying that Wheezy users should migrate to Jessie to start finding bugs? Part of the reason I use Wheezy on this computer is because I know it's rock-solid and everything "just works". If I had another computer running Debian I would run Jessie or sid on it, but to be honest, I need to make sure that I have one computer that I can depend on reliably (which is why I use Debian stable to begin with).

<comment><USER3> If you're using Debian in a business environment, try upgrading a copy of your staging environment to Jessie to see what problems you encounter, so that they can be fixed before release.

If you're using it on your desktop or home servers, you could also upgrade in order to contribute testing to the project, but only if you're prepared for some things to potentially break.

</comment></comment></comment><comment><USER4> I'm using jessie on my laptop and i am wondering what to do for the release switch. Should i change to "testing" now or stay on jessie, which becomes stable, and switch to the next testing later?

<comment><USER5> I stay with the toy story named releases. That way I never get a surprise upgrade when the meaning of "testing" changes. You almost never want that, since when the name changes it is the early days of testing.

Later when I need something from the next release, I'll upgrade to its name.

<comment><USER6> Ohh, the naming suddenly makes more sense... though I'm entirely unfamiliar with Toy Story,

Is there any way to tell (from the names) which are newer versions of Debian?

Personally, give me version numbers any day ;)

<comment><USER7> Take a look at /etc/os-release, or /etc/debian_version for version numbers.

Otherwise you'll need to look at Wikipedia for the list. Recently the releases have been: etch, lenny, squeeze, wheezy, and now jessie.

<comment><USER8> Or simply consult the Debian website [https://www.debian.org/releases/](https://www.debian.org/releases/)

</comment></comment></comment></comment></comment><comment><USER9> After 4 months of hard work and joining both the Debian JavaScript Packaging team and the Debian Multimedia Packaging team, I have managed to get Groove Basin [1] accepted into Jessie [2], just in time for the freeze!

[1]: [https://github.com/andrewrk/groovebasin](https://github.com/andrewrk/groovebasin)

[2]: [http://permalink.gmane.org/gmane.linux.debian.devel.changes....](http://permalink.gmane.org/gmane.linux.debian.devel.changes.unstable/350643)

<comment><USER10> Awesome looking music player. I will certainly be trying out your project--- and mille mercis for putting in the effort of getting it into Debian Jessie. That is really going above and beyond.

</comment></comment><comment><USER11> I've croutonized two of my chromebooks with debian: one jessie, the other one sid - simply to access latest packages.

Would "sid" now become the testing?

<comment><USER12> Sid is always unstable. They'll create a new branch for Testing.

<comment><USER13> And sid is always unstable because in Toy Story, Sid was the kid who mangled and tortured all his toys.

</comment></comment></comment><comment><USER14> It looks like OpenJDK 8 won't make it in time. Debian Stable won't have Java 8 in the repos for a while...

</comment><comment><USER15> Saw Jessie running on Asus touch enabled laptop. New GNOME looks promising. There were some minor bugs.

</comment><comment><USER16> is this the release where systemd expands its control to debian ?

<comment><USER17> No. Already discussed [https://news.ycombinator.com/item?id=8487142](https://news.ycombinator.com/item?id=8487142)</comment></comment>


Mankind brilliantly went to the moon, and then wasn't sure what to do next - <AUTHOR> http://www.theage.com.au/opinion/politics/moonlit-path-to-nowhere-20120827-24wj0.html <comment><USER2> _"... The second man on the moon, Buzz Aldrin, an intense, extraordinarily intelligent man, told me that one of the mistakes made by NASA was that 'we never sent anyone who could really communicate what was happening'..."_

There's no room for emotion when you need to relay information. The choice of test pilots dictated the lack of emotional response.

 _"... The moon - the reality of it - remains a missed opportunity for art and literature. ..."_

That's Al Beans job ~ <http://www.alanbean.com/available_originals.cfm></comment>


Show HN: Feather – A Python Micro-Web Framework with Production Ready Web Server - <AUTHOR> https://github.com/Max00355/Feather/blob/master/README.md <comment><USER2> How is this different from say, Flask, Bottle, Route and the like? Basically I think the README could do with explaining a bit better what is unique to Feather. When would you use Feather over Flask or Bottle?

That is of course assuming that you wish for others to use it.</comment>


"Digital-Age Alchemist" Yoichi Ochiai Overwrites the World - <AUTHOR> http://ignition.co/40 <comment><USER2> Those are pretty cool. Having technology that is in the background, invisible, yet aids people in their tasks seems to be an good goal for technology in general.

Of course, I feel as though this stuff needs to be more 'open' at least protocol wise. If you're trying to build a world with such pervasive, invisible and seamless technology, it needs to be built to last, and proprietary protocols that die with a company, are not capable of living 'forever'.</comment>


Ask HN: What keyboard do you use to code? - <AUTHOR> I want to buy a good keyboard for myself. And I didn't find a question here in HN that asked this. So I figured I'd ask.<p>What do you use? <comment><USER2> Microsoft Natural Ergonomic Keyboard 4000. [https://www.microsoft.com/accessories/en- us/products/keyboar...](https://www.microsoft.com/accessories/en- us/products/keyboards/natural-ergonomic-keyboard-4000/b2m-00012)

I have large hands so it's very comfortable and allows me to type without contorting my wrists. Conventional flat keyboards are likely a major cause of repetitive strain injuries.

<comment><USER3> The best reasonably priced keyboard I have found. Decided to give it a try 5 year ago when dealing with sport-induced shoulder issue and never looked back. I was briefly thinking about more expensive alternatives (Kinesis Advantage, Maltron) but decided that MS Natural 4000 is optimal for me.

</comment></comment><comment><USER4> I'm not picky as long as it is "tenkeyless" and not too bulky. I never use the number pad anyway; being right-handed, the mouse feels uncomfortably far away when the keyboard has a big bulky extra sidecar sticking out.

At present I'm using Lenovo's thinkpad-style USB keyboard ([https://www.amazon.com/dp/B00F3U4TQS/](https://www.amazon.com/dp/B00F3U4TQS/)). I like its slimness and the trackpoint is convenient. There's nothing especially lovely about it, but neither does it ever annoy me. It's also nice for muscle memory that all three of the computers I use regularly have exactly the same keyboard layout, whether they are portables or desktops.

I tried out the Happy Hacking keyboard, but it's been collecting dust for a year or two now. It's nice in a nostalgic way, reminiscent of the original Macintosh keyboard I used when I was first learning to type, but the long- throw keyswitches and loud clicking sound got old.

<comment><USER5> Using similar: [https://www.amazon.com/Lenovo-73p5220-External-Preferred- Key...](https://www.amazon.com/Lenovo-73p5220-External-Preferred- Keyboard/dp/B000AOYWVE)

</comment></comment><comment><USER6> I use an ergodox ([https://www.ergodox.io/](https://www.ergodox.io/)) with Cherry MX Clears at work, and one with Cherry MX Greens at home.

The ergodox is a split-hand^1 columnar^2 layout, with a thumb cluster. I like the thumb cluster because normally your thumbs are wasted.

Also, as a bonus, I got to build it myself! This is not required, but I had fun doing it.

[1] Each hand has a separate piece of the keyboard, and these pieces can be moved independently of each other.

[2] A "traditional" QWERTY keyboard has horizontal rows of keys, and these rows are not aligned. An Ergodox has vertical columns of keys, and these rows are not aligned.

<comment><USER7> I've been thinking of ordering an Ergodox keyboard for a while, but the altered layout scared me off so far. Would you say you took up fast on the moved keys? Does the columnar layout provide some advantage?

Right now, I'm excitedly looking forward to the UHK. It really promises some quite unique takes on the concept of a keyboard.

<comment><USER6> I didn't find switching too bad, but I also set up my own layout for the non- alphabetic keys. So I don't find it hard to remember where most of the special characters are, because I just thought "where is the first place I'd look for them", and put them there. Then, when I have to figure it out, my first guess is usually correct. The only ones I mess up are - and =, which are the two innermost bottom keys of the "letter" clusters. But it's a small issue; I'm sure I could practice for a bit and make it easier.

> Does the columnar layout provide some advantage?

To me, I like the fact that if a keyboard was designed without paying attention to historical accident, there's no way you'd make it a row-based keyboard, but would instead make a columnar keyboard, or perhaps slightly staggered. To me, the thumb clusters are a big reason to switch. But then, I'm a big shortcut fan -- I use Emacs a lot.

But then, I also didn't have that difficult a time switching from QWERTY to Colemak, so perhaps my brain easily changes this kind of thing.

<comment><USER7> Thanks for the explanation :)

<comment><USER6> Sure! You might want to see if you can find someone to try out the keyboard before you buy it. If you're in the NYC area, I can be found at some events. My email's in my profile. (Open offer to HN members).

</comment></comment></comment></comment></comment><comment><USER8> I use a Corsair Vengeance K70 Mechanical Keyboard. It's a "gaming" keyboard, so it's unfortunately got what I would consider garish red lights. But it was one of the more economical mechanical keyboards that I could get my hands on relatively easily.

I'm interested in an ergonomic mechanical keyboard -- either one that's completely split or something more reminiscent of Microsoft's Natural Ergonomic Keyboard series -- but I have yet to find one for what I would consider a reasonable price.

</comment><comment><USER9> Kinesis Advantage 2 LF with US layout. Best there is, after a ~2 week adjustment.

Now they even offer it with blank keycaps, very much looking forward to those.

At home I also have a CODE TKL, also a very nice keyboard.

</comment><comment><USER10> Kinesis Advantage, I used to have pretty serious carpal tunnel issues and the kinesis took care of the problem. I love the usability of the thumb buttons.

</comment><comment><USER11> Topre Realforce, the tenkeyless 55g model. Very expensive but I can definitely recommend it.

It's quiet enough for the office as well.

On a sidenote, I hate the keyboard on my thinkpad x220. People rave about thinkpad keyboards but aside from the switches, which are nice, the base feels bouncy. Feels like it's mounted on cardboard.

</comment><comment><USER12> In my opinion, the best resource for programming keyboards is Xha Lee: [http://xahlee.info/kbd/keyboard_blog.html](http://xahlee.info/kbd/keyboard_blog.html) Agree or disagree, there is a lot of information accumulated over many years.

</comment><comment><USER13> ErgodoxEZ.

Tried before All versions of MS natural/ergo etc.. Happy hacking keyboard Truly Ergonomic DAS professional Apple keyboard Matias Ergo Pro

I finally settled on the ErgodoxEZ and it feels great. I had to force myself to learn touch typing. After about a month, it started feeling really comfortable.

</comment><comment><USER14> I use a $25 or so PS/2 keyboard from Newegg that I bought 6 or 7 years ago. I couldn't be happier with it. It 's a plain old keyboard with zero flair.

I'm curious, though. Does anyone here have any experience with Jeff Atwood's CODE Keyboard?

[https://codekeyboards.com/](https://codekeyboards.com/) [https://blog.codinghorror.com/the-code- keyboard/](https://blog.codinghorror.com/the-code-keyboard/)

Edit: Of course after posting a see a few people's comments saying that they like them.

</comment><comment><USER15> Kinesis Freestyle2 Blue for Mac: [https://www.kinesis- ergo.com/shop/freestyle2-for-mac/](https://www.kinesis- ergo.com/shop/freestyle2-for-mac/)

My coworkers make fun of me for it, but it really helps my posture and wrist issues to have a split keyboard. I thought it would take me a long time to adjust, but within five minutes I was good to go! I've heard some complain about the placement of page up and page down right next to the arrow keys, but it doesn't bother me. I really appreciate the one-button cut, copy, paste functions.

<comment><USER16> Yep, I also use the Freestyle2. I'm in Europe and the resellers charge double of the Kinesis price in the US.

However, nowadays Kinesis themselves are present on Amazon and sell a limited selection. Sometimes supply is short, though: [https://www.amazon.de/dp/B00CMALD3E](https://www.amazon.de/dp/B00CMALD3E) [https://www.amazon.co.uk/dp/B00CMALA46](https://www.amazon.co.uk/dp/B00CMALA46)

It's the PC version, but on a Mac, the option/command keys can be correctly mapped.

</comment></comment><comment><USER17> Cherry KC 4000: cheap, laptop-style, no num-pad and not ugly.

I removed the annoyingly positioned fn-key (removed the rubber-dome and glued it down, so the felt edge of the keyboard is the ctrl key).

I tried mechanical cherry brown keyswitches, but it wasn't for me.

No num-pad and no fn, because my keyboard layout¹ has the numbers under my right hand when I hold a modifier.

¹ [https://neo-layout.org/](https://neo-layout.org/) (hover "Ebene 1/2/3/4" above diagram of the keyboard)

<comment><USER7> I have tried getting into the Neo-Layout for a while (up to being able to use the basic letters), but I never got to really taking advantage of it. Then, because I started using Vim-bindings, I took up the basic US keyboard (I originally started on another locale) and am now wondering if the layout is worth training again.

Do you have experience with Vim on Neo? Would you say it's worth switching (rebinding all normal mode mappings is quite an undertaking...)?

<comment><USER17> Apart from jklm-keys, most vim keys are assigned by some letter-to-meaning relationship, less for ergonomics. Therefore it's not too bad if they jump a bit as long as you stick to the neo-native iael-keys for arrows.

</comment></comment></comment><comment><USER18> I use a TVS Mechanical keyboard with Cherry blue keys. This is the only model we get in our country. I would like to have quieter keys but this is much better than the mushy keys.

Laptop is Thinkpad T410. Thinkpads always have awesome keyboards with good key travel and tactile feedback (atleast the older ones). That and the fact that I can always open the laptop and fix anything myself means I will be a Thinkpad user for a long long time.

</comment><comment><USER19> I use a KUL ES-87 Tenkeyless Mechanical Keyboard: [http://www.keyeduplabs.com/es-87.html](http://www.keyeduplabs.com/es-87.html)

It's quieter than a keyboard with Cherry MX Blue keys and the tenkeyless form factor doesn't require my right mouse hand to travel unnecessarily.

Edit: I see that it comes with a choice of Cherry keys. I use Cherry MX Brown.

</comment><comment><USER20> An IBM external keyboard with a trackpoint. I like it because:

\- I don't need to move my hands back and forth to a mouse

\- It only takes up 1 USB port

[https://www.amazon.com/ThinkPad-USB-Keyboard-with- TrackPoint...](https://www.amazon.com/ThinkPad-USB-Keyboard-with- TrackPoint/dp/B002ONCC6G)

</comment><comment><USER21> [https://www.amazon.com/Microsoft-286-00082-Natural- Keyboard-...](https://www.amazon.com/Microsoft-286-00082-Natural-Keyboard- Elite/dp/B00000JDFD)

Have a stash of Model M's and a Kinesis Advantage, but seem to be liking the above-linked MS Natural Elite for now.

<comment><USER22> I would opt for the Microsoft Natural Ergonomic Keyboard 4000[1]. Those rearranged arrow and home/page keys will drive you crazy.

[1] [https://www.amazon.com/Microsoft-Natural-Ergonomic- Keyboard-...](https://www.amazon.com/Microsoft-Natural-Ergonomic-Keyboard- Business/dp/B004SUIM4E/)

</comment></comment><comment><USER23> [http://www.madcatz.com/keyboards/strike7.php](http://www.madcatz.com/keyboards/strike7.php)

You don't have to be a professional racer to drive a ferrari just as you don't have to be a gamer to appreciate a keyboard like this.

</comment><comment><USER24> At work I use a Code keyboard with the MX clears as they are quieter. At home I use a Code keyboard with the MX greens.

I also use my macbook pro keyboard by itself a fair bit, but I feel much worse after a few hours of use of it vs the Code keyboards.

</comment><comment><USER25> I use Cooler MasterMasterKeys Pro S RGB Keyboard. It's a Tenkeyless but there's a full keyboard available too. Comes with variety of Cherry MX choices. I've got one with Cherry MX Brown.

</comment><comment><USER26> At home, Logitech G710+. I love the Cherry MX Brown keys on it.

At work, Logitech K120. The "we just buy everyone the same cheap keyboard" keyboard. I'm not particularly fond of it.

<comment><USER16> In the 15 years I work, I don't think I ever used an employer-issued keyboard. It's just too important to me.

</comment></comment><comment><USER27> Custom-made version of Atreus [https://atreus.technomancy.us/](https://atreus.technomancy.us/)

Cherry MX Blue switches.

</comment><comment><USER28> Das Keyboard 4 Pro with Cherry MX Blues. I also use the keyboard on my 15" Clevo which, although not mechanical has good travel and a nice sound.

</comment><comment><USER29> Razer black widow ultimate, most of the time. Sometimes I swap in a Logitech washable k310 if am on calls a lot because mechanical keyboards are noisy.

</comment><comment><USER30> Magic keyboard. I've got into the hype of mechanical keyboards and bought HHKB2. Now it sits on my desk as a talisman.

</comment><comment><USER31> A Filco Majestouch, the one without the num-pad.

</comment><comment><AUTHOR> So far, I see/hear good things about

\- CODE keyboard \- Mircrosoft Ergonomic ones \- Filco Majistouch \- Matias Ergo Pro

</comment><comment><USER32> das keyboard ([http://www.daskeyboard.com/](http://www.daskeyboard.com/)). Built like a tank.

If I'm going to spend my life on a keyboard, it better be good.

<comment><USER33> I don't know if this is still the case, but when I bought my first mechanical keyboard 10 years ago, Filco was a much better option for the price. I bought a Filco Majestouch (2?) with MX Blues and it is still going strong.

That being said, I'd do some research on the mechanical keyboard subreddit before I bought a pricey keyboard of any sort. I did buy a Rosewill keyboard Cherry MX Reds right before they switched over to the off-brand switches, and it's pretty solid. Not as nice as my Filco, but it's more solidly built than the Corsair mechanical keyboards I've used.

Side note on Corsair, the font is thee worst part about their keyboards by far. It has some hideous font with a mix of capital and lowercase letters.

</comment></comment><comment><USER34> Happy Hacking Professional 2

<comment><USER35> Yep JP edition for me. More thumb keys are very useful.

</comment></comment><comment><USER36> Vintage Model M. I own several, some full size and one tenkeyless.

</comment><comment><USER37> My Toshiba laptop's generic keyboard for most of the time.

</comment><comment><USER38> Leopold FC750. Amazing build quality, super sturdy.

</comment><comment><USER39> Cooler Master Storm Quickfire Rapid, Tenkey less</comment>


How to build an Apple Push Notification provider server (tutorial) - <AUTHOR> http://sreecharans.blogspot.com/2011/08/how-to-build-apple-push-notification.html

<comment><AUTHOR> anyone know of any other (re: even better) ios push notification tutorials?</comment>


Ask HN: Making an application work offline - <AUTHOR>

I have been in talks with a prospective client about writing an application. Its a simple CRUD application, with a requirement that it needs to go offline (the client's business is a mobile one, and one that involves auditing equipment. They occasionally find themselves in underground basements or buildings that may potentially block off internet access).
I have considered several options the two primary ones being Gears On Rails [http://code.google.com/p/gearsonrails/] or Adobe AIR.
I was wondering if anyone here has had any experience writing such applications, and if there was any advice to be given. I am open to considerations for other technologies, but I am not sure what those would be.
I will admit, I am not sure if this is a question for HN, but I hope it is.
Many thanks in advance. <comment><USER2> Check out HTML5's offline features:

<http://www.w3.org/TR/offline-webapps/>

While it's not fully implemented anywhere, Safari and Firefox implement some useful bits.

It also has the bonus that your offline code can work on the iPhone and Android.

<comment><USER3> It gets complicated if you want to support multiple browsers. The current Android browser does not have the HTML5 Database or Offline Applications APIs enabled, but it does have Gears built in. Firefox 3.5 supports HTML5 offline apps but not database storage. Gears is available as a Firefox extension. IE8 supports HTML5 key-value storage but not HTML5 database storage or offline applications. Gears is available as a plugin for IE. Safari for Mac supports both Gears and large parts of HTML5. Safari for iPhone supports HTML5 but not Gears.

Take a look at: <http://code.google.com/p/webstorageportabilitylayer/>

This is the database access layer that Google wrote for GMail mobile. It works with both Gears and HTML5, so you can use SQLite on IE, Firefox (including pre-3.5 versions), Safari, Chrome, iPhone, and Android. However, it provides only a low-level (raw SQL) API and is asynchronous for performance reasons. You'll have to write a bit more code than if you use a high-level Gears-only library like ActiveJS.

Clearly things are simpler if you can choose either Gears or HTML5, and support just one or two browsers. Some features are more widely supported using Gears right now, but this will probably tilt the other direction soon. For example, the Chromium developers have no plans to add Gears support on Linux, because they see HTML5 as the way forward.</comment></comment>


Algorithm diet: Same food can trigger diff blood sugar response in diff people - <AUTHOR> http://www.weizmann.ac.il/pages/home/algorithm-diet <comment><AUTHOR> Prof Eran Segal did a TEDx talk about it:

[https://www.youtube.com/watch?v=0z03xkwFbw4](https://www.youtube.com/watch?v=0z03xkwFbw4)</comment>


Google Reader lived on borrowed time: creator Chris Wetherell reflects - <AUTHOR> http://gigaom.com/2013/03/13/chris-wetherll-google-reader/ <comment><USER2> I would have thought that Google would keep Reader running. Not because there would be a strong business case, but because pissing of both bloggers for fucking with their channels (who in aggregate is a huge influencer) and information omnivores (many of who love to share opinions of companies and products with their social circle) is a huge PR hit to take for saving peanuts. They couldn't have done worse by buying full-page attack ads against themselves in NYT.

I went to Newsblur last year, because I like to support the little sites when they're filling my need, but Reader was the Google product I used most by a mile, I'll miss it. I accept that Google doesn't make things for me anymore, I'll look elsewhere for exciting products.

</comment><comment><USER3> The article hints that it's the recommendation system that is hard and use a lot of resources.

Funny as it is exactly the part of the product I didn't care about.

<comment><USER4> Right. I don't recall ever subscribing to one of its recommendations.

Mostly what I got were suggestions for crap pseudo-blogs from the Gawker content farms.

</comment></comment><comment><USER5> "Reader is (was?) for information junkies; not just tech nerds. This market totally exists and is weirdly under-served (and is possibly affluent)."

This is what I don't understand about the death of the RSS ecosystem. A whole class of professionals spend their days reading text -- in government, in finance, in specialist journalism. Many would pay for a decent reader; it's a tool of their trade, after all. You don't need mass adoption; a few thousand people at $20/month would keep you ticking over. So why haven't there been more companies in this space.

<comment><USER6> I have seen companies tried, and worked for a strategic consulting firm at one time who was heavily reliant on RSS feeds for sending information (we were basicly human parsers on very topic-specific items). And they used NewsGator. I get the impression NewGator is not doing that well, and the "I will pay good money" sector you suggest exists does not; very few people are willing to pay for good interface, despite a strong use case. I say the same about movies and television. There is a self-serving expectation of free, and few buck this trend unless they really need it and the pay-for services are not worth it, or do just enough. Maybe others can tell me their experiences.

I am definitely someone affected by this, and continue to look into better RSS management every year or so for this reason. It appears building my own solution is by far the best approach, and that is true for a whole bunch of software anyway. Oh well.

<comment><USER7> It is time consuming. I have been working on my own open source reader and it takes a lot of effort to get right.

Even worse, I am having a hard time to get people to try it out so I can get feedback to improve it. I keep working on it just because I rely on it for my daily news/podcast.

<comment><USER8> This is a great opportunity to get a few testers/users, if you'd like to continue developing it.

I do however understand that this can be quite overwhelming - so I'd recommend you'd only take in people manually (ie. no automatic signup - that'll probably be quite the load..)

<comment><USER7> It's Android client based <http://goo.gl/kShgp> so it has no server limitation and it is actively being developed <https://github.com/dodyg/AndroidRivers>

I am helping out Cartulary as well <https://github.com/daveajones/cartulary> that will provide S3 based RSS aggregation functionality.

</comment></comment></comment></comment></comment><comment><USER9> Google Reader is probably the only place that even has an archive of many defunct blogs. Are they going to archive them somewhere or just throw that trove of web history away?

<comment><USER10> Most likely the later, sounds like we should take care of preserving them ourselves.

<comment><USER9> Brainstorming session on irc://efnet/#archiveteam

Edit: wrong channel d'oh

</comment></comment></comment><comment><USER11> Interesting that apparently the data generated by Reader was not valuable enough for Google. +1 are sufficient for Google to understand people's interests? Seems to me information junkies could have been an important source of information.

But then the SEO spammers probably also just created Google Reader profiles with fake reading lists?

How is the situation on G+, is it easy for SEO spammers to game it or is it harder, for example because of the real name policy?

</comment><comment><USER12> So Reader was a red-headed stepchild from the inception.

I mostly abandoned Reader for Twitter when Google made it clear that the one true path was Google+. My team used the share/comment features in Reader constantly, and got alot of value from it. And not just for blogs -- we'd subscribe to Google Alert RSS feeds and use Reader to annotate.

Google+ Hangouts are amazing. It's Facebook cloning is ok. But it is weak for the core workflow that Reader gave you. Twitter is close, but it's 100% public nature limits it utility for me.

At the end of the day, I lost a functionality that was valuable to me. It's too bad, but I'll live.

</comment><comment><USER13> Apple had Mapgate. Google has Readergate.

<comment><USER14> This is a great example of trials faced by both companies if you have suffered a head injury and can only remember the lady six months.

<comment><USER14> thanks, autocorrect- of course I meant "last"

</comment></comment></comment><comment><USER15> Google now more focus on those products which gives more profitability and revenue either direct or through advertising.<http://leadsrain.com/>

<comment><AUTHOR> Can the mods kill this account? It is clearly a spammer.</comment></comment>


Ouya is up for quick sale - <AUTHOR> http://www.gamasutra.com/view/news/242198/Report_Ouya_is_up_for_quick_sale.php <comment><USER2> A shame to see them quick sale like this. They took on too much debt and could not offset it by investments.

It was a good idea, low priced Android based video game console. The controllers needed better work, the software needed better quality control, the developer tools needed to become easier to use and program to get more developers for the platform.

Their business model apparently has flaws in it that need fixing as well. Whomever buys them out will have to address that as well.

</comment><comment><USER3> I never quite understood why someone would be foolish enough to enter a dying market with so many established big players. The age of the dedicated games console is over. PS4, Xbox 360, and Wii will be the last successful consoles.

<comment><USER4> Too soon to call game consoles dead. We'll have compute clouds and ever increasing bandwidth. A fixed hardware platform makes for a better consumer experience. High-end (by definition a small market) gamers will always take custom PCs with latest graphics.

The problem with the Ouya was hitting a sweet spot of a moving target. Casual to mainstream gaming at a good price point. Now squeezed further by the likes of Compute Stick, etc.</comment></comment>


Tell HN: HeavyMetal for PHP released - <AUTHOR>

We've open sourced most of the framework we used to build massify.com to the world.  We're still working on the release, but there's a usable version available on GitHub.
Three years of development on this framework.  Designed for scale, designed by people who hate PHP but have to work with it everyday.  It's been in active production for 2+ years now and smooth sailing the entire way.
This isn't an official release, just a notice to any HN hackers who might be interested in a PHP framework designed by a bunch of python, .NET and Java hackers.
You can get it here:
http://getheavy.info
Or the NSFW link:
http://heavyfuckingmetal.com/
Would love feedback.
Cheers!
Your friends at Massify. <comment><USER2> Interesting thoughts on autoloading: [http://wiki.getheavy.info/index.php/A_Note_About_Auto- Loadin...](http://wiki.getheavy.info/index.php/A_Note_About_Auto-Loading)

I'm disappointed more frameworks don't autoload. I much prefer it to manually loading everything and I've used both styles over the years. There is also the small performance benefit of only loading classes I need at runtime rather than loading every possible class at parse time. But really, requiring everything manually seems redundant to me.

<comment><AUTHOR> HeavyMetal uses something similar that provides similar functionality, but maintains the explicit declarations to keep your codebase organized as well as directory portable:

uses('system.app.view');

This includes the View class from the /sys/app/view.php

Alternately, you can also do:

$obj=instance('sys.app.view');

either way the goal is to maintain clarity which php's autoload stuff makes a mess of.

Sorry typing on my iPhone is a bitch.

<comment><USER2> I've been doing that since the PHP3 days (before require_once existed, and you had to track repeated requires yourself). Since moving to autoload with PHP5, I don't find any loss of clarity. I'm curious what mess you get from autoloading?

</comment></comment></comment><comment><USER3> Spend a few minutes on it. Got an error:

Call to undefined function syck_load()

Loading classes when you need them only is a good principle. Question, did you ever consider extending a public framework rather than your own? CodeIgniter comes to mind. What motivated you to start from scratch?

As a sideline I am currently in Qatar heavyfuckingmetal.com got censored!

<comment><USER4> You need _why's syck library:

<http://github.com/why/syck/tree/master>

<http://pecl.php.net/package/syck>

<comment><USER3> Thanks!

</comment></comment></comment><comment><USER5> It sucks dude! Stick to Symfony, Django and Rails. When are these ASP.NET and PHP developers going to learn? eh?</comment>


Excellent HBR piece challenging the Long Tail - <AUTHOR> http://www.longtail.com/the_long_tail/2008/06/excellent-hbr-p.html <comment><USER2> I can't believe Chris Anderson is still pimping "The Long Tail." (His latest book: "The Longer Tail.") As his website mentions, his initial "The Long Tail" Wired article came out in 2004. OK, we get the concept. Please come up with some new material. Perhaps the fact that he still has an audience for "The Long Tail" books and speaking engagements proves his theory that the long tail does exist.

<comment><USER3> If tomorrow you come up with a catchy term for a concept that captures the imagination of the business media market and then write a bestseller around that concept -- I guarantee you will still be "pimping" it 4 years from now.

<comment><USER4> Even though the "concept" is a matter of common sense understandable by any 3rd grader... These "business types" surely know how to blow an average paragraph of text into an article, then into a book, then into a site...

It's almost like the dude discovered that circles are "more round than squares" and makes a career out of it.

</comment></comment></comment><comment><USER5> Funny, rarely have I heard "excellent" in relation to HBR content. Every issue of HBR magazine tends to be re-hashing of various topics on "Leadership" from issues past. I did read "The Long Tail" so I'll give this one a shot.

<comment><USER6> This is not a rehash of previous topics, but is mathematically flawed. I commented on the blog itself since there were more comments there than here.

<comment><USER7> I read the comment, which was good. I only wish Anderson himself was more clear about his attitude toward the HBR piece -- he calls it "rock solid" and says that he's sure the analysis is accurate, and then proceeds to say that the author's use of percentages is misleading and he disagrees with the conclusions.

<comment><AUTHOR> Anderson collaborated with Prof. Elberse and she consulted on the book and came short endorsing it (strange, don't you think?) so Anderson didn't come out with any hard-hiting arguments against her well-researched piece.

Incidentally, Lee Gomes of WSJ pretty much nailed it two years ago:

[http://online.wsj.com/public/article/SB115387606762117314.ht...](http://online.wsj.com/public/article/SB115387606762117314.html)

Also, Lee told me that he wrote a new article on this and it will be published this Wed in WSJ. We'll see what he's come up with.</comment></comment></comment></comment>


Supreme Court seeks Trump administration views on Google-Oracle copyright feud - <AUTHOR> https://www.reuters.com/article/us-usa-court-google-oracle-idUSKCN1S51CQ <comment><USER3> The whole idea of an API being copyrightable is insane to begin with... Interoperability invariably requires it.

<comment><USER4> Interoperability is not the goal of all API's.

<comment><USER5> I would contend that the definition of the word "interface" is, in essence, interoperability.

> a point where two systems, subjects, organizations, etc. meet and interact.

An interface is that which allows two systems to work together, in conjunction. That is, interoperability:

> the ability of equipment or groups to operate in conjunction with each > other.

Whether or not the intent of our legal code is to allow for drop-in- replacement interoperability of systems is something I have no domain knowledge with which to comment.

<comment><USER4> That's a pretty useless definition. In this context interoperability means being able to substitute one product for another because they have the same API. Sometimes this is the intent (e.g. SQL). Sometimes not.

<comment><USER6> Considering that an API is a mere symbolic/semantic gateway closer to a mathematical expression, I'm sorry, your interpretation would seem to be more useless. Nothing says the underlying functionality exposed by an API has to functionally line up. I could implement a persistence layer through Pair(K. V) or any other myriad sets of logic, but just because I use that set characters to render that API in a virtual machine, I should be open to extortion?

Programming languages, and API's in particular are useless alone. This is just an attempt to try to monetize a gigantic segment, which if allowed will lead to an inevitable fracturing of just about every semantic convention behind an ever growing wall of lawfare.

It's bloody math. Stop trying to treat it like a bloody Widget.

For God's sake, you're saying Oracle should be able to gatekeep

Pair(K key, V value).

Great. So as long as anyone uses that Oracle gets to sue them? Great way to hobble the industry.

Or are you seriously going to try to make the argument that all we need to do is change the package names/method signatures of the entire JDK without altering it structurally and we're gold?

This is a space where legalese starts to enter its' own butthole without reconciling what you're trying to do with what you're actually doing.

</comment></comment></comment></comment></comment><comment><USER7> _"Look, having Java — my uncle was a great professor and senior developer, Dr. John Trump at MIT; good genes, very good genes, OK, very smart, MIT, very good, very smart — you know, if you're a conservative Republican, if I were a liberal, if, like, OK, if I ran as a liberal Democrat, they would say I'm one of the smartest people anywhere in the world — it's true! — but when you're a conservative Republican they try — oh, do they do a number — that's why I always start off: Went to Wharton, was a good student, went there, went there, did this, built a fortune — you know I have to give my like credentials all the time, because we're a little disadvantaged — but you look at the Oracle deal, the thing that really bothers me — it would have been so easy, and it's not as important as these copyrights are — Java is powerful; my uncle explained that to me many, many years ago, the power and that was 20 years ago; he would explain the power of what's going to happen and he was right, who would have thought? — but when you look at what's going on with the Java VM —it used to be real, now it's virtual — but when it was real and even now, I would have said it's all in the API; fellas, and it is fellas because, you know, they don't, they haven't figured that the women are smarter right now than the men, so, you know, it's gonna take them about another 150 years — but Google are great negotiators, the Google are great negotiators, so, and they, they just killed, they just killed us."_

<comment><USER8> lmao

</comment></comment><comment><USER9> Why are they asking? Why do they care what the Trump Administration thinks about the copyrightability of APIs?

Last time around, the Obama administration suggested that the Supreme Court _not_ hear the case, and they didn't. I'm hoping that the Trump administration decides the opposite, if only out of spite for Obama...

<comment><USER10> Shouldn't the supreme court specifically _not_ ask any other branch if they should review a case? Isn't that the point of independent branches of government?

<comment><USER11> It struck me as odd as well, but the article mentions near the end that it apparently does happen from time to time, which I was not aware of. I share your viewpoint, though. Not sure why the USSC would ever ask the executive branch whether or not it should hear a case. The justices are more than capable of determining if it warrants their time.

I suspect the reason for the request is that this could have a significant and unexpected downstream effect should they hear the case and end up ruling in an unforeseen manner. They could conceivably alter the copyright laws in serious ways that no one wants.

That being said, I still think they should probably never ask for guidance like this because the _effect_ of their ruling is not their problem. They need to uphold the law. If there are unforeseen, undesirable consequences then it is the job of the legislative branch to rectify that. This is what happened with the Affordable Care Act. The USSC was given testimony that confirmed the language, meaning, and reason behind one of the key portions - the requirement that states must implement their own exchange to receive Federal subsidies for healthcare to pass along to the newly insured citizens. This became a major issue because a large number of states didn't create their own exchanges but the Obama administration still wanted to dole out the subsidies. Instead of upholding the law as written in clear language and which was confirmed by the actual writers of that section of the bill, they instead did the exact opposite and basically ruled that since ruling to uphold it as-is would essentially destroy Obamacare, they would have to allow the subsidies because that one clause would effectively destroy the entire program since the states didn't take it up as expected (but not required). What should have happened in that scenario is that the USSC should have upheld the language as written, which would have forced the legislative branch to actually change/fix the law with an amendment. But this was no longer politically possible and the court knew that, so they instead ignored the law and basically re-wrote it - <USER2> is a power they don't actually have.

<comment><USER12> > ...which is a power they don't actually have.

Arguably they don't have the powers they _do_ actually have. The constitution is very vague on the role of the court.

</comment></comment></comment></comment><comment><USER13> I guess I don't know a lot about how the Supreme court works, but is this normal? I know that the president is the one who appoints the justices, but it's not like Donald Trump is a lawyer, or a programmer; he's ostensibly an economics major and outside of some demagogical diatribe in one of his speeches where he probably claims that all of this is simple, he's not qualified to say whether the Supreme court would hear this.

<comment><USER14> Administrative Law is the key here. Departments within the executive branch set their own guidance on certain topics, this is known as Chevron deference[0]. Congress has pushed the details about a lot of our laws onto the executive branch, which is why the FCC, EPA, and others are able to change their rules and make companies/the-public adhere to new rules that didn't happen due to a new law.

[0] [https://ballotpedia.org/Chevron_deference_(doctrine)](https://ballotpedia.org/Chevron_deference_\(doctrine\))

<comment><USER15> Uh, this case has nothing to do with administrative law. The issue (as presented in Google's petition is):

> 1\. Whether copyright protection extends to a soft-ware interface.

> 2\. Whether, as the jury found, petitioner's use of a software interface in > the context of creating a new computer program constitutes fair use.

In other words, is the Federal Circuit appeals court off of its rocker.

<comment><USER14> Uhg, you're right and I can't edit now. That's what I get for not reading.

</comment></comment></comment></comment><comment><USER16> It's asinine that this has gone on for so long. These giant corporations will do whatever is in their best interest and crush anyone they can underfoot.

I doubt Google particularly cares about copyrightable APIs, sans their in the sights. They're more than large enough to create their own languages and whatnot and would probably like to prevent others from interoperating with their software, as they do with websites that try to offer access to Youtube without going directly through Google.

<comment><USER17> There's a lot of legacy Java in Android, though, that is not easily replaced.</comment></comment>