60 karma · joined February 6, 2020
I assume that for a long time, Spotify was content to ignore projects like librespot... they didn't help those projects, but didn't harm them either, and generally to keep things stable enough that a project based on librespot basically stayed working, which is why you saw so many OSS tools that used it behind the scenes. It does seem like that balance shifted over the last year, and now librespot is constantly breaking in new and mysterious ways. Some accounts work, others don't. Some tracks play, others don't. The devs did a great job fixing that stuff, but it's a game of whack-a-mole, and Spotify seems to have really upped the frequency of how often they break things. And that's for the lossy decoding, which is functionality that used to be pretty stable. Spotify reached out and (I assume) made some threats that explicitly shut down their work around lossless audio [1].
FYI -- I'm not associated with the librespot project, but I was actively working on a project that relied on it. Eventually I gave up in favor of self hosting, because I want my music to not break all the time. Shame, because I used to like Spotify a lot and now I'm actively looking to move away from it. That's one premium family plan subscription they're gonna lose! I'm sure they'll feel the sting.
[1] https://github.com/librespot-org/librespot/issues/1583#issue...
[1] https://99percentinvisible.org/episode/one-year-the-day-the-...
If all this seems chaotic, it is. It leads to untold stress as the release date looms closer and closer and the ending still isn't figured out, which compresses the schedule for each department to deliver a finished product. Very very rarely, the release date is allowed to slip (see "The Good Dinosaur" for example) but that's really the nuclear option, as it involves shuffling the release schedule and incurs a ton of cost. This is a big part of why these movies cost so much: compressing the schedule means hiring tons of people and paying them tons of overtime.
Source: I worked the better part of a decade at WDAS.
To them, the (perceived?) issue is how hard everything seems to setup and maintain. I haven't tried connecting any smart stuff lately, so maybe it's really easy for all I know, but all that stuff seems really advanced to them and they seem kind of afraid of it.
Fun times.
To each their own, I guess, but given how much of my day editing text, it's hard to want to use a text editor that has noticeable lag. (Cue the usual rants about latency in 2021 on multi-GHz machines)
The history of the two studios is way more involved than what you're suggesting, and talent moves around between studios quite a lot. And 25 years is a long time; there have been entire generations of talent that have risen up since then, and trust me, they're not all at Pixar.
Source: I worked at Disney Animation for nearly a decade (and closely with Pixar during that time). I'm certainly not unbiased but probably way more informed.
Being a tech lead is only partly about the tech, and mostly about the lead. You'll ultimately succeed or fail based on your team.
Being an effective leader requires a completely different set of skills than being an effective engineer. This, as silly as it sounds now, took me by surprise. You may have a decade-plus of dev experience but still be starting from zero when it comes to people. (Or not; some people will be better equipped for this than others. I wasn't so much.)
Find a mentor. Someone you can be completely honest with, and who will be honest with you. Bonus points if they know your team well too -they'll see things that you won't.
You may have to be pretty intentional about finding out what's going on in your team. Once you're in a position of authority, people won't always feel free to tell you.
Share as much context with your team as you can. They'll be more motivated if they understand why their work is important and has value. Even if you understand this... people aren't mind readers. They don't know what's in your head.
Part of your job now is to be available to people. This may mean you don't get to actually work on the tech yourself as much (or at all). It may mean you get interrupted more. That's may or may not annoy you, but you need to make the best choices you can for your team now, not (just) for you.
Share success when you can. You may find yourself in situations where people attribute your team's success to you... and while that's not wrong (you're the lead after all) it's also a great opportunity to share credit with those in your team. It's worth so much to people when you do this.
People are not interchangeable, and treating them as if they invites trouble. You can have great people, who still have a hard time working together for whatever reason. Be aware of inter-team dynamics; they can sink you. (Situations like this are why it's great to have a mentor.)
It's important to keep a close eye on how things are going, but don't confuse that with micro-management. Your best people are going to want some autonomy, and it's best for everybody if you find a way to give it to them. If things aren't going so well your instinct may be to tighten your grip... not necessarily wrong, but consider that may come across as a lack of trust on your part.
Above all: think of your job as less about being in control (though you may be) and more about fostering an environment where your team can do your best work. Get them what they need, shield them from the crap, give them what opportunities you can. Don't be selfish or mean. Be kind, be empathatic.
Good luck.