<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: ThatGeoGuy</title><link>https://news.ycombinator.com/user?id=ThatGeoGuy</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 30 Apr 2026 10:37:18 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=ThatGeoGuy" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[Moving MetriCal Metrics to MCAPs]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.tangramvision.com/blog/moving-metrical-metrics-to-mcaps">https://www.tangramvision.com/blog/moving-metrical-metrics-to-mcaps</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=45278467">https://news.ycombinator.com/item?id=45278467</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 17 Sep 2025 17:03:08 +0000</pubDate><link>https://www.tangramvision.com/blog/moving-metrical-metrics-to-mcaps</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=45278467</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45278467</guid></item><item><title><![CDATA[Building Robust Filesystem Interactions in Rust]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.tangramvision.com/blog/building-robust-filesystem-interactions-in-rust">https://www.tangramvision.com/blog/building-robust-filesystem-interactions-in-rust</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44575482">https://news.ycombinator.com/item?id=44575482</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 15 Jul 2025 20:28:33 +0000</pubDate><link>https://www.tangramvision.com/blog/building-robust-filesystem-interactions-in-rust</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=44575482</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44575482</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Error Stacking in Rust"]]></title><description><![CDATA[
<p><i>You might be thinking: "But, if I see an result/error value that I didn't expect while running my program, the stack trace will help me track down the issue!" Yeah, no kidding. So, let's also start adding stack traces to our successful values, too! After, all, if I call my division function and get back a `Result::Ok` with a weird number that I didn't expect, I might want to trace that back, too, right? (This suggestion is sarcastic to prove a point. It should, hopefully, sound ridiculous to add stack traces to every return value from every function.)</i><p>I don't think I disagree with the ends you're proposing (don't add stack traces to every value, don't add stack traces specifically to Result::Err(E) variants); however, this is a bad way to justify it. Tools like dtrace / bpftrace do exactly this kind of stack tracing for both success and error cases across entire systems. This is a good thing™, and is actually very useful for both debugging, performance profiling, and understanding what your code is really doing on the hardware.<p>So I guess I disagree with how you're framing it. I would argue that adding stack traces to every value in Rust would be bad because it is a lot of overhead for something your kernel can and will do better.<p><i>The issue is that Rust's Result (and Java's checked exceptions) require a different paradigm. A Result is in the type signature because it's part of your domain's API design. It's just values. It's not </i>for* debugging. You use a debugger for that or programmatically panic when something is truly unexpected and get the stack trace from that.*<p>This really is the gist of it. However, I will say that in my experience the reason that Result types are nice (over e.g. exceptions) is that putting the error cases in the type contract means that you can have the compiler check when someone hasn't handled an error case (? and unwrap are "handling" it even if they may not always be appropriate), as well as statically verify which variants may be unused. One very frustrating thing I've had to encounter in C++ is finding a whole list of different errors that have been duplicated as multiple different opaque (e.g. behind a unique_ptr<std::exception> or some such) exceptions across the codebase.<p>Being able to know what variants of error can come out of an API is great! It just happens that working with a rich type system like Rust makes it possible to do all manner of things that languages-with-only-exceptions cannot.</p>
]]></description><pubDate>Thu, 19 Dec 2024 16:16:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=42462899</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=42462899</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42462899</guid></item><item><title><![CDATA[The Values of Work [video]]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.youtube.com/watch?v=uW1G1WCcXsk">https://www.youtube.com/watch?v=uW1G1WCcXsk</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42308663">https://news.ycombinator.com/item?id=42308663</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 03 Dec 2024 17:27:01 +0000</pubDate><link>https://www.youtube.com/watch?v=uW1G1WCcXsk</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=42308663</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42308663</guid></item><item><title><![CDATA[Modern Work Fucking Sucks]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.joanwestenberg.com/modern-work-fucking-sucks/">https://www.joanwestenberg.com/modern-work-fucking-sucks/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42307585">https://news.ycombinator.com/item?id=42307585</a></p>
<p>Points: 9</p>
<p># Comments: 2</p>
]]></description><pubDate>Tue, 03 Dec 2024 15:59:57 +0000</pubDate><link>https://www.joanwestenberg.com/modern-work-fucking-sucks/</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=42307585</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42307585</guid></item><item><title><![CDATA[The Deceptively Asymmetric Unit Sphere]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.tangramvision.com/blog/the-deceptively-asymmetric-unit-sphere">https://www.tangramvision.com/blog/the-deceptively-asymmetric-unit-sphere</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42214880">https://news.ycombinator.com/item?id=42214880</a></p>
<p>Points: 139</p>
<p># Comments: 30</p>
]]></description><pubDate>Fri, 22 Nov 2024 16:00:01 +0000</pubDate><link>https://www.tangramvision.com/blog/the-deceptively-asymmetric-unit-sphere</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=42214880</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42214880</guid></item><item><title><![CDATA[Current Zlib-Rs Performance]]></title><description><![CDATA[
<p>Article URL: <a href="https://tweedegolf.nl/en/blog/134/current-zlib-rs-performance">https://tweedegolf.nl/en/blog/134/current-zlib-rs-performance</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41358428">https://news.ycombinator.com/item?id=41358428</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 26 Aug 2024 15:53:31 +0000</pubDate><link>https://tweedegolf.nl/en/blog/134/current-zlib-rs-performance</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=41358428</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41358428</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Reflecting on transducers in Scheme (2023)"]]></title><description><![CDATA[
<p>Thanks for the heads up! Seems my excerpt urls had some errors!</p>
]]></description><pubDate>Wed, 21 Aug 2024 16:50:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=41312027</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=41312027</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41312027</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Reflecting on transducers in Scheme (2023)"]]></title><description><![CDATA[
<p><i>Quick nit/question. For the fold method, I don't think I've seen it called sentinel value. Usually it is seed or initial?</i><p>I think in Scheme it is common to call it knil, mirroring how lists use nil as the "sentinel" value which marks the end of a proper list. I opted to name it sentinel in that article (and in the docs) for two reasons:<p>1. Sentinel values are a common topic in many languages <a href="https://en.wikipedia.org/wiki/Sentinel_value" rel="nofollow">https://en.wikipedia.org/wiki/Sentinel_value</a><p>2. Transducers necessarily abstract across a lot more than loops / lists. Lisps do a lot of really cool (and optimized) stuff with lists alone and Scheme is no different in this regard. However, because of how Scheme primarily exports list operations in (scheme base) is really easy to run into a situation where lists are used in an ad-hoc way where another data structure is more appropriate. This includes vectors, sets, mappings, hashmaps, etc. Transducers-the-library is meant to be general across operations that work on all of these types, so I chose language that intentionally departs from thinking in a list-focused way.<p><i>Now, my main question. Transducer? I'm curious on the etymology of that word. By itself, I don't think I could ever guess what it was referencing. :(</i><p>This is from Rich Hickey's presentation: <a href="https://www.youtube.com/watch?v=6mTbuzafcII" rel="nofollow">https://www.youtube.com/watch?v=6mTbuzafcII</a><p>It's not a reducer, because they serve as higher-order functions that operate on reducers. Instead, the values they accept are transient through the function(s), so they transduce. You should watch the video, I think Rich explains the origins of his language very well.</p>
]]></description><pubDate>Tue, 20 Aug 2024 23:42:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=41305228</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=41305228</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41305228</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Reflecting on transducers in Scheme (2023)"]]></title><description><![CDATA[
<p>Author of the post here, hi! Funny to see this resurface again, I have made a number of changes to the transducers library since this blog post (see: <a href="https://wiki.call-cc.org/eggref/5/transducers" rel="nofollow">https://wiki.call-cc.org/eggref/5/transducers</a>).<p><i>A vector-reduce form would be trivial but icky, and I chose not to do it to not have to have the continuation safety discussion.</i><p>I am not sure what "continuation safety" refers to in this context but I wanted a library that would give me a good out-of-the-box experience and have support for commonly used Scheme types. I have not yet added any folders/collectors/transducers specific to some types (like anything related to streams or SRFI-69), but I think a broad swath of types and patterns are currently covered.<p>I think in particular my griped regarding vectors were that collectors such as `collect-vector`, `collect-u8vector`, etc. were not implemented. There is a chance to break out of these collectors using continuations but that's not really a good argument to not have them (I hope this is not what you're referring to!).<p><i>Anyway, if I read things correctly the complaint that srfi-171 has delete dupes and delete neighbor dupes forgets that transducers are not always used to or from a data structure. They are oblivious to context. That is why both are necessary.</i><p>I think this is exactly my argument: they are oblivious to context and actually do the wrong thing by default. I've seen this happen in Rust with users preferring `dedup` or `dedup_by` (from the Itertools crate) rather than just constructing a HashSet or BTreeSet. It almost always is used as a shortcut to save on a data structure, and time and again I've seen it break workflows because it requires that the chain of items is first sorted.<p>I think this is is particularly damning for a library that means to be general purpose. If users want to implement this themselves and maintain it within their own code-bases, they're certainly welcome to; however, I don't personally think making this kind of deduping "easy" helps folks in the general sense. You'd be better off collecting into a set or bag of some kind, and then transducing a second time.<p><i>From what I can see the only differences are ordering of clauses to make the transduce form generic and naming conventions. His library shadows a bunch of bindings in a non-compatible way. The transduce form is still not generic but moves the list-, vector-, generator- part of transduce into a "folder". Which is fine. But a generic dispatch would be nicer.</i><p>Shadowing bindings in a "non-compatible" way can be bad, but it also helps to make programs more clean. If you're using transducers across your codebase, you almost certainly aren't also using e.g. SRFI-1's filter.<p>As for generic dispatch: I agree wholeheartedly. I wish we had something like Clojure protocols that didn't suck. I've looked into ways to (ab)use variant records for this sort of thing, but you run into an open/closed problem on extending the API. This is really something that needs to be solved at the language level and something like COOPS / GOOPS incurs a degree of both conceptual and actual performance overhead that makes them somewhat unsatisfying :(<p>And also: thank you for SRFI-171. I disagree with some of the design decisions but had it not been written I probably wouldn't have even considered transducers as something worth having.</p>
]]></description><pubDate>Tue, 20 Aug 2024 23:31:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=41305154</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=41305154</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41305154</guid></item><item><title><![CDATA[Maybe you should store your passwords in plaintext (2023)]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.qword.net/2023/04/30/maybe-you-should-store-passwords-in-plaintext">https://www.qword.net/2023/04/30/maybe-you-should-store-passwords-in-plaintext</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41247373">https://news.ycombinator.com/item?id=41247373</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 14 Aug 2024 15:42:45 +0000</pubDate><link>https://www.qword.net/2023/04/30/maybe-you-should-store-passwords-in-plaintext</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=41247373</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41247373</guid></item><item><title><![CDATA[Whippet progress update: funding, features, future]]></title><description><![CDATA[
<p>Article URL: <a href="https://wingolog.org/archives/2024/07/24/whippet-progress-update-funding-features-future">https://wingolog.org/archives/2024/07/24/whippet-progress-update-funding-features-future</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41115687">https://news.ycombinator.com/item?id=41115687</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 31 Jul 2024 01:23:27 +0000</pubDate><link>https://wingolog.org/archives/2024/07/24/whippet-progress-update-funding-features-future</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=41115687</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41115687</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Why not just do simple C++ RAII in C?"]]></title><description><![CDATA[
<p>This is more or less what Sean Baxter was trying to do with <a href="https://www.circle-lang.org/" rel="nofollow">https://www.circle-lang.org/</a>.<p>Of course, this requires  buying into a set of tooling and learning a lot of specific idioms. I can't say I've used it, but from reading the docs it seems sound enough.</p>
]]></description><pubDate>Wed, 22 May 2024 22:22:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=40447426</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=40447426</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40447426</guid></item><item><title><![CDATA[Tasks Are the Wrong Abstraction]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.yoshuawuyts.com/tasks-are-the-wrong-abstraction/">https://blog.yoshuawuyts.com/tasks-are-the-wrong-abstraction/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=40181850">https://news.ycombinator.com/item?id=40181850</a></p>
<p>Points: 7</p>
<p># Comments: 0</p>
]]></description><pubDate>Sat, 27 Apr 2024 17:37:50 +0000</pubDate><link>https://blog.yoshuawuyts.com/tasks-are-the-wrong-abstraction/</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=40181850</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40181850</guid></item><item><title><![CDATA[Cross-Compiling Your Project in Rust]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.tangramvision.com/blog/cross-compiling-your-project-in-rust">https://www.tangramvision.com/blog/cross-compiling-your-project-in-rust</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=39360682">https://news.ycombinator.com/item?id=39360682</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 13 Feb 2024 18:06:18 +0000</pubDate><link>https://www.tangramvision.com/blog/cross-compiling-your-project-in-rust</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=39360682</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39360682</guid></item><item><title><![CDATA[Path.join Considered Harmful, or Openat() All the Things]]></title><description><![CDATA[
<p>Article URL: <a href="https://val.packett.cool/blog/use-openat/">https://val.packett.cool/blog/use-openat/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=38931643">https://news.ycombinator.com/item?id=38931643</a></p>
<p>Points: 23</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 09 Jan 2024 20:28:11 +0000</pubDate><link>https://val.packett.cool/blog/use-openat/</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=38931643</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38931643</guid></item><item><title><![CDATA[Non-Send Futures When?]]></title><description><![CDATA[
<p>Article URL: <a href="https://matklad.github.io/2023/12/10/nsfw.html">https://matklad.github.io/2023/12/10/nsfw.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=38597612">https://news.ycombinator.com/item?id=38597612</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 11 Dec 2023 04:22:12 +0000</pubDate><link>https://matklad.github.io/2023/12/10/nsfw.html</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=38597612</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38597612</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Tangram Vision's AI-powered 3D sensor could transform robotic computer vision"]]></title><description><![CDATA[
<p>I think in terms of use-cases there is bound to be a lot of overlap. Of course, in terms of comparable products, I'd have to mention that Luxonis sells a good number of different products, so understand that there's a necessary disclaimer here that HiFi isn't going to replace every possible option that Luxonis offers (especially their modules / full robot offerings, HiFi is just the sensor!).<p>In terms of how we differentiate ourselves, I think the main focus is going to be primarily in terms of depth quality and software. Our expertise in providing robust calibrations, combined with the improved optics on the HiFi allow us to produce much higher quality depth frames, more consistently, than what we see on the market today.<p>In fact, the whole purpose of building this sensor was to bring to market a 3D depth camera that provides good quality data, always, to better enable long-term autonomy. AI tools and capabilities enhance that data in a way that customers have told us existing market offerings are currently lacking.<p>As for software: We're a software company at heart, which helps, and HiFi is meant to be a flagship representation of what our software can power. We've used a lot of sensors, sensor APIs, SDKs, etc. and the number one thing we find is that these systems are complex, opaque, and difficult to debug or understand. A big part of designing software for me personally is producing software that is legible; not in the sense that one can literally read it (because reading code isn't easy), but in the sense that the software itself can be understood in the abstract. We're hoping that when we ship HiFi and the corresponding SDK that folks will appreciate the steps we've taken to make working with it understandable and obvious.</p>
]]></description><pubDate>Tue, 14 Nov 2023 20:36:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=38269359</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=38269359</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38269359</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Tangram Vision's AI-powered 3D sensor could transform robotic computer vision"]]></title><description><![CDATA[
<p>It would perhaps be more accurate to say that this is a big leap forward compared to most existing off-the-shelf depth cameras for robotics. To address the iPhone specifically: you probably aren't going to mount iPhones on a bunch of production robots in the field.<p>Comparing to other alternatives in the robotics space (I've listed RealSense and Structure above, but there are others), there is somewhat of a laundry list of potential pitfalls and issues that we've seen folks trip over again and again.<p>Calibration is a big one, and a large part of what we're doing with HiFi is launching it with it's own automatic, self-calibration process (no fiducials). There are some device failures that a process like this wouldn't be able to handle, but the vast majority of calibration problems in the field result from difficult tooling or requirements, a need to supply one's own calibration software, or a combination of hardware and software that make the process difficult. A nickel for every time someone has to train a part-time operator to fix calibration in the field, and I'd own Amazon.<p>Depth quality and precision is another big pitfall — there are folks out there today using RealSense for their robot, but we've talked to a number of folks who just don't rely on the on-board depth. It's too noisy, it warps flat surfaces, etc. Lots of little details that on the surface you might not think about when just looking at a list of cameras! Putting our edge AI capabilities aside, the improved optics and compute available on the HiFi allow us to build a sensor that always provides good depth. That sounds like a baseline for this kind of tech, but there's plenty of examples otherwise on the market today!<p>Software is probably the other last big thing that we really want to leap forward on. We don't have too much to say about our SDK today, but when we launch it we hope to make working with these sensors a lot easier. I work with RealSense quite a bit (I am the maintainer of realsense-rust), and quite honestly what has been a solid overall hardware package for many years (until HiFi, I hope) is let down by how confusing it is to use librealsense2 in any meaningful project.<p>Needless to say, I think HiFi stands on some solid merits and I'm not sure it can be directly compared to other 3D sensors in e.g. iPhones, mostly because the expected use-case is so utterly different.</p>
]]></description><pubDate>Tue, 14 Nov 2023 20:03:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=38268852</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=38268852</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38268852</guid></item><item><title><![CDATA[New comment by ThatGeoGuy in "Tangram Vision's AI-powered 3D sensor could transform robotic computer vision"]]></title><description><![CDATA[
<p>Hey all, senior engineer on the Tangram team here — we're really excited to be launching HiFi today!<p>Through past work with similar sensors [0][1], we've heard a lot of feedback about what people want from a depth camera! With our expertise in calibration & shipping sensor SDKs in the past, we saw this as an amazing opportunity to ship what we think is a big leap forward in sensing: 1.6MP cameras, AI capability (up to 8 TOPS / 8GiB onboard memory driven via TIDL), and what is most relevant to me: self-calibration and rock-solid software support.<p>I've spent the better part of my career building and helping develop multi-sensor systems! We hope you'll pick HiFi for your project (and even if you don't, none of our software is locked to any specific hardware vendor). HiFi is a great chance for us to flagship our software on a first-class piece of hardware, and we want to share that superpower with all of you!<p>[0]: <a href="https://gitlab.com/tangram-vision-oss/realsense-rust" rel="nofollow noreferrer">https://gitlab.com/tangram-vision-oss/realsense-rust</a><p>[1]: Myself, as well as various members of the team used to work at what is now <a href="https://structure.io/" rel="nofollow noreferrer">https://structure.io/</a></p>
]]></description><pubDate>Tue, 14 Nov 2023 19:25:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=38268230</link><dc:creator>ThatGeoGuy</dc:creator><comments>https://news.ycombinator.com/item?id=38268230</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38268230</guid></item></channel></rss>