God forbid if Google lifted their hands some day, can you even imagine how many million people will be impacted due to how many services ranging from emails to map apps to cloud services to web services, etc? Is it wise to give one entity power over so many things or its better to encourage a decentralized structure where multiple organizations control only bits of the pie?
Have you looked through the takeout outputs though? They are completely worthless to most users. It's funny to me that a bunch of Google devs built the functionality and thought "ya this will do".
I mainly care about Google Docs and Sheets, they're exported as Word and Excel (and there are other options if you don't like this formats), and the random sample of docs I tried in the output worked fine in Word and Excel.
Try restoring it. A backup is only good if you can make it work again, and an export function is only good if there is something else that you can import it back into.
I guess I'm missing how that relates to the comparison I made.
Google at least lets me back things up.
Most services do not allow it at all.
So there's no restoring anywhere else at all, no chance.
Having the data I could at least have a chance that some service might offer a rebuilt import option to pick up those google users ... or I could build it myself / at least have the information.
To me that's still leaps and bounds better than any other options that I know of.
The GDPR obliges all companies to provide an option for users to receive all data held on them; takeout and FB'd equivalent were implemented in response to that.
For all other companies, at least if you are in the EU, you should he able to request the data by eg email and they are obliged to send it. You just don't know what format you'll get.
Yeah, a lot of exported data is basically unidirectional.
Google Voice exports your texts into a clumsy pile of HTML files. That's why I wrote a parser to convert all of your Google Voice messages into structured data.
Nations are ultimately made up of people and they are subject to peoples' pressure. Its the people who we must convince and wake them from their deep slumber.
You mean like the US did with AT&T? I'm not sure if they 'have the balls' currently, but they have in the past and it's not inconceivable they would do so again. Microsoft came close to it as well.
I do point out that US vs AT&T did first major anti-trust settlement in 1913, and the breakup ultimately happened in 1984, or about 70 years later. So maybe we'll see Google breakup too in 2084 or around that time..
Sure, it is a genuine concern. But I find the context for the comment here bit funny considering how much the world runs on top of gdocs etc, the risk of losing the source of personal blog is drop in a ocean.
And while there of course are no guarantees, I at least would expect fair warning before stuff like docs is killed.
Well, I don't need to trust Google's employees, I trust its shareholders wanting to make money, which will never stop.
Since Google's popular products all contribute to making money in the end, they're not going to stop. Shareholders just wouldn't let it happen. There's a chain of accountability here that goes employees > C suite > board > shareholders.
So I don't quite see what situation you're worried about here.
if by some magical event Alphabet/Google is able to shut down their free versions of their Office apps and rely solely on G Suite/YouTube/Waymo/etc without losing money, I don't doubt they would do it. If that event will ever happen is still a mystery and is probably unlikely to happen within my/our lifetimes.
That's just so factually untrue it's hard to know what to tell you.
Do you understand how corporate boards work? How large shareholders get their own board seats? How boards hire and fire members of the management team?
The idea of a toothless board is a complete fiction. I don't know where you got the idea, but it couldn't be more wrong.
(Perhaps you're confusing it with boards where a single shareholder has more than 50% of shares, thus making the board largely irrelevant because the shareholder controls it. But even in that case, the CEO effectively reports to that shareholder, and there have been many, many, many cases of underperforming CEO's being fired. It happens all the time.)
I don't think the cost of losing things is as high as you imagine. You can use X until it fails and then you can use Y.
I also don't think your doomsday scenario makes much sense either. What do you mean "lifted their hands" and why would it happen out of the blue with zero warning? Though I'll repeat: so what?
I don't think a decentralized system is much better in this regard. It just means things rot at a more staggered pace. Service A shuts down on year 0, service B shuts down on year 10, etc. It's just a different trade-off, not the panacea we like to pretend it is.
After building a number of [1] projects that are powered by Google Docs, I recently realised that it also means that countries (like China) where Google is blocked, won't be able to access your content.
Have you visited the Cloudflare main website by chance? cdnjs doesn't serve cookies unless you've visited cloudflare.com yourself. Either way the cdnjs jquery isn't a tracker.
Firefox removed the path in 2018 while in private browsing, now their tracking protection is in normal mode too so I imagine it will happen there as well. I'm guessing the only thing stopping them from removing it totally is some sites break if they cant see the domain you came from.
I wish IDEs (with collaboration from git) made it clear what should and shouldn’t be checked in to source control (or rather they had a way to do both) - where I want to store per-person level settings as well as shareable settings.
In this particular case though - IntelliJ itself would have prompted him to add these files - so those are in fact shareable files
Note: I do know IntellJ purposely excludes workspace.xml , but these things should be handled much more explicitly and IDE should provide better conventions and guidance.
The .ignore plugin and the GitHub repo it is built around I think do the job well enough by having a list of suggestions. I may actually have a private repo and have all the settings on both computers that I use.
Hah fortunately those secrets were never actually in use. I just did the unspeakable and quickly rebased master to update that though so thanks for that!
I wasn't planning on sharing the code at first so I probably didn't give it as critical an eye as I should have. This was also a learning project for me to try out Kotlin so I'm sure there are a million things others would do far better.
It is soooooo easy for something that was just an experiment to get published somewhere, that I have learned (the hard way, multiple times) to never commit any secrets to a git repo. Well, intentionally that is... but if I do it by mistake, I treat them as compromised and change them.
Instead I just create a .env file and put them there. It's a bit more boilerplate but it is worth it when I don't need to decide between keeping secrets and having code history before publishing. And env vars are supported everywhere afaik.
I recently used Google Sheets as a CMS for a couple of projects.
In my case I had a server-side script which read the sheets, converted the data to JSON and saved it on a file which was then fetched by the JS client. The conversion only had to run when there were updates (e.g once a day).
It was really convenient in my particular case because all users where familiar with Google Sheets, already had users and passwords, and I had good granular control over permissions.
Google put an annoying link on there called "Report this site". Maybe there's a way to take that off now but that really sucked. What happens if some idiots report your site for no reason?
This is a nice idea, especially for a case where a website is collaboratively edited. I don't love Google Docs for solo projects, and I don't enjoy using it, but its collaborative editing features are so good and reliable that I can't escape it. Being able to suggest and accept changes with commenting among a group of people would be really nice for a website for a collective, say.
That said, a bit of small, hopefully constructive feedback. The impact of this would be a bit bigger if there were more blog posts, so that by the time you reveal you're using google docs it feels more like a practical application and less like a very quick demo. Also, while I understand that there's a sort of "coder who doesn't do design" aesthetic, it might be good to at least change the colors a bit so that there's a bit more magic of transformation. This looks a bit too much like, well, a Google doc, and you want to establish that something cool is going on that couldn't be done with just an index of publicly visible google docs.
Not to be confused with Google Colab! Which provides shared Jupyter Notebook, which also can be great for writing markdown cells, with graphs and code interspersed.
We’ve been using a shared Google Docs folder to manage our app’s release notes. We parse the folder in reverse chronological order, paginate 5 at a time and use their doc to HTML converter API. We then cache in Redis for performance. Works great and keeps the development team away from having to update it. Product/support can edit to their content!
That's actually a really cool idea. We currently use a rendered Markdown doc but as a team who can forget and then have to do another commit, this would remove the friction required.
Oh yes. We used to be lazy developers and do the bare minimum. We sell a SaaS to the SMB field and the feedback we got was that they wanted to know _exactly_ what we were changing in the app. So now we produce full sentence (or paragraph) explanations for every JIRA card that gets into production for our users, including links to updated documentation, training videos, screenshots, etc.
Would be interesting with more details on how this works. Like how the URL works and how the pages are styled. Is there any services needed beside google docs, etc.
My first encounter with a docs -> website was the now-defunct joelewis' hexopress.com. The code; however, is opensource [0].
There's a dated, unmaintained Google Docs to Markdown converter [1] which can be used as a source for a static site generator like Hugo [2]. This is particular interesting since folks can style content as they normally would from within Google Docs and have it show up with the same styling on a webpage, rather than write HTML themselves.
Hey all, keep in mind that this is an experiment and the OP is therefore looking for input from users. Don't look at it from a finished product point of view but as a starting point and give your ideas.
I think this is a great solution a quick in office CMS for in house projects.
It would be cool if it was 100% live... Ie. with every keystroke the website is updated. Does the Google Docs API have some kind of event based notification of new keystrokes you could hook into?
The spreadsheet not being normalized is a bit annoying, but I could fix that if I really wanted to. All in all, I actually find using Google as a data source like this works pretty well.
What add-on are you using to do that? I've been playing around using Lovely Table and Awesome Table for this purpose but not really sure which one I ultimately want.
The site is built with Gatsby using gatsby-source-google-sheets. The source is here: https://github.com/city41/fgbg (warning, it's pretty terrible. I built this thing very rapidly as at its heart it's really just an experiment).
I run my wishlist from a Google Sheets document. It's a bit annoying that you can't have gaps in rows in the spreadsheet, since fetching as JSON will only return up until the first gap.
Cool idea, but I worry about over reliance on Google or other big tech players, especially after their recent steps to ramp up censorship. Another example is that Medium blocked many informative COVID-19 posts recently despite them being thoughtful and necessary discussions, especially given the repeated failings of the WHO. What’s a great blog platform that features a lack of censorship or protection against censorship as a feature?
I recently learned (via Rich Harris's recent Svelte Society Day talk[1]) that the New York Times does something like this using a custom markup language called ArchieML[2].
Blot.im does this but with dropbox and its amazing. Since you use word docs instead of g docs the formatting transfers over perfectly. Super easy setup and $20/yr. I’ve been using it for 2 or 3 years and it’s great.
Npzero.com is my blog if you want to see an example. There are much prettier themes you can choose from as well. I have a chrome book so sometimes I write in g docs, export to word, and upload to Dropbox’s webapp and make final adjustments in their online editor. No affiliation, just a great product.
I’ve been thinking about going the other way a bit recently: having bots consume input from and add their output to a Google Doc.
There are so many processes in most businesses which involve many humans collaborating on templatised documents. Google Docs/Sheets fits into these workflows very well, but there’s often scope for some partial automation in there too - pulling information from databases and outside sources and keeping it in sync, etc. Developing custom web apps for each case is too much effort for too little reward, takes users out of a familiar (and well-liked) interface which updates in real-time, makes you reimplement permission models, etc.
Not something I’ve explored properly yet so I don’t know if the APIs are rich enough to make this easy, but I would really like to give it a look.
I used that approach for a reporting system and it worked pretty well. It was easy to hit the sheets api rate limit but it was just a matter of waiting a bit between requests.
The node script was triggered hourly with Heroku scheduler.
You can do this with Emvi [1] too. It works like a headless CMS. I wrote a wiki for a German gaming community [2]. The project is available on GitHub [3] if anyone is interested and can easily be adopted to your own project. The articles fit a blog very well as they don't use pages and therefor are continuous. The API spits out clean HTML.
Way back I considered using Microsoft Word as my content editor for my blog, and wrote a PHP script that converted .docx files to static HTML. To publish all I had to do was upload a new .docx file to a given directory on my shared host and wait for the script to run.
It converted the Word "Heading 1" etc styles to some CSS class, and had support for extracting inline images etc. I relied on convention for certain things like post title, and it didn't support too fancy things in the Word document.
At that time .docx was rather new, so I wasn't sure if it would stick around. Also I wasn't sure this was the best idea ever, so I ended up with something else. But it was a fun adventure.
Well the key point was to use Word for basic content editing and layout, but have control over the styling on the website part of things (ie via my own style sheet). As I recall the generated HTML from Word was quite a mess, and it would be non-trivial to change the styling of it.
It also allowed the pages to be easily integrated into my blog, with first paragraph being visible on the main page etc.
Mostly though it was just a "can it be done" experiment :)
i'm using Google Sheets for a Coronavirus Tracker http://amarillo.land/coronavirus.html but i'm not enthused with the performance. This looks very interesting!
Yeah, this is a great service but the pricing doesn't make sense (even after the free tier). 10$ a month (!!!) and it still wouldn't fit my use case with only 1500 rows. The convenience is nice but considering Google/Microsoft is paying for most of the hosting, cell computation and so on, not sure why a wrapper around an API is so expensive.
Time is money and this saves a tonne of it. You're free to code everything yourself and save that tiny amount of money of course if you like. Different people have different priorities.
In addition to using Google Docs for articles that don’t fit nicely in the CMS, we also have our internal newsroom wiki powered by Google Docs, too. We’ve open sourced the code for that here:
I'm finishing up with a simplistic template for Zim wiki. That will enable me to have a website with nice Wysywig interface divorced from web bloat and limitiations, but also some of its convenience.
164 comments
[ 2.8 ms ] story [ 175 ms ] threadThat's more than most places offer.
I mainly care about Google Docs and Sheets, they're exported as Word and Excel (and there are other options if you don't like this formats), and the random sample of docs I tried in the output worked fine in Word and Excel.
Does it not provide the data?
Google at least lets me back things up.
Most services do not allow it at all.
So there's no restoring anywhere else at all, no chance.
Having the data I could at least have a chance that some service might offer a rebuilt import option to pick up those google users ... or I could build it myself / at least have the information.
To me that's still leaps and bounds better than any other options that I know of.
For all other companies, at least if you are in the EU, you should he able to request the data by eg email and they are obliged to send it. You just don't know what format you'll get.
As for all other companies they might be obliged to send it, but I don't see many ways to do so.
That still make's google's method way better IMO.
Google Voice exports your texts into a clumsy pile of HTML files. That's why I wrote a parser to convert all of your Google Voice messages into structured data.
https://github.com/unqueued/googlevoiceparse
And while there of course are no guarantees, I at least would expect fair warning before stuff like docs is killed.
Since Google's popular products all contribute to making money in the end, they're not going to stop. Shareholders just wouldn't let it happen. There's a chain of accountability here that goes employees > C suite > board > shareholders.
So I don't quite see what situation you're worried about here.
Do you understand how corporate boards work? How large shareholders get their own board seats? How boards hire and fire members of the management team?
The idea of a toothless board is a complete fiction. I don't know where you got the idea, but it couldn't be more wrong.
(Perhaps you're confusing it with boards where a single shareholder has more than 50% of shares, thus making the board largely irrelevant because the shareholder controls it. But even in that case, the CEO effectively reports to that shareholder, and there have been many, many, many cases of underperforming CEO's being fired. It happens all the time.)
I also don't think your doomsday scenario makes much sense either. What do you mean "lifted their hands" and why would it happen out of the blue with zero warning? Though I'll repeat: so what?
I don't think a decentralized system is much better in this regard. It just means things rot at a more staggered pace. Service A shuts down on year 0, service B shuts down on year 10, etc. It's just a different trade-off, not the panacea we like to pretend it is.
https://upstart.me (powered by Google Docs)
Console errors: Blocked loading mixed active content “http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.mi... upstart.me Request to access cookie or storage on “<URL>” was blocked because it came from a tracker and content blocking is enabled. 6 ReferenceError: $ is not defined script.js:1:1 Blocked loading mixed active content “http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.mi... upstart.me Loading failed for the <script> with source “http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.mi.... upstart.me:179:1 ReferenceError: $ is not defined
FWIW, I ran into the same issue (Chrome): https://user-images.githubusercontent.com/1910118/81509549-a...
You also might want to put your .idea directory and secrets in a .gitignore
Reminds me of this jwz post (you have to copy and paste manually since he doesn't like HN as a referrer: https://www.jwz.org/blog/2008/02/looking-forward-into-the-pa... ).
https://blog.mozilla.org/security/2018/01/31/preventing-data...
In this particular case though - IntelliJ itself would have prompted him to add these files - so those are in fact shareable files
Note: I do know IntellJ purposely excludes workspace.xml , but these things should be handled much more explicitly and IDE should provide better conventions and guidance.
I wasn't planning on sharing the code at first so I probably didn't give it as critical an eye as I should have. This was also a learning project for me to try out Kotlin so I'm sure there are a million things others would do far better.
Instead I just create a .env file and put them there. It's a bit more boilerplate but it is worth it when I don't need to decide between keeping secrets and having code history before publishing. And env vars are supported everywhere afaik.
In my case I had a server-side script which read the sheets, converted the data to JSON and saved it on a file which was then fetched by the JS client. The conversion only had to run when there were updates (e.g once a day).
It was really convenient in my particular case because all users where familiar with Google Sheets, already had users and passwords, and I had good granular control over permissions.
That said, a bit of small, hopefully constructive feedback. The impact of this would be a bit bigger if there were more blog posts, so that by the time you reveal you're using google docs it feels more like a practical application and less like a very quick demo. Also, while I understand that there's a sort of "coder who doesn't do design" aesthetic, it might be good to at least change the colors a bit so that there's a bit more magic of transformation. This looks a bit too much like, well, a Google doc, and you want to establish that something cool is going on that couldn't be done with just an index of publicly visible google docs.
1. https://github.com/googlecodelabs/tools/
(Sorry for the seemingly drive-by, this really annoys me in Play Store update release notes!)
There's a dated, unmaintained Google Docs to Markdown converter [1] which can be used as a source for a static site generator like Hugo [2]. This is particular interesting since folks can style content as they normally would from within Google Docs and have it show up with the same styling on a webpage, rather than write HTML themselves.
[0] https://github.com/joelewis/hexopress
[1] https://github.com/mangini/gdocs2md
[2] https://gohugo.io/content-management/formats/
https://www.gatsbyjs.org/packages/gatsby-source-google-docs/
different personalities, I suppose.
I really don't like your blog
The spreadsheet not being normalized is a bit annoying, but I could fix that if I really wanted to. All in all, I actually find using Google as a data source like this works pretty well.
https://www.gatsbyjs.org/packages/gatsby-source-google-sheet...
[1]: https://youtu.be/luM5uobewhA?t=1301
[2]: http://archieml.org/
Npzero.com is my blog if you want to see an example. There are much prettier themes you can choose from as well. I have a chrome book so sometimes I write in g docs, export to word, and upload to Dropbox’s webapp and make final adjustments in their online editor. No affiliation, just a great product.
There are so many processes in most businesses which involve many humans collaborating on templatised documents. Google Docs/Sheets fits into these workflows very well, but there’s often scope for some partial automation in there too - pulling information from databases and outside sources and keeping it in sync, etc. Developing custom web apps for each case is too much effort for too little reward, takes users out of a familiar (and well-liked) interface which updates in real-time, makes you reimplement permission models, etc.
Not something I’ve explored properly yet so I don’t know if the APIs are rich enough to make this easy, but I would really like to give it a look.
The node script was triggered hourly with Heroku scheduler.
[1] https://emvi.com/
[2] https://wiki.sts.wtf/
[3] https://github.com/Special-Tactical-Service/wiki
It converted the Word "Heading 1" etc styles to some CSS class, and had support for extracting inline images etc. I relied on convention for certain things like post title, and it didn't support too fancy things in the Word document.
At that time .docx was rather new, so I wasn't sure if it would stick around. Also I wasn't sure this was the best idea ever, so I ended up with something else. But it was a fun adventure.
It also allowed the pages to be easily integrated into my blog, with first paragraph being visible on the main page etc.
Mostly though it was just a "can it be done" experiment :)
The 50 row limit of the free tier doesn't fit my hobby project unfortunately, but it's glad to see someone developed such thing!
(it's not mine just found it on PH long time ago and the name stuck in my head)
Sheet:https://docs.google.com/spreadsheets/d/1Ze0mrYyT98Z3DupKiynC... JSON:https://spreadsheets.google.com/feeds/cells/1Ze0mrYyT98Z3Dup...
I've missed that workflow a lot (comments and edits are amazing!); I just open sourced a tiny library that saves a doc as a text file.
https://github.com/1wheel/doc2txt
https://github.com/nytimes/library/
https://zim-wiki.org/