|
at a large organization your ops team will have, either formally or informally, a set of "supported things". lotta people call these SKUs even if the terminology doesnt exactly match. as SWE you'll typically work with product teams to turns business problems into solved problems. part of that means cost modeling, budgeting, etc, which feeds into which ops SKU you end up selecting. ideally you communicate your needs to ops in the same terms that the SKUs were created under. in adtech for example, it's common to think about things in terms of requests/second and max memory capacity. you shouldn't really need to know the CPU model, whether that network rack has 10gig to this rack, and so on. your adtech software is going to allocate memory and respond to requests, so that's the common language. whether or not it runs on a vm or a container or native if it's a git polling shellscript while loop is the ops concern, and it might be all or any of these things for any number of very uninteresting reasons.
|
# ? Jun 24, 2022 19:57 |
|
|
# ? Apr 27, 2024 15:50 |
|
12 rats tied together posted:at a large organization your ops team will have, either formally or informally, a set of "supported things". lotta people call these SKUs even if the terminology doesnt exactly match. that all makes sense. this post makes me wish for a big ops team
|
# ? Jun 24, 2022 20:12 |
|
dont get me wrong, large orgs are usually bad, but that's the theory: you're an expert in your domain (making the computer do stuff), and your domain produces revenue / reduces legal risk / whatever it is that your product is doing. in light of this, the organization allocates resources and productivity towards keeping you focused on the part that makes money go up or "chance that we get fined millions of dollars for piping credit card PANs to twitter" go down in theory, the ops team has equal expertise at being allocated towards keeping you productive. in practice to bring this back full circle, the ops team also didnt read the python documentation and dont understand how to stop breaking pip. IME most large orgs are in the middle of a multi-decade "agile transformation" or "devops transformation" that is attempting to combat this in some way, and its usually not working very well but sometimes, if you're lucky, the only thing you have to care about is your code and the graphs that automatically appear when you write it
|
# ? Jun 24, 2022 20:57 |
|
FlapYoJacks posted:Languages such as???? in before shaggar with dotnet and windows
|
# ? Jun 24, 2022 23:36 |
|
dont even need windows now. dotnet will generate platform specific self contained binaries if u want. thats how i do all my deployments on windows so i dont have to worry about clr deployment
|
# ? Jun 25, 2022 00:22 |
|
nailed it
|
# ? Jun 25, 2022 00:32 |
|
Powerful Two-Hander posted:nailed it really did, bravo
|
# ? Jun 25, 2022 01:25 |
|
chaosbreather posted:the correct way to run a bunch of code is to give it its entire own virtual computer with its own bytecode and instruction set and loving everything. java runs on the jvm, .net on the clr, elixir on erlang vm. that happens all the time. merely timesharing some OS bits and bobs is actually much less drastic if you think about it i thought about it and no it’s definitely more drastic docker is simple enough for anybody but just novel enough that when it clicks it really rewards the programmer brain. not that it’s bad but ppl love it more than it deserves
|
# ? Jun 25, 2022 02:02 |
|
docker's biggest wart is the dockerfile. the decision to generate a new image layer for the majority of the available instructions is nonsense that way too much time is spent fighting.
|
# ? Jun 25, 2022 02:10 |
|
12 rats tied together posted:imo the secret to the success of the .net ecosystem is that microsoft has been doing the hard work in this area for so long that even the windows admins dont know what the gac is anymore the gac died with .net core 1
|
# ? Jun 25, 2022 02:11 |
|
i achieved computer enlightenment when i realized docker, the jvm, and the browser are all exactly the samenudgenudgetilt posted:docker's biggest wart is the dockerfile. the decision to generate a new image layer for the majority of the available instructions is nonsense that way too much time is spent fighting. it kinda makes sense for dockerfiles that just wrap a plang package but otherwise yeah it's annoying, especially if you're doing any kind of build.
|
# ? Jun 25, 2022 02:11 |
|
animist posted:i achieved computer enlightenment when i realized docker, the jvm, and the browser are all exactly the same They're all bad hth
|
# ? Jun 25, 2022 02:12 |
|
animist posted:it kinda makes sense for dockerfiles that just wrap a plang package but otherwise yeah it's annoying, especially if you're doing any kind of build. even then you gotta fight it the majority of the time. for most languages a package install is still going to cause a lot of cruft to land on disk if you're not careful (does the package manager download an index, cache the package, etc)
|
# ? Jun 25, 2022 02:15 |
|
I've gotten so most of my Dockerfiles just call out to one script for build and another script as an entrypoint. I also yell at the neighborhood kids to get off my lawn, so there's that.
|
# ? Jun 25, 2022 02:17 |
|
nudgenudgetilt posted:even then you gotta fight it the majority of the time. for most languages a package install is still going to cause a lot of cruft to land on disk if you're not careful (does the package manager download an index, cache the package, etc) yeah true. i love running one million apt-get commands connected by && on a single line
|
# ? Jun 25, 2022 02:17 |
|
nudgenudgetilt posted:docker's biggest wart is the dockerfile. the decision to generate a new image layer for the majority of the available instructions is nonsense that way too much time is spent fighting. ehh, disagree, it works fairly well. I guess there can be a lot of backslashes involved in some cases but if you really need to do a whole bunch of stuff in one leap then you might want to write a shell script nudgenudgetilt posted:even then you gotta fight it the majority of the time. for most languages a package install is still going to cause a lot of cruft to land on disk if you're not careful (does the package manager download an index, cache the package, etc) for plangy poo poo you'll generally want to do a multi-stage docker build so that the caches in the build stage do not pollute the output stage
|
# ? Jun 25, 2022 03:00 |
|
docker is good fuckers, although i agree perhaps there could be better layer management in Dockerfiles
|
# ? Jun 25, 2022 03:22 |
|
it’s hiding so much extremely bad linux poo poo from you
|
# ? Jun 25, 2022 03:23 |
|
Sapozhnik posted:ehh, disagree, it works fairly well. I guess there can be a lot of backslashes involved in some cases but if you really need to do a whole bunch of stuff in one leap then you might want to write a shell script honestly I wasn't even thinking about the additional escaping, but that raises another issue with it: another layer of escaping on top of a language already fraught with string handling and escaping gotchas
|
# ? Jun 25, 2022 03:30 |
|
nudgenudgetilt posted:honestly I wasn't even thinking about the additional escaping, but that raises another issue with it: another layer of escaping on top of a language already fraught with string handling and escaping gotchas is that the sound of another use for javascript I hear?
|
# ? Jun 25, 2022 03:58 |
|
Shaggar posted:dont even need windows now. dotnet will generate platform specific self contained binaries if u want. thats how i do all my deployments on windows so i dont have to worry about clr deployment Powerful Two-Hander posted:nailed it well it's the correct answer
|
# ? Jun 25, 2022 04:51 |
|
candy for breakfast posted:well it's the correct answer I unironically agree
|
# ? Jun 25, 2022 08:18 |
|
the only container I need for my deployments and bespoke dev environs is a garbage can
|
# ? Jun 25, 2022 11:37 |
|
Shaggar posted:dont even need windows now. dotnet will generate platform specific self contained binaries if u want. thats how i do all my deployments on windows so i dont have to worry about clr deployment doesn't this mean you need to recompile and redeploy every time they push out a security patch though?
|
# ? Jun 25, 2022 13:05 |
|
oops wrong thread
|
# ? Jun 25, 2022 17:28 |
|
Achmed Jones posted:oops wrong thread concurrency strikes again
|
# ? Jun 25, 2022 18:52 |
|
Zlodo posted:people using c++ are usually considerate enough to ship whichever shared libraries they use along with the main binary. on linux distros like to split it out into a bunch of packages but the package managers deal with that poo poo just fine Hahahahahahahaha
|
# ? Jun 25, 2022 19:51 |
|
Xarn posted:Hahahahahahahaha the windows side of things is usually okay about this, as sort of mentioned linux binary deployment of commercial code though, lol, lmao
|
# ? Jun 25, 2022 22:55 |
|
Private Speech posted:the windows side of things is usually okay about this, as sort of mentioned linux just ships a tarball^Wcontainer image with the binaries and the nastily patched dependencies
|
# ? Jun 25, 2022 23:00 |
|
Xarn posted:Hahahahahahahaha they could’ve gotten way with that if they said C …statically linked C
|
# ? Jun 25, 2022 23:37 |
|
still not really getting away with it because even python, the problem child that started this whole discussion, lets you distribute python apps in "statically linked" bundles. this functionality is also featured in the documentation, coincidentally, in the same place that venv is described: https://docs.python.org/3/library/distribution.html
|
# ? Jun 26, 2022 00:16 |
|
Cold on a Cob posted:doesn't this mean you need to recompile and redeploy every time they push out a security patch though? thats a problem for infrastructure/security
|
# ? Jun 26, 2022 00:25 |
|
Cold on a Cob posted:doesn't this mean you need to recompile and redeploy every time they push out a security patch though? this isn't something .net devs need to worry about because it's developed by a team of competent, paid professionals, instead of hoping that some rando is going to bother about security issues in his spare time language
|
# ? Jun 26, 2022 03:27 |
|
redleader posted:this isn't something .net devs need to worry about because it's developed by a team of competent, paid professionals, instead of hoping that some rando is going to bother about security issues in his spare time language dotnet used the OS crypto libraries
|
# ? Jun 26, 2022 03:33 |
|
Private Speech posted:linux binary deployment of commercial code I mean obviously if you go out of your way to look for trouble you'll always find it
|
# ? Jun 26, 2022 10:09 |
|
redleader posted:this isn't something .net devs need to worry about because it's developed by a team of competent, paid professionals, instead of hoping that some rando is going to bother about security issues in his spare time language it's definitely lost a bit of the professionalism in the modern era. almost as soon as they went open source they stopped writing documentation and now you have to read the source to figure out how poo poo works.
|
# ? Jun 26, 2022 18:14 |
|
Private Speech posted:the windows side of things is usually okay about this, as sort of mentioned Yup, for how much people like to poo poo on Windows, they have lots of the app deployment poo poo figured out much better than Linux, inc. how the loving libraries work. Linux is easy to start in, but once you outgrow the basic poo poo, everything becomes terrible.
|
# ? Jun 26, 2022 18:20 |
|
Spent the morning figuring out how to get the visual studio toolchain to respect my preferences for setting /MT when building through cmake. It just shoves /MD in there even though I specified /MT in the flags. They apparently added a flag to set what the default that they shove in there after youve set the flags you want to be as an enumeration. Not injecting stuff after resolving flags doesn't appear to be an option lol. Shaggar just going to chime in saying I shouldn't be using cmake anyway. But MS is just as capable of putting on clown shoes as anyone else.
|
# ? Jun 26, 2022 20:14 |
|
12 rats tied together posted:should be ... like node how you know youre working in a bad ecosystem anyway, i havent encountered it before, but who the gently caress came up with go's time formatting system regular languages: "here's the format string language and examples of what the reserved words translate to" golang: "just give us the example you want for this special magic date we've decided on and we'll try and figure the format string out"
|
# ? Jun 26, 2022 20:49 |
|
|
# ? Apr 27, 2024 15:50 |
|
CMYK BLYAT! posted:how you know youre working in a bad ecosystem golang is a terrible marriage of Cmdr Pike's condescension and Google's enshrinement of their company's idiosyncrasies as best practices.
|
# ? Jun 26, 2022 20:51 |