Show HN: ProcASM – A general purpose, visual programming lanugage
5 by Temdog007 | 1 comments on Hacker News.
I've been working as a software engineer since 2016. I've always had side projects that I would work on outside of my job. At first, it was just web games. But in 2021, I took an interest in programming languages and started making my own. When I got laid off from my job in late 2023 (budget cuts according to my employer), I decided to focus on becoming an independent developer and being able to monetize my own software. Since I was working on programming languages, my plan was to make a commercial grade programming language. Monetizing it would be difficult since there are so many free and open source programming languages out there. The only way I could think to stand out was to make something that hasn't been made before. General purpose programming languages DO exist; Visual programming languages DO exist. As far as I know, general purpose, visual programming languages DO NOT exist. So, that is what I decided to create. I wrote a blog on my website < https://temware.site/html/blogs/procasm_justification.html > talking about how ProcASM works and some justifications on why developers and companies would consider using it. There is documentation < https://procasm.temware.site/documentation.html > describing ProcASM's concepts in more detail. And, there is a manual < https://procasm.temware.site/manual.html > that describes how to use application itself. I have examples on the website < https://procasm.temware.site/procedure_view.html > showcasing how procedures are displayed in ProcASM. The images on that page are procedures, created in ProcASM, that were exported to SVG files from ProcASM. You can try out ProcASM for free in your browser here: < https://procasm.temware.site/demo.html > If you just want to see examples in ProcASM, use the links below to load projects in the demo. Sample Project: < https://procasm.temware.site/demo.html?sampleProject=https%3... >Execute the Procedures: *Fibonacci*, *Test: Fizz Buzz*, and *Guess Number* to get an idea on how ProcASM works. Network Project: < https://procasm.temware.site/demo.html?sampleProject=https%3... >This project contains examples of TCP clients and servers. If your using the browser version, you can load the project and view the procedures. However, you cannot execute any of the procedures in this project since they rely on native dynamic libraries which can't be executed in the browser. If you are using the desktop version, you can execute the procedures: Test TCP Client, Test TCP Server, and Test HTTP Server. This page < https://procasm.temware.site/getting_started.html?show=netwo... > can help you with compiling a dynamic library on you machine. Support Forum Project: < https://procasm.temware.site/demo.html?sampleProject=https%3... >To ensure that ProcASM was suitable for software development, I decided to create something non-trivial with it; the back-end for the support forum < https://forum-procasm.temware.site >. The project was transpiled to C code using ProcASM (available only for the desktop versions). Then, that C code was compiled on a FreeBSD machine to generate an executable. That executable is running on a FreeBSD server. The *Server* procedure is the *main* procedure for the application. The dynamic library is not available. So, you can only view the procedures in this project.
5 by Temdog007 | 1 comments on Hacker News.
I've been working as a software engineer since 2016. I've always had side projects that I would work on outside of my job. At first, it was just web games. But in 2021, I took an interest in programming languages and started making my own. When I got laid off from my job in late 2023 (budget cuts according to my employer), I decided to focus on becoming an independent developer and being able to monetize my own software. Since I was working on programming languages, my plan was to make a commercial grade programming language. Monetizing it would be difficult since there are so many free and open source programming languages out there. The only way I could think to stand out was to make something that hasn't been made before. General purpose programming languages DO exist; Visual programming languages DO exist. As far as I know, general purpose, visual programming languages DO NOT exist. So, that is what I decided to create. I wrote a blog on my website < https://temware.site/html/blogs/procasm_justification.html > talking about how ProcASM works and some justifications on why developers and companies would consider using it. There is documentation < https://procasm.temware.site/documentation.html > describing ProcASM's concepts in more detail. And, there is a manual < https://procasm.temware.site/manual.html > that describes how to use application itself. I have examples on the website < https://procasm.temware.site/procedure_view.html > showcasing how procedures are displayed in ProcASM. The images on that page are procedures, created in ProcASM, that were exported to SVG files from ProcASM. You can try out ProcASM for free in your browser here: < https://procasm.temware.site/demo.html > If you just want to see examples in ProcASM, use the links below to load projects in the demo. Sample Project: < https://procasm.temware.site/demo.html?sampleProject=https%3... >Execute the Procedures: *Fibonacci*, *Test: Fizz Buzz*, and *Guess Number* to get an idea on how ProcASM works. Network Project: < https://procasm.temware.site/demo.html?sampleProject=https%3... >This project contains examples of TCP clients and servers. If your using the browser version, you can load the project and view the procedures. However, you cannot execute any of the procedures in this project since they rely on native dynamic libraries which can't be executed in the browser. If you are using the desktop version, you can execute the procedures: Test TCP Client, Test TCP Server, and Test HTTP Server. This page < https://procasm.temware.site/getting_started.html?show=netwo... > can help you with compiling a dynamic library on you machine. Support Forum Project: < https://procasm.temware.site/demo.html?sampleProject=https%3... >To ensure that ProcASM was suitable for software development, I decided to create something non-trivial with it; the back-end for the support forum < https://forum-procasm.temware.site >. The project was transpiled to C code using ProcASM (available only for the desktop versions). Then, that C code was compiled on a FreeBSD machine to generate an executable. That executable is running on a FreeBSD server. The *Server* procedure is the *main* procedure for the application. The dynamic library is not available. So, you can only view the procedures in this project.
From the Transistor to the Web Browser, a rough outline for a 12 week course
11 by tosh | 1 comments on Hacker News.
11 by tosh | 1 comments on Hacker News.
Show HN: AnuDB– Backed on RocksDB, 279x Faster Than SQLite in Parallel Workloads
4 by hashmak_jsn | 0 comments on Hacker News.
We recently benchmarked AnuDB, a lightweight embedded database built on top of RocksDB, against SQLite on a Raspberry Pi. The performance difference, especially for parallel operations, was dramatic. GitHub Links: AnuDBBenchmark: https://ift.tt/8QsezbB AnuDB (Core): https://ift.tt/OebkDd5 Why Compare AnuDB and SQLite?SQLite is excellent for many embedded use cases — it’s simple, battle-tested, and extremely reliable. But it doesn't scale well when parallelism or concurrent writes are required. AnuDB, built over RocksDB, offers better concurrency out of the box. We wanted to measure the practical differences using real benchmarks on a Raspberry Pi. Benchmark SetupPlatform: Raspberry Pi 2 (ARMv7) Benchmarked operations: Insert, Query, Update, Delete, Parallel AnuDB uses RocksDB and MsgPack serialization SQLite uses raw data, with WAL mode enabled for fairness Key ResultsInsert: AnuDB: 448 ops/sec SQLite: 838 ops/sec Query: AnuDB: 54 ops/sec SQLite: 30 ops/sec Update: AnuDB: 408 ops/sec SQLite: 600 ops/sec Delete: AnuDB: 555 ops/sec SQLite: 1942 ops/sec Parallel (10 threads): AnuDB: 412 ops/sec SQLite: 1.4 ops/sec (!) In the parallel case, AnuDB was over 279x faster than SQLite. Why the Huge Parallel Difference?SQLite, even with WAL mode, uses global database-level locks. It’s not designed for high-concurrency scenarios. RocksDB (used in AnuDB) supports: Fine-grained locking Concurrent readers/writers Better parallelism using LSM-tree architecture This explains why AnuDB significantly outperforms SQLite under threaded workloads. Try It YourselfClone the repo: git clone https://ift.tt/8QsezbB cd AnuDBBenchmark./build.sh /path/to/AnuDB /path/to/sqlite./benchmark Results are saved to benchmark_results.csv. When to Use AnuDBUse AnuDB if: You need embedded storage with high concurrency You’re dealing with telemetry, sensor data, or parallel workloads You want something lightweight and faster than SQLite under load Stick with SQLite if: You need SQL compatibility You value mature ecosystem/tooling Feedback WelcomeThis is an early experiment. We’re actively developing AnuDB and would love feedback: Is our benchmark fair? Where could we optimize further? Would this be useful in your embedded project?
4 by hashmak_jsn | 0 comments on Hacker News.
We recently benchmarked AnuDB, a lightweight embedded database built on top of RocksDB, against SQLite on a Raspberry Pi. The performance difference, especially for parallel operations, was dramatic. GitHub Links: AnuDBBenchmark: https://ift.tt/8QsezbB AnuDB (Core): https://ift.tt/OebkDd5 Why Compare AnuDB and SQLite?SQLite is excellent for many embedded use cases — it’s simple, battle-tested, and extremely reliable. But it doesn't scale well when parallelism or concurrent writes are required. AnuDB, built over RocksDB, offers better concurrency out of the box. We wanted to measure the practical differences using real benchmarks on a Raspberry Pi. Benchmark SetupPlatform: Raspberry Pi 2 (ARMv7) Benchmarked operations: Insert, Query, Update, Delete, Parallel AnuDB uses RocksDB and MsgPack serialization SQLite uses raw data, with WAL mode enabled for fairness Key ResultsInsert: AnuDB: 448 ops/sec SQLite: 838 ops/sec Query: AnuDB: 54 ops/sec SQLite: 30 ops/sec Update: AnuDB: 408 ops/sec SQLite: 600 ops/sec Delete: AnuDB: 555 ops/sec SQLite: 1942 ops/sec Parallel (10 threads): AnuDB: 412 ops/sec SQLite: 1.4 ops/sec (!) In the parallel case, AnuDB was over 279x faster than SQLite. Why the Huge Parallel Difference?SQLite, even with WAL mode, uses global database-level locks. It’s not designed for high-concurrency scenarios. RocksDB (used in AnuDB) supports: Fine-grained locking Concurrent readers/writers Better parallelism using LSM-tree architecture This explains why AnuDB significantly outperforms SQLite under threaded workloads. Try It YourselfClone the repo: git clone https://ift.tt/8QsezbB cd AnuDBBenchmark./build.sh /path/to/AnuDB /path/to/sqlite./benchmark Results are saved to benchmark_results.csv. When to Use AnuDBUse AnuDB if: You need embedded storage with high concurrency You’re dealing with telemetry, sensor data, or parallel workloads You want something lightweight and faster than SQLite under load Stick with SQLite if: You need SQL compatibility You value mature ecosystem/tooling Feedback WelcomeThis is an early experiment. We’re actively developing AnuDB and would love feedback: Is our benchmark fair? Where could we optimize further? Would this be useful in your embedded project?
Scientists taught parrots to video call each other, and the birds loved it
20 by michalpleban | 3 comments on Hacker News.
20 by michalpleban | 3 comments on Hacker News.
Oregon State University's Open Source Lab Is Running on Fumes
20 by doener | 0 comments on Hacker News.
20 by doener | 0 comments on Hacker News.
MTerrain: Optimized terrain system and editor for Godot
4 by klaussilveira | 0 comments on Hacker News.
4 by klaussilveira | 0 comments on Hacker News.
Show HN: Outpost – OSS infra for outbound webhooks and event destinations
26 by alexbouchard | 4 comments on Hacker News.
Hey HN, we're launching Outpost, an open-source, self-hostable component designed to handle outbound event delivery for SaaS/API platforms. If you're building a platform, you eventually need to send events to your users (think payment success, resource updates, workflow changes). Implementing this reliably—handling retries, monitoring, scaling, providing a decent dev experience for consumers, and managing tenants—becomes a significant, recurring engineering task that distracts from core product development. We built Outpost to offload that complexity. Outpost delivers events via traditional webhooks and also directly to event destinations like message queues and buses. While webhooks are ubiquitous, they have limitations at scale regarding cost, reliability patterns, and security posture. We observed platforms like Stripe, Shopify, and Twilio offering direct bus/queue integrations for these reasons—it's often cheaper and more resilient. It offers a better DX for consumers who prefer programmatic consumption. Outpost provides this flexibility out of the box as a core feature. Key features: - Multiple Delivery Methods: Webhooks + native Event Destinations (SQS, Kinesis, GCP Pub/Sub, RabbitMQ, Hookdeck, etc.). - Guaranteed Delivery: At-least-once guarantee with configurable automatic retries. - Observability: Built-in event log & OpenTelemetry support. - Management: API for destination (endpoint) management; optional User Portal for end-user self-service (debugging, destination management). - Multi-tenancy, topics, webhook security best practices (signatures, timestamps), etc. Given you most likely already have a system in place, Outpost is backward compatible with your existing payload format, HTTP headers, and signatures. It's written in Go and licensed under Apache 2.0. It's still early days, and we'd love your feedback – especially on the architecture, desired event destinations, or any rough edges you find. GitHub: https://ift.tt/IN4QjWm Docs: https://ift.tt/iCRlfaE Thanks for checking it out!
26 by alexbouchard | 4 comments on Hacker News.
Hey HN, we're launching Outpost, an open-source, self-hostable component designed to handle outbound event delivery for SaaS/API platforms. If you're building a platform, you eventually need to send events to your users (think payment success, resource updates, workflow changes). Implementing this reliably—handling retries, monitoring, scaling, providing a decent dev experience for consumers, and managing tenants—becomes a significant, recurring engineering task that distracts from core product development. We built Outpost to offload that complexity. Outpost delivers events via traditional webhooks and also directly to event destinations like message queues and buses. While webhooks are ubiquitous, they have limitations at scale regarding cost, reliability patterns, and security posture. We observed platforms like Stripe, Shopify, and Twilio offering direct bus/queue integrations for these reasons—it's often cheaper and more resilient. It offers a better DX for consumers who prefer programmatic consumption. Outpost provides this flexibility out of the box as a core feature. Key features: - Multiple Delivery Methods: Webhooks + native Event Destinations (SQS, Kinesis, GCP Pub/Sub, RabbitMQ, Hookdeck, etc.). - Guaranteed Delivery: At-least-once guarantee with configurable automatic retries. - Observability: Built-in event log & OpenTelemetry support. - Management: API for destination (endpoint) management; optional User Portal for end-user self-service (debugging, destination management). - Multi-tenancy, topics, webhook security best practices (signatures, timestamps), etc. Given you most likely already have a system in place, Outpost is backward compatible with your existing payload format, HTTP headers, and signatures. It's written in Go and licensed under Apache 2.0. It's still early days, and we'd love your feedback – especially on the architecture, desired event destinations, or any rough edges you find. GitHub: https://ift.tt/IN4QjWm Docs: https://ift.tt/iCRlfaE Thanks for checking it out!
Accents in Latent Spaces: How AI Hears Accent Strength in English
45 by ilyausorov | 6 comments on Hacker News.
45 by ilyausorov | 6 comments on Hacker News.