The best Hacker News stories from Show from the past week
Latest posts:
Show HN: Go Plan9 Memo
A quick dive into the Plan9 assembly I picked up while developing my SIMD package for Go, and how it led to a 450% performance boost in calculations.
Show HN: Go Plan9 Memo
A quick dive into the Plan9 assembly I picked up while developing my SIMD package for Go, and how it led to a 450% performance boost in calculations.
Show HN: I 3D scanned the tunnels inside the Maya Pyramid Temples at Copan
With these 3d captures, you can explore the 4km tunnel system that archaeologists created inside the temples at Copan that are closed to the public. The tunnels are often flooded by hurricanes and damaged by other natural forces--and collapsed on me and my Matterport scanner more than once--so this is a permanent record of how they appeared in 2022-23.<p>Unlike Egyptian pyramids, the Maya built their temples layer by layer outward, so to understand them, researchers tunneled into the structures to understand the earlier phases of construction. I arranged the guided versions of the virtual tours in a rough chronology, moving from the highest to the lowest and oldest areas: the hieroglyphic stairway composing the largest Maya inscription anywhere, the Rosalila temple that was buried fully intact, and finally the tomb of the Founder of the city, Yax Kʼukʼ Moʼ.<p>I've been working to build on top of the Matterport SDK with Three.js--and then reusing the data in Unreal for a desktop experience or rendering for film (coming soon to PBS).<p>Blog about process: <a href="https://blog.mused.com/what-lies-beneath-digitally-recording-over-4km-of-tunnels-inside-the-maya-temples-at-copan/" rel="nofollow">https://blog.mused.com/what-lies-beneath-digitally-recording...</a><p>Major thanks to the Matterport team for providing support with data alignment and merging tunnels while I was living in the village near site.
Show HN: Pumpkin – A Modern Minecraft server written in Rust
Show HN: Graphite, a Blender-inspired 2D procedural design Rust app
For the past three years I've been building what I hope will be the next Blender, tackling the lack of any good 2D design or image editing tools outside the Adobe monopoly. This was our first year participating in Google Summer of Code and this Q3 update includes the big payoff from that, covering the most progress we've made so far as a project. If you're a Rust dev, consider getting involved as we apply for the next GSoC in the new year— you could be our intern next summer :)<p>Q3 progress report: <a href="https://graphite.rs/blog/graphite-progress-report-q3-2024/" rel="nofollow">https://graphite.rs/blog/graphite-progress-report-q3-2024/</a>
Show HN: I built the most over-engineered Deal With It emoji generator
Hi, all! Author here. What started as a small tool I built for a job interview, became "The Most Over-engineered Deal With It Emoji Generator":<p>- All operations done fully client-side - no backend, no private data leaves your browser.
- Uses machine learning models (MediaPipe Face Detector task) to automatically scale and position glasses on the detected faces.
- Extensive customization options for glasses:
- Placement of glasses anywhere on the input image (including slightly going outside it).
- Change the size of glasses.
- No limit on the number of glasses.
- Flip the glasses vertically or horizontally.
- Customize the direction from which the glasses appear on the image.
- Different types of glasses.
- GIF output options:
- Looping mode.
- Number of frames.
- Frame delay.
- Separate delay setting for last frame.
- Output size.
- Celebration confetti
- Easter eggs.<p>I've been working remotely for the last >9 years. When using non-verbal communication, it's important that your tone and intent comes across accurately.. Custom emojis became for me part of expressing yourself, creating bonds and camaraderie. I've originally created an MVP of this tool while applying for a exciting new job opportunity. As a showcase of my passion for programming, building teams and creating delightful user experiences. Unfortunately, they were not impressed and ultimately did not offer me the job :( But I wanted to polish it and release it for everyone to use for free, so that you can too "Deal With It"!<p>I have more ideas for even more features (check GitHub[1]), but wanted to launch it and see what's the feedback and ideas from the community!
And if you're looking for a Fullstack Developer with >14 years of experience, with passion for great customer experience (remote work or locally in Iceland), let's chat!<p>[1] - <a href="https://github.com/klimeryk/dealwithit">https://github.com/klimeryk/dealwithit</a>
Show HN: Vortex – a high-performance columnar file format
Show HN: X11 tool to share a screen area in any video meeting
Show HN: A VSCode Extension to edit HTML visually in real-time
Show HN: A VSCode Extension to edit HTML visually in real-time
Show HN: I made a URL expander because short links are too mainstream
Show HN: Tenno – Markdown and JavaScript = a hybrid of Word and Excel
Tenno is a web app that lets you create Markdown documents that can include computational cells.
You can think of it as a mix of Word and Excel, some sort of "literate programming" environment.<p>This is still an early version but I wanted to get some feedback from HN on what could be nice features to add.<p>Check out the Docs and examples page, it has a ton
of (in my humble opinion) cool stuff!<p>Why did I build this?
I was building some estimation for cloud costs in Google Sheets and I quickly ended up with a mess. I realized that if I wanted to analyze how a certain thing changes wrt to multiple variables by plotting it, I had to create a bunch of copies of data and copy my formulas everywhere... a SWE nightmare!<p>Tenno simplifies this because you can essentially define a function you are interested in, and only the analyzing it using plots that explore various dimensions.<p>BTW, you can also use Tenno to build dashboards by pulling data from APIs, checkout the weather data example.
Show HN: HTML for People
Show HN: HTML for People
Show HN: I made an SSH tunnel manager to learn Go
Show HN: Winamp and other media players, rebuilt for the web with Web Components
Hey all, creator of Video.js and co-founder of Mux & Zencoder here. My team and I built this. I hope you like the themes we’ve built so far, and maybe even get inspired to build your own.<p>I know Web Components are in a bit of a drama cycle right now. I’m happy to see them get any attention really. I’ve been pretty bullish on them since ~2013 when I started working with them, at least in the context of a <i>widget</i> like a video player. I’ve even given many related talks on them like this one (<a href="https://www.youtube.com/watch?v=N6Mh84SRoDg" rel="nofollow">https://www.youtube.com/watch?v=N6Mh84SRoDg</a>).<p>I would never push them for a large app or as a full replacement for React, but they’ve been incredible for making video players that are compatible across many contexts, and Player.style is a clear demonstration of that when you get to the step of embedding a theme. Web components really shine for building bits of UI that can be shared between projects. They also are the best way to avoid the long term JS framework thrash that’s a challenge for any developer who works on the web for long enough. One of the best decisions I ever made for Video.js was to <i>not</i> build it with jQuery. Video.js is 15 years old now and still in use, while all the jQuery players are not.<p>For some added context of this project, when I was building Video.js back in 2010 I put a lot of thought into how other developers would customize the player controls. I was excited to use web technologies (instead of Flash) to build a player and I <i>knew</i> other web devs would be too.<p>Fast forward 14 years — Video.js has been used on millions of websites including Twitter, Instagram, Amazon, Dropbox, Linkedin and even in United Airlines headrests. In 99.99% of those cases the default Video.js controls were used with little to no customization. So…huge adoption success, utter failure in sparking creativity. In retrospect, asking people to learn a new UI framework just to style their player was too much.<p>Media Chrome and Player.style are my answer to that friction.<p>- Media Chrome - A suite of Web Components and React Components that let you easily build a media player UI from scratch, using components you’re already familiar with.<p>- Player.stye - Themes built with Media Chrome, showing the cross-player and cross-framework flexibility of Media Chrome<p>Media Chrome is already used on sites like TED.com, Syntax.fm, and anywhere the Mux Player is used. We’ve spent the last few months building some great themes for Player.style. I probably had the most fun recreating the Youtube icon animations from scratch using SVGs and CSS. (Whoever made the originals, nicely done!)<p>It’s all free and open source, so don’t hesitate to jump in if you’re interested in the project. And of course I’m happy to answer any questions.
Show HN: Kotlin Money
Manipulating monetary amounts is a common computing chore. However, no mainstream language has a first-class data type for representing money, it’s up to programmers to code abstractions for it. This isn’t an issue per se until dealing with rounding issues from operations like installment payments (e.g., buy now, pay later), foreign exchange, or even simple things like fee processing and tax collection.<p>Inspired by my days at N26 Brasil dealing with these challenges, I introduce Money: a Kotlin library that makes monetary calculations and allocations easy.
Show HN: I built a Iridium/LTE satellite GPS tracker and took it to the Arctic
Show HN: Visualization of website accessibility tree
When COVID-19 started I needed something to get busy to not go crazy. I happened to work on our app WCAG compliance for a few months at the time and was frustrated by the state of of accessibility-related tools for developers.<p>I've spend two months delivering a tool that is easy to understand and helps catching accessibility issues on my apps. A few years later it's pretty popular despite being mostly abandoned.<p>I will be happy to work on this further but honestly lost my enthusiasm some time ago. I'd love to get in touch with some company in the accessibility testing space and discuss how to improve it.
Show HN: Open source framework OpenAI uses for Advanced Voice
Hey HN, we've been working with OpenAI for the past few months on the new Realtime API.<p>The goal is to give everyone access to the same stack that underpins Advanced Voice in the ChatGPT app.<p>Under the hood it works like this:
- A user's speech is captured by a LiveKit client SDK in the ChatGPT app
- Their speech is streamed using WebRTC to OpenAI’s voice agent
- The agent relays the speech prompt over websocket to GPT-4o
- GPT-4o runs inference and streams speech packets (over websocket) back to the agent
- The agent relays generated speech using WebRTC back to the user’s device<p>The Realtime API that OpenAI launched is the websocket interface to GPT-4o. This backend framework covers the voice agent portion. Besides having additional logic like function calling, the agent fundamentally proxies WebRTC to websocket.<p>The reason for this is because websocket isn’t the best choice for client-server communication. The vast majority of packet loss occurs between a server and client device and websocket doesn’t provide programmatic control or intervention in lossy network environments like WiFi or cellular. Packet loss leads to higher latency and choppy or garbled audio.