TGViewer
کدهالیک | codehalic کدهالیک | codehalic @codehalics · 4.16K subscribers
Post #442 513
کدهالیک | codehalic خب امروز میخوام برم ادامه قوانین مهندسی نرم افزار رو بازگو کنم براتون و امروز راجب یه اصل بسیار پر تکرار قراره صحبت کنیم که قطعا خیلیاتون اسمشو شنیدید ! اصل KISS (Keep It Simple, Stupid) تو مهندسی نرم‌افزار میگه تا جای ممکن راه‌حل‌هات رو ساده نگه دار و الکی…
مثل همیشه یه مثال واقعی از دنیای کار خودم بزنم درباره KISS.

قرار بود تو یه پروژه خیلی خفن جوین بشم، تیم هم واقعاً قوی بود و همه‌چیز عالی پیش می‌رفت تا اینکه یه مدیرفنی به تیم اضافه شد. از روز اول شروع کرد به اینکه این باندد کانتکست‌ها باید جدا شن، اینو میکروسرویس می‌کنیم، اینجا RabbitMQ می‌ذاریم، اونجا Kafka، مانیتورینگ با Zabbix، حتماً Kubernetes، بعدش هم Rancher بیارید بالا و خلاصه یه لیست بلندبالا از تکنولوژی‌ها که انگار بدون اینا پروژه اصلاً معنی نداره.

مشکل اینجا بود که ما کلاً از اصل ماجرا دور شدیم. به‌جای اینکه روی خود محصول تمرکز کنیم، افتادیم توی داستان بالا آوردن کلاستر، داکر، کوبرنتیز و هزار تا ابزار دیگه.

حالا شرایط چی بود؟
یکی اینکه time to market خیلی پایین بود، نهایتاً یه ماه وقت داشتیم محصول رو بدیم بالا. دوم اینکه بیزینس بودجه محدودی داشت و این همه زیرساخت پیچیده واقعاً هزینه‌بر بود.

از همون اول هم معلوم بود این پروژه به مشکل می‌خوره. در نهایت هم همین شد، پروژه فیل شد و اون مدیرفنی هم از تیم کنار گذاشته شد.

بعد از ما یه تیم دیگه اومد و کاری که ما نتونستیم بکنیم رو انجام داد: یه مونولیت ساده ساختن که هسته بیزینس درست کار می‌کرد، روی یه سرور ویندوزی با IIS. نه خبری از داکر بود، نه کوبرنتیز، نه Vault، نه مانیتورینگ‌های عجیب.

پروژه اونا هم در نهایت به دلایل بیزینسی موفق نشد، ولی فرقش این بود که اونا حداقل خودشونو درگیر پیچیدگی‌های الکی نکرده بودن و تمرکزشون روی اصل کار بود.

جمع‌بندی: وقتی برای یه پروژه ۵۰ تا یوزر داری میری سمت Kubernetes و کلی ابزار سنگین، داری عملاً کار رو خراب می‌کنی. هر جا دیدی داری بیش‌ازحد کمال‌گرایی می‌کنی، یه KISS به خودت بگو و یه چیز ساده، قابل فهم و قابل نگهداری بساز.

و اینم بگم که تصور آدما از سنیور اینه که میاد یه کد خفن مینویسه که واو ولی نه سنیوری سنیوره که KISS اگ نتونه همین KISS رو بفهمه هیچی بارش نیست !
من یکیو میشناختم که الان سنیور یکی از لاین های بیزنسی مرسدس بنزه این بشر به قدری زیبا کد مینوشت و ساده مینوشت و ساده بیانش میکرد که لذت میبردی انگار داره برات خطاطی میکنه انقد قابل فهم بود کدی که مینوشت و با دلیل برات لایو مینوشت ! اون آدم مرسدس بنز که سهله جاهای دیگ رو سرشون میزاشتن یه نابغه به تمام معنا بود کسی که اوج پیچیدگی بیزینس رو تو چند خط کد شیوا بیانش میکرد !

#lawsofsoftwareengineering

@codehalics | کدهالیک
  • 👍 6
  • ❤ 4
More from @codehalics
  1. Oct 9, 2026حالا که فهمیدیم WAL چیه، بیاید ببینیم پس بک‌آپ (Backup) این وسط چکاره است؟ فرض کنید WAL هم…
  2. Oct 9, 2026دیتابیس‌ها چطور هم سرعت بالایی دارن و هم با کرش کردن سیستم، دیتا رو از دست نمیدن؟ کلید ماج…
  3. Oct 9, 2026ابزار REA یا همون Reverse Engineer Anything یه ابزار CLI و مبتنی بر پروتکل MCPئه که به ایج…
  4. Oct 8, 2026بوت‌استرپ ۶ نسخه آلفا ۱ منتشر شد و جالب‌ترین تغییرش اینه که رسماً داره می‌ره سمت سبک تیلوی…
  5. Oct 8, 2026کتابخونه Replicant یه ابزار کاربردی تو دات‌نته که با اضافه کردن یه لایه کش رو دیسک برای Ht…
  6. Oct 7, 2026این نکته رو هم اضافه کنم که این مورد داره ۲ اصل از اصول SOLID رو رعایت میکنه ! اول DIP (مع…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →