Earlier quoted context omitted.
At fb/google the code for almost all projects is in one giant open repo that any engineer can browse.
But good luck figuring out how that code works. Disclosure I work at Microsoft and I work with ropes with millions of lines of code.
How Apple overcame its culture of secrecy to create AirPods Pro
91–100 of 177 posts
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#92Earlier quoted context omitted.
But good luck figuring out how that code works. Disclosure I work at Microsoft and I work with ropes with millions of lines of code.
I think the best skill I learned at Google was figuring out how other people's code works. You read the documentation, and then you make some RPC. It doesn't work as documented. You go read the other service's logs and see an error message, but it doesn't make any sense. You search the codebase for that error message. You find that the super deprecated do not include field is mandatory; it's sent to some other servic…
I wonder how developers at companies like Apple and Microsoft are able to be productive with hidden code.
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#93Earlier quoted context omitted.
Zsh isn't Bash. And Bash version compatibility is important when 75% of your team develop on Linux, but the other 25% on Mac. I mean, I use Fish, but when I'm writing shell scripts for others, it's Bash, because it's a common default. But now I'm limited to Bash 3. But I'm glad that they got rid of that stupid bar, and let you get a laptop with 32G of RAM now. So kind of Apple!
Why not just install a newer version of bash? It’s trivial to do so with homebrew. I’m sure your team has other dependencies that must be installed in order to run your software.
And now I'm needing to sniff your OS, detect whether or not Homebrew is installed, install it if not, then install Bash >3, then run the actual meat of the script.
All because of Apple's lawyers being scared of GPLv3.
At this point, I may as well insist that you install pyenv and Poetry and deliver it as a Python package.
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#94> Secrecy is a value it held dear, to preserve the “surprise and delight” for customers. I think the last time I felt this way about an Apple Event was the launch of the iPad. Not only are they burning out engineers, they're optimizing for a value that isn't part of their secret sauce anymore. I expect innovation, but not surprise. An N'th generation anything just won't have the same zing as it did the first few time…
Imagine the counterfactual: an Apple engineering blog that routinely publishes in depth articles describing the awesome challenges that their engineering teams are overcoming in an org as vertically integrated as Apple. That would make me more hype about their products than anything.
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#95Earlier quoted context omitted.
> Keep in mind this attitude makes total sense to hardware engineers. > The hardware business is... > Let's just say that the difficulties you face definitely exist for hardware engineers. I’ve worked in hardware and I’ve worked with multiple Korean CMs and I’m still struggling to understand what you’re trying to say. I don’t agree that this makes “total sense”. Instead of being intentionally vague, can you please ju…
I don't see the comment you replied to as being that vague: that are claiming that the information asymmetry with the hardware manufacturers/suppliers (including Samsung) in terms of things like price negotiations and "what's the next big thing" is more valuable than the downsides of internal engineer productivity.
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#96Earlier quoted context omitted.
Why not just install a newer version of bash? It’s trivial to do so with homebrew. I’m sure your team has other dependencies that must be installed in order to run your software.
Because a shell script is supposed to be a lowest common denominator. Run this, and it'll ensure you have Maven, it'll ensure you have Java 11+, then it'll build the thing and run the thing. And now I'm needing to sniff your OS, detect whether or not Homebrew is installed, install it if not, then install Bash >3, then run the actual meat of the script. All because of Apple's lawyers being scared of GPLv3. At this poi…
You already have to deal with platform-specific differences even (nay - especially!) across Linux with things like apt vs yum vs dnf vs pacman vs Nix. One more is really a non-issue.
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#97Earlier quoted context omitted.
>Then, Apple's laptops might not have such a massive lead on Intel/AMD processors today That's giving Intel a heck of a lot of credit. Intel is a massive ship moving along at full speed. They aren't the most agile of companies to say the least. Intel's x86 giant hammer convinces themselves that everything is an x86 nail. How else do you explain the fact that they are so woefully behind in the times? Apple and Intel w…
Except... Whilst I acknowledge that the M1 macs are pretty good, Intel power pcs on everyone else's desks that work just fine for the standard Microsoft Office workload. Intel are not miles behind, they are just not ahead. In the world of Enterprise Applications x86s compatibility with legacy code is going to be important to many large organisations. Meanwhile Apple with probably pull support for Rosetta2 in a couple…
Had to do a double take there…
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#98Re: How Apple overcame its culture of secrecy to create AirPods Pro
#99My conversatons with my brother who works at Apple goes something like this. Me: "What are you working on?" Him: "All I can tell you is that I am working on a project which will launch later this year and you hear about it in the news."
Won’t he tell u what projects he did in the past?
Re: How Apple overcame its culture of secrecy to create AirPods Pro
#100Earlier quoted context omitted.
I think the best skill I learned at Google was figuring out how other people's code works. You read the documentation, and then you make some RPC. It doesn't work as documented. You go read the other service's logs and see an error message, but it doesn't make any sense. You search the codebase for that error message. You find that the super deprecated do not include field is mandatory; it's sent to some other servic…
This is a great insight, thanks for sharing. I wonder how developers at companies like Apple and Microsoft are able to be productive with hidden code.