News for hackers. Stuff that matters.
Re:“A Cold War Every Day” inside Apple's internal tools group by hermitdev on Tuesday April 07, 2020 @09:35PM (#22809287)
Around 12-13 years ago, I was working (as a team of one on a highly technical upgrade, 32-64 bit upgrade, new compilers, OS changes, etc. Basically everything was changing). Naturally, I was falling behind debugging obscure issues largely due to 32->64 bit (this was C++ cross platform between windows and Linux).

My director offered to toss some offshore resources my way to help. Bluntly told him: I think I have 3 months work ahead of me. Give me offshore resources, it'll more likely be a 9-12 months, because by the time ive described the problem in sufficient detail, I could have just done the work. Instead, id have to review a broken "solution" that doesnt work, probably makes things worse.

Offshore is fine when you need grunt work, pounding out CRUD interfaces or already having a detailed spec. But, offshore doesnt work when you're flying by the seat of your pants.

Most of the big ossues I jad durong that release werent even my own. A few I remember: an x86/x64 inline ASM bug, use of an uninitialized variable in a DB lib that led to random failures dealing with NULLs, an overflow in a 3rd party datetime lib and ABI mismatch because of wrong datatypes used in an OSS ODBC wrapper that worked in 32-bit, but failed horribly on 64-bit.

None of the offshore talent I worked with at the time could have identified, let alone fix those issues. Several of those took reading the actual generated assembler to see what is going on. I dont write much x86/64, but I can read enough to know when shits going to hell.

The 2 big agencies I delt with were Salient and Accenture. I could work with Salient, most of their asserts were Indian and spoke English. Our Accenture resources were all Chinese. It was a pain in the ass because none of our engineering resources spoke or read/wrote English. Everything had to go both ways through a translator. Something was always lost in the translation. We ended up eating the contract and backing out with Accenture.

Re:“A Cold War Every Day” inside Apple's internal tools group by _bxg1 on Tuesday April 07, 2020 @09:42PM (#22809321)
> Offshore is fine when you need grunt work, pounding out CRUD interfaces or already having a detailed spec.

My partner works at a startup with a very simple CRUD project. They outsourced one of the early sections of that UI. Even in such a simple case, integrating that component has been a huge time-sink and maintaining it is basically out of the question. They're working on a plan to rebuild it, as so often happens with these things.

Fire-and-forget software simply doesn't work.

Re:“A Cold War Every Day” inside Apple's internal tools group by hhas01 on Wednesday April 08, 2020 @06:24AM (#22811644)
Any monkey can write code. Writing the right code critically depends on communication.
Re:“A Cold War Every Day” inside Apple's internal tools group by thr0w__4w4y on Wednesday April 08, 2020 @04:26AM (#22811060)
It's been 20 years since I worked a corporate job, but a good friend and brilliant colleague / friend told me about his own horror story with Accenture / Chinese consultants. He told me the English skills and attitude of the Indian consultants he used to work with far outweighed the pain of dealing with Accenture consultants, in spite of their tech skills. Language problems and ego / combativeness from the stories he told me. Hearsay, I know... but this guy's work is in products that 90% of the people reading this use, so... yeah.
Re:“A Cold War Every Day” inside Apple's internal tools group by hhas01 on Wednesday April 08, 2020 @06:20AM (#22811630)
“My director offered to toss some offshore resources my way to help.”

Brooks’s Law in action. Mythical Man-Month should be required reading for all developers and managers.

Re:“A Cold War Every Day” inside Apple's internal tools group by smoofles on Thursday April 09, 2020 @07:14AM (#22821438)
I’ve seen that done just as a gesture of good will, in a "if it helps, we can spend more money"-kind of way, even though everyone involved knows it would just complicate things.