- Knowledge
- technology
- OOP
- Tips
- Programming
- Tips
- Tutorial
- SEO
- Ranking
- Knowledge
- Special Day
- Seo
- Bug
- Data science
- Seo
- artificial intelligence
- Machine Learning
- Robotics
- happyNewYear2021
- newYearEve
- 2021
- Automation
- Smart Home
- Career
- Best Practices
- Git
- Logging
- Web Fundamentals
- DNS
- HTTPS
- Performance
- AI Tools
- ChatGPT
- Claude
- Gemini
- Laravel
- Eloquent
- MySQL
- HTTPS
- TLS
- Web Security
- Certificates
- Developer Life
- Debugging
- Docker
- DevOps
- Transactions
- Queues
- LLMs
- AI
- AI Coding
- Developer Tools
- React Native
- Expo
- Kate PMS
- Mobile Apps
- Laravel
- Authentication
- Sanctum
- Cookies
- API Design
- Payments
- Idempotency
- DeepSeek
- Open Source AI
- LLMs
- AI News
- Git
- Version Control
- AI Coding
- Prompting
- PHP
- Checklist
- MCP
- AI Agents
- OpenAI
- Architecture
- Microservices
- Modular Monolith
- Estimation
- Developer Life
- Project Planning
- Humour
- OAuth
- OpenID Connect
- Authentication
- Embeddings
- Vector Search
- RAG
- pgvector
- OpenAI
- GPT-4.1
- Codex CLI
- Events
- Testing
- Clean Code
- Maintainability
- Code Review
- Webhooks
- API
- Security
- Claude Code
- Workflow
- AI
- LLM
- Prompt Injection
- Mobile
- React
- Networking
- TCP
- UDP
- HTTP/3
- CLAUDE.md
- AWS
- Cloud Security
- Backups
- PHPUnit
- Software Engineering
- Leadership
- Communication
- RAG
- Embeddings
- AI Engineering
- IT Infrastructure
- Networking
- Access Control
- CI/CD
- GitHub Actions
- Gemini CLI
- Claude Code
- JavaScript
- Async/Await
- Node.js
- Promises
- Security
- Cryptography
- Passwords
- MySQL
- Database
- Vibe Coding
- Software Quality
- DNS
- Code Reading
- Onboarding
- Productivity
- Background Jobs
- Developer Humour
- Estimates
- Dev Life
- JWT
- o3-mini
- DeepSeek R1
- Rate Limiting
- Kate PMS
- E-Signing
- Audit Trail
- REST
- GraphQL
- API Design
- Laravel 12
- Upgrade Guide
- Open Source
- Self-Hosting
- Task Scheduling
- Cron
- Secrets
- CORS
- PHP
- PHP-FPM
- OPcache
- GitHub Copilot
- Software Architecture
- Engineering
- TypeScript
- JavaScript
- Type Safety
- AI Security
- React Native
- Product Design
- AI Agents
- Kiro
- Queues
- Redis
- RabbitMQ
- AWS SQS
- Nginx
- Apache
- GPT-5
- gpt-oss
- Clean Code
- Architecture
- Naming
- Documentation
- Career
- ADR
- Teamwork
- Supply Chain
- Kate HRM
- HR Software
- Permissions
- System Design
- Pagination
- SSH
- Linux
- Big O
- Databases
- Laravel Boost
- MCP
- Developer Skills
- Validation
- Databases
- Indexes
- Code Quality
- Deployment
- Developer Humour
- Feature Flags
- Code Review
- Pull Requests
- Docker
- Cursor
- Authorization
- RBAC
- Gemini
- Long Context
- PHP 8.4
- Caching
- Dependency Injection
- Web Performance
- Browser
- CSS
- Database
- Migrations
- ChatGPT
- AI for Developers
- Monitoring
- On-Call
- REST
- Backend
- SQL
- NoSQL
- Database Design
- Coding Agents
- Claude 4
- API Resources
- REST API
- Load Balancing
- Scaling
- AWS
- AI Tools
- Claude
- Sora 2
- CTE
- 2FA
- TOTP
- Programming Languages
- Prompts
- Developer Workflow
- API Gateway
- APIs
- Passport
- API Auth
- Learning
- Burnout
- Developer Growth
- Web Development
- SEO
- Kate Mall
- ChatGPT Atlas
- Agent Skills
- Middleware
- Laravel 12
- Collections
- Context Window
- Monitoring
- Commit Messages
- Self Review
- Growth
- Regex
- Programming Basics
- Text Processing
- Database Design
- Normalization
- Linux
- Server Security
- Linux Foundation
- Open Standards
- Legacy Code
- Documentation
- AI Workflow
- File Uploads
- Test Data
- Hashing
- Performance
- Caching
- Enums
- Scope Creep
- Estimation
- Codex
- Gemini CLI
- Timezones
- Carbon
- Bugs
- PHP 8.5
- Gemini 3
- GPT-5.1
- Data Integrity
- Event Loop
- Async
- Opus 4.5
- AI Models
- React
- Forms
- Frontend
- Backups
- AI Images
- DALL-E
- Midjourney
- Race Conditions
- Concurrency
- Legacy Code
- Refactoring
- Senior Engineer
- Scope
- LLM
- CDN
- Web
- Sub-Agents
- Soft Deletes
- Audit Log
- Concurrency
- AI Learning
- NestJS
- AI Evals
- Policies
- SPF DKIM DMARC
- Unicode
- UTF-8
- Knowledge Graph
- Value Objects
- Technical Debt
- Feature Flags
- Laravel Pennant
- Deployment
- Copilot
- Composer
- Dependencies
- Artisan
- Automation
- AWS S3
- Object Storage
- Cloud
- Small Language Models
- Ollama
- Production
- Sessions
- HTTP
- Mentoring
- SQL
- Virtual Machines
- Web Development
- HTTP/2
- QUIC
- Web Performance
- AI Integration
- LLM API
- SOLID
- OOP
- Hosting
- Serverless
- Merge Conflicts
- Temperature
- AI Development
- Reverse Proxy
- Nginx
- Infrastructure
- Verification
- Passkeys
- WebAuthn
- Teams
- Communication
- Stakeholders
- Monorepo
- CI/CD
- Versioning
- JSON Schema
- Livewire
- Inertia
- Meetings
- Distributed Systems
- Privacy
- Full-Stack
- T-Shaped Skills
- Money
- Notifications
- Web Security
- HTTP Headers
- CSP
- Function Calling
- Load Testing
- k6
- Data Extraction
- Debugging
- WebSockets
- SSE
- Real-Time
- Laravel Reverb
- Infrastructure as Code
- Terraform
- Side Projects
- Laravel Pint
- OpenAPI
- Swagger
- UX
- Multimodal
- Jest
- Pair Programming
- APIs
- Rate Limiting
- Resilience
- Dev Humour
- Design Tokens
- JWT
- API Keys
- Sessions
- PHPStan
- Rector
- Incidents
- Reporting
- Dashboards
- Zero Trust
- IAM
- Search
- Laravel Scout
- Junior Developers
- Mentoring
- Images
- WebP
- AVIF
- Bug Reports
- Let's Encrypt
- Design Docs
- Software Design
- Observers
- Replication
- Accountability
- Data Structures
- Reliability
- LLM Memory
- Error Handling
- Payments
- Payment Gateway
- Webhooks
- PCI DSS
- Observability
- OpenTelemetry
- Personal Brand
- Writing
- Conventions
- Dates
- Scheduling
- Disaster Recovery
- Compression
- Brotli
- Deadlines
- Developer Habits
- State Machines
- Tech Roles
- UUID
- ULID
- Horizon
- Planning
- Engineering Culture
- Ownership
- Soft Skills
- Socialite
- Cost Control
- Collations
- Unicode
- Octane
- PostgreSQL
Developer Superstitions We All Secretly Follow (and Why They Work)
About Post
We like to think of ourselves as people of logic. We work with machines that do exactly what they're told. We believe in evidence, reproducible steps and root causes.
And yet. Ask a room of developers to deploy at 4:55 on a Friday and watch the faces. Somewhere deep down, every one of us carries a small collection of rituals we can't fully defend but would never dare to skip.
Here are the ones I recognise, in myself and in every team I've worked with. The fun part is that almost all of them are secretly good engineering wearing a costume.
1. Never deploy on a Friday
The ritual: the deploy is ready on Friday afternoon. It waits until Monday, like a guest who arrived too early.
Why it secretly works: problems need people to notice and fix them, and on Friday evening those people are leaving. The real rule isn't about the day. It's "don't release when nobody will be watching for the next few hours." Teams with good monitoring, feature flags and one-click rollback can deploy on Friday without fear. Teams without them have invented a superstition to protect themselves, and honestly, fair enough.
2. Have you tried turning it off and on again?
The ritual: restart the server, the queue worker, the Docker container, the laptop, the router. Then, if needed, restart them in a different order.
Why it secretly works: a restart clears memory leaks, stale connections, stuck locks and cached state all at once. Annoyingly, it often works. The problem is that it also wipes the evidence. If a restart fixes it, ask why. Something was accumulating, and it will accumulate again.
3. If it works, don't touch it
The ritual: there's a file in the codebase that everyone walks around carefully, like a sleeping dog. Nobody remembers who wrote it. Everybody remembers what happened the last time someone "tidied" it.
Why it secretly works: code without tests is code whose behaviour nobody can prove. The fear is rational. The fix isn't courage, it's characterisation tests: pin down what the code does today, then change it with a safety net.
4. It's always DNS
The ritual: something on the network is broken. Before checking anything else, a senior developer sighs and says "it's DNS." It is, worryingly often, DNS.
Why it secretly works: DNS sits underneath almost everything, it's cached in several layers, and changes take time to spread. When a problem is weird and intermittent, a caching layer is a smart first suspect.
5. Do not say the Q word
The ritual: on call, nobody says "it's quiet today." Saying it out loud is how you summon the 3 a.m. alert. The same applies to "this should be a quick one."
Why it secretly works: it doesn't, obviously. But "this should be quick" is the most reliably wrong estimate in our industry, so treating it as a curse at least keeps us humble when planning.
6. Run the failing test again
The ritual: CI is red. You don't read the error. You press "re-run" and hold your breath. It goes green. You merge, quickly, before it changes its mind.
Why it secretly works: it doesn't work. It postpones. A test that passes on the second try is a flaky test, and it's usually flaky for a reason: time zones, test order, shared state, a race condition. Sometimes that race condition is in your real code, not the test.
7. The bug vanishes when someone watches
The ritual: you've been stuck for an hour. You call a colleague over, start explaining, and halfway through your own sentence you see the problem. They didn't say a word.
Why it secretly works: this one has a real name: rubber duck debugging. Explaining forces you to state your assumptions, and the wrong one stands out the moment you say it out loud. No colleague? A rubber duck, a notes file, or an AI chat works surprisingly well too.
8. The sacred comment
The ritual: a line in the code reads // DO NOT REMOVE. Breaks checkout. No explanation, no ticket, no name. Nobody removes it. Nobody ever will.
Why it secretly works: someone learned something painful and left a warning. They just forgot to leave the lesson. A good comment says why: what breaks, and under what condition.
9. Clear every cache in existence
The ritual: php artisan optimize:clear, composer dump-autoload, delete node_modules, hard refresh, clear the browser cache, and finally the incognito window, just to be sure.
Why it secretly works: stale caches really do cause "impossible" bugs. The better habit is knowing which cache holds what, so you clear the right one and learn something instead of carpet-bombing.
The useful part: a superstition is usually a lesson that lost its explanation. When you catch yourself following one, ask what it's protecting you from, then replace the ritual with the real safeguard: monitoring, rollbacks, tests, better comments.
Friday deploys become boring when rollback is one click. "Don't touch it" becomes "go ahead" when there's a test suite. And "it's DNS" becomes a five-second check instead of a guess.
The rubber duck can stay, though. The rubber duck has earned its place.
Which developer superstition do you secretly follow, even though you know better?

Be first to comment it...