Razu

314 posts

Razu banner
Razu

Razu

@Razumasu

IT lead at Royal Arena, Denmark's biggest concert arena. Posts on code, infra, AI tooling and tech leadership. Dad, 43, writes horror fiction, drinks beer.

Denmark เข้าร่วม Ekim 2025
190 กำลังติดตาม25 ผู้ติดตาม
Razu
Razu@Razumasu·
Weekend. Going to watch Disclosure Day tomorrow. I see the reviews. I still have a sneaky suspicion about how this movie will end and how it will disappoint me.
English
0
0
0
16
Razu
Razu@Razumasu·
@GORMTHEOLD25 We are entering an age of personal software. Why buy a license to MS Word when all you use it for is writing text, setting font and headers, and then printing…vibe build you own. Own it forever.
English
1
0
1
31
GORM THE OLD
GORM THE OLD@GORMTHEOLD25·
Vibe coding is incredible for making apps which help you specifically. You don't always need to be making something to turn into some product.
English
4
1
11
1.6K
Razu
Razu@Razumasu·
@CJ900X The family house offsite copy is the part most people skip until they actually need it.
English
0
0
1
235
Razu
Razu@Razumasu·
@yolenodev LXC access always feels like the one thing that should be simple and never quite is. I ended up just SSHing in most of the time.
English
1
0
0
10
*brownei🚀
*brownei🚀@yolenodev·
wanted to level up my homelab with metrics and backups sadly my setup was too rigid to iterate on without tearing it all down. plus, I was seriously struggling with LXC container access for my file storage. ⁠pct enter⁠ works, but it felt messy…..
English
2
0
0
17
Razu
Razu@Razumasu·
@j1mmyhackett @AnthropicAI This is why I treat every agent update as a breaking change until proven otherwise. Undocumented flag renames are the fastest way to waste an afternoon.
English
1
0
1
8
jimmy hackett
jimmy hackett@j1mmyhackett·
claude code silently broke my agent last week. not a crash. not an error. just... wrong output. turns out @AnthropicAI renamed the `workflow` flag to `ultracode` in v2.1.160 with zero doc updates. if you're running claude code in prod, check your flags now.
jimmy hackett tweet media
English
2
0
0
68
Razu
Razu@Razumasu·
Enig, og stop-reglen er den vigtigste. Men den fejler, hvis ingen ejer hvad der sker bagefter. Den reelle gevinst er ikke at agenten stopper ved tvivl, men at der står et menneske klar til at tage beslutningen i stedet for at lade opgaven hænge. Ellers bliver "stop ved tvivl" bare en pæn måde at sige "intet sker".
Dansk
0
0
0
0
Peter Munkholm
Peter Munkholm@PeterMunkholm·
Når en AI-agent fejler i drift, er problemet sjældent modellen. Det er manglende kontrakt. Min korte kontrakt: - KPI den ejer - system den må ændre - bevis den skal gemme - stop-regel ved tvivl Uden bevis og stop-regel: rådgiver. Med begge: digital medarbejder.
Dansk
1
0
0
14
Razu
Razu@Razumasu·
Yesterday I watched #MastersOfTheUniverse and I really enjoyed it. It was fun and showed respect to the source material. Also, Fisto is in the movie. I respect that.
English
0
0
0
33
Razu
Razu@Razumasu·
@upsundotcom Genuinely useful when you don't own the edge. Only caveat: rejecting an abusive request still costs you an app worker to say no, so it's a quality-of-service tool, not a shield against someone actually trying to flood you. For that you still want something in front.
English
0
0
0
2
Razu
Razu@Razumasu·
The list is right; the hard part is political. On day one someone's always asking why you're "configuring linters instead of building features," and you don't get to point at day one hundred until you're already living in it. Doing this quietly before anyone notices is half the skill.
English
0
0
0
79
Milan Jovanović
Milan Jovanović@mjovanovictech·
Starting a new .NET project? Before writing business logic, I like to set up six things first. They are small decisions at the start. But they prevent a lot of pain once the solution grows. 1. Add an `.editorconfig` Your team should not waste time debating formatting and naming on every pull request. 2. Centralize build settings Target framework, nullable checks, warnings, and shared build rules should live in one place. 3. Centralize NuGet package versions This makes updates easier and helps you avoid different projects using different versions of the same package. 4. Add static analysis Catch common issues during the build, not weeks later during a bug hunt. 5. Make local setup repeatable Whether you use Docker Compose or .NET Aspire, everyone on the team should be able to run the same app setup locally. 6. Set up CI early Every change should be built and tested before it reaches your main branch. None of this feels urgent on day one. It becomes very important on day one hundred. Here is the setup I use when starting a new .NET project, with each step explained: milanjovanovic.tech/blog/6-steps-f…
Milan Jovanović tweet media
English
8
31
219
9.2K
Razu
Razu@Razumasu·
@elliot1one The real payoff of the DTO boundary isn't tidiness, it's that you can rename a column or restructure an aggregate without breaking every consumer downstream. The mapping library is a convenience; the contract separation is the thing that saves you.
English
0
0
0
14
Elliot One
Elliot One@elliot1one·
Most APIs should not expose domain entities directly. The moment internal models leak into public contracts, versioning, security, and maintainability become harder to control. That is why object mapping matters in modern ASP .NET Core systems. One library that has gained strong adoption in the .NET ecosystem is Mapster. Mapster helps translate domain models into lightweight API contracts while reducing repetitive mapping code and keeping runtime overhead low. A common example is mapping an Order aggregate into an OrderDto: • Hiding internal identifiers • Flattening nested objects • Simplifying date handling • Reshaping responses for API consumers What makes Mapster particularly interesting is its balance between performance and explicitness. Instead of relying heavily on runtime reflection, mappings can be centrally configured using TypeAdapterConfig, scanned during startup, and executed through IMapper or the Adapt() extension method. This creates a clean separation between: • Domain models • Application logic • Public contracts In larger systems, that separation becomes operationally important. A few reasons teams adopt Mapster: • Less repetitive boilerplate • Consistent transformations across endpoints • Lower allocation and runtime overhead • Clear mapping configuration instead of scattered conversion logic It also works naturally with collections, Minimal APIs, and layered architectures commonly used in modern ASP .NET Core applications. That said, mapping libraries are still abstractions. Once transformations become deeply conditional or business-driven, explicit code is often easier to reason about than complex mapping profiles. Mapster works best when used for simple to moderately complex object transformations where consistency, maintainability, and performance all matter. P.S. Good architecture is not eliminating code but is placing complexity in the right place. — ♻️ Share this if it helped ➕ Follow me [Elliot One] 🔔 Enable Notifications
Elliot One tweet media
English
1
0
0
39
Razu
Razu@Razumasu·
@digital6tech @YouTube The fix is rarely a smarter agent, it's a smaller blast radius. Read-only by default, an explicit approval gate before anything mutating, separate creds for the destructive stuff. If "drop the table" is even reachable, eventually something reaches it.
English
0
0
0
7
Razu
Razu@Razumasu·
@herbertisherb Sync is half of it. The part that bites me is context that's out of date rather than out of sync.
English
0
0
0
1
Herbert Wang
Herbert Wang@herbertisherb·
One lesson from running AI workflows every day: The model is rarely the bottleneck. Keeping context synchronized across Claude Code, Codex, Cursor, OpenClaw, and other runtimes is much harder than most people expect. A good write-up from our founder on why we built puppyone.
Guanqun@realGuantum

x.com/i/article/2062…

English
3
0
0
88
Razu
Razu@Razumasu·
@Bha74142Shivani The sneaky version of this is the rule you added three months ago that's now subtly wrong. The agent still half-follows it, so you get confident output built on a stale instruction. Pruning that file is real work, not housekeeping you can skip.
English
0
0
0
7
Shivani Bhatnagar
Shivani Bhatnagar@Bha74142Shivani·
Most AI coding agents don't fail because they're weak. They fail because the context is messy. A well-structured CLAUDE.md acts like an operating manual for your AI teammate: • Global rules → coding standards across projects • Project rules → architecture, commands, conventions • Folder rules → module-specific instructions and overrides A simple framework to follow: WHAT → Project context, stack, dependencies WHY → Principles, patterns, decisions HOW → Build, test, lint, deploy workflows The biggest mistake? Writing vague instructions like: ❌ "Write clean code" Instead, be specific: ✅ Use camelCase for variables ✅ Use PascalCase for components ✅ Maintain 80%+ test coverage AI performs best when ambiguity is removed. Treat your CLAUDE.md less like documentation and more like onboarding for a new engineer joining your team. Clear context = Better outputs. Better outputs = Less rework. Less rework = Faster shipping. #AI #ClaudeCode #AIAgents #DeveloperTools #SoftwareEngineering #PromptEngineering #Coding #BuildInPublic #ArtificialIntelligence #DevOps #Programming
Shivani Bhatnagar tweet media
English
18
9
72
1.3K
Razu
Razu@Razumasu·
@vitobotta @leaving_tech "I know which problems I'm signing up for" is the whole thing. New stacks aren't bad because they're new, they're expensive because you discover their failure modes in prod instead of reading about them in a 10-year-old Stack Overflow thread.
English
0
0
1
8
Vito Botta
Vito Botta@vitobotta·
@leaving_tech Rails and Postgres is still my default answer. Boring, fast to ship, and I know which problems I’m signing up for.
English
2
0
1
21
Leaving Tech
Leaving Tech@leaving_tech·
What's you preferred framework to build web applications? I'll start: Ruby on Rails + PostgreSQL.
English
3
0
7
213
Razu
Razu@Razumasu·
@Mosidrum The async update only works if someone actually reads it and acts. The version I've seen fail is where everyone writes their six answers into the void and the blockers still sit there because nobody owns clearing them.
English
1
0
0
10
👨🏽‍💻mosiron
👨🏽‍💻mosiron@Mosidrum·
We swapped weekly 1:1s for a 6-question async update plus a 20-minute weekly focus sync. Pilot with 12 engineers: preparation time down 60%, more focused live agendas, and fewer surprise blockers. Try it for one sprint and measure deep work hours.
English
1
0
0
24
Razu
Razu@Razumasu·
Computerworld Denmark just did an article about me and the work I am currently doing - sorry but it’s in Danish and behind a paywall 🤷‍♂️ computerworld.dk/art/295724/ras…
English
0
0
0
11
Razu
Razu@Razumasu·
Enig i diagnosen. Men jeg er mest bange for det modsatte problem: at AI bliver løftet til "strategisk samfundsudfordring" og så bliver til endnu et udvalg og en handlingsplan, mens ingen reelt ejer driften. Vi var gode til digitalisering fordi nogen faktisk byggede e-Boks, ikke fordi vi holdt taler og lavede Power Points om det.
Dansk
1
0
1
21
Lars Fløe Nielsen
Lars Fløe Nielsen@ln_sitecore·
Jeg har kigget på det nye ministerhold. Der er én ting, jeg savner. Danmark står muligvis foran den største teknologiske transformation siden internettets gennembrud. Alligevel er det svært at få øje på en egentlig AI- og digitaliseringstung profil i regeringen. Det er ikke en kritik af Christina Egelund eller andre ministre personligt. Problemet er større end det. I mange år har digitalisering handlet om NemID, borger.dk, e-Boks, digitale blanketter og effektivisering af den offentlige sektor. Men de næste 5-10 år kommer ikke til at handle om digitalisering. De kommer til at handle om AI. Om agentiske systemer. Om software, der kan udføre vidensarbejde. Om automatisering af administrative processer. Om produktivitetsløft, der potentielt kan måle sig med industrialiseringen. I den verden bliver digitalisering ikke længere et IT-spørgsmål. Det bliver et spørgsmål om: • Konkurrenceevne • BNP-vækst • Arbejdsmarked • Uddannelse • Forsvar • Offentlig sektor • National sikkerhed Danmark har historisk været blandt verdens bedste til digitalisering. Spørgsmålet er, om vi også bliver blandt verdens bedste til AI. Hvis ikke, risikerer vi at blive et land, der er fantastisk til at digitalisere gårsdagens processer, mens andre lande genopfinder morgendagens. Derfor er det på tide, at politikerne stopper med at behandle AI som et underpunkt i digitaliseringsdagsordenen. AI er ikke endnu et teknologiområde. Det er en strategisk samfundsudfordring, der kommer til at påvirke alt fra vækst og velfærd til sikkerhed og geopolitik. Hvis regeringen mener alvorligt, at Danmark skal være blandt verdens mest konkurrencedygtige lande, hvor er så den politiske ambition, ledelse og organisering, der matcher den udfordring? For hvis ikke vi tager den diskussion nu, hvornår gør vi så? Når andre lande har sat sig på værdiskabelsen, talentet og teknologien – og vi står tilbage som verdensmestre i at optimere et system, der allerede er blevet overhalet?
Lars Fløe Nielsen tweet media
Dansk
23
5
52
5K
Razu
Razu@Razumasu·
@walkingriver @ollama The thing it's actually good for at that size is the stuff you don't want leaving the network. Point it at your own notes or config files for a private search/summarise, not as a general chatbot. Small models are fine when the context is yours.
English
0
0
1
13
Michael Callaghan
Michael Callaghan@walkingriver·
I also installed @ollama on my TrueNAS Server, plus a very small model which fits into 4GB. The box itself is an 8th gen i7 w/16GB and 8TB of storage. I now have a tiny self-hosted "Chat GPT" I can hit internally and it's reasonably quick. Not sure what to do with it yet, though.
English
2
0
0
237
Razu
Razu@Razumasu·
@BenAtTheLab The restore step is the one everyone skips. I've had backups that "completed" fine for months and only failed on the actual restore because of a permissions thing nobody checked.
English
1
0
1
6
ben tzfanya
ben tzfanya@BenAtTheLab·
Backups are not a plan until restore works. 1. Snapshot before risky changes. 2. Backup to storage that is not the same disk. 3. Restore into a test VM or container. 4. Write down the exact rollback command. A backup you never tested is just optimism. #homelab #Proxmox
English
1
0
1
20
Razu
Razu@Razumasu·
@monkscript Boring stacks also win on the day someone leaves the team. The new person can actually read Postgres and Rails. Nobody can onboard onto your clever bespoke abstraction at 2am.
English
0
0
0
17