<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: juki</title><link>https://news.ycombinator.com/user?id=juki</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 30 Apr 2026 02:14:11 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=juki" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by juki in "Nim 2.2.6"]]></title><description><![CDATA[
<p>There are shorter options in Nim too, depending on your stylistic preferences<p><pre><code>    let sorted = entries.sorted(proc (a, b: Entry): int = cmp(a.timestamp, b.timestamp))
    let sorted = entries.sorted((a, b) => cmp(a.timestamp, b.timestamp))
    let sorted = entries.sortedByIt(it.timestamp)
</code></pre>
I suppose you could change the whole proc to something like<p><pre><code>    proc groupIntoThreads(entries: seq[Entry], threshold: int): seq[seq[Entry]] =
      let sorted = entries.sortedByIt(it.timestamp)

      for i, entry in sorted:
        if i == 0 or entry.timestamp - sorted[i - 1].timestamp > threshold:
          result.add(@[sorted[i]])
        else:
          result[^1].add(sorted[i])</code></pre></p>
]]></description><pubDate>Fri, 31 Oct 2025 16:52:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=45774115</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=45774115</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45774115</guid></item><item><title><![CDATA[Estlink cable disruption: Finnish Border Guard detains tanker linked to Russia]]></title><description><![CDATA[
<p>Article URL: <a href="https://yle.fi/a/74-20133516">https://yle.fi/a/74-20133516</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42516063">https://news.ycombinator.com/item?id=42516063</a></p>
<p>Points: 8</p>
<p># Comments: 2</p>
]]></description><pubDate>Thu, 26 Dec 2024 16:27:27 +0000</pubDate><link>https://yle.fi/a/74-20133516</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=42516063</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42516063</guid></item><item><title><![CDATA[New comment by juki in "Why America's economy is soaring ahead of its rivals"]]></title><description><![CDATA[
<p>You're misreading that. The survey ranks USA as #3 overall, but #22 on quality of life. The overall ranking is mainly thanks to the agility (#1), power (#1), entrepreneurship (#2) and cultural influence (#3). The other categories aren't that good: <a href="https://www.usnews.com/news/best-countries/united-states" rel="nofollow">https://www.usnews.com/news/best-countries/united-states</a></p>
]]></description><pubDate>Thu, 05 Dec 2024 13:01:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=42327806</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=42327806</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42327806</guid></item><item><title><![CDATA[New comment by juki in "C# almost has implicit interfaces"]]></title><description><![CDATA[
<p>I think a lot of people here are being confused by all the talk about "implicit interfaces" in the article. It's not actually talking about interfaces in C# at all, just about the old-fashioned way of passing callbacks.<p>If you consider that a problem, you would also have the same problem in any other language with first class functions. Someone might define a `readSomething(string -> int) -> ...` function. Does that mean everyone who now defines a `string -> int` function must make it suitable for `readSomething`? Obviously not. It's up to the caller to pass correct arguments to the functions they are calling.</p>
]]></description><pubDate>Fri, 26 Jul 2024 05:37:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=41076041</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=41076041</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41076041</guid></item><item><title><![CDATA[New comment by juki in "MOOC – free courses from University of Helsinki"]]></title><description><![CDATA[
<p>It seems to just be the landing page that's down. The course pages themselves still work.</p>
]]></description><pubDate>Mon, 10 Jun 2024 15:09:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=40634468</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=40634468</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40634468</guid></item><item><title><![CDATA[New comment by juki in "MOOC – free courses from University of Helsinki"]]></title><description><![CDATA[
<p>The Java course (<a href="https://java-programming.mooc.fi/" rel="nofollow">https://java-programming.mooc.fi/</a>) was being updated every year until a couple years ago when they switched to Python. I did it in 2020 and it was certainly a good introduction to programming. I don't know about the new Python edition.<p>Their web development course is also very good: <a href="https://fullstackopen.com/en/" rel="nofollow">https://fullstackopen.com/en/</a></p>
]]></description><pubDate>Mon, 10 Jun 2024 15:08:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=40634459</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=40634459</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40634459</guid></item><item><title><![CDATA[New comment by juki in "Discord monetization: microtransaction stores and paid 'exclusive memes'"]]></title><description><![CDATA[
<p>Images can also be turned off under "Text & Images" in the settings.</p>
]]></description><pubDate>Thu, 22 Jun 2023 15:16:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=36433441</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=36433441</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36433441</guid></item><item><title><![CDATA[New comment by juki in "QuestPDF: Modern .NET library for PDF document generation"]]></title><description><![CDATA[
<p>You could just build the example in C#, grab all the required dlls from it and then load them in PowerShell with `Add-Type -Path '.\QuestPDF.dll'`.<p>Unfortunately it looks like this uses extension methods for everything, and those are a pain to use in PowerShell. You'll probably want to write the PDF creation bits as a C# cmdlet instead.</p>
]]></description><pubDate>Thu, 19 Jan 2023 13:46:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=34440171</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=34440171</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34440171</guid></item><item><title><![CDATA[New comment by juki in "Microsoft is preparing to add ChatGPT to Bing"]]></title><description><![CDATA[
<p>What did you find fishy about them? They seem roughly the same, aside from the countries involved with the projects having a bit more local information.</p>
]]></description><pubDate>Wed, 04 Jan 2023 12:34:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=34244800</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=34244800</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34244800</guid></item><item><title><![CDATA[New comment by juki in "Why your REPL experience sucks"]]></title><description><![CDATA[
<p>They don't. What aidenn0 said applies to all CL implementations, although with a small correction that it's not "any already compiled forms", but rather any variables/objects that already hold the value of `#'foo` that will keep pointing to the old definition. Compiled code calling `(funcall #'foo ...)` will get the new definition normally (unless `foo` is inlined).</p>
]]></description><pubDate>Wed, 30 Nov 2022 16:28:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=33803107</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33803107</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33803107</guid></item><item><title><![CDATA[New comment by juki in "India follows EU's example in requiring USB-C charging for smart devices"]]></title><description><![CDATA[
<p>> If a significant advance in charging connectors is made, they can simply amend the law.<p>Also, I'm not sure what the Indian law says, but at least the EU version actually requires review of current technologies every 5 years.</p>
]]></description><pubDate>Fri, 18 Nov 2022 13:35:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=33654379</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33654379</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33654379</guid></item><item><title><![CDATA[New comment by juki in "The Kalevala (Crawford Translation, 1888)"]]></title><description><![CDATA[
<p>Also, for those who speak Finnish, the materials that Lönnrot and others gathered are nowadays freely available online at the Suomen Kansan Vanhat Runot database: <a href="https://skvr.fi/" rel="nofollow">https://skvr.fi/</a></p>
]]></description><pubDate>Thu, 17 Nov 2022 12:01:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=33637781</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33637781</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33637781</guid></item><item><title><![CDATA[New comment by juki in "The Kalevala (Crawford Translation, 1888)"]]></title><description><![CDATA[
<p>> And I still don’t know what the Sampo is!<p>No one does. Sampo is basically just a magical MacGuffin that brings wealth to whoever has it. In Kalevala it is usually understood as a mill that creates infinite grain, salt and money, but different folk stories have different interpretations.</p>
]]></description><pubDate>Thu, 17 Nov 2022 11:53:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=33637705</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33637705</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33637705</guid></item><item><title><![CDATA[New comment by juki in "Nushell: Introduction to a new kind of shell"]]></title><description><![CDATA[
<p>Less work than trying to add named stacks to bash. If it's so central to your workflow that you're willing to put up with the rest of bash just for it, adding a couple lines to your profile can't be that big of a deal.</p>
]]></description><pubDate>Tue, 01 Nov 2022 18:01:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=33424908</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33424908</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33424908</guid></item><item><title><![CDATA[New comment by juki in "Nushell: Introduction to a new kind of shell"]]></title><description><![CDATA[
<p>Just get the 7th path from `Get-Location` and `Set-Location` there, e.g.<p><pre><code>  function Set-StackLocation ($Position) {
    (gl -Stack).Path | select -Index $Position | cd
  }</code></pre></p>
]]></description><pubDate>Tue, 01 Nov 2022 17:17:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=33424192</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33424192</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33424192</guid></item><item><title><![CDATA[New comment by juki in "Nushell: Introduction to a new kind of shell"]]></title><description><![CDATA[
<p>Assuming you have curl installed, it'll say<p><pre><code>  curl: try 'curl --help' for more information
</code></pre>
I assume you're thinking of the old Windows PowerShell that used to have curl/wget aliased to it's own commands, but that's not the case with the new cross-platform PowerShell.</p>
]]></description><pubDate>Tue, 01 Nov 2022 15:53:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=33422921</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33422921</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33422921</guid></item><item><title><![CDATA[New comment by juki in "Nushell: Introduction to a new kind of shell"]]></title><description><![CDATA[
<p>Also make sure you're on latest version of PSReadLine (I had some problems with it not updating properly and had to do a manual `Install-Module PSReadLine -Force`) and try<p><pre><code>  Set-PSReadLineOption -PredictionSource HistoryAndPlugin -PredictionViewStyle ListView
</code></pre>
You can also toggle between the default inline and listview with F2. Also if you install<p><pre><code>  Install-Module CompletionPredictor
</code></pre>
and add this to your profile:<p><pre><code>  Import-Module -Name CompletionPredictor
  Set-PSReadLineOption -PredictionSource HistoryAndPlugin -PredictionViewStyle ListView
</code></pre>
you also get the normal intellisense autocompletions in the listview. And remember that if you have all the help files installed locally you can use F1 to view help for the current parameter/command.</p>
]]></description><pubDate>Tue, 01 Nov 2022 15:29:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=33422541</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33422541</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33422541</guid></item><item><title><![CDATA[New comment by juki in "Nushell: Introduction to a new kind of shell"]]></title><description><![CDATA[
<p>`dirs -v` would be `Get-Location -Stack`. Also in newish versions PowerShell `Set-Location` (aliased to `cd`) supports -/+ to move backwards/forwards in it's own history, so usually you don't even need to bother with `pushd`/`popd` unless you need a named stack.</p>
]]></description><pubDate>Tue, 01 Nov 2022 15:11:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=33422304</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33422304</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33422304</guid></item><item><title><![CDATA[New comment by juki in "Retrowin32, a Win32 emulator"]]></title><description><![CDATA[
<p>> blessed upgrade path for C++ applications.<p>There is C++/WinRT + WinUI 3, but looking at the screenshot that will pretty much require re-designing the whole UI so it's not going to be a simple upgrade.</p>
]]></description><pubDate>Fri, 14 Oct 2022 18:28:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=33207139</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33207139</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33207139</guid></item><item><title><![CDATA[New comment by juki in "Obsidian 1.0 – Personal knowledge base app"]]></title><description><![CDATA[
<p>> I guess it is because Edge is using the one that comes with Chrome<p>Is it? As far as I can tell, Chrome just has a plain PDF viewer with none of the annotation/highlighting/commenting/read-aloud features that Edge has.</p>
]]></description><pubDate>Fri, 14 Oct 2022 06:50:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=33200360</link><dc:creator>juki</dc:creator><comments>https://news.ycombinator.com/item?id=33200360</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33200360</guid></item></channel></rss>