My blog is now generated by Google Docs
benwiser.com
benwiser.com
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.
(Sorry for the seemingly drive-by, this really annoys me in Play Store update release notes!)
</span></p><p style="padding:0;margin:0;color:#000000;font-size:11pt;font-family:"Arial";line-height:1.15;orphans:2;widows:2;height:11pt;text-align:left"><span style="color:#000000;font-weight:400;text-decoration:none;vertical-align:baseline;font-size:11pt;font-family:"Arial";font-style:normal"></span></p><p style="padding:0;margin:0;color:#000000;font-size:11pt;font-family:"Arial";line-height:1.15;orphans:2;widows:2;text-align:left"><span style="color:#000000;font-weight:400;text-decoration:none;vertical-align:baseline;font-size:11pt;font-family:"Arial";font-style:normal">
Exporting HTML was the easy way out for me. I haven’t investigated the accessibility impact but the file sizes are minimal so it didn’t feel like a massive trade off.
What's amazing to me here is that I've gone through every single link I can find in these comments and haven't found anything close to a plug and play approach to creating static websites generated from Google Docs (say 1 hour at most for a fairly technical person to set up; just stringing together configuration options in e.g. Netlify, Gitlab, and perhaps Google Sheets for routing).
This is not just academic. In the early days of the US COVID pandemic response, I helped instigate the creation of n95reuse.com — a collection of the best public information available on reusing n95 masks, which was used by a number of hospitals (now thankfully the more authoritative n95decon.org exists).
This worked OK as Google Doc redirected from a memorable domain, but would have been much better as a dedicated site. But there was no good way to maintain that as we were rapidly gathering feedback and suggestions from folks on the front lines, and it would have been too much overhead for our small bandwidth constrained volunteer team. Our less professional site with a long redirected URL means that less people saw this, and more healthcare workers were likely using more unsafe protocols (or were spending crucial time replicating our research; we saw this everywhere). And people likely died.
And this is not the first urgent project I've needed this sort of tool for.
So if someone has done this plumbing and documents it, ideally with at least one good theme, please please, let me know (see profile for contact info, or respond to the thread on this here: https://twitter.com/metaviv/status/1245147106697863168). At some point I might figure it out myself, but have not had a chance yet.
We do have a template system though so it would be possible for a frontend dev to design their own wrapper for the content.
For now "See, edit, create, and delete all of your Google Drive files" is definitely a deal breaker for many, but if you can restrict to one folder, that would be amazing. (As a user, I would currently use a throwaway account, and then share that Google folder with a real one).
Also wasn't obvious how to remove the page footer; did I miss an option?
Yes - dealing with access to a users entire drive is something we are looking at to try and get working for exactly that reason - the words `this app can delete all your files` is scary :-)
There isn't an option to remove the footer but should be +1 added to backlog - thanks again!
We have a Facebook page for live questions, but fast figured out we needed a place for best practice that could be edited by everyone.
For orders we use Google Sheet and had to split the sheets in regions because it’s gets slow if more than 300 people edit on the same time. Got regional coordinators to help with the coordinations both within the regions and send excess shields between the regions.
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
https://www.gatsbyjs.org/packages/gatsby-source-google-docs/
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.
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
npx doc2txt 1StMiAtcY6bY6yEIQp5pVSGdIHSnZG-kFspdmsSzAJdE --outpath gettysburg.txthttps://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...
Instead of generating HTML from markdown & sticking it in a template, your posts are HTML and you stick them in a template. Instead of hand-writing the HTML, you're using an HTML WYSIWYG editor (google docs).
Unless I'm missing something this is a static site generator. And if it suits your needs that's fantastic, sometimes I feel like markdown & git tracking is overkill as well (what I do). The primary thing holding me back from this is lack of code snippets.
Incidentally how does it handle images?
My take: https://sequoia.makes.software/lets-code-it-static-site-gene...
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 :)
Your original HN thread about it here: https://news.ycombinator.com/item?id=18077446
I'm not that familiar with how Google provisions various permission schemes -- is there any way to do what you do with a bit more restrictive permissions than the manipulation of the entire Drive account?
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...
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 think part of my opinion comes from that latex/vim bent, where you're using very programmatic, specific idioms to get what you wrote, and if you're less comfortably with that then maybe you appreciate all the work of building some google docs based on monstrosity, but the more experience I've gained, the more I've learned to use the right tool for the job. Google docs isn't a blogging tool, so don't use it as one.
For me the Google dependency would be bothersome, but the reality is I still end up using Google Docs for authoring text collaboratively. (At least where Overleaf won't do)
A while ago was facing a similar dilemma, so I went with this:
Plus a one-step deploy process made in Ansible by a friend of mine.
My take is that while Sapper isn't exactly production-ready, it's a otherwise competent static-site generator.
I write my posts in markdown and the system adds styling and modifications like target=_blank for links in a consistent manner.
Best thing about it is that I managed to use the experience from building my blog to help a friend who's an artist to set up his webcomic - also a static site.
The friend in question knows how to use FTP but that's about the extent of his technical skills, so the process involves him modifying a JSON file by adding an object with the comic title, flavour text and of course image URL to an array, running the generator and uploading the result.
The landscape of systems for this use case is pretty horrible, so this approach proved to be more pragmatic.
Of course it works only if the backend side is simple and predictable, but nevertheless it does the job.
[0] SSR framework based on Svelte.
That'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.
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.
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.
- Seeing print-style page breaks in docs
- Formatting images. Although, having Google host them is nice
- The html Google Drive generates is inlined, inconsistent, and pretty nasty. I resorted to using markdown in Docs.
1. https://github.com/psaia/allwrite-docs- There was a spreadsheet with the list of articles and some meta-information such as publication date, "published" flag, etc. This was then extracted with https://github.com/franciscop/drive-db on a Node.js backend.
- Then each article was written as a single google docs document, so we could edit them collaboratively.
Meta: The front-end was built with https://picnicss.com/, which is a library I also created for this project.
With that, you also get support for embedded objects like Youtube videos and the like :)
Feel free to reach out for more info!
https://blog.phuaxueyong.com/post/2020-02-29-articles-in-sec...
Some might like this adoption of the idea: I work in consulting and have to prepare presentations all of the time.
Therefore, I created a Powerpoint generator that uses a Google Sheet as a source: http://demo.inf.university
<-- It doesn't look spectacular, but it saved me really a lot of time. “Can you prepare a briefing about X,Y,Z” – “Sure, it will take -cough- about 3 days” :-)
[1]: https://youtu.be/luM5uobewhA?t=1301
[2]: http://archieml.org/
We think it's perfect for documentation for non-technical companies who don't know what Markdown is.
You are quite right that if you want to quickly publish a single page - using Google docs directly would be faster :-)
Thanks for giving it a test!
I built https://versoly.com/ you can get a blog started is less than 5 minutes.
I have sees a lot of folks talk about gatsby and static site generators but most never blog.
They spend too much time playing with style sheets etc.
The simplest "CI/CD", and closest to the material (plain text files), is usually the best in practice, especially for a one-man operation.
Iterate into complexity on a need-to-basis.
different personalities, I suppose.
Also run by Google. Also subject to all their rules. But also robust with a simple clean interface.
I wish there were a simple free way for me to enjoy free speech. I already pay for dropbox. Why can't dropbox let me assign a folder in my account become a blog.
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 really don't like your blog