<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Jonah George</title><link>https://jonahgeorge.com/</link><description>Recent content on Jonah George</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 03 Dec 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://jonahgeorge.com/index.xml" rel="self" type="application/rss+xml"/><item><title>Spam detection in Ruby</title><link>https://jonahgeorge.com/posts/spam-detection-in-ruby/</link><pubDate>Tue, 03 Dec 2024 00:00:00 +0000</pubDate><guid>https://jonahgeorge.com/posts/spam-detection-in-ruby/</guid><description>&lt;h2 id="background">Background&lt;/h2>
&lt;p>As any good Ruby developer does, I regularly review new projects by &lt;a href="https://github.com/ankane">@ankane&lt;/a>.
Most recently I came across &lt;a href="https://github.com/ankane/transformers-ruby">&lt;code>transformers-ruby&lt;/code>&lt;/a> and have been wondering about how to leverage HuggingFace models.&lt;/p>
&lt;p>A use-case finally arose in wanting to flag potential spam messages from users in a Ruby on Rails application. I initially found the &lt;a href="https://www.driftingruby.com/episodes/detect-spam-with-ai">DriftingRuby episode &amp;ldquo;Detect Spam with AI&amp;rdquo;&lt;/a> but was dissatisfied with the need to use &lt;a href="https://github.com/driftingruby/427-detect-spam-with-ai/tree/main/spam-checker">a Python microservice&lt;/a>.&lt;/p>
&lt;p>This is my exploration in how to setup and use a permissively licensed spam detection model in Ruby.&lt;/p></description></item><item><title>Discovering &amp; reporting secrets bundled in an Electron app</title><link>https://jonahgeorge.com/posts/electron-bug-report/</link><pubDate>Mon, 21 Nov 2022 00:00:00 +0000</pubDate><guid>https://jonahgeorge.com/posts/electron-bug-report/</guid><description>&lt;blockquote>
&lt;p>[!NOTE]
To protect myself, the affected company &amp;amp; application names are changed.&lt;/p>
&lt;/blockquote>
&lt;h2 id="background">Background&lt;/h2>
&lt;p>In November 2022, as part of a consulting contract I found myself needing to configure Android devices to run in a form of kiosk-mode with
my contractor&amp;rsquo;s line-of-business app as the sole application usable on the device.&lt;/p>
&lt;p>The manufacturer of these Android devices, here-by referred to as BigCo, provided two features that allowed me to accomplish this at drastically reduced cost
compared to a traditional &lt;a href="https://en.wikipedia.org/wiki/Mobile_device_management">mobile device management (MDM)&lt;/a> solution:&lt;/p></description></item></channel></rss>