The best Hacker News stories from Show from the past day

Go back

Latest posts:

Show HN: A macOS app to prevent sound quality degradation on AirPods

Right, here's the thing: If you are using AirPods(or any Bluetooth headphones with a mic in fact) on Mac and something activates the mic(i.e. you Shazam a song), the sound will be interrupted momentarily and will return in very low quality. This is happening because Bluetooth can't handle both way high quality streaming and the bandwidth is decreased to make it work.<p>It's a known issue and here's what Apple recommends to fix it: <a href="https://support.apple.com/en-hk/102217" rel="nofollow">https://support.apple.com/en-hk/102217</a><p>Most of the time(unless you are on a Mac Mini/Studio/Pro), you have much higher quality microphones built in, so in most use cases, you want to hear from your AirPods but be heard from your internal microphone, which means if every time you connect your AirPods and go into the settings and set the default input device as the internal mic, you won't have sound quality degradation on mic activation, and if you use your mic to talk to people or record something, you will have better sound quality too.<p>Based on this observation, first I tried to create a script or some automation that can do it for me but found out that it can be clunky or needlessly complex.<p>Here's someone who used this approach to fix this issue: <a href="https://www.dermitch.de/post/macos-force-microphone-when-using-airpods/" rel="nofollow">https://www.dermitch.de/post/macos-force-microphone-when-usi...</a><p>Anyway, I decided to take the "build your app for that" route and created this app and called it CrystalClear Audio which doesn't involve any technical setup to use. Making it was also not as easy I hoped, I was expecting this to be a half an hour project but ended up filing bug reports with Apple because some API wasn't behaving as expected or mysterious things were happening when using it(like phantom device changes).<p>After spending that much time with all this, I decided to publish it on Mac AppStore and after too many rejections(all my mistakes) I got it published: <a href="https://apps.apple.com/us/app/crystalclear-sound/id6695723746" rel="nofollow">https://apps.apple.com/us/app/crystalclear-sound/id669572374...</a><p>The app is not free but comes with a free trial. I decided to go with a very cheap subscription model because I suspect further development might be needed as bugs emerge or API behavior changes. I know its a hated business model but IMHO it's better than ads or tracking of any sort to justify the work done. It's not free because supporting a free app is just as hard as supporting a paid one and it's not one time payment because I don't know what would the right price be for supporting an app for years to come and still have people willing to pay for it.<p>I hope other people find this useful and if you do, you can support by upvoting on Producthunt so even more people can find it sueful: <a href="https://www.producthunt.com/posts/crystalclear-sound" rel="nofollow">https://www.producthunt.com/posts/crystalclear-sound</a><p>PS: the app is also useful for quickly switching between giving the sound out of the laptop speakers and the headphones, I ended up using that quite often.

Show HN: A macOS app to prevent sound quality degradation on AirPods

Right, here's the thing: If you are using AirPods(or any Bluetooth headphones with a mic in fact) on Mac and something activates the mic(i.e. you Shazam a song), the sound will be interrupted momentarily and will return in very low quality. This is happening because Bluetooth can't handle both way high quality streaming and the bandwidth is decreased to make it work.<p>It's a known issue and here's what Apple recommends to fix it: <a href="https://support.apple.com/en-hk/102217" rel="nofollow">https://support.apple.com/en-hk/102217</a><p>Most of the time(unless you are on a Mac Mini/Studio/Pro), you have much higher quality microphones built in, so in most use cases, you want to hear from your AirPods but be heard from your internal microphone, which means if every time you connect your AirPods and go into the settings and set the default input device as the internal mic, you won't have sound quality degradation on mic activation, and if you use your mic to talk to people or record something, you will have better sound quality too.<p>Based on this observation, first I tried to create a script or some automation that can do it for me but found out that it can be clunky or needlessly complex.<p>Here's someone who used this approach to fix this issue: <a href="https://www.dermitch.de/post/macos-force-microphone-when-using-airpods/" rel="nofollow">https://www.dermitch.de/post/macos-force-microphone-when-usi...</a><p>Anyway, I decided to take the "build your app for that" route and created this app and called it CrystalClear Audio which doesn't involve any technical setup to use. Making it was also not as easy I hoped, I was expecting this to be a half an hour project but ended up filing bug reports with Apple because some API wasn't behaving as expected or mysterious things were happening when using it(like phantom device changes).<p>After spending that much time with all this, I decided to publish it on Mac AppStore and after too many rejections(all my mistakes) I got it published: <a href="https://apps.apple.com/us/app/crystalclear-sound/id6695723746" rel="nofollow">https://apps.apple.com/us/app/crystalclear-sound/id669572374...</a><p>The app is not free but comes with a free trial. I decided to go with a very cheap subscription model because I suspect further development might be needed as bugs emerge or API behavior changes. I know its a hated business model but IMHO it's better than ads or tracking of any sort to justify the work done. It's not free because supporting a free app is just as hard as supporting a paid one and it's not one time payment because I don't know what would the right price be for supporting an app for years to come and still have people willing to pay for it.<p>I hope other people find this useful and if you do, you can support by upvoting on Producthunt so even more people can find it sueful: <a href="https://www.producthunt.com/posts/crystalclear-sound" rel="nofollow">https://www.producthunt.com/posts/crystalclear-sound</a><p>PS: the app is also useful for quickly switching between giving the sound out of the laptop speakers and the headphones, I ended up using that quite often.

Show HN: Bringing multithreading to Python's async event loop

This project explores the integration of multithreading into the asyncio event loop in Python.<p>While this was initially built with enhancing CPU utilization for FastAPI servers in mind, the approach can be used with more general async programs too.<p>If you’re interested in diving deeper into the details, I’ve written a blog post about it here: <a href="https://www.neilbotelho.com/blog/multithreaded-async.html" rel="nofollow">https://www.neilbotelho.com/blog/multithreaded-async.html</a>

Show HN: Bringing multithreading to Python's async event loop

This project explores the integration of multithreading into the asyncio event loop in Python.<p>While this was initially built with enhancing CPU utilization for FastAPI servers in mind, the approach can be used with more general async programs too.<p>If you’re interested in diving deeper into the details, I’ve written a blog post about it here: <a href="https://www.neilbotelho.com/blog/multithreaded-async.html" rel="nofollow">https://www.neilbotelho.com/blog/multithreaded-async.html</a>

Show HN: An experimental AntiBot, AntiCrawl reverse proxy for the web

Show HN: Open-source app builder for comfy workflows

Hey, we’ve been working on an open-source project built on top of Comfy for the last few weeks. It is still very much a work in progress, but I think it is at a place where it could start to be useful. The idea is that you can turn a workflow into a web app with an easy-to-use UI.<p>Currently, it should work with any workflows that take images and text as input and return images. We are aiming to add video support over the next few days.<p>Feedback and contributions are more than welcome!

Show HN: GitHub Repo Visualizer Using D3

I built this as part of my quest to properly learn data visualization. The code is the easy part!<p>Some lessons learned:<p>- personal verification of the the general truth that pie charts are tough! and the returns are not great for the effort due to people's difficulties perceiving angles - may not use "vanilla" d3 with no React. was difficult to adapt for mobile - the GitHub API provides fairly standardized responses so building dynamic charts wasn't too bad. But when working with streaming data (say Kafka) I can see this getting interesting... schema registry should help but creating a view into the data with a lookback would be interesting with d3, done it with altair before.

Show HN: GitHub Repo Visualizer Using D3

I built this as part of my quest to properly learn data visualization. The code is the easy part!<p>Some lessons learned:<p>- personal verification of the the general truth that pie charts are tough! and the returns are not great for the effort due to people's difficulties perceiving angles - may not use "vanilla" d3 with no React. was difficult to adapt for mobile - the GitHub API provides fairly standardized responses so building dynamic charts wasn't too bad. But when working with streaming data (say Kafka) I can see this getting interesting... schema registry should help but creating a view into the data with a lookback would be interesting with d3, done it with altair before.

Show HN: Enable right click and copy on websites that disabled it

Show HN: htmgo - build simple and scalable systems with golang + htmx

Hey all, I just wanted to share a project I've been working on for the past month.<p>After years of heavy frameworks, I really like the idea of using htmx, but it’s a little too low level for me and needs a thin layer above it to facilitate things like components, better syntax with complex JS inside of an attribute, etc<p>To try and solve this problem with a very minimal stack (golang + htmx) that I've been really enjoying, I'm building this project to cater to my needs and was thinking it would be useful for other developers.

Show HN: htmgo - build simple and scalable systems with golang + htmx

Hey all, I just wanted to share a project I've been working on for the past month.<p>After years of heavy frameworks, I really like the idea of using htmx, but it’s a little too low level for me and needs a thin layer above it to facilitate things like components, better syntax with complex JS inside of an attribute, etc<p>To try and solve this problem with a very minimal stack (golang + htmx) that I've been really enjoying, I'm building this project to cater to my needs and was thinking it would be useful for other developers.

Show HN: htmgo - build simple and scalable systems with golang + htmx

Hey all, I just wanted to share a project I've been working on for the past month.<p>After years of heavy frameworks, I really like the idea of using htmx, but it’s a little too low level for me and needs a thin layer above it to facilitate things like components, better syntax with complex JS inside of an attribute, etc<p>To try and solve this problem with a very minimal stack (golang + htmx) that I've been really enjoying, I'm building this project to cater to my needs and was thinking it would be useful for other developers.

Show HN: Mitata – Benchmarking tooling for JavaScript

I always had a sweet tooth for how easy it is to use google/benchmark, but when working with js, current libraries didn't feel right and some were not even accurate enough, so I decided to create my own library to make JavaScript benchmarking tooling better.<p>With more free time, I finally implemented all features I wished for in 1.0.0 and made a lightweight C++ single-header version for moments when google/benchmark is too much.<p>Hope this library helps you as much as it does me.

Show HN: Mitata – Benchmarking tooling for JavaScript

I always had a sweet tooth for how easy it is to use google/benchmark, but when working with js, current libraries didn't feel right and some were not even accurate enough, so I decided to create my own library to make JavaScript benchmarking tooling better.<p>With more free time, I finally implemented all features I wished for in 1.0.0 and made a lightweight C++ single-header version for moments when google/benchmark is too much.<p>Hope this library helps you as much as it does me.

Show HN: Mitata – Benchmarking tooling for JavaScript

I always had a sweet tooth for how easy it is to use google/benchmark, but when working with js, current libraries didn't feel right and some were not even accurate enough, so I decided to create my own library to make JavaScript benchmarking tooling better.<p>With more free time, I finally implemented all features I wished for in 1.0.0 and made a lightweight C++ single-header version for moments when google/benchmark is too much.<p>Hope this library helps you as much as it does me.

Show HN: Comprehensive authentication library for TypeScript

The most comprehensive authentication library for TypeScript

Show HN: Comprehensive authentication library for TypeScript

The most comprehensive authentication library for TypeScript

Show HN: Comprehensive authentication library for TypeScript

The most comprehensive authentication library for TypeScript

Show HN: Iceoryx2 – Fast IPC Library for Rust, C++, and C

Hello everyone,<p>Today we released iceoryx2 v0.4!<p>iceoryx2 is a service-based inter-process communication (IPC) library designed to make communication between processes as fast as possible - like Unix domain sockets or message queues, but orders of magnitude faster and easier to use. It also comes with advanced features such as circular buffers, history, event notifications, publish-subscribe messaging, and a decentralized architecture with no need for a broker.<p>For example, if you're working in robotics and need to process frames from a camera across multiple processes, iceoryx2 makes it simple to set that up. Need to retain only the latest three camera images? No problem - circular buffers prevent your memory from overflowing, even if a process is lagging. The history feature ensures you get the last three images immediately after connecting to the camera service, as long as they’re still available.<p>Another great use case is for GUI applications, such as window managers or editors. If you want to support plugins in multiple languages, iceoryx2 allows you to connect processes - perhaps to remotely control your editor or window manager. Best of all, thanks to zero-copy communication, you can transfer gigabytes of data with incredibly low latency.<p>Speaking of latency, on some systems, we've achieved latency below 100ns when sending data between processes - and we haven't even begun serious performance optimizations yet. So, there’s still room for improvement! If you’re in high-frequency trading or any other use case where ultra-low latency matters, iceoryx2 might be just what you need.<p>If you’re curious to learn more about the new features and what’s coming next, check out the full iceoryx2 v0.4 release announcement.<p>Elfenpiff<p>Links:<p>* GitHub: <a href="https://github.com/eclipse-iceoryx/iceoryx2">https://github.com/eclipse-iceoryx/iceoryx2</a> * iceoryx2 v0.4 release announcement: <a href="https://ekxide.io/blog/iceoryx2-0-4-release/" rel="nofollow">https://ekxide.io/blog/iceoryx2-0-4-release/</a> * crates.io: <a href="https://crates.io/crates/iceoryx2" rel="nofollow">https://crates.io/crates/iceoryx2</a> * docs.rs: <a href="https://docs.rs/iceoryx2/0.4.0/iceoryx2/" rel="nofollow">https://docs.rs/iceoryx2/0.4.0/iceoryx2/</a>

Show HN: Iceoryx2 – Fast IPC Library for Rust, C++, and C

Hello everyone,<p>Today we released iceoryx2 v0.4!<p>iceoryx2 is a service-based inter-process communication (IPC) library designed to make communication between processes as fast as possible - like Unix domain sockets or message queues, but orders of magnitude faster and easier to use. It also comes with advanced features such as circular buffers, history, event notifications, publish-subscribe messaging, and a decentralized architecture with no need for a broker.<p>For example, if you're working in robotics and need to process frames from a camera across multiple processes, iceoryx2 makes it simple to set that up. Need to retain only the latest three camera images? No problem - circular buffers prevent your memory from overflowing, even if a process is lagging. The history feature ensures you get the last three images immediately after connecting to the camera service, as long as they’re still available.<p>Another great use case is for GUI applications, such as window managers or editors. If you want to support plugins in multiple languages, iceoryx2 allows you to connect processes - perhaps to remotely control your editor or window manager. Best of all, thanks to zero-copy communication, you can transfer gigabytes of data with incredibly low latency.<p>Speaking of latency, on some systems, we've achieved latency below 100ns when sending data between processes - and we haven't even begun serious performance optimizations yet. So, there’s still room for improvement! If you’re in high-frequency trading or any other use case where ultra-low latency matters, iceoryx2 might be just what you need.<p>If you’re curious to learn more about the new features and what’s coming next, check out the full iceoryx2 v0.4 release announcement.<p>Elfenpiff<p>Links:<p>* GitHub: <a href="https://github.com/eclipse-iceoryx/iceoryx2">https://github.com/eclipse-iceoryx/iceoryx2</a> * iceoryx2 v0.4 release announcement: <a href="https://ekxide.io/blog/iceoryx2-0-4-release/" rel="nofollow">https://ekxide.io/blog/iceoryx2-0-4-release/</a> * crates.io: <a href="https://crates.io/crates/iceoryx2" rel="nofollow">https://crates.io/crates/iceoryx2</a> * docs.rs: <a href="https://docs.rs/iceoryx2/0.4.0/iceoryx2/" rel="nofollow">https://docs.rs/iceoryx2/0.4.0/iceoryx2/</a>

< 1 2 3 ... 242 243 244 245 246 ... 934 935 936 >