00:04 <+bridge_> [ddnet] 8-space tabs? Don't you have too much empty spaces in your IDE? 00:05 <+bridge_> [ddnet] whenever i see 8 space tabs i worry that they're actual tabs 00:06 <+bridge_> [ddnet] actual tabs are just \t, you make them as big as u want 00:06 <+bridge_> [ddnet] the biggest pro of tabs 00:07 <+bridge_> [ddnet] i agree, but 8 is too much, i prefer 4 00:07 <+bridge_> [ddnet] 2 is not enough, i don't see well the indentation 00:07 <+bridge_> [ddnet] i switched to 2 lol 00:07 <+bridge_> [ddnet] gonna get flamed for this but 3 is kinda nice in some langs 00:08 <+bridge_> [ddnet] never tried 3 πŸ˜„ 00:08 <+bridge_> [ddnet] i have rainbow indent on tho 00:08 <+bridge_> [ddnet] what's that? 00:08 <+bridge_> [ddnet] i have a bracket colorizer but not indent 00:08 <+bridge_> [ddnet] btw, @TsFreddie how in biggernouis is the merging tee decided? 00:09 <+bridge_> [ddnet] i mean when they are multiple candidates 00:09 <+bridge_> [ddnet] first contact, technically 00:09 <+bridge_> [ddnet] what if none is moving and both are touching? 00:09 <+bridge_> [ddnet] but with combos, it goes up to down, new to old. 00:09 <+bridge_> [ddnet] Actually, the real question is also : how is it determined if it goes left to right or right to left? 00:10 <+bridge_> [ddnet] up to down first, if the are roughly at the same level, new to old 00:10 <+bridge_> [ddnet] well, not always... 00:10 <+bridge_> [ddnet] i determined new to old 00:10 <+bridge_> [ddnet] ex 00:10 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834914080694599770/unknown.png 00:10 <+bridge_> [ddnet] but sometims it acts really weird 00:10 <+bridge_> [ddnet] probably because the dropped ones has several ticks that dent into the ground 00:10 <+bridge_> [ddnet] so it become low 00:11 <+bridge_> [ddnet] i don't really know how to fix it 00:11 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834914316871794688/unknown.png 00:11 <+bridge_> [ddnet] rainbow 00:12 <+bridge_> [ddnet] my color setting is bad tho 00:12 <+bridge_> [ddnet] neat 00:12 <+bridge_> [ddnet] i think i would prefer lines instead of filling the whole space though 00:13 <+bridge_> [ddnet] i used to have a extension that shows you what's at the top of the indent if you hover the indent line. 00:13 <+bridge_> [ddnet] but it was slow and buggy. otherwise it'd be so good. 00:13 <+bridge_> [ddnet] sounds nice 00:13 <+bridge_> [ddnet] looks nice indeed ^^ 00:14 <+bridge_> [ddnet] i use default dark with fira code these days 00:14 <+bridge_> [ddnet] was thinking about switching to operator mono but decided against it 00:15 <+bridge_> [ddnet] anyone heard of onivim2 00:16 <+bridge_> [ddnet] it looked pretty promising but i didn't want to pre-order it and i can't build it on windows. 00:16 <+bridge_> [ddnet] neovim with my own config > anything else 00:16 <+bridge_> [ddnet] unless its java 00:16 <+bridge_> [ddnet] fck java 00:17 <+bridge_> [ddnet] i don't like java either 00:17 <+bridge_> [ddnet] u cant rly code java without an ide 00:17 <+bridge_> [ddnet] if i have to code java ill use intellij 00:17 <+bridge_> [ddnet] its not sane 00:17 <+bridge_> [ddnet] but im not happy about ti 00:17 <+bridge_> [ddnet] but im not happy about it 00:17 <+bridge_> [ddnet] i'd rather use c# if i need something with the same caliber 00:17 <+bridge_> [ddnet] i only use java for minecraft and android 00:18 <+bridge_> [ddnet] rust for everything else 00:19 <+bridge_> [ddnet] πŸ˜” meanwhile I, a script monkey, was doing most things in typescript. 00:24 <+bridge_> [ddnet] https://spectrum.ieee.org/tech-talk/semiconductors/processors/cerebras-giant-ai-chip-now-has-a-trillions-more-transistors 00:24 <+bridge_> [ddnet] the largest computer chip ever built 00:24 <+bridge_> [ddnet] fork for reference 00:24 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834917687913087015/MzgwNTgxMw.png 00:25 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834917898844635136/unknown.png 00:25 <+bridge_> [ddnet] the chip itself has 40gb memory xd 00:27 <+bridge_> [ddnet] i literally thought it was a giant cookie chip... 00:27 <+bridge_> [ddnet] this is insane 00:27 <+bridge_> [ddnet] how many cores u have? oh 12? i have 850000 :PepeA: 00:28 <+bridge_> [ddnet] i find the lattice pattern in the case really fascinating 00:28 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834918613042987055/unknown.png 00:28 <+bridge_> [ddnet] i feel like there's some mathy explanation for this but i wouldnt understand xD 00:29 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834918788838326322/unknown.png 00:29 <+bridge_> [ddnet] maybe expells more air towards the heat sink? 00:29 <+bridge_> [ddnet] i wonder how was the yield for these giant chips 00:29 <+bridge_> [ddnet] 100% 00:29 <+bridge_> [ddnet] lets buy this pc 00:29 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834918950567018526/Cerebras20WSE220Launch20Embargoed20until204202020215B25D5B25D5B35D5B35D5B45D5B15D-page-016_575px.png 00:29 <+bridge_> [ddnet] so we can fight back ddos 00:30 <+bridge_> [ddnet] really sad that we're only really at the 6 core mark in terms of consumer pc average 00:30 <+bridge_> [ddnet] did they only made one 00:30 <+bridge_> [ddnet] when 850k is possible 00:30 <+bridge_> [ddnet] the trick is to just disable the broken parts, as long as they're small enough, and you'll be fine 00:30 <+bridge_> [ddnet] oh 00:31 <+bridge_> [ddnet] > Cerebras achieves 100% yield by designing a system in which any manufacturing defect can be bypassed – initially Cerebras had 1.5% extra cores to allow for defects, but we’ve since been told this was way too much as TSMC's process is so mature. 00:31 <+bridge_> [ddnet] that's cool 00:35 <+bridge_> [ddnet] unfortunately, they can't power it 00:35 <+bridge_> [ddnet] 40gb of sram memory 00:35 <+bridge_> [ddnet] basic consumption of one memory cell is around 100pW 00:36 <+bridge_> [ddnet] so if you do the math, 40*8*10^9*100*10^-9 = 32kW 00:36 <+bridge_> [ddnet] basic consumption of one memory cell is around 100nW 00:37 <+bridge_> [ddnet] wut 00:37 <+bridge_> [ddnet] where are the *?? 00:37 <+bridge_> [ddnet] so if you do the math, 40x8x10^9x100x10^-9 = 32kW 00:37 <+bridge_> [ddnet] wait 00:37 <+bridge_> [ddnet] why cant u just put one of those huge chips inside a gaming pc 00:37 <+bridge_> [ddnet] > The CS-2 still takes up one-third of a standard rack, consumes about 20 kilowatts, relies on a closed-loop liquid cooling system, and has some pretty big cooling fans. Heat had been one of the biggest issues when developing a host system for the original WSE. That chip needed some 20,000 amps of current fed to it from one million copper connections to a fiberglass circuit board atop the wafer. 00:38 <+bridge_> [ddnet] lol 00:38 <+bridge_> [ddnet] my math was not far ^^ 00:38 <+bridge_> [ddnet] this is not a consumer product xd 00:38 <+bridge_> [ddnet] but it could be :fingerguns: 00:38 <+bridge_> [ddnet] making one of these costs "several million dollars" 00:38 <+bridge_> [ddnet] i guess we'll talk about it again at work 00:45 <+bridge_> [ddnet] it is even x86 tho 00:45 <+bridge_> [ddnet] but like 00:45 <+bridge_> [ddnet] take several million and divide it by 100.000 00:45 <+bridge_> [ddnet] now you have a few k gaming cpu that has like a hundred cores 00:45 <+bridge_> [ddnet] why not 00:46 <+bridge_> [ddnet] maybe the extra engineering adds up to that cost 00:46 <+bridge_> [ddnet] by one of these and serve cloud gaming for an entire town 00:47 <+bridge_> [ddnet] for reaaaal 00:48 <+bridge_> [ddnet] and get a super big switch and just have an entire town LAN party 00:51 <+bridge_> [ddnet] apparently, the hardest part was thermal expansion problem between the wafer and the power unit that cause misalignment in optic fiber πŸ˜„ 00:57 <+bridge_> [ddnet] made ur text big, `*text*` will make it fat, use ` at the beginning and the end to make a code block 01:05 <+bridge_> [ddnet] fat 03:09 <+bridge_> [ddnet] 20 kiloamps??? jesus 03:09 <+bridge_> [ddnet] so much current 03:58 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834971531464671252/2021-04-23_09-57-35.mp4 04:00 <+bridge_> [ddnet] we predicted the projectiles with tunezones. why aren't we showing them with tunezones settings as well? 05:14 <+bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/834990657147764736/demotopleftisnew.mp4 08:15 < bridge_> [ddnet] Feel free to test more cases, and I think we should get this tested before moving on to get characters works the same way which might needs some updates to gamecore which is 😫. 08:18 < bridge_> [ddnet] Also I think it might be a good idea to get this to mappers before making it into release. Although it is not a new feature, but this may potentially encourage smaller tunezone which they can utilize. :justatest: 09:09 < bridge_> [freenode] So Ryozuki are you pro tabs? Do you use it for all your projects? 09:15 < bridge_> [ddnet] chilledragon tbh i dont care because neovim is smart + i have a plugin that auto adjusts 09:23 < bridge_> [ddnet] actually chiller this one isn't mine, my server is 34.77.60.48:8404 09:23 < bridge_> [ddnet] this ip is by m!ki 09:31 < bridge_> [ddnet] is it really smart? 09:31 < bridge_> [ddnet] what about this code: 09:31 < bridge_> [ddnet] ```cpp 09:31 < bridge_> [ddnet] namespace stuff 09:31 < bridge_> [ddnet] { 09:31 < bridge_> [ddnet] void function(unsigned int number_a, 09:31 < bridge_> [ddnet] unsigned int number_b, 09:31 < bridge_> [ddnet] unsigned int number_c, 09:31 < bridge_> [ddnet] unsigned int number_d, 09:31 < bridge_> [ddnet] unsigned int number_e, 09:31 < bridge_> [ddnet] unsigned int number_f) 09:31 < bridge_> [ddnet] { 09:31 < bridge_> [ddnet] // something 09:31 < bridge_> [ddnet] } 09:31 < bridge_> [ddnet] } 09:31 < bridge_> [ddnet] ``` 09:31 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835055341699727391/unknown.png 09:31 < bridge_> [ddnet] this is the only correct formatting πŸ™‚ 09:32 < bridge_> [ddnet] (in terms of tabs and spaces) 09:33 < bridge_> [ddnet] https://streamable.com/yh5o7d 09:33 < bridge_> [ddnet] ignore the audio xd im watching spacex 09:34 < bridge_> [ddnet] can you also show whitespace characters to check what it adds? 09:36 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835056488031453224/unknown.png 09:36 < bridge_> [ddnet] @Comrade are u sure what u sent has tabs 09:36 < bridge_> [ddnet] i think discord deleted them 09:36 < bridge_> [ddnet] probably 09:36 < bridge_> [ddnet] send a file directly 09:36 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835056648770027590/test.cpp 09:37 < bridge_> [ddnet] oh no πŸ˜„ 09:37 < bridge_> [ddnet] discord automatically converts file to this thing 09:37 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835056840173027328/test.zip 09:37 < bridge_> [ddnet] rip 09:37 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835056844677971978/unknown.png 09:37 < bridge_> [ddnet] i mean 09:38 < bridge_> [ddnet] this tabs my vim introduces makes more sense 09:39 < bridge_> [ddnet] well, if you try to push this to GitHub and view it there, you'll see that it's broken 09:39 < bridge_> [ddnet] but thats github fault 09:39 < bridge_> [ddnet] im using this btw https://github.com/tpope/vim-sleuth 09:39 < bridge_> [ddnet] tab is not 4 spaces always 09:39 < bridge_> [ddnet] with more code i think its more accurate 09:40 < bridge_> [ddnet] but don't worry, i think all automatic tools fail to do indentation correctly in all cases 09:40 < bridge_> [ddnet] yeah 09:40 < bridge_> [ddnet] i format my rust code always 09:40 < bridge_> [ddnet] cargo fmt 09:40 < bridge_> [ddnet] it's up to us humans πŸ˜„ 09:40 < bridge_> [ddnet] :greenthing: 11:13 < bridge_> [ddnet] So that i can allocate that memory and save it in there? For the decompression algorithm itself the size is not needed, is it? 11:19 < bridge_> [ddnet] Idea : a new tile that swap your state : id u are freeze, it unfreeze u, if u are not freeze, it freeze u. Same with deep 11:28 < bridge_> [ddnet] iirc on low level langs like C++ you may need to allocate a buffer where the decompressed data goes and thats prob why its there 11:33 < bridge_> [ddnet] OKay 11:34 < bridge_> [ddnet] And aren't ItemOffsets kinda useless? 11:34 < bridge_> [ddnet] Since each item contains it's size 11:35 < bridge_> [ddnet] Or vice versa 11:38 < bridge_> [ddnet] maybe its to access those items faster 11:38 < bridge_> [ddnet] idk 11:39 < bridge_> [ddnet] oh i see 11:39 < bridge_> [ddnet] So you don't have to load everything to memory instantly 11:39 < bridge_> [ddnet] But you could skip itemsize then 16:05 < bridge_> [ddnet] ugh u need to decrease the alpha of those tab/space indicators 16:54 < bridge_> [ddnet] LAG 17:53 < bridge_> [ddnet] @stnwtr yes, it's only needed for the allocation 17:53 < bridge_> [ddnet] @stnwtr yes, there is some redundant data in data files 18:32 < bridge_> [ddnet] Even in higher level languages you usually want to reserve the space upfront if you can, less allocations the better 18:32 < bridge_> [ddnet] ye 18:33 < bridge_> [ddnet] i just thought he may be using python or smth 18:33 < bridge_> [ddnet] and i didnt meant it as a bad thing 18:33 < bridge_> [ddnet] :pepe_straight: 18:33 < bridge_> [ddnet] I wonder if python lets you pre-allocate buffer space like this 18:34 < bridge_> [ddnet] the way i check if a langs works like this is usually looking how udp sockets work 18:34 < bridge_> [ddnet] since they usually require buffers 18:34 < bridge_> [ddnet] well u probs just tell the recv size and it gives u the buffer 18:34 < bridge_> [ddnet] u dont have to do anything probs 18:35 < bridge_> [ddnet] (python) 18:35 < bridge_> [ddnet] but I wonder if python would allocate the buffer at once 18:35 < bridge_> [ddnet] Some high level languages even given a buffer size like this prefer to use it as a max size instead 18:35 < bridge_> [ddnet] kek 18:35 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835192231136722995/unknown.png 18:36 < bridge_> [ddnet] ```rust 18:36 < bridge_> [ddnet] use std::net::UdpSocket; 18:36 < bridge_> [ddnet] 18:36 < bridge_> [ddnet] fn main() -> std::io::Result<()> { 18:36 < bridge_> [ddnet] { 18:36 < bridge_> [ddnet] let mut socket = UdpSocket::bind("127.0.0.1:34254")?; 18:36 < bridge_> [ddnet] 18:36 < bridge_> [ddnet] // Receives a single datagram message on the socket. If `buf` is too small to hold 18:36 < bridge_> [ddnet] // the message, it will be cut off. 18:36 < bridge_> [ddnet] let mut buf = [0; 10]; 18:36 < bridge_> [ddnet] let (amt, src) = socket.recv_from(&mut buf)?; 18:36 < bridge_> [ddnet] 18:37 < bridge_> [ddnet] // Redeclare `buf` as slice of the received data and send reverse data back to origin. 18:37 < bridge_> [ddnet] let buf = &mut buf[..amt]; 18:37 < bridge_> [ddnet] buf.reverse(); 18:37 < bridge_> [ddnet] socket.send_to(buf, &src)?; 18:37 < bridge_> [ddnet] } // the socket is closed here 18:37 < bridge_> [ddnet] Ok(()) 18:37 < bridge_> [ddnet] } 18:37 < bridge_> [ddnet] ``` 18:37 < bridge_> [ddnet] rust is more or less like c++ 18:37 < bridge_> [ddnet] :BASED: 18:41 < bridge_> [ddnet] okay python seems to allocate the entire buffer and doesn't do much magic before recvmsg 18:42 < bridge_> [ddnet] atleast CPython, idk about other implementations 18:42 < bridge_> [ddnet] you cna pass your own buffer to a similarly named function 18:42 < bridge_> [ddnet] in py 18:43 < bridge_> [ddnet] why does CPython have a GIL but jython and others not? 18:43 < bridge_> [ddnet] jython name looks so ugly 18:43 < bridge_> [ddnet] > The GIL was invented because CPython’s memory management is not thread-safe. With only one thread running at a time, CPython can rest assured there will never be race conditions. 18:44 < bridge_> [ddnet] How they still keep the GIL to this date is insane to me 18:44 < bridge_> [ddnet] @Learath2 they dont want nobos to run into this maybe 18:44 < bridge_> [ddnet] since python is already the lang of nobos 18:44 < bridge_> [ddnet] idk 18:44 < bridge_> [ddnet] you can work around this with multiprocessing 18:45 < bridge_> [ddnet] It's a very easy way to handle the memory management issue, true but there are many ways to do memory management that doesn't require the entire process to halt πŸ˜„ 18:45 < bridge_> [ddnet] > multiprocessing is a package that supports spawning processes using an API similar to the threading module. The multiprocessing package offers both local and remote concurrency, effectively side-stepping the Global Interpreter Lock by using subprocesses instead of threads. 18:45 < bridge_> [ddnet] That's a decent workaround 18:46 < bridge_> [ddnet] might not be the friendliest thing to modern cpu schedulers though 18:46 < bridge_> [ddnet] from what I've heard they are aware of the concept of threads and handle them differently nowadays 18:47 < bridge_> [ddnet] the only thing i like about java is when you get the inheritance stuff right and everything seems to fall in place easily, it feels rly good 18:47 < bridge_> [ddnet] β˜• 18:47 < bridge_> [ddnet] Hm, the inheritence in C++ is similar imo and less cancer than java 18:47 < bridge_> [ddnet] well yeah i guess 18:47 < bridge_> [ddnet] i never worked on a project with lot of oop in c++ 18:48 < bridge_> [ddnet] The thing I enjoy about java is that it's easy to prototype with 18:48 < bridge_> [ddnet] and ddnet is a mess 18:48 < bridge_> [ddnet] And a very pretty functional programming interface imo, I think I told you before how much I enjoy javas streams 18:48 < bridge_> [ddnet] yeah im using java streams a lot 18:48 < bridge_> [ddnet] (not amazing at performance though) 18:49 < bridge_> [ddnet] :PepeA: 18:49 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835195640111431680/unknown.png 18:49 < bridge_> [ddnet] im doing a grave sin 18:49 < bridge_> [ddnet] things like `.parallelStream().filter()` are actually quite nice 18:49 < bridge_> [ddnet] im using google firebase 18:49 < bridge_> [ddnet] :pepe_straight: 18:50 < bridge_> [ddnet] Never used firebase, is it nice? 18:50 < bridge_> [ddnet] its too easy 18:50 < bridge_> [ddnet] google knows their stuff 18:50 < bridge_> [ddnet] xd 18:50 < bridge_> [ddnet] 10 mins and u have authentication for ur app 18:50 < bridge_> [ddnet] :monkaS: 18:50 < bridge_> [ddnet] Hm, I've been wanting to do my own authentication thing sometime. I just don't really like the solutions out there 18:51 < bridge_> [ddnet] I want something I can refer to when I have to do authentication, maybe a symfony module 18:51 < bridge_> [ddnet] @Learath2 ur solution will probs not provide this many methods 18:51 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835196238843740170/unknown.png 18:51 < bridge_> [ddnet] or it will take u lot of time 18:52 < bridge_> [ddnet] Well usually these all conform to the oauth standard 18:52 < bridge_> [ddnet] so adding a new provider is usually as trivial as adding a new url to a list 18:52 < bridge_> [ddnet] :monkaS: u only add the analytics dep and u have all this 18:52 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835196489269379154/unknown.png 18:52 < bridge_> [ddnet] :monkaS: 18:52 < bridge_> [ddnet] cool, do they have debugging stuff aswell? 18:53 < bridge_> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/835196598861955162/unknown.png 18:53 < bridge_> [ddnet] Java Streams API is just nice 18:53 < bridge_> [ddnet] any modern lang has that stream api in some kind of form 18:53 < bridge_> [ddnet] it was just java being late to the party 18:54 < bridge_> [ddnet] I think python has the worst form of it, followed very closely by C++ 18:55 < bridge_> [ddnet] The prettiest is probably either JS or Java 18:55 < bridge_> [ddnet] rust ones are 1st class and they usually compile better than user made for loops 18:55 < bridge_> [ddnet] rust numero uno 18:55 < bridge_> [ddnet] https://doc.rust-lang.org/book/ch13-04-performance.html 18:55 < bridge_> [ddnet] I haven't used them much in rust yet. I'm thinking of making a backend with actix to learn more rust 18:57 < bridge_> [ddnet] Kotlin Stream/Sequences are nice as well 18:57 < bridge_> [ddnet] @Learath2 https://doc.rust-lang.org/std/iter/trait.Iterator.html check all the methods on the left side 18:57 < bridge_> [ddnet] Kotlin Sequences are nice as well 18:58 < bridge_> [ddnet] Kotlin is running in the JVM too, right? I guess it'd be similar to Java's 18:58 < bridge_> [ddnet] ye 18:58 < bridge_> [ddnet] Yep, it's compiling to Bytecode 18:58 < bridge_> [ddnet] (at the very least in terms of performance characteristics) 19:00 < bridge_> [ddnet] Honestly when I do mobile apps it's all in react-native nowadays, I genuinely don't really have a reason to learn either Kotlin or Swift 19:00 < bridge_> [ddnet] @Learath2 android studio is really well made tbh 19:00 < bridge_> [ddnet] For the rare cases where I want some native functionality that's not implemented yet or has an implementation I don't like, I just go to Java and Objective-C 19:01 < bridge_> [ddnet] I really like Java or meanwhile Kotlin is my favourite. I'm doing a lot of things with because most of my stuff doesn't need the fastest execution time or most efficient memory management. 19:02 < bridge_> [ddnet] Im only writing Android Apps and the native support with Kotlin is excellent - can't compare to React (no experience) 19:02 < bridge_> [ddnet] rust is my favourite and its fast and memory efficient 19:02 < bridge_> [ddnet] How can you compare to React if you haven't experienced react? πŸ˜„ 19:02 < bridge_> [ddnet] 19:02 < bridge_> [ddnet] who 19:02 < bridge_> [ddnet] ^^ 19:02 < bridge_> [ddnet] Well I used React for Websites 19:03 < bridge_> [ddnet] I don't like the JSX syntax 19:03 < bridge_> [ddnet] yeah kotlin will obviously be good since google wants to get rid of java 19:03 < bridge_> [ddnet] for android 19:03 < bridge_> [ddnet] Now the react ideology and syntax we can argue about all day, I really don't enjoy it either, but I can easily get a very native looking application with actual native transitions in react in about no time 19:03 < bridge_> [ddnet] Kotlin I'd guess offers a similar turn around, but I honestly find no need for it 19:04 < bridge_> [ddnet] maybe if I was starting out with mobile development today I could prefer Kotlin 19:04 < bridge_> [ddnet] I never tried React Native because I only did a few small personal projects only for mobile 19:04 < bridge_> [ddnet] And I am using android 19:04 < bridge_> [ddnet] So Kotlin is perfect - And i am not that unexperienced with Kotlin 19:05 < bridge_> [ddnet] I made apps for startups, one great thing with react-native is that I can basically just use the same "inner workings" for the website 19:06 < bridge_> [ddnet] I just have to worry about the presentation layer and the business logic is already implemented once, absolutely brilliant for maintainance 19:06 < bridge_> [ddnet] https://code.blender.org/2021/04/cycles-x/ :poggers: 19:06 < bridge_> [ddnet] The reasons why I'm asking a lot about datafiles/maps is because I am trying to implement a small map-parser in Kotlin (Datafile reading is successfully already - no ddnet support yet) 19:07 < bridge_> [ddnet] blender is probably my favourite example of opensource success 19:07 < bridge_> [ddnet] same 19:07 < bridge_> [ddnet] It's unbelievable how good it has gotten over the last years 19:07 < bridge_> [ddnet] s\/last/last couple/ 19:07 < bridge_> [ddnet] and 19:07 < bridge_> [ddnet] another example 19:07 < bridge_> [ddnet] Oooh, what are you making? 19:07 < bridge_> [ddnet] they also made a post ytesterday 19:07 < bridge_> [ddnet] https://lichess.org/blog/YF-ZORQAACAA89PI/why-lichess-will-always-be-free. 19:09 < bridge_> [ddnet] > In conclusion, the answer to the question "why is Lichess free?" is very simple. Why wouldn’t it be? Our only goal is to have the best website possible. To that end, adding ads, paywalls, or trackers would make no sense. 19:09 < bridge_> [ddnet] props to these guys aswell, amazing project 19:09 < bridge_> [ddnet] it's also far superior to any other chess site out there, it works perfectly and looks extremely pretty 19:14 < bridge_> [ddnet] just playing round a bit :o 19:32 < bridge_> [ddnet] And only datafiles yet - no more information 19:32 < bridge_> [ddnet] Still trying to understand the Teeworlds Code - C++ can be kinda weird 19:40 < bridge_> [ddnet] teeworlds is barely C++, it's more C 21:12 < bridge_> [ddnet] https://www.youtube.com/watch?v=8--5LwHRhjk 21:13 < bridge_> [ddnet] title might be a bit clickbaity, sorry 21:24 < bridge_> [ddnet] https://blog.chromium.org/2021/04/digging-for-performance-gold.html 21:25 < bridge_> [ddnet] quite hard to find bugs like that, I'm surprised that they did find that one