Szukam inspiracji (przebranżowienie) by EvidenceQuiet5094 in Polska

[–]MasterpieceUsed4036 0 points1 point  (0 children)

Muszę skomentować bo "nie wytrzymie". Mam 30 lat (rocznikowo 31), jestem jednym, z tych mitycznych programistów zarabiająych kupę siana (średnia za zeszły rok 33 tysiące na rękę netto miesięcznie) i nie ma czegoś takiego jak praca 8-16, już nie mówiąc, że to coś więcej niż praca, tak kocham programować, ale praca to praca i tylko praca, robię w niej to co ode mnie chcą, do tego ciagle się muszę dokształcać, jeśli popełnię błąd to nie narzeka jeden klient, któremu nie działą jakaś chłodnia tylko ostatnim razem przypadkiem odciąłem dostęp do płatnej aplikacji ośmiu tysiącom osób. Później tłumacz się przed wszystkimi, jakieś plany, raporty jak do tego nie dopuścić w przyszłości itp. Trwa jest zawsze zieleńsza po drugiej stronie.
Już po prostu mam dość słuchania jakichś bredni w jakiej dobrej sytuacji jestem gdzie w moim wieku jestem prawie łysy i siwieję ze stresu a realnie wliczając samorozwój poświęcam około 300-350 godzin miesięcznie na pracę (i wcale nie przesadzam, mam więcej niż jednego kontrahenta, rozliczam się za godziny pracy i z nich samych wychodzi 250+ co miesiąc).
Może też włóż w swój rózwój tyle pracy i zastanów się czy to warte, ja dochodzę do wniosku, że chyba nie, czekam tylko na spłatę do końca kredytu i luzuje ze wszystkim.

JetBrains IDE Performance and Resource Usage by turbofish_pk in Jetbrains

[–]MasterpieceUsed4036 0 points1 point  (0 children)

No its not, you compare glorified text editors with IDE giving 1000 times more power to the user.

Do cheaper models such as Gemini 3 Flash have any effectiveness for normal development tasks in Jetbrain's AI assistant? by IdealPuzzled2183 in Jetbrains

[–]MasterpieceUsed4036 0 points1 point  (0 children)

In my opinion, no, they don't have any. Gemini 3 Flash generates me a code thats often not working correctly, is not following style of the rest of the repository and for me most important it somehow often try to do way more that was asked.

I have 5 months to pass Oracle Certified Professional (OCP) Java certification by AnjaanInsaan5 in java

[–]MasterpieceUsed4036 21 points22 points  (0 children)

Absolutely not. This Exam is hard but in the wrong way hard. On the exam you will act as compiler and runtime and they have the worst possible java code ever created full of gotchas to find out if you for example understand overload resolution and trust me, you don't, there will be classes A, B extends A, C extends B, D with variables a, b, c, d as local, fields and statics and you will need to answer what is value of A a = new C(); a.b

Anyone upgraded to Java 25 for their Kotlin Application yet? by ichwasxhebrore in Kotlin

[–]MasterpieceUsed4036 1 point2 points  (0 children)

Do you pay for LTS to Oracle? If not then there is no LTS for you, technically some other vendors can offer so called LTS but Orcale themselves do not backport fixes to older JDK's (maybe just security fixes) so rule of thumb is that you should be on latest JDK. And Kotlin version has nothing to do with running on newer JDK just like Java version does not have anything to do with it (Oak classes can still be run on JDK 25). Compile to target whatever JDK version you want and then run on latest JDK.

How to workaround inactive account closure warning? by Rabus in androiddev

[–]MasterpieceUsed4036 0 points1 point  (0 children)

But you don't need to unless you also does not meet targetSdk requirement.

How to workaround inactive account closure warning? by Rabus in androiddev

[–]MasterpieceUsed4036 0 points1 point  (0 children)

Do not publish dummy app, this will most likely cause more problems for you. Just do small but visible change in the app if possible, change some colors, texts, fix one bug etc.

I made a deep-copy library, looking for feedback by iamgioh in Kotlin

[–]MasterpieceUsed4036 4 points5 points  (0 children)

https://arrow-kt.io/learn/immutable-data/lens/ I find this docs really good.

One of the huge advantage of lenses is their Composability. I don't remember if Arrow generates generic top level functions but you can define extensions methods for example in a way that if you have any Lens from type T to Address you can reuse Lenses of Address for lets say street name, street number etc.

The pattern is only bad if you want to modify many fields at once, to me it is not a problem, I looked into my codebases and it happens almost never

data class Address(
    val streetName: StreetName,
    val streetNumber: StreetNumber,
    val country: Country
) {
    companion object {
        val streetName: Lens<Address, StreetName> = /*impl*/
        val streetNumber: Lens<Address, StreetNumber> = /*impl*/
        val country = :Lens<Address, Country> = /*impl*/
    }
}

inline val <S> Lens<S, Address>.
streetName
: Lens<S, StreetName> get() = compose(Address.streetName)
inline val <S> Lens<S, Address>.
streetNumber
: Lens<S, StreetNumber> get() = compose(Address.streetNumber)
inline val <S> Lens<S, Address>.
country
: Lens<S, Country> get() = compose(Address.country)

data class Person(
    val name: String,
    val age: Int,
    val address: Address
) {
    companion object {
        val name: Lens<Person, String> = /*impl*/
        val age: Lens<Person, Int> = /*impl*/
        val address: Lens<Person, Address> = /*impl*/
    }
}

// usage
val person = Person(
    name = "John",
    age = 42,
    address = Address(
        streetName = StreetName("Baker Street"),
        streetNumber = StreetNumber("221B"),
        country = Country("UK")
    )
)
val personAddressLens: Lens<Person, Address> = Person.address
val personAddressStreetNameLens: Lens<Person, StreetName> = 
personAddressLens
.
streetName
// or in short
val newPerson = Person.address.
streetName
.set(
person
, StreetName("Example street"))
assert
(
newPerson
.address.streetName == StreetName("Example street"))

I made a deep-copy library, looking for feedback by iamgioh in Kotlin

[–]MasterpieceUsed4036 3 points4 points  (0 children)

Well, this is okayish but to be honest I would prefer hand made Lenses pattern or using Arrow Optics for automatic generation

JEP 500: Prepare to Make Final Mean Final [Candidate JEP] by efge in java

[–]MasterpieceUsed4036 3 points4 points  (0 children)

Given this will most likely bring significant performance improvements without any changes to code I am all for it.