<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: Karliss</title><link>https://news.ycombinator.com/user?id=Karliss</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 20 May 2026 20:21:09 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=Karliss" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by Karliss in "Everything in C is undefined behavior"]]></title><description><![CDATA[
<p>No UB, but the integer promotions rules apply.<p>When comparing signed and unsigned integers of same size the signed one will be converted to unsigned. In a reasonably configured project compiler will warn about it.<p>In case of integers smaller than int, promotion to int happens first.<p>In case of signed and unsigned integers of different size, the smaller one will be converted to bigger one.</p>
]]></description><pubDate>Wed, 20 May 2026 09:35:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=48205214</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48205214</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48205214</guid></item><item><title><![CDATA[New comment by Karliss in "Graphing Scientific Calculator Based on the ESP32"]]></title><description><![CDATA[
<p>The licensing information is very conflicting<p>> Hardware and software that belongs to everyone. Waiting to be OSHWA certifie<p>> Hardware & Industrial Design All rights reserved. The hardware design, including but not limited to Are proprietary and the intellectual property of Juan Ramón. No commercial use or reproduction of the hardware is permitted without express authorization.<p>Same for software, the comparison table says MIT, other parts say GPL v3.<p>Also the whole concept of exam mode which is in any way effective seems contradictory with GPLv3. Any hardware means which would limit the ability to use modified version of software would violate GPLv3.</p>
]]></description><pubDate>Mon, 18 May 2026 14:33:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=48180471</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48180471</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48180471</guid></item><item><title><![CDATA[New comment by Karliss in "GenCAD"]]></title><description><![CDATA[
<p>Even if you are completely skeptical about the AI cad model generation they also demonstrated their representation for model search/matching. Having a smarter search method for cad models based on 3d geometry in addition to traditional text search would be nice to have.</p>
]]></description><pubDate>Mon, 18 May 2026 13:29:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48179616</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48179616</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48179616</guid></item><item><title><![CDATA[New comment by Karliss in "GenCAD"]]></title><description><![CDATA[
<p>When skimming a research paper in addition to abstract don't forget to read "limitations and future work" and "conclusions".<p>In the limitation section they are quite direct with it: "images used .. are mostly isometric and noise-free CAD-images" and "limited CAD vocabulary used in this study needs to be extended by including more sophisticated CAD tokens such as revolve operation, edge operation (e.g., fillets/chamfers)". It currently supports only series of pads (can be subtractive). Many simple beginner exercises of seemingly similar complexity don't fit those constraints. Some of the parts shown could be more naturally created using wider set of tools, but technically can be created using only pads.<p>So even if you tried with clean screenshot of simple 3d model, it will likely fail if  camera settings aren't right, and it will fail if model can't be represented using series of pad operations. Anything containing spheres, cones, nearly all lathe parts, fillets which can't be included in 2d sketches will fail. In theory arbitrary extrusion angles are supported, but all examples showed only axis aligned parts.<p>That said I wouldn't be surprised if it failed even if you considered exact limitations not just similar complexity in your attempts.<p>Assuming images in the googledrive are the training data, "mostly isometric and noise-free CAD images" is a bit of understatement. All of them are at very specific angles using and single style. Specific solid gray infill color for "images", and white infill with weird shading around perimeter for "sketches". Both with white background and pixelated non antialised 1px lines. No reason to expect it capable of processing anything which doesn't have exactly same visual style. For practical product that would have to be solved but that wasn't really the point of this research. All the style transference papers have show that it's more or less solvable problem, but for a paper exploring what model architecture and 3d representation could work best for AI cad it seems like unnecessary distraction that would only bloat the training costs and time. Most annoying part is that it makes hard to test the model with your own inputs.</p>
]]></description><pubDate>Mon, 18 May 2026 13:10:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=48179316</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48179316</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48179316</guid></item><item><title><![CDATA[New comment by Karliss in "GenCAD"]]></title><description><![CDATA[
<p>This isn't B-rep based modelling. Far from it. It builds up the feature tree and then uses geometry kernel to generate B-rep based representation. The final generator output script could probably be adjusted to generate openscad. It only supports 2d drawings containing lines, arcs and circles and extrude operation for making them 3d. Operations like fillets and chamfers which depend on intermediate B-rep model state are not supported.<p>I would even argue that for basic modelling majority of tools/features in CAD operate at the abstraction closer to CSG for describing what and B-rep is only treated as how. Just like good chunk of code based CAD use combination of CSG for what and triangle mesh based geometry engine for how. That's assuming you consider standard 2d->3d operations (extrude, revolve, sweep along arbitrary 2d profile) as valid primitives for CSG.<p>User comes into direct contact of B-rep in very specific situations: 1 doing operations like fillets/chamfers/draft/thickness based on intermediate geometry, 2 attaching sketches or other features to generated geometry or using generated edges (instead of new sketches) for guiding operations like complex sweeps, 3 surface based modelling workflows where you build up the the solid from individual faces typically including complex curved surfaces.<p>In case of 1 and 2 the the dependency on b-rep based representation is only marginal, in theory you could select edges in triangle mesh based underlying representation but the final result but quality of result wouldn't be as nice and TNP issues for parametric model editing would likely be even bigger than it is for existing CAD. That's not really CSG territory anymore but isn't exclusive to B-rep either, and involves a bunch of work that's outside the scope of B-rep. In non parametric mesh modellers with more destructive editing workflows like blender chamfers and fillets work fine. And if anything for reliable parametric models you often want to limit dependencies on intermediate geometry as that depends on CAD keeping track of where each edge/face originated from outside the b-rep and increases the chance of TNP issues.<p>3 is critical for industrial design containing large amount of complex curved surfaces like cars and other consumer products, but there are also many more technical parts where it can be completely ignored. Cad tutorials for beginner tutorials almost completely ignore this category of cad modelling. The part about not being exclusive to b-rep also applies for surface modelling part.</p>
]]></description><pubDate>Mon, 18 May 2026 10:58:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=48177865</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48177865</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48177865</guid></item><item><title><![CDATA[New comment by Karliss in "Int a = 5; a = a++ + ++a; a =? (2011)"]]></title><description><![CDATA[
<p>The same rule which makes the evaluation order of a++ + ++a unsequenced also applies to (x+y+z+a+b+c) where x,y,z could be any expression (in a sane case on separate variables and without mix of pre/post increments). Breaking questionable code and introducing UB where reordering changes result is just a side effect of this.<p>Just switching between left to right or right to left wouldn't be that useful but it also permits to interleave the subexpression evaluation. Grouping memory fetches/writes, taking into account how many execution units and registers of different kinds a CPU has can have some performance benefits.<p>For example if you have something like `++a[0] + ++a[1] + ++a[2] + ++a[3]` instead of evaluating each increment one by one both GCC and Clang will vectorize it loading all 4 values from memory using single simd instruction, incrementing and then writing result back to memory. And if you add fifth one (but not 8) which needs to be handled using regular instruction, that will be done after the first 4.
 If standard defined that left subexpression of addition is fully evaluated before the right expression that wouldn't be allowed.</p>
]]></description><pubDate>Thu, 14 May 2026 22:52:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=48142332</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48142332</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48142332</guid></item><item><title><![CDATA[New comment by Karliss in "Int a = 5; a = a++ + ++a; a =? (2011)"]]></title><description><![CDATA[
<p>The UB comes from how C++ standard defines expression sequencing which is not relevant for Java. Languages other than C++ typically define such details more strictly so there is no UB or even concept of UB. JIT compilers don't change it as any non toy JIT will generate native instructions directly or through intermediate representation (instead of generating C++ text and passing that through regular C++ compiler) both of which should have much stricter semantics compared to what C++ guarantees.</p>
]]></description><pubDate>Thu, 14 May 2026 21:45:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=48141677</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48141677</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48141677</guid></item><item><title><![CDATA[New comment by Karliss in "Int a = 5; a = a++ + ++a; a =? (2011)"]]></title><description><![CDATA[
<p>That's a different category. Standard defines and uses all 3 "undefined", "implementation defined" and "unspecified" behavior. The difference between last two is that compiler isn't required to document exact behavior. Unlike UB triggering it doesn't automatically summon nasal demons and range of possible behaviors is usually described by standard.</p>
]]></description><pubDate>Thu, 14 May 2026 21:08:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=48141275</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48141275</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48141275</guid></item><item><title><![CDATA[New comment by Karliss in "Valve releases Steam Controller CAD files under Creative Commons license"]]></title><description><![CDATA[
<p>USB HID protocol has been designed with huge flexibility and self descriptive devices in mind so that in theory you shouldn't require a custom drivers for vast majority of current input devices even controllers order of magnitude more complex than anything currently sells. Just like you don't need a custom driver for each usb flash driver.<p>In practice half-assed HID drivers by OS, badly designed OS<->application APIs, hardware manufacturers copy pasting HID descriptors from other devices, not following the standard properly, firmware bugs getting fixed with drivers instead of firmware fixes, intentional discrepancies from standard, console manufacturers reinventing the wheel has lead to the current mess.</p>
]]></description><pubDate>Wed, 06 May 2026 18:59:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48040188</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=48040188</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48040188</guid></item><item><title><![CDATA[New comment by Karliss in "John Ternus to become Apple CEO"]]></title><description><![CDATA[
<p>Before iphone mobile phones were running Java applets, which were sometimes even compatible across different phone manufacturers and users even could exchange them over infrared.  In contrast first iPhone initially had no support for third party software, only web apps.</p>
]]></description><pubDate>Tue, 21 Apr 2026 13:01:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47848183</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47848183</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47848183</guid></item><item><title><![CDATA[New comment by Karliss in "Louis Zocchi, games industry pioneer, has died"]]></title><description><![CDATA[
<p>The point of percentile dice isn't to generate a string between "0%" and "100%", it is to test if action with chance of x% success gets done or not. For every o
 value of x, there are x out of 100 values which are strictly less than x, or if you count 0 as 100 then there are x out of 100 values which are less than or equal to x. Either way you get x% percent chance for event to happen. If the dice had 101 sides, the probabilities would be x/101 which aren't nice round percents.<p>It even works correctly for 0% and 100% chance events. Assuming 0 is counted as 0 - For 0% there are 0 numbers less than 0 on dice so chance of throwing number less that is 0/100=0%. For 100% all 100 numbers are less than 100 so no matter what the result of throw is you will succeed.</p>
]]></description><pubDate>Tue, 21 Apr 2026 10:38:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47846985</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47846985</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47846985</guid></item><item><title><![CDATA[New comment by Karliss in "Mechanical Keyboard Sounds – A listening Museum"]]></title><description><![CDATA[
<p>If you don't have a suitable recording just remove the entry. Reusing soundfiles doesn't help anyone and is misleading.</p>
]]></description><pubDate>Mon, 20 Apr 2026 10:52:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=47832541</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47832541</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47832541</guid></item><item><title><![CDATA[New comment by Karliss in "What are skiplists good for?"]]></title><description><![CDATA[
<p>The same reason naive BST tree (non self balancing one) doesn't work. You need to be able to add and remove elements without any knowledge of future operations and without malicious input being able to force a degenerate structure which is equivalent to a flat linked list. It's a bit similar how treap achieves somewhat balanced tree using randomness instead of deterministic rebalancing algorithms.<p>If you knew all the items ahead of time and didn't require adding/removing them incrementally you could build optimal skiplist without randomness. But in such situations you likely don't need a skip list or BST at all. Binary search on sorted list will do.</p>
]]></description><pubDate>Sun, 19 Apr 2026 12:35:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47823847</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47823847</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47823847</guid></item><item><title><![CDATA[New comment by Karliss in "CadQuery is an open-source Python library for building 3D CAD models"]]></title><description><![CDATA[
<p>It isn't even necessary to create triangle meshes during export. You can export as step files. It is a commonly used brep based file format supported by almost any "proper" CAD software. Triangle mesh based modelers can't easily export good step files because they don't operate at that level of abstraction.</p>
]]></description><pubDate>Fri, 17 Apr 2026 11:11:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47804622</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47804622</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47804622</guid></item><item><title><![CDATA[New comment by Karliss in "Taking on CUDA with ROCm: 'One Step After Another'"]]></title><description><![CDATA[
<p>You missed the note at the top "GPUs listed in the following table support compute workloads (no display information or graphics)". It doesn't mean that all CDNA or RDNA2 cards are supported.
That table is very is very misleading it's for enterprise compute cards only - AMD Instinct and AMD Radeon Pro series.
For actual consumer GPUs list is much worse <a href="https://rocm.docs.amd.com/projects/radeon-ryzen/en/latest/index.html" rel="nofollow">https://rocm.docs.amd.com/projects/radeon-ryzen/en/latest/in...</a> , more or less 9000 and select 7000 series. Not even all of the 7000 series.</p>
]]></description><pubDate>Mon, 13 Apr 2026 06:46:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47748506</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47748506</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47748506</guid></item><item><title><![CDATA[New comment by Karliss in "Steam on Linux Use Skyrocketed Above 5% in March"]]></title><description><![CDATA[
<p>Steam Deck is currently ~25% of those 5% Linux users. Good chunk but not a majority. You can estimate it in two different ways which produce similar results: filtering to Linux only looking at OS list "SteamOS Holo 64 bit" is 24.48% and in the GPU list "AMD Custom GPU 0405"+"RADV VANGOGH" add up to 23.72%.</p>
]]></description><pubDate>Thu, 02 Apr 2026 07:26:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47611114</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47611114</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47611114</guid></item><item><title><![CDATA[New comment by Karliss in "Open source CAD in the browser (Solvespace)"]]></title><description><![CDATA[
<p>There are more than dozen different viewport navigation manipulation modes, latest version added two more (Solidworks and Siemens NX).  You can pick whichever behaves closest to the program you are most used to.</p>
]]></description><pubDate>Tue, 31 Mar 2026 18:06:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=47591247</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47591247</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47591247</guid></item><item><title><![CDATA[New comment by Karliss in "OpenGridWorks: Electricity infrastructure, mapped"]]></title><description><![CDATA[
<p>It is in the bottom right corner when clicking (i) button just like the <a href="https://osmfoundation.org/wiki/Licence/Attribution_Guidelines" rel="nofollow">https://osmfoundation.org/wiki/Licence/Attribution_Guideline...</a> suggests. The only questionable part I see is that after page reload it flickers for half a second and then gets automatically hidden instead of getting hidden after manual interaction with map. Is there any other point in attribution requirements that it doesn't comply with?</p>
]]></description><pubDate>Tue, 31 Mar 2026 11:26:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47585782</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47585782</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47585782</guid></item><item><title><![CDATA[New comment by Karliss in "Show HN: Twitch Roulette – Find live streamers who need views the most"]]></title><description><![CDATA[
<p>Twitch can forward the stream as is without transcoding it. That's what transcoding not being guaranteed means. It will be a worse experience for viewers but it can work. Few years ago they even announced working with OBS on feature where streamers themselves can transcode and send multiple streams further reducing need for twitch to spend their compute resources on unprofitable streamers.</p>
]]></description><pubDate>Sat, 28 Mar 2026 06:52:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=47552243</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47552243</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47552243</guid></item><item><title><![CDATA[New comment by Karliss in "The Legibility of Serif and Sans Serif Typefaces (2022)"]]></title><description><![CDATA[
<p>Most of those 160 pages, is repetitive mish mash of various historical research (many of questionable quality) on typeface readability loosely grouped by certain themes retold in a way that makes it even less clear about their results, quality and whether testing conditions are useful for making any good conclusions.
Little value in reading it all unless you follow references and read what the quoted research actually did and said. The chapters have different thematic, but content and conclusions are very samey -> a bunch of questionable research and research which was inconclusive or didn't observe significant overall advantage of serif vs sans serif.<p>As for where it came from to me it very much feels like the defense of serif typefaces is largely typographers defending existence of their craft and people talking past each other with overgeneralized claims. There is definitely value in the art and craft of typography and I respect that. It would be too bland if everything used plain sans serif fonts that barely differ from each other, and you can definitely mess up typography making text hard to read when done badly. But I also believe that there is plenty of things based on traditions and "everyone knows x because that's how we have always done it".<p>As for sans serif for screens the obvious reason and also thing that comes up multiple times is low resolution text. At certain resolution there are simply not enough pixels for serifs. The author of paper suggest that with modern high resolution screens this argument doesn't stand. 
My personal opinion is that it's not a big issue at sufficiently high text size. But even on somewhat modern 2560x1440 screen I can find plenty of UI elements that have only 7-8 pixels high labels. Not everyone is using retina displays and not everything is long format text. Screen resolutions have increased, but so have information density compared to early computer screens, although there is recent trend of simplifying UI to the point of dumbing it down and adding excessive padding all over the place. 
There are other screens beside computers and mobile phones, many of them not very high resolution even by standards of early computer screens. It doesn't make sense to put high resolution screen and Linux computer in every little thing. Problem is made worse by lack of antialised text sometimes due to screen, sometimes MCU memory and compute limitations. You are probably not going to have modern font rendering stack on something like black and white washing machine screen, gas station pump or thermostat
The research multiple times mentioned stuff like low resolution, but it hardly ever quoted hard numbers in a meaningful way. How many pixels a typeface needs to be comfortably represent serif? How many arcseconds? Surely there must be research related to that one. This might be part of problem for some comparative research - can't compare readability of serif/sans serif if there is no serif typeface at those resolution. Stuff like point 10 or point 12 without additional details is meaningless.<p>Some personal anecdote -> text antialising has huge effect. Made a sample text of serif and sans serif font and zoomed out to the point where lower case letters are ~6px high. I wouldn't expect there to be enough resolution for serif but you can perceive surprising amount of detail in letter shapes. Zoomed in on screenshot it's a blurry mess, but at normal zoom level the serif letters are fine. It's readable but wouldn't consider either of 2 comfortable. When scaled up to 8px both pieces were still harder to read than same height text in UI labels. Why is that? Why is one identical height sans serif text much more readable than other? Are UI labels better pixel aligned? Is it due to subpixel antialising? That's on a 90deg rotated screen, is subpixel antialising even working properly there?<p>Just for fun switch OS UI font to serif. Due to font sizing inconsistency it ended up being 1 pixel shorter (7px) than same size default UI font. Can those even be considered serifs when they are hardly a pixel each? It felt weird, nowhere near as bad I expected, but still weird.</p>
]]></description><pubDate>Fri, 27 Mar 2026 08:43:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=47540310</link><dc:creator>Karliss</dc:creator><comments>https://news.ycombinator.com/item?id=47540310</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47540310</guid></item></channel></rss>