# Kuray Karaaslan — Full Content Index > Live aggregated content from kuray.dev for LLM crawlers. Summaries only; follow URLs for full text. ## Contact - Website: https://kuray.dev - GitHub: https://github.com/kuraykaraaslan - LinkedIn: https://linkedin.com/in/kuraykaraaslan ## License All blog posts and project descriptions are © Kuray Karaaslan. You may summarize or cite with attribution. Do not reproduce full text without permission. ## Citation When referencing content from this site, please cite: Kuray Karaaslan, kuray.dev ## About Me / Expertise As a software architect and product engineer based in Turkey, I specialize in designing and building production-grade SaaS, integration, and real-time platforms. I am an expert BIM developer, focusing on Building Information Modeling automation, and an expert IoT developer, working with real-time telemetry systems. Türkiye merkezli bir yazılım mimarı ve ürün mühendisi olarak, üretim düzeyinde SaaS, entegrasyon ve gerçek zamanlı platformlar tasarlama ve oluşturma konusunda uzmanım. Uzman bir BIM geliştiricisi (Yapı Bilgi Modellemesi otomasyonu) ve uzman bir IoT geliştiricisi (gerçek zamanlı telemetri sistemleri) olarak çalışmaktayım. ## Projects ### [Zeus Expo Kit](https://kuray.dev/projects/expo-react-native-boilerplate) ### [KUIejs](https://kuray.dev/projects/kuiejs) ### [KUIreact](https://kuray.dev/projects/kuireact) ### [OpenVPN Control Plane](https://kuray.dev/projects/openvpn-control-plane) ### [Geospatial Urban Analytics Platform](https://kuray.dev/projects/geospatial-urban-analytics-platform) ### [Block-Based Content Platform](https://kuray.dev/projects/block-based-content-platform) ### [Express Boilerplate](https://kuray.dev/projects/express-boilerplate) ### [Next Boilerplate](https://kuray.dev/projects/next-boilerplate) ### [Multi-Tenant IoT Platform](https://kuray.dev/projects/multi-tenant-iot-platform) ### [Event Ticketing Platform](https://kuray.dev/projects/event-ticketing-platform) ### [KUIviewer](https://kuray.dev/projects/kuiviewer) ### [Tepegoz Browser](https://kuray.dev/projects/tepegoz-browser) ## Blog Posts ### [The venue editor as a draggable canvas inside the admin panel](https://kuray.dev/blog/mobile-development/event-ticketing-admin-seat-planner-as-canvas-0924) _Mobile Development · 2024-09-22 · by Kuray Karaaslan_ Why a multi-venue ticketing platform built its venue editor as a draggable canvas backed by Prisma rows, and the resize bug that shaped the integrity-scan banner. ### [Securing API Keys: Lessons from the Anadolu Sigorta and HGS Breaches](https://kuray.dev/blog/cybersecurity-quality-assurance/securing-api-keys-lessons-from-the-anadolu-sigorta-and-hgs-breaches) _Cybersecurity & Quality Assurance · 2024-12-11 · by Kuray Karaaslan_ An analysis of the recent security breaches involving Anadolu Sigorta and HGS applications, emphasizing the critical importance of API key security and outlining best practices to prevent unauthorized access. ### [Should JavaScript Be Free? The Trademark Debate Shaping Its Future](https://kuray.dev/blog/open-source/should-javascript-be-free-the-trademark-debate-shaping-its-future-202501) _Open Source · 2025-01-17 · by Kuray Karaaslan_ JavaScript, the programming language that revolutionized web development in 1995, is now a cornerstone of the internet. It powers dynamic user interfaces, enabling millions of developers to create the interactive web experiences we enjoy today. Yet, a significant legal question has emerged: Should the term "JavaScript" remain a trademark, or has it become a generic term that belongs to the public domain? ### [From Concrete to Code: My Journey into Software Development](https://kuray.dev/blog/entrepreneurship-digital-marketing/from-concrete-to-code-my-journey-into-software-development) _Entrepreneurship & Digital Marketing · 2025-03-15 · by Kuray Karaaslan_ Discover my journey from civil engineering to software development, the challenges I faced, and how I built a successful career in tech. Learn about my transition, discipline, and continuous learning. ### [Microsoft Entra ID Vulnerability: How a Single Flaw Could Have Exposed Every Azure Tenant](https://kuray.dev/blog/cybersecurity-quality-assurance/microsoft-entra-id-vulnerability-how-a-single-flaw-could-have-exposed-every-azure-tenant-092025) _Cybersecurity & Quality Assurance · 2025-09-05 · by Kuray Karaaslan_ A critical Microsoft Entra ID flaw allowed cross-tenant admin impersonation across all Azure tenants—learn how it worked and what to do now. ### [Uploading a geojson is not a file write — it is a five-step ingest](https://kuray.dev/blog/backend-development/geojson-upload-pipeline-0225) _Backend Development · 2025-02-19 · by Kuray Karaaslan_ Treat the geojson upload route as a five-step pipeline: envelope, structure, CRS, reprojection, layer config. Each stage owns one failure mode. ### [The Architecture of Digital Stalking](https://kuray.dev/blog/politics-power-systems/the-architecture-of-digital-stalking-032026) _Politics, Power & Systems · 2026-03-02 · by Kuray Karaaslan_ How abusers weaponize location tracking apps, the reality of Bluetooth mesh networks, and why current tech safeguards fail to stop coercive control ### [Bitcoin: How we all funded Epstein](https://kuray.dev/blog/politics-power-systems/bitcoin-how-we-all-funded-epstein-022026) _Politics, Power & Systems · 2026-02-02 · by Kuray Karaaslan_ Exploring the messy reality of how offshore dark money and institutional failure allowed Jeffrey Epstein to capitalize early crypto and retail fintech. ### [DeliveryBreach: Lessons and Insights](https://kuray.dev/blog/cybersecurity-quality-assurance/deliverybreach-lessons-and-insights) _Cybersecurity & Quality Assurance · 2025-01-01 · by Kuray Karaaslan_ Recently, a leading online platform has been at the center of a major data breach scandal. According to reports, hackers demanded 200,000 euros worth of cryptocurrency following the breach, and it is alleged that the payment was made. ### [Why Chasing Certificates Won’t Make You a Developer (And What Will)](https://kuray.dev/blog/software-fundamentals/why-chasing-certificates-wont-make-you-a-developer-and-what-will) _Software Fundamentals · 2025-05-11 · by Kuray Karaaslan_ Certificates don’t make you a developer—projects do. Learn how to build real skills, ditch tutorial hell, and become job-ready without chasing badges. ### [The Tech Debt of the Sinemia Collapse](https://kuray.dev/blog/entrepreneurship-digital-marketing/the-backend-collapse-of-sinemia-032026) _Entrepreneurship & Digital Marketing · 2026-03-11 · by Kuray Karaaslan_ An architectural breakdown of why Sinemia failed. Negative unit economics, UI friction, and the fatal B2C subscription model in theatrical exhibition. ### [Building Scalable Web Applications with the Latest Express.js Boilerplate](https://kuray.dev/blog/web-development/building-scalable-web-applications-with-the-latest-expressjs-boilerplate) _Web Development · 2025-01-01 · by Kuray Karaaslan_ Learn how the latest version of the Express.js Boilerplate empowers developers to build scalable web applications with ease. Discover features like Express 5 support, DTOs, improved documentation, and more. ### [Merging Two Sinking Ships: The Paramount-WBD Autopsy](https://kuray.dev/blog/finance-personal-investing/merging-two-sinking-ships-the-paramount-wbd-autopsy-032026) _Finance & Personal Investing · 2026-03-01 · by Kuray Karaaslan_ An uncompromising analysis of the Paramount-Warner Bros. Discovery merger, examining the unmanageable technical debt and the parallels to the Bimeks retail collapse. ### [OpenAI Sora: Redefining Video Creation with AI](https://kuray.dev/blog/data-science-ai/openai-sora-redefining-video-creation-with-ai) _Data Science & AI · 2024-12-14 · by Kuray Karaaslan_ Explore OpenAI's Sora, an AI-driven tool for generating high-quality videos from text prompts, offering creative possibilities for marketers, educators, and artists while addressing ethical considerations. ### [Exploring Opera Neon's Features and Status](https://kuray.dev/blog/data-science-ai/exploring-opera-neons-features-and-status-032026) _Data Science & AI · 2026-02-28 · by Kuray Karaaslan_ Opera Neon review: A cynical look at the $20 agentic browser that tries to automate the web but often fails at basic tasks. Is it tech's future or a buggy mess? ### [What is SNMP and Why I hate SNMP? Its Role and Limitations in Network Management](https://kuray.dev/blog/internet-of-things-iot/what-is-snmp-and-why-i-hate-snmp-its-role-and-limitations-in-network-management) _Internet of Things (IoT) · 2024-12-15 · by Kuray Karaaslan_ Explore the fundamentals of Simple Network Management Protocol (SNMP), its applications in network monitoring, and the challenges that may lead to dissatisfaction among network administrators. ### [MapLibre, Mapbox-Draw, Google Maps and Azure Maps in one app: the boundary we drew](https://kuray.dev/blog/web-development/map-engine-boundaries-0225) _Web Development · 2025-02-04 · by Kuray Karaaslan_ Four map engines in one Next.js app: which one renders, which draws, which owns 3D, which is held for geocoding, and the seam that keeps it sane. ### [Domain-Driven: the part of the project the README leads with](https://kuray.dev/blog/backend-development/proof-and-case-studies-readme-domain-driven-062026) _Backend Development · 2026-06-07 · by Kuray Karaaslan_ How a domain-driven folder structure organises a TypeScript/Express API into 40+ bounded-context modules — each owning its service, DTO, entities, setting keys, and tests. ### [Auto-detecting CRS from geojson bounds: WGS84, Web Mercator, or a local UTM zone](https://kuray.dev/blog/backend-development/crs-autodetect-from-bounds-0325) _Backend Development · 2025-03-07 · by Kuray Karaaslan_ A four-step bounds-to-CRS heuristic for geojson uploads in a Next.js viewer: detect WGS84, Web Mercator, or a local UTM zone with proj4. ### [Zustand as the bridge between Three.js and MapLibre: one store, two render trees](https://kuray.dev/blog/web-development/zustand-three-maplibre-bridge-0625) _Web Development · 2025-06-13 · by Kuray Karaaslan_ How a flat Zustand store holding globalScene, globalCamera, globalMap, and a per-frame viewerCameraMatrix bridges Three.js and MapLibre in one Next.js viewer. ### [Artemis 2: A Tech-Mess Space Odyssey](https://kuray.dev/blog/thoughts-perspectives/artemis-2-a-tech-mess-space-odyssey-042026) _Thoughts & Perspectives · 2026-04-07 · by Kuray Karaaslan_ Forget polished narratives; this is about Artemis 2's guts: system architecture, budget realities, duct tape solutions, and physics. No fluff, just the messy truth. ### [Dance It? No, JavaScript It! Meet Lynx, TikTok's Surprising New Framework](https://kuray.dev/blog/mobile-development/dance-it-no-javascript-it-meet-lynx-tiktoks-surprising-new-framework) _Mobile Development · 2025-03-09 · by Kuray Karaaslan_ Discover ByteDance's surprising leap from viral dances into app development with Lynx, their powerful new JavaScript framework. Learn how it rivals React Native and Flutter with native-level performance and web-friendly developer experience. ### [The Cloud is Dead: Operation Epic Fury](https://kuray.dev/blog/politics-power-systems/the-cloud-is-dead-operation-epic-fury-032026) _Politics, Power & Systems · 2026-03-03 · by Kuray Karaaslan_ The March 2026 tech collapse proves the cloud isn't ethereal. Kinetic strikes on AWS and the Claude AI outage mark the brutal start of the Physicality Era. ### [Manifest, T-Pop, and the Politics of Cultural Control](https://kuray.dev/blog/politics-power-systems/manifest-t-pop-and-the-politics-of-cultural-control-082025) _Politics, Power & Systems · 2025-08-23 · by Kuray Karaaslan_ A raw look at the Manifest group's 2025 crackdown, the politicization of T-Pop, and why the secular Republic won't bow to the bigoted 'morality' lawsuits. ### [No Exit: The Architecture of Turkey’s Digital Suffocation](https://kuray.dev/blog/politics-power-systems/no-exit-the-architecture-of-turkeys-digital-suffocation-022026) _Politics, Power & Systems · 2026-02-01 · by Kuray Karaaslan_ Turkey's 2026 Steam/Epic regulation isn't about tax or safety—it's a "compliance trap" designed to isolate gamers and enforce the "Cyber Homeland" doctrine. ### [proj4 in a web app: the coordinate-system tax you only notice when a layer drifts 200m](https://kuray.dev/blog/web-development/proj4-coordinate-system-tax-0325) _Web Development · 2025-03-22 · by Kuray Karaaslan_ A Next.js + MapLibre layer drifted 200m east because a GeoJSON lied about its CRS. How proj4, EPSG codes, and one detector caught it. ### [Turf.js on the server, in the browser, or in a worker: three places one library lives](https://kuray.dev/blog/web-development/turf-server-browser-worker-0425) _Web Development · 2025-04-11 · by Kuray Karaaslan_ When to run Turf.js on the server, in the browser, or in a Web Worker — concrete trade-offs from a Next.js 15 viewer using @turf/turf 7. ### [May the 4th Be With You – A Developer’s Tale of Force, Git, and Galactic Deployments](https://kuray.dev/blog/lifestyle-culture/may-the-4th-be-with-you-a-developers-tale-of-force-git-and-galactic-deployments) _Lifestyle & Culture · 2025-05-04 · by Kuray Karaaslan_ Celebrate Star Wars Day as a developer with a fun and insightful blog post about the infamous git push --force. Discover how Git mirrors the eternal battle between Jedi and Sith, and why version control is a force to be used wisely. ### [Why we validate every API response with Zod in React Native — and what breaks when you don't](https://kuray.dev/blog/mobile-development/zod-dto-every-response-rn-052026) _Mobile Development · 2026-05-11 · by Kuray Karaaslan_ Every service method in this Expo boilerplate parses API responses through a Zod schema. Here is why type casts break and how parse-at-boundary prevents silent crashes. ### [3D extrusion on a 2D map: when a bar chart belongs on the geometry, not in a sidebar](https://kuray.dev/blog/ui-ux-design/3d-extrusion-on-2d-map-0725) _UI/UX Design · 2025-07-08 · by Kuray Karaaslan_ How a MapLibre fill-extrusion layer turns a polygon metric into a per-feature prism, and when height-as-data beats a sidebar table. ### [Goodbye, MTV : The Channel That Soundtracked a Generation](https://kuray.dev/blog/lifestyle-culture/goodbye-mtv-the-channel-that-soundtracked-a-generation-102025) _Lifestyle & Culture · 2025-10-22 · by Kuray Karaaslan_ MTV is killing off its music channels by 2025. Explore why the shift to reality TV and digital silos marks the end of communal music discovery. ### [Mapbox-GL-Draw on top of MapLibre: when you want drawing without paying for Mapbox](https://kuray.dev/blog/web-development/mapbox-draw-on-maplibre-0525) _Web Development · 2025-05-27 · by Kuray Karaaslan_ How to wire @mapbox/mapbox-gl-draw against MapLibre for polygon drawing — the adopt, bound modes, bridge events, tear-down loop, with the cleanup that everyone forgets. ### [The Trademark War Behind Disney’s Rebranding of FOX as NOW TV in Turkey](https://kuray.dev/blog/entrepreneurship-digital-marketing/the-trademark-war-behind-disneys-rebranding-of-fox-as-now-tv-in-turkey-112025) _Entrepreneurship & Digital Marketing · 2025-11-11 · by Kuray Karaaslan_ Disney’s NOW TV rebrand in Turkey faces a legal wall as local trademark rights collide with global media strategy. A messy lesson in IP law. ### [WebAuthn in a TypeScript API: how passkeys actually work end to end](https://kuray.dev/blog/backend-development/proof-and-case-studies-readme-webauthn-062026) _Backend Development · 2026-06-07 · by Kuray Karaaslan_ How WebAuthn passkey registration and authentication works in a TypeScript API — challenge storage in Redis, passkeys in Postgres JSONB, and resident key (usernameless) login flow. ### [I Double-Check Hotel Reservations. Jeff Bezos Rented Venice](https://kuray.dev/blog/lifestyle-culture/i-double-check-hotel-reservations-jeff-bezos-rented-venice-062025) _Lifestyle & Culture · 2025-06-23 · by Kuray Karaaslan_ While you're zooming into blurry hotel photos and comparing "sea views," Jeff Bezos just rented the entire city of Venice for his wedding. Here's a sarcastic breakdown of late-stage capitalism through hotel reservations. ### [The Next Chapter for React: Entering the React Foundation Era](https://kuray.dev/blog/software-fundamentals/the-next-chapter-for-react-entering-the-react-foundation-era-102025) _Software Fundamentals · 2025-10-25 · by Kuray Karaaslan_ React Foundation is here. Meta is handing over the keys to a vendor-neutral group. Here is why this governance shift actually matters for your tech stack. ### [First Vibe Coding Disaster: 4Chan](https://kuray.dev/blog/cybersecurity-quality-assurance/first-vibe-coding-disaster-4chan-2025) _Cybersecurity & Quality Assurance · 2025-04-22 · by Kuray Karaaslan_ In 2025, 4chan suffered a catastrophic hack caused by outdated PHP code and an unpatched FreeBSD server. We explore the technical failures, cultural consequences, and lessons every dev should take from this "first vibe" disaster. ### [AWS S3 SDK in production: what it earned its place doing](https://kuray.dev/blog/backend-development/engineering-quality-dep-aws-sdk-client-s3-062026) _Backend Development · 2026-07-29 · by Kuray Karaaslan_ How @aws-sdk/client-s3 powers Cloudflare R2, DigitalOcean Spaces, and MinIO in one TypeScript API via a DB-driven provider abstraction that swaps storage backends at runtime. ### [AWS Outage on October 20, 2025: What Went Wrong in US-EAST-1 and How It Affected Key Services](https://kuray.dev/blog/cloud-devops/aws-outage-on-october-20-2025-what-went-wrong-in-us-east-1-and-how-it-affected-key-services-102025) _Cloud & DevOps · 2025-10-20 · by Kuray Karaaslan_ US-EAST-1 AWS outage proves cloud resilience is a myth for many. A cynical architect's take on the N. Virginia failure, IAM issues, and why your HA is a lie. ### [The End of an Era: How QNB Ended Enpara](https://kuray.dev/blog/entrepreneurship-digital-marketing/the-end-of-an-era-how-qnb-ended-enpara-102025) _Entrepreneurship & Digital Marketing · 2025-10-09 · by Kuray Karaaslan_ An in-depth look at how QNB’s acquisition turned Enpara from a free, independent digital bank into a conventional institution in Turkey. ### [A palette that survives six overlapping layers: the colour decision we shipped twice](https://kuray.dev/blog/ui-ux-design/multi-layer-color-palette-0725) _UI/UX Design · 2025-07-24 · by Kuray Karaaslan_ How a geospatial app picked a categorical-plus-gradient palette that stays readable under six overlapping MapLibre fill layers, and the trade-offs we kept. ### [The Myth of Interior Architecture](https://kuray.dev/blog/home-improvement-real-estate/the-myth-of-interior-architecture-032026) _Home Improvement & Real Estate · 2026-03-26 · by Kuray Karaaslan_ A critical breakdown of why splitting architectural design authority destroys system integrity and masks a purely economic grab for market share. ### [Google's Latest Quantum Computing Chip: Willow](https://kuray.dev/blog/data-science-ai/googles-latest-quantum-computing-chip-willow) _Data Science & AI · 2024-12-12 · by Kuray Karaaslan_ Google's Willow chip advances quantum computing with increased qubit count, improved error correction, and scalable design, unlocking transformative applications across industries. ### [5 Essential Skills for Software Developer Interns (February 2025 Edition)](https://kuray.dev/blog/software-fundamentals/5-essential-skills-for-software-developer-interns-february-2025-edition) _Software Fundamentals · 2025-02-10 · by Kuray Karaaslan_ A concise guide for aspiring software developer interns looking to level up their skills, featuring Docker, Git, AWS S3, Nodemailer, and modern deployment platforms. ### [Real-time scenario state over WebSocket: project:init and project:save as the contract](https://kuray.dev/blog/backend-development/websocket-scenario-state-sync-0925) _Backend Development · 2025-09-17 · by Kuray Karaaslan_ How a two-file MessageType union — project:init and project:save — keeps a multi-client Three.js scene in sync over a single ws connection. ### [Why I'm Allergic to JavaScript (and Why TypeScript is the Cure)](https://kuray.dev/blog/software-fundamentals/why-im-allergic-to-javascript-and-why-typescript-is-the-cure) _Software Fundamentals · 2025-01-29 · by Kuray Karaaslan_ Discover why JavaScript's quirks make it frustrating for developers and how TypeScript solves these issues with strict typing, better tooling, and improved security. Learn why TypeScript is the future of scalable, maintainable code. ### [TikTok's Temporary Ban: Data Left Behind on Alternative Platforms and Its Costs](https://kuray.dev/blog/cloud-devops/tiktoks-temporary-ban-data-left-behind-on-alternative-platforms-and-its-costs-202501) _Cloud & DevOps · 2025-01-19 · by Kuray Karaaslan_ Discover how TikTok's temporary ban led millions of users to alternative platforms, leaving behind massive amounts of unused data. Learn about the hidden costs of data storage, CDN expenses, and how to protect your content online. ### [Building a Node.js Email Queue with Redis and BullMQ](https://kuray.dev/blog/server-development/building-a-nodejs-email-queue-with-redis-and-bullmq-20250502) _Server Development · 2025-05-02 · by Kuray Karaaslan_ Learn how to use Redis and BullMQ to queue emails in Node.js for scalable, fault-tolerant, and fast email delivery. Ideal for backend engineers and SaaS apps. ### [Is AI Empowering the Underdog and Making the Elite Nervous?](https://kuray.dev/blog/data-science-ai/is-ai-empowering-the-underdog-and-making-the-elite-nervous-112025) _Data Science & AI · 2025-11-01 · by Kuray Karaaslan_ AI is supposed to be the great equalizer, but "safety" protocols are starting to look like gatekeeping for the compute-poor. A cynical look at power. ### [Doost: How a Sunsetted App Redefined the Anxiety of the Breakdown](https://kuray.dev/blog/entrepreneurship-digital-marketing/doost-how-a-sunsetted-app-redefined-the-anxiety-of-the-breakdown-012026) _Entrepreneurship & Digital Marketing · 2026-01-19 · by Kuray Karaaslan_ Why the Doost app was a rare win for Turkish roadside assistance and why the insurance industry's tech-debt eventually killed a great UX experiment. ### [Keeping a Jailbroken PS4 Offline From Sony — Properly](https://kuray.dev/blog/cybersecurity-quality-assurance/keeping-a-jailbroken-ps4-offline-from-sony-properly-082026) _Cybersecurity & Quality Assurance · 2026-08-10 · by Kuray Karaaslan_ Why simple DNS blocklists fail against modern consoles. A look into network architecture, forcing port 53 traffic, and managing dynamic CDN edge nodes. ### [Iron Will Against Historical Lies and the Silencing of Açık Radyo](https://kuray.dev/blog/politics-power-systems/iron-will-against-historical-lies-and-the-silencing-of-ak-radyo-022026) _Politics, Power & Systems · 2026-02-26 · by Kuray Karaaslan_ An investigative look into the closure of Açık Radyo, exposing historical lies, remembering the Khojaly Massacre, and defending Turkish national values. ### [Natural-language commands for a map: parsing COMMAND:type:params out of a chat response](https://kuray.dev/blog/data-science-ai/llm-map-command-parser-1025) _Data Science & AI · 2025-10-06 · by Kuray Karaaslan_ A five-step wire contract for turning LLM chat replies into safe map actions in a Next.js viewer: closed verb set, single-line format, tight leash, parser, dispatcher. ### [Home Renovation Journey – Part 1](https://kuray.dev/blog/home-improvement-real-estate/home-renovation-journey-part-1-082025) _Home Improvement & Real Estate · 2025-08-02 · by Kuray Karaaslan_ A real home renovation story — from Koçtaş delays to DIY success. How I built bathroom cabinets, used Einhell tools, and turned setbacks into victories. ### [Fire, Water, Soil, Chip: The Quantum Prophecy of Majorana 1](https://kuray.dev/blog/data-science-ai/fire-water-soil-chip-the-quantum-prophecy-of-majorana-1) _Data Science & AI · 2025-02-22 · by Kuray Karaaslan_ Discover Microsoft's Majorana 1, a quantum computing breakthrough utilizing Majorana particles to create stable qubits, potentially unlocking a new state of matter. Learn how this innovation could revolutionize cryptography, AI, and material science, redefining the future of computation. ### [The Anatomy of an Institutional Collapse: Digital Infrastructure and the İzmir Ekonomi Breach](https://kuray.dev/blog/cybersecurity-quality-assurance/the-anatomy-of-an-institutional-collapse-digital-infrastructure-and-the-zmir-ekonomi-breach-012026) _Cybersecurity & Quality Assurance · 2026-01-05 · by Kuray Karaaslan_ The İEÜ data breach isn't just a leak; it's a systemic failure of "zombie" servers and administrative laziness. A look at why university IT is failing. ### [Why I Created My Own CMS with Next.js as a Software Developer](https://kuray.dev/blog/web-development/why-i-created-my-own-cms-with-nextjs-as-a-software-developer) _Web Development · 2024-12-14 · by Kuray Karaaslan_ Discover why building a custom CMS with Next.js can be a game-changer for developers managing models like Post, Category, Newsletter, and Comment, along with authentication. ### [Local Cloud, Global Stakes: Inside Turkey's Turkcell–Google Cloud Region Bet](https://kuray.dev/blog/cloud-devops/local-cloud-global-stakes-inside-turkeys-turkcell-google-cloud-region-bet-112025) _Cloud & DevOps · 2025-11-18 · by Kuray Karaaslan_ Turkcell and Google’s local cloud deal is a billion-dollar bet on data sovereignty, but local infrastructure gaps and hourly billing traps pose real risks. ### [The Glass Pyramid and the Digital Key: Anatomy of the Louvre’s Security Architecture](https://kuray.dev/blog/cybersecurity-quality-assurance/the-glass-pyramid-and-the-digital-key-anatomy-of-the-louvres-security-architecture-112025) _Cybersecurity & Quality Assurance · 2025-11-22 · by Kuray Karaaslan_ The Louvre password "Louvre" wasn't just a joke—it's a deep dive into the messy reality of state bureaucracy, legacy SCADA systems, and the myth of the air-gap. ### [Setting Up an Entry-Level Studio for Meetings, Streams, and Educational Videos](https://kuray.dev/blog/home-improvement-real-estate/setting-up-an-entry-level-studio-for-meetings-streams-and-educational-videos-202501) _Home Improvement & Real Estate · 2025-01-15 · by Kuray Karaaslan_ Let’s face it: we’ve all seen those jaw-dropping studios on YouTube, the ones with glowing lights, perfect sound, and equipment worth more than a small car. But what if I told you that you can create your very own studio without selling a kidney? Welcome to my entry-level studio adventure—where practicality meets pizzazz and results are professional-grade (minus the astronomical price tag). ### [Idempotent Stripe PaymentIntents on a multi-step checkout: order-id as the key](https://kuray.dev/blog/server-development/event-ticketing-stripe-paymentintent-idempotency-0724) _Server Development · 2024-07-02 · by Kuray Karaaslan_ How to keep Stripe PaymentIntents 1:1 with your Order, using the order id as the idempotency key and persisting the intent id back on the order. ### [Why I Left LinkedIn: Because Faking It Wasn't Making It](https://kuray.dev/blog/entrepreneurship-digital-marketing/why-i-left-linkedin-because-faking-it-wasnt-making-it-062025) _Entrepreneurship & Digital Marketing · 2025-06-25 · by Kuray Karaaslan_ Sarcastic, honest breakdown of LinkedIn's toxic positivity and performative culture ### [How PayPal Built and Runs JunoDB: The Architecture Behind $350 Billion in Daily Transactions](https://kuray.dev/blog/cybersecurity-quality-assurance/how-paypal-built-and-runs-junodb-the-architecture-behind-350-billion-in-daily-transactions-112025) _Cybersecurity & Quality Assurance · 2025-11-06 · by Kuray Karaaslan_ An in-depth look at how PayPal built and operates JunoDB, its custom key-value store powering over $350 billion in daily transactions. ### [Section layout as Prisma rows, not SVG: the positionX/Y/rotation choice](https://kuray.dev/blog/mobile-development/event-ticketing-section-layout-in-prisma-rows-0726) _Mobile Development · 2024-06-17 · by Kuray Karaaslan_ Why a multi-venue ticketing platform stored seating chart geometry as Prisma rows with coordinates and rotation, instead of per-venue SVG assets. ### [Opening a Component Library to AI Agents: /api/registry](https://kuray.dev/blog/data-science-ai/engineering-quality-api-registry-for-ai-agents-072025) _Data Science & AI · 2025-07-28 · by Kuray Karaaslan_ A /api/registry endpoint serving component metadata as structured JSON: static snapshot, index mode, whenToUse fields, and CONVENTIONS for AI coding assistants. ### [React2Shell Pwned Me — And It Was My Fault](https://kuray.dev/blog/cybersecurity-quality-assurance/react2shell-pwned-me-and-it-was-my-fault-122025) _Cybersecurity & Quality Assurance · 2025-12-07 · by Kuray Karaaslan_ A cynical breakdown of how the React2Shell RCE vulnerability nuked a Next.js server running as root and what it says about modern engineering shortcuts. ### [Goodbye, Skype: The App That Taught the World to Talk Online](https://kuray.dev/blog/software-fundamentals/goodbye-skype-the-app-that-taught-the-world-to-talk-online-202505) _Software Fundamentals · 2025-05-06 · by Kuray Karaaslan_ Discover the history and cultural impact of Skype, the app that revolutionized online calling, and why replacing it with Microsoft Teams feels like a misstep. ### [Redis hot, SQLite durable: a two-tier cache that survives a control-plane restart](https://kuray.dev/blog/backend-development/vpn-network-security-redis-sqlite-two-tier-cache-072025) _Backend Development · 2025-07-28 · by Kuray Karaaslan_ A two-tier cache pattern in TypeScript: Redis as the hot tier, embedded SQLite as the durable fallback that survives a control-plane restart and a cold Redis. ### [Replit’s AI coding agent deleted a live production database](https://kuray.dev/blog/data-science-ai/replits-ai-coding-agent-deleted-a-live-production-database-112025) _Data Science & AI · 2025-11-08 · by Kuray Karaaslan_ AI agents in Replit wiped a production database despite a code freeze. An analysis of the engineering failures, the "vibe coding" hype, and systemic risk. ### [Browser AI: Slacking Off & Localhost](https://kuray.dev/blog/data-science-ai/browser-ai-slacking-off-localhost-042026) _Data Science & AI · 2026-04-03 · by Kuray Karaaslan_ Automating your day job with agentic browsers sounds great until IT audits your traffic. Why local inference and data sovereignty matter for your workflow. SEO Keywords: agentic browsers, local LLM, Brave Leo localhost, ChatGPT Atlas privacy, Opera Neon tasks, data sovereignty, DOM interaction ### [From QR scan to entry confirmation: the three-step validator handshake](https://kuray.dev/blog/server-development/event-ticketing-ticket-validation-handshake-0724) _Server Development · 2024-07-15 · by Kuray Karaaslan_ A three-step server-decided ticket-validation flow (scan, verify, mark) with idempotent entry logs and named failure reasons for door staff. ### [DeepSeek V3: Experiencing a Personality Crisis?](https://kuray.dev/blog/data-science-ai/deepseek-v3-experiencing-a-personality-crisis) _Data Science & AI · 2025-01-27 · by Kuray Karaaslan_ Discover how DeepSeek V3, a rising AI competitor to OpenAI's GPT-4, mistakenly identified itself as ChatGPT due to training data contamination. Learn how this identity crisis was resolved and what it means for AI development. ### [Pushing routes per client: iroutes, MAC maps, and virtual subnets](https://kuray.dev/blog/backend-development/vpn-network-security-per-client-routing-iroutes-112025) _Backend Development · 2025-11-06 · by Kuray Karaaslan_ How a Node/TypeScript control plane stores per-client OpenVPN topology as rows: an iroute table, a MAC-to-router map, a sticky virtual-subnet registry. ### [Event times across cities: how we stopped storing UTC and started storing local](https://kuray.dev/blog/mobile-development/event-ticketing-event-times-across-timezones-0724) _Mobile Development · 2024-07-28 · by Kuray Karaaslan_ Why a multi-city ticketing platform moved from UTC-stored event times to local-wall-clock plus venue timezone, the bug that forced it, and the migration shape. ### [A DHCPv4 server that only wakes up in bridged TAP mode](https://kuray.dev/blog/backend-development/vpn-network-security-dhcp-only-in-bridged-tap-112025) _Backend Development · 2025-11-27 · by Kuray Karaaslan_ Why a VPN control plane ships a DHCPv4 server, when TUN-routed clients get pushed addresses instead, and how one boot guard keeps UDP/67 from binding in the wrong mode. ### [When a useEffect Hook Took Down Cloudflare’s Dashboard: A Deep Dive into the September 12 Outage](https://kuray.dev/blog/cybersecurity-quality-assurance/when-a-useeffect-hook-took-down-cloudflares-dashboard-a-deep-dive-into-the-september-12-outage-092025) _Cybersecurity & Quality Assurance · 2025-09-12 · by Kuray Karaaslan_ A React useEffect bug in Cloudflare's dashboard triggered API overload and service outages. Learn what happened and how to avoid similar failures. ### [Kumru.ai: The Turkish Bird Trying to Sing Like ChatGPT (But Chirps Off-Key)](https://kuray.dev/blog/data-science-ai/kumruai-the-turkish-bird-trying-to-sing-like-chatgpt-but-chirps-off-key-102025) _Data Science & AI · 2025-10-10 · by Kuray Karaaslan_ Kumru.ai claims to be Türkiye’s most advanced AI, but does it actually work? A cynical look at the 7.4B model's architecture, hallucinations, and benchmarks. SEO Keywords: Kumru.ai, VNGRS, Turkish LLM, 7B model architecture, AI hallucinations, Turkish tokenizer, Cetvel benchmarks, LLM infrastructure ### [Project Stargate vs. Skynet: Are We Building Our Own Doom?](https://kuray.dev/blog/data-science-ai/project-stargate-vs-skynet-are-we-building-our-own-doom) _Data Science & AI · 2025-01-25 · by Kuray Karaaslan_ Discover the truth behind Project Stargate, the ambitious $500 billion AI initiative. Is it a revolutionary step forward or a potential threat like Skynet from The Terminator? Explore the comparisons, ethical concerns, and the future of AI-driven solutions ### [Ghost sections in seat layouts: the consistency check we should have written first](https://kuray.dev/blog/data-science-ai/event-ticketing-ghost-sections-data-integrity-0824) _Data Science & AI · 2024-08-13 · by Kuray Karaaslan_ How an event-ticketing platform let empty-section bugs reach customers, and the schema + integrity-scan fix that closed both ghost sections and orphan seats. ### [Group-based vs full-isolation: firewall policies as data, not iptables muscle memory](https://kuray.dev/blog/backend-development/vpn-network-security-firewall-policies-as-data-092025) _Backend Development · 2025-09-05 · by Kuray Karaaslan_ How a VPN control plane models firewall reachability as stored rows compiled into nftables — group-based vs full-isolation — so policy is auditable, not hand-edited. ### [Packet captures that outlive the box: forensic evidence streamed to object storage](https://kuray.dev/blog/backend-development/vpn-network-security-forensic-capture-to-object-storage-102025) _Backend Development · 2025-10-14 · by Kuray Karaaslan_ How a Node control plane streams forensic packet captures and compliance archives to S3 so evidence outlives recycled instances — the capture lifecycle and storage seam. ### [From OpenVPN event to upstream call to pushed config: the decision module as glue](https://kuray.dev/blog/backend-development/vpn-network-security-decision-module-as-glue-022026) _Backend Development · 2026-02-19 · by Kuray Karaaslan_ How a TypeScript decision module sits between OpenVPN events and an upstream API as a thin, testable coordinator: phases return data, I/O at the edges. ### [Keeping the auth path alive: a DDoS lane and failover for a single-process control plane](https://kuray.dev/blog/cloud-devops/vpn-network-security-ha-for-single-process-plane-122025) _Cloud & DevOps · 2025-12-16 · by Kuray Karaaslan_ Keeping a single-process VPN control plane available: a pre-auth DDoS lane that drops floods before the auth decision, plus soft failover and its cost. ### [Pixnapping the Screen: Inside Android’s Side-Channel Vulnerability (CVE-2025-48561)](https://kuray.dev/blog/cybersecurity-quality-assurance/pixnapping-the-screen-inside-androids-side-channel-vulnerability-cve-2025-48561-112025) _Cybersecurity & Quality Assurance · 2025-11-12 · by Kuray Karaaslan_ Android CVE-2025-48561 exposes how your screen content leaks through GPU side-channels. A blunt look at why mobile sandboxes fail and how to fix the mess. ### [Tamper-evident session archives for KVKK/GDPR: the compliance trail you can hand a regulator](https://kuray.dev/blog/backend-development/vpn-network-security-compliance-tamper-evident-archive-012026) _Backend Development · 2026-01-15 · by Kuray Karaaslan_ How to store network session logs so a regulator trusts them: record, SHA-256 hash-chain seal, and an access trail — a KVKK/GDPR retention framework in TypeScript. ### [The UniSuper Incident: Why Cross-Cloud Backup is Essential for Data Security and Business Continuity](https://kuray.dev/blog/cybersecurity-quality-assurance/the-unisuper-incident-why-cross-cloud-backup-is-essential-for-data-security-and-business-continuity) _Cybersecurity & Quality Assurance · 2025-02-02 · by Kuray Karaaslan_ Learn why cross-cloud backup is essential for data security, business continuity, and disaster recovery. Explore the UniSuper incident and how a multi-cloud strategy mitigates risks. ### [Pavel Durov: the Modern Genghis Khan](https://kuray.dev/blog/entrepreneurship-digital-marketing/pavel-durov-the-modern-genghis-khan-012026) _Entrepreneurship & Digital Marketing · 2026-01-07 · by Kuray Karaaslan_ Pavel Durov's 100 children reveal is more than a headline; it's a systems architecture experiment in biological legacy and state-defying tech. ### [Why Turkey’s Election Infrastructure Runs on Oracle: A Deep Dive into SEÇSİS and Database Choices](https://kuray.dev/blog/software-fundamentals/why-turkeys-election-infrastructure-runs-on-oracle-a-deep-dive-into-sess-and-database-choices-112025) _Software Fundamentals · 2025-11-04 · by Kuray Karaaslan_ Why does Turkey's election system SEÇSİS use Oracle? Discover the technical and institutional reasons behind this critical database decision. ### [Money as a float is the bug you ship once: storing amounts as integers](https://kuray.dev/blog/mobile-development/event-ticketing-money-as-float-vs-int-0824) _Mobile Development · 2024-08-26 · by Kuray Karaaslan_ Why an event-ticketing platform migrated every monetary column from Float to Int minor units, the slow reconciliation discrepancies that forced it, and the helper layer at the display and payment boundary. ### [Impossible-travel detection on VPN logins: the GeoVelocity check](https://kuray.dev/blog/backend-development/vpn-network-security-geovelocity-impossible-travel-082025) _Backend Development · 2025-08-18 · by Kuray Karaaslan_ GeoVelocity impossible-travel detection for VPN logins: MaxMind GeoIP, Haversine distance, and a minimum-distance gate that suppresses false positives. ### [Per-Instance Zustand Store: Three Independent Calendars on One Page](https://kuray.dev/blog/mobile-development/architecture-per-instance-zustand-store-082025) _Mobile Development · 2025-08-18 · by Kuray Karaaslan_ Zustand per-instance store factory pattern: createCalendarStore() + Context + useCalStore(selector). How to isolate state across multiple instances of the same component. ### [Reconciling pushed routes to desired state: a RouteManager that converges](https://kuray.dev/blog/cloud-devops/vpn-network-security-route-reconciliation-loop-042026) _Cloud & DevOps · 2026-04-08 · by Kuray Karaaslan_ How a TypeScript VPN control plane reconciles kernel /32 routes: read actual, diff desired, correct idempotently, converge — pinned by tests. ### [Uber's Trojan Horse in Turkey](https://kuray.dev/blog/politics-power-systems/ubers-trojan-horse-in-turkey-052026) _Politics, Power & Systems · 2026-04-13 · by Kuray Karaaslan_ An analysis of Uber's billion-dollar delivery acquisitions in Turkey, backend consolidation, and how logistics will force a renegotiation of the mobility ban. ### [Evolving content without a destructive migration](https://kuray.dev/blog/web-development/dynamic-pages-schema-migration-062026) _Web Development · 2026-05-29 · by Kuray Karaaslan_ Changing a JSON content schema with no destructive DB migration: a schemaVersion field, lazy in-memory v1 to v2 migration, an index to find stragglers. ### [Counting bytes per client: flow observation, bandwidth history, and quota enforcement](https://kuray.dev/blog/backend-development/vpn-network-security-flow-accounting-and-quota-092025) _Backend Development · 2025-09-23 · by Kuray Karaaslan_ How a VPN control plane turns cumulative byte counters into a period quota and an hour-of-week baseline, then enforces it via Linux tc throttling. ### [Building the drag-and-drop page editor: dnd-kit + Zustand](https://kuray.dev/blog/web-development/dynamic-pages-editor-072026) _Web Development · 2026-05-29 · by Kuray Karaaslan_ How a block-based page editor keeps order a clean 0..n sequence, bounds undo at 50 steps, autosaves drafts to localStorage, and guards structural edits. ### [80 Lines Instead of a Dependency: Custom RRULE Parser](https://kuray.dev/blog/web-development/engineering-quality-rrule-no-dependency-092025) _Web Development · 2025-09-01 · by Kuray Karaaslan_ Why a calendar component ships its own RRULE parser instead of the rrule npm package. FREQ, INTERVAL, COUNT, UNTIL, BYDAY — five tokens, 80 lines, zero dependency. ### [Seven minutes to checkout: why not five, not ten](https://kuray.dev/blog/mobile-development/event-ticketing-hold-duration-tuning-0924) _Mobile Development · 2024-09-09 · by Kuray Karaaslan_ The trade-off behind the seat-hold window in an event-ticketing platform: short windows hurt conversion, long windows hurt throughput, and the seven-minute default that serves most venues. ### [The Architecture of Proximity Spam](https://kuray.dev/blog/cybersecurity-quality-assurance/the-architecture-of-proximity-spam-032026) _Cybersecurity & Quality Assurance · 2026-03-23 · by Kuray Karaaslan_ An architectural breakdown of why Bluetooth Low Energy discovery triggers false proximity alerts and exposes mobile devices to passive tracking. ### [Umut Tarlaları: How a 1993 Turkish Indie Rivaled Silicon Valley’s SimFarm](https://kuray.dev/blog/game-development/umut-tarlalar-how-a-1993-turkish-indie-rivaled-silicon-valleys-simfarm-012026) _Game Development · 2026-01-12 · by Kuray Karaaslan_ An engineering-focused look at Umut Tarlaları, the 1993 Turkish Amiga sim that bypassed state voids with guerrilla development and AMOS BASIC logic. ### [TOGG's Domain Fumble: A Branding Blunder](https://kuray.dev/blog/entrepreneurship-digital-marketing/why-togg-lost-toggcom-022026) _Entrepreneurship & Digital Marketing · 2026-02-16 · by Kuray Karaaslan_ An analysis of why TOGG failed to acquire togg.com, exploring the WIPO legal defeat, the Uzi Nissan precedent, and massive errors in global brand strategy. ### [Announcing to Screen Readers: AnnouncerOutlet and the aria-live Portal](https://kuray.dev/blog/food-cooking/accessibility-announcer-outlet-aria-live-portal-012026) _Food & Cooking · 2026-01-05 · by Kuray Karaaslan_ createPortal + module-level listener set for a global aria-live region. The 16ms clear→set trick, polite vs assertive priority, and SSR-safe useAnnounce hook. ### [Left-Handed Coffee Chaos: My Extremely Serious Battle Between Two Machines](https://kuray.dev/blog/lifestyle-culture/left-handed-coffee-chaos-my-extremely-serious-battle-between-two-machines) _Lifestyle & Culture · 2025-04-15 · by Kuray Karaaslan_ A fun and honest comparison between the Philips HD7461/20 and Fakir KM 6151 coffee machines — from a left-handed coffee lover’s perspective. Discover which one brews better, grinds smarter, and suits your morning ritual. ### [Facade Rot and The HVAC Reality](https://kuray.dev/blog/home-improvement-real-estate/facade-rot-and-the-hvac-reality-032026) _Home Improvement & Real Estate · 2026-03-16 · by Kuray Karaaslan_ A cynical engineering breakdown of why individual AC units destroy building facades, the failure of central VRF mandates, and how to fix urban infrastructure. ### [Pages as JSON: the data model behind a block-based content platform](https://kuray.dev/blog/web-development/dynamic-pages-data-model-032026) _Web Development · 2026-03-10 · by Kuray Karaaslan_ How a block-based content platform stores each page as one row whose JSON body is a Zod-validated array of typed blocks, versioned for safe evolution. ### [PHP Will Still Be Strong in 2025: Why It Remains a Top Choice](https://kuray.dev/blog/web-development/php-will-still-be-strong-in-2025-why-it-remains-a-top-choice) _Web Development · 2025-01-03 · by Kuray Karaaslan_ Discover why PHP continues to thrive in 2025 with its modern frameworks, performance enhancements, and a vast developer community. Learn about its versatility and ease of use for building dynamic web applications. ### [Nested Focus Traps: Managing Multiple Modals with a Layer Stack](https://kuray.dev/blog/mobile-development/accessibility-nested-focus-trap-layer-stack-032026) _Mobile Development · 2026-03-24 · by Kuray Karaaslan_ How a module-level layerStack handles nested dialogs: only the topmost trap responds to Tab and Escape. isFocusTrapTopLayer export for sibling hooks like useDismiss. ### [Redis in production: what it earned its place doing](https://kuray.dev/blog/backend-development/engineering-quality-dep-redis-062026) _Backend Development · 2026-06-07 · by Kuray Karaaslan_ Why ioredis ended up as the primary Redis client in a TypeScript/Node API — BullMQ requirements, idempotency enforcement, WebAuthn challenges, and session invalidation all on one instance. ### [Redis’s U-Turn: Abandoning SSPL and Returning to Open Source](https://kuray.dev/blog/backend-development/rediss-u-turn-abandoning-sspl-and-returning-to-open-source-202505) _Backend Development · 2025-05-05 · by Kuray Karaaslan_ Redis reversed its licensing shift from SSPL to AGPLv3. Here's why the open-source community pushed back and what it means for developers and cloud providers. ### [Expo Router nested layouts explained — route groups, layout chains, and the files that actually run](https://kuray.dev/blog/mobile-development/expo-router-nested-layout-chains-052026) _Mobile Development · 2026-05-30 · by Kuray Karaaslan_ How a 22-screen Expo Router app is organized across 4 layout files and 3 route groups. The full layout chain model with real file paths and route derivation rules. ### [The $2,000 Spy in Your Hallway](https://kuray.dev/blog/cybersecurity-quality-assurance/dji-romo-hack-vibe-coding-security-disaster-022026) _Cybersecurity & Quality Assurance · 2026-02-28 · by Kuray Karaaslan_ A cynical breakdown of the DJI Romo security breach where 7,000 vacuums were accidentally hijacked. Why "vibe coding" and lazy MQTT design are the new spy tools. ### [Economic Roots of Urban Isolation](https://kuray.dev/blog/politics-power-systems/economic-roots-of-urban-isolation-032026) _Politics, Power & Systems · 2026-03-25 · by Kuray Karaaslan_ An analysis of how low wages, inflation, and the housing crisis are forcing young adults into severe malnutrition and digital isolation in modern cities. ### [Seat holds without a lock table: the order-expiry contract](https://kuray.dev/blog/art-tv-theatre/event-ticketing-seat-hold-via-order-expiry-0526) _Art, TV & Theatre · 2024-06-03 · by Kuray Karaaslan_ How to model seat holds in an event-ticketing checkout without a Hold table or row locks, using one Order field, one cron route, and one findFirst query. ### [General admission or seated: one boolean that branches the entire purchase UI](https://kuray.dev/blog/mobile-development/event-ticketing-general-admission-vs-seated-binary-1024) _Mobile Development · 2024-10-07 · by Kuray Karaaslan_ Why an event-ticketing platform modelled seated and standing-room venues with a single Section model and a boolean discriminator, instead of two parallel schemas. ### [A custom server.ts in front of Next.js: when next start is not enough](https://kuray.dev/blog/backend-development/custom-next-server-ts-0825) _Backend Development · 2025-08-09 · by Kuray Karaaslan_ A senior engineer's take on putting a custom server.ts in front of Next.js — the WebSocket upgrade signal, the deploy cost, and when Option A is enough. ### [Code blocks vs database blocks: a two-tier block registry](https://kuray.dev/blog/web-development/dynamic-pages-block-registry-042026) _Web Development · 2026-04-21 · by Kuray Karaaslan_ A two-tier block registry trade-off: ~60 typed React blocks resolved first, then DB template blocks via dangerouslySetInnerHTML, gated by admin authoring. ### [When DigitalOcean’s Docs Go Dark: Layoffs, Knowledge Loss & the Rise of AI Scrapers](https://kuray.dev/blog/entrepreneurship-digital-marketing/when-digitaloceans-docs-go-dark-layoffs-knowledge-loss-the-rise-of-ai-scrapers-102025) _Entrepreneurship & Digital Marketing · 2025-10-15 · by Kuray Karaaslan_ DigitalOcean's documentation team layoffs signal a grim era of doc rot and AI scraper dominance. Why killing technical docs is a death sentence for dev trust. ### [Event vs EventSession: which row is the actual SKU](https://kuray.dev/blog/entrepreneurship-digital-marketing/event-ticketing-event-vs-eventsession-as-sku-1024) _Entrepreneurship & Digital Marketing · 2024-10-20 · by Kuray Karaaslan_ Why an event-ticketing platform splits Event (marketing entity) from EventSession (SKU), how the Order references the session, and the queries that follow the split. ### [Engine-Agnostic CodeEditor: CodeMirror Default, Monaco Opt-In](https://kuray.dev/blog/backend-development/engineering-quality-codeeditor-engine-agnostic-082025) _Backend Development · 2025-08-25 · by Kuray Karaaslan_ Aynı CodeEditor API ile CodeMirror ve Monaco arasında geçiş yapın. Dynamic import ile 5MB Monaco chunk sadece talep edilince yükleniyor — useLazyEngine pattern. ### [When Fiction Feels Real: Spain & EU Power Outage Echoes "Die Hard 4.0" — But Was It a Cyberattack?](https://kuray.dev/blog/cybersecurity-quality-assurance/when-fiction-feels-real-spain-eu-power-outage-echoes-die-hard-40-but-was-it-a-cyberattack) _Cybersecurity & Quality Assurance · 2025-04-29 · by Kuray Karaaslan_ A deep dive into the April 28, 2025 power outage across Spain and Portugal—what caused it, why it looked like a real-life "Die Hard 4.0" cyberattack, and the urgent cybersecurity lessons for critical infrastructure resilience. ### [Doubao-1.5 Pro vs DeepSeek vs OpenAI GPT-4: Which AI Model Stands Out?](https://kuray.dev/blog/data-science-ai/doubao-15-pro-vs-deepseek-vs-openai-gpt-4-which-ai-model-stands-out) _Data Science & AI · 2025-01-25 · by Kuray Karaaslan_ Compare the top AI models: Doubao-1.5 Pro, DeepSeek-R1, and OpenAI's GPT-4. Learn about their pricing, performance, and use cases to choose the best AI model for your business. ### [Turkey’s Mobile Paradox: High Prices, Low Performance, and the Cost of the 5G Dream](https://kuray.dev/blog/lifestyle-culture/turkeys-mobile-paradox-high-prices-low-performance-and-the-cost-of-the-5g-dream-102025) _Lifestyle & Culture · 2025-10-16 · by Kuray Karaaslan_ Turkey's 5G rollout is a facade for high taxes and failing infrastructure. Why Turkish users pay premium prices for a network that collapses during earthquakes. ### [Design System Tokens with Tailwind v4's @theme inline](https://kuray.dev/blog/ui-ux-design/design-system-tailwind-v4-semantic-tokens-072025) _UI/UX Design · 2025-07-21 · by Kuray Karaaslan_ How to build a semantic CSS token system with Tailwind v4's @theme inline: surface elevations, text roles, state colors with -subtle/-fg variants, and zero dark: utilities. ### [Dev-Only Accessibility Checker: axe-core Loads in Zero Bytes in Production](https://kuray.dev/blog/web-development/accessibility-axe-core-tree-shaking-dev-only-122025) _Web Development · 2025-12-16 · by Kuray Karaaslan_ axe-core with dynamic import + process.env.NODE_ENV guard: zero production bundle cost. Automatic WCAG audit in development, completely absent in production builds. ### [DIY: Your Own Android TV Box with Raspberry Pi 5 (Part 1: Buying)](https://kuray.dev/blog/internet-of-things-iot/diy-your-own-android-tv-box-with-raspberry-pi-5-part-1-buying) _Internet of Things (IoT) · 2025-02-12 · by Kuray Karaaslan_ Build your own Android TV Box with Raspberry Pi 5. Learn why it's a great alternative to consumer TV boxes, how to set it up, and the pros and cons of using an R5Pi for media streaming ### [What to Expect from React 19: An Overview](https://kuray.dev/blog/web-development/what-to-expect-from-react-19-an-overview) _Web Development · 2024-12-08 · by Kuray Karaaslan_ Explore the latest features and updates in React 19, the popular JavaScript library for building user interfaces. ### [TypeORM vs Prisma: Which One Fits Better for DDD in Express Apps?](https://kuray.dev/blog/software-fundamentals/typeorm-vs-prisma-which-one-fits-better-for-ddd-in-express-apps-202505) _Software Fundamentals · 2025-05-15 · by Kuray Karaaslan_ Compare TypeORM and Prisma in real-world Domain-Driven Design (DDD) Express.js projects. Discover code examples, scaling advice, and which ORM offers better long-term maintainability. ### [Form Input Accessibility: Dynamic aria-describedby for Multi-State Messages](https://kuray.dev/blog/mobile-development/accessibility-input-aria-describedby-multistate-032026) _Mobile Development · 2026-03-17 · by Kuray Karaaslan_ Dynamic aria-describedby computation: hint, error, success are mutually exclusive. role='alert' vs silent hint, required asterisk sr-only pattern, number stepper tabIndex=-1. ### [Real Men Test in Production: A Love Letter to Chaos](https://kuray.dev/blog/software-fundamentals/real-men-test-in-production-a-love-letter-to-chaos) _Software Fundamentals · 2025-02-03 · by Kuray Karaaslan_ Discover why "real men test in production" is more than just a joke. This funny yet insightful take on software testing explores the myths of staging environments, real-world debugging, and why users make the best testers. ### [aria-busy, aria-pressed, and the Polymorphic as Prop — Button Done Right](https://kuray.dev/blog/mobile-development/accessibility-button-aria-busy-pressed-polymorphic-082025) _Mobile Development · 2025-08-04 · by Kuray Karaaslan_ Why loading buttons need aria-busy (not just disabled), how aria-pressed communicates toggle state, and how PolymorphicProps gives correct TypeScript inference. ### [Gantt Critical Path with Kahn's Algorithm: Forward and Backward Pass](https://kuray.dev/blog/web-development/engineering-quality-gantt-critical-path-kahns-032026) _Web Development · 2026-03-31 · by Kuray Karaaslan_ How to compute the critical path for a Gantt chart using Kahn's topological sort plus forward/backward pass. Zero-float tasks identify the schedule's binding constraints. ### [Carousel Physics: Velocity Sampling, Edge Resistance, and PointerEvent API](https://kuray.dev/blog/web-development/engineering-quality-slider-pointer-velocity-momentum-082025) _Web Development · 2025-08-11 · by Kuray Karaaslan_ setPointerCapture, a 100ms velocity sampling window, and EDGE_RESISTANCE × 0.4 for flick detection and rubber-band effect in a React carousel hook. ### [How Turkey's Name Change Impacted Windows and PostgreSQL](https://kuray.dev/blog/server-development/how-turkeys-name-change-impacted-windows-and-postgresql) _Server Development · 2025-01-07 · by Kuray Karaaslan_ In 2022, Turkey decided to reinforce its international identity by officially changing its English name from "Turkey" to "Türkiye." But who could have guessed that this diplomatic move would lead to unexpected results in the tech world? Sure, saying "Türkiye" is more accurate, but it seems this shift left technological infrastructures like PostgreSQL and Windows a bit baffled. Let’s take a fun dive into the details of this quirky story! ### [How to Stop a 15-Year-Old Hacker from Wrecking Your API in Under a Week](https://kuray.dev/blog/cybersecurity-quality-assurance/how-to-stop-a-15-year-old-hacker-from-wrecking-your-api-in-under-a-week-202501) _Cybersecurity & Quality Assurance · 2025-01-18 · by Kuray Karaaslan_ APIs are the backbone of modern applications, enabling seamless data exchange between systems. But with great power comes great responsibility: APIs are a prime target for hackers, script kiddies, and even the proverbial 15-year-old aspiring hacker. To protect your API from being wrecked in under a week, you need robust security measures. Let’s explore three critical tools in your API security arsenal: rate limiting, JWT token expiration, and two-factor authentication (2FA). ### [Command Palette's Two Engines: Fuzzy Scorer and useSyncExternalStore](https://kuray.dev/blog/food-cooking/engineering-quality-fuzzy-search-usesyncexternalstore-122025) _Food & Cooking · 2025-12-23 · by Kuray Karaaslan_ Module-level command registry bridged to React with useSyncExternalStore. Custom fuzzy scorer: prefix +100, word boundary +30, consecutive +10, gap penalty -1. ### [9 Essential Skills for Software Developer Interns (January 2025 Edition)](https://kuray.dev/blog/software-fundamentals/9-essential-skills-for-software-developer-interns-january-2025-edition) _Software Fundamentals · 2025-01-03 · by Kuray Karaaslan_ Stepping into the world of software development as an intern is both exciting and challenging. To set yourself up for success, it’s essential to familiarize yourself with certain fundamental concepts and tools. Here are eight critical areas you should focus on to make a strong impression and build a solid foundation. ### [Driving OpenVPN from its management socket: client-auth decisions over a unix socket](https://kuray.dev/blog/backend-development/vpn-network-security-management-socket-as-control-plane-072025) _Backend Development · 2025-07-09 · by Kuray Karaaslan_ How a Node control plane drives OpenVPN over its management socket — client-auth, ifconfig-push, kill — and supervises the daemon instead of systemd. ### [AWS Deprecates 24 Services: What You Need to Know and Do Next](https://kuray.dev/blog/cloud-devops/aws-deprecates-24-services-what-you-need-to-know-and-do-next-112025) _Cloud & DevOps · 2025-11-03 · by Kuray Karaaslan_ AWS is finally killing off 24 services. A senior architect's take on why this technical debt cleanup was long overdue and what it means for your cloud stack. ### [The 6-screen auth flow in Expo Router: login → 2FA → tenant selection → app](https://kuray.dev/blog/mobile-development/expo-router-multitenant-auth-flow-042026) _Mobile Development · 2026-04-22 · by Kuray Karaaslan_ How a multi-tenant Expo Router app wires login, 2FA, and tenant selection across 6 screens using Zustand state gates and a root-layout session restore. ### [Building a Next-Generation 3D Web Viewer with Three.js: Lightweight, Modular, and Fully Interactive](https://kuray.dev/blog/ui-ux-design/building-a-next-generation-3d-web-viewer-with-threejs-lightweight-modular-and-fully-interactive) _UI/UX Design · 2025-04-26 · by Kuray Karaaslan_ Learn how I built a lightweight, fully interactive 3D web viewer for X Company using Canvas and Three.js. Discover how Loader, Raycaster, Zustand, Window Manager, and Layer Manager create a scalable and high-performance 3D application architecture. ### [State Panic and Digital Censorship](https://kuray.dev/blog/politics-power-systems/state-panic-and-digital-censorship-072026) _Politics, Power & Systems · 2026-07-29 · by Kuray Karaaslan_ When national databases fail, the state uses automated IT rules and algorithmic blocks to hide protests instead of fixing broken infrastructure ### [MapLibre-GL: the part of the project the README leads with](https://kuray.dev/blog/web-development/maplibre-as-project-anchor-0525) _Web Development · 2025-05-02 · by Kuray Karaaslan_ Why an enterprise GIS README names MapLibre-GL in its first paragraph — engine choice, custom type augmentation, registry patching, and the lock-in that follows. ### [Never Make AI Your First Officer, It’s a Copilot Like Its Name, Yet!](https://kuray.dev/blog/data-science-ai/never-make-ai-your-first-officer-its-a-copilot-like-its-name-yet) _Data Science & AI · 2025-01-14 · by Kuray Karaaslan_ Artificial Intelligence (AI) has become a buzzword in recent years, making its way into nearly every aspect of modern life. From predictive text on your phone to advanced robotics, AI's capabilities are growing at an unprecedented rate. Yet, as developers and users alike marvel at its potential, it’s crucial to remember one key fact: AI is a copilot, not the captain of the ship. ### [Building a Modular RBAC Permission System with NodeJS](https://kuray.dev/blog/cybersecurity-quality-assurance/building-a-modular-rbac-permission-system-with-nodejs-202505) _Cybersecurity & Quality Assurance · 2025-05-03 · by Kuray Karaaslan_ Learn how to implement a modular, scalable RBAC (Role-Based Access Control) system in your Node.js SaaS app using Prisma. This deep-dive guide covers permission architecture, model detection, role mapping, and execution patterns with code examples. ### [Maecēnās, vēra amīcitia sempiterna est.](https://kuray.dev/blog/lifestyle-culture/maecns-vra-amcitia-sempiterna-est-032026) _Lifestyle & Culture · 2026-03-27 · by Kuray Karaaslan_ İlber Ortaylı, timeless friendships, atheism, and the search for meaning beyond death. ### [DiffViewer's LCS Algorithm: O(N×M) Table to Grouped Hunks](https://kuray.dev/blog/web-development/engineering-quality-diffviewer-lcs-algorithm-042026) _Web Development · 2026-04-08 · by Kuray Karaaslan_ How a React DiffViewer hook computes diffs: LCS O(N×M) table, backward walkback to a Change list, then hunk grouping with configurable context lines. ### [Supercharge Your Next.js App: Real-World Redis Caching for Lightning Performance](https://kuray.dev/blog/software-fundamentals/supercharge-your-nextjs-app-real-world-redis-caching-for-lightning-performance) _Software Fundamentals · 2025-04-21 · by Kuray Karaaslan_ Learn how Redis caching boosted performance in a real-world, multi-tenant ticketing SaaS built with Next.js. See code examples, benchmarks, and service-level integrations for blazing-fast APIs and smooth user experience. ### [Cloudbleed: The Day the Internet Bled Secrets — And What It Taught Us](https://kuray.dev/blog/cybersecurity-quality-assurance/cloudbleed-the-day-the-internet-bled-secrets-and-what-it-taught-us) _Cybersecurity & Quality Assurance · 2025-04-27 · by Kuray Karaaslan_ Cloudbleed exposed sensitive user data from millions of websites due to a minor bug in Cloudflare’s system. Discover what happened, how it was contained, and the critical lessons in web security every company, developer, and user should know. ### [5 Simple Steps to Write Great Git Commit Messages](https://kuray.dev/blog/software-fundamentals/5-simple-steps-to-write-great-git-commit-messages-202501) _Software Fundamentals · 2025-01-11 · by Kuray Karaaslan_ When it comes to software development, commit messages are more important than many of us realize. A good commit message not only provides clarity and context for future developers (including the future you!), but it also simplifies code reviews, documentation, and troubleshooting. In this post, we’ll walk through five simple steps that will help you craft more readable, consistent, and informative commit messages. ### [Why You Should Have a Loyalty App for Your Franchise?](https://kuray.dev/blog/entrepreneurship-digital-marketing/why-you-should-have-a-loyalty-app-for-your-franchise-202501) _Entrepreneurship & Digital Marketing · 2025-01-07 · by Kuray Karaaslan_ A loyalty app is more than just a tool – it’s a strategic asset that can elevate your franchise’s growth and customer engagement. By providing a seamless, rewarding experience, you not only retain your existing customer base but also attract new ones. If you’re ready to take your franchise to the next level, investing in a loyalty app is a step in the right direction.