Software Engineering Blog, page 13
Notes on software engineering from the Atyantik practice.
Latest posts
Tirth Bodawala
A web accessibility introduction: WCAG 2.2, the laws that cite it, how to make a website accessible, and a checklist
A web accessibility introduction: what WCAG 2.2 asks at Level AA, which laws cite it, how to make a website accessible, and a short checklist.
Read the postIshan Chavda
Headless CMS guide: what it is, how it works and when to skip it
A headless CMS guide for 2026: what headless means, how the content API works, what five CMSs charge a team of eight, and when to stay traditional.
Read the postTirth Bodawala
Monolith vs microservices: the pros and cons, and why a modular monolith comes first
Monolith vs microservices pros and cons for CTOs: the modular monolith as the default, four inputs that move a part out, and one product priced both ways.
Read the postIshan Chavda
CMS types explained: the six kinds of CMS and how to pick yours
CMS types compared: traditional, headless, decoupled, hybrid, DXP and e-commerce, with W3Techs usage data and a two-question test to pick yours.
Read the postDharmesh Patel
PHP features for developers in 2026: what 8.4, 8.5 and 8.6 add, and which version brought the rest
PHP features for developers in 2026: what 8.4 and 8.5 add, when 8.6 ships, the PHP floor of each framework, and which version introduced each older feature.
Read the postTirth Bodawala
Supabase Astro blog on Cloudflare: one guide from database to deploy
Build a Supabase Astro blog on Cloudflare Workers: tables and grants, row level security, a react-admin panel, Astro pages and a wrangler deploy.
Read the postTirth Bodawala
Nodejs HTTP2 server setup in Node.js: createSecureServer, allowHTTP1, ALPN and curl tests
Set up a nodejs http2 server with createSecureServer and allowHTTP1, learn what ALPN negotiates, and prove h2 with curl, from the Node.js v26 docs.
Read the postTirth Bodawala
VAPID keys and Web Push from scratch: the complete Web Crypto implementation
Generate VAPID keys and send Web Push from scratch on Web Crypto: sign the ES256 JWT, derive the aes128gcm key, frame the body, route every status.
Read the postDipen Panchal
How to update payment intent amounts in Stripe when the cart changes after the card is entered
Update payment intent amounts in Stripe at each status: update before confirmation, capture less, increment or start a new intent, with runnable code.
Read the postAjay Patel
Laravel Folio in 2026: when it was released, how file-based routing works, and when to skip it
Laravel Folio shipped in July 2023 and supports Laravel 10.19 to 13. See its release history, how its file-based routing works, and when to use routes.
Read the postAjay Patel
Laravel toRawSql(): see the real SQL behind a query, then log every query a request runs
Laravel toRawSql() prints a query with its bindings filled in. See how it differs from toSql(), what ddRawSql() does, and how to log every query.
Read the postMitesh Rathod
Livewire vs Splade vs Inertia.js in 2026: what a Laravel team should pick now that Splade is archived
Livewire vs Splade vs Inertia.js for Laravel in 2026: Splade is archived and stops at Laravel 12, so here is how to pick Livewire 4 or Inertia.js 3.
Read the post










