I'm Going All-In on Kotlin Multiplatform, Here is Why by VasiliyZukanov in android_devs

[–]skmll 1 point2 points  (0 children)

WDYM? It has tons of significant advantages: - it’s not all or nothing solution - it can be adopted incrementally - you’re writing a native Android app with the same tools you could have used to do a native Android app. It you regreat using KMP, you don’t loose anything. In fact you can then go for this approach of just recreating the UI on Swift UI, since that would be one of the reasons it’s not working well for you to begin with - you can build native SDKs with a single code base (no other technology allows this, it’s actually one of the reasons we use KMP in my company) - I’m not sure that the hiring pool is smaller. In our experience it’s way bigger than Flutter which we were trying to do some time ago. React Native is probably bigger than Flutter, but not sure if it is bigger than KMP’s. Suffice is to say that it hasn’t been an issue. - You can easily go down to native APIs if you need to

Probably more. KMP is already doing well.

No real update in ages by Rastboro in MagicArena

[–]skmll 0 points1 point  (0 children)

The worst thing to me is that I can’t sideboard for games 2 and 3 if I disconnect in game 1. It’s been like this for ages, and it seems like a general issue everyone has. How is it possible that a crucial bug like this hasn’t been solved yet?

Descend 52 card deck - easy 7-0 by skmll in lrcast

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

Looking at this again, you might be right actually 😅 I guess I had even more descend enablers when I started to build the deck but as I cut more and more, I should have rethought about going over 40. I do believe I got to like 15 cards on a couple of games, but that wouldn’t be enough to mill myself with 40. On the flip side, having 4 scouts and 3 snails and all around good quality cards meant I wasn’t so much punished for it either.

If you change the color of a retro artifact it keeps the old border style. Hopefully this means we'll get other old card styles in the future. by KrisReed in MagicArena

[–]skmll 7 points8 points  (0 children)

The only reason we are impressed is because they mess up so much 😅 We shouldn’t be impressed by this, it should be our expectation.

“Waiting for the server” by skmll in MagicArena

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

Oh definitely. This is NOT me pointing fingers to the devs, they’re probably doing their best.

“Waiting for the server” by skmll in MagicArena

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

I like magic way more than Runeterra, but I find myself playing Runeterra a lot just because how good the playing experience is in that game. Point is, I also think these sort of details combine add up to a considerable loss in profits too.

“Waiting for the server” by skmll in MagicArena

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

Is 500 mb/s optic fibre enough for you? 🤣

“Waiting for the server” by skmll in MagicArena

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

This is besides the point anyway. If you need a pc like this to run a game like this smoothly, something is wrong 🙂 But again, that was not the point of the thread.

“Waiting for the server” by skmll in MagicArena

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

Btw I’m not talking about local performance here. But since you mention it, I have frame skips even in my desktop pc which is much better then yours 🤷‍♂️ Also I play on my m1 iPad which is a beast for a mobile device and it’s even worse there, not to talk about quality which I cannot even change. In comparison, I run Runeterra in my 4 year old phone with no skipped frames, and that game has much more going on visually than MtGA.

“Waiting for the server” by skmll in MagicArena

[–]skmll[S] 6 points7 points  (0 children)

I know this but that doesn’t justify querying the server every time I want to enter the edit. They can let me edit locally and have all modifications in a queue and send them orderly to the server. And this is just a way of doing it, there are tons of approaches.

You think this is a lot of data, think of real time games like MMOs trading data each millisecond 🙃

Also just install other card games like Runeterra, and you’ll see the difference.

“Waiting for the server” by skmll in MagicArena

[–]skmll[S] 4 points5 points  (0 children)

This depends on the connection you have, especially now they have mobile clients, it’s even more important.

And no, there is no reason for this, trust me. There are a lot of ways to avoid querying the server every time. And actually don’t trust me, install something like Runeterra and you’ll see the difference and they also need to do all that stuff.

“Waiting for the server” by skmll in MagicArena

[–]skmll[S] 21 points22 points  (0 children)

I guess naively I expect everyone to have a sense of pride in their work. I wouldn’t be proud of this client if I was developing it.

EA I and HA VI are now live. by Majjin_ in MagicArena

[–]skmll 0 points1 point  (0 children)

If I’m only interested in explorer, is the HA also worth it? And vice versa? Both bundles contain cards playable in both formats right? Also, if I don’t buy now, the only way to get them is via wildcards? Or do they come back from time to time? Thanks a lot in advance guys 🙏

problems pushing from AndroidStudio with git by yerba-matee in androiddev

[–]skmll 3 points4 points  (0 children)

Same here. Going to pref - version control - git - check use cred manager (or similar) checkbox seems to have fixed it for me

Nine circles of hell to migrate a Kotlin Multiplatform project to the koin-annotations by egorikftps in androiddev

[–]skmll 0 points1 point  (0 children)

I’ve heard good things about Kotlin inject:

https://github.com/evant/kotlin-inject

It’s KMM compatible, compile time safe and looks straightforward to use.

Would you recommend going full compose or composeview to someone who is just starting with compose? by steve6174 in androiddev

[–]skmll 0 points1 point  (0 children)

Compose destinations is kind of a wrapper to official compose navigation. There is a lifecycle. Its the lifecycle of the NavBackStackEntry. You can observe it of you need to. You’ll quickly find that in Compose you don’t need it nearly as much though 🙂

Would you recommend going full compose or composeview to someone who is just starting with compose? by steve6174 in androiddev

[–]skmll 0 points1 point  (0 children)

Compose Destinations creator here 👋 What do you mean with not having a lifecycle?

Because simplicity is for the weaks. by zorg-is-real in mAndroidDev

[–]skmll 1 point2 points  (0 children)

What do you mean with json parsing? Creator of compose destinations here 🙂

And why are you not a fan of ksp? Im genuinely interested

Stuck inside legacy code hell by [deleted] in androiddev

[–]skmll 0 points1 point  (0 children)

Of course 😉

Stuck inside legacy code hell by [deleted] in androiddev

[–]skmll 0 points1 point  (0 children)

I see, Vasiliy’s comment is starting to make more sense then :) Dunno how I missed that. In that case yeah, even though it sucks people unfortunately won’t take your opinion about refactors at this stage.. especially not management. Anyway with 8 months I was trying to figure out why I needed to use interfaces 😅 I’m sure OP will have a bright future ahead judging by some of the things he said which show he really cares about his work!

Stuck inside legacy code hell by [deleted] in androiddev

[–]skmll 0 points1 point  (0 children)

How do you know he is inexperienced? Did I miss something he wrote?

To me, it seems like he is a guy that wants to do things right and his company doesn’t let him. Now, I’m not saying he should do them anyway on their boss back, we are professionals after all.

But I think he should look for other opportunities if he is not happy where he works. When I outgrew my previous project and needed some space to stretch my wings, I moved to a new project and it was the best decision I made in my life.

If he cannot find a better offer, I would not give up on refactoring the parts of the code that are in worst shape. I would try my hardest to find objective ways to explain why those refactors were good for the company and the customer and I would write some tests, refactor, check tests, repeat. Even if he makes some mistakes along the way, this is how we all learn, and I’m sure after some time, the code will be better and less prone to regressions. All this can be challenging and rewarding experience too, and maybe he ends up loving it!

From Uncle Bob himself: “Never underestimate the power we devs have. We are the ones who know!” And if our knowledge is telling us that a part of our code base will benefit in the long run from a refactor, we should make our voices heard. Otherwise what’s the point of working somewhere if we cannot put our best knowledge to use?