The best Hacker News stories from Show from the past week
Latest posts:
Show HN: Paisa – Open-Source Personal Finance Manager
I have been using plaintext accounting for some time and had a duct-taped together reporting system. Paisa is my latest attempt at making it usable for others.<p>I am interested in knowing what people normally want to understand about their finances<p>PS: Please avoid editing the demo data. Download and run locally if you want to edit.
Show HN: Paisa – Open-Source Personal Finance Manager
I have been using plaintext accounting for some time and had a duct-taped together reporting system. Paisa is my latest attempt at making it usable for others.<p>I am interested in knowing what people normally want to understand about their finances<p>PS: Please avoid editing the demo data. Download and run locally if you want to edit.
Show HN: My Single-File Python Script I Used to Replace Splunk in My Startup
My immediate reaction to today's news that Splunk was being acquired was to comment in the HN discussion for that story:<p>"I hated Splunk so much that I spent a couple days a few months ago writing a single 1200 line python script that does absolutely everything I need in terms of automatic log collection, ingestion, and analysis from a fleet of cloud instances. It pulls in all the log lines, enriches them with useful metadata like the IP address of the instance, the machine name, the log source, the datetime, etc. and stores it all in SQlite, which it then exposes to a very convenient web interface using Datasette.<p>I put it in a cronjob and it's infinitely better (at least for my purposes) than Splunk, which is just a total nightmare to use, and can be customized super easily and quickly. My coworkers all prefer it to Splunk as well. And oh yeah, it's totally free instead of costing my company thousands of dollars a year! If I owned CSCO stock I would sell it-- this deal shows incredibly bad judgment."<p>I had been meaning to clean it up a bit and open-source it but never got around to it. However, someone asked today in response to my comment if I had released it, so I figured now would be a good time to go through it and clean it up, move the constants to an .env file, and create a README.<p>This code is obviously tailored to my own requirements for my project, but if you know Python, it's extremely straightforward to customize it for your own logs (plus, some of the logs are generic, like systemd logs, and the output of netstat/ss/lsof, which it combines to get a table of open connections by process over time for each machine-- extremely useful for finding code that is leaking connections!). And I also included the actual sample log files from my project that correspond to the parsing functions in the code, so you can easily reason by analogy to adapt it to your own log files.<p>As many people pointed out in responses to my comment, this is obviously not a real replacement for Splunk for enterprise users who are ingesting terabytes a day from thousands of machines and hundreds of sources. If it were, hopefully someone would be paying me $28 billion for it instead of me giving it away for free! But if you don't have a huge number of machines and really hate using Splunk while wasting thousands of dollars, this might be for you.
Show HN: Booklet – Async forums as an alternative to chat
I built Booklet to solve the problem of too many chat messages at work.<p>Booklet updates classic internet forums and email groups to have a modern UI and high polish. It organizes communications into threads, and summarizes activities into a neat email newsletter - so members can stay updated without having to stay logged in. The async format promotes deeper discussions, while also increasing engagement by making conversations easy to follow.<p>My goal is to make communications more asynchronous - so that I can get back to work, instead of slacking all day. Most early communities have been hobby groups, but my goal is to mature Booklet into a tool that sits alongside Slack in companies.<p>Try it out, and let me know what you think!
78% MNIST accuracy using GZIP in under 10 lines of code
My uBlock Origin filters to remove distractions
Repository with my filter lists that block some distractions from sites I want to keep using.<p>I am pretty ruthless removing distractions from my life (e.g. no Instagram, Facebook, TikTok), but some tools I'd like to keep using some parts of it. E.g. Twitter/X, I dislike the feed but I like reading some threads that are shared here or on blog posts. Same for YouTube, I enjoy some videos but I do not want recommendations when I finish the video I was watching.<p>Feel free to suggest more, open issues, pull requests or send me an email :)
Show HN: ElectricSQL, Postgres to SQLite active-active sync for local-first apps
Hi HN, James, Valter, Sam and the team from ElectricSQL here.<p>We're really excited to be sharing ElectricSQL with you today. It's an open source, local-first sync layer that can be used to build reactive, realtime, offline-capable apps directly on Postgres with two way active-active sync to SQLite (including with WASM in the browser).<p>Electric comprises a sync layer (built with Elixir) placed in front of your Postgres database and a type safe client that allows you to bidirectionally sync data from your Postgres to local SQLite databases. This sync is CRDT-based, resilient to conflicting edits from multiple nodes at the same time, and works after being offline for extended periods.<p>Some good links to get started:<p>- website: <a href="https://electric-sql.com" rel="nofollow noreferrer">https://electric-sql.com</a><p>- docs: <a href="https://electric-sql.com/docs" rel="nofollow noreferrer">https://electric-sql.com/docs</a><p>- code: <a href="https://github.com/electric-sql/electric">https://github.com/electric-sql/electric</a><p>- introducing post: <a href="https://electric-sql.com/blog/2023/09/20/introducing-electricsql-v0.6" rel="nofollow noreferrer">https://electric-sql.com/blog/2023/09/20/introducing-electri...</a><p>You can also see some demo applications:<p>- Linear clone: <a href="https://linear-lite.electric-sql.com" rel="nofollow noreferrer">https://linear-lite.electric-sql.com</a><p>- Realtime demo: <a href="https://electric-sql.com/docs/intro/multi-user" rel="nofollow noreferrer">https://electric-sql.com/docs/intro/multi-user</a><p>- Conflict-free offline: <a href="https://electric-sql.com/docs/intro/offline" rel="nofollow noreferrer">https://electric-sql.com/docs/intro/offline</a><p>The Electric team actually includes two of the inventors of CRDTs, Marc Shapiro and Nuno Preguiça, and a number of their collaborators who've pioneered a lot of tech underpinning local-first software. We are privileged to be building on their research and delighted to be surfacing so much work in a product you can now try out.
Show HN: HyperDX – open-source dev-friendly Datadog alternative
Hi HN, Mike and Warren here! We've been building HyperDX (hyperdx.io). HyperDX allows you to easily search and correlate logs, traces, metrics (alpha), and session replays all in one place. For example, if a user reports a bug “this button doesn't work," an engineer can play back what the user was doing in their browser and trace API calls back to the backend logs for that specific request, all from a single view.<p>Github Repo: <a href="https://github.com/hyperdxio/hyperdx">https://github.com/hyperdxio/hyperdx</a><p>Coming from an observability nerd background, with Warren being SRE #1 at his last startup and me previously leading dev experience at LogDNA/Mezmo, we knew there were gaps in the existing tools we were used to using. Our previous stack of tools like Bugsnag, LogRocket, and Cloudwatch required us to switch between different tools, correlate timestamps (UTC? local?), and manually cross-check IDs to piece together what was actually happening. This often made meant small issues required hours of frustration to root cause.<p>Other tools like Datadog or New Relic come with high price tags - when estimating costs for Datadog in the past, we found that our Datadog bill would exceed our AWS bill! Other teams have had to adjust their infrastructure just to appease the Datadog pricing model.<p>To build HyperDX, we've centralized all the telemetry in one place by leveraging OpenTelemetry (a CNCF project for standardizing/collecting telemetry) to pull and correlate logs, metrics, traces, and replays. In-app, we can correlate your logs/traces together in one panel by joining everything automatically via trace ids and session ids, so you can go from log <> trace <> replay in the same panel. To keep costs low, we store everything in Clickhouse (w/ S3 backing) to make it extremely affordable to store large amounts of data (compared to Elasticsearch) while still being able to query it efficiently (compared to services like Cloudwatch or Loki), in large part thanks to Clickhouse's bloom filters + columnar layout.<p>On top of that, we've focused on providing a smooth developer experience (the DX in HyperDX!). This includes features like native parsing of JSON logs, full-text search on any log or trace, 2-click alert creation, and SDKs that help you get started with OpenTelemetry faster than the default OpenTelemetry SDKs.<p>I'm excited to share what we've been working with you all and would love to hear your feedback and opinions!<p>Hosted Demo - <a href="https://api.hyperdx.io/login/demo">https://api.hyperdx.io/login/demo</a><p>Open Source Repo: <a href="https://github.com/hyperdxio/hyperdx">https://github.com/hyperdxio/hyperdx</a><p>Landing Page: <a href="https://hyperdx.io">https://hyperdx.io</a>
Show HN: exaequOS - a new OS running in a web browser
Show HN: exaequOS - a new OS running in a web browser
Show HN: Every Breath You Take – Heart Rate Variability Training
Through controlled breathing it is possible to regulate your body's stress response. I've built an app to measure and train this effect with a Polar H10 Heart Rate monitor.<p>With every breath you take, you can set the pace of your breathing rate, measure your breathing control with the chest accelerometer, and see how heart rate variability responds.
Show HN: Every Breath You Take – Heart Rate Variability Training
Through controlled breathing it is possible to regulate your body's stress response. I've built an app to measure and train this effect with a Polar H10 Heart Rate monitor.<p>With every breath you take, you can set the pace of your breathing rate, measure your breathing control with the chest accelerometer, and see how heart rate variability responds.
Shrinkflation Tracker
Show HN: Nue – A React/Vue/Vite/Astro Alternative
Author here. I've been working on this for the past ~12 months, lately full-time.<p>I'm releasing two things today:<p>1. Nue JS: <a href="https://nuejs.org/docs/nuejs/" rel="nofollow noreferrer">https://nuejs.org/docs/nuejs/</a> — A tiny (2.3kb minzipped) JavaScript library for building user interfaces. It's like React/Vue core, but there are no hooks, effects, props, or other unusual abstractions on your way. Know the basics of HTML, CSS, and JavaScript and you are good to go. Nue JS supports server-side rendering (SSR), reactive components, and "isomorphic" combinations. It takes inspiration from Vue 2.0 and Riot.js. (I'm actually the original author of Riot).<p>2. Nue ecosystem: <a href="https://nuejs.org/ecosystem/" rel="nofollow noreferrer">https://nuejs.org/ecosystem/</a> — This is the ultimate goal and once all the sub-projects are finished, Nue will be a serious alternative to things like Vite, Next.js, and Astro.<p>The thing is that I'm not happy with the current state of web development, so I want to write a completely new ecosystem from scratch. I'm taking advantage of the "old" innovations like progressive enhancement, separation of concerns, and semantic web design. Benefits highlighted here: <a href="https://nuejs.org/why/" rel="nofollow noreferrer">https://nuejs.org/why/</a><p>All projects will be released under the MIT license.<p>Happy to answer any questions.
Show HN: Lantern – a PostgreSQL vector database for building AI applications
We are excited to share Lantern! Lantern is a PostgreSQL vector database extension for building AI applications.
Install and use our extension here: <a href="https://github.com/lanterndata/lantern">https://github.com/lanterndata/lantern</a><p>We have the most complete feature set of all the PostgreSQL vector database extensions. Our database is built on top of usearch — a state of the art implementation of HNSW, the most scalable and performant algorithm for handling vector search.<p>There’s three key metrics we track. CREATE INDEX time, SELECT throughput, and SELECT latency. We match or outperform pgvector and pg_embedding (Neon) on all of these metrics.<p>** Here’s what we support today **<p>- Creating an AI application end to end without leaving your database (example: <a href="https://github.com/ezra-varady/lanterndb-semantic-image-search">https://github.com/ezra-varady/lanterndb-semantic-image-sear...</a>)<p>- Embedding generation for popular use cases (CLIP model, Hugging Face models, custom model)<p>- Interoperability with pgvector's data type, so anyone using pgvector can switch to Lantern<p>- Parallel index creation capabilities -- Support for creating the index outside of the database and inside another instance allows you to create an index without interrupting database workflows.<p>** Here’s what’s coming soon **<p>- Cloud-hosted version of Lantern<p>- Templates and guides for building applications for different industries<p>- Tools for generating embeddings (support for third party model API's, more local models)<p>- Support for version control and A/B test embeddings<p>- Autotuned index type that will choose appropriate index creation parameters<p>- 1 byte and 2 byte vector elements, and up to 8000 dimensional vectors support<p>** Why we started Lantern today **<p>There's dozens of vector databases on the market, but no enterprise option built on top of PostgreSQL. We think it's super important to build on top of PostgreSQL<p>- Developers know how to use PostgreSQL.<p>- Companies already store their data on PostgreSQL.<p>- Standalone vector databases have to rebuild all of what PostgreSQL has built for the past 30-years, including all of the optimizations on how to best store and access data.<p>We are open source and excited to have community contributors!
Looking forward to hearing your feedback!
Show HN: Ghidra Plays Mario
I've been exploring new ways of testing Ghidra processor modules. In this repo, I was able to emulate NES ROMs in Ghidra to test its 6502 specification, which resulted in finding and fixing some bugs.<p>Context: Ghidra is used for reverse engineering binary executables, complementing the usual disassembly view with function decompilation. Each supported architecture has a SLEIGH specification, which provides semantics for parsing and emulating instructions, not unlike the dispatch handlers you would find in interpreters written for console emulators.<p>Emulator devs have long had extensive test ROMs for popular consoles, but Ghidra only provides CPU emulation, so it can't run them without additional setup. What I did here is bridge the gap: by modifying a console emulator to instead delegate CPU execution to Ghidra, we can now use these same ROMs to validate Ghidra processor modules.<p>Previously [1], I went with a trace log diffing approach, where any hardware specific behaviour that affected CPU execution was also encoded in trace logs. However, it required writing hardware specific logic, and is still not complete. With the delegation approach, most of this effort is avoided, since it's easier to hook and delegate memory accesses.<p>I plan on continuing research in this space and generalizing my approaches, since it shows potencial for complementing existing test coverage provided by pcodetest. If a simple architecture like 6502 had a few bugs, who knows how many are in more complex architectures! I wasn't able to find similar attempts (outside of diffing and coverage analysis from trace logs), please let me know if I missed something, and any suggestions for improvements.<p>[1]: <a href="https://github.com/nevesnunes/ghidra-tlcs900h#emulation">https://github.com/nevesnunes/ghidra-tlcs900h#emulation</a>
Show HN: Real-Time 3D Gaussian Splatting in WebGL
New Bézier curves for vector graphics
Show HN: I built a Python web framework
been working on this for nearly a year
Show HN: I built a Python web framework
been working on this for nearly a year