🔗 Enshittification

Enshittification - Wikipedia Enshittification is the pattern of decreasing quality observed in online services and products … The term was used by writer Cory Doctorow in November 20221 … Doctorow has also used the term platform decay to describe the same concept. The ‘Enshittification’ of TikTok | WIRED Here is how platforms die: First, they are good to their users; then they abuse their users to make things better for their business customers; finally, they abuse those business customers to claw back all the value for themselves....

April 25, 2024 · 1 min · 128 words

🏞 Evolution of Unix systems

“A diagram of the relationships between Unix systems” by Eraserhead1, Infinity0, Sav_vas (Wikipedia)

April 25, 2024 · 1 min · 13 words

🔗 It’s time to be outcome driven

It’s time to be outcome driven - Felipe Castro - OKR Trainer, Speaker, Author As Benedict Evans points out, humans have a clear tendency when they get new tools: There’s an old saying that when we get a new tool, we begin by making it fit the old way of working, and then we change the way we work to fit the new tool. 99% of people make OKR fit their old way of working....

April 11, 2024 · 1 min · 190 words

🔗 Simple suggestions for technology investment

Simple suggestions for technology investment. | by swardley | Apr, 2024 | Medium Wardley’s unproven method of thinking about investment. Step 1: Ignore the consultants, business gurus and analyst reports. Step 2: Gather some actual practitioners. Step 3: Ask them what matters. Step 4: Categorise the list. Step 5: Map the perspectives [Parallel] Step 6: Identify areas of investment. [Parallel] Step 7: Aggregation and comparison. TL;DR Be clear on your purpose....

April 10, 2024 · 1 min · 98 words

🔗 Hypermedia Systems

Hypermedia Systems We hope to have convinced you that hypermedia, rather than being a “legacy” technology or a technology only appropriate for “documents” of links, text and pictures, is, in fact, a powerful technology for building applications. In this book you have seen how to build sophisticated user interfaces — for both the web, with htmx, and for mobile applications, using Hyperview — using hypermedia as a core underlying application technology....

April 6, 2024 · 1 min · 71 words

🔗 The State of Engineering Productivity in 2024

The State of Engineering Productivity in 2024 📊 1) Hybrid is hard Teams who work in hybrid mode have the hardest time. It is tough to create an environment where the playing field is level for everybody: there is less incentive to build a truly remote-friendly environment than in full-remote teams, while at the same time you don’t get the full benefits of co-location. Committing decisively to one of the two extremes might bring better results in terms of productivity — but of course it can be more challenging in other departments....

March 28, 2024 · 2 min · 367 words

🔗 Do you work at a tech company?

Do you work at a tech company? | Irrational Exuberance [for engineers] a technology company is one with a strong engineering culture and empowered engineering leadership. Not the business model, not the legal definition, not “pure” innovation, but having a place at the table and being a table you want to sit at. how do you determine if a company empowers and supports their engineering organization? … CEO’s background … … ratio of engineering to total headcount … … engineering representation in the senior leadership team … … titles and seniority across organizations … … extent and quality of their engineering brand efforts … navigate your network … [and ask] … ask questions … of the their engineering culture to … different interviewers …

March 23, 2024 · 1 min · 124 words

🔗 Difftastic, a structural diff

Difftastic, a structural diff Difftastic is a CLI diff tool that compares files based on their syntax, not line-by-line. Difftastic produces accurate diffs that are easier for humans to read.

March 22, 2024 · 1 min · 30 words

🔗 Test-Driven Development Guided by ZOMBIES

Test-Driven Development Guided by ZOMBIES | Agile Alliance The acronym stands for: Z – Zero O – One M – Many (or More complex) B – Boundary Behaviors I – Interface definition E – Exercise Exceptional behavior S – Simple Scenarios, Simple Solutions

March 15, 2024 · 1 min · 43 words

🔗 Backlog size is inversely proportional to how often you talk to customers

Backlog size is inversely proportional to how often you talk to customers As with anything, these are not absolute truths but born out of my experience. Replace planning time with talking to customers Reduce time spent on UI design; focus on technical component design instead How you think people use your app is different than how they use it Implement account spoofing Page one real estate is critical to a seamless experience Your customer is your most important marketer MVPs are pointless if you’re not going to iterate on them There is no point to having a large backlog because the bigger the backlog, the higher the unvalidated assumptions, and the lower the chance that it creates any customer value....

January 24, 2024 · 2 min · 286 words

🔗 Enterprise Integration Patterns

Messaging Patterns Overview - Enterprise Integration Patterns This pattern catalog describes 65 integration patterns, collected from many integration projects since 2002. The patterns provide technology-independent design guidance for developers and architects to describe and develop robust integration solutions. The inspiration to document these patterns came when we struggled through multiple integration vendors’ product documentation just to realize later that many of the underlying concepts were quite similar.

December 1, 2023 · 1 min · 67 words

🔗 Architecture Antipatterns

Architecture Antipatterns Discover common architecture antipatterns, learn how to avoid them and overcome design pitfalls! Gain valuable insights, practical advice, and real-world examples to build better software architectures and improve existing ones. Cargo-Culting Domain Allergy Emotional Attachment Infrastructure Ignorance Malignant Growth Misapplied Genericity Never change a running system Over-Engineering Over-Modularization Under-Modularization

December 1, 2023 · 1 min · 51 words

🔗 The Frustration Loop

The Frustration Loop | ᕕ( ᐛ )ᕗ Herman’s blog This lead me to an idea: The Frustration Loop The premise is simple. When spam is detected, instead of blocking the blog, fake system error or failure in the most frustrating way possible. Waste their time and make them give up. I got the idea from The Password Game which I highly recommend checking out. Since implementing The Frustration Loop the amount of spam has dropped from about 30% of new blogs, to less than 5% (nothing is perfect)....

November 25, 2023 · 1 min · 105 words

🔗 HTML First

HTML First HTML First is a set of principles that aims to make building web software easier, faster, more inclusive, and more maintainable by… Leveraging the default capabilities of modern web browsers. Leveraging the extreme simplicity of HTML’s attribute syntax. Leveraging the web’s ViewSource affordance. Principles Prefer Vanilla approaches Use HTML attributes for styling and behaviour Use libraries that leverage HTML attributes Avoid Build Steps Prefer Naked HTML Be View-Source Friendly

November 14, 2023 · 1 min · 71 words

🔗 Approval Tests

Approval Tests - Home Unit testing asserts can be difficult to use. Approval tests simplify this by taking a snapshot of the results, and confirming that they have not changed. Interesting approach to testing using Combination Approvals: @Test public void upateQuality() throws Exception { CombinationApprovals.verifyAllCombinations( this::doUpdateQuality, new String []{"foo", "bar", "baz"}, new Integer []{-1, 0, 11}, new Integer[0, 1, 49, 50}); } private String doUpdateQuality(String name, int sellIn, int quality) { /*....

November 6, 2023 · 1 min · 115 words

🏞 How Big Tech does Quality Assurance (QA)

The pernicious effect of having a separate testing team: How Big Tech does Quality Assurance (QA) - by Gergely Orosz The change in the number and type of tests the Visual Studio Team Services experienced after merging the dev and the test teams. Before the merge: end-to-end tests dominated, but unit and integration tests were rare. This flipped after the merge. (Microsoft Dev Blogs) In 2 years, almost all “old” tests from when test was separate from dev, were gone....

September 20, 2023 · 1 min · 91 words

🔗 Google Style Guides

Google Style Guides This project (google/styleguide) links to the style guidelines we use for Google code. AngularJS Style Guide Common Lisp Style Guide C++ Style Guide C# Style Guide Go Style Guide HTML/CSS Style Guide JavaScript Style Guide Java Style Guide Objective-C Style Guide Python Style Guide R Style Guide Shell Style Guide Swift Style Guide TypeScript Style Guide Vim script Style Guide

September 17, 2023 · 1 min · 63 words

🔗 The Tyranny of the Marginal User

The Tyranny of the Marginal User - by Ivan Vendrov How is it possible that software gets worse, not better, over time, despite billions of dollars of R&D and rapid progress in tooling and AI? What evil force, more powerful than Innovation and Progress, is at work here? … I call this force the Tyranny of the Marginal User. … a company with a billion-user product doesn’t actually care about its billion existing users....

September 15, 2023 · 1 min · 155 words

🔗 The exponential horn of testing

The exponential horn of testing · GitHub The actual model that more closely resembles what we need should have the bare minimum of E2E tests, quite a number of service tests and the vast majority should be unit tests. Exponential model: x = 10^hy So if the height h goes from 1 to 2 to 3 then we have 1 E2E test to 100 service tests to 10,000 unit tests....

September 14, 2023 · 1 min · 85 words

📜 Software companies

Your company may not be in the software business, but eventually, a software company will be in your business. — Naval on Twitter

September 10, 2023 · 1 min · 23 words