Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
12 rats tied together
Sep 7, 2006

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.

Adbot
ADBOT LOVES YOU

Asleep Style
Oct 20, 2010

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.

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.

that all makes sense. this post makes me wish for a big ops team

12 rats tied together
Sep 7, 2006

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

Powerful Two-Hander
Mar 10, 2004

Mods please change my name to "Tooter Skeleton" TIA.


FlapYoJacks posted:

Languages such as????

in before shaggar with dotnet and windows

Shaggar
Apr 26, 2006
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
Mar 10, 2004

Mods please change my name to "Tooter Skeleton" TIA.


nailed it

CarForumPoster
Jun 26, 2013

⚡POWER⚡

really did, bravo

cool av
Mar 2, 2013

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

outhole surfer
Mar 18, 2003

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.

redleader
Aug 18, 2005

Engage according to operational parameters

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

animist
Aug 28, 2018
i achieved computer enlightenment when i realized docker, the jvm, and the browser are all exactly the same

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.

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.

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

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

outhole surfer
Mar 18, 2003

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)

outhole surfer
Mar 18, 2003

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.

animist
Aug 28, 2018

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

Sapozhnik
Jan 2, 2005

Nap Ghost

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

my homie dhall
Dec 9, 2010

honey, oh please, it's just a machine
docker is good fuckers, although i agree perhaps there could be better layer management in Dockerfiles

my homie dhall
Dec 9, 2010

honey, oh please, it's just a machine
it’s hiding so much extremely bad linux poo poo from you

outhole surfer
Mar 18, 2003

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

pokeyman
Nov 26, 2006

That elephant ate my entire platoon.

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?

gnatalie
Jul 1, 2003

blasting women into space

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


well it's the correct answer

Powerful Two-Hander
Mar 10, 2004

Mods please change my name to "Tooter Skeleton" TIA.


candy for breakfast posted:

well it's the correct answer

I unironically agree

DrPossum
May 15, 2004

i am not a surgeon
the only container I need for my deployments and bespoke dev environs is a garbage can

Cold on a Cob
Feb 6, 2006

i've seen so much, i'm going blind
and i'm brain dead virtually

College Slice

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?

Achmed Jones
Oct 16, 2004



oops wrong thread

Powerful Two-Hander
Mar 10, 2004

Mods please change my name to "Tooter Skeleton" TIA.


Achmed Jones posted:

oops wrong thread

concurrency strikes again

Xarn
Jun 26, 2015

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

shared libraries and distro's package managers do not constitute "clown shoes interpreters/packages managers/frameworks". they are of the non clown shoes variety and are therefore fine

Hahahahahahahaha

Private Speech
Mar 30, 2011

I HAVE EVEN MORE WORTHLESS BEANIE BABIES IN MY COLLECTION THAN I HAVE WORTHLESS POSTS IN THE BEANIE BABY THREAD YET I STILL HAVE THE TEMERITY TO CRITICIZE OTHERS' COLLECTIONS

IF YOU SEE ME TALKING ABOUT BEANIE BABIES, PLEASE TELL ME TO

EAT. SHIT.


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

outhole surfer
Mar 18, 2003

Private Speech posted:

the windows side of things is usually okay about this, as sort of mentioned

linux binary deployment of commercial code though, lol, lmao

linux just ships a tarball^Wcontainer image with the binaries and the nastily patched dependencies

hobbesmaster
Jan 28, 2008

Xarn posted:

Hahahahahahahaha

they could’ve gotten way with that if they said C


…statically linked C

12 rats tied together
Sep 7, 2006

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

Shaggar
Apr 26, 2006

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

redleader
Aug 18, 2005

Engage according to operational parameters

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

hobbesmaster
Jan 28, 2008

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

Zlodo
Nov 25, 2006

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

cool av
Mar 2, 2013

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.

Xarn
Jun 26, 2015

Private Speech posted:

the windows side of things is usually okay about this, as sort of mentioned

linux binary deployment of commercial code though, lol, lmao

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.

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.
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.

Qtotonibudinibudet
Nov 7, 2011



Omich poluyobok, skazhi ty narkoman? ya prosto tozhe gde to tam zhivu, mogli by vmeste uyobyvat' narkotiki

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"

Adbot
ADBOT LOVES YOU

MrQueasy
Nov 15, 2005

Probiot-ICK

CMYK BLYAT! posted:

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"

golang is a terrible marriage of Cmdr Pike's condescension and Google's enshrinement of their company's idiosyncrasies as best practices.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply