Michael Käser

1.4K posts

Michael Käser

Michael Käser

@michaelk_ch

Building smarter workflow automations at @relay. Previously eng lead for Google Calendar, Google Tasks, Gmail Web.

Switzerland Katılım Kasım 2009
447 Takip Edilen335 Takipçiler
Michael Käser
Michael Käser@michaelk_ch·
@badlogicgames Certainly A because B has way too many nits, but it's borderline IMO how it mixes iteration / data copying and the actual "business logic". Don't like nested "continue", doesn't offer much help from the compiler catching mistakes when code is moved around later.
English
0
0
0
463
Mario Zechner
Mario Zechner@badlogicgames·
assume messages array and individual input messages must not be modified. do you prefer A or B? why?
Mario Zechner tweet mediaMario Zechner tweet media
English
28
2
38
13.2K
Michael Käser
Michael Käser@michaelk_ch·
@zeeg They got a lot better at being bad though! The fastest all-knowing coder who never seems to develop any form of higher level understanding of the job.
English
0
0
0
310
David Cramer
David Cramer@zeeg·
Whenever someone talks about how much models have improved over the last 3, 6, or 12 months I’m like “sure, but not enough to matter”. I’m still solving the same problems I was solving a year ago and there’s no plausible path forward. If you honestly ask yourself how much has genuinely changed I think it will make you a lot more grounded about how much might change in the future. It’s not to say there’s not been visible improvement, but there have been no exponential leaps in capabilities of the technology. Only exponential micro benchmarks.
Nate Berkopec@nateberkopec

x.com/i/article/2058…

English
35
12
328
101.4K
Michael Käser
Michael Käser@michaelk_ch·
@badlogicgames @Nek__12 @kr0der It's good though when people consider future extensibility. Just need to learn where it matters. Pi is a great example. Architecture plans for extensibility, but actual code is compact, readable, allows (I guess) painless refactoring. Things agents appreciate but can't produce...
English
1
0
0
34
Mario Zechner
Mario Zechner@badlogicgames·
jfc imma stop using agents for the rest of the week. garbage.
Mario Zechner tweet media
English
12
1
87
13.1K
Michael Käser
Michael Käser@michaelk_ch·
@Nek__12 @kr0der @badlogicgames At this level code shouldn't plan for potential future extensibility. It's trivial to change the function interface if that happens. If you look at the code now, the verbosity doesn't help, it just hides more precise information, and contributes to bloat agents produce. YAGNI.
English
1
0
9
247
Nek.12
Nek.12@Nek__12·
@michaelk_ch @kr0der @badlogicgames Actually I think the agent wrote better code. It thought about future extensibility (adding something like skipped skills, failures, filters etc that will be useful in the future) and already is avoiding parameter hell by grouping into a class. This style is popular in Kotlin.
English
2
0
0
392
Michael Käser
Michael Käser@michaelk_ch·
@kr0der @badlogicgames Named options are great if the caller can choose between optional options, e.g. different filters for the skills ('nameContains', 'createdAfter', 'recentlyUsed', ...), but you can also just load all the skills. env and dir OTOH are parameters to loadSkills you always need.
English
0
0
1
39
Michael Käser
Michael Käser@michaelk_ch·
@kr0der @badlogicgames 1. Should just return the skills directly. The result of LoadSkills is skills. 2. The options also aren't great. Not really options that you combine. loadSkillsFromDir(env: ExecutionEnv, dir: string): Promise<Skill[]> {}
English
4
0
27
1.5K
Anthony Kroeger
Anthony Kroeger@kr0der·
@badlogicgames what's the issue for learning purposes? is it the fact that it could've just inlined the LoadSkillsResult type instead?
English
1
0
1
1.2K
Michael Käser
Michael Käser@michaelk_ch·
@cramforce I think a part of today's harness will move closer to inference to benefit from smarter caching strategies that are not possible with current split. But that just makes the api a slightly higher level abstraction.
English
1
0
0
257
Malte Ubl
Malte Ubl@cramforce·
What Ryan says is false today. It could be true in the future (and Ryan could know that this future will exist) if the models keep the harness itself fully private. Because as long as the harness is public (codex is open source, claude can be easily reverse engineered using codex), any custom harness can use quasi-identical tools (etc) and differentiate at a layer orthogonal to the post-training target. Almost all the differentiation of a harness is already in the latter category. But even if the harnesses go fully private (which would mean making them in-cloud APIs): Just like abstractions were added on top of the models, abstractions will be added on top of the harness. The model labs might be the ones who make the best harness for their model but they will not make the abstraction that you use to use their harness.
English
16
5
155
29.6K
Michael Käser
Michael Käser@michaelk_ch·
2026 and @figma still whitelists who can access the MCP server. Y'all really think making it harder for agents to access our data is the winning strategy?
Michael Käser tweet media
English
0
0
0
107
Michael Käser
Michael Käser@michaelk_ch·
Is Opus 4.7 dumber and worse at calling tools? Nope, but it interprets prompts much more literally, and if there's a flaw, it will punish you. One could consider the lack of common sense as regression, but it's by design and can be steered. For every release: Read the notes!
English
0
1
1
329
Michael Käser
Michael Käser@michaelk_ch·
@HansruediWidmer "Muss ein Sonderzeichen enthalten" ist dann halt doch leichter zu erklären / überprüfen als "Stärke (= Länge * Kardinalität des Alphabets) > X"
Deutsch
1
0
15
725
Hansruedi Widmer
Hansruedi Widmer@HansruediWidmer·
Der Swisscom-Router akzeptiert X4lxBW7Wj9tSUVotwIyZa7AyiUybRhDoU4awP9Ijt7QH44WAxWyfbxvNol6 nicht als WLAN-Schlüssel. Zu schwach, sagt er.
Deutsch
50
0
92
8.6K
Michael Käser
Michael Käser@michaelk_ch·
@morefishoil @aliceisplaying A story as old as time. Feature doesn't make sense anymore, but you don't want to break anyone, so you add a workaround. Time passes. Workaround is now a regression. Lesson: Rip the bandaid off immediately.
English
0
0
0
28
Michael Käser
Michael Käser@michaelk_ch·
@morefishoil @aliceisplaying Yeah, sounds like an attempt to build something compatible, either because of clients that can't be updated, or because if they remove it they get dozens of angry tweets ('they're force downgrading the model!!')
English
1
0
0
27
alice
alice@aliceisplaying·
did you guys know that as of claude code 2.1.118, `ultrathink` simply adds this to the prompt: <system-reminder>The user included the keyword "ultrathink", requesting deeper reasoning on this turn. Reason as thoroughly as the task warrants.</system-reminder> and *nothing else*?
alice tweet media
English
23
15
487
42.9K
Michael Käser
Michael Käser@michaelk_ch·
@aliceisplaying @morefishoil Probably just tech/product debt at this point? I think they added ultrathink before there even were reasoning models. Sounds like an agent thing to set it to high cause 'that's the highest', then they add xhigh and now it's suddenly a downgrade.
English
1
0
2
197
alice
alice@aliceisplaying·
@morefishoil not really, i was just curious because an earlier version of claude code a few days ago actually **lowered** effort to high from xhigh or max when typing ultrathink but they fixed that since.
English
2
0
5
2.5K
Michael Käser
Michael Käser@michaelk_ch·
@pontusab If you do this recursively, how many rounds are possible before the model gets confused? callMCPTool to callMCPTool to callMCPTool to call the actual tool?
English
0
0
0
243
Pontus Abrahamsson — oss/acc
Introducing mcp-typegen. One command turns any MCP server into a typed TS tree, one file per tool. npx mcp-typegen --url <your-mcp> -o ./servers Github ⬇️🧵
Pontus Abrahamsson — oss/acc tweet media
English
4
1
109
11K
Michael Käser
Michael Käser@michaelk_ch·
@DavidKPiano And even more important for that audience: Going fast now means going slow later. It's a mighty tool. Use it wisely.
English
0
0
2
165
David K 🎹
David K 🎹@DavidKPiano·
USERS care if code is messy. They care if the app is buggy. Or slow. Or if the UX is frustrating. Or if important features are missing or broken. These are downstream effects of messy, unmaintainable code.
Suhas@zuess05

Senior developers are currently having a massive existential crisis because Claude writes "messy code" A junior just used Claude to ship an entire feature in 2 hours. Meanwhile, the Senior is still spending 3 days reviewing code. When will y'all realize that literally nobody cares if the code is "messy"?

English
91
152
2.1K
114.9K
Brian Potter
Brian Potter@_brianpotter·
This reminds me of a Bill Hader story where he says that when an executive points out that something needs to be fixed in a show, they're almost always right, but their specific advice for fixing it is almost always wrong.
Orson Scott Card@orsonscottcard

You don't need advice from editors on rejected manuscripts.  My short story “Ender's Game” was rejected by Ben Bova at Analog back when that was the top market for a sci-fi story. Ben gave me feedback. He thought the title should be “Professional Soldier” and he said to “cut it in half.” But I knew he was wrong on both points and submitted it to Jim Baen at Galaxy. He sat on it for a year, and responded to my query with a rejection. There was some kind of explanation, but I don't remember what it was. I concluded at the time that Baen's comments showed that he had barely glanced at the story. So … I got feedback both times, but it was not helpful. I looked at Ben's rejection again. What was it about the story that made him think it should, let alone COULD, be cut in half? Apparently it FELT long. What made it feel long? Now, post-Harry Potter, I would call it the quidditch problem. I had too many battles in which the details became tedious. So I cut two battles entirely, merely reporting the outcomes, and shortened another. In retyping the whole manuscript (pre-word-processor, that was the only way to get a clean manuscript), I added new point-of-view material to the point that I had cut only one page in length. So much for “in half.” But I already knew that my manuscripts did not need cutting — if it wasn't needed, it wouldn't be there in the first place. Even the battles were still there, but instead of showing them, I merely told what happened (so much for the usually asinine advice “show don't tell”), which kept the pace going. Those changes made, I sent it to Ben again. I did not remind him of what he had advised me to do. I merely told him I liked my title, and said, “I have addressed your other concerns,” which was true. I figured he wouldn't remember what his exact words had been. My answer was a check. That revised story was the basis for my winning the Campbell Award for best new writer. Did Ben's feedback help? Yes — but his specific advice was not right, and I knew it. On my next two submissions, Ben hated my endings, and I revised as suggested. The fourth submission he rejected outright, and the fifth, and I thought, Am I a one-story writer? I went back to Ender's Game and tried to analyze why it worked. Then, deliberately imitating myself, I wrote “Mikal's Songbird.” Ben bought it, and it received favorable mentions. I was afraid then that I had consigned myself to writing stories about children in jeopardy. But in fact I was writing character stories rather than idea stories. And THAT was how I built a career, not by self-imitation, and not by following editorial suggestions. I did get wise counsel from David Hartwell on my novel Wyrms, but that was on a book that was already under contract, and it was story feedback, not style. I got wise counsel from Beth Meacham, too, on various books over the years — but again, only on books that were under contract. I also received appallingly stupid advice from the editor of my novel Saints, which temporarily destroyed the book's marketability; after that, I was allowed to go back to my original structure and save the book — now it's one of my best. Editors don't know more than you about your story. They especially don't know why they decide to accept or reject stories. YOU have to know what your story needs to be, and take only advice that you believe in. Your best counselor on a story nobody bought is TIME. Let some time pass and then reread the story. Don't even think about why it Didn't Work. Instead, think about what DOES work, and then write it again, a complete rewrite, keeping nothing from the previous draft. Find the right protagonist and begin at the beginning — the point where the protagonist first gets involved with the events of the story. Be inventive — the failed first draft no longer exists, so you're not bound by any of your earlier decisions. THAT is how you resurrect a good idea you did not succeed with on your first try.

English
33
403
9.7K
681.6K
Michael Käser
Michael Käser@michaelk_ch·
@RhysSullivan @dazhengzhang And it's not that they don't understand the problems when you point them out, but they are just unable to think in multiple levels at the same time on their own. Like an incredibly skilled jr programmer that never learns the next step.
English
0
0
1
66
Rhys
Rhys@RhysSullivan·
@dazhengzhang harness/skill/environment can't solve the underlying problem that they're extremely bad at overall architecture and long term thinking
English
5
1
66
7.8K
Rhys
Rhys@RhysSullivan·
from my experience, even the best models (Opus 4.6, 5.4 xhigh / 5.3 codex) cannot write good code today without an amount of work that is equivalent to just doing the work myself am excited for a world where they can, but in the current state i have very low trust in them
English
274
87
2.8K
322.3K
Michael Käser
Michael Käser@michaelk_ch·
@KongCanuck @huliwood @openclaw @relay Or just stick with us and let the connection issues be our problem :) It's a long road from 'nearly works' to 'works reliably', who wants to spend time on that...
English
0
0
2
95
Julián
Julián@huliwood·
More Local, More Cloud Google's Gemma 4 dropped yesterday. It's already on my Mac Mini, running @openclaw, health checks and expiring stale files while I sleep. Costs nothing. And somehow I'm burning more cloud tokens than ever. The local model handles the commodity layer. Then a cloud model picks up the brief and does the actual thinking. It ain't a workaround. It's the architecture. Local models will kill cloud AI – cheaper, faster, private. Death of the data center. I think it's exactly backwards. Before, I was paying frontier rates for file cleanup, like hiring a surgeon to take out the trash. As local models absorb that commodity work, cloud gets freed to do what it's good at: synthesizing across a hundred inputs and making the call that matters. The SOTA model doesn't get replaced. It gets promoted. @AnthropicAI is throttling @claudeai sessions right now because agentic workflows consume 100x the tokens of a conversation. People are already running local models. Cloud demand is still outstripping supply. Efficiency doesn't reduce demand. Quite the opposite. Jevons noticed this in coal in 1865: make steam engines more efficient and coal consumption goes up, not down. Cheaper inference doesn't mean less inference. It means inference in places that couldn't afford it before. I'm paying less for cloud since moving commodity work local, and using more of it than ever. What I save on commodity inference, I spend on harder problems. And training never moves local. Nobody's training frontier models on a Mac Mini. The clusters are getting larger, not smaller. The grid connections, the transformers, the copper... lead times measured in years, not months, regardless of where your inference lands. $IREN $CIFR I'm stress-testing my assumptions here, cause I have real money in the infra and compute layer. Maybe I'm wrong. But every time someone tells me local models are the death of the data center, demand goes up.
English
6
3
20
2.8K
akira
akira@realmcore_·
@thdxr What is this in reference to?
English
1
0
0
481
dax
dax@thdxr·
with every wave of tech the scammy part has the same message "see those winners? they're gonna be losers now and you're the one that's gonna be on top" saw it with crypto and now again with ai
English
36
36
695
27.2K