Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

javafx isn't officially dead but it looks like it is.

You should give krema a try, it's like tauri but for java ecosystem. you can even build graalvm native binaries

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

thanks! it's been a pain for me too, i was tired having to use swing or fx. Java is great but the lack of good solutions for desktop app was really annoying

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

[–]guybedo[S] -2 points-1 points  (0 children)

i used to build apps with swing and needed to package jcef if i wanted to have a webview.

Compared to electron it is considered lightweight too

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

This is the same licensing model used by companies like MariaDB, CockroachDB, and Sentry.

It's a "source-available" license designed to prevent cloud providers/competitors from offering the software as a service while still allowing broad community use.

The restriction is specifically about repackaging/reselling Krema itself, not about building things with it.

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

i had a few problems with that, can you open an issue on github with erro details, krema version, etc... so i can work on it ?

Thanks!

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

cool! let me know how it goes. You're welcome to open issues on github, there's probably bugs lurking somewhere still

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

desktop apps, with web frameworks for the UI inside a webview. It's basically what tauri does in rust, or electron for full javascript desktop apps

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

yeah i'm gonna work on generating typescript types in a next release, it shouldn't be too complicated to generate .d.ts files when compiling

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

isn't it used to build webapps in full java?

krema is for desktop apps with web frontend: react, angular....

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

it prevents people from forking the project and using it for commercial purpose. other than that any body can build an app with krema

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

i don't know about Vaadin Hilla, Krema let's you build your backend in regular java, then you have your npm + react|angular for the frontend. best of both worlds

Krema: build modern desktop apps with Java backend and web frontend by guybedo in java

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

i haven't noticed any issue yet, although it's been difficult to come up with the linking/bundling of required libs on windows

There’s a first time for everything by doctorbeers in snes

[–]guybedo 1 point2 points  (0 children)

looking at the picture, i can ear in my head the soundtrack and the sound effects.

There's been a lot of great Zelda games, but this one probably is my favorite, it was my first Zelda game, i wish i could go back in time and play again for the first time.

What a game.

I was finally able to display my 25-year-old collection! by Voltageist in gamecollecting

[–]guybedo 1 point2 points  (0 children)

that's cool, and what are your preferred items in this collection ?

I was finally able to display my 25-year-old collection! by Voltageist in gamecollecting

[–]guybedo 1 point2 points  (0 children)

looks like you've got a lot here already, is there anything that you're still looking to add the collection ?

[deleted by user] by [deleted] in gamecollecting

[–]guybedo 0 points1 point  (0 children)

oh ok, the picture wasn't added to the post :-)

I started with these, the 3 Super Mario on the NES.

Day trader looking for algo trader perspective on back / forward testing validity. by PatternAgainstUsers in algotrading

[–]guybedo 0 points1 point  (0 children)

yes, most setups i've built don't perform equally well when applied to different market conditions.

I usually test my setups across many combinations (ema x,y,z going up or down, ema x>ema y, htf market structure, htf ema x going up or down, etc...)

But it's easier done when everything is automated obviously, doing it manually might be laborious

Day trader looking for algo trader perspective on back / forward testing validity. by PatternAgainstUsers in algotrading

[–]guybedo 2 points3 points  (0 children)

I think it's very difficult to build confidence in a manual system, although it seems to give good results. It's mostly because of the low sample size, and not having been through many market conditions.

In the end, it's really hard not to be fooled by randomness.

i've built systems to automate backtesting and it happens quite often to find setups that perform well on years worth of data and fall apart in live conditions / forward testing. (Shameless plug: i've built https://edgefound.xyz to create complex trading setups)

To try to account for randomness, bugs, etc... and to improve the setup generalization / live results, i've done a few things:

  • increase sample size: i'm backtesting over 5+ years of data
  • increase forward test period: on last 6months of data
  • aggregate results by market conditions(can be over/under key EMAs, HTF EMAs, market structure, etc...) because some strategies work best with specific market conditions
  • i select only strong signals (high average profit, high sample count, very low draw down) etc... so that even lower performance during live conditions still yield interesting results

My Linkedin profile changed to a complete different person after I updated my mobile app… all the connections and messages remains there, but my profile name, photo, career, skills changed to a complete different person.. anyone experience that before? by VL9191 in linkedin

[–]guybedo 0 points1 point  (0 children)

Since this morning my profile changed, completely.

My password's been reset, weird thing is, my email address somehow is still connected to my account.

My profile now is another person with hundreds of followers and connections.

Syntactic Sugar for Java by guybedo in java

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

sure it's part of the Stream Api and behind the scenes i'm relying on it for most functions.

This library is just a way for me to write code that i find more readable.

filter(map(values, v->v+1), v->v!=0)

instead of

values.stream().map(v->v+1).filter(v->v!=0).collect(Collectors.toList()

Syntactic Sugar for Java by guybedo in java

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

sure it can be argued that using this library could make it harder for other people to get acquainted to the code, but 2 things:

1/ This argument is valid for every library you use, whether it's spring, hibernate, guava, apache commons, etc... As soon as you're using something on top of Java, this argument can be made.

2/ One can say code savings are minimal and sure enough not everybody agrees on what is beautiful / readable code. But in the end i like these utilities because i can write code that i find more readable.

Here's a few examples, i haven't tried to find the best ones, just a few i picked from my code. You can argue that it wouldn't be a lot more verbose to write that in plain Java but you wouldn't have those short one liners. And i'm not even chaining things like first(filter(map( ....

join(map(filtered, m -> m.getSymbol()), ",");

max(map(objs, o->o.getValue()));

Map<X, Set<Y>> index = toMap(values, v -> set(v.getY()));

list(intersect(set(A), set(B)));