The Curious Engineer

All blogs / Python

Roman Imankulov

roman.pt

Full-stack Python web developer

PythonAI / MLSoftware / engineering practice

’05’10’15’20’25
Posts
85 from 1 Jan 2001 to 29 Sep 2026
Posting
monthly (14 in the last year)
Kind
personal blog
Feed
https://roman.pt/index.xml

2026 14

  1. Cargo-cult a solo founder
  2. All posts →
  3. A backdoor in a LinkedIn job offer
  4. Agent engineering: smolagents
  5. Agent engineering: Pydantic AI
  6. Agent engineering: Pi SDK
  7. Agent engineering: Pi
  8. Agent engineering: Agent SDK
  9. Agent engineering: Claude Code
  10. Committing PyCharm .idea directory
  11. Voice Notifications for Claude Code
  12. Smello for HTTP Requests
  13. Fixing Keyboard Input in tmux
  14. Hands Off Development

2025 1

  1. Cursor Under the Hood

2024 2

  1. Temporary vs Permanent Errors
  2. Interface-mock-live (IML) pattern for connecting with third-party services in Python applications

2023 14

  1. Handling Unset Values in Fastapi With Pydantic
  2. GitHub Copilot Context
  3. Django Admin and Service Layer
  4. Refiner
  5. From Django class-based views to service functions
  6. Parametrizing Pytest Fixtures
  7. 10 Minutes
  8. How I Make Choices
  9. Feature Flags at Building Radar
  10. Say Maybe to Hell Yeah
  11. 7 habit-building techniques I learned from 'Atomic Habits'
  12. Simplifying PostgreSQL enum migrations with SQLAlchemy and alembic-enums
  13. Most Popular Posts of 2022
  14. Surviving Late Night Events

2022 22

  1. Stop Me Before It's Too Late
  2. Pydantic as a Backward Compatibility Layer
  3. Resolve Discussions
  4. Long name, short body
  5. AWS Certified Developer
  6. Opportunistic Refactoring
  7. Python Performance Profiling
  8. AWS SAM
  9. My setup for a typescript react project
  10. GitHub Copilot
  11. Be kind to your manager
  12. Parse JSON-encoded query strings in FastAPI
  13. AWS Surprise Bill
  14. State of JS 2021
  15. DynamoDB
  16. 1984 is now
  17. Elastic Beanstalk
  18. Django Plausible Proxy
  19. Shared database antipattern. A three-legged race
  20. Tech debt hackathons are a waste of time
  21. You can use Pydantic in SQLAlchemy fields
  22. Dealing with large pull requests

2021 10

  1. Optimize pip install with wheels
  2. How to pretty print SQL from Django
  3. User Stories for small teams and individuals
  4. SQLAlchemy and Alembic notes
  5. Codemaps Leaflet
  6. Time Series Caching with Python and Redis
  7. Flow: The Psychology of Optimal Experience
  8. Structure Flask Project With Convention Over Configuration
  9. 21 tools to document your Python project
  10. Linter for Python Architecture

2020 13

  1. Product Management. Explanation for Developers
  2. Meeting culture for seniors and veterans
  3. Don't let dicts spoil your code
  4. 4 Reading mistakes I made
  5. Alignment Matters
  6. Python code cleanup for beginners. 12 steps to readable and maintainable code.
  7. Boring Meetings and Multitasking
  8. On Burnout
  9. 5 reasons to love Python type hints
  10. Accelerate. Five-minute summary
  11. Feature Branching vs. Continuous Integration
  12. On the Code Ownership
  13. On Feature Flags at Doist

2001 8

  1. Aws
  2. Docker and docker-compose
  3. External links
  4. Git
  5. Poetry
  6. Pydantic
  7. Python project
  8. Quote of the Day Privacy Policy

Undated 1

  1. All popular posts →