#dev-general

1 messages ยท Page 511 of 1

forest pecan
#

if i used kotlin i could also too use extension functions

#

and make my life easier in that case

cinder flare
#

then you can only do C-style interpolation

forest pecan
#

did you know ffmpeg is written in C and assembly

cinder flare
#

yes

forest pecan
#

i dont get how

cinder flare
#

almost all linux utilities are

forest pecan
#

the devs

#

are like

#

the devs are probably like their eyes prolly falling out

#

lmao

cinder flare
#

yeah and they do it for free

forest pecan
#

mhm

cinder flare
#

they are truly the crutches holding up the internet

forest pecan
#

Yeah lol

cinder flare
#

them and like openssl

forest pecan
#

opencv ๐Ÿ‘€

cinder flare
#

what's opencv

forest pecan
#

@obtuse gale

#

lmao

obtuse gale
#

๐Ÿ‘€

forest pecan
#

opencv has a lot of graphical ai stuff that are useful in general

forest pecan
cinder flare
#

C++ i see now

forest pecan
#

but in short, it can do a lot of ai stuff in graphical shit like identifying faces in a picture

#

its pretty cool

cinder flare
#

oh does like tensorflow use it as a backend or something

#

sounds like it would

forest pecan
#

Yeah maybe

cinder flare
#

okay opencv may be good

#

but what about openGL

#

that bad boy powers half the gaming industry

forest pecan
#

Holy shit opengl

#

XD

obtuse gale
#

vulkan good

cinder flare
#

well yeah but openGL paved the way

#

decades before we had vulkan

obtuse gale
#

idc

#

vulkan good

forest pecan
#

I like how you know the famous APIs are like a couple tens of thousands stars right

#

but then there is random ass chinese programming guide

#

that has like 120k stars

#

Lol

cinder flare
#

well send it

#

i gotta add my star

forest pecan
#

I cant search it up

#

its in chinese

#

and i dont got the keyboard rn

#

Lol

cinder flare
#

just dictate it

#

you know chinese right

forest pecan
#

I forgot what it was called, but I remember seeing it on my recommended on my github app

cinder flare
#

"hey siri, chijong maieoi github"

forest pecan
#

Lmao

cinder flare
#

there's a github app?!?!

obtuse gale
#

?

#

yes

cinder flare
#

news to me

forest pecan
#

its been there for nearly 2 years

#

lol

obtuse gale
#

lmao it's been out for a good while now

#

yea

eternal compass
#

Really?

#

Huh

obtuse gale
cinder flare
#

glad im not alone

forest pecan
#
GitHub

:books: ๆŠ€ๆœฏ้ข่ฏ•ๅฟ…ๅค‡ๅŸบ็ก€็Ÿฅ่ฏ†ใ€Leetcodeใ€่ฎก็ฎ—ๆœบๆ“ไฝœ็ณป็ปŸใ€่ฎก็ฎ—ๆœบ็ฝ‘็ปœใ€็ณป็ปŸ่ฎพ่ฎก. Contribute to CyC2018/CS-Notes development by creating an account on GitHub.

#

Found it

#

xD

obtuse gale
#

imagine if /mobile was an org or a user

#

rip

cinder flare
#

got it

forest pecan
#

I mean the examples in the code seem okay

#

but i cant read the actual fucking guide itself

#

lol

cinder flare
#

does vulkan use GLSL

eternal compass
#

I just applied for discord partership, lets goo

cinder flare
#

what does that mean

forest pecan
#

its for your server

#

basically you get a partnership and you get benefits

eternal compass
cinder flare
#

you have a server?

eternal compass
forest pecan
#

wait free nitro forever?

eternal compass
#

Y

forest pecan
#

how big tho

eternal compass
cinder flare
#

what

#

what is it about

eternal compass
#

Plugins

cinder flare
#

you have a competitor to helpchat??

forest pecan
#

dm link

#

Lmao

cinder flare
#

yeah link me dog

eternal compass
#

They're mostly for youtubers, 1s

cinder flare
#

so you're saying im not good enough

forest pecan
#

still

#

1.5k is god damn a lot

cinder flare
#

woah Vulkan is a monad

forest pecan
#

holy shit

#

he isnt capping

#

literally 1.5k members

eternal compass
#

1.47k, sorry

cinder flare
#

why did i not know Fred was this cool

#

i didn't even know you made plugins

#

now I see FredHunt?!?!

eternal compass
#

Lmfao

#

Fredhunt is OS fingerguns

forest pecan
#

some of the code can be improved, but that community damn

cinder flare
#

lmao

#

lets fix it up

#

submit a few PR's

eternal compass
#

:p

forest pecan
#

Yeah lol

cinder flare
#

increase fred's street cred

forest pecan
#

Lol

#

HC competitor

#

xD

eternal compass
#

Lol

cinder flare
#

oh shit u rite

#

fred has infiltrated us as a support member

eternal compass
#

Nah these guys are worse than hc

#

Believe me

half harness
#

๐Ÿ˜Ž getting better at javafx

#

._.

#

the first 10 seconds are frozen

#

and the rest are like 2 fps

#

great

eternal compass
#

(Eg. It still drops, and they are not given a new one)

obtuse gale
distant sun
#

what version is java 60, 16?

prisma wave
#

Probably

distant sun
#

yeah it is

#

8 is 52 so 16 is 60

mental geode
#

ok update im now coding on a pencil

onyx loom
#

sounds great

mental geode
#

is cj89898 on crack

quiet depot
#

most certainly

onyx loom
#

yh

mental geode
#

cuz in his status there is weed and then "medicated"

quiet depot
#

yep I can see how you'd jump from weed to crack

#

very logical

onyx loom
#

@quick flume can u confirm ur on crack

mental geode
onyx loom
#

that is a possibility

mental geode
#

guys im a hot grill in real life dm me to see pick ๐Ÿ‘‰๐Ÿ‘ˆ

#

(i swer no jok)

onyx loom
#

๐Ÿคจ

mental geode
#

also im 14

#

instantly deletes dm

shadow summit
#

and you were watching youtube

shadow summit
shadow summit
#

imma focus on planes

mental geode
prisma wave
#

Boys

#

Home alone

#

You know what that means

boreal needle
#

horny time?

prisma wave
#

๐Ÿ™„

#

Yes

#

But also

#

Tutorial time

jovial warren
#

lol

lunar cypress
#

Tutorial time? ๐Ÿ‘€

jovial warren
#

man, maybe I should work on some tutorials at some point, might be good to do some teaching stuff in preparation for my career path lol

lunar cypress
#

you wanna become a teacher?

jovial warren
#

yeah

#

secondary school teacher

#

a.k.a the 11-18 year olds

prisma wave
#

just cleaning desk first

#

Very important part

jovial warren
winter iron
jovial warren
#

looking at adding more bindings to Krypton for plugins, and just trying to decide if I should allow @Named("server") val address: InetSocketAddress or @Named("players") val players: Set<Player>

quiet depot
#

tutorial for what

jovial warren
#

I mean, not sure what the point of injecting the players list is actually tbh, since it's mutable and can be changed

jovial warren
#

what do you think xD

quiet depot
#

salads aren't cooked

jovial warren
#

they are

#

well, they can be

quiet depot
#

salads are made

winter iron
#

damn he got you there

quiet depot
#

nearly always of cold ingredients

#

that do not need to be cooked

jovial warren
#

you can cook the chicken or the tuna or whatever people put on their salad

quiet depot
#

you're not cooking the salad

jovial warren
#

also seen people cook lettuce before kekw

quiet depot
#

you're cooking components of the salad

jovial warren
#

alright fine

#

whatever

#

not the point

quiet depot
#

it's the only point that matters

#

apart from what bm's tutorial is actually on

jovial warren
#

what kind of tutorial do you think BM would make lol

quiet depot
#

how to speak with an english accent

jovial warren
#

in all seriousness, disregard any of his circlejerking shit

quiet depot
#

how to catch a bus to school

#

how to live on an island

distant sun
#

200 reason to learn haskell

prisma wave
quiet depot
#

the tutorial for life, the universe, and everything?

prisma wave
#

Of course

quiet depot
#

42

prisma wave
#

Also known as java

quiet depot
#

oh

#

i see

lunar cypress
#

It's been 84 years...

prisma wave
#

After 9 years in development, hopefully it was worth the wait

boreal needle
jovial warren
#

why not?

boreal needle
#

self abuse isnt ok my guy

jovial warren
#

it's not self abuse

#

the happiness and enjoyment you get out of teaching far outweighs that of what the annoying kids can try to do to you

boreal needle
#

exposing yourself to children

#

i cannot think of anything worse

jovial warren
#

not exactly "exposing" myself to children

#

also, what's wrong with children?

boreal needle
#

everything

#

absolutely everything is wrong with them

jovial warren
#

ngl, kids are better and easier to deal with than adults half of the time lol

boreal needle
#

adults don't treat every second of their lives like it's playtime

jovial warren
#

neither do secondary students

boreal needle
#

y7s tho

jovial warren
#

they soon grow up

prisma wave
#

kids are obnoxious until at least year 11

#

year 9s and 10s are the most annoying people possible

void plover
#

@pallid gale, dm please.

jovial warren
#

lol

half harness
#

lol

prisma wave
#

lol

winter iron
#

I did coaching for American football with kids between 13-18 and it was good but I guess the main difference is they choose to be there so its ez

half harness
void plover
jovial warren
#

@void plover don't #9

half harness
#

so you don't need to mention him, he's offline anyways

jovial warren
#

please read the rules smh

winter iron
#

Needs to change his name to Not-so-funny-Cube

half harness
#

lol

void plover
#

xD

prisma wave
#

you can DM me instead if you want ๐Ÿ˜ƒ

winter iron
#

^

obtuse gale
winter iron
#

he needs a friend

half harness
prisma wave
prisma wave
#

?

pallid gale
void plover
pallid gale
#

Sure, you can dm me

jovial warren
#

right, currently looking into https://github.com/KryptonMC/Krypton/issues/29 , and I'm trying to think of a way to remove the lateinit vars from KryptonPlayer without making them nullable, and the only way I can think of doing that is to have different player objects for different states of a player (e.g. one for just after login, then another one when we actually have the data)

#

I want to know you guys' thoughts on that idea, and I also wanna know if you have any better ones

old wyvern
#

Where exactly do you initialize world there btw?

jovial warren
#

atm, KryptonPlayer looks like this: https://github.com/KryptonMC/Krypton/blob/master/server/src/main/kotlin/org/kryptonmc/krypton/entity/entities/KryptonPlayer.kt , and the issue is with the lateinit vars, see the way that Krypton spawns players on login is by instantiating the player just after we finish the login sequence, and then applying the values afterwards when we're beginning the play state, and that works fine... until you get many players joining in very quick succession, in which we get a race condition, and if a player joining manages to be instantiated before a player who joined before them, and they're in the list of players but not fully initialized, it'll throw big errors with lateinit vars not being initialised

jovial warren
old wyvern
#

Which line there?

jovial warren
#

actually, it's in PlayerDataManager, my bad

old wyvern
#

Ok either way, I suggest creating the player with the required instances rather than setting them later on

#

This is going to keep ending in lateinit exceptions

jovial warren
#

yeah I think that's probably the best idea

old wyvern
#

On every few changes

jovial warren
#

I probably need different player objects for different states of initialisation

old wyvern
#

Try to keep the player object to always have a valid set of properties

jovial warren
#

unless I do a Minestom and just drop Location entirely

#

or, drop the world part of Location

old wyvern
#

Why not initialize the player once you actually have everything ready

#

I assume theres not much you can do with the player would the entirety of its information anyway

jovial warren
#

the handlePlayStateBegin logic would be my only concern there

old wyvern
#

lateinits get out of hand unless you're initializing asap in the class itself

jovial warren
#

specifically, I don't want it to get skipped because the player isn't fully initialised

old wyvern
#

Are you not able to have it return the information you need to append to the player rn, and create the player itself later?

jovial warren
#

wdym?

#

actually what am I chatting

#

actually hmm

old wyvern
#

Have an object that provides the changes that you would currently do to the player (for eg: setting the location?) and then once it returns and you have everything the player needs, Initialize it with that information instead of the lateinit

jovial warren
#

yeah that might work

#

actually idk

#

I'm getting confused

old wyvern
#

Might need some huge refactors considering currently it depends on late initialization

jovial warren
#

the only reason we need this info is because we need to tell the joining player about every other player on the server

#

lines 173-181 of SessionManager

obtuse gale
#

Anybody trhats used jetbrains exposed know how, or have an example i can look at on how I would have something like this

User has multiple Roles

Roles have multiple Permissions, and obviously multiple users

Permissions have multiple Roles obviously
just a little confused on how id do thsi

gilded granite
#

made my first website, anybody wanna check it out?

steel heart
#

yeah

#

sure

gilded granite
#

alr

#

its small i just made it for fun mostly

steel heart
#

ye 1 sec

gilded granite
#

what do you think?

steel heart
#

uh good I was looking into the code

gilded granite
#

oh don't mind the 400 div's

steel heart
#

and idk do u want criticism?

gilded granite
#

yeah sure

steel heart
#

in head

#

the first tag should be
<meta charset="utf-8/> to avoid xss attacks

gilded granite
#

xss?

steel heart
#

Cross site scripting

#

google it if you're interested but yeah

gilded granite
#

alr

#

ill do that eventually

#

i mostly just made that cause i was bored lmao

steel heart
#

yeah yeah

#

you could arguably lazy load the css if it becomes bigger

#

but yeah nice one

gilded granite
#

thank you

#

it was my first website so i like how it turned out

steel heart
#

yeah

#

this is my first

#

heh

gilded granite
#

eyy your swedish?

steel heart
#

yep

gilded granite
#

ayy fellow ikea brรถder

steel heart
#

u swedish also or what ๐Ÿ˜ฎ

gilded granite
#

yeah

steel heart
#

aye

#

so like

#

also

half harness
glossy pendant
#

yamlConfiguration.set("completed", );

#

how to make a list

#
  • "0",
  • "1"
prisma wave
#

just... Set a list

glossy pendant
#

ok

#

thx

half harness
#

lol

steel heart
prisma wave
jovial warren
#

I just noticed that Kotlin has a new colour on GitHub

old wyvern
#

Purple

jovial warren
#

yeah

old wyvern
#

or violet im not sure

#

but yea

#

just saw that too

prisma wave
#

Badlin

#

Stealing Haskell's colour

steel heart
#

I love the logo despite the language being horrific at its very core

jovial warren
#

you know purple is literally Kotlin's branding right?

half harness
jovial warren
#

also, it's a lighter purple than Haskell's purples anyway

jovial warren
half harness
#

o

prisma wave
#

That is BLUE

#

Not purple

obtuse gale
#

what if---

#

blurple

prisma wave
#

shut it you

obtuse gale
#

:o

prisma wave
#

none of your "funny comments" are wanted

#

I am FURIOUS

obtuse gale
#

chill

#

this is a More relaxed area to discuss development topics

prisma wave
#

NOT

obtuse gale
#

Not configuration help

prisma wave
#

๐Ÿคฌ ๐Ÿคฌ ๐Ÿคฌ thonking

old wyvern
#

Bardy

half harness
#

rude smh

old wyvern
#

Kotlin did switch all its branding to haskell's color

jovial warren
obtuse gale
prisma wave
#

THEY STOLE PURPLE FROM US

old wyvern
#

This is the new logo

#

lol

sturdy swan
#

purple does look nice tho?

jovial warren
#

that's not Haskell purple

steel heart
#

new kotlin logo is fire

ocean quartz
#

Purple is nice

prisma wave
#

TREACHERY

jovial warren
#

Haskell purple is darker and less saturated than that

prisma wave
#

DONT CARE

obtuse gale
#

purples and pinks are the best colors imo

prisma wave
#

Purple is purple

steel heart
#

๐Ÿ˜Š

old wyvern
ocean quartz
#

The old Kotlin logo was horrible lmao

obtuse gale
half harness
#

lol

prisma wave
#

UGLY LOGO for an UGLY language

half harness
old wyvern
ocean quartz
old wyvern
#

Kotlin bad

#

Kotlin logo bad

steel heart
#

haskell bad

old wyvern
#

Kotlin color bad

obtuse gale
#

fortran good

steel heart
#

its almost the same as kotlin?

prisma wave
jovial warren
ocean quartz
#

Cobol good

steel heart
#

lisp good then?

old wyvern
#

Algol good

jovial warren
#

is true

#

don't even try and deny it

sturdy swan
#

cough Kotlin sucks

obtuse gale
#

regardless

#

purples and pinks are nice

jovial warren
#

peaches fuck off

jovial warren
#

no one asked you lol

prisma wave
old wyvern
#

Imagine using a language that says it solves nullability and ending up with lateinit exceptions ๐Ÿ˜Œ

prisma wave
#

๐Ÿคฃ ๐Ÿคฃ

sturdy swan
ocean quartz
#

Imagine not using Elara

old wyvern
#

Its just nullability with extra steps ๐Ÿ˜„

old wyvern
#

Elara >>>>

obtuse gale
#

dkim smh

half harness
prisma wave
#

Elara or Haskell are the only acceptable programming languages

jovial warren
prisma wave
#

Anything else is SHIT

obtuse gale
#

Objects.requireNonNull

half harness
#

this was 2 months ago

ocean quartz
#

Holy fucking shit

half harness
#

dont look at line 45 - 73 tho

sturdy swan
#

lmao

obtuse gale
#

javaClass.classLoader
.getResource

jovial warren
prisma wave
#

^^^ average kotlin "safety" ๐Ÿคฃ ๐Ÿคฃ ๐Ÿคฃ

jovial warren
#

especially because ik your reasons

half harness
ocean quartz
#

Dkim wtf are you doing

half harness
#

don't question my kotlin skills from 2 months ago

obtuse gale
#

send something more recent then

prisma wave
#

he is just following the kotlin "best practices"!!

old wyvern
#

Dear Kotlin users,
You say kotlin is null-safe. Please explain !! lateinit and platform types

prisma wave
#

they want you to do this!

half harness
jovial warren
prisma wave
#

hahahahahahahahhaahahagagagagagagaga

#

stockholm syndrome ๐Ÿคฃ ๐Ÿคฃ

steel heart
#

wow

#

no

steel heart
#

how dare u talk shit about my city

jovial warren
steel heart
#

true

old wyvern
#

"It has a problem? Oh its not from this"

prisma wave
#

wromg way round

old wyvern
#

Imagine lieing about fixing the issue of null

#

Couldnt be haskell

prisma wave
#

False advertising

old wyvern
#

Maybe monad ๐Ÿ˜Œ

prisma wave
#

๐Ÿ˜Œ ๐Ÿ˜Œ ๐Ÿคฃ ๐Ÿคฃ

ocean quartz
#

Maybe nomad

prisma wave
jovial warren
#

lol

distant sun
half harness
#

how would i fix it? wouldn't the only other option would be to make it null?

#

and since it's only initialized once, at the beginning of the program, i think lateinit is good for it

#

and I'm not making the instances, so instead when the instance is created (from javafx) i just set the value

#

which is why i also have and need a singleton

gusty glen
#

idk why I did find it funny

obtuse gale
prisma wave
onyx loom
#

my ij ultimate is gonna run out june 26 peepoSad

#

3 weeks

static zealot
# prisma wave

no ty. bcz I've tried and they didn't want to let me drown

#

they're very unreliable

half harness
#

student pack?

onyx loom
#

yh

static zealot
half harness
#

can't u just renew it then

static zealot
#

wait but ain't you still a student tho?

onyx loom
#

no

static zealot
#

oh?

half harness
#

oh

ocean quartz
#

Better start applying for the OS license

onyx loom
#

finished

static zealot
#

u can't renew it?

#

u finished what?

onyx loom
#

college

#

and im not going back into education

static zealot
#

wait how old are u?

onyx loom
#

17

half harness
#

o

static zealot
half harness
ocean quartz
static zealot
#

I finished highschool at 19

half harness
#

that's not fair

onyx loom
#

19?

#

are u on old boi or did u have to redo a year?

static zealot
#

yeah. i finished and month later I turned 19

ocean quartz
static zealot
half harness
static zealot
#

we have 12 years of school. 4 of primary, 4 of idk what the fuck its called, 4 highschool (only 2 are required)

half harness
static zealot
#

and we started at 7. now its 13 years of school and they start at 6

#

and then I want to go to uni for 3-4 years

#

well at least 1 to see how it is

#

we'll see if I Can handle 3 xD

static zealot
ocean quartz
#

I think highschool is supposed to be finished around 17/18

onyx loom
#

primary school is from ages 5-11
secondary school from 11-16
college 16-18
university 18+
for UK

half harness
#

oh no highschool? thonk

static zealot
ocean quartz
#

You're not gonna go to university Kali?

onyx loom
#

i guess

#

no fuck uni

ocean quartz
half harness
#

alr

prisma wave
#

when the purely functional language performs better than a VM based around mutability with 20 years worth of optimisations ๐Ÿคฃ ๐Ÿคฃ ๐Ÿคฃ

static zealot
#

well we have, primary, secondary/general, highschool / uni

onyx loom
static zealot
#

and yeah most people finish highschool around 18

ocean quartz
static zealot
#

I Did at 18 too. turned 19 1 month after I Finished

half harness
#

well we have, elementary, middle, highschool ๐Ÿ˜Œ

static zealot
onyx loom
#

i hate education with a passion

static zealot
#

well me too. especially math

#

fuck math

ocean quartz
ocean quartz
static zealot
onyx loom
#

like im just spending 10+ years of learning stuff i dont want to learn

prisma wave
#

JVM fans in tears rn

half harness
#

oh hi semigroup mitten

ocean quartz
#

A lot of things people do that I wish i knew, and learning them on your own is a bit harder

half harness
ocean quartz
#

Oh nah, i was saying i wish i had went to uni

static zealot
#

Ic. yeah

#

that's why I go too. I hope I'll get some good teachers for at least the things I Want to study

prisma wave
static zealot
#

and maybe actually teach me lmao

half harness
#

also

ocean quartz
#

I'm a bit too old for that now, tbh i still could but idk

half harness
#

i don't know why, but i just hate it when websites autocalitalize it to Dkim19375

#

looks ugly

prisma wave
#

Classic discord mobile

half harness
#

doesn't kotlin have lazy btw

ocean quartz
#

Yes

half harness
ocean quartz
#

Nope

half harness
#

ok time to think of another username

#

no numbers ๐Ÿ˜Œ

#

tbh i dont like dkim19375

#

too many numbers, username doesn't even have anything in it recognizable or anything to remember/recognize by

ocean quartz
#

Kdim

old wyvern
#

Unacceptable!

#

The mutation community lies

frail glade
#

Time to play 5 minute deep dive in python and add new stuff to the eCloud

old wyvern
#

๐Ÿ˜ฎ

onyx loom
#

django xd

old wyvern
#

ecloud 2?

frail glade
#

No lol not yet.

old wyvern
#

rip

frail glade
#

I'm going to make a page that displays the numbers of users for each expansion.

half harness
steel heart
#

Thatโ€™s cool

old wyvern
#

๐Ÿ˜ฎ

#

Wont that require change in papi as well?

frail glade
#

Nah

#

I'm pulling the data from bStats

old wyvern
#

ah

frail glade
half harness
frail glade
#

Right now we have that big "other"

#

And some people want to see how many people are using their expansions.

old wyvern
#

ahh

#

nice

frail glade
#

> Testing in production

old wyvern
#

๐Ÿ˜Œ

lunar cypress
#

generally

old wyvern
#

Nitro users still have it right?

half harness
#

aw

lunar cypress
#

no

#

they removed it because it sucks

old wyvern
#

Thank god

#

No more of the weird blue demon

lunar cypress
#

They are going to add support for custom stickers instead

#

so you're still gonna see stickers in the future I'm afraid

#

And the old ones may or may not stay, not sure

old wyvern
#

๐Ÿ˜”

prisma wave
#

dw guys i got you ๐Ÿ˜„

old wyvern
#

Dammit

#

Why

half harness
lunar cypress
#

Ok they were supposed to remove all current stickers

#

but that hasn't happened clearly

half harness
#

supposed

old wyvern
#

๐Ÿ˜”

static zealot
#

clip be having a lot of fun

obtuse gale
old wyvern
#

The demons took over discord

#

Whats clip doin?

half harness
#

i dont get it - if they want to remove it, why don't they just make it do nothing in the api?

static zealot
old wyvern
#

lol

obtuse gale
half harness
#

lmao

static zealot
#

I got a client boys

old wyvern
#

Nice!

obtuse gale
#

Oh damn Blitz I didn't know you were a hooker

ocean quartz
#

i was gonna make the same joke

obtuse gale
#

But you didn't

static zealot
half harness
#

i thought it'd be more complicated

steel heart
#

Itโ€™s a long process

#

Like if you want something like a mc server implementation

#

Entirely coded from scratch

ocean quartz
#

Nah, you just open a socket then connect to the game

obtuse gale
#

Ez

#

Why didn't Bardy do that from the beginning

#

Smh

ocean quartz
#

Ikr, it'd be done already smh

half harness
#

what does bardy use?

half harness
#

;-;

ocean quartz
obtuse gale
#

lmao yea

half harness
#

im so confused

#

โ˜น๏ธ

prisma wave
#

theres actually something in the kotlin standard library to make a fast, lightweight minecraft server written from scratch in 1 line

#

i guess bardy just didnt know that existed

obtuse gale
#

Mr. Abandoned Projects is typing...

prisma wave
#

yeah

#

i am

#

you got a problem??

#

huh???

#

speak up

half harness
#

staff spamming

#

ban

#

mute

#

bad

obtuse gale
#

Oh no please

#

I'll let you finish first

half harness
#

the only thing u guys were talking about was some other language and elara

obtuse gale
#

If and when you do

prisma wave
#

pdm is finished

#

java 16 saw to that

half harness
#

doesn't work tho fingerguns

#

slimjar ๐Ÿ˜Œ

prisma wave
#

shut it

#

might delete everything on the slimjar repo

#

force push an empty repo

#

:)

half harness
#

do u have contributer access

prisma wave
#

yes

half harness
#

uh oh

ocean quartz
#

BM actually made the entirety of SlimJar alone, but we committed with our names just so we could joke about it here

onyx loom
#

๐Ÿคจ

prisma wave
#

That's true actually

#

I was gonna say I'm kicking you two off the project, you're totally useless

jovial warren
#

anyone here know how to create and configure Kotlin source sets?

#

because I know you can configure Java ones with something like ```kotlin
sourceSets {
main {
java {
// stuff
}
}
}

#

but anyone got a clue how you're meant to do that for Kotlin source sets?

steel heart
#

Isnโ€™t it just kotlin instead of java

jovial warren
#

imagine thinking I hadn't already tried that

steel heart
#

So it doesnโ€™t work then?

jovial warren
#

no lol

#

idk what you're meant to do for Kotlin source sets lol

steel heart
#

Looks like it works when looking at docs

#

According to this very picture

jovial warren
#

wat

#

link me that

steel heart
steel heart
#

kotlin {
sourceSets {

}
}

jovial warren
steel heart
#

Lol

#

Ye

jovial warren
#

thanks Conclure

ocean quartz
#

Ah, i guess not the same thing i was thinking nvm then

jovial warren
#

I'm doing this since I wanna add a bit a' good old code generation

prisma wave
obtuse gale
#

That's how they wanna be treated as well?

#

Kinky

prisma wave
#

save that for the dkim den

jovial warren
obtuse gale
#

Sorry, this page isn't available.
The link you followed may be broken, or the page may have been removed. Go back to Instagram.
thonking

steel heart
#

Ima try upload

gusty glen
#

just discovered that scala has mixins

jovial warren
#

nice

prisma wave
#

it has the other m-word too

#

and maybe even the other-other one

onyx loom
#

m-m-m-mon-ad...????? ๐Ÿ˜ณ

steel heart
#

Wrong! It was monoid

prisma wave
#

monoid is the other-other one

steel heart
#

Does monads and monoids have a logo if their own?

prisma wave
#

probably not

#

mathematical constructs dont usually have logos lol

steel heart
#

Damn

#

We should invent one then

obtuse gale
#

look at it

#

1

#

a masterpiece

steel heart
#

๐Ÿฅด

#

Anyone tried minestorm?

#

Need some opinions on it

prisma wave
#

FOOL

prisma wave
obtuse gale
prisma wave
#

MORE THAN YOU

steel heart
#

Oo

jovial warren
#

haven't used it, but I've heard a lot of good things about it

#

Krypton and Minestom are decently good friends lol

steel heart
#

Yeah saw lots of static when I took a look so that kinda scarred the heck out of me

jovial warren
#

yeah there's a decent amount of static abuse I think, but it performs very well

steel heart
#

Ah fair enough then

jovial warren
#

and when I say very well, I mean like I've seen player counts in the thousands being handled by 4 tick threads maintaining 20 TPS with no issues

steel heart
#

Oooo

#

Damn sounds undeniably better than spigot

obtuse gale
#

literally anything is

#

lmao

jovial warren
obtuse gale
#

the hell is that

jovial warren
#

it gets all the URLs from the system class loader

old wyvern
prisma wave
#

joe server

jovial warren
#

ยฏ_(ใƒ„)_/ยฏ

#

Minestom is a server library anyway, not server software

prisma wave
#

thats what they all say

old wyvern
#

Theres a vanilla reimplementation provided by minestom

prisma wave
#

pdm is a dependency downloading library, therefore it doesnt have to be complete

jovial warren
#

yeah but it's nowhere near complete Yugi

old wyvern
#

Oh? Then where did you see that player count?

#

Do they have a test server?

jovial warren
#

with another impl iirc

old wyvern
#

Which one?

jovial warren
#

gimme a min, lemme find you the post in showcase

old wyvern
#

Alrighty

jovial warren
old wyvern
#

ucp is a private field

jovial warren
#

so is theUnsafe lol

old wyvern
#

That class also seems to assume that the classloader is a URLClassLoader

#

which apparently isnt the case on some recent version

#

I forget where exactly that started

#

might be 11 or 15

jovial warren
#

no, the app class loader isn't a URLClassLoader, but it has a URLClassPath iirc

old wyvern
#

ucp is part of the urlclassloader i believe

jovial warren
#

probably

old wyvern
#

from 16

jovial warren
#

actually it will

old wyvern
#

how so?

jovial warren
#

because sun.misc.Unsafe is one of the specially excluded classes

#

because of how critical it is

prisma wave
#

unsafeCoerce ๐Ÿ˜Œ

old wyvern
#

Isnt Unsafe already scheduled for removal?

jovial warren
#

it was going to be removed in 9, but some really big libraries like Netty and Cassandra use it iirc, so Oracle decided against removing it

old wyvern
#

Ah

jovial warren
#

also, I think that code does surprisingly actually work on J16

#

because the author updated it to J16

old wyvern
#

Ah yes, it seems to be using unsafe to get the value rather than directly by reflection

obtuse gale
#

wanna know something funny?

#

you can modify fields declared as final with reflection

#

just like that

#

without any hassle

#

doesn't work on record components, but on regular classes

old wyvern
#

๐Ÿ˜” Another flaw from the mutability supporting language

obtuse gale
#

tbh i have no idea why that is the case

#

i don't even have to modify the Modifier

old wyvern
#

Wait what?

jovial warren
#

like there's no differentiation there?

prisma wave
#

wat

#

Modifier.isFinal is a thing, so no

old wyvern
#

mhm

steel heart
#

Yeah I believe some finals are erased

jovial warren
#

ah

obtuse gale
steel heart
#

Like local variables

forest pecan
#

xD

jovial warren
#

local finals are erased, yeah

obtuse gale
old wyvern
steel heart
#

Oh yeah then no

old wyvern
#

Haskell good, Java bad

obtuse gale
#

but i literally tested it myself on Java 16 and it just works, without changing the modifiers even

#

weird as fuck

steel heart
#

Pog

old wyvern
#

Very weird

#

Lemme check

obtuse gale
#

but i literally remember it being a problem on java 8

forest pecan
#

Unsafe is going to be removed tho soon. It didnt get removed in j16

obtuse gale
#

having to flip the bit

forest pecan
#

idk when you would ever use it

steel heart
#

Wait

#

Fr

#

Is it going to get removed?

forest pecan
#

Yes it will eventually get removed

steel heart
#

Oof

#

Why

forest pecan
#

What are you using it for

#

Lol

obtuse gale
#

that's gonna break a shit ton of libraries such as gson

forest pecan
#

Yeah it is prolly

steel heart
#

Caffeine ๐Ÿ˜”

forest pecan
#

Well, they are just moving over to more actual like supported api

#

its not like gonna be all gone

#

theres gonna be ways to do whatever you need to do in api

obtuse gale
#

eh...

forest pecan
old wyvern
#

Wow

forest pecan
old wyvern
#

I assume setAccessible removes the modifier as well

#

Or not

forest pecan
#

can you set it back?

old wyvern
#

its still final

forest pecan
#

oh

old wyvern
forest pecan
#

lol

old wyvern
#

๐Ÿ‘ java ๐Ÿ‘ bad ๐Ÿ‘

obtuse gale
#

idk man

#

sus

old wyvern
#

very sus

#

Defying the laws of ... well yea

obtuse gale
#

why is this in the MC client code

forest pecan
#

where

obtuse gale
#

MultiplayerServerListPinger

static zealot
#

why not?

forest pecan
#

if ("ยง1".equals(strings[0]))

old wyvern
#

Yup

old wyvern
#

setAccessible puts it into overrideFinal

#

Where override is the variable that setAccessible sets

steel heart
obtuse gale
#

wat

old wyvern
#

setAccessible(true)
sets override to true

#

Which it uses to determine if it should ignore the final modifier

#

Theres also an extra check

obtuse gale
#

that's stupid

old wyvern
#

But cant find tis implementation

obtuse gale
#

conclure #bot-commands is a thing

steel heart
#

Brb

old wyvern
obtuse gale
#

"trusted" lol

#

man all these concepts

#

probably to do with modules?

old wyvern
#

the JavaLangReflectAccess is a interface so dont know its implementation

#

yea possibly

#

No idea

forest pecan
#

Files needs a createIfNotExists method

onyx loom
#

K

forest pecan
#

im tried of checking that it doesnt exist

#

then creating it

#

idk if its worth to make my own util function for it tho lol

distant sun
#
fun File.createIfNotExists() {
    if (!exists()) makeNewFile()
}```
forest pecan
#

I was referring to more like Path. But im in java so sadly i dont got extension functions :(((

#

And apparantly, Lombok has extension functions in java XDD

steel heart
#

Lmao

#

I mean utility classes

distant sun
#

Ew @forest pecan I know you are Pulse but still

forest pecan
#

huh

#

Oh my name?

#

I should've changed it to Pulse right before nitro ran out

steel heart
#

@forest pecan

distant sun
#

No smh

steel heart
#

For u ๐Ÿ˜‡

forest pecan
#

ty lmao

forest pecan
#

the lombok shit?

#

I don't use that

distant sun
#

Good

obtuse gale
forest pecan
#

:`(

obtuse gale
#

it takes you a few seconds

ocean quartz
quaint isle
#

Can someone explain to me how I can have 20 unique cloners, but only 5 unique visitors on my github repo? I haven't posted the link anywhere, how and why would people clone it without even browsing the github page first?

forest pecan
#

Yeah

#

lmao

steel heart
#

@old wyvern do u have an example usage of dagger like one of ur personal projects

forest pecan
#

What is that embed

#

LMao

quaint isle
#

๐Ÿ˜„ fr tho am I missing something? where are all those git clones coming from?

old wyvern
quaint isle
#

that could be it ๐Ÿ˜ณ

old wyvern
#

Or rather hilt, but its just a slight abstraction over dagger 2

steel heart
#

Okay and do u use it for every object creation?

#

Or is it just upper level stuff

ocean quartz
ocean quartz
old wyvern
#

I use it for everything

quaint isle
#

I don't think anyone has copied the git clone url and is doing it, but bots could be the reason. Thank you!

old wyvern
#

There are a few data class instantiation tho

#

But ofc that isnt really supposed to be injected

steel heart
#

Hmm okay

#

I guess I will use it for everything unless it becomes counter intuitive

old wyvern
#

You would ussually construct most dynamic data objects

#

Like in this case, it captures the incoming messages and creates a database entity

prisma wave
#

๐Ÿ˜Œ

old wyvern
#

Blank sticker?

prisma wave
#

pc bad

old wyvern
#

Im on android

prisma wave
#

android bad

old wyvern
#

Ofc

prisma wave
#

Smh

ocean quartz
#

Works for me on android

old wyvern
#

oh, another one of the blue demons

prisma wave
#

Everyone's favourite

old wyvern
#

rather to inject pojos

#

For example

steel heart
#

Oh

prisma wave
#

Injecting into pojos ๐Ÿ˜–

old wyvern
#

I have a ViewModel for a chat channel

#

it requires the id of the channel

#

so here

#

I need the dynamic data as a dependency

#

hence the assisted inject

steel heart
#

Okay hmm I will see if I can make something which isnโ€™t a mess ty for the wise help master yugi

old wyvern
steel heart
#

Also whatโ€™s your thought on creating interfaces for the purpose of making it unit testable easier

old wyvern
#

Go for it

steel heart
#

Okok

old wyvern
#

Makes mocking easier

steel heart
#

Yeah

#

Hmmmm I kinda want to rewrite all my projects now lol

old wyvern
#

lol

steel heart
#

Also yeah when do we not need unit testing such that I would be able to skip the extraction of an interface for the purpose of easier mocking it. Utility classes would be one instance, enums I guess also but is there something else?

old wyvern
#

data objects

steel heart
#

Oh so pojos/records

old wyvern
#

mhm

steel heart
#

Nothing else than that?

old wyvern
#

Depends on you mostly

#

You can still mock with mocking frameworks

steel heart
#

Hmm yeah

old wyvern
#

Utility functions also need some care

steel heart
#

๐Ÿฅฒ

old wyvern
#

Some Utility functions can make the class using it harder to test

steel heart
#

Hmm an example?

#

Like are we talking pure utility functions now?

old wyvern
#

pure utility functions are good

steel heart
#

Oh so then impure ones

old wyvern
#

mhm

steel heart
#

Basically the entire Bukkit class would be one example

old wyvern
#

For example lets say you have a utility that copys a file from A to B that you use in a class C

steel heart
#

Yeah

old wyvern
#

Now you usually have more cases to cover

#

for max coverage that is