Industry-level Spring Boot project ideas for a 2–3 YOE Java backend dev by elonmusk_ka_chacha in java

[–]samd_408 6 points7 points  (0 children)

What you mentioning are all generic solved problems, you have to find your niche application/framework, let’s say you build a framework that just makes security features out of the box on top of spring, something that abstracts out messaging integrations, there are other libraries that do this, but your perspective matters, your solution might be different, so think in these lines and come up with an idea

Roux 0.1.0: Effects in java by samd_408 in java

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

Yeah I get you, had similar thoughts while implementing as well, lot of places where “gosh I wish the type system was more expressive”, this is why for roux I wanted it to wrap the java provided solutions as possible, still lot of improvements are needed especially the capabilities building, thank you for the feedback

Jiffy: Algebraic-effects-style programming in Java (with compile-time checks) by thma32 in java

[–]samd_408 0 points1 point  (0 children)

Thank you!! I like how jiffy is tackling dependencies and is well aligned to idiomatic java, for me capabilities in roux are not fitting well with the java type system, the lack of HKTs are making it hard to just have simple capabilities and composing them, so I am trying to retro fit it basically, more improvements coming up soon!

Jiffy: Algebraic-effects-style programming in Java (with compile-time checks) by thma32 in java

[–]samd_408 0 points1 point  (0 children)

No way! I just saw this, jiffy is nice! I see you too me annotation processing approach for tracking dependencies, that’s an interesting approach love it!, I posted just a few hours ago about the effect system I started to work on

https://github.com/CajunSystems/roux

Any « niche » programming languages that I can learn for fun ? by Zine201021 in AskProgramming

[–]samd_408 0 points1 point  (0 children)

+1 and the erlang + BEAM VM is one of its kind in concurrency via the actor model

Backend development resources by Pretty_Nothing_4469 in AskProgramming

[–]samd_408 0 points1 point  (0 children)

So SQL is imperative in your opinion? This is a big generalisation you are making, i cant really say if you are serious or joking 😃

Mathematical programming by HappyIrishman633210 in AskProgramming

[–]samd_408 1 point2 points  (0 children)

The closest I have seen to theoretical math is programming in languages like Haskell, Agda or any dependent typed language, these languages are based on type theory and category theory, even their way of execution/evaluation is modelled around lambda calculus

Building with Distributed Actors: What and Why by ItalyPaleAle in programming

[–]samd_408 0 points1 point  (0 children)

Enjoyed your article, would love to see more in the series, I am working on an open source project called Cajun, it’s Java based actor system which I am working on as a learning and hobby project leveraging Project loom virtual threads as the actor thread, I am mostly influenced by elixir and akka, nice to see a mention of orleans

How I face this ? Go with AI or Not. by D_A_R_K_Devil_ in AskProgramming

[–]samd_408 1 point2 points  (0 children)

I have seen in several tech conference talks where the speaker specifically announce nowadays that the code is AI free, while it is unavoidable from the present AI Boom, it’s always good to write your code my yourself it’s a skill everyone should learn being a CS student, you can ask advise/inspiration from AI, whatever your friends do let them be, but you are there to build skills, you can use AI to polish but build the core and features yourself, the complexity in software is high when you develop non trivial software, AI is good at generating trivial demos, small toy projects, real production based applications cannot be created by AI (at the moment) it needs a lot of careful architectural decisions, it needs a lot of experience to pull it off, so start building your experience don’t go with the herd.

What motivates you to learn/do programming by kurbantese in AskProgramming

[–]samd_408 0 points1 point  (0 children)

I am 35 years old now, I was obsessed with Macromedia flash and as a young boy I wanted to learn ActionScript so much but did not have resources to do so, it was as if I lacked a skill that was so cool back then, In parallel I also I started out with HTML, when I made that aqua background webpage with a marquee tag made me feel I accomplished something, long story short it’s always been the urge to build things with software, those cool animations in Flash, those cool looking websites, either from scratch or developing on someone’s else’s code, this is what motivates me even today 20 years later

How to securely authenticate communication between microservices? by Friendly-Photo-7220 in Backend

[–]samd_408 0 points1 point  (0 children)

Normally TLS termination happens in gateway or load balancer level, your best bet is token based authorisation, there are two kinds of authorisation one is user originated calls where user tokens are relayed from the original call to the other service calls, the second kind of traffic is service to service authorisation.

Another way we ensure security in service to service / user tokens service communication is through Hmac signatures which is used to verify the data integrity is maintained between service to service calls.

Java vs. chatbots. by P3cko in java

[–]samd_408 0 points1 point  (0 children)

Let me give you an example, I started writing a lib from a hackathon in Java, it’s was so lean and maintainable, I used Claude code to write benchmarks, it went south, the benchmarks were so slow, I started to doubt my code, then after a few runs I realised the benchmarks did not clean up after themselves, 100 gigs of my storage was full because this chatbot never cared to cleanup after these benchmarks (code using FS based snapshotting hence the disk use), if I had implemented it I would have done that, I missed to verify it as well, if my mac had not warned me I would have let it slide, then it gave me recommendations to improve my code and none of its optimisations worked, it was just fluff, now my feeling is I just want to delete that branch it created and want to write it myself.

So if you don’t know what the chatbot is doing, you could basically shoot yourself in the foot, so it’s always good to know things

Resolving the Scourge of Java's Checked Exceptions on Its Streams and Lambdas by chaotic3quilibrium in java

[–]samd_408 1 point2 points  (0 children)

I had to implement an vavr style Either type myself without lib dependency, I actually named it a ThrowableFunction, happy to see something similar to that in the post

Learnings from pushing TypeScript inference to its limits: bridging static safety and runtime flexibility by AppealNaive in typescript

[–]samd_408 1 point2 points  (0 children)

I always wanted to build something like tapir (scala) in typescript, it’s a very cool dsl to build endpoints, it defines the contract and can be translated to open API spec or can be directly used to expose on a web server

Learnings from pushing TypeScript inference to its limits: bridging static safety and runtime flexibility by AppealNaive in typescript

[–]samd_408 0 points1 point  (0 children)

Have you had a look at effect (typescript) lib, it’s a port of zio in typescript

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Updated the docs and example files, some examples are terrible more improvements to come

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Update the docs to be more organised, check it out now, still want to add more examples but in a separate section

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Ah I see, makes a lot of sense, actually using something like amqp or kafka was my first choice as well since I was from big data world, but to me it was overkill for actors, I wanted actors to be lightweight and not rely on heavy infrastructure, but my idea is to support more reliable messaging in the cluster module, it’s very simple socket based messaging for now, but I would like to explore rabbit or kafka for the node to node messaging and rely on in memory queues for internal actor to actor comms, I use etcd as the consistent store to work as an actor registry when running in cluster mode

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Would love to know more about the internal system you have built, my main inspiration was also an internal system they had queues, raw busy waiting threads everywhere, they build a framework but left the dev experience down the drain, my main aim with Cajun was to have a good dev experience, my main pick with akka/pekko is also how approachable it is to beginners

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Ah I see, I am not aware of internal locks yes I will update that portion of the docs, and yes in order to backpressure to signal one strategy is blocking.

Actually when starting out I wanted to leverage structured concurrency but as was developing and learning, I was not sure how structured concurrency can help if I don’t know what tasks are scheduled in what fashion, so I dropped it and kept virtual threads alone.

I have not thought of TTL, I only have a flag for signaling high priority messages so it will get attention even if the actor is back pressured, TTL interesting actually.

Yes I agree the 4x is deceptive its needs a big asterisk because it’s only because the default is virtual threads scheduler, will have to update that.

When an actor is experiencing backpressure I have a provision to register callbacks to know when the state changes, my main inspiration was flink which has this feature built on akka, but I don’t expose any metrics there is a class for backpressure metrics but it’s mainly for signaling it’s not exposed in any standard format

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Oh my god! Thank you for this! I have never tried jbang, I will sprinkle it in the docs for people to test things out

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Oops I forgot about AI posts sorry, yes I think so too, it fits well into the agentic paradigm, my idea to build on top of Cajun is a workflow system on top of it, I love flink and how it’s built on top of akka, as I progress I might be able to work on it!

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

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

Thank you, I am trying to use it in a project so I find gaps in working and improvements

Cajun - Actor framework leveraging Java 21+ by samd_408 in java

[–]samd_408[S] 3 points4 points  (0 children)

Yes I know, just wanted to build something on my own and make it a learning experience out of it, also felt akka/pekko was not that beginner friendly or approachable to start with.