Saturday, 30 April 2022
New top story on Hacker News: Ask HN: Beyond AWS/Azure/GCP, what cloud providers should I know more about?
Ask HN: Beyond AWS/Azure/GCP, what cloud providers should I know more about?
9 by tomrod | 4 comments on Hacker News.
If you were to advise someone starting to build a SaaS product from an idea, what cloud providers would you recommend knowing more about beyond the bigger three?
9 by tomrod | 4 comments on Hacker News.
If you were to advise someone starting to build a SaaS product from an idea, what cloud providers would you recommend knowing more about beyond the bigger three?
New top story on Hacker News: GitBOM: Enabling Universal Artifact Traceability in Software Supply Chains
GitBOM: Enabling Universal Artifact Traceability in Software Supply Chains
5 by todsacerdoti | 0 comments on Hacker News.
5 by todsacerdoti | 0 comments on Hacker News.
Friday, 29 April 2022
New top story on Hacker News: Military mulls recruiting plan to enlist college athletes
Military mulls recruiting plan to enlist college athletes
4 by bryanrasmussen | 3 comments on Hacker News.
4 by bryanrasmussen | 3 comments on Hacker News.
New top story on Hacker News: You can now ask Google to remove your phone number, email or address from search
You can now ask Google to remove your phone number, email or address from search
98 by todsacerdoti | 31 comments on Hacker News.
98 by todsacerdoti | 31 comments on Hacker News.
New top story on Hacker News: Ask HN: It's 2022. Where should I direct the youths to learn about programming?
Ask HN: It's 2022. Where should I direct the youths to learn about programming?
11 by slyrus | 11 comments on Hacker News.
So... Child #2 (18 yo) is interested in learning programming. Good "with computers" and proficient in level-appropriate math but didn't grow up as a hacker like his old man (I'll refrain from making him learn turtle graphics and BASIC). Where should I point the kid to learn the basics? I'm afraid that if I show him how to download (or, better yet, build) emacs, how to build SBCL, install SLIME, etc... and hand the kid copies of SICL and PCL someone will call child protective services on me. I imagine there was a time when the answer would have been java/awt, but those days seem long gone. Maybe there was a let's do it all in javascript phase, but that doesn't seem to be the answer today. So... modern starter pack? VS Code and Python? Tell him to learn Pandas/SciPy/NumPy? Are there any highly recommended online courses for learning this stuff?
11 by slyrus | 11 comments on Hacker News.
So... Child #2 (18 yo) is interested in learning programming. Good "with computers" and proficient in level-appropriate math but didn't grow up as a hacker like his old man (I'll refrain from making him learn turtle graphics and BASIC). Where should I point the kid to learn the basics? I'm afraid that if I show him how to download (or, better yet, build) emacs, how to build SBCL, install SLIME, etc... and hand the kid copies of SICL and PCL someone will call child protective services on me. I imagine there was a time when the answer would have been java/awt, but those days seem long gone. Maybe there was a let's do it all in javascript phase, but that doesn't seem to be the answer today. So... modern starter pack? VS Code and Python? Tell him to learn Pandas/SciPy/NumPy? Are there any highly recommended online courses for learning this stuff?
Thursday, 28 April 2022
New top story on Hacker News: Ask HN: Do you find it challenging to talk to your users?
Ask HN: Do you find it challenging to talk to your users?
13 by atomiomi | 6 comments on Hacker News.
One of the problems I faced when I had my first users on [just-diary.com](http://just-diary.com) is that I didn’t have any way to talk to them. Like getting feedback on using the product, asking them questions about what they want from it, and sharing some tips on how to use some features. Does anyone have the same problem? If yes, how did you solve it?
13 by atomiomi | 6 comments on Hacker News.
One of the problems I faced when I had my first users on [just-diary.com](http://just-diary.com) is that I didn’t have any way to talk to them. Like getting feedback on using the product, asking them questions about what they want from it, and sharing some tips on how to use some features. Does anyone have the same problem? If yes, how did you solve it?
New top story on Hacker News: EU considers banning use of up to 12,000 toxic chemicals
EU considers banning use of up to 12,000 toxic chemicals
14 by ParksNet | 1 comments on Hacker News.
14 by ParksNet | 1 comments on Hacker News.
Wednesday, 27 April 2022
New top story on Hacker News: Show HN: Xlibe: a serverless Xlib (X11) compatibility layer for Haiku
Show HN: Xlibe: a serverless Xlib (X11) compatibility layer for Haiku
12 by waddlesplash | 1 comments on Hacker News.
Hello HN, While there are some projects that implement partial versions of Xlib APIs on non-X11 platforms for compatibility (most notably, Tk), I don't know of any others sophisticated enough to run Cairo and GTK applications (albeit with a few hacks). So I figured this might be technically interesting. As of now it just implements the base Xlib APIs, it doesn't implement XRender, GLX, XInput2, etc. (though it's more than possible, I just didn't see a need yet.) Cross-program interaction is also very limited, and there are plenty of X11 features that likely can't be implemented; but this works sufficiently well that GTK3 is now in Haiku's default package repositories, with GIMP and Inkscape atop it to boot, using this. And for the fun of it, I did try to compile Xnest (the X.org server variant running on top of Xlib) on top of this; it crashed on startup in the keyboard handlers. However, that could potentially be because I didn't have the necessary data files and not because of anything missing in Xlibe; I didn't investigate too far (or it could be an actual incompatibility; Xlibe's keyboard subsystem is rather primitive and is most of the reason I had to patch GTK for full functionality.) (A few more screenshots, including GTK and WINE running atop Xlibe: https://ift.tt/xqdWY3w... )
12 by waddlesplash | 1 comments on Hacker News.
Hello HN, While there are some projects that implement partial versions of Xlib APIs on non-X11 platforms for compatibility (most notably, Tk), I don't know of any others sophisticated enough to run Cairo and GTK applications (albeit with a few hacks). So I figured this might be technically interesting. As of now it just implements the base Xlib APIs, it doesn't implement XRender, GLX, XInput2, etc. (though it's more than possible, I just didn't see a need yet.) Cross-program interaction is also very limited, and there are plenty of X11 features that likely can't be implemented; but this works sufficiently well that GTK3 is now in Haiku's default package repositories, with GIMP and Inkscape atop it to boot, using this. And for the fun of it, I did try to compile Xnest (the X.org server variant running on top of Xlib) on top of this; it crashed on startup in the keyboard handlers. However, that could potentially be because I didn't have the necessary data files and not because of anything missing in Xlibe; I didn't investigate too far (or it could be an actual incompatibility; Xlibe's keyboard subsystem is rather primitive and is most of the reason I had to patch GTK for full functionality.) (A few more screenshots, including GTK and WINE running atop Xlibe: https://ift.tt/xqdWY3w... )
New top story on Hacker News: Show HN: A tool to seed your dev database with real data
Show HN: A tool to seed your dev database with real data
16 by ev0xmusic | 1 comments on Hacker News.
A bunch of developers and myself have created RepliByte - an open-source tool to seed a development database from a production database. Features: - Support data backup and restore for PostgreSQL, MySQL and MongoDB - Replace sensitive data with fake data - Works on large database (> 10GB) (read Design) - Database Subsetting: Scale down a production database to a more reasonable size - Start a local database with the prod data in a single command - On-the-fly data (de)compression (Zlib) - On-the-fly data de/encryption (AES-256) - Fully stateless (no server, no daemon) and lightweight binary - Use custom transformers My motivation: As a developer, creating a fake dataset for running tests is tedious. Plus, it does not reflect the real-world data and painful to keep updated. If you prefer to run your app tests with production data. Then RepliByte is for you as well. Available for MacOSX, Linux and Windows. > https://ift.tt/XELlxw9
16 by ev0xmusic | 1 comments on Hacker News.
A bunch of developers and myself have created RepliByte - an open-source tool to seed a development database from a production database. Features: - Support data backup and restore for PostgreSQL, MySQL and MongoDB - Replace sensitive data with fake data - Works on large database (> 10GB) (read Design) - Database Subsetting: Scale down a production database to a more reasonable size - Start a local database with the prod data in a single command - On-the-fly data (de)compression (Zlib) - On-the-fly data de/encryption (AES-256) - Fully stateless (no server, no daemon) and lightweight binary - Use custom transformers My motivation: As a developer, creating a fake dataset for running tests is tedious. Plus, it does not reflect the real-world data and painful to keep updated. If you prefer to run your app tests with production data. Then RepliByte is for you as well. Available for MacOSX, Linux and Windows. > https://ift.tt/XELlxw9
Tuesday, 26 April 2022
New top story on Hacker News: We unplugged a data center to test our disaster readiness
We unplugged a data center to test our disaster readiness
105 by ianrahman | 5 comments on Hacker News.
105 by ianrahman | 5 comments on Hacker News.
Monday, 25 April 2022
New top story on Hacker News: Hexells – Self-Organising System of Cells Drawing Textures [WebGL]
Hexells – Self-Organising System of Cells Drawing Textures [WebGL]
33 by sva_ | 6 comments on Hacker News.
33 by sva_ | 6 comments on Hacker News.
Sunday, 24 April 2022
New top story on Hacker News: Pushing back against contract demands is scary but please try anyway
Pushing back against contract demands is scary but please try anyway
131 by pavel_lishin | 75 comments on Hacker News.
131 by pavel_lishin | 75 comments on Hacker News.
New top story on Hacker News: The Intuition Behind Bernoulli's Principle (2021) [video]
The Intuition Behind Bernoulli's Principle (2021) [video]
8 by gusgordon | 1 comments on Hacker News.
8 by gusgordon | 1 comments on Hacker News.
Saturday, 23 April 2022
New top story on Hacker News: US Navy wirelessly beams 1.6 kW of power a kilometer using microwaves
US Navy wirelessly beams 1.6 kW of power a kilometer using microwaves
95 by geox | 59 comments on Hacker News.
95 by geox | 59 comments on Hacker News.
New top story on Hacker News: The Carnivorous Plant Guild Welcomes a New Member (2021)
The Carnivorous Plant Guild Welcomes a New Member (2021)
20 by tusslewake | 0 comments on Hacker News.
20 by tusslewake | 0 comments on Hacker News.
New top story on Hacker News: Pupils Reveal ‘Aphantasia’ – The Absence of Visual Imagination
Pupils Reveal ‘Aphantasia’ – The Absence of Visual Imagination
16 by sethrin | 7 comments on Hacker News.
16 by sethrin | 7 comments on Hacker News.
Friday, 22 April 2022
Thursday, 21 April 2022
New top story on Hacker News: Thatcher killed the UK’s superfast broadband before it even existed
Thatcher killed the UK’s superfast broadband before it even existed
123 by car_analogy | 96 comments on Hacker News.
123 by car_analogy | 96 comments on Hacker News.
Wednesday, 20 April 2022
New top story on Hacker News: Show HN: DTL: a language and JavaScript lib to transform and manipulate data
Show HN: DTL: a language and JavaScript lib to transform and manipulate data
17 by jk0ne | 1 comments on Hacker News.
DTL is a project that began it's life as part of a another piece of software for a startup I founded a few years ago. For that project I needed a way to describe how to rewrite data in a portable way. I needed to be able to create the rules on the fly and store them in a database, I needed them to be able to describe transformations I hadn't thought about, but also needed them to be safe and predictable. Though the startup didn't survive, the language I made was so useful to me I felt I had to extract it and make it usable to everyone. DTL is the result. Though the npm module is relatively new, the language itself has been in use in production systems for years. Over the past couple of years I have been working to make it more accessible and useful to newcomers. Though it's really powerful, I tried to make it easy to use and simple to understand so that you can get up to speed quickly and use only as much as you need. To summarize: DTL is a javascript module and related CLI tools that are really handy for transforming data from one format to another. It's made to allow you to specify your transformations as data (JSON by default) which means they are easily shared from frontend to backend and vice versa, as well as making them easily stored in databases, etc. It can be used as part of your project to transform data between APIs, between the frontend and your database, etc. and can do simple mappings as well as complex calculations. It can also be used for validation and is really handy for extracting useful information from large / complex datasets (there are some great examples of this you can try on the website). The CLI tool (dtl) is like jq on sterooids, allowing you to slice, dice and remap csv, yaml, json or even plaintext data doing anything you can describe in a DTL transform. If you ever wished you could `grep` in complex data structures, today is your lucky day. :) I'd love any feedback you have and if you think of anything it doesn't have that it should, I'd love to hear that too.
17 by jk0ne | 1 comments on Hacker News.
DTL is a project that began it's life as part of a another piece of software for a startup I founded a few years ago. For that project I needed a way to describe how to rewrite data in a portable way. I needed to be able to create the rules on the fly and store them in a database, I needed them to be able to describe transformations I hadn't thought about, but also needed them to be safe and predictable. Though the startup didn't survive, the language I made was so useful to me I felt I had to extract it and make it usable to everyone. DTL is the result. Though the npm module is relatively new, the language itself has been in use in production systems for years. Over the past couple of years I have been working to make it more accessible and useful to newcomers. Though it's really powerful, I tried to make it easy to use and simple to understand so that you can get up to speed quickly and use only as much as you need. To summarize: DTL is a javascript module and related CLI tools that are really handy for transforming data from one format to another. It's made to allow you to specify your transformations as data (JSON by default) which means they are easily shared from frontend to backend and vice versa, as well as making them easily stored in databases, etc. It can be used as part of your project to transform data between APIs, between the frontend and your database, etc. and can do simple mappings as well as complex calculations. It can also be used for validation and is really handy for extracting useful information from large / complex datasets (there are some great examples of this you can try on the website). The CLI tool (dtl) is like jq on sterooids, allowing you to slice, dice and remap csv, yaml, json or even plaintext data doing anything you can describe in a DTL transform. If you ever wished you could `grep` in complex data structures, today is your lucky day. :) I'd love any feedback you have and if you think of anything it doesn't have that it should, I'd love to hear that too.
New top story on Hacker News: Apple to roll out child safety feature that scans messages for nudity to UK
Apple to roll out child safety feature that scans messages for nudity to UK
34 by Larrikin | 11 comments on Hacker News.
34 by Larrikin | 11 comments on Hacker News.
Tuesday, 19 April 2022
New top story on Hacker News: Mapr: Native cross platform maps in Rust using WebGPU
Mapr: Native cross platform maps in Rust using WebGPU
57 by adamnemecek | 8 comments on Hacker News.
57 by adamnemecek | 8 comments on Hacker News.
Monday, 18 April 2022
New top story on Hacker News: Ask HN: MacBooks seems to be the only viable option these days
Ask HN: MacBooks seems to be the only viable option these days
62 by open1414 | 134 comments on Hacker News.
I've used ThinkPads all the way from the IBM days and those good old solid Dell computers too. Recently, I decided it was time for an update. I use Linux on the often so it was important for me to purchase a laptop that was compatible. I bought 2 laptops, all of which I had to return in the last 2 months. 1. Dell XPS: I spent over 20+ hours with their support going back and forth. I also had a tech come to my house to replace my motherboard before I gave up and demanded a return 2. Lenovo Carbon X1: The laptop came with a faulty keyboard so I just returned it because I didn't want to wait 30 days for a mail-in repair or drive 2 hours to go to a "local" repair shop. They also made me order the laptop 3 times because their system kept cancelling it for whatever reason so it took an insane amount of time to just purchase the laptop (I spent ~6 hours to just purchase the laptop) Maybe I'm just unlucky but the time I spent and energy I spent to just purchase these laptops shows you why people buy from Apple instead. I strongly dislike MacOS because they force the "apple way" of doing things. But it seems to be the only option these days to buy a computer with ease and get a computer "that just works". My Macbook was more expensive but the time I saved outweighs the price imo.
62 by open1414 | 134 comments on Hacker News.
I've used ThinkPads all the way from the IBM days and those good old solid Dell computers too. Recently, I decided it was time for an update. I use Linux on the often so it was important for me to purchase a laptop that was compatible. I bought 2 laptops, all of which I had to return in the last 2 months. 1. Dell XPS: I spent over 20+ hours with their support going back and forth. I also had a tech come to my house to replace my motherboard before I gave up and demanded a return 2. Lenovo Carbon X1: The laptop came with a faulty keyboard so I just returned it because I didn't want to wait 30 days for a mail-in repair or drive 2 hours to go to a "local" repair shop. They also made me order the laptop 3 times because their system kept cancelling it for whatever reason so it took an insane amount of time to just purchase the laptop (I spent ~6 hours to just purchase the laptop) Maybe I'm just unlucky but the time I spent and energy I spent to just purchase these laptops shows you why people buy from Apple instead. I strongly dislike MacOS because they force the "apple way" of doing things. But it seems to be the only option these days to buy a computer with ease and get a computer "that just works". My Macbook was more expensive but the time I saved outweighs the price imo.
New top story on Hacker News: Pounce: A multiplayer stealth game about hunting / tracking
Pounce: A multiplayer stealth game about hunting / tracking
16 by underanalyzer | 7 comments on Hacker News.
16 by underanalyzer | 7 comments on Hacker News.
Sunday, 17 April 2022
New top story on Hacker News: The money I saved as a child would buy one picogram of gold today
The money I saved as a child would buy one picogram of gold today
190 by diego | 167 comments on Hacker News.
190 by diego | 167 comments on Hacker News.
New top story on Hacker News: Warpgate: Smart SSH bastion that works with any SSH client
Warpgate: Smart SSH bastion that works with any SSH client
34 by todsacerdoti | 7 comments on Hacker News.
34 by todsacerdoti | 7 comments on Hacker News.
New top story on Hacker News: The Synthesis of Two-Terminal Switching Circuits (1949) [pdf]
The Synthesis of Two-Terminal Switching Circuits (1949) [pdf]
7 by Cieplak | 0 comments on Hacker News.
7 by Cieplak | 0 comments on Hacker News.
Saturday, 16 April 2022
New top story on Hacker News: SUSE Linux Enterprise Opens Its Development Model to the Public
SUSE Linux Enterprise Opens Its Development Model to the Public
11 by em-bee | 2 comments on Hacker News.
11 by em-bee | 2 comments on Hacker News.
New top story on Hacker News: Podman Desktop Companion GUI – Parity on All Major Operating Systems
Podman Desktop Companion GUI – Parity on All Major Operating Systems
2 by istoica | 1 comments on Hacker News.
2 by istoica | 1 comments on Hacker News.
New top story on Hacker News: Show HN: My website, hosted on a 386 25 MHz, 4 MiB of RAM, 38400 baud internet
Show HN: My website, hosted on a 386 25 MHz, 4 MiB of RAM, 38400 baud internet
5 by serentty | 3 comments on Hacker News.
5 by serentty | 3 comments on Hacker News.
New top story on Hacker News: Ask HN: What should I bring up during salary negotiation as a junior developer?
Ask HN: What should I bring up during salary negotiation as a junior developer?
17 by _lgj5 | 25 comments on Hacker News.
So i am a junior software developer in a large consultant company and have my first salary negotitations soon and need some help. I was told all juniors would increase the same in a sort of collective way since some did not get the same chances when it came to projects and performance, however my boss said there was a small change they would consider giving a larger raise based on performance. I have been lucky and got a very good project, as in I could show my strengths and it's a high value customer. During the project i took a lot of initiative and responsibility, we were 3 developers working on it (2 seniors and me) and luckily one of them is my boss. The project is now being used by the customer and I am the only one maintaining the project and feeling I have taken even more responsibility than was expected. The project was fairly large consisting of 2 frontends and one backend, where I made ~80% of both the frontends and did all the database work on the backend. To be honest being told that my performance wont impact my salary is kind of a bummer considering i have to wait another year for the next possible raise. I can see myself working here for some time, but i feel like saying that would make them feel like they can pay me less as im not going to leave in the foreseeable future. The project is now also being used as a reference to sell consultants to other customers and it has also garnered attention in nationwide news. So my question to you is how should approach the salary negotiation and how should i present my case to my boss? Sorry if this is incoherent, english is not my first language. Thanks.
17 by _lgj5 | 25 comments on Hacker News.
So i am a junior software developer in a large consultant company and have my first salary negotitations soon and need some help. I was told all juniors would increase the same in a sort of collective way since some did not get the same chances when it came to projects and performance, however my boss said there was a small change they would consider giving a larger raise based on performance. I have been lucky and got a very good project, as in I could show my strengths and it's a high value customer. During the project i took a lot of initiative and responsibility, we were 3 developers working on it (2 seniors and me) and luckily one of them is my boss. The project is now being used by the customer and I am the only one maintaining the project and feeling I have taken even more responsibility than was expected. The project was fairly large consisting of 2 frontends and one backend, where I made ~80% of both the frontends and did all the database work on the backend. To be honest being told that my performance wont impact my salary is kind of a bummer considering i have to wait another year for the next possible raise. I can see myself working here for some time, but i feel like saying that would make them feel like they can pay me less as im not going to leave in the foreseeable future. The project is now also being used as a reference to sell consultants to other customers and it has also garnered attention in nationwide news. So my question to you is how should approach the salary negotiation and how should i present my case to my boss? Sorry if this is incoherent, english is not my first language. Thanks.
Friday, 15 April 2022
New top story on Hacker News: Moreutils: A collection of Unix tools that nobody thought to write long ago
Moreutils: A collection of Unix tools that nobody thought to write long ago
122 by escot | 66 comments on Hacker News.
122 by escot | 66 comments on Hacker News.
New top story on Hacker News: Twitter board adopts poison pill after Musk’s $43B bid to buy company
Twitter board adopts poison pill after Musk’s $43B bid to buy company
101 by grogu88 | 70 comments on Hacker News.
101 by grogu88 | 70 comments on Hacker News.
Thursday, 14 April 2022
New top story on Hacker News: Ninjam is open source software to allow people to make real music together
Ninjam is open source software to allow people to make real music together
34 by Tomte | 2 comments on Hacker News.
34 by Tomte | 2 comments on Hacker News.
Wednesday, 13 April 2022
New top story on Hacker News: Indigenous American Cylinder Recordings and the American Folklife Center (2013)
Indigenous American Cylinder Recordings and the American Folklife Center (2013)
9 by samclemens | 1 comments on Hacker News.
9 by samclemens | 1 comments on Hacker News.
Tuesday, 12 April 2022
Monday, 11 April 2022
New top story on Hacker News: White House warns of 'extraordinarily elevated' March inflation
White House warns of 'extraordinarily elevated' March inflation
28 by memish | 21 comments on Hacker News.
28 by memish | 21 comments on Hacker News.
New top story on Hacker News: Interstellar object exploded over Earth in 2014, declassified govmt data reveal
Interstellar object exploded over Earth in 2014, declassified govmt data reveal
63 by DemiGuru | 36 comments on Hacker News.
63 by DemiGuru | 36 comments on Hacker News.
New top story on Hacker News: Intuit asked Mailchimp employees to pay medical costs out of pocket
Intuit asked Mailchimp employees to pay medical costs out of pocket
75 by luu | 25 comments on Hacker News.
75 by luu | 25 comments on Hacker News.
New top story on Hacker News: Show HN: Multiplayer Demo Built with Elixir
Show HN: Multiplayer Demo Built with Elixir
69 by wenbo | 15 comments on Hacker News.
Hey HN, I’m an engineer at Supabase [0] and one of the creators of this demo. My team and I have been working hard to bring developers the next version of Supabase Realtime. The current version of Realtime [1] is a Change Data Capture (CDC) server for a PostgreSQL database that broadcasts changes via WebSockets to authorized subscribers. It’s written in Elixir/Phoenix. The server utilizes PostgreSQL’s logical replication functionality, which writes database changes to Write-Ahead Logging (WAL) segment files, and a replication slot, responsible for managing and retaining WAL files. Database changes are polled from WAL by the server using PostgreSQL’s replication function pg_logical_slot_get_changes and changes converted to JSON objects using the wal2json [2] extension by setting it as the output plugin. Security is enforced through two checks - each check ensures only authorized client subscribers are sent database changes. The first check validates a JWT that is sent by clients subscribing to database changes. This JWT must contain an existing database role and optional claims, both of which can be referenced in Row Level Security (RLS) policies. Every valid client subscription is then inserted into the realtime.subscription table with an assigned UUID, database role, and claims. The second check calls the realtime.apply_rls SQL function from Write Ahead Log Realtime Unified Security (WALRUS) utility lib [3]. This function takes the database changes, executes a prepared statement to verify if the database role and claims have SELECT permissions on the changes, and outputs an array of authorized UUIDs. Then, the server finds all the subscribers whose UUIDs are in that array and broadcasts the changes to them. The next version of Supabase Realtime will offer three features: Broadcast, Presence, and Extensions. Broadcast, our Pub/Sub offering, can be used to pass ephemeral data from client to client such as cursor movements. This runs on a distributed cluster of nodes built on top of Phoenix PubSub + Channels. Presence, can be used for tracking online/offline users and their state. This is built into Phoenix, and uses replicated state across a cluster using an Observe-Remove-Set-Without-Tombstones (ORSWOT) CRDT [4] which prefers adds over removes when resolving conflicts. Extensions, are a way for the community to add additional functionality to take advantage of the WebSocket infrastructure. We have converted the existing Change Data Capture system to an extension that supports connecting to multiple customer databases (multi-tenancy). Other possible extensions include listening to other databases like MySQL and getting stock market events server-side [5], then broadcasting them to connected clients. This demo is built using a Supabase project, Supabase Realtime, and Next.js and deployed on 20 Fly [6] nodes located around the world. You can find an introduction and walkthrough of the demo here [5]. Supabase Realtime is entirely open source and you can find the demo code here [7]. Once we have stabilized the release we will add it to the self-hosted offering [8]. This demo is a way to highlight the upcoming features and gather feedback/ideas. Feel free to ask me anything and let me know what you think! [0] https://supabase.com [1] https://ift.tt/AZF5HfN [2] https://ift.tt/nXetGsa [3] https://ift.tt/uSMWDyF [4] https://ift.tt/608qPmw... [5] https://ift.tt/4stGIyb... [6] https://fly.io [7] https://ift.tt/kgjpYSb [8] https://ift.tt/XhfViQN
69 by wenbo | 15 comments on Hacker News.
Hey HN, I’m an engineer at Supabase [0] and one of the creators of this demo. My team and I have been working hard to bring developers the next version of Supabase Realtime. The current version of Realtime [1] is a Change Data Capture (CDC) server for a PostgreSQL database that broadcasts changes via WebSockets to authorized subscribers. It’s written in Elixir/Phoenix. The server utilizes PostgreSQL’s logical replication functionality, which writes database changes to Write-Ahead Logging (WAL) segment files, and a replication slot, responsible for managing and retaining WAL files. Database changes are polled from WAL by the server using PostgreSQL’s replication function pg_logical_slot_get_changes and changes converted to JSON objects using the wal2json [2] extension by setting it as the output plugin. Security is enforced through two checks - each check ensures only authorized client subscribers are sent database changes. The first check validates a JWT that is sent by clients subscribing to database changes. This JWT must contain an existing database role and optional claims, both of which can be referenced in Row Level Security (RLS) policies. Every valid client subscription is then inserted into the realtime.subscription table with an assigned UUID, database role, and claims. The second check calls the realtime.apply_rls SQL function from Write Ahead Log Realtime Unified Security (WALRUS) utility lib [3]. This function takes the database changes, executes a prepared statement to verify if the database role and claims have SELECT permissions on the changes, and outputs an array of authorized UUIDs. Then, the server finds all the subscribers whose UUIDs are in that array and broadcasts the changes to them. The next version of Supabase Realtime will offer three features: Broadcast, Presence, and Extensions. Broadcast, our Pub/Sub offering, can be used to pass ephemeral data from client to client such as cursor movements. This runs on a distributed cluster of nodes built on top of Phoenix PubSub + Channels. Presence, can be used for tracking online/offline users and their state. This is built into Phoenix, and uses replicated state across a cluster using an Observe-Remove-Set-Without-Tombstones (ORSWOT) CRDT [4] which prefers adds over removes when resolving conflicts. Extensions, are a way for the community to add additional functionality to take advantage of the WebSocket infrastructure. We have converted the existing Change Data Capture system to an extension that supports connecting to multiple customer databases (multi-tenancy). Other possible extensions include listening to other databases like MySQL and getting stock market events server-side [5], then broadcasting them to connected clients. This demo is built using a Supabase project, Supabase Realtime, and Next.js and deployed on 20 Fly [6] nodes located around the world. You can find an introduction and walkthrough of the demo here [5]. Supabase Realtime is entirely open source and you can find the demo code here [7]. Once we have stabilized the release we will add it to the self-hosted offering [8]. This demo is a way to highlight the upcoming features and gather feedback/ideas. Feel free to ask me anything and let me know what you think! [0] https://supabase.com [1] https://ift.tt/AZF5HfN [2] https://ift.tt/nXetGsa [3] https://ift.tt/uSMWDyF [4] https://ift.tt/608qPmw... [5] https://ift.tt/4stGIyb... [6] https://fly.io [7] https://ift.tt/kgjpYSb [8] https://ift.tt/XhfViQN
New top story on Hacker News: A Critique of the Remote Procedure Call Paradigm (1988) [pdf]
A Critique of the Remote Procedure Call Paradigm (1988) [pdf]
5 by culturedsystems | 0 comments on Hacker News.
5 by culturedsystems | 0 comments on Hacker News.
Sunday, 10 April 2022
New top story on Hacker News: USB receiver for the IBM SK-8807 Infrared-only keyboard
USB receiver for the IBM SK-8807 Infrared-only keyboard
4 by walterbell | 0 comments on Hacker News.
4 by walterbell | 0 comments on Hacker News.
New top story on Hacker News: Counting Sheets Is More Complex Than It Seems: On Origami Classification Part II
Counting Sheets Is More Complex Than It Seems: On Origami Classification Part II
2 by mkosmul | 0 comments on Hacker News.
2 by mkosmul | 0 comments on Hacker News.
Saturday, 9 April 2022
New top story on Hacker News: Reversing Sound Blaster X7 Control for Fun and Linux Support
Reversing Sound Blaster X7 Control for Fun and Linux Support
6 by Sayrus | 0 comments on Hacker News.
6 by Sayrus | 0 comments on Hacker News.
New top story on Hacker News: Reverse-engineering the LM185 voltage reference chip and its bandgap reference
Reverse-engineering the LM185 voltage reference chip and its bandgap reference
7 by picture | 1 comments on Hacker News.
7 by picture | 1 comments on Hacker News.
New top story on Hacker News: Raspberry Pi Pico: What is this obfuscated code(?) doing in its boot ROM (l.442)
Raspberry Pi Pico: What is this obfuscated code(?) doing in its boot ROM (l.442)
82 by nynyny7 | 24 comments on Hacker News.
82 by nynyny7 | 24 comments on Hacker News.
New top story on Hacker News: How to control the metacognition process of programming?
How to control the metacognition process of programming?
11 by harperlee | 0 comments on Hacker News.
11 by harperlee | 0 comments on Hacker News.
Friday, 8 April 2022
New top story on Hacker News: Inside the Bitcoin Bust That Took Down the Web’s Biggest Child Abuse Site
Inside the Bitcoin Bust That Took Down the Web’s Biggest Child Abuse Site
19 by jbegley | 5 comments on Hacker News.
19 by jbegley | 5 comments on Hacker News.
New top story on Hacker News: Astronomers just discovered the farthest object in the known universe
Astronomers just discovered the farthest object in the known universe
16 by wglb | 3 comments on Hacker News.
16 by wglb | 3 comments on Hacker News.
New top story on Hacker News: Turning back the clock: Human skin cells de-aged by 30 years in trial
Turning back the clock: Human skin cells de-aged by 30 years in trial
26 by thunderbong | 7 comments on Hacker News.
26 by thunderbong | 7 comments on Hacker News.
New top story on Hacker News: B773 at Paris on Apr 5th, airplane did not respond to commands
B773 at Paris on Apr 5th, airplane did not respond to commands
27 by dz0ny | 14 comments on Hacker News.
27 by dz0ny | 14 comments on Hacker News.
Thursday, 7 April 2022
New top story on Hacker News: Newly Measured Particle Seems Heavy Enough to Break Known Physics
Newly Measured Particle Seems Heavy Enough to Break Known Physics
51 by digital55 | 24 comments on Hacker News.
51 by digital55 | 24 comments on Hacker News.
Wednesday, 6 April 2022
New top story on Hacker News: The remarkable brain of a carpet cleaner who speaks 24 languages
The remarkable brain of a carpet cleaner who speaks 24 languages
53 by NaOH | 9 comments on Hacker News.
53 by NaOH | 9 comments on Hacker News.
Tuesday, 5 April 2022
New top story on Hacker News: One-click checkout startup Fast is laying off half of its staff
One-click checkout startup Fast is laying off half of its staff
15 by hubraumhugo | 1 comments on Hacker News.
15 by hubraumhugo | 1 comments on Hacker News.
New top story on Hacker News: 300 Drones Formed a QR Code That Rick Rolled Dallas on April Fools' Day
300 Drones Formed a QR Code That Rick Rolled Dallas on April Fools' Day
82 by jaboutboul | 22 comments on Hacker News.
82 by jaboutboul | 22 comments on Hacker News.
Monday, 4 April 2022
Sunday, 3 April 2022
New top story on Hacker News: Tell HN: OpenBB scraping GitHub emails for marketing spam
Tell HN: OpenBB scraping GitHub emails for marketing spam
53 by tmp_1649016698 | 8 comments on Hacker News.
A recent post[0] went around about OpenBB. I starred their GitHub[1] repository because I was interested and now I've just received an email[2] thanking me for signing up for their newsletter. Look, I hate to call the project out but I'm tired of people scraping GitHub for emails and blasting out marketing spam. And I'm confident they scraped my email from GitHub because that's the only place 'github@mydomain.com' is used. [0]: https://ift.tt/PAjmg15 [1]: https://ift.tt/aOWNDry [2]: Hi, We, as OpenBB, would like to personally thank you for signing up to our newsletter. We are on a mission to make investment research effective, powerful and accessible to everyone. The team would love to hear what you think of our OpenBB Terminal and if there is anything we can do to improve it. Feel free to e-mail us at hello@openbb.co or reach us through our Discord to get involved with the community.
53 by tmp_1649016698 | 8 comments on Hacker News.
A recent post[0] went around about OpenBB. I starred their GitHub[1] repository because I was interested and now I've just received an email[2] thanking me for signing up for their newsletter. Look, I hate to call the project out but I'm tired of people scraping GitHub for emails and blasting out marketing spam. And I'm confident they scraped my email from GitHub because that's the only place 'github@mydomain.com' is used. [0]: https://ift.tt/PAjmg15 [1]: https://ift.tt/aOWNDry [2]: Hi, We, as OpenBB, would like to personally thank you for signing up to our newsletter. We are on a mission to make investment research effective, powerful and accessible to everyone. The team would love to hear what you think of our OpenBB Terminal and if there is anything we can do to improve it. Feel free to e-mail us at hello@openbb.co or reach us through our Discord to get involved with the community.
Saturday, 2 April 2022
New top story on Hacker News: GNU Parallel – shell tool for executing jobs in parallel, one or more computers
GNU Parallel – shell tool for executing jobs in parallel, one or more computers
19 by todd8 | 0 comments on Hacker News.
19 by todd8 | 0 comments on Hacker News.
New top story on Hacker News: L.A. Judge Rules LGBT Corporate Diversity Law Unconstitutional
L.A. Judge Rules LGBT Corporate Diversity Law Unconstitutional
17 by zthrowaway | 6 comments on Hacker News.
17 by zthrowaway | 6 comments on Hacker News.
Friday, 1 April 2022
New top story on Hacker News: Daniel Gross: Why Energy Is the Best Predictor of Talent
Daniel Gross: Why Energy Is the Best Predictor of Talent
66 by vinnyglennon | 70 comments on Hacker News.
66 by vinnyglennon | 70 comments on Hacker News.
New top story on Hacker News: Show HN: gh-dash – GitHub CLI dashboard for pull requests and issues
Show HN: gh-dash – GitHub CLI dashboard for pull requests and issues
29 by dlvhdr | 3 comments on Hacker News.
29 by dlvhdr | 3 comments on Hacker News.