<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: servbot</title><link>https://news.ycombinator.com/user?id=servbot</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 27 Oct 2026 13:13:38 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=servbot" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by servbot in "A 10-year-old CNN outperforms frontier LLMs for skin cancer diagnosis"]]></title><description><![CDATA[
<p>I've found that while this technically true, if you're building a classifier of any importance, you're going to need to monitor it and grade the efficacy of any changes, which will require labeled data anyways.<p>This kind of approach works for one-shot "let's just see if it works" type stuff, but anything that I would stand behind needs at least some level of labeled data and curated dataset.</p>
]]></description><pubDate>Sun, 25 Oct 2026 21:19:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=50236162</link><dc:creator>servbot</dc:creator><comments>https://news.ycombinator.com/item?id=50236162</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50236162</guid></item><item><title><![CDATA[New comment by servbot in "SpaceX launches mission for 2 NASA astronauts who are stuck on the ISS"]]></title><description><![CDATA[
<p>So is this a reflection on Boeing engineering culture? Seems it would be, I remember comments from previous articles saying it is.</p>
]]></description><pubDate>Sun, 29 Sep 2024 02:56:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=41684498</link><dc:creator>servbot</dc:creator><comments>https://news.ycombinator.com/item?id=41684498</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41684498</guid></item><item><title><![CDATA[New comment by servbot in "Code reviews do find bugs"]]></title><description><![CDATA[
<p>I have to favorite mantras related to this:<p>There is nothing more permanent than temporary.<p>... and ...<p>We don't have time to do it right, but we do have time to do it twice.</p>
]]></description><pubDate>Fri, 05 Jul 2024 06:34:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=40880273</link><dc:creator>servbot</dc:creator><comments>https://news.ycombinator.com/item?id=40880273</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40880273</guid></item><item><title><![CDATA[New comment by servbot in "Why I love Common Lisp and hate Java (2012)"]]></title><description><![CDATA[
<p>Here is something from Clojure that stuck with me as particularly elegant:<p>The -> macro.<p><pre><code>  (-> {}
      (add-person 'servbot)
      add-age
      add-info
      add-to-db
      notify-status-by-email
      log-user-addition
  )
</code></pre>
So the threading operator is exactly what you ask. It inserts the results of the previous expression as the first argument as the first argument as the next expression. Note this still supports situations where an expression can take more than one argument.<p>Additionally, there is the ->> operator which inserts the previous result as the last argument in the next expression and some a library that includes the "magic wand" operator "-<>" ala<p><pre><code>  (-<> {}
      (add-person 'servbot)
      (add-age 21 <>)
      (add-info 'servbot <> 21)
      (add-to-db 'my-db-handle 5432 <>)
      notify-status-by-email
      (log-user-addition 'dev 'email <> 'paint-by-numbers)
  )
</code></pre>
This particular set of macros seems entirely trivial until you use it, and then it changes your entire perspective of what functions do since your ability to express the computation pipeline changes completely.<p>Edit: Update for formatting.</p>
]]></description><pubDate>Sun, 04 Nov 2018 03:26:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=18374004</link><dc:creator>servbot</dc:creator><comments>https://news.ycombinator.com/item?id=18374004</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=18374004</guid></item><item><title><![CDATA[New comment by servbot in "Why we switched from Python to Go"]]></title><description><![CDATA[
<p>Thank you for the insights on Go and how Go has added value to your
organizations and enabled a better environment for development at your
organization! I love hearing viewpoints on tradeoffs and general evaluations on
value of new(ish) development technologies.<p>I'd also like to point out that I write this a Python-phile that has come to the
understanding that Python is great until it isn't. When Python becomes to
burdensome, the understanding of the problem delivered by my Python sketch
helps to narrow the focus of what I need to solve the problem efficiently. By
that time, Go has never been the correct tool <i>for me</i>. I'm comfortable writing
solutions in C, Rust and Java, perhaps this is my problem.<p>Whenever I read or write Go I don't understand how it managed to capture the
mindshare that is has. Especially in the face of other technologies available,
Go seems like a timid step forward in descriptions of computation, when there
are bolder choices that deliver valuable additions to my development ecosystem.<p>I appreciate that Go places a premium price on simplicity, however with
languages like Rust make some big steps towards static guarantees at compile
time the guarantees that Go makes seem pretty weak. But I feel that when I make
the leap from Python to Go, I admittedly don't understand the allure. Static
compiltion is really nice! Statically linked binaries for distribution is very
nice! The tooling is out of this world! Hands down, Go has one of the best out
of the box toolchains I've ever encountered. But when helping me think about
computation, Go doesn't.<p>Go's concurrency primitives don't feel like a great deal of a step forward
compared to C. I know, I know, this is crazy talk. I feel like I am missing some
great wisdom about Go, I truly do. Concurrency is really hard and Go has clearly
helped a lot of people minimize concurrency problems. But whenever I use
channels I am reminded Go does not allow me to shut my brain off, and whenever
the deadlock bug strikes, I feel that I might as well be writing C.<p>I don't mean to disrespect Go and the great things it does, the opposite of
that! I am hoping Go delivers a bulletproof abstraction for concurrency. Until
then I've become too familiar with other tools to justify using Go for more than
incredibly niche use cases. I really hope that will change (both my mindset and Go)!</p>
]]></description><pubDate>Wed, 18 Oct 2017 00:17:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=15496032</link><dc:creator>servbot</dc:creator><comments>https://news.ycombinator.com/item?id=15496032</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=15496032</guid></item><item><title><![CDATA[New comment by servbot in "Python 3.5.0"]]></title><description><![CDATA[
<p>From:<p><a href="http://legacy.python.org/dev/peps/pep-0465/#id24" rel="nofollow">http://legacy.python.org/dev/peps/pep-0465/#id24</a><p>Implementing __matmul__, __rmatmul__ and __imatmul__ will allow you to apply this operator to any given class. In that light, you could subclass the numpy matrix class yourself and simply apply these.<p>As for whether these will be applied to Python lists, my speculation is: I doubt it. Its possibly the most commonly used data structure, and I doubt they would add the overhead of another set of methods on each instance.</p>
]]></description><pubDate>Sun, 13 Sep 2015 16:06:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=10211807</link><dc:creator>servbot</dc:creator><comments>https://news.ycombinator.com/item?id=10211807</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=10211807</guid></item></channel></rss>