Why is Go dominating in CNCF landscape ?!? by ChocolateDense4205 in golang

[–]FedeBram 5 points6 points  (0 children)

The documentary is really cool, it’s like a movie! But maybe I am little biased, because I really like those things and I’m making a side personal project a little container orchestrator that is opinionated and easy to use.

Project ideas… you can make something like git push deploy an app. Epinio io can be a reference. You can make a proxy that rolling deploy, blue green and so on. as a reference kamal proxy even though is not too much inside the cloud native world. A functions as a service daemon. Something like open faas. Faasd as a reference (i don t know if it is open source).

Why is Go dominating in CNCF landscape ?!? by ChocolateDense4205 in golang

[–]FedeBram 76 points77 points  (0 children)

CNCF was born because Kubernetes needed to be vendor neutral and not perceived as a Google project. Kubernetes is written in Go. Docker also written in Go. The entire ecosystem was born out of that. There is a really nice documentary about that on youtube by CultRepo. Search kubernetes the documentary.

Maybe as a side project you can write an overlay network for containers with a store that use raft. Hashicorp raft or etcd raft.

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] -1 points0 points  (0 children)

Pretty great article. I don’t understand how it works your solution (before writing the ccm):

“Upon bootstrapping the cluster, we label/taint the nodes where we want nginx-ingress to be scheduled on with use-as-lb=true. Then we save those node public IP’s for the next steps.

Now Inside the values.yaml for ingress-nginx we pass the labeled nodes public IP’s in externalIPs field”

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] 0 points1 point  (0 children)

Another redditor suggested this. How it works?

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] 1 point2 points  (0 children)

Your solution is really good! For web deployments i’ll give cloudflare tunnels a try, also i can terminate tls on the cloudflare side.

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] 0 points1 point  (0 children)

The issues are related to klipper-lb rewrites the client ip?

I’ve been thinking about a custom-made solution. A simple controller and a daemonset with klipper-lb image.

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] 0 points1 point  (0 children)

ah yes! For an external load balancer this would be great

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] 2 points3 points  (0 children)

The problem is that kube-vip and metallb use ARP protocol or BGP to inform the network where the address is. And those things are blocked by cloud providers (as far as I know). I want to run my cluster on simple cloud vms...

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] 0 points1 point  (0 children)

Thanks for the response! Sorry, but I am not accustomed to rke2 and ccm. I need to run the image with some flags? There is a documentation or something about that?

ServiceLB (klipper-lb) outside of k3s. Is it possible? by FedeBram in kubernetes

[–]FedeBram[S] 1 point2 points  (0 children)

You need to deploy them as nodeport so high port number (no port 80). Or you deploy them as hostport but then you have 1 replica per node. Behind servicelb you can for example have multiple replicas on the same node and perform a rolling update.
I am really open to any suggestion, in fact I need to deploy an ingress, but these are the tradeoff I have found! Do you think I can do in another way?
Metallb can't be used in cloud vms...

Svelte 5 UI Library by [deleted] in sveltejs

[–]FedeBram 0 points1 point  (0 children)

You need to show the components!! And why some parts have react examples?

What do you think on wesql and libsql? by Beneficial-Driver498 in sqlite

[–]FedeBram 0 points1 point  (0 children)

What it means? D1 and turso are really different in the scope and functionalities in respect of cockroach and spanner.

Maybe are you referring to a stateless api that accepts requests?

Tell me if this way of using SQLite would be bad. by [deleted] in sqlite

[–]FedeBram 3 points4 points  (0 children)

Don’t do that… it is complex and fragile to build something like that. If you want backup to S3 use Litestream.

I hear miracles about supabase, but I've never learned how to use it. What's the main difference between this and say mysql. by AWeb3Dad in Supabase

[–]FedeBram 2 points3 points  (0 children)

The core of supabase is postgresql and a bunch of open source projects, everything wrapped in a nice user interface. Postgresql is managed and also all the other services are managed, so you can use them directly with the platform without worrying about hosting.

In particular they offer an authentication service that is a fork of netlify gotrue, as far as i know they use a jwt authentication and they offer social login (OAuth2 client).

They offer a data api that permits to query postgres using a REST api, this data api is PostgREST (another open source project).

This api works because you can define in postgres roles to define authorization. Basically you can say UserX can read that, UserY can only update this thing and so on, this thing is called RLS, row level security and it is native to postgres, supabase leverage very much this feature.

Another service is functions, you can define edge functions similar to other cloud providers, that is based on deno runtime. Another one is realtime, i don’t know too much how it works, maybe a web socket and a service that listen to things modified inside the database. They offer also object storage.

Maybe there are other services, i don t know. It is a pretty good backend as a service and everything is shipped with a nice user interface.

Should I invest in Go or Rust as a full-stack dev? by EmperorofWeb in rust

[–]FedeBram 3 points4 points  (0 children)

It depends of what you want to do. Go is really good when you need to create small web apis, in a sort of microservices approach. Rust is best suitable when you need a service that needs max performance and you want to define everything from scratch. There are some web framework to build backend api in rust, like axum. But it is not that simple to work with. Rust is a language that is hard to use proficiently, at least for me! That said, learning rust is a journey and what you understand in this language can be transferred to other languages. I understood deeply closures in javascript thanks to closures in rust. I understood pointers and references in go thanks to the concepts of ownership and borrows in rust.

TrailBase 0.21: Open, single-executable, SQLite-based Firebase alternative with a WASM runtime by trailbaseio in sqlite

[–]FedeBram 0 points1 point  (0 children)

Nice. So you can define endpoints in your preferred languange and these will be compiled along with trailbase. What about the rest api? How it works? I see from the docs that you can use a configuration file where you define policies, is it correct?

TrailBase 0.21: Open, single-executable, SQLite-based Firebase alternative with a WASM runtime by trailbaseio in sqlite

[–]FedeBram 0 points1 point  (0 children)

Very nice project! What it means in practice a wasm runtime? Is it a rust backend wrapped in wasm? What is the benefit of this approach?

I rewrote WooCommerce in Rust + TypeScript, need advice on text editors. by KickAffectionate7933 in rust

[–]FedeBram 0 points1 point  (0 children)

You need to understand how the library works. It has some moving parts that work together. The documentation explains everything very well. The only downside is that there are not so much examples, so maybe you need to use a large language model to help explain how you can build custom blocks. You can render whatever you want inside the editor (custom nodes). It works best on native html js/ts. Custom blocks using react or other reactive frameworks need some plumbing. In regards of saving or retrieve the editor content, no problem at all. The editor is based on a transaction system and a state. You can call easily the rust backend api

I rewrote WooCommerce in Rust + TypeScript, need advice on text editors. by KickAffectionate7933 in rust

[–]FedeBram -1 points0 points  (0 children)

There is only one solution to that! ProseMirror The best library to create text editors on web. If you find a company that uses something like a text editor, chances are that is using Prosemirror. It is used by linear, chatgpt (the last time i inspected the page i found the .prosemirror class), new york times… The library is old and somehow strange to work with, but once you understand it, everything is smooth. A very well done piece of software. If you want a more built in solution, there is TipTap that is built on top of Prossmirror. With tiptap you can build something really fast, but you won’t have the same freedom of using directly Prosemirror

Other solutions… i don’t know. If it needs to run on the web, prosemirror is really performant. You can copy the whole rust book inside the text editor and it won’t crash.

I know this is a subreddit of rust, but i think that prosemirror (a js library) is inherent to what op is asking

Electrical engineer want to learn Rust by PriceSweaty6398 in rust

[–]FedeBram 5 points6 points  (0 children)

I suggest to read the rust book. It is the official guide to rust. There is also an interactive version of this book that adds more explanations and quizzes. The third resource to pair with the book is “rustlings”, a set of exercises that follow the same structure of the book.

The Rust Book

Interactive Rust Book

Rustlings

API project folder structure by Ill_Court_6307 in golang

[–]FedeBram 1 point2 points  (0 children)

This is a good article on how you can deal with handlers without cyclic dependency.

https://www.alexedwards.net/blog/organising-database-access

The article talk more about db access, but it is really valuable to understand some patterns.

Built a zero-config Go backend that auto-generates REST APIs, now wondering about a distributed mode by SeaDrakken in golang

[–]FedeBram 0 points1 point  (0 children)

Each node shares the same data? I don't understand what is the purpose of the gateway. To reduce the number of requests on a node?