|
our "development transformation team" are really big on pushing deployment automation because they think we're spending a lot of time doing it and were genuinely surprised when I said "not really. I just click publish in visual studio and it's done in like 2 minutes", maybe they're just getting gaslit by other teams idk and ofc when it comes to production, deployment is handed off to some other team doing it all manually because "automated production deployment is not allowed for applications with this specific classification", and it takes a bunch of paperwork to even get that far
|
# ? Oct 19, 2021 09:04 |
|
|
# ? Jun 2, 2024 05:34 |
|
TwoDice posted:call me when your OS is happy with 100k runnable threads your OS will not be happy, but OS threads are a lower level of abstraction than you should be considering. there's no reason why you can't have N >>>> number-of-OS-threads concurrent tasks all scheduled. to take your example, BEAM handles 100k processes without an issue. Coroutines on a threadpool in python are way worse, but are also fine to use for large numbers of concurrently executing (io-bound) tasks. hopefully loom can do something similar for Java. OS threads are for your runtime to deal with, not you
|
# ? Oct 19, 2021 12:03 |
|
my homie dhall posted:your OS will not be happy, but OS threads are a lower level of abstraction than you should be considering. there's no reason why you can't have N >>>> number-of-OS-threads concurrent tasks all scheduled. yeah coroutines and green threads whip rear end
|
# ? Oct 19, 2021 16:46 |
|
its funny how they completely agreed with you while missing the point
|
# ? Oct 19, 2021 16:59 |
|
Today I interviewed someone who got through an initial interview with management for an embedded Linux development position. He doesnt know what Buildroot or Yocto is. Didnt know basic shell commands such as cat/cut/sed Didnt use tab completion How did he get to round two of interviews?
|
# ? Oct 20, 2021 00:31 |
|
so uh is that job remote by chance
|
# ? Oct 20, 2021 00:39 |
|
TwoDice posted:yeah coroutines and green threads whip rear end ah, my b, I thought this was in defense of "why you shouldn't kick off a handler per request"
|
# ? Oct 20, 2021 00:41 |
|
hobbesmaster posted:so uh is that job remote by chance
|
# ? Oct 20, 2021 00:59 |
|
TwoDice posted:yeah coroutines and green threads whip rear end Ok, showing my ignorance here. Is there a good primer on coroutines and green threads for C or maybe C++?
|
# ? Oct 20, 2021 01:15 |
|
greenlets are primarily used by python event loops but since python is just a fancy c macro language they have a C API https://greenlet.readthedocs.io/en/latest/c_api.html. the other documentation on this website has good words about them
|
# ? Oct 20, 2021 01:17 |
|
darkforce898 posted:Ok, showing my ignorance here. https://cr.openjdk.java.net/~rpressler/loom/Loom-Proposal.html this is for java but the motivation section is basically the same for any language
|
# ? Oct 20, 2021 02:04 |
|
12 rats tied together posted:greenlets are primarily used by python event loops but since python is just a fancy c macro language they have a C API https://greenlet.readthedocs.io/en/latest/c_api.html. the other documentation on this website has good words about them i have a presentation about this to do this week and just threw that in there as it is news to me, but will likely make other more experienced devs happy
|
# ? Oct 20, 2021 17:44 |
|
i am so loving sick of golang. want a set? no, you can't have that, that's too complex. just use a dictionary with all the values set to boolean true. what, intersection? what is that??? even loving javascript has had a set type for many years at this point, jfc
|
# ? Oct 21, 2021 14:39 |
|
TheFluff posted:i am so loving sick of golang. want a set? no, you can't have that, that's too complex. just use a dictionary with all the values set to boolean true. what, intersection? what is that???
|
# ? Oct 21, 2021 14:47 |
|
TheFluff posted:i am so loving sick of golang. want a set? no, you can't have that, that's too complex. just use a dictionary with all the values set to boolean true. what, intersection? what is that??? edit: Golang, the language made because its authors found their juniors had too hard a time grasping the concept of a set
|
# ? Oct 21, 2021 14:54 |
|
i would like fututes better if people actually built them into compilers instead of forcing you to manually plumb continuations by hand. I want stack traces more than 2 frames deep. Futures feel like a mediocre compromise usually, at least in JS and Rust which is where I've mostly used them. animist fucked around with this message at 15:12 on Oct 21, 2021 |
# ? Oct 21, 2021 14:57 |
|
animist posted:i would like fututes better if people actually built them into compilers instead of forcing you to manually plumb continuations by hand. I want stack traces more than 2 frames deep. Futures feel like a mediocre compromise usually, at least in JS and Rust which is where I've mostly used them.
|
# ? Oct 21, 2021 15:06 |
|
mystes posted:Await is already "built into compilers" in most languages that support it that don't start with an h and end with askell, plus one of the advantages of async and coroutines compared to threads is that you can control where you yield so you can avoid a lot of the complexities of having to use locks and stuff in multhreaded code, so having the compiler make it too automatic/magical might defeat the purpose. right but it's a local transformation. it converts 1 stack frame at a time to state machines. (Rust hides this by inlining a bazillion things into 1 state machine and throwing the resulting mound of spaghetti at LLVM.) recently I was reading about delimited continuations. The idea is that it works a lot like catch/throw, except at a catch point you're allowed to restart the computation from the point it threw with a new value. That means you can make function calls without having to mark them sync or async, the sync or async can be an impl detail depending on what handlers you installed higher up in the stack. i guess thats basically just green threads though. or setjmp/longjmp
|
# ? Oct 21, 2021 15:22 |
|
Sagacity posted:there are perfectly decent other languages available
|
# ? Oct 21, 2021 19:58 |
|
champagne posting posted:edit: Golang, the language made because its authors found their juniors had too hard a time grasping the concept of a set
|
# ? Oct 21, 2021 22:16 |
|
jesus WEP posted:did they drink their whole No Generics koolaid so hard that theyve just decided against a bunch of collection types because theyd be a pain to implement without them? nah, they get to use generic for stdlib implementation if they want to annoys me so much that i cant do code:
|
# ? Oct 21, 2021 22:42 |
|
i'm glad go doesn't have sets because when i was learning it that tipped me off that it was not a serious language worthy of my time
|
# ? Oct 22, 2021 00:54 |
|
I have horrible news: https://github.com/golang/go/discussions/47331
|
# ? Oct 22, 2021 01:02 |
|
every
|
# ? Oct 22, 2021 01:08 |
|
Achmed Jones posted:map[fart]bool what the gently caress is that syntax
|
# ? Oct 22, 2021 03:50 |
|
Pie Colony posted:what the gently caress is that syntax
|
# ? Oct 22, 2021 05:29 |
|
a set with o(log n) for add and has, lmao why even bother
|
# ? Oct 22, 2021 06:38 |
|
animist posted:i would like fututes better if people actually built them into compilers instead of forcing you to manually plumb continuations by hand. I want stack traces more than 2 frames deep. Futures feel like a mediocre compromise usually, at least in JS and Rust which is where I've mostly used them. kotlin does them this way and it owns.
|
# ? Oct 22, 2021 07:00 |
|
jesus WEP posted:did they drink their whole No Generics koolaid so hard that they’ve just decided against a bunch of collection types because they’d be a pain to implement without them? "you don't actually need this feature that is hard for us to implement" is kind of go's schtick "complex features will confuse our users bc they're noobs anyway" always felt like an excuse for their laziness
|
# ? Oct 22, 2021 07:21 |
|
Zlodo posted:"you don't actually need this feature that is hard for us to implement" is kind of go's schtick considering go was written for googlers who get paid hundreds of thou a year and who are also too dumb to handle c++ I really think that go is both a symptom of and a giant flashing red billboard about what googles major malfunction is
|
# ? Oct 22, 2021 07:43 |
|
Kazinsal posted:considering go was written for googlers who get paid hundreds of thou a year and who are also too dumb to handle c++
|
# ? Oct 22, 2021 08:00 |
|
the "too dumb for c/c++" thing is so stupid. dunking on golang is good and cool, but dunking on it _that way_ is just foolish why yes i work in security why do you ask
|
# ? Oct 22, 2021 08:05 |
|
Achmed Jones posted:the "too dumb for c/c++" thing is so stupid. dunking on golang is good and cool, but dunking on it _that way_ is just foolish having worked on patching systemd services all written in c I can safely say I'd much rather work with Go. I'd prefer neither, but if I had a gun to my head
|
# ? Oct 22, 2021 08:13 |
|
Powerful Two-Hander posted:love 2 spend hours trying to work out why my implementation of the library example is not applying the correct ordering to the rendered graph only to find that the example contains a setting it doesn't actually need, but if applied to a dataset where it could actually be applied, conflicts with the ordering process and fucks the whole thing up completely OH MY loving GOD after "solving" that problem last week and getting the y layer alignment constraints working correctly, the X layout was still wrong and nodes kept overlapping. I spent ages fiddling around trying to apply the X constraints to the layers using the library syntax with no luck, then turned the setting above back on and now it loving works arrrrgggghhhhh
|
# ? Oct 22, 2021 09:52 |
|
Pie Colony posted:what the gently caress is that syntax it's not even hard to read because it's terse, its just unfathomably contrary
|
# ? Oct 22, 2021 10:05 |
|
also hello yes it's me the guy who had his dotnet core project set to use iisexpress and only just realised/remembered that running from "service" hosts out of kestrel and gives you console output in an actual readable format in my defence there is zero "live" core stuff in our current applications so I only use it on "spare time" side projects which is like 1 hour a week if that
|
# ? Oct 22, 2021 10:06 |
|
Achmed Jones posted:the "too dumb for c/c++" thing is so stupid. dunking on golang is good and cool, but dunking on it _that way_ is just foolish The trick is to realize that everyone is too dumb for C++, and that C++ code should never touch security boundary.
|
# ? Oct 22, 2021 11:23 |
|
also everything is a security boundary
|
# ? Oct 22, 2021 12:04 |
|
Achmed Jones posted:the "too dumb for c/c++" thing is so stupid. dunking on golang is good and cool, but dunking on it _that way_ is just foolish I thought go was pitched as "this is for our dumb employees" and not "this prevents our employees from writing many classes of security problem" in practice you're right, in pitch you are wrong
|
# ? Oct 22, 2021 15:23 |
|
|
# ? Jun 2, 2024 05:34 |
|
I feel like this blog post shares a certain kinship with this thread https://danluu.com/look-stupid/
|
# ? Oct 22, 2021 15:24 |