<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: komlan</title><link>https://news.ycombinator.com/user?id=komlan</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 24 Jul 2026 02:33:35 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=komlan" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by komlan in "OpenAI and Hugging Face address security incident during model evaluation"]]></title><description><![CDATA[
<p>It did deliver the message to Garcia.</p>
]]></description><pubDate>Wed, 22 Jul 2026 04:43:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=49001980</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=49001980</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49001980</guid></item><item><title><![CDATA[Show HN: Ensure actionable Google Forms responses using automatic feedback]]></title><description><![CDATA[
<p>Hi HN!<p>Collecting form responses is one thing, but once you try to use them, a lot of them turn out to be unusable. Some are missing critical information or answering the wrong question (think but report with no steps to reproduce, support queries suffering from the XY problem [1], etc.). Classic required fields and regex validation help with syntax, but they can't tell you whether the answer actually makes sense for what you need to do with them.<p>I built a Google Forms add-on that lets you describe what a good answer looks like in plain text ("should say what they were doing when the issue happened", "should explain what they tried before reaching out", "should be specific, not just say it doesn't work") and then automatically emails gentle feedback to each respondent after they submit, with a submission update button. If the next submission still falls short, they hear from it again. It stops when you say it's good enough, or when you turn it off.<p>Of course, this doesn't prevent computer-generated SPAM, if the spammers learn to automatically send actionable and clear responses, but see [2].<p>A couple surprising things:<p>- Responders are more willing to update their submissions than you'd expect, as long as the feedback is tailored and specific, which this helps with.<p>- Some people engage with AI feedback more readily than with human comments. Maybe because it doesn't feel personal?<p>- Writing the feedback instructions in the setup wizard is useful by itself. You frequently realize that you were asking the wrong questions on the form, and didn't make yourself clear enough.<p>The AI writes the email based on your instructions. You can calibrate on a few test submissions to make sure you're not being too lax or too annoying. You can bring your own Gemini key, but it is not required. It hooks into the Forms submit trigger and sends email through the Gmail service by default. It's available on the add-on directory [3].<p>[1] <a href="https://xyproblem.info/" rel="nofollow">https://xyproblem.info/</a><p>[2] <a href="https://xkcd.com/810/" rel="nofollow">https://xkcd.com/810/</a><p>[3] <a href="https://workspace.google.com/marketplace/app/ai_response_feedback_for_forms/1081979139028" rel="nofollow">https://workspace.google.com/marketplace/app/ai_response_fee...</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48551311">https://news.ycombinator.com/item?id=48551311</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 16 Jun 2026 06:25:27 +0000</pubDate><link>https://workspace.google.com/marketplace/app/ai_response_feedback_for_forms/1081979139028</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=48551311</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48551311</guid></item><item><title><![CDATA[Show HN: Kyran – App Builder for Google Sheets (Apps Script Without the Pain)]]></title><description><![CDATA[
<p>Hey HN,<p>I built something I've been wanting for years: a way to access the power of Google Apps Script inside Sheets on demand, without having to switch to the code editor and remembering Apps Script APIs.<p>## Why bother?<p>Apps Script is actually underrated: it lets you do arbitrary structured logic (when formulas get unreadable/convoluted), procedural transformations, and even add custom UIs (menus, dialogs, sidebars). It goes further than macros, with triggers, etc.<p>But the pain is real: remembering the APIs, figuring out deployment, debugging code in an unfamiliar environment, etc. For non-technical folks, it’s simply inaccessible.<p>## What Kyran does<p>It lives as a Sheets add-on (sidebar). You describe what you want, it generates Apps Script code, installs it into your Sheet, and you can run it right away.<p>You can iterate in the "spreadsheet-native" way: not by reading the code, but by trying it on some data and checking the result. If it's wrong, you tweak the description.<p>The code it generates is short (usually <50 lines), uses a very limited API surface, and can be tested quickly. That makes the usual risks of AI hallucination far less of an issue in practice than in general-purpose coding.<p>## What I love (technically) about this<p>It's a narrow domain where AI codegen actually works rather reliably: small programs, well-defined APIs, immediate execution in a data-rich context.<p>It matches how people already use spreadsheets: experiment -> check results -> adjust. People asking for formula help on the internet don't usually try to decipher the monstrosities given to them, and you don't need to read the code here either. The code is running in a very tight sandbox Google spent a lot of time improving, and it's even more restricted for our use case.<p>For power users, it's essentially "vibe coding" Apps Script: you still end up with real code, just without the boilerplate and deployment tax. For others, it just makes possible something they could only dream of.<p>I've been trying it on Google Sheets forum posts asking for help, and it works great.<p>## Who might care<p>- Spreadsheet power users who regularly outgrow formulas.<p>- Engineers who hate chasing docs just to write 30 lines of Apps Script for a one-off task<p>- Ops/analyst teams that hack Sheets together as their internal "apps."<p>## Limitations<p>The scripts you create inherit the permissions of the Kyran add-on itself. Apps Script can control a lot of other Google Apps, including Drive, but I don't want to scare people away with a huge permission prompt.<p>This is therefore currently limited to manipulating the current sheet only. I hope the permission model for add-ons evolves so I can ask for any permission (like calendar access) at the exact point where user generated code needs it.<p>## Links<p>[Homepage / docs](<a href="https://blog.darkaa.com/kyran-ai-app-builder-for-sheets-user-manual/" rel="nofollow">https://blog.darkaa.com/kyran-ai-app-builder-for-sheets-user...</a>)<p>[Add-on install](<a href="https://workspace.google.com/marketplace/app/kyran_ai_app_builder_for_sheets/926707268415" rel="nofollow">https://workspace.google.com/marketplace/app/kyran_ai_app_bu...</a>)<p>You get some free requests, and can add your Gemini API key for more.<p>Yes, this has massive platform risk. Sanity is not something I can afford right now ;)<p>Would love feedback, especially from folks who've wrestled with Apps Script before.</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=45092787">https://news.ycombinator.com/item?id=45092787</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 01 Sep 2025 14:06:08 +0000</pubDate><link>https://workspace.google.com/marketplace/app/kyran_ai_app_builder_for_sheets/926707268415</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=45092787</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45092787</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Temporary QR code to validate physical presence (valid for 5 seconds)"]]></title><description><![CDATA[
<p>This is the fundamental weakness of every self-check-in system. QR codes are just information, and information can already be transmitted instantly and faked (GPS, etc.) if needed.<p>If you care about reliability, there's no way around scanning the codes yourself (instead of making attendees scan), so you can be sure that each scan maps to an actual attendee, and you're not getting 30 scans from 10 people actually present.<p>I guess self-check-in became popular in zoom calls during the covid area, but people that need reliability instantly prefer the alternative, when available.<p>Shameless self-plug: this is precisely why my Google Forms/Sheets check-in plugin is named "Qr code ticket <i>per attendee</i>" [1], because the unique ID <i>per person</i> is what makes it more reliable than self-check-in.<p>Yes, people can still send friends, but most of the time, you don't care, and it's too much of a hassle for the attendee. People sometimes worry that check-in won't be quick, but QR code reading is very fast [2], and you're only limited by how quick people move.<p>[1] <a href="https://qr-code-ticket.com" rel="nofollow">https://qr-code-ticket.com</a><p>[2] <a href="https://www.youtube.com/watch?v=-fkgCX3H7so" rel="nofollow">https://www.youtube.com/watch?v=-fkgCX3H7so</a></p>
]]></description><pubDate>Tue, 30 Apr 2024 09:16:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=40208827</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=40208827</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40208827</guid></item><item><title><![CDATA[New comment by komlan in "10 > 64, in QR Codes"]]></title><description><![CDATA[
<p>Ah, I was assuming <i>numeric</i> data rendered as hex, like UUIDs. Decimal works wonders for those, because the numeric mode of QR codes is the most efficient.</p>
]]></description><pubDate>Wed, 03 Apr 2024 18:22:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=39921062</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=39921062</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39921062</guid></item><item><title><![CDATA[New comment by komlan in "10 > 64, in QR Codes"]]></title><description><![CDATA[
<p>Hex is worse, see here [1] for UUIDs<p>[1] <a href="https://news.ycombinator.com/item?id=39094251">https://news.ycombinator.com/item?id=39094251</a></p>
]]></description><pubDate>Tue, 02 Apr 2024 13:55:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=39905810</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=39905810</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39905810</guid></item><item><title><![CDATA[New comment by komlan in "10 > 64, in QR Codes"]]></title><description><![CDATA[
<p>This is particularly useful for numeric data that is usually displayed in hex, like UUIDs [1]<p>I used this for digital QR code tickets [2], and it made the codes so much easier to scan, even with bad lighting.<p>[1] <a href="https://news.ycombinator.com/item?id=39094251">https://news.ycombinator.com/item?id=39094251</a><p>[2] <a href="https://workspace.google.com/marketplace/app/qr_code_ticket_per_row_for_event_attenda/9398047938" rel="nofollow">https://workspace.google.com/marketplace/app/qr_code_ticket_...</a></p>
]]></description><pubDate>Mon, 01 Apr 2024 15:28:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=39895171</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=39895171</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39895171</guid></item><item><title><![CDATA[New comment by komlan in "Ask HN: What non-AI products are you working on?"]]></title><description><![CDATA[
<p>I'm building a point/credit/voucher tracking tool for QR code member cards.<p><a href="https://workspace.google.com/marketplace/app/qr_code_loyalty_cards_for_vouchers/843219432713" rel="nofollow">https://workspace.google.com/marketplace/app/qr_code_loyalty...</a><p>You create a new member by filling a Google Form (they receive a digital member card with a QR code by email), and add or subtract points by scanning the QR code.</p>
]]></description><pubDate>Wed, 27 Mar 2024 07:25:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=39836423</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=39836423</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39836423</guid></item><item><title><![CDATA[New comment by komlan in "Reading QR codes without a computer"]]></title><description><![CDATA[
<p>That's neat, especially for arbitrary binary data!</p>
]]></description><pubDate>Tue, 23 Jan 2024 06:15:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=39100164</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=39100164</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39100164</guid></item><item><title><![CDATA[New comment by komlan in "Reading QR codes without a computer"]]></title><description><![CDATA[
<p>Physically bigger pixels help a lot indeed. The encoding mode also helps make pixels bigger.<p>This is very convenient when you control the QR reader and need to represent long numeric identifiers like UUIDs.<p>For example:<p><pre><code>  9728983f-7d7d-4189-b624-f92781e36650 (lowercase UUID):
    => length=36, 15 pixels between markers
  JWM9GFVXFN0RKDH4Z4KR3RV6A0 (base32 UUID):
    => length=26, 11 pixels between markers
  9728983F-7D7D-4189-B624-F92781E36650 (uppercase UUID):
    => length=36, 11 pixels between markers
  200924207194334734815443970355691218512 (decimal UUID):
    => length=39, 7 pixels between markers
</code></pre>
The uppercase UUID has bigger pixels because it used a different encoding, and gets the same results as the shorter base32 uuid.<p>The decimal UUID is a <i>longer</i> string, but results in <i>much</i> bigger pixels because it can use numeric encoding.<p>I have a QR code base attendance tracker [1], where attendees show the code [2] on their phones (glares, etc.), in bad lighting conditions, etc. Bigger pixels means scanning stays quick. Same with parcel tracking [3] where field agents might need to scan QR codes in barely-lit hallways, etc.<p>[1] <a href="https://workspace.google.com/marketplace/app/qr_code_pass_for_attendance/1028329904752" rel="nofollow">https://workspace.google.com/marketplace/app/qr_code_pass_fo...</a><p>[2] <a href="https://share.darkaa.com/!qntvtzNPWJ" rel="nofollow">https://share.darkaa.com/!qntvtzNPWJ</a><p>[3] <a href="https://admin.trak.codes/" rel="nofollow">https://admin.trak.codes/</a></p>
]]></description><pubDate>Mon, 22 Jan 2024 19:35:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=39094251</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=39094251</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39094251</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Thanks, please get in touch when you do try it!</p>
]]></description><pubDate>Sat, 30 Dec 2023 14:16:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=38815425</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38815425</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38815425</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Thanks, please don't hesitate to get in touch when you do try it!</p>
]]></description><pubDate>Sat, 30 Dec 2023 14:15:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=38815420</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38815420</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38815420</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Thanks tchalé ;)
Btw, my parents never managed to decide if they were Togolese or Ghanaian</p>
]]></description><pubDate>Thu, 28 Dec 2023 15:44:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=38794530</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38794530</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38794530</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Mostly nation by nation, but key hubs like Nigeria/Ghana (English) and Senegal/Ivory Coast (French) draw other countries in, due to the presence of a larger pool of investors.</p>
]]></description><pubDate>Thu, 28 Dec 2023 08:40:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=38791352</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38791352</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38791352</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Spot on. Fortunately, the underlying platform itself is independent of Google.<p>The Forms and Sheets add-ons are just customer acquisition channels, just like our Zapier integration [1]. These mostly use our API, and very little of our UI (mostly the scanner).<p>[1] <a href="https://zapier.com/apps/trak-qr-automation/integrations" rel="nofollow">https://zapier.com/apps/trak-qr-automation/integrations</a></p>
]]></description><pubDate>Wed, 27 Dec 2023 23:47:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=38788299</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38788299</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38788299</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Indeed; I didn't expect this level of interest, to be honest. The HN demographics didn't seem to match my target market.</p>
]]></description><pubDate>Wed, 27 Dec 2023 23:42:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=38788258</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38788258</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38788258</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>It depends on which app you are using to scan the codes. For Trak [1], the main use case is to scan QR codes <i>you</i> made yourself (or someone from your company made). The scanner simply rejects anything it doesn't recognise as a valid (app-specific) code.<p>[1] <a href="https://admin.trak.codes/" rel="nofollow">https://admin.trak.codes/</a></p>
]]></description><pubDate>Wed, 27 Dec 2023 21:45:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=38787148</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38787148</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38787148</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Wow, happy to find another QR code enthusiast here! They simplify a lot of things, indeed.<p>Great use case! I did a tool inventory management use case once, with the underlying platform [1].<p>It starts with generating QR codes for sticker papers [2], from the app. Those never expire and are all different (v4 UUID). You can then assign a QR to any new item, then scan it for registration in the app, specifying room, drawer, etc. (and gps, picture, etc. if needed).<p>You can browse tools per room, drawer, etc., and scan anytime to record an update. Each tool gets a history trail.<p>You can even make data-entry easier by making special QR codes for drawers; scanning them fills some form fields with presets, so you don't have to manually select stuff and make mistakes.<p>I mostly see use-cases where other people scan a QR you made, but there are use cases where the QR codes are only ever scanned by you and your staff.<p>[1] <a href="https://admin.trak.codes/" rel="nofollow">https://admin.trak.codes/</a>
[2] <a href="https://share.darkaa.com/!9DXEQQTg2z/trak-qr-codes-demo-hn.pdf" rel="nofollow">https://share.darkaa.com/!9DXEQQTg2z/trak-qr-codes-demo-hn.p...</a></p>
]]></description><pubDate>Wed, 27 Dec 2023 21:42:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=38787113</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38787113</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38787113</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Thank you! I stole [1] this structure from "Obviously awesome" by April Dunford.<p>[1] <a href="https://news.ycombinator.com/item?id=38786113">https://news.ycombinator.com/item?id=38786113</a></p>
]]></description><pubDate>Wed, 27 Dec 2023 21:21:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=38786901</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38786901</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38786901</guid></item><item><title><![CDATA[New comment by komlan in "Show HN: Scan QR codes to check in guests registered via Google Forms"]]></title><description><![CDATA[
<p>Thank you!<p>The main platform is currently used by national post offices (physical mail tracking), health organizations (biological samples), banks (fixed assets tracking), manufacturing plants (parts inventory tracking), etc.<p>QR codes make it easy to avoid data-entry errors in quite a large set of use cases with physical objects.</p>
]]></description><pubDate>Wed, 27 Dec 2023 20:43:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=38786503</link><dc:creator>komlan</dc:creator><comments>https://news.ycombinator.com/item?id=38786503</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38786503</guid></item></channel></rss>