بلاگ

$ cat GITLAB .md
· 7 دقیقه مطالعه

رجیستری تو ۴۵ میلی‌ثانیه جواب می‌داد. بیلد دو دقیقه بیشتر طول می‌کشید.

بعد از یه migration سرور، بیلدها روی یه package registry ی self-hosted دو دقیقه کندتر شدن و همه‌ی گزارش‌ها انگشت رو گذاشتن روی همون جابه‌جایی. در حالی که هر request ی fail‌شونده تو ۴۵ میلی‌ثانیه ۵۰۰ برمی‌گردوند؛ کلِ regression همون retry backoff ی npm بود. ریشه‌اش یه دونه row از میون ۶۳هزارتا بود که هنوز به یه object store اشاره می‌کرد که دیگه وجود نداشت، و check یی که دقیقاً برای گرفتن همین نوشته شده بود، یه لیست دست‌نویس از table ها رو می‌چرخوند و از روش رد شده بود.

gitlab debugging migration reliability observability
$ cat AI .md
· 9 دقیقه مطالعه

Opus 5.5 با ۴۰٪ قیمت Fable 5.1 ازش جلو می‌زنه. جدول benchmark رو دوبار بخون.

Anthropic امروز Opus 5.5 رو با قیمت ۴ و ۲۰ دلار برای هر میلیون token عرضه کرد، و جدول خودش اون رو تو agentic coding جلوتر از Fable 5.1 و GPT-6 Astra نشون می‌ده. عددهای مستقل کوچیک‌ترن، عددهای کیفیت کد قاطی‌ان، و دیگه نمی‌شه thinking رو خاموش کرد. Sonnet 5.5 هنوز نیومده.

ai llm anthropic claude opus benchmarks
$ cat GIT .md
· 7 دقیقه مطالعه

۸۴ تا repository ناپدید شدن. راه‌حل mkdir بود.

S3 چیزی به اسم directory خالی نداره، و تو یه git repository ی کاملاً packed شده، directory های refs دقیقاً همون‌ان: خالی. یه sync ی فایل‌به‌فایل همه‌ی object ها رو سالم منتقل کرد ولی دو تا directory یی که git لازم داره تا به چیزی بگه repository رو drop کرد، پس از ۵۱۷ تا، ۸۴ تا به شکل خوانا‌نشدنی برگشتن در حالی که database هنوز می‌گفت commit دارن. health check های migration هم کل مدت سبز موندن، چون هیچ‌کدوم هیچ‌وقت یه repository رو باز نمی‌کنن.

git aws s3 gitlab mechanism
$ cat KUBERNETES .md
· 8 دقیقه مطالعه

constraint ارضا شده بود. با این حال zone خالی بود.

یه topologySpreadConstraint هیچ‌وقت چیزی بیشتر از یه statement درباره‌ی جمعیتی نیست که selector ش match می‌کنه، و یه label ای که operator ست کرده می‌تونه بی‌صدا sibling Deployment ها رو بریزه توی یه شمارش مشترک. سه تا collector تک‌تک zone spread ی hard خودشون رو ارضا کردن، در حالی که union شون یه zone رو خالی گذاشته بود، و repair ی استاندارد هر دفعه روی همون جواب غلط converge می‌کرد.

kubernetes scheduling opentelemetry finops mechanism
$ cat CLICKHOUSE .md
· 9 دقیقه مطالعه

۱۳۶ میلیون PUT برای ۱۷ GiB داده

object storage به ازای هر operation پول می‌گیره، و یه part ی ClickHouse روی disk ی S3 یه object نیست، به ازای هر column یه object ـه. پس هزینه‌ی یه cold tier تابع اینه که چند تا part وجود داره، نه اینکه چند byte توشونه، و هر setting ای که merge ها رو گرسنه بذاره می‌شه یه خط روی صورت‌حساب. دو تا default ی chart دقیقاً همین کارو کردن، و fix ی که جلوش رو گرفت هیچ‌وقت commit نشده بود.

clickhouse s3 finops observability mechanism
$ cat KAFKA .md
· 8 دقیقه مطالعه

ارور ۲۵ ساعت قدیمی بود. کلاینت همه‌ی این مدت سالم بود.

یه wrapper ی Kafka client که recovery اش یعنی شمردن error ها و panic کردن از یه threshold گذشته، recovery ییه که با traffic هم‌قدمه: stream processor ها تو چند ثانیه ازش رد می‌شن، producer های کم‌ترافیک هیچ‌وقت، و برای همینه که آخرین error رو latch می‌کنن و تا بی‌نهایت همون رو برمی‌گردونن، در حالی که همه‌ی signal های سلامت سبزن. سرنخ هم تو خود رقم‌های اروره: elapsed-time یه ارور که بین چند بار رخ‌دادن byte-identical باشه، یه event ی کش‌شده‌ست، نه یه خرابی ی تکرار‌شونده.

kafka resilience mechanism reliability observability
$ cat DATABASES .md
· 7 دقیقه مطالعه

LakeBase ابداع نکرد. فقط fsync رو جابه‌جا کرد.

Databricks LakeBase Postgres یه Postgres ی واقعیه: wire-compatible، با driver های استاندارد، pgvector، PostGIS، و یه query engine ی دست‌نخورده. headline مارکتینگ database branching ـه، Git برای database ت. اون side effect ـه. mechanism اینه که commit path از روی machine برداشته شده: یه transaction وقتی ack می‌شه که یه quorum از safekeeper ها WAL record رو قبول کنه، نه وقتی که یه SSD ی local فلش بشه. branching، scale-to-zero، و point-in-time recovery همه از همین یه جمله درمیان، و هزینه‌هاش هم همین‌طور.

databases postgres architecture mechanism cloud
$ cat LINUX .md
· 7 دقیقه مطالعه

Linux ی که opinion داره، وقتی opinion هاش coherent باشن، دیگه contradiction نیست.

Omarchy تابستون launch شد و 37signals داره کل شرکت رو تو یه بازه‌ی سه‌ساله روش migrate می‌کنه. بخش جالب، بخش Linux ی ماجرا نیست؛ بخش جالب اینه که این اولین distribution ـیه که دیدم توش شخصیت، feature ی اصلیه. قانون قابل انتقال: همون opinionated default وقتی reasoning ش visible ـه feature ـه، و وقتی reasoning ش hidden ـه bug ـه.

linux design opinion product devops
$ cat AI .md
· 6 دقیقه مطالعه

Speculative decoding به این خاطر ship شد که output رو عوض نمی‌کنه.

Liquid AI بیستم آگست LFM2.5-DSpark رو ship کرد: سه draft model تحت لایسنس lfm1.0، با mean speedup ی 2.67× روی H100 و ۵۷٪ کاهش latency ی function-calling روی Apple Silicon. عدد headline کم‌جالب‌ترین چیز release ـه. چیز جالب اینه که چرا این جور release اصلاً می‌تونه ship بشه. Speculative decoding تحت greedy decoding exact ـه، یعنی output رو عوض نمی‌کنه. اون property کل بازیه.

ai inference speculative-decoding mechanism performance
$ cat OBSERVABILITY .md
· 7 دقیقه مطالعه

pipeline قدیمی ~۴۷هزار span از دست داده بود. نداده بود. ما اشتباهی می‌شمردیم.

تو یه parallel-run validation، یه مقایسه‌ی side-by-side از span count به‌ازای هر service نشون داد که pipeline جدید حدود ۰.۲٪ از span ها رو تو یه پنجره‌ی ۶۰ دقیقه‌ای از دست می‌ده. اگه به‌عنوان regression تو pipeline جدید خونده می‌شد، یه rollback trigger می‌کرد. اگه درست خونده می‌شد، یعنی pipeline قدیمی تو یه پنجره‌ی چندثانیه‌ای ده‌ها هزار ردیف duplicate داشت insert می‌کرده. storage layer روی چیزی که داره count می‌شه unique constraint نداره؛ واحدی که به‌عنوان 'count' expose می‌کنه همون واحدی نیست که operator فکر می‌کنه.

observability clickhouse verification troubleshooting devops
$ cat DOCKER .md
· 5 دقیقه مطالعه

یادداشت گفته بود image غلطه. image درست بود. سه تا چک هم تأیید کردن.

یه یادداشت توی knowledge bundle پروژه گفته بود image فقط amd64 هست و ممکنه روی Graviton کار نکنه. سه تا چک مستقل هم تأییدش کردن. image فقط amd64 نبود، و یه build arm64 بدون هیچ تغییری تو source جواب داد. یه ادعایی که سه بار verify شده، خطرناک‌ترین شکل یه ادعای غلطه.

docker arm64 verification knowledge-management devops
$ cat KAFKA .md
· 8 دقیقه مطالعه

درباره‌ی یه سیستم live سه تا چیز infer کردم. دوتاش غلط بود.

تو یه هفته سه بار درباره‌ی یه migration زنده یه ادعا کردم، از روی یه config file، یه name prefix، یا یه template، و دوبار اون ادعا غلط بود. artefact و سیستم live دو تا دید از یه چیزن، و می‌تونن به دلایلی با هم match کنن که artefact نمی‌تونه بگه‌شون. فقط یکی‌شون حقیقته.

kafka opentelemetry terraform troubleshooting devops
$ cat TERRAFORM .md
· 8 دقیقه مطالعه

پلن سبز بود چون دو تا از سه دید با هم موافق بودن. اون یکی حقیقت بود.

یه terraform plan برای یه observability stack مدیریت‌شده بعد از یه incident fix دستی clean برگشت. fix زنده بود، fix تو file بود، و فقط state عقب بود. یه plan یه diff بین دو تا دیده، ولی سیستم سه‌تا داره. قبل از plan زدن هر سه‌تا رو خوندن همون چیزیه که diff سبز رو از حدس تبدیل به تصمیم می‌کنه.

terraform helm eks state troubleshooting devops
$ cat OPENTELEMETRY .md
· 7 دقیقه مطالعه

کانفیگ byte به byte عین production بود. همین چیز اشتباهی رو ثابت کرد.

یه config برای collector دوباره ساختیم، byte به byte با نسخه‌ی روی production مقایسه‌ش کردیم، مو نمی‌زد، و با یه عالمه چک سبز پشتش deploy کردیم. سر startup افتاد تو crash-loop. byte-identical یه خاصیت واقعیه؛ فقط جواب سؤالیه که هیچکس نپرسیده بود.

opentelemetry kafka terraform devops troubleshooting
$ cat AWS .md
· 6 دقیقه مطالعه

دو تا لایه‌ی DNS که وقتی هر دو سبزن، عین همن

یه VPC تو یه account نمی‌تونست اسم‌های یه private zone مال یه account دیگه رو resolve کنه. peering سالم بود، route ها درست بودن، اون flag مربوط به DNS resolution هم تیک خورده بود. هر سیگنالی سبز بود، و جواب هنوز NXDOMAIN بود، چون دو تا لایه‌ی متفاوت DNS یه چراغ سبز مشترک تنشون کرده بودن.

aws route53 dns vpc networking troubleshooting
$ cat CDKTF .md
· 6 دقیقه مطالعه

باگی که تقصیرشو انداختم گردن provider

هفته‌ها یه terraform plan یه drift نشونم می‌داد که نمی‌تونستم درستش کنم، روی یه S3 bucket که از قبل درست config شده بود. گذاشتمش تو دسته‌ی «یه گیر عجیب از AWS provider». اما provider بی‌گناه بود. کد خودم داشت بهم دروغ می‌گفت، خیلی قبل‌تر از اینکه Terraform اصلاً ببینتش.

cdktf terraform iac typescript devops troubleshooting
$ cat KUBERNETES .md
· 8 دقیقه مطالعه

اون EKS 401 که هیچ ربطی به credential نداشت

CI pipeline ما یه EKS token معتبر درست می‌کرد، تمیز ارائه می‌داد، و رد می‌شد. مشکل credential های AWS نبود. access control خود EKS بود، و failure داشت توی RBAC کلاستر، open و clear، قایم می‌شد.

kubernetes eks aws devops platform-engineering troubleshooting
$ cat AUTOMATION .md
· 7 دقیقه مطالعه

چطور با Hermes Agent زندگی دیجیتالم رو خودکار می‌کنم

Hermes Agent روی مینی‌پی‌سی من اجرا می‌شه، مک من رو می‌گردونه و کارهای دور و بر وبلاگ و یوتیوب و مالیاتم رو انجام می‌ده، تا وقتم رو بذارم روی بخش‌هایی که واقعاً به من نیاز دارن. اینجا می‌گم چطور کار می‌کنه.

automation ai productivity self-hosting agents
$ cat AI .md
· 9 دقیقه مطالعه

Opus 5 اومد، با نصف قیمت Fable 5. benchmarkها عالی‌ان، ولی داستان اصلی تغییرات API هست.

Opus 5 بیست‌وچهارم ژوئیه به‌عنوان مدل پیش‌فرض جدید Anthropic عرضه شد. جدول benchmark با نصف هزینه، فقط یه گِرد کردن رقم با Fable 5 فاصله داره. ولی چیزی که واقعاً روزت رو عوض می‌کنه آروم‌تره: حالا thinking به‌صورت پیش‌فرض روشنه، و این چند تا فرضی که از زمان 4.8 با خودت حمل می‌کردی رو به‌هم می‌ریزه.

ai llm anthropic claude opus
$ cat DNS .md
· 7 دقیقه مطالعه

یه رکورد DNS رو دوبار پاک کردم. بار سوم پرسیدم چرا.

یه endpoint عمومی توی سه روز دو بار قطع شد، و هر دو بار همون fix پنج‌دقیقه‌ای جواب داد: پاک کردن یه رکورد AAAA یتیم. باگ واقعی یه رکورد ownership توی DNS بود که هیچ‌وقت نمی‌تونه خودش رو صاحب بشه، دقیقاً روی apex یه zone دلگیت‌شده.

dns aws route53 kubernetes devops
$ cat KUBERNETES .md
· 7 دقیقه مطالعه

کلاستر جدید روی هر node تا ۱۱۰ تا pod می‌برد. Production روی ۵۸ گیر کرده بود.

همون instance type، نصف تراکم pod. بالا بردن max pods روی یه کلاستر EKS زنده یعنی: یه launch template که node group هیچ‌وقت نمی‌تونه بگیردش، یه تنظیم CNI که باید اول بشینه، و یه Terraform plan پر از تغییرهایی که هیچ‌کس سفارش نداده بود.

kubernetes aws eks terraform devops
$ cat AI .md
· 17 دقیقه مطالعه

Sonnet 5 اومد. من پرسیدم چی عوض شده. این چیزیه که فهمیدم.

می‌خواستم بفهمم بین Sonnet 5 و Sonnet 4.6 از نظر معماری چی عوض شده. Anthropic چیزی نمیگه. برای همین system card صد و چهل و شش صفحه‌ای رو خوندم و در نهایت یه راهنمای ساده از همه benchmarkهاش نوشتم.

ai llm anthropic claude benchmarks
$ cat KUBERNETES .md
· 5 دقیقه مطالعه

اپ REDIS_PORT رو می‌خوند. Kubernetes قبلش مقدارش رو عوض کرده بود.

هر view که به cache دست می‌زد 500 برمی‌گردوند، ولی health check سبز بود. مقصر یه Service به اسم redis بود و enableServiceLinks؛ یه پیش‌فرض قدیمی Kubernetes از دوران Docker که متغیرهای محیطی‌ای تزریق می‌کنه که هیچ‌وقت نخواستی.

kubernetes devops debugging django
$ cat KUBERNETES .md
· 5 دقیقه مطالعه

کنترل‌پلین برای ایجنت‌ها: Omnigent روی Kubernetes

Databricks یه Meta-Harness به اسم Omnigent رو open source کرد که هر agent harness رو پشت یه API واحد با policy، session و state مشترک جمع می‌کنه. اگه قبلاً یه سرویس stateful روی Kubernetes deploy کردی، مسیر self-hosting این ابزار خیلی کوتاه‌تر از چیزیه که فکرش رو بکنی.

kubernetes devops platform-engineering ai-agents
$ cat KUBERNETES .md
· 10 دقیقه مطالعه

StackGres و Strimzi: درس‌های Day-Two از یه Rebuild واقعی

هر operator یه setup ساده‌تر قول می‌ده. ارزش واقعیش وقتی معلوم می‌شه که یه replica control file‌ش رو گم کرده یا یه certificate سه هفته دیگه expire می‌شه. این چیزیه که StackGres و Strimzi برای ما در اجرای PostgreSQL و Kafka روی Kubernetes عوض کرد.

kubernetes operators postgresql kafka devops platform-engineering
$ cat KUBERNETES .md
· 6 دقیقه مطالعه

Helm Deploy موفق بود. Config هیچ‌وقت اعمال نشد.

یه CI pipeline سبز در حالی که gateway زنده 404 برمی‌گردونه، یه test failure نیست. یه شکاف reload خاموشه. اینجا pattern checksum چند-release ای هست که توی helmfile این مشکل رو حل می‌کنه.

kubernetes helm helmfile devops platform-engineering
$ cat AI .md
· 12 دقیقه مطالعه

بلاگم الان خودکار توی اینستاگرام پست میذاره. اینم pipeline ای که پشتشه.

یه pipeline ساختم که RSS Feed بلاگمو می‌خونه و بدون اینکه دست بزنم، carousel های اطلاعاتی توی اینستاگرام پست می‌کنه. چیز جالب اتوماسیون نیست؛ اینه که چطور agent ها ساختنش و چی شکستن.

ai ai-agents automation python instagram
$ cat AI .md
· 8 دقیقه مطالعه

بیست و پنج مدل open-weight در یه هفته. بررسی یه متخصص.

هفته گذشته بیش از ۲۵ مدل open-weight در همه مودالیتی‌ها منتشر شد. اینجا می‌بینیم هر کدوم چیکار می‌کنن، کدوما واقعاً قابل استقرارن، و این هفته برای تیم‌های زیرساختی چه معنایی داره.

ai llm open-source machine-learning
$ cat DEVOPS .md
· 5 دقیقه مطالعه

گیت‌لب داره هسته‌اش رو برای عصر ایجنتی از نو می‌سازه. وقتش هم درسته.

ابزارهای کدنویسی هوش مصنوعی فقط سریع‌تر کد نمی‌نویسن. اونا به مراتب فعالیت Git، pipeline run و سربار context بیشتری نسبت به انسان‌ها تولید می‌کنن. اعلامیه‌های Transcend 2026 گیت‌لب بالاخره این مشکل رو جدی می‌گیره.

devops gitlab ai-agents platform-engineering ai
$ cat AIAGENTS .md
· 8 دقیقه مطالعه

Hermes Agent روی EKS: از docker-compose تا Helm

ایجنت هوش مصنوعی خودآموز Nous Research در یه محیط پروداکشن-محور روی EKS. ECR خصوصی،، IRSA، مدیریت API Key به عنوان Secret، و یه Helm Chart سفارشی که از روی manifest خام ساختیم.

ai-agents aws eks kubernetes llm helm devops
$ cat KUBERNETES .md
· 4 دقیقه مطالعه

توضیح Finalizers در Kubernetes: چرا Namespaceها در وضعیت Terminating گیر می‌کنند

آیا تلاش کرده‌اید یک Namespace در Kubernetes را حذف کنید و دیده‌اید که به‌طور مداوم در وضعیت Terminating گیر کرده است؟ عامل اصلی معمولاً finalizers هستند — فیلدهای خاص metadata که تا تکمیل عملیات پاک‌سازی، از حذف منبع جلوگیری می‌کنند.

kubernetes devops debugging
$ cat AI .md
· 3 دقیقه مطالعه

آینده هوش مصنوعی: چگونه محاسبات GPU و انتقال به WebGPU زندگی روزمره ما را شکل خواهد داد

انتقال به WebGPU برای هوش مصنوعی و محاسبات GPU نمایانگر یک تغییر محوری در نحوه تجربه فناوری هوش مصنوعی است — دموکراتیزه کردن دسترسی به قابلیت‌های پیشرفته.

ai gpu webgpu
$ cat MLOPS .md
· 3 دقیقه مطالعه

متحول‌سازی توسعه و استقرار هوش مصنوعی: مزایای MLOps نسبت به رویکردهای سنتی مبتنی بر ابر

چگونه عملیات یادگیری ماشین (MLOps) توسعه هوش مصنوعی را با ساده‌سازی ایجاد و استقرار مدل در مقایسه با رویکردهای سنتی مبتنی بر ابر متحول می‌کند.

mlops ai devops kubernetes