<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: subprotocol</title><link>https://news.ycombinator.com/user?id=subprotocol</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 21 Oct 2026 05:09:18 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=subprotocol" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by subprotocol in "I built a drone with only one motor [video]"]]></title><description><![CDATA[
<p>Reminded me of the Manhack: <a href="https://half-life.fandom.com/wiki/Manhack" rel="nofollow">https://half-life.fandom.com/wiki/Manhack</a></p>
]]></description><pubDate>Mon, 19 Oct 2026 19:30:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=50156913</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=50156913</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50156913</guid></item><item><title><![CDATA[Show HN: Lytics – open-source Web Analytics with Heatmaps]]></title><description><![CDATA[
<p>Hey HN,
I built Lytics because other offerings don't let you compare dimensions (all functionality is crammed into a SPA) and I wanted segment-able click tracking with accurate heatmaps.
Lytics uses the Quarkus web framework, clickhouse for the backend, and it has a query transpiler for the reports and heatmaps.  Heatmaps use a custom renderer I built, and for the best possible experience they overlay directly on your website, no iframes are used.<p>It's open source so you can dive into the code or host it yourself.<p>Live demo here: <a href="https://app.lytics.cloud/account/view/41832119/dashboard" rel="nofollow">https://app.lytics.cloud/account/view/41832119/dashboard</a><p>I would love to get feedback.
Thank you!</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46812949">https://news.ycombinator.com/item?id=46812949</a></p>
<p>Points: 5</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 29 Jan 2026 17:03:39 +0000</pubDate><link>https://lytics.cloud/</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=46812949</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46812949</guid></item><item><title><![CDATA[New comment by subprotocol in "Dithering – Part 2: The Ordered Dithering"]]></title><description><![CDATA[
<p>In chrome it says "Loading assets, please wait..." and hangs.  but it works for me in firefox</p>
]]></description><pubDate>Mon, 26 Jan 2026 20:28:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46771043</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=46771043</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46771043</guid></item><item><title><![CDATA[New comment by subprotocol in "Europe wants to end its dangerous reliance on US internet technology"]]></title><description><![CDATA[
<p>The scariest part of US internet dominance isn’t vendor lock-in, it’s executive branch chaos engineering.</p>
]]></description><pubDate>Sun, 25 Jan 2026 00:37:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=46749331</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=46749331</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46749331</guid></item><item><title><![CDATA[New comment by subprotocol in "How I estimate work"]]></title><description><![CDATA[
<p>I think the hardest part of estimation often gets glossed over: genuine technical unknowns. Not "we didn’t think hard enough," but cases where the work itself is exploratory.</p>
]]></description><pubDate>Sat, 24 Jan 2026 18:26:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=46746117</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=46746117</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46746117</guid></item><item><title><![CDATA[New comment by subprotocol in "Note-taking isn't rocket science"]]></title><description><![CDATA[
<p>Note taking is actually a big part of rocket science:
Step 1. Take notes on rocket science
Step 2. Discover and distill from notes the first principles that help decouple yourself from analog thinking
Step 3. Engineer the most efficient rocket that can practically get you there</p>
]]></description><pubDate>Sun, 18 Sep 2022 16:55:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=32889120</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=32889120</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32889120</guid></item><item><title><![CDATA[New comment by subprotocol in "Show HN: Augmenting Education with ML – Demo and Proof of Concept"]]></title><description><![CDATA[
<p>I appreciate any feedback on this demo, as well as on the broader concept.  There are many little areas I have in mind to tweak and improve the model training.  My hope is to further refine and improve, and eventually get this working on touch devices and Chromebooks—and just give it away for free.</p>
]]></description><pubDate>Wed, 28 Jul 2021 21:03:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=27989676</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=27989676</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27989676</guid></item><item><title><![CDATA[Show HN: Augmenting Education with ML – Demo and Proof of Concept]]></title><description><![CDATA[
<p>Article URL: <a href="https://subprotocol.com/system/augmenting-education-with-ml.html">https://subprotocol.com/system/augmenting-education-with-ml.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=27989674">https://news.ycombinator.com/item?id=27989674</a></p>
<p>Points: 1</p>
<p># Comments: 1</p>
]]></description><pubDate>Wed, 28 Jul 2021 21:02:45 +0000</pubDate><link>https://subprotocol.com/system/augmenting-education-with-ml.html</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=27989674</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27989674</guid></item><item><title><![CDATA[Case Discriminating OCR Neural Network Demo]]></title><description><![CDATA[
<p>Article URL: <a href="https://subprotocol.com/system/cdnn.html">https://subprotocol.com/system/cdnn.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=27025506">https://news.ycombinator.com/item?id=27025506</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 03 May 2021 14:29:03 +0000</pubDate><link>https://subprotocol.com/system/cdnn.html</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=27025506</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=27025506</guid></item><item><title><![CDATA[New comment by subprotocol in "Ask HN: Do you think Agile/Scrum is beneficial for software delivery?"]]></title><description><![CDATA[
<p>I'm an IC and can't stand scrum. However I regularly work with teams that are steeped in it. It's not really an issue because I always choose my level of participation when working with one of the scrum teams.<p>If I think the level of process and granularity is overbearing I say "no thanks" and pull the "Individuals and interactions over process and tools".  If there is one thing that I wish I would have learned earlier in my career is that it's really ok to say "no thanks".</p>
]]></description><pubDate>Thu, 04 Mar 2021 23:45:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=26350175</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=26350175</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26350175</guid></item><item><title><![CDATA[New comment by subprotocol in "Ask HN: Why aren't you coding?"]]></title><description><![CDATA[
<p>Because I'm in a zoom meeting while reading hacker news.</p>
]]></description><pubDate>Fri, 12 Feb 2021 22:46:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=26119437</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=26119437</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26119437</guid></item><item><title><![CDATA[New comment by subprotocol in "Slack Running Slow / Hanging?"]]></title><description><![CDATA[
<p>yes, was wondering about this too</p>
]]></description><pubDate>Mon, 04 Jan 2021 15:08:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=25632179</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=25632179</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25632179</guid></item><item><title><![CDATA[New comment by subprotocol in "Extremist Programming (2012)"]]></title><description><![CDATA[
<p>This hits home.  Great way to learn on a little risk free side project, where you can pivot on a whim. This is how I like to learn.<p>Unfortunately at work we have SCRUM teams that practice this methodology religiously, but not on side projects.  One team spent two months building a buggy functional wrapper around gRPC. When asked why- "We did it because it wasn't functional".  The result is gobs of wasted cycles building overly complicated and abstracted garbage, and then further amortizing that over time with ongoing escalations.<p>I'm not sure how to help them gravitate away from shiny things to focus more on outcomes (simplicity, reliability, speed of delivery, meeting needs and creating value, etc..)</p>
]]></description><pubDate>Sat, 19 Dec 2020 14:19:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=25477528</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=25477528</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25477528</guid></item><item><title><![CDATA[New comment by subprotocol in "To Lose Weight with Exercise, Aim for 300 Minutes a Week"]]></title><description><![CDATA[
<p>This. I know many folks who have a 30min - hour commute each way (pre-pandmaic).  If they lived a bit closer, and spent that time walking to/from work instead of driving, there you go.</p>
]]></description><pubDate>Wed, 09 Dec 2020 16:26:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=25360315</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=25360315</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25360315</guid></item><item><title><![CDATA[New comment by subprotocol in "1MB Club"]]></title><description><![CDATA[
<p>Wow yeah, this made my day!  It's nice not waiting 10 seconds for a video I don't want to watch to auto start playing (just so I can stop it).</p>
]]></description><pubDate>Thu, 19 Nov 2020 19:35:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=25153444</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=25153444</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25153444</guid></item><item><title><![CDATA[New comment by subprotocol in "Chrome ‘Bug’ Exempts Google Cookies from Data Privacy Settings"]]></title><description><![CDATA[
<p>FTA- "We are aware of a bug in Chrome that is impacting how cookies are cleared on some first-party Google websites. We are investigating the issue, and plan to roll out a fix in the coming days."</p>
]]></description><pubDate>Wed, 18 Nov 2020 23:34:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=25144145</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=25144145</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25144145</guid></item><item><title><![CDATA[New comment by subprotocol in "United Kingdom Budget Visualization"]]></title><description><![CDATA[
<p>Does anyone know what javascript library they are using to generate the their sankey diagrams?</p>
]]></description><pubDate>Thu, 03 Oct 2019 14:06:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=21147081</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=21147081</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21147081</guid></item><item><title><![CDATA[New comment by subprotocol in "Bitset Decoding on Apple’s A12"]]></title><description><![CDATA[
<p>It's used everywhere in analytics applications and particularly noticeable at scale.  For specific example- We use roaring bitmaps (also from Lemire) in an inverted index to make count queries instant (depending on the query and encoding, top-n queries do 20B events per second per core in our application).</p>
]]></description><pubDate>Wed, 15 May 2019 19:21:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=19922779</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=19922779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=19922779</guid></item><item><title><![CDATA[New comment by subprotocol in "AresDB: Uber’s GPU-Powered Open-Source, Real-Time Analytics Engine"]]></title><description><![CDATA[
<p>Very cool!  I love geeking out on analytics tech and look forward to studying its design further.  My take as I see it so far (please correct me if I'm wrong)-<p>* As a datapoint Pinot/Druid/Clickhouse can do 1B timeseries on one server.  AresDB sounds like it's in the same ballpark here<p>* Pinot/Druid don't do cross table joins where AresDB can.  My understanding is these are at (or near?) sub-second which would be a very distinguishing feature.  I'm not sure how this will translate to when distributed mode is built out, as shuffling would become the bottleneck.  Maybe there would be some partitioning strategy that within a partition allows arbitrary joining or something?<p>* Clickhouse can do cross table joins, but aren't going to be sub-second<p>* AresDB supports event-deduping.  I think this can easily be handled by the upstream systems (samza, spark, flink, ..) in lambda<p>* Reliance on fact/dimension tables.
  - This design/encoding is probably to help overcome transfer from memory to GPU, which in my limited experience with Thrust was always the bottleneck.
  - High cardinality columns would make dimension tables grow very large and could become un-unmanageable (unless they are somehow trimmable?)</p>
]]></description><pubDate>Tue, 29 Jan 2019 21:48:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=19030108</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=19030108</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=19030108</guid></item><item><title><![CDATA[New comment by subprotocol in "Genetic.js"]]></title><description><![CDATA[
<p>Hi HN!  I just open sourced Genetic.js, hope you enjoy!</p>
]]></description><pubDate>Wed, 27 Aug 2014 16:39:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=8233042</link><dc:creator>subprotocol</dc:creator><comments>https://news.ycombinator.com/item?id=8233042</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8233042</guid></item></channel></rss>