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
graph
Nov 22, 2006

aaag peanuts
you have come to a world called pager duty *whipcrack*

Adbot
ADBOT LOVES YOU

Catalyst-proof
May 11, 2011

better waste some time with you
tying two conversations together one of the most interesting things about yegge's post was this

quote:

Over the next couple of years, Amazon transformed internally into a service-oriented architecture. They learned a tremendous amount while effecting this transformation. There was lots of existing documentation and lore about SOAs, but at Amazon's vast scale it was about as useful as telling Indiana Jones to look both ways before crossing the street. Amazon's dev staff made a lot of discoveries along the way. A teeny tiny sampling of these discoveries included:

- pager escalation gets way harder, because a ticket might bounce through 20 service calls before the real owner is identified. If each bounce goes through a team with a 15-minute response time, it can be hours before the right team finally finds out, unless you build a lot of scaffolding and metrics and reporting.

- every single one of your peer teams suddenly becomes a potential DOS attacker. Nobody can make any real forward progress until very serious quotas and throttling are put in place in every single service.

- monitoring and QA are the same thing. You'd never think so until you try doing a big SOA. But when your service says "oh yes, I'm fine", it may well be the case that the only thing still functioning in the server is the little component that knows how to say "I'm fine, roger roger, over and out" in a cheery droid voice. In order to tell whether the service is actually responding, you have to make individual calls. The problem continues recursively until your monitoring is doing comprehensive semantics checking of your entire range of services and data, at which point it's indistinguishable from automated QA. So they're a continuum.

- if you have hundreds of services, and your code MUST communicate with other groups' code via these services, then you won't be able to find any of them without a service-discovery mechanism. And you can't have that without a service registration mechanism, which itself is another service. So Amazon has a universal service registry where you can find out reflectively (programmatically) about every service, what its APIs are, and also whether it is currently up, and where.

- debugging problems with someone else's code gets a LOT harder, and is basically impossible unless there is a universal standard way to run every service in a debuggable sandbox.

JawnV6
Jul 4, 2004

So hot ...

Cocoa Crispies posted:

that's why you tie your goddamn shoes right

lace control never helped me before

Shaggar
Apr 26, 2006

WHOIS John Galt posted:

tying two conversations together one of the most interesting things about yegge's post was this

its cool tho cause all of this is fixable and still more desirable than non-soa.

Catalyst-proof
May 11, 2011

better waste some time with you
oh yah i'm not saying this means SOA is bad it's just nice to see actual details about problems from people who have really tried solving them

not just saying, gently caress this i'mma tear it down and start again and that will make it better

Shaggar
Apr 26, 2006
yeah. I think it would be fun to work at amazon unironically cause they do cool poo poo like that instead of bad stuff like apple, fad stuff like goog, or self destructive stuff like Microsoft.

Wheany
Mar 17, 2006

Spinyahahahahahahahahahahahaha!

Doctor Rope

how!! posted:

I'm going to tell you a true story. When I was in middle school, I was on the track team. One day during a track meet, I was running the 400 meter dash. I made the mistake of not making sure my shoes were tied tightly before the race started. After rounding the first turn, I looked down and noticed my shoe was untied. I couldn't just stop and tie my shoe, because I'm running a race for gods sake. After the third turn, my shoe had almost come completely off because the laces flinging around had made the shoe so loose. When I crossed the finish line I was practically limping because I couldn't run normally or else my shoe would come completely off. I was too afraid to stop and do what needed to be done.

If you have a project full of technical debt, its like running a race with a shoe coming half off your foot. Yeah stopping to tie the show (refactoring code) will slow you down, but not as much as not stopping. A lot of companies act like they're in a sprint, but many times they are not. Most companies are running a distance race, where a week or a month doesn't matter as much as they fear it will.

you should write a blog

Catalyst-proof
May 11, 2011

better waste some time with you
apple's web services suck but they actually give a poo poo about making products worth a drat and the build quality of their hardware is lightyears ahead of anyone else ever

i tried having an intelligent conversation about this in shsc but surprise shsc are terrible posters

Max Facetime
Apr 18, 2009


it's more like "uses ALL of http, especially the nerdy bits"

like how well does some REST application work when a hotel wifi provider decides to turn one request into a temporary redirect to their login page?

how!!
Nov 19, 2011

by angerbot

Wheany posted:

you should write a blog

I'm a much better programmer than I am writer. I spend most my free time programming.

bobthecheese
Jun 7, 2006
Although I've never met Martha Stewart, I'll probably never birth her child.

how!! posted:

I'm going to tell you a true story. When I was in middle school, I was on the track team. One day during a track meet, I was running the 400 meter dash. I made the mistake of not making sure my shoes were tied tightly before the race started. After rounding the first turn, I looked down and noticed my shoe was untied. I couldn't just stop and tie my shoe, because I'm running a race for gods sake. After the third turn, my shoe had almost come completely off because the laces flinging around had made the shoe so loose. When I crossed the finish line I was practically limping because I couldn't run normally or else my shoe would come completely off. I was too afraid to stop and do what needed to be done.

If you have a project full of technical debt, its like running a race with a shoe coming half off your foot. Yeah stopping to tie the show (refactoring code) will slow you down, but not as much as not stopping. A lot of companies act like they're in a sprint, but many times they are not. Most companies are running a distance race, where a week or a month doesn't matter as much as they fear it will.

Guys, the moral of the story is that once you start running, you can't stop to tie your shoe, so obviously you should throw your shoes out and make new ones from scratch because that would be faster than tying them, because shoes are grossly inefficient, because anyone other than you can't design a shoe.

Also if the laces go missing in the shoe re-building process, no-one will notice until your shoe comes off, and then you can just evaluate whether laces are really needed then.

Also, did I mention that everyone else is really incompetent?

EVERYONE

Shaggar
Apr 26, 2006

Win8 Hetro Experie posted:

it's more like "uses ALL of http, especially the nerdy bits"

like how well does some REST application work when a hotel wifi provider decides to turn one request into a temporary redirect to their login page?

if its rest w/in a browser then maybe the browser will handle the redirect, if its within a native app it probably wont work. theres ways to detect those types of captive portals tho so usually w/ ios or w/e as soon as you join the network it takes you to that page to login.

Shaggar
Apr 26, 2006
but yes its a good example of why http codes are unreliable and you should check the message content as well.

Cocoa Crispies
Jul 20, 2001

Vehicular Manslaughter!

Pillbug

Shaggar posted:

but yes its a good example of why http codes are unreliable and you should check the message content as well.

just let your https library check the certificate, and if it doesn't recognize the CA don't even send the request

Dicky B
Mar 23, 2004

Let me tell you a true story,


butts

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

tef posted:

welcome to pager duty
oh that wasn't the worst of it, i could tell you about the heap corruption bug that woke devs up in the middle of the night for weeks on end and possibly was responsible for that dev leaving the team, thank god the incoming senior dev knew what a valgrind is

rotor
Jun 11, 2001

classic case of pineapple derangement syndrome

Gazpacho posted:

i could tell you about the heap corruption bug

no, please dont.

awesmoe
Nov 30, 2005

Pillbug

how!! posted:

I'm a much better programmer than I am writer. I spend most my free time programming.

do you still think you're a good programmer?

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

rotor posted:

no, please dont.
oh i insist

shared_ptr<FILE> fp = fopen("what", "r");

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

how!! posted:

I'm a much better programmer than I am writer. I spend most my free time programming.

Catalyst-proof
May 11, 2011

better waste some time with you
how!! old are you how!! seriously

you write the way i thought about the world when i was like... 14? maybe 15?

JawnV6
Jul 4, 2004

So hot ...
lmbo

penus de milo
Mar 9, 2002

CHAR CHAR
Always Be Testing

Max Facetime
Apr 18, 2009

Shaggar posted:

but yes its a good example of why http codes are unreliable and you should check the message content as well.

it was probably misconfigured to force re-logins way too often

another example could be a cruise-ship wifi which switches from an unlimited shore connection to a limited connection when the ship leaves a port

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

WHOIS John Galt posted:

you write the way i thought about the world when i was like... 14? maybe 15?
i thought the same way when i was in my first software dev job but only because i had been indoctrinated in "cleanroom software development" ideology in college

Wheany
Mar 17, 2006

Spinyahahahahahahahahahahahaha!

Doctor Rope

how!! posted:

I'm a much better programmer than I am writer. I spend most my free time programming.

holy poo poo you must be a terrible writer

tef
May 30, 2004

-> some l-system crap ->

how!! posted:

I'm a much better programmer than I am writer. I spend most my free time programming.

given your knack for explaining things, and your history of conflict, I can see why communicating with something other than another human is preferable to you.

tef
May 30, 2004

-> some l-system crap ->

Gazpacho posted:

oh that wasn't the worst of it, i could tell you about the heap corruption bug that woke devs up in the middle of the night for weeks on end and possibly was responsible for that dev leaving the team, thank god the incoming senior dev knew what a valgrind is

when I talked to amazon devs they all seemed to be going 'queues are awesome', then explaining how they dealt with all of the failure cases by getting paged.

Catalyst-proof
May 11, 2011

better waste some time with you
queues are awesome

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

tef posted:

when I talked to amazon devs they all seemed to be going 'queues are awesome', then explaining how they dealt with all of the failure cases by getting paged.
as yegge noted, there's unbelievable pressure to release something as soon as it's barely functional and refer the resulting disasters to the on-call dev. (i'm sure this varies by team but it is also cultural.)

Shaggar
Apr 26, 2006
who can I page about the horrific web design on amazon.com

GameCube
Nov 21, 2006

how!! posted:

I'm going to tell you a true story. When I was in middle school, I was on the track team. One day during a track meet, I was running the 400 meter dash. I made the mistake of not making sure my shoes were tied tightly before the race started. After rounding the first turn, I looked down and noticed my shoe was untied. I couldn't just stop and tie my shoe, because I'm running a race for gods sake. After the third turn, my shoe had almost come completely off because the laces flinging around had made the shoe so loose. When I crossed the finish line I was practically limping because I couldn't run normally or else my shoe would come completely off. I was too afraid to stop and do what needed to be done.

If you have a project full of technical debt, its like running a race with a shoe coming half off your foot. Yeah stopping to tie the show (refactoring code) will slow you down, but not as much as not stopping. A lot of companies act like they're in a sprint, but many times they are not. Most companies are running a distance race, where a week or a month doesn't matter as much as they fear it will.

lmao

Gazpacho
Jun 18, 2004

by Fluffdaddy
Slippery Tilde

Shaggar posted:

who can I page about the horrific web design on amazon.com

stevey posted:

Jeff Bezos is an infamous micro-manager. He micro-manages every single pixel of Amazon's retail site. He hired Larry Tesler, Apple's Chief Scientist and probably the very most famous and respected human-computer interaction expert in the entire world, and then ignored every goddamn thing Larry said for three years until Larry finally -- wisely -- left the company. Larry would do these big usability studies and demonstrate beyond any shred of doubt that nobody can understand that frigging website, but Bezos just couldn't let go of those pixels, all those millions of semantics-packed pixels on the landing page. They were like millions of his own precious children.

GameCube
Nov 21, 2006

doesn't matter what distance race you're running if your shoe's half-off you kick it off and run barefoot you idiot

Jonny 290
May 5, 2005



[ASK] me about OS/2 Warp

Werthog 95 posted:

doesn't matter what distance race you're running if your shoe's half-off you kick it off and run barefoot you idiot

lol if you don't have a shoe manufacturing facility to simply reroll it on the fly

GameCube
Nov 21, 2006

oh right it's a metaphor. well it's a really lovely one because any half-decent runner knows you don't stop for poo poo

Jonny 290
May 5, 2005



[ASK] me about OS/2 Warp

Werthog 95 posted:

oh right it's a metaphor. well it's a really lovely one because any half-decent runner knows you don't stop for poo poo

img-dieselboy-marathon.jpg

Shaggar
Apr 26, 2006

if that guy was actually smart apple's input devices and uis wouldn't be so bad

Shaggar
Apr 26, 2006
I mean, a one button mouse? come on.

Adbot
ADBOT LOVES YOU

Cocoa Crispies
Jul 20, 2001

Vehicular Manslaughter!

Pillbug

amazon must have hired some reddit posters because their new favorite thing seems to be jpegs of text



so it's obvious bezos doesn't care /that much/ about individual pixels

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