The best Hacker News stories from Show from the past week
Latest posts:
Show HN: E-Paper 7-color display showing the current weather
A hobby project of mine that was surprisingly easy to put together! I love waking up and seeing the freshly generated image.
Show HN: E-Paper 7-color display showing the current weather
A hobby project of mine that was surprisingly easy to put together! I love waking up and seeing the freshly generated image.
Show HN: 2d web paddle game
Simple retro paddle arcade game written in Javascript, using good ol' Canvas.
Show HN: Laudspeaker – Open-source mobile push, SMS and email automation
Hey HN, we are sharing again, after a year of updates!<p>Laudspeaker (<a href="https://laudspeaker.com/">https://laudspeaker.com/</a>) is an open source customer engagement suite (also called marketing automation software). If you've used tools like Braze, One Signal, Airship, Iterable, Customer.io or some others, Laudspeaker is an alternative to these. Here is a quick demo: <a href="https://www.loom.com/share/4b309390ee274ea491981e1394e9abc4" rel="nofollow">https://www.loom.com/share/4b309390ee274ea491981e1394e9abc4</a>. And here is a link to sign up and try free (no cc needed): <a href="https://app.laudspeaker.com/signup">https://app.laudspeaker.com/signup</a>.<p>Or if you prefer to just jump in, go to <a href="https://app.laudspeaker.com/login">https://app.laudspeaker.com/login</a> and use this test account:<p><pre><code> email: test94@laudspeaker.com
pw: test93@laudspeaker.com
</code></pre>
The main things Laudspeaker lets you do are:<p>1. Define 'segments': which of your users should receive messages.<p>2. Define 'messaging journeys': when, where and with which channels you want to reach users. Right now we support push, email, SMS, and soon we'll also include in-app messages and WhatsApp.<p>For example, one customer of ours runs a journey like this: "Wait for a user to complete onboarding on our mobile app, then send a welcome push. If they complete an action the next day on the app, stop sending messages, otherwise send a followup email."<p>There are quite a few big updates since our last Show HN (<a href="https://news.ycombinator.com/item?id=34835559">https://news.ycombinator.com/item?id=34835559</a>):<p>We now have a mobile SDK for sending and receiving push notifications. We have revamped the journey builder, and made our segment builder much more comprehensive. Our application is also a lot more battle tested - we are deployed with a major fintech in Asia and are sending XX million messages a week to more than x million users.<p>We've seen a lot of demand from consumer focused apps and websites who find most of the existing solutions' pricing models prohibitively expensive so please reach out if that sounds like you. We have successfully migrated people over from Braze, customer io and others.<p>If you're interested in the mobile SdK, see our tutorial: <a href="https://laudspeaker.com/docs/getting-started/setting-up-mobile-push">https://laudspeaker.com/docs/getting-started/setting-up-mobi...</a>,<p>and sample apps: <a href="https://github.com/laudspeaker/android-sample-app">https://github.com/laudspeaker/android-sample-app</a>, <a href="https://github.com/laudspeaker/ios-sample-app">https://github.com/laudspeaker/ios-sample-app</a>.<p>Our Github is <a href="https://github.com/laudspeaker/laudspeaker">https://github.com/laudspeaker/laudspeaker</a>. Try it out for free at <a href="https://app.laudspeaker.com/signup">https://app.laudspeaker.com/signup</a>.<p>We'd love to hear your feedback and comments!
Show HN: Foosbar – My autonomous foosball-playing robot
Show HN: Allocate poker chips optimally with mixed-integer nonlinear programming
Every time I play a casual cash poker game with friends, we spend the first several minutes struggling to figure out chip denominations. I built this to automate that process.<p>Try it out here (the submitted link goes to the GitHub repo): <a href="https://jstrieb.github.io/poker-chipper/" rel="nofollow">https://jstrieb.github.io/poker-chipper/</a><p>It turns out that picking chip denominations optimally—such that as many chips are distributed as possible, and such that the denominations are nice—is hard (in the computational complexity sense). Upon reflection, the problem seemed to be a perfect fit for constrained optimization.<p>I first got a CLI prototype working with Z3 (an SMT solver with optimization capabilities <a href="https://github.com/Z3Prover/z3">https://github.com/Z3Prover/z3</a>) in Python. Then, I cross-compiled SCIP (<a href="https://www.scipopt.org/" rel="nofollow">https://www.scipopt.org/</a>) to web assembly, and ported my code to use SCIP instead of Z3 so it could run in the browser.<p>The web interface is designed to be fast and easy to use on desktop and mobile.<p>I would love to answer questions and discuss design choices. I'm also open to feedback and bug reports. Thanks for taking a look!
Show HN: Tunnelling TCP through a file
This program can be used to tunnel TCP connections through a file.<p>People have used it for interesting things:<p>- Bridging connections which would otherwise be blocked by a firewall<p>- Tunneling through RDP (similar to an SSH tunnel)<p>- Exposing a localhost web server to others<p>Key features I put effort into:<p>1. The shared file is restarted every 10 MB, so it doesn't grow indefinitely.<p>2. Optimisations for latency & bandwidth. (800 Mbps on a Gigabit LAN. 108 Mbps if file tunneling through RDP)<p>3. Synchronisation between two sides (each side can be started and restarted in any order)<p>I'd love to hear about any weird and wonderful uses you might have for it.<p>Thanks, Fidel
Show HN: Brioche – A new Nix-like package manager
This is a project I've wanted to write for a long time now. I really love the ideas from Nix and I still have a ton of respect for the project, but Nix-the-language never felt intuitive to me and I wanted something with more approachable tooling (although this was circa 2016, so I'm sure Nix has improved a lot since then too-- that was before Flakes were around!)<p>Anyway, I started on the current iteration of Brioche about 6 months ago, and I finally cut an initial release. I'd still consider this a "technical preview" version (performance especially is pretty painful, so that'll be a focus of mine in the coming weeks). But it's finally at a point where it does work end-to-end and folks can take it for a test drive!
Show HN: 10 Years to Build a Free SQL Editor
I have spent large parts of the last 10+ years building an SQL Editor. The tool is targeted at data analysts, a lot of effort has gone into charting, visualizing and excel export. If this sounds useful to you, it's Free, please give it a try and let me know any feedback.
Show HN: I made a tiny camera with super long battery life
Hey HN!<p>A few years ago someone kept trying to steal my motorcycle, so I decided to make a small camera with really long battery life to catch them.<p>The hardware/software is totally open source, but the companion app only supports macOS currently. (I'm a big fan of native apps, and didn't want to block releasing on Linux/Windows support.)<p>I wrote some blog posts about the process:<p>PCB design: <a href="https://toaster.llc/blog/pcb" rel="nofollow">https://toaster.llc/blog/pcb</a><p>Enclosure design: <a href="https://toaster.llc/blog/enclosure" rel="nofollow">https://toaster.llc/blog/enclosure</a><p>Image pipeline: <a href="https://toaster.llc/blog/image-pipeline" rel="nofollow">https://toaster.llc/blog/image-pipeline</a><p>Rainproofing: <a href="https://toaster.llc/blog/rainproofing" rel="nofollow">https://toaster.llc/blog/rainproofing</a><p>Source: <a href="https://github.com/toasterllc/Photon">https://github.com/toasterllc/Photon</a>
Show HN: CommitAsync – $100K+ dev jobs 100% remote only
Show HN: CommitAsync – $100K+ dev jobs 100% remote only
Show HN: Every mountain, building and tree shadow mapped for any date and time
I've been working on this project for about 4 years. It began as terrain only because world wide elevation data was publicly available. I then added buildings from OpenStreetMap (crowd sourced) and more recently from Overture Maps data. Some computer vision/machine learning advancements [1] in the past few years have made it possible to estimate tree canopy heights using satellite imagery alone making it possible to finally add trees to the map. The data isn't perfect, but it's within +/- 3 meters of so. Good enough to give a general idea for any location on Earth. Happy to answer any questions.<p>[1] <a href="https://www.nature.com/articles/s41559-023-02206-6" rel="nofollow">https://www.nature.com/articles/s41559-023-02206-6</a>
Show HN: Every mountain, building and tree shadow mapped for any date and time
I've been working on this project for about 4 years. It began as terrain only because world wide elevation data was publicly available. I then added buildings from OpenStreetMap (crowd sourced) and more recently from Overture Maps data. Some computer vision/machine learning advancements [1] in the past few years have made it possible to estimate tree canopy heights using satellite imagery alone making it possible to finally add trees to the map. The data isn't perfect, but it's within +/- 3 meters of so. Good enough to give a general idea for any location on Earth. Happy to answer any questions.<p>[1] <a href="https://www.nature.com/articles/s41559-023-02206-6" rel="nofollow">https://www.nature.com/articles/s41559-023-02206-6</a>
Show HN: I built a tiny-VPS friendly RSS aggregator and reader
Hi, folks.<p>As an RSS user, I tried Inoreader and Feedly, then ended up self-hosting a Miniflux instance on my homelab. A few months ago, I moved to another city and had to shut down my homelab for a long time, so I couldn't access my local miniflux. It was quite inconvenient. I decided to self-host my RSS aggregator on a tiny VPS or PaaS such as fly.io. However, Miniflux requires a PostgreSQL database, which may isn't suitable for a tiny VPS instance.<p>So I built fusion with Golang and SQLite. It contains basic features such as Group, Bookmark, Search, Automatically feeds sniffing, Import/Export OPML file, etc. It uses about 80MB of Mem and negligible CPU usage (metrics here: <a href="https://imgur.com/a/EJIdevn" rel="nofollow">https://imgur.com/a/EJIdevn</a>).<p>Feel free to share your questions and suggestions.<p>BTW, I also built an online tool to sniff RSS links from a URL. (<a href="https://rss-finder.rook1e.com/" rel="nofollow">https://rss-finder.rook1e.com/</a>)
Show HN: ChatGPT UI for rabbit holes
I was inspired by the way ChatGPT writes bullet lists, then invites you to "delve" deeper.<p>This is an interface that reifies that rabbit-holing process into a tiling layout. The model is instructed to output hyperlink-prompts when it mentions something you might want to delve into.<p>Lots of features to add (sessions, sharing, navigation, highlight-to-delve, images, ...). Would love to hear other usecases and ideas!
Show HN: ChatGPT UI for rabbit holes
I was inspired by the way ChatGPT writes bullet lists, then invites you to "delve" deeper.<p>This is an interface that reifies that rabbit-holing process into a tiling layout. The model is instructed to output hyperlink-prompts when it mentions something you might want to delve into.<p>Lots of features to add (sessions, sharing, navigation, highlight-to-delve, images, ...). Would love to hear other usecases and ideas!
Show HN: Slipshow – A presentation tool not based on slides
Show HN: File0 – An easier way to manage files in serverless apps
Cmon... I just want to upload a file and make it public on the internet. Now you tell me I need to master bucket policies, ACL, CORS, multipart uploads, content headers, CDN, presigned URLs, and a bunch of other crap?<p>I can't be asked, so I built FILE0. It's for storing files but you don't need to complete an online course.
Show HN: File0 – An easier way to manage files in serverless apps
Cmon... I just want to upload a file and make it public on the internet. Now you tell me I need to master bucket policies, ACL, CORS, multipart uploads, content headers, CDN, presigned URLs, and a bunch of other crap?<p>I can't be asked, so I built FILE0. It's for storing files but you don't need to complete an online course.