<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: timv</title><link>https://news.ycombinator.com/user?id=timv</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 15 Sep 2026 01:30:33 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=timv" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by timv in "A software engineering interview question I like: computing the median"]]></title><description><![CDATA[
<p>And there lies the tradeoffs you need to consider as part of an interview question.<p>But if the best alternative is to sort the whole collection, then Quickselect doesn't introduce a new problem. You either accept that modifying the collection in place is an acceptable behaviour (and describe that in your API docs) or you make a copy of the collection and operate on that.<p>Given a choice between quickselect and quicksort, quickselect will get the answer with less overhead and no additional constraints (because it's essentially the same algorithm with unnecessary steps removed).<p>There are alternative approaches that don't require a full copy/sort, but they either require a partial copy + partial sort, or multiple passes through the collection.</p>
]]></description><pubDate>Thu, 09 Jul 2026 04:47:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=48841106</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=48841106</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48841106</guid></item><item><title><![CDATA[New comment by timv in "A software engineering interview question I like: computing the median"]]></title><description><![CDATA[
<p>You can use Quickselect (<a href="https://en.wikipedia.org/wiki/Quickselect" rel="nofollow">https://en.wikipedia.org/wiki/Quickselect</a>) or Floyd-Rivest (<a href="https://en.wikipedia.org/wiki/Floyd%E2%80%93Rivest_algorithm" rel="nofollow">https://en.wikipedia.org/wiki/Floyd%E2%80%93Rivest_algorithm</a>)<p>Quickselect is fairly simple to understand if you already understand Quicksort. You use use a binary division but you avoid sorting sections where the order doesn't matter.<p>Let's start with a 7 element array<p><pre><code>    [ 2, 4, 7, 5, 3, 6, 1 ]
</code></pre>
We pivot on the mid-point (5) so that values less than end before it in the array and numbers larger end up after it<p><pre><code>    [ 2, 4, 3, 1, 5, 7, 6 ]
</code></pre>
Since 5 is now at an index greater than the midpoint, you know the median must be less than 5, so you don't care that 7 and 6 aren't sorted.<p>We pivot the first partition (first 4 elements) on 3 and get<p><pre><code>   [ 2, 1, 3, 4, 5, 7, 6 ]
</code></pre>
We don't care that 2 and 1 are unsorted, because we know that the median is > 3 (3 is at index #2 and we want index #3), so the median must be 4</p>
]]></description><pubDate>Thu, 09 Jul 2026 02:19:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=48840164</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=48840164</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48840164</guid></item><item><title><![CDATA[New comment by timv in "Building relationships with customers through support didn't turn out as hoped"]]></title><description><![CDATA[
<p>> You mention early in the article that you intended to base this approach as a response to your own subpar user experience with support in other products.<p>This was the biggest (<i>1</i>) complaint for me - in light of what you discovered from your actual support experience, why was your expectation so off?<p>Was it that you expected support to be full of "how do I do this complicated thing?" questions that can be answered by an expert? That's an unrealistic expectation, but I guess now you know.<p>Or was it that you really thought that customers would be happy if you just took the time to explain your pricing model to them (also unrealistic).<p>It is kind of obvious from the types of emails you get, and the types of responses you give that it was not going to lead to strong customer relationships. If all you're doing is writing a 100 words to say "No, I'm not going to do what you want" that's not going to make things better.<p>(<i>1</i>) Actually 2nd biggest - the biggest was talking about "buying Castro" but having no explanation/links about who the author is, what Castro is, or how/when/why it was bought.</p>
]]></description><pubDate>Mon, 06 Jul 2026 04:25:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48800628</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=48800628</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48800628</guid></item><item><title><![CDATA[New comment by timv in "How Shamir's Secret Sharing Works"]]></title><description><![CDATA[
<p>I wrote something like that about 15 years ago for a financial institution.<p>For what we needed, we intentionally wanted both people to be at the same terminal (it was going to be used to give shell access to a specific unix account that ran a critical system).<p>That mean that we could implement it as a setuid (root) binary that required both users to authenticate. It had a config file that worked like sudoers, and defined a list of commands that could be called, how many people were needed to authenticate, and which unix groups they had to belong to.</p>
]]></description><pubDate>Wed, 27 May 2026 04:18:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=48289578</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=48289578</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48289578</guid></item><item><title><![CDATA[New comment by timv in "Project Glasswing: Securing critical software for the AI era"]]></title><description><![CDATA[
<p>Imagine you were making purchasing decisions about which LLM-based coding tool to use.<p>If one of the possible vendors convinces you that that they have a next gen model that is so powerful it found 20+ year old bugs in a hardened operating system, that would undoubtedly have an influence on your decision even if you are only buying the current model.</p>
]]></description><pubDate>Fri, 10 Apr 2026 01:47:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47712616</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=47712616</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47712616</guid></item><item><title><![CDATA[New comment by timv in "Why Is SQLite Coded In C"]]></title><description><![CDATA[
<p>The argument here is that they're confident that the bounds check isn't needed, and would prefer the compiler not insert one.<p>The choices therefore are:<p>1. No bound check<p>2. Bounds check inserted, but that branch isn't covered by tests<p>3. Bounds check inserted, and that branch is covered by tests<p>I'm skeptical of the claim that if (3) is infeasible then the next best option is (1)<p>Because if it is indeed an impossible scenario, then the lack of coverage shouldn't matter.
If it's not an impossible scenario then you have an untested case with option (1) - you've overrun the bounds of an array, which may not be a <i>branch</i> in the code but is definitely a different behaviour than the one you tested.</p>
]]></description><pubDate>Wed, 15 Oct 2025 04:18:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=45588041</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=45588041</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45588041</guid></item><item><title><![CDATA[New comment by timv in "Cockatoos have learned to operate drinking fountains in Australia"]]></title><description><![CDATA[
<p>> This is also an unconventional drinking fountain.<p>Why do you say that?<p>At least in Australia, drinking fountains ("bubblers"!) are fairly non standardised. I don't recall seeing many with that rubber top, but the rotating release mechanism is pretty common. I'd say press buttons are more common but both are typical.</p>
]]></description><pubDate>Thu, 05 Jun 2025 01:24:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=44187414</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=44187414</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44187414</guid></item><item><title><![CDATA[New comment by timv in "BYD to offer Tesla-like self-driving tech in all models for free"]]></title><description><![CDATA[
<p>In Australia the entry level "Dolphin essential" is A$30k which is between US$18.5k and US$21k, depending on the (fairly volatile) exchange rates.<p>Still not US$14k, but not quite the $25k it is in other markets.</p>
]]></description><pubDate>Wed, 12 Feb 2025 06:02:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=43022354</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=43022354</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43022354</guid></item><item><title><![CDATA[New comment by timv in "Nintendo announces the Switch 2 [video]"]]></title><description><![CDATA[
<p>Phones have a lot of that market covered, and the Switch Lite gets close enough for a lot of people who want something other than a phone.<p>I guess Nintendo don't see enough left over space to bother trying.</p>
]]></description><pubDate>Fri, 17 Jan 2025 02:31:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=42733466</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=42733466</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42733466</guid></item><item><title><![CDATA[New comment by timv in "Nintendo announces the Switch 2 [video]"]]></title><description><![CDATA[
<p>Even Linux users in 1999 (when you had to be pretty well informed to know that Linux even existed) were truly that uninformed.<p><a href="http://www.slackware.com/faq/do_faq.php?faq=general#0" rel="nofollow">http://www.slackware.com/faq/do_faq.php?faq=general#0</a></p>
]]></description><pubDate>Fri, 17 Jan 2025 02:28:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=42733445</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=42733445</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42733445</guid></item><item><title><![CDATA[New comment by timv in "Nintendo announces the Switch 2 [video]"]]></title><description><![CDATA[
<p>The market penetration of the switch makes it harder for Sony to expand into the family/casual gaming space. That forces Sony to stick to the AAA lane (which is where their focus is) limiting their growth opportunities.<p>If the switch had been a failure, then a lot of households that currently have a switch (only) would have bought a different console and that would likely have been a PS5 (even if they held on to their previous generation console, and waited a couple of years until the PS5 price dropped below $500)<p>I have a PS4 and a Switch at home. The kids play the switch and occasionally play on the PS4. I can't justify buying a PS5 because there's only so much 
gaming time available, and family gaming is covered by the switch and my personal gaming is good enough on my PC. Take the switch out of the equation and that changes.<p>PS5 is winning the AAA console lane, no doubt. But Sony could have been making more money if they could also own a significant portion of the family console lane.</p>
]]></description><pubDate>Fri, 17 Jan 2025 01:08:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=42732952</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=42732952</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42732952</guid></item><item><title><![CDATA[New comment by timv in "Australia's 3G Shutdown – Why your 4G/5G Phone is now Blocked"]]></title><description><![CDATA[
<p>It's been more than a decade since I was involved with emergency services, but ~15 years ago there was a requirement (in Australia and elsewhere) that phones must be able to call emergency services from <i>any available network</i> even if the preferred carrier did not have service in that area. I assume that is still the case.<p>That requirement forces phones to have some degree of special handling for emergency calls. It may have required (or been interpreted to require) that a phone make emergency calls over 3G if VoLTE was unavailable. I can imagine someone deciding that means "lets just use 3G for all emergency calls" because who ever expected a case where 4G was available and 3G was not.</p>
]]></description><pubDate>Mon, 11 Nov 2024 05:18:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=42104738</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=42104738</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42104738</guid></item><item><title><![CDATA[New comment by timv in "An admittedly wandering defense of the SSO tax"]]></title><description><![CDATA[
<p><i>Its presence implies that the company both is capable of and is overcharging the people coerced into the higher price tier.</i><p>"Overcharging" is a concept without a precise meaning. The SSO-capable version has a feature that cost money to build and support. That it is sold at a higher price (often alongside other enterprise features that cost money to build and support) is not proof that they are overcharging.<p>Any company that is tying to recoup the costs of building those features will charge the customers that use those features. The existence of a price differential between the 2 editions does not tell you whether they are overcharging.</p>
]]></description><pubDate>Wed, 21 Aug 2024 04:01:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=41306662</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=41306662</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41306662</guid></item><item><title><![CDATA[New comment by timv in "Pixel Watch 3"]]></title><description><![CDATA[
<p>It's not as widely available. My bank doesn't support registering my card with GarminPay.
Pretty much every bank supports Apple and Google.</p>
]]></description><pubDate>Wed, 14 Aug 2024 00:51:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=41241460</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=41241460</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41241460</guid></item><item><title><![CDATA[New comment by timv in "The juror who found herself guilty"]]></title><description><![CDATA[
<p>It would also be interesting to consider smaller groups for discussion. Break the jury into 2 groups of 6, or 3 groups of 4 people.<p>I wonder whether you could get the benefits of weighing the evidence collectively but reduce the influence that 1 or 2 dominant jurors might have.<p>If 2 or 3 independent groups reached the same conclusion, does that increase the chances of them being correct?</p>
]]></description><pubDate>Wed, 24 Jan 2024 22:00:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=39123147</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=39123147</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39123147</guid></item><item><title><![CDATA[New comment by timv in "Timeline to remove DSA support in OpenSSH"]]></title><description><![CDATA[
<p>The main source code for DSA is here<p><a href="https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/ssh-dss.c" rel="nofollow">https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/ss...</a><p>You can see that the team did a big refactor of key handling about 14 months ago that required multiple rounds changes to the DSA code.<p>That's the sort of cost that legacy code brings - it's not about make changing to the DSA feature, it's about the cost of maintaining the DSA code when you  make changes across the codebase.<p>In the original mail, DJM mentions that they'd like to explore a post-quantum signature algorithm. Adding that to the codebase is likely to require some broad changes to key management, and that will be less work if there are fewer supported key types.</p>
]]></description><pubDate>Fri, 12 Jan 2024 02:58:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=38963106</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=38963106</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38963106</guid></item><item><title><![CDATA[New comment by timv in "Engineer Used Water Pump to Get $1B Stuxnet Malware into Iranian Nuclear Plant"]]></title><description><![CDATA[
<p>It doesn't even have to be a totally "random" (unrelated) motorcycle accident.<p>If he panicked after the Stuxnet attack, as his family is reported to have said, then it's likely he has behaving erratically and was fearful for his life.<p>That could easily translate to circumstances where he rides a motorcycle in a particularly dangerous manner - e.g. fleeing from someone he thought was Iranian/Dutch/US/Israeli intelligence (even if they weren't).</p>
]]></description><pubDate>Fri, 12 Jan 2024 01:30:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=38962332</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=38962332</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38962332</guid></item><item><title><![CDATA[New comment by timv in "Google illegally refusing to bargain with employee union, says NLRB"]]></title><description><![CDATA[
<p>The issue doesn't appear to be "pay" but conditions.<p>From the decision (linked 2 up)<p><i>At all material times, Respondents Cognizant and Google have codetermined the essential terms and conditions of employment of employees employed at the E. Parmer Lane facility and have been joint employers.</i><p>(2nd to last paragraph of "Findings of Fact > Jurisdiction")<p>The original article (the register) quotes a union member<p><i>Google and Cognizant have proceeded to make unilateral changes to our working conditions such as a forced return to office, removal of sick pay during a global pandemic, and the implementation of a 'Clean Room' policy that bars us from having our phones, paper, or pens in our office, without bargaining with our union.</i><p>The line of reasoning seems to be something like:<p>- There are decisions that Google is making that, if the workers were employees, would need to be negotiated with the union.<p>- Google is making those decisions with application to the contractors as well as their direct employees<p>- Consequently, for the purposes of union negotiation, Google is a joint employer (alongside Cognizant) of the contractors because it is making decisions that affect the workers and ought to be negotiated with a union.<p>If that is the argument, it seems fair to me.<p>If Google wants to make decisions about the employment conditions of contractors then it needs to accept that it is an "employer" of those workers. Alternatively it can decide not to make decisions about their conditions and leave all of that to Cognizant - but in that case it cannot enforce those policies on the workers until after Cognizant has negotiated with the union and reached an agreement about the the workers conditions. Google would have to make sure that every workplace policy that they wished to have applied to the contractors was handled as a contractual arrangement between Google and Cognizant, not an employment arrangement.</p>
]]></description><pubDate>Fri, 05 Jan 2024 02:38:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=38875059</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=38875059</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38875059</guid></item><item><title><![CDATA[New comment by timv in "With revenue declining, Mozilla CEO gets a 20% raise"]]></title><description><![CDATA[
<p>The purpose of a system is what it does.</p>
]]></description><pubDate>Wed, 03 Jan 2024 03:35:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=38850394</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=38850394</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38850394</guid></item><item><title><![CDATA[New comment by timv in "On a great interview question"]]></title><description><![CDATA[
<p>Do you have a reason to believe (c) is true in practice?<p>I strongly suspect many interviewers (myself included) would have a few "top issues" and significantly favour candidates who pointed them out.
But as the candidate you don't really know which issues will seem important to the interviewer.<p>It's not an irrelevant exercise though - code reviews are a real part of many roles and making sensible choices about what to comment on is a necessary skill.
But it is hard to avoid turning the interview into an exercise in "guess what's on the top of my list"</p>
]]></description><pubDate>Thu, 13 Apr 2023 12:32:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=35554396</link><dc:creator>timv</dc:creator><comments>https://news.ycombinator.com/item?id=35554396</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35554396</guid></item></channel></rss>