<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: kdheepak</title><link>https://news.ycombinator.com/user?id=kdheepak</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 30 Apr 2026 10:17:58 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=kdheepak" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by kdheepak in "Eulogy for Dark Sky, a data visualization masterpiece (2023)"]]></title><description><![CDATA[
<p>fwiw, on iOS, I like using WeatherGraph: <a href="https://weathergraph.app/" rel="nofollow">https://weathergraph.app/</a><p>The developer is very responsive, lots of UI customization (both app and widgets) is possible, and pricing is reasonable.</p>
]]></description><pubDate>Sat, 10 Jan 2026 13:16:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=46565480</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=46565480</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46565480</guid></item><item><title><![CDATA[New comment by kdheepak in "Taskwarrior – CLI Task Management"]]></title><description><![CDATA[
<p>I see taskwarrior-tui being mentioned a couple of times in this thread. If anyone is interested in why or why not to use taskwarrior-tui, the biggest advantage of taskwarrior-tui are 3 fold:<p>1. Previously you would have to type `task report`, `task add …`, `task report` again to see how your priorities have changed. With the TUI you can get live feedback.<p>2. By default, the TUI comes out of the box with intuitive (in the author’s opinion) single-key press actions that map to various taskwarrior subcommands on single or multiple tasks.<p>3. The UI lets you as a user run 9 custom bash scripts as shortcuts that can extend features without changing the source code.<p>There are a few things not so good about it though.<p>1. Everything is accomplished by shelling out to the taskwarrior `task` cli, which has some nuances in parsing command line arguments, and all the corner cases haven’t been ironed out.<p>2. The calendar feature, the contexts feature, styling features etc are all underbaked or incomplete.<p>3. This was the author’s first Rust project and definitely needs some refactoring love.<p>The author definitely recommends reporting any issues or feature requests. He’s also extremely appreciative of the fact that people use the tool and advocate it to other people on threads like this!<p>Source: I’m the author :)</p>
]]></description><pubDate>Wed, 28 Aug 2024 03:28:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=41375648</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=41375648</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41375648</guid></item><item><title><![CDATA[New comment by kdheepak in "You probably don't need to validate UTF-8 strings"]]></title><description><![CDATA[
<p>In my opinion, one argument for internally representing `String`s as UTF8 is it prevents accidentally saving a file as Latin1 or other encodings. I would like to read a file my coworker sent me in my favorite language without having to figure out what the encoding of the file is.<p>For example, my most recent Julia project has the following line:<p><pre><code>    windows1252_to_utf8(s) = decode(Vector{UInt8}(String(coalesce(s, ""))), "Windows-1252")
</code></pre>
Figuring out that I had to use Windows-1252 (and not Latin1) took a lot more time than I would have liked it to.<p>I get that there's some ergonomic challenges around this in languages like Julia that are optimized for data analysis workflows, but imho all data analysis languages/scripts should be forced to explicitly list encodings/decodings whenever reading/writing a file or default to UTF-8.</p>
]]></description><pubDate>Thu, 16 May 2024 22:14:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=40383960</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=40383960</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40383960</guid></item><item><title><![CDATA[New comment by kdheepak in "Ratatui"]]></title><description><![CDATA[
<p>Thanks tosh, for sharing the project here! I'm one of the maintainers of Ratatui, and was pleasantly surprised to see this on HN.<p>I just wanted to add that we are welcoming contributions, so if you are interested please join us on GitHub for more discussions, feature requests or bug reports.<p>If you've built something cool with Ratatui, we'd love to hear about it on Discord or make it part of our showcase pages.<p>And if you are wondering what Ratatui is, check out our (fairly new) website for tutorials for getting started: <a href="https://ratatui.rs/" rel="nofollow noreferrer">https://ratatui.rs/</a><p>Happy to answer any questions here too!</p>
]]></description><pubDate>Mon, 11 Dec 2023 01:09:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=38596612</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=38596612</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38596612</guid></item><item><title><![CDATA[A chess TUI implementation]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/thomas-mauran/chess-tui">https://github.com/thomas-mauran/chess-tui</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=38528595">https://news.ycombinator.com/item?id=38528595</a></p>
<p>Points: 115</p>
<p># Comments: 46</p>
]]></description><pubDate>Tue, 05 Dec 2023 09:21:39 +0000</pubDate><link>https://github.com/thomas-mauran/chess-tui</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=38528595</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38528595</guid></item><item><title><![CDATA[Publishing Documents with Quarto]]></title><description><![CDATA[
<p>Article URL: <a href="https://kdheepak.com/blog/publish-documents-with-quarto/">https://kdheepak.com/blog/publish-documents-with-quarto/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=38358214">https://news.ycombinator.com/item?id=38358214</a></p>
<p>Points: 3</p>
<p># Comments: 1</p>
]]></description><pubDate>Tue, 21 Nov 2023 02:31:24 +0000</pubDate><link>https://kdheepak.com/blog/publish-documents-with-quarto/</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=38358214</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38358214</guid></item><item><title><![CDATA[Graphing CGP Grey's Rock-Paper-Scissors YouTube Game (spoiler warning)]]></title><description><![CDATA[
<p>Article URL: <a href="https://kdheepak.com/blog/graphing-cgpgrey-rock-paper-scissors-youtube-game/">https://kdheepak.com/blog/graphing-cgpgrey-rock-paper-scissors-youtube-game/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=37988703">https://news.ycombinator.com/item?id=37988703</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 23 Oct 2023 17:19:18 +0000</pubDate><link>https://kdheepak.com/blog/graphing-cgpgrey-rock-paper-scissors-youtube-game/</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=37988703</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37988703</guid></item><item><title><![CDATA[Show HN: Panvimdoc – Convert pandoc Markdown to vimdoc help]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/kdheepak/panvimdoc">https://github.com/kdheepak/panvimdoc</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=37547742">https://news.ycombinator.com/item?id=37547742</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 17 Sep 2023 18:02:50 +0000</pubDate><link>https://github.com/kdheepak/panvimdoc</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=37547742</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37547742</guid></item><item><title><![CDATA[New comment by kdheepak in "Bram Moolenaar has died"]]></title><description><![CDATA[
<p>Thanks for posting the donation link and the reminder, I've made a donation as well.<p>Vim has shaped so many aspects of my professional life; I'll forever be grateful to Bram for his work and contributions. Rest in peace, Bram.</p>
]]></description><pubDate>Sat, 05 Aug 2023 14:41:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=37012472</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=37012472</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37012472</guid></item><item><title><![CDATA[JuliaCon 2023 Is Live]]></title><description><![CDATA[
<p>Article URL: <a href="https://live.juliacon.org/">https://live.juliacon.org/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=36877232">https://news.ycombinator.com/item?id=36877232</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 26 Jul 2023 13:21:41 +0000</pubDate><link>https://live.juliacon.org/</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=36877232</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36877232</guid></item><item><title><![CDATA[New comment by kdheepak in "Panflute: Pythonic Pandoc Filters"]]></title><description><![CDATA[
<p>I just want to share my appreciation for the maintainers of his package. Sometimes I’m amazed how much work people put into a corner of the internet just because they care.</p>
]]></description><pubDate>Tue, 11 Jul 2023 18:17:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=36685061</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=36685061</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36685061</guid></item><item><title><![CDATA[New comment by kdheepak in "Ask HN: Could you share your personal blog here?"]]></title><description><![CDATA[
<p>My blog has seen more time and effort put toward trying out different static site generators than interesting posts, but I'm sharing none the less :) <a href="https://kdheepak.com/blog/" rel="nofollow noreferrer">https://kdheepak.com/blog/</a></p>
]]></description><pubDate>Wed, 05 Jul 2023 20:20:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=36606506</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=36606506</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36606506</guid></item><item><title><![CDATA[New comment by kdheepak in "Julia 1.9"]]></title><description><![CDATA[
<p>I’m very excited for this release! 
Congrats to everyone that worked so hard on this and the language in general!</p>
]]></description><pubDate>Wed, 10 May 2023 09:56:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=35885474</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=35885474</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35885474</guid></item><item><title><![CDATA[New comment by kdheepak in "Tufte CSS"]]></title><description><![CDATA[
<p>There's <a href="https://github.com/jez/tufte-pandoc-css">https://github.com/jez/tufte-pandoc-css</a> which integrates with Pandoc.<p>I use it for my blog that features margin notes from time to time: <a href="https://blog.kdheepak.com/" rel="nofollow">https://blog.kdheepak.com/</a><p>Though I had to write a lua filter to make the Pandoc margin notes work appropriately :)</p>
]]></description><pubDate>Sun, 05 Mar 2023 21:23:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=35034089</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=35034089</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35034089</guid></item><item><title><![CDATA[Programmers' Preferences for Package Names]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.kdheepak.com/programmers-preferences-for-package-names">https://blog.kdheepak.com/programmers-preferences-for-package-names</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=32289620">https://news.ycombinator.com/item?id=32289620</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Sat, 30 Jul 2022 19:37:15 +0000</pubDate><link>https://blog.kdheepak.com/programmers-preferences-for-package-names</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=32289620</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32289620</guid></item><item><title><![CDATA[WebGL Fluid Simulation]]></title><description><![CDATA[
<p>Article URL: <a href="https://paveldogreat.github.io/WebGL-Fluid-Simulation/">https://paveldogreat.github.io/WebGL-Fluid-Simulation/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=32051941">https://news.ycombinator.com/item?id=32051941</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 11 Jul 2022 03:43:56 +0000</pubDate><link>https://paveldogreat.github.io/WebGL-Fluid-Simulation/</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=32051941</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32051941</guid></item><item><title><![CDATA[Forgit: A utility tool powered by fzf for using Git interactively]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/wfxr/forgit">https://github.com/wfxr/forgit</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=31414179">https://news.ycombinator.com/item?id=31414179</a></p>
<p>Points: 99</p>
<p># Comments: 24</p>
]]></description><pubDate>Tue, 17 May 2022 17:54:19 +0000</pubDate><link>https://github.com/wfxr/forgit</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=31414179</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31414179</guid></item><item><title><![CDATA[New comment by kdheepak in "Taskwarrior"]]></title><description><![CDATA[
<p>I use `taskwarrior` every day and greatly enjoy it. There's a number of other terminal TODO management solutions that I've dabbled with but `taskwarrior` is just so feature rich and can be adapted to suit your workflow quite easily.<p>There's also `timewarrior`, which complements `taskwarrior` pretty well.<p>I'm not affiliated with the `taskwarrior` project, but I wanted to say that if you like the project and are interested in contributing, one way you can do so is by donating to their GitHub sponsors: <a href="https://github.com/sponsors/GothenburgBitFactory" rel="nofollow">https://github.com/sponsors/GothenburgBitFactory</a>. For something that I use every day, I don't mind throwing a few bucks their way, and I figured others might feel similarly so I thought I'd share :)<p>PS - If you are interested in `taskwarrior`, you may also like `taskwarrior-tui`: <a href="https://github.com/kdheepak/taskwarrior-tui" rel="nofollow">https://github.com/kdheepak/taskwarrior-tui</a>. It is a terminal user interface for `taskwarrior` that I built in my spare time. The goal is to have an auto-refreshed view of the output of `taskwarrior` where the presentation of the content is as closely styled to `taskwarrior` as practically possible with a "vim-like" interface to interact with `taskwarrior`.</p>
]]></description><pubDate>Sun, 15 May 2022 22:26:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=31391758</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=31391758</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31391758</guid></item><item><title><![CDATA[New comment by kdheepak in "I/O 2022"]]></title><description><![CDATA[
<p>That's exciting stuff! Congrats!</p>
]]></description><pubDate>Wed, 11 May 2022 21:33:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=31346117</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=31346117</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31346117</guid></item><item><title><![CDATA[New comment by kdheepak in "“I don't know the numbers”: a math puzzle"]]></title><description><![CDATA[
<p>That was a fun puzzle. I have another one that is math puzzle:<p>> You are given two eggs, and access to a 100-storey tower. Both eggs are identical. The aim is to find out the highest floor from which an egg will not break when dropped out of a window from that floor. If an egg is dropped and does not break, it is undamaged and can be dropped again. However, once an egg is broken, that’s it for that egg.<p>> If an egg breaks when dropped from a floor, then it would also have broken from any floor above that. If an egg survives a fall, then it will survive any fall shorter than that.<p>> The question is: What strategy should you adopt to minimize the number egg drops it takes to find the solution? (And what is the worst case for the number of drops it will take?)<p>I wrote up a solution for this (along with a generalized analytical solution) on my blog: <a href="https://blog.kdheepak.com/the-egg-tower-puzzle" rel="nofollow">https://blog.kdheepak.com/the-egg-tower-puzzle</a></p>
]]></description><pubDate>Sun, 08 May 2022 22:32:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=31308676</link><dc:creator>kdheepak</dc:creator><comments>https://news.ycombinator.com/item?id=31308676</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31308676</guid></item></channel></rss>