3 ms·
This project is awesome! Using Google Apps Script for an appointment link is such a clever idea—just the right balance of simplicity and functionality. Google
by adobrawy 2y ago
This project is awesome! Using Google Apps Script for an appointment link is such a clever idea—just the right balance of simplicity and functionality.
Google Apps Script is such an underrated tool. I use it all the time to link up different services, and it’s truly “serverless” in a way that makes sense. No added complexity—just webhook handling and periodic tasks, which is usually all I need to sync ticket systems with Slack, pull in data from Sentry, and so on. Plus, it’s straightforward, no extra layers to worry about. LLMs are actually pretty handy for getting these scripts going too.
I use Google Calendar’s scheduling and think it’s great, but it does have limits. I still have to scrape calendar events to keep an ongoing list in a spreadsheet, which helps for billing clients by month. Google Apps Script makes all this work reliably without extra cost or maintenance.
There are other options, sure, but asking someone to set up PostgreSQL, Next.js, or Docker just for a personal scheduling link seems like overkill. For a solution that just works without needing constant attention, Apps Script is more than enough.
- tonymet 2y agoI agree with you, and I’d like your opinion on working around the cpu budgeting. Whenever I’ve needed to run a long task, like exporting gmails , I’ve needed to run it via a web browser on a loop. Have you found a workaround for long-running tasks that isn’t terribly complex?
- adobrawy 2y agoI'm not sure what operations you're doing that you're CPU bound. When exporting Gmail and hitting an execution timeout, I would implement partitioning by date. Google Apps Script has a lock mechanism ( https://developers.google.com/apps-script/reference/lock https://developers.google.com/apps-script/reference/lock ), and you can use user properties for progress tracking ( https://developers.google.com/apps-script/reference/properties/properties-service#getUserProperties https://developers.google.com/apps-script/reference/properti...() ). Therefore, you can schedule a task every x minutes to pull x days of data and keep the cursor in user properties.
- tonymet 2y agoYeah that’s what I mean. Another trick I’ve used is building a web page that reloads itself because interactive calls have more generous quotas
- kwanbix 2y agoI find it super interesting from a technical point of view, but I don't see the advantage over using cal.com.
- TechDebtDevin 2y agoI use llms to write app scripts for creating Google sheet functions and it works very nicely, well it works nicely when it works nicely, as things go with llms