The conversation every CTO dreads... can we use X programming language instead of X? This is a topic
|
|
May 10 · Issue #39 · View online
Level Up delivers a curated newsletter for leaders in tech. A project by http://patkua.com. Ideal for busy people such as Tech Leads, Engineering Managers, VPs of Engineering, CTOs and more.
|
|
The conversation every CTO dreads… can we use X programming language instead of X? This is a topic I was helping a technical leader navigate this week. In reality, tech stacks are always a mix of languages. JS for web, Python for ML, Scala if you use Spark. But it makes sense to provide some guidelines. I look at this question by considering a set of extremes. I then reflect on what I am trying to optimise for which includes taking into account your company size. Let’s look at a two examples of questionable fit. One bank I consulted with had 10,000 developers. I’m not sure why they needed so many but that’s a different story. I was in a meeting with 20 VPs across the business with this question about programming choice. They came to the conclusion everyone had to use C# for application development. 🤔 Compare this to another example of a startup. This startup had 3 development teams and 10 main programming languages. 😱 One optimising for consistency and reuse. The other optimising for (short-term) speed and developer autonomy. Programming language choice is architecturally significant. At least for software that will live a long time. Choosing a different programming language is hard to undo. Imagine reversing this choice after 6 months. In choosing a different programming language, you (implicitly) choose different build tools, testing tools, libraries and frameworks. It also means more time invested learning good code conventions and patterns. Good decisions consider these trade-offs based on your goals and context. That’s why there’s No Silver Bullet. There is no magic formula. But it’s a key responsibility of leaders to ensure timely decisions are made. It may be helpful to share an article about N26, “ 5 Reasons Why N26 is Moving to Kotlin”, a tech organisation I was leading and some of the considerations and context we had when making this choice. It touches upon a little bit of the process about how we picked it too. I hope you enjoy this week’s content. If you find it useful, please forward to someone else and send me feedback. Stay safe and healthy 🙏
|
|
Programming langauges provide a wide spectrum of choice
|
|
Bye, Amazon
Reading time: 7mins Big news at AWS with Tim Bray (@timbray) - co-author of the XML specification quits Amazon as VP and Distinguished Engineer to Amazon’s firing of whistle blowers making noise about warehouse employees frightened by COVID-19.
|
The Corporate Culture Gap
Reading time: 8mins
Randall Koutnik (@rkoutnik) explores the significance of Culture As Imagined (CAI) and Culture As Practiced (CAP). I have lot of stories about why this is the case from years of consulting and leading. It’s also a whole other topic talking about “changing culture” but that’s better over ☕️🍺🍷. I do agree with Randall that you should be aware of the gap and consider taking action on it.
|
Looking Back on Four Years at The Times
Reading time: 9mins One great way of learning from other leaders if you don’t get to work from them is to read some of their stories. In this leadership story, Nick Rockwell (@nicksrockwell) reflects on just over 4 years as CTO at the New York Times. I found myself nodding a lot. For example, “…alignment is gold, and non-alignment is poison…” - yes! Note it’s hosted on medium so you may see a paywall.
|
A Message from Co-Founder and CEO Brian Chesky
Reading time: 9mins Regardless of how you feel about the AirBnB business, they are going through some tough times. This email from co-founder and CEO Brian Chesky (@bchesky) is an excellent example of a leader delivering bad news with empathy, context and clarity.
|
When Every App Crashes
Reading time: 5mins Although this is about tech, I’m including it here in the leadership section because it’s such an excellent example from Anil Dash (@anildash) for simple communication 🗣. As technical leaders, you often assume the role of the communication bridge, translating from the technical world to those who understand less of it. Read this article carefully to observe how Anil approaches it.
|
|
Book Review: The Unicorn Project
|
ICANN finally halts $1.1bn sale of .org registry, says it's 'the right thing to do' after months of controversy
Reading time: 8mins This is a great win for the open internet and particularly a lot of non-profit organisations relying on this domain. The back story of the Private Equity firm behind the bid sounds super dodgy 🤨
|
Deleting data distributed throughout your microservices architecture
Reading time: 7mins This article from Megan Kanne (@megankanne) from Twitter shares how they approach companies with many services and team have - cross cutting aspects like data deletion. GDPR anyone? 😅
|
How one student curbed panic buying with the Pack
Reading time: 3mins A fun application of technology to try to help with mass toilet roll buying. A short and fun article about how it all got started. Yes, I do think the title is a bit click-baity too.
|
|
Octoverse spotlight: An analysis of developer productivity, work cadence, and collaboration in the early days of COVID-19
Reading time: 24mins
Nicole Forsgren (@nicolefv), author of the excellent book, Accelerate hits it out of the ballpark with an easy to read report on developer activity during CVOID-19 times. Great executive summary but overall a very reasonable reading time given the amount of data.
|
Coronavirus Tech Handbook
Link collection, so reading time… ∞ This is the first @JoeDocsApp handbook I’ve seen but the the richness of this is very impressive. Tech, tools and data for everyone (parents, remote works, healthcare workers, charities, governments… the list goes on) related to COVID-19. It’s put together with the folks from Newspeak House (@nwspk) aka The London College of Political Technologists, which looks like an institute applying tech for good. 🎉
|
Learning to work asynchronously takes time
Reading time: 8mins This is going to provide assurance to a lot moving to remote and distributed teams. Changing habits from heavily synchronous to asynchronous is hard, but Mark Locklear (@marklocklear) provides some tips on areas to focus on or watch out for. These tips apply very much in a co-location situation
|
How to go through a layoff
Reading time: 4mins I know a lot of companies are going through layoffs. I’m guessing it also won’t be the last time during these times. Dan Moore (@mooreds) writes a letter to his past about what the experience may be like. As a leader, you’re likely sitting on the other side of the table so this is a good article to consider how you might prepare for the conversation and how it might be interpreted.
|
Top 100 Resources for Product Managers
Reading time: 8mins and it’s a link collection… A lot of technical leaders need to step in to fill the role of a Product Manager sometime. This recently updated page from Sachin Rekhi (@Sachin Rekhi) is a fantastic jumping point categorised into different areas depending on what you’re interested in.
|
How Our VP of Engineering Used Data to Support Our Engineering Team on a Human Level
Reading time: 8mins A few issues ago I included an article about the terrible suggestion equating time connected to a VPN as productivity. Here’s a counter-example highlighting an appropriate use of metrics. VP Engineering Ale Paredes (@ale7714) used her company’s product to detect team/process smells and using them to drive change to improve the team environment overall. 🎉
|
|
A lot of truth in this tweet…
|
|
For engineers, writing is just as important as coding.
Writing helps you:
- Document your actions - Gain consensus - Crystallize your thoughts - Debate respectfully and productively - Pitch new ideas - Increase your impact - Improve your network - Reach the wider world
|
|
|
|
|
|
I will let out a bit of a secret.
I have been running a full Amazon Web Services on a $5 Raspberry Pi Zero for ~5 years.
About 7 times more reliable us-east-1.
Millions of lines of JavaScript running flawless on a battery.
Tested an entire startup's JAMstack on it. https://t.co/nm0zVEfXrm
|
|
|
And here’s something to laugh 🤣 about to end the newsletter. Maybe you can see yourself, or someone you know saying it. 🔊🆙
|
|
|
If you enjoyed this newsletter, please send me feedback and share with others!
|
Did you enjoy this issue?
|
|
|
|
If you don't want these updates anymore, please unsubscribe here.
If you were forwarded this newsletter and you like it, you can subscribe here.
|
|
Patrick Kua, Postfach 58 04 40, 10314, Berlin, Germany
|