<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: gabereiser</title><link>https://news.ycombinator.com/user?id=gabereiser</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 24 Apr 2026 12:29:24 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=gabereiser" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by gabereiser in "Windows Copilot's is showing third-party Ads to Windows users"]]></title><description><![CDATA[
<p>Yes. I can confirm it’s regardless of SKU</p>
]]></description><pubDate>Thu, 05 Oct 2023 23:12:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=37785397</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37785397</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37785397</guid></item><item><title><![CDATA[New comment by gabereiser in "Safety vs. Performance. A case study of C, C++ and Rust sort implementations"]]></title><description><![CDATA[
<p>I'm sure the author would accept pull requests if you've got the time to show ValWithPtr safety.</p>
]]></description><pubDate>Thu, 05 Oct 2023 20:01:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=37783565</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37783565</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37783565</guid></item><item><title><![CDATA[New comment by gabereiser in "Delta finds fake jet aircraft engine parts with forged airworthiness documents"]]></title><description><![CDATA[
<p>Often what is “approved” and “delivered” conflict. In this case, they approved a part, a genuine part, but got a fake part, unbeknownst to them at the time.<p>One could say the fake part was not “approved”.</p>
]]></description><pubDate>Thu, 05 Oct 2023 12:47:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=37777898</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37777898</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37777898</guid></item><item><title><![CDATA[New comment by gabereiser in "Compile-time safety for enumerations in Go"]]></title><description><![CDATA[
<p>It’s not invalid because a string is a string. You didn’t invent a new type.</p>
]]></description><pubDate>Mon, 02 Oct 2023 12:58:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=37737486</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37737486</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37737486</guid></item><item><title><![CDATA[New comment by gabereiser in "Goodbye integers, hello UUIDv7"]]></title><description><![CDATA[
<p>I mean, if(len(O) == 32) technically is a validation but you’re right, by default it just fits for size.</p>
]]></description><pubDate>Mon, 02 Oct 2023 12:55:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=37737464</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37737464</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37737464</guid></item><item><title><![CDATA[New comment by gabereiser in "How to Pick a Programming Language (2002)"]]></title><description><![CDATA[
<p>>”Learning assembly language is basically useless at this point.”<p>I whole heartedly disagree. There’s an entire class of performance tuning you can do to math intensive applications that absolutely require knowledge of assembly to squeeze that last 0.5% out of the machine.<p>Video Games, Video Editing, Image Editing, Simulations, Scientific applications, all benefit from having some assembly sprinkled into their algorithms for speed.<p>Because of this, I don’t need crates or packages to do things for me, I’m capable of doing it on my own. I’m capable of building a 64kb demo scene executable. I’m capable of building a hardware accelerated video decoder. I’m capable of parallel vector operations because I can haz assembly. I can disassemble and reassemble binaries, libraries, files, stacks. I can even inject my own code.<p>If you have no need for speed and efficiency, then I’m sure a browser-based desktop app with some JavaScript will be fine for your use case.</p>
]]></description><pubDate>Mon, 02 Oct 2023 12:49:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=37737412</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37737412</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37737412</guid></item><item><title><![CDATA[New comment by gabereiser in "Compile-time safety for enumerations in Go"]]></title><description><![CDATA[
<p>alias and type redefinitions are conceptually the same. int and int_t are conceptually the same. I’m going to assume it’s my type, as defined in the signature of my method you’re calling. If you don’t adhere to the contract then the onus is on you. I’ll check existence, I’ll check conformity, but I won’t check that your string = my string.</p>
]]></description><pubDate>Mon, 02 Oct 2023 12:40:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=37737325</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37737325</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37737325</guid></item><item><title><![CDATA[New comment by gabereiser in "Goodbye integers, hello UUIDv7"]]></title><description><![CDATA[
<p>This is the way. Look not at the characters but at the hex.</p>
]]></description><pubDate>Mon, 02 Oct 2023 04:34:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=37734030</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37734030</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37734030</guid></item><item><title><![CDATA[New comment by gabereiser in "Goodbye integers, hello UUIDv7"]]></title><description><![CDATA[
<p>Stored in binary format, validation, more efficient due to non-cast, faster access due to non char*, being able to split the high-low, indexing and uniqueness at the byte level.</p>
]]></description><pubDate>Mon, 02 Oct 2023 04:32:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=37734019</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37734019</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37734019</guid></item><item><title><![CDATA[New comment by gabereiser in "MMO Architecture: Source of truth, Dataflows, I/O bottlenecks and how to solve"]]></title><description><![CDATA[
<p>Both of which were developed more than 20 years ago. I also think they knew the ask since they made games prior. I can see how words are confusing and math is hard.</p>
]]></description><pubDate>Mon, 02 Oct 2023 00:12:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=37732380</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37732380</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37732380</guid></item><item><title><![CDATA[New comment by gabereiser in "Influxdb made the switch from Go to Rust"]]></title><description><![CDATA[
<p>There in lies the problem. With shifting priorities and shifting strategies I don’t see them actually knowing what their market is.</p>
]]></description><pubDate>Sun, 01 Oct 2023 15:12:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=37726675</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37726675</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37726675</guid></item><item><title><![CDATA[New comment by gabereiser in "MP3 vs. AAC vs. FLAC vs. CD (2008)"]]></title><description><![CDATA[
<p>We all know the Vorbis is supreme. Get out of here with your 15 year old DRM compression riddled subpar listening formats. OGG is all that matters. Without it… we wouldn’t have Spotify. <leaves before shoe is thrown>.</p>
]]></description><pubDate>Sun, 01 Oct 2023 15:09:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=37726637</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37726637</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37726637</guid></item><item><title><![CDATA[New comment by gabereiser in "MMO Architecture: Source of truth, Dataflows, I/O bottlenecks and how to solve"]]></title><description><![CDATA[
<p>Yeah and Ultima Online was the same. I’m not talking about 1999’s definition of an MMO, when people were still using dialup.</p>
]]></description><pubDate>Sat, 30 Sep 2023 16:45:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=37717197</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37717197</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37717197</guid></item><item><title><![CDATA[New comment by gabereiser in "MMO Architecture: Source of truth, Dataflows, I/O bottlenecks and how to solve"]]></title><description><![CDATA[
<p>While I commend his efforts, it’s not even remotely MMO. A few thousand can be handled by one server. One beefy server, but one server nonetheless.<p>I’m talking about 10,000+ players. Where you need clusters of servers and synchronization techniques.<p>There have been some small multiplayer games that have tried to pass as mmo’s but without the player base in the 10k+ range, you never encounter certain classes of engineering problems.</p>
]]></description><pubDate>Sat, 30 Sep 2023 06:30:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=37713229</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37713229</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37713229</guid></item><item><title><![CDATA[New comment by gabereiser in "Compile-time safety for enumerations in Go"]]></title><description><![CDATA[
<p>In this example, *cptr is a color by contract. A Color is a type alias of a string. *cptr is a string. Interfaces match.</p>
]]></description><pubDate>Sat, 30 Sep 2023 02:44:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=37712369</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37712369</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37712369</guid></item><item><title><![CDATA[New comment by gabereiser in "Compile-time safety for enumerations in Go"]]></title><description><![CDATA[
<p>It is enforced by the compiler, what it doesn't do is guarantee it at runtime. I agree with you on the enums. Go doesn't have a reliable enum construct. But the argument that I, the library author, must validate and check against any possible type of "color" you, the program author, can come up with is just crazy talk. I'll provide a Color type, I'll even pre-define some colors for you, but if you send me a Color that's rainbow, I'll panic.</p>
]]></description><pubDate>Sat, 30 Sep 2023 02:41:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=37712362</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37712362</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37712362</guid></item><item><title><![CDATA[New comment by gabereiser in "Compile-time safety for enumerations in Go"]]></title><description><![CDATA[
<p>‘type Color string’ is just a type alias for string.<p>Likewise GLint is just a type alias for int. There are only value types (str, int, float, etc), everything else is a construct. The only true types are those value types (and pointers to them). If you call a type a Color and I call a type a Color, you are using my lib to build a program (not me using yours), you must adhere to my contract of what a Color type is to my API. Period. You can not call a function with an unknown type and expect it to behave properly.<p>If it panics, it’s your fault.</p>
]]></description><pubDate>Sat, 30 Sep 2023 01:31:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=37712052</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37712052</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37712052</guid></item><item><title><![CDATA[New comment by gabereiser in "MMO Architecture: Source of truth, Dataflows, I/O bottlenecks and how to solve"]]></title><description><![CDATA[
<p>Oh I feel for the author. I’ve made games. I’ve made distributed web platforms. I have profound respect for modern mmo architectures because of one, nasty, “I wish this wasn’t a thing” class of data. State. Who, where, what animation, what modeled entity, is in my party, on my screen, under my axe. Synchronized playback of my swing to my party members so we all yell in excitement at the same time when the boss falls. This level of synchronization across shards (server clusters of servers) is enormously complex. Not to mention just writing “net code” in general. Network speed is the biggest issue and often TCP isn’t enough. You need network prediction. Where will they be based on position, direction, etc until I receive the next packet. I can then error check the prediction with the actual and correct. If UDP is available to you, you use it so you can deliver that state as fast as possible, with no ACK back and forth. A combination of UDP state transfer peer2peer for animation and basic state, TCP network connections for services and server state, REST for that auction house. SQS or pub/sub for that item delivery and party/match making/world chat. It’s a beast of a problem.<p>Rewind 15-20 years ago and all the folks who wanted to make a game, their first game, and they want to build an mmo. None of them succeeded. Not 1. The only ones since were from people who knew the ask. Or had a crowdfunded ponzi scheme.</p>
]]></description><pubDate>Sat, 30 Sep 2023 01:19:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=37712004</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37712004</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37712004</guid></item><item><title><![CDATA[New comment by gabereiser in "Has a San Antonio inventor solved a problem of small-scale wind power?"]]></title><description><![CDATA[
<p>This is where battery and storage comes into play. We aren’t limited to harnessing power the moment we need it, we can store it for later.</p>
]]></description><pubDate>Sat, 30 Sep 2023 01:03:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=37711912</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37711912</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37711912</guid></item><item><title><![CDATA[New comment by gabereiser in "Has a San Antonio inventor solved a problem of small-scale wind power?"]]></title><description><![CDATA[
<p>Potential and realized are different things. I could potentially run at light speed…</p>
]]></description><pubDate>Sat, 30 Sep 2023 01:01:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=37711908</link><dc:creator>gabereiser</dc:creator><comments>https://news.ycombinator.com/item?id=37711908</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37711908</guid></item></channel></rss>