Technology Commentary

Technology Commentary

8168 bookmarks
Custom sorting
The Noble Art of Maintenance Programming
The Noble Art of Maintenance Programming
Mention the words "maintenance programming" to a group of developers and they'll, to a man (or woman), recoil in horror. Maintenance programming is widely viewed as janitorial work. But maybe that's an unfair characterization. In Software Conflict 2.0 : The Art and Science of Software Engineering [http://www.amazon.com/
·blog.codinghorror.com·
The Noble Art of Maintenance Programming
A Coder Considers the Waning Days of the Craft
A Coder Considers the Waning Days of the Craft
Coding has always felt to me like an endlessly deep and rich domain. Now I find myself wanting to write a eulogy for it.
·newyorker.com·
A Coder Considers the Waning Days of the Craft
Data Science The Stanford Way
Data Science The Stanford Way
Data science is a relatively new term for a relatively old discipline. Essentially, it is data analysis, particularly for large data sets. It involves techniques as wide-ranging as statistics, comp…
·hackaday.com·
Data Science The Stanford Way
What 5G Fixed Wireless Boom Can Teach Us About Technology
What 5G Fixed Wireless Boom Can Teach Us About Technology
The 5G Home Broadband is booming. However, the journey of fixed wireless access has neither been simple, easy, nor cheap. This recent boom teaches us a big lesson: the unpredictable and often arduo…
·om.co·
What 5G Fixed Wireless Boom Can Teach Us About Technology
Grafana Adds New Tools
Grafana Adds New Tools
Programming book reviews, programming tutorials,programming news, C#, Ruby, Python,C, C++, PHP, Visual Basic, Computer book reviews, computer history, programming history, joomla, theory, spreadsheets and more.
·i-programmer.info·
Grafana Adds New Tools
Why Is IPv6 Adoption Slow?
Why Is IPv6 Adoption Slow?
Successful transitions and accelerated adoption both hinge on the collaborative efforts of governments and key internet players.
·thenewstack.io·
Why Is IPv6 Adoption Slow?
Devs4Devs - Yoda Conditions in Programming
Devs4Devs - Yoda Conditions in Programming
There's a coding convention known as "Yoda conditions" that imparts a valuable lesson in preventing subtle bugs and fostering cleaner code. Named after the wise and syntax-flipping Yoda from Star Wars these conditions involve reversing the typical order of comparison in expressions. Let's delve into the wisdom behind Yoda conditions and why they are embraced by developers. What are Yoda Conditions? In traditional conditional statements you might see comparisons written as variable == constant . However Yoda conditions flip this order presenting the constant first: constant == variable . The unconventional style is intentional and serves a specific purpose. The Wisdom Behind Yoda Conditions 1. Guarding Against Accidental Assignment: Consider the following scenario: if (x = 5): # This is syntactically valid but assigns 5 to x instead of checking equality # This can lead to unintended behavior and difficult-to-find bugs # Yoda conditions guard against such accidental assignments On the other hand: if (5 = x): # Results in a syntax error catching the mistake early in development # Yoda conditions provide a safety net against accidental assignments By placing the constant on the left a syntax error is triggered if a single equals sign is mistakenly used instead of a double equals sign for comparison. 2. Improved Readability: Proponents of Yoda conditions argue that they enhance code readability. The unconventional structure draws attention to the constant making it clearer that a comparison is taking place. This can be especially helpful when scanning code quickly reducing the chance of misinterpreting the intention of the statement. Conclusion: In the coding universe Yoda conditions serve as a small but powerful tool to prevent subtle bugs and improve code maintainability. While coding styles can vary embracing the wisdom of Yoda conditions contributes to a cleaner safer and more readable codebase. May the force of consistent and clear coding conventions be with you!
·devsfordevs.com·
Devs4Devs - Yoda Conditions in Programming
Wisdom from Computing's Past
Wisdom from Computing's Past
Learning from the past without trying to live in it.
·lewiscampbell.tech·
Wisdom from Computing's Past
How one line of code caused a $60 million loss
How one line of code caused a $60 million loss
60,000 people lost full phone service, half of AT&T's network was down, and 500 airline flights were delayed
·engineercodex.substack.com·
How one line of code caused a $60 million loss
Read the docs like a book - Aaron Francis
Read the docs like a book - Aaron Francis
Reading the docs straight through, like a book, can provide outsized benefits for your career.
·aaronfrancis.com·
Read the docs like a book - Aaron Francis
Pursuit of wicked smartness in VS Code
Pursuit of wicked smartness in VS Code
Smart artificial intelligence features in Visual Studio Code with GitHub Copilot
·code.visualstudio.com·
Pursuit of wicked smartness in VS Code
Advanced Best Practices for CI/CD Pipelines
Advanced Best Practices for CI/CD Pipelines
Programming book reviews, programming tutorials,programming news, C#, Ruby, Python,C, C++, PHP, Visual Basic, Computer book reviews, computer history, programming history, joomla, theory, spreadsheets and more.
·i-programmer.info·
Advanced Best Practices for CI/CD Pipelines
Don’t fight your external problems, laugh at them
Don’t fight your external problems, laugh at them
In my recent blog posts, I’ve primarily focused on hardcore crypto topics, which may be too specialized for a broader audience. In this post, I aim to address issues that resonate with the experiences of most software engineers and demonstrate how they can be solved when writing code with Elixir. Specifically I’ll describe how to write maintainable and easy to test code which makes requests to external services.
·badykov.com·
Don’t fight your external problems, laugh at them
4 Lessons Learned from Building Microfrontends
4 Lessons Learned from Building Microfrontends
By decoupling databases and improving resiliency, microfrontends give websites and applications the same benefits as microservices provide backends.
·thenewstack.io·
4 Lessons Learned from Building Microfrontends
Getting lucky isn't a plan.
Getting lucky isn't a plan.
One piece of flippant commentary that you’ll hear occasionally is that it’s “Better to be lucky than to be good.” On an individual level, it’s almost certainly true that being very lucky outperforms being quite good: I certainly know a number of folks who are financially successful after working at companies that succeeded, but where their direct impact was relatively small. Companies get lucky, too. This is true both in the sense that the door to acquisitions was much more attractive last decade than it is today, and also in the sense of Ben Horowitz’s quote from The Hard Thing About Hard Things, “Wartime CEO knows that sometimes you gotta roll a hard six.
·lethain.com·
Getting lucky isn't a plan.
Benchmarking.
Benchmarking.
Many of the most important questions for running an organization don’t have clear answers. In most engineering organizations, both the teams working on infrastructure and the teams working on product feel they are undersized. It’s also true that most individuals feel they are undercompensated. In the boom times, there is often enough investor money laying around to say yes to all these questions, but many leaders are acutely learning the long-term costs of expanding our budget too far.
·lethain.com·
Benchmarking.
Where Is This API Gateway Thing Going?
Where Is This API Gateway Thing Going?
According to Gartner, the full lifecycle API management quadrant is going away, but acknowledges in 2023 the API gateway continues to enjoy an outsized amount of focus when it comes to internal and public API operations. The gateway is important, and tends to be where attention is focused in good times and bad, but other stops along the API life cycle are also critical to the conversation as well, and I’m looking to understand more about why, while trying to understand where things might be going.
·apievangelist.com·
Where Is This API Gateway Thing Going?
A bit late, but I did leave Calm.
A bit late, but I did leave Calm.
I meant to post this when I left Calm earlier this year, as a ending note to my post on joining Calm, but instead I got focused on joining Carta and writing An Engineering Executive’s Primer. I’m cleaning out some of my old drafts, and posting this as an artifact of that moment. Although I ended up starting a role sooner than expected–it was the right opportunity to accept–I did get to spend more time with my kid, finish my next book, and get my running distance back up, so I’ll call it a successful sabbatical even if it was a compacted one.
·lethain.com·
A bit late, but I did leave Calm.
Team Charters are a trap.
Team Charters are a trap.
I’m cleaning out old lingering drafts. This one’s on why I dislike Team Charters. Recently an email came in asking about writing team charters. I’ve worked at a number of companies that asked teams to write charters, and I think it’s an interesting project. That said, it’s not a project I’d generally prioritize. If you pushed me on this topic, I’d probably suggest you write an engineering strategy document from the perspective of your team.
·lethain.com·
Team Charters are a trap.
How Should Developers Respond to AI?
How Should Developers Respond to AI?
Beyond preserving their careers by adapting to the new technology, developers could help guide the arrival of tools alleviating their own pain points. They could preserve that fundamental satisfaction of helping others, while tackling increasingly more complex problems.
·thenewstack.io·
How Should Developers Respond to AI?
The 6 Types of Conversations with Generative AI
The 6 Types of Conversations with Generative AI
When interacting with generative-AI bots, users engage in six types of conversations, depending on their skill levels and their information needs. Interfaces for UI bots should support and accommodate this diversity of conversation styles.
·nngroup.com·
The 6 Types of Conversations with Generative AI