HNHacker News
TopNewBestAskShowJobs

jcelerier

11,884 karma · joined February 22, 2016

https://jcelerier.name

https://celtera.dev

https://ossia.io lead dev

https://twitter.com/jcelerie

submissionscomments
jcelerier··on 10Gb/s Ethernet: switching to a Broadcom SFP+ module
It's crazy to me to think that I was hoping to move my home network to 10GbE in the next few years, around 2006-2007... Twenty years after most home networking is still at the 2005 level of a 30€Netgear GS108
jcelerier··on Orthodox C++ (2016)
Pretty sure esp32 just rebooted automatically when unhandled exception is thrown for instance
jcelerier··on Orthodox C++ (2016)
> If you add exceptions to a library that didn’t previously use them then I almost definitely have to update my code.

No, that's the whole point. You let them bubble up to the top of the event loop and you report the error to the user. As a user, anything else leads to shitty software where the programmer tries to outsmart the world around them (and fails, obviously, leading to worse end-user experience than just admitting that you don't and can't have control over everything)

jcelerier··on Lines of code got a better publicist
> More nails does not create more house.

sure, but less nails definitely prevents you from having more house

jcelerier··on Orthodox C++ (2016)
> If you crash from an unhandled exception, you don't.

.. you absolutely get a stack trace from unhandled exception in c++, that starts where the exception is thrown? At least with clang and GCC, maybe MSVC isn't able to.

foo.cpp:

    #include <stdexcept    
    void bar() { throw std::runtime_error("boo"); }
    void foo() { bar(); }
    int main() { foo(); }

running:

    $ g++ foo.cpp -std=c++23 -g
    $ ./a.out
    terminate called after throwing an instance of 'std::runtime_error'
      what():  boo

    $ coredumpctl gdb
    ...
    #7  0x00005555555551bb in bar () at foo.cpp:3
    #8  0x00005555555551da in foo () at foo.cpp:4
    #9  0x00005555555551e6 in main () at foo.cpp:5

it's a basic example, but it's how I've always done all my debugging in C++ since forever
jcelerier··on Every Frame Perfect
It's crazy for me to think that people cannot see how wrong it is from the normal speed video. For me it's obvious and infuriating, it physically feels like it's punching my retina
jcelerier··on Lines of code got a better publicist
> If you can deliver the same thing in fewer correct lines of code

it really depends on what you're doing. If your goal is "become interoperable with the N different and incompatible network protocols that people have devised for doing task X" I'd really like to know a solution that doesn't have at least some part of the amount of code that scales with N.

Example: consider https://bitfocus.io/connections which connects to 700 different things. Right now it's written with Node.JS, with one repo per connection (example: https://github.com/bitfocus/companion-module-meyersound-gala...). Let's say you want to make a similar product but that runs on ESP32 where performance is paramount so you need C++ or Rust. How do you do that without at least as many lines of code as the existing JS implementations for every system supported by Companion?

jcelerier··on Port React Compiler to Rust
Apparently roughly ~150k math PhDs live on earth right now, assuming they all know Lean that's between 0.001% and 0.002% of earth population so quite closer to no one than one
jcelerier··on Openrsync: An implementation of rsync, by the OpenBSD team
Allowing closed-source to exist is always the less moral choice for many reasons (one example being ecological sustainability)
jcelerier··on Perceptual Image Codec: What Matters in Practical Learned Image Compression
> How fast do you want your slideshow to be?

we're in 2026, 240hz screens are becoming common. Nothing in the end-user experience should take more than 3-4ms. My personal goal when developing is keeping things at at least 60FPS and ideally 120 when building the whole stack with ASAN / UBSAN / stdlib's debug modes.

For instance when looking at this the first thing I thought was to try to make an installation which permanently recurses the codec's application on itself at each frame, to give the impression of a constantly moving landscape. Impossible on a smaller machine if computing a single frame takes 150ms.

jcelerier··on Perceptual Image Codec: What Matters in Practical Learned Image Compression
would be great to have the weights somewhere
jcelerier··on Silk: Open-source cooperative fiber scheduler
or maybe erlang / elixir do not have 1/1000th of the libraries and features available to C++ thus it's more efficient to port what can be ported? would you rather have the whole of C++ ported to erlang?
jcelerier··on Converting an Integer to a Decimal String in Under Two Nanoseconds
next intel cpus will have AVX 10.2 & APX
jcelerier··on Converting an Integer to a Decimal String in Under Two Nanoseconds
export to large files that represent numbers in textual format for instance ? this can be the difference between "waiting 10 seconds when hitting ctrl-s" and "the software saving automatically on each change because it's unnoticeable"
jcelerier··on Time to talk about my writerdeck
> it's OK to not be the most efficient all the time

is it ? it's a non-negligible reason for the absolutely unsufferable technological world we are currently living in

jcelerier··on Wi-Wi is wireless time sync at 1 nanosecond
out of dozens of laptops and computers we have where I work, we have maybe 3 that have a PTP-compatible NIC.
jcelerier··on Was my $48K GPU server worth it?
You could almost sell a RTX 3090 for more today than what it cost brand new when it came out six years ago
jcelerier··on Cost of enum-to-string: C++26 reflection vs. the old ways
the only thing that should be standardized are things that cannot be done through libraries in an efficient way. Boost.PFR is great, I built a lot of things on it, but eventually you hit the limits of what a pure library approach can do -> language feature.
jcelerier··on Googlebook
> No one is doing that, these people don't exist

so out of touch lol. Had an ex-partner (complete non-computer person, working in branding & communications) who was doing that three years ago.

jcelerier··on Async Rust never left the MVP state
> that’s why JS text editors have reasonably acceptable performance

Absolutely not

jcelerier··on Async Rust never left the MVP state
But this fragmentation is what needed to make good software. If you put things in the standard library you're just adding a +1 to the fragmented landscape because for instance it will never be specialized enough to cover all use cases, so people will still use their own libraries, just like for instance c++ has three dozen distinct implementations of hash maps just because one cannot fit all cases
jcelerier··on Eka’s robotic claw feels like we're approaching a ChatGPT moment
robots have existed for more than 20 years though. Boston Dynamic's dog is 22 years old, Atlas 15-ish
jcelerier··on Show HN: Perfect Bluetooth MIDI for Windows
Did you try https://github.com/celtera/libremidi ? It should poll BLE devices
jcelerier··on Email could have been X.400 times better
> People will happily chat over nondeterministic Zoom and Discord

Only because they don't even know how a good system feels like

jcelerier··on I'm done making desktop applications (2009)
But JS arrays are limited to 4GB. Size is defined to be a 32-bit int.
jcelerier··on I'm done making desktop applications (2009)
But that's the thing, if I'm doing audio and buying 128GB of ram for the sake of doing music with my sample libraries, and loading hundreds of parallel tracks and being able to scrub through them without lags or audio clicks, I absolutely want to be able to load them to play with them.
jcelerier··on I'm done making desktop applications (2009)
Can a single webpage address & use more than 4gb of ram nowadays? I was filling 16gb of ram with a single Ableton live session in 2011.
jcelerier··on Sabotaging projects by overthinking, scope creep, and structural diffing
Well, if you don't care about not being able to do your defense after 4 years of work because someone managed to do it just before you..
jcelerier··on Another Day Has Come
> VoiceOver loves to say "not responding" in Safari and locks up,

I wonder, what's the correct solution for this ? Because so many apps I use including browser are definitely "not responding" multiple times per day for various reasons (full ram, internet stall, etc.)

jcelerier··on SpaceX says it has agreement to acquire Cursor for $60B
I don't read OP's post we're talking about ("What's crazy is that a company [...] could be worth more than $60B...") as not understanding, but as disagreeing that our world should work in such a way where this state of affair is even remotely considered acceptable
← PreviousPage 3 of 34Next →