Who’s Afraid of Chinese Models?
Interesting proposal from Ben Thompson that both addresses the hypocrisy of labs outlawing distillation against their models despite training on unlicensed data, and could help US open models compete more effectively with their Chinese counterparts:The U.S. should pass a law that (1) makes explicit that collecting data for training models is fair use, and (2) bars terms of service that forbid distillation, for U.S. companies at a minimum. Stopping distillation — which is literally just querying the API — is nearly impossible; the U.S. should go the other way and lean into a new copyright policy that both indemnifies the labs and also guarantees that what they learned fuels further innovation for everyone else.
Ben also theorizes that Alibaba's decision to release Qwen 3.8 Max as open weights - a reversal from their decision not to release Qwen 3.7 Max in May - may have been influenced by a recent speech by Xi Jinping, who said:
We should seize this rare, historic opportunity to encourage open source, openness, collaboration and sharing.
Tags: ai, generative-ai, llms, training-data, qwen, ai-ethics, ai-in-china
This week's highlights bring together insights on evolving API security, the realities of integrating AI into your workflow, and tools that can help streamline the testing process. I selected these pieces for their practical advice on simplifying everyday development tasks while building more robust and resilient infrastructure.
Web Application & API Protection: An Overview (John Brawner) - I knew many security tools existed, and obviously I use some. But I learned a lot in this post. WAAP emerged because WAF alone was not enough to address APIs, bots, DDoS, and modern cloud traffic patterns in a single runtime protection model.
How to Turn a Postman Collection into a Maintainable pytest Suite (Mikhail Golikov) - Tests are important, so keeping them clean should be too. This post gives us a great example of how to build reliable tools to do exactly that.
OpenAPI Code Generation with Corvus: Typed HTTP Clients (Matthew Adams) - Who doesn't uses APIs?! I need to try that today!
A new way to reflect on how you use Claude - This post shares a reporting tool to visualize our Claude utilization.
Better tools made Copilot code review worse. Here's how we actually improved it. (Napalys Klicius) - Interesting story that shares experiments to improve AI when doing code review. How it failed and how it work, and how the same fix didn't do great in a different context.
Your Laptop Is the New Production Environment (Karan Verma) - The title definitely caught my attention, and it's so true. First post of a promising series.
AI is ready. Your APIs probably aren't (Matt Gray) - Postman has always been an interesting tool. I've been using something else for a while but am thinking about exploring it again!
How GitHub gave every repository a durable owner - A nice behind-the-scenes story where GitHub shares the issues, failures, learning and success.
As a solo developer building small, useful tools like Tab Reminder, my Chrome extension for scheduling tabs to reopen later, I often find myself switching between different programming languages and environments. Recently, I had to switch between Swift for a Mac app project and AI Studio for a machine learning experiment in the same week. This experience taught me a valuable lesson about the importance of context switching and how it can impact my productivity.
I recall a particular day when I was working on a feature for Tab Reminder, trying to debug an issue with the scheduling algorithm. I had spent hours staring at the Swift code, but couldn't seem to find the problem. I took a break and worked on my AI Studio project for a few hours, and when I came back to the Swift code, I was able to spot the issue immediately. This experience made me realize that taking a break and working on a different project can help me approach problems with a fresh perspective.
One technical insight I gained from this experience is the importance of using design patterns to reduce cognitive overhead when switching between languages. For example, using the Repository pattern in Swift and a similar pattern in AI Studio helped me to focus on the business logic of the application, rather than the language-specific details. This allowed me to switch between the two environments more easily and focus on the tasks at hand.
The lesson I learned from this experience is that context switching can be a powerful tool for increasing productivity, but it requires intentional effort to manage. By using design patterns and taking breaks to work on different projects, I can come back to my code with a fresh perspective and tackle problems more effectively. Whether I'm working on Tab Reminder or another project, this lesson has helped me to stay focused and deliver high-quality results.