<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Daniel Ancuta</title><link>https://ancuta.org/</link><description>Recent content on Daniel Ancuta</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 Daniel Ancuta</copyright><lastBuildDate>Sun, 01 Feb 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://ancuta.org/index.xml" rel="self" type="application/rss+xml"/><item><title>AI Agents in Your CI/CD: Why GitHub Rulesets Matter Now More Than Ever</title><link>https://ancuta.org/posts/ai-agents-in-your-ci-cd-why-github-rulesets-matter/</link><pubDate>Sun, 01 Feb 2026 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/ai-agents-in-your-ci-cd-why-github-rulesets-matter/</guid><description>AI agents are getting scary good. Tools like clawbot can understand your codebase, write features, fix bugs, and commit changes - all without much human input.
But that doesn&amp;rsquo;t mean you should let them run wild.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/ai-agents-in-your-ci-cd-why-github-rulesets-matter/featured.jpg"/></item><item><title>Claude Compose Sandbox: Flexible Docker Environment for AI Agents</title><link>https://ancuta.org/posts/claude-compose-sandbox-flexible-docker-environment-for-ai-agents/</link><pubDate>Tue, 06 Jan 2026 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/claude-compose-sandbox-flexible-docker-environment-for-ai-agents/</guid><description>Running AI agents locally is great until you realize they have full access to your machine. One wrong command and you could lose important files.
Docker sandboxes solve this, but the official one lacks flexibility - no persistent workspaces, no multi-instance support, limited customization.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/claude-compose-sandbox-flexible-docker-environment-for-ai-agents/featured.png"/></item><item><title>Building a full CLI tool with spec-kit (spec-driven development) and Claude (AI)</title><link>https://ancuta.org/posts/building-cli-with-spec-kit-and-claude/</link><pubDate>Fri, 02 Jan 2026 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/building-cli-with-spec-kit-and-claude/</guid><description>Prompt engineering has become a fundamental skill for developers. There are different ways to approach it.
Some are more manual, some are way more automated with semi or fully autonomous agents.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/building-cli-with-spec-kit-and-claude/featured.png"/></item><item><title>From Bug Fixes to Full Features: Building React Applications with Claude Code</title><link>https://ancuta.org/posts/ai-building-react-frontend-with-claude-code/</link><pubDate>Sat, 29 Nov 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/ai-building-react-frontend-with-claude-code/</guid><description>So here&amp;rsquo;s the situation: our frontend team had this growing backlog of UI tweaks.
Buttons slightly off, wrong font sizes, missing translations, components that didn&amp;rsquo;t quite match what the designers put in Figma.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/ai-building-react-frontend-with-claude-code/featured.png"/></item><item><title>Refactoring Massive OpenAPI Specs with Claude Code</title><link>https://ancuta.org/posts/ai-claude-refactoring-massive-openapi-specs-with-claude-code/</link><pubDate>Mon, 17 Nov 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/ai-claude-refactoring-massive-openapi-specs-with-claude-code/</guid><description>I was recently asked to help improve OpenAPI specs for a project where the documentation had gotten completely out of hand. Thousands of lines of OpenAPI specs scrambled in a few files.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/ai-claude-refactoring-massive-openapi-specs-with-claude-code/featured.png"/></item><item><title>AI: Improve your prompt with AI</title><link>https://ancuta.org/posts/ai-improve-your-prompt/</link><pubDate>Fri, 24 Oct 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/ai-improve-your-prompt/</guid><description>Either you have prompt that was built based on some template or you have built it from scratch, sooner or later you will need to improve it.
So every time you use it produces better output for your recurring tasks.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/ai-improve-your-prompt/featured.png"/></item><item><title>Building Better Habits - One Square at a Time</title><link>https://ancuta.org/posts/building-better-habits-one-square-at-a-time/</link><pubDate>Thu, 24 Apr 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/building-better-habits-one-square-at-a-time/</guid><description>There are many theories on how to build habits - some more complicated than others.
Over the years, I’ve tried a few different methods. What’s worked best for me is breaking big goals into tiny steps.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/building-better-habits-one-square-at-a-time/featured.jpg"/></item><item><title>Serving static pages on AWS with Amplify</title><link>https://ancuta.org/posts/serving-static-pages-on-aws/</link><pubDate>Tue, 15 Apr 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/serving-static-pages-on-aws/</guid><description>After creating branding for your static website - layout, logo, typography, content, and so on - serving it should be easy, right?
But often, it&amp;rsquo;s overcomplicated. You think about a custom solution for the engine, look at WordPress, and realize it&amp;rsquo;s overkill for what you need.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/serving-static-pages-on-aws/featured.jpg"/></item><item><title>Book: Soft Skills by John Z. Sonmez</title><link>https://ancuta.org/posts/book-soft-skills-john-sonmez/</link><pubDate>Sat, 22 Mar 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/book-soft-skills-john-sonmez/</guid><description>As you might have noticed by the title, Soft Skills by John Z. Sonmez is not a typical book for developers.
But is it?
Even though this book doesn’t talk about technical aspects like the structure of your code,</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/book-soft-skills-john-sonmez/featured.jpg"/></item><item><title>Protect Sensitive Data in Logs with AWS CloudWatch Data Masking</title><link>https://ancuta.org/posts/protect-sensitive-data-in-logs-with-aws-cloudwatch-data-masking/</link><pubDate>Wed, 12 Mar 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/protect-sensitive-data-in-logs-with-aws-cloudwatch-data-masking/</guid><description>Logging is part of every application, at least they should, but often logs contain sensitive information.
PII (Personally Identifiable Information), PHI (Protected Health Information), and other confidential data often end up in logs - often unintentionally.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/protect-sensitive-data-in-logs-with-aws-cloudwatch-data-masking/featured.png"/></item><item><title>GitHub Actions: Security Hardening With OpenID Connect</title><link>https://ancuta.org/posts/github-actions-security-hardening-with-openid-connect/</link><pubDate>Thu, 06 Mar 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/github-actions-security-hardening-with-openid-connect/</guid><description>The easiest way to configure your CI/CD pipeline with AWS is to just create long-lived credentials, access and secret key, and store them in GitHub Actions.
While this method works, it has several security risks:</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/github-actions-security-hardening-with-openid-connect/featured.jpg"/></item><item><title>Secrets Management in AWS: Using Secrets Manager</title><link>https://ancuta.org/posts/secrets-management-in-aws-using-secrets-manager-for-your-microservices/</link><pubDate>Sat, 01 Mar 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/secrets-management-in-aws-using-secrets-manager-for-your-microservices/</guid><description>Sharing secrets across microservices creates security risks. Not only when one of the microservices is compromised, as then during rotation of single secret all of your microservices will be affected. Leading to potential downtimes.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/secrets-management-in-aws-using-secrets-manager-for-your-microservices/featured.jpg"/></item><item><title>GitHub Rulesets: Your Safeguard for Your Repositories</title><link>https://ancuta.org/posts/github-rulesets-your-safeguard-for-your-repositories/</link><pubDate>Thu, 27 Feb 2025 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/github-rulesets-your-safeguard-for-your-repositories/</guid><description>Regardless of whether you&amp;rsquo;re working on a product in a regulated industry like healthcare or finance, or building products that do not require such strict rules, maintaining control over your repositories is essential.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/github-rulesets-your-safeguard-for-your-repositories/featured.jpg"/></item><item><title>Update AWS CloudFront configuration using AWS CLI</title><link>https://ancuta.org/posts/update-aws-cloudfront-configuration-using-aws-cli/</link><pubDate>Tue, 18 Jun 2024 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/update-aws-cloudfront-configuration-using-aws-cli/</guid><description>Regardless of whether you just need to make a quick manual change or it&amp;rsquo;s part of your CI/CD process, AWS CLI can be very useful for both scenarios.
Let&amp;rsquo;s dig into updating AWS CloudFront with AWS CLI!</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/update-aws-cloudfront-configuration-using-aws-cli/featured.jpg"/></item><item><title>Streaming GitHub audit log to S3 with OpenID Connect - Troubleshooting</title><link>https://ancuta.org/posts/streaming-github-audit-log-to-s3-with-openid-connect-troubleshooting/</link><pubDate>Sun, 02 Jun 2024 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/streaming-github-audit-log-to-s3-with-openid-connect-troubleshooting/</guid><description>Streaming GitHub audit log to one centralized place is quite often used to maintain compliance or improve security within the organization, or both.
If you are reading this post, you are having trouble setting up this stream to your AWS S3.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/streaming-github-audit-log-to-s3-with-openid-connect-troubleshooting/featured.jpg"/></item><item><title>AWS Amplify Override Amplify-generated resources. On example with resolvers.</title><link>https://ancuta.org/posts/extending-amplify-on-example-modify-resolvers/</link><pubDate>Wed, 17 Jan 2024 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/extending-amplify-on-example-modify-resolvers/</guid><description>AWS Amplify is a great tool when you&amp;rsquo;re building web and mobile apps, and you want to integrate them easily with the backend.
In a few simple steps, you can have a working GraphQL endpoint, storage on the backend, authentication, and authorization through Cognito.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/extending-amplify-on-example-modify-resolvers/featured.jpg"/></item><item><title>Protocol Buffers RPC calls through WebSockets on AWS Lambda with API Gateway</title><link>https://ancuta.org/posts/protocol-buffers-through-websockets-on-aws-lambda/</link><pubDate>Thu, 04 Jan 2024 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/protocol-buffers-through-websockets-on-aws-lambda/</guid><description>We might argue about what is the important aspect of good communication.
But what are the few basic principles of communication where, at least, two parties will understand each other? Use of the same Glossary, happens in Real Time and uses Same language.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/protocol-buffers-through-websockets-on-aws-lambda/featured.png"/></item><item><title>Docs Like Code by Anne Gentle</title><link>https://ancuta.org/posts/book-docs-like-code-by-anne-gentle/</link><pubDate>Tue, 01 Aug 2023 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/book-docs-like-code-by-anne-gentle/</guid><description>Many people do not like to write documentation, or if they do, it&amp;rsquo;s often detached from the source code, leading to it quickly becoming outdated.
This is a common problem I&amp;rsquo;ve noticed in the majority of closed-source codebases I&amp;rsquo;ve had the chance to work with.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/book-docs-like-code-by-anne-gentle/featured.jpg"/></item><item><title>Error tracking and incident response on production with Sentry + Squadcast + Linear + Slack</title><link>https://ancuta.org/posts/error-tracking-and-incident-response-on-production/</link><pubDate>Sat, 01 Jul 2023 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/error-tracking-and-incident-response-on-production/</guid><description>There are multiple strategies to mitigate the number of bugs and problems with the app in production. Some teams focus on unit tests, functional tests, integration tests, manual tests, multiple environments to run those, and build the artifact of the app.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/error-tracking-and-incident-response-on-production/featured.jpg"/></item><item><title>Strategies to Migrate Users to AWS Cognito Pool</title><link>https://ancuta.org/posts/migrate-users-to-aws-cognito-pool/</link><pubDate>Thu, 01 Jun 2023 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/migrate-users-to-aws-cognito-pool/</guid><description>If you work in the AWS ecosystem, sooner or later, you will deal with AWS Cognito.
AWS Cognito is meant to help you with customer identity and access management.
So you&amp;rsquo;ve decided to use AWS Cognito for the first time, or you&amp;rsquo;ve used it already.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/migrate-users-to-aws-cognito-pool/featured.jpg"/></item><item><title>Debugging GitHub Actions Remotely</title><link>https://ancuta.org/posts/debugging-github-actions-remotely/</link><pubDate>Mon, 01 May 2023 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/debugging-github-actions-remotely/</guid><description>If you use GitHub to store your repositories, you may also be utilizing GitHub Actions. I&amp;rsquo;ve been using it for several years across multiple projects. There have been a few instances where I had to debug a failing workflow.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/debugging-github-actions-remotely/featured.png"/></item><item><title>PostgREST - Write Your REST Server in SQL</title><link>https://ancuta.org/posts/postgrest/</link><pubDate>Tue, 11 Apr 2023 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/postgrest/</guid><description>What is PostgREST? # As the authors themselves say:
PostgREST is a standalone web server that transforms your PostgreSQL database directly into a RESTful API. The structural constraints and permissions in the database determine the API endpoints and operations.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/postgrest/featured.webp"/></item><item><title>Use of HTTP proxy (Charles Proxy) to debug mobile/desktop apps.</title><link>https://ancuta.org/posts/use-of-charles-http-proxy-to-debug-mobile-apps/</link><pubDate>Wed, 01 Mar 2023 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/use-of-charles-http-proxy-to-debug-mobile-apps/</guid><description>When you&amp;rsquo;re building an API that is used by either a mobile or desktop app, you will eventually encounter a situation where you need to confirm how the app uses your API.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/use-of-charles-http-proxy-to-debug-mobile-apps/featured.png"/></item><item><title>First post</title><link>https://ancuta.org/posts/first-post/</link><pubDate>Sun, 01 Jan 2023 00:00:00 +0000</pubDate><guid>https://ancuta.org/posts/first-post/</guid><description>Every, well respected, tech blog has to have &amp;ldquo;First post&amp;rdquo;. Place where you can check if plugin for syntax is working as expected, peaking of which: print(&amp;quot;Hello World&amp;quot;) It does work, at least on my machine.</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ancuta.org/posts/first-post/featured.jpg"/></item><item><title>Get in touch</title><link>https://ancuta.org/contact/</link><pubDate>Sun, 01 Jan 2012 00:00:00 +0000</pubDate><guid>https://ancuta.org/contact/</guid><description>The best way is to email me on daniel@ancuta.org.</description></item><item><title>CV</title><link>https://ancuta.org/cv/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://ancuta.org/cv/</guid><description>Download my CV in PDF</description></item></channel></rss>