TondTech – Telegram
TondTech
2.6K subscribers
1.47K photos
169 videos
133 files
1.14K links
کالای ما دانش است


تبلیغات نداریم
Download Telegram
کپشن با نمک فنی با شما..
🤣14
Forwarded from Learning With M
This media is not supported in your browser
VIEW IN TELEGRAM
این روحیه مهندس نرم افزاریه که من دنبالشم.

الان اپلای کنید

#استخدام
💯10
بالاخره روزش رسید که با این عزیز دل خداحافظی کنم.
ASUS ROG Strix SCAR 15 G533ZS HF022W
پردازنده Core i9 12900H
رم ۳۲ گیگ
حافظه 1 ترابایت SSD
کارت گرافیک RTX 3080 با ۸ گیگ GDDR6
صفحه ۱۵.۶ اینچی FHD با نرخ نوسازی ۳۰۰ هرتز عالیه برای گیمینگ سنگین و کارهای حرفه‌ای

قیمت دست دومش تو بازار حدود 220 هست، دست یه CTO بوده که گوشه خونه ش خاک میخورده و گه گداری ریموت میزده باهاش. کار سنگینی هم باهاش انجام نشده واقعا

اگر بهش نیاز دارین بهم پیام بدین @Merkousha
🔥16😭3👎1
Forwarded from Learning With M
تا حالا شده با کسی صحبت می کنید که سرشار از اطلاعات هست و وقتی باهاش صحبت می کنید می بینید چه قدر این آدم دقیقیه؟
یکم که پیش میرید می بینید که هی به کتاب های مختلفی که خونده شمارو ارجاع می ده.
این آدهم ها(برای من) خیلی آدم های با اهمیت و مهمی هستند.
من همیشه برای جای سوال داشت که چه طور این همه خوب به خاطر میارن و شاید مهمتر اینکه، چطور انقدر مطالعه می کنند.

سهیل از همین نوع آدم هاست، سهیل صمدزاده، مربی و استاد بزرگ من.

این شد که حدودا ۲ سال پیش روش سهیل رو ازش پرسیدم و خیلی برام مفید بود. بعد از دو سال مجدد از سهیل خواهش کردم روشش رو برای من توضیح بده که بتونم رکورد کنم و برای بقیه پخشش کنم.

این شما و این هم توضیحات سهیل عزیز:
https://youtu.be/Wts_m3GCYPk?si=1-nxyYnojtUnvjxd
9🔥3🤩1
Forwarded from tech-afternoon (Amin Mesbahi)
اصول نرم‌افزارهای انترپرایز یا Enterprise Software Principles
1️⃣ بخش یک: ساختار و سازمان‌دهی تولید (ابزار، فرایند، فرهنگ)

- ساختار و سازمان‌دهی تولید چیه؟

ساختار و سازماندهی تولید نرم‌افزار رو من ذیل ۳ مولفه اصلی بیان می‌کنم. یعنی فرهنگ، فرایند، و ابزار:

۱: ابزار:
ابزار را شاید بشه ساده‌ترین مولفه از بین ۳ عامل دونست (هرچند خیلی‌ها همین رو هم به درستی ندارن). ابزار یعنی هر سرویس سخت‌افزاری و نرم‌افزاری که به شما کمک می‌کنه تا چرخه عمر نرم‌افزار رو بهتر مدیریت و تجربه کنید. مثلا:

پلتفرم مناسب برای مستندسازی که جستجوی خوب، نسخه‌بندی، امکانات امنیتی، کامپلاینس، پشتیبانی از نمودار (به‌صورت کد، نه صرفاً تصویر)، و کوئری پویا از سورس‌کد یا سیستم مدیریت پروژه رو فراهم کنه.

یا سرور/سرویس Version Control و CI/CD درست و حسابی (منظورم TFS 2012 اونم به صورت شلخته نیست)

یا ابزارهای مدرن نظارت (منظورم observability است نه monitoring)

یا سرویس Secret Manager (منظورم KeePass نیست طبیعتا)

یا...

۲: فرایند:
از ابتدای چرخه، چه توسط تیم بومی، چه توسط پیمانکار، و چه به‌صورت خریداری محصول؛ باید فرایند داشت. فرایند برای استفاده از ابزارها، برای مستندسازی، برای نگهداشت اطلاعات محرمانه، برای نظارت و بازبینی روال‌ها، حتی برای اینکه چجوری و با چه تناوبی تغییر ورژن‌ کتابخونه‌ها و ابزارها، آسیب‌پذیری‌ها، تغییر لایسنس‌ها و غیره رو مطلع شیم و در موردشون تصمیم بگیریم. یا اینکه طی چه فرایندی و توسط کی، تضمین کنیم که فرایندها در طول زمان، فراموش یا ناکارآمد نشن. این‌ها همه و همه فرایندهایی هستن که تدوین و جا انداختنشون هزینه و زمان نیاز داره.

همچنین دانش مورد نیاز برای تدوینشون بارها پیچیده‌تر از یاد گرفتن سینتکس فلان زبانه و گاها گرون‌تر! چون باید متناسب با بضاعت و استعداد سازمان انجام بشه؛ چون گاها حرف و عمل مدیران و کارشناسان سازمان‌ها در التزام به فرایندهای جدید، یکی نیست و یا مقاومت‌های مرئی و نامرئی زیادی تجربه خواهیم کرد.

۳: فرهنگ:
ابزار و فرایند، قابل خریداری و استقرار هستن؛ اما موفقیت اون‌ها منوط به پذیرش و التزام عملی تیم است. تجربه نشون می‌ده که بدون فرهنگ مناسب، بهترین ابزارها هم در عمل نادیده گرفته می‌شن؛ و بهترین فرایندها به حاشیه رانده میرن.
فرهنگ‌سازی، حتی از تدوین و استقرار فرایند هم سخت‌تره! فرهنگ نیروی انسانی و فرهنگ سازمانی چیزی نیست که یک شبه به دست بیاد، محصول قابل خریداری و استقرار سریع نیست!

فرق سازمان با جامعه اینه که شما در جامعه وقت، زیاد داری! بین رنسانس تا انقلاب صنعتی چند قرن زمان برد، ولی یک سازمان چند قرن یا چند سال زمان نداره! حساب دو دو تا چهار تا است؛ دیر بجنبی زیان‌ده و ورشکسته می‌شی. حتی اگر دولتی باشی، به خودت میای و می‌بینی ۲,۲۴۵,۶۲۳ نفر کارمند داری که راهی جز تعدیل و جایگزینی درصد بسیار بالایی از اونها نداری... و دلیل اصلیش: «فرهنگ نیروی انسانی» است

همون‌طور که در ادبیات Enterprise Architecture اومده "Culture Ensures Sustainability" فرهنگ، پایداری رو تضمین می‌کنه. حالا فرهنگ مهندسی در اینجا به معنی ترکیب سه عامل است:

۱. شایستگی فنی (Technical Competence):
تسلط بر معماری، الگوهای طراحی، و...

۲. تعهد به فرایند (Process Commitment):
پایبندی به code review، testing، و documentation

۳. مهارت در ابزار (Tool Proficiency):
استفاده مؤثر از CI/CD، و observability tools

بعضی گزارش‌های McKinsey می‌گن حدود ۷۰٪ پروژه‌های تحول دیجیتال، به دلایل فرهنگی و سازمانی شکست می‌خورن. تجربه شخصی من در ایران این عدد رو حتی بالاتر، و حدود۹۰٪ نشون می‌ده.

تغییر فرهنگ، کندترین و حیاتی‌ترین بخش transformation است و نیازمند ۳-۵ سال زمان، تعهد مدیریت ارشد، و گاهی جایگزینی تدریجی ۲۰-۴۰٪ نیروی انسانی است.

به فرض، اگر فردا تحریم برداشته بشه، فلان شرکتِ استارتاپی دیروز که امروز نسبتا بالغ شده، شاید خیلی زود بتونه از سرویس‌های متنوع کلادی بهره بگیره و پرسنلش کاراتر عمل کنن. ولی فلان سازمان دولتی تا سال‌ها درگیر انواع مقاومت‌ها و مباحثات زمان‌بر درباره تغییرات هرچند ساده است. پس ابزار، مولفه‌ی ساده‌تر، فرایند مولفه‌ی دشوار، و فرهنگ رو می‌تونیم مولفه‌ی حیاتی و بسیار بسیار دشوار برشمریم!

چکیده:
- Tools Provide Acceleration, Not Discipline
- Processes Create Predictability
- Culture Ensures Sustainability


اگر از این مطلب استقبال بشه، در ادامه، موضوعات زیر رو هر کدوم ذیل ۳ مولفه‌ای که در این مقدمه عرض کردم در یک نرم‌افزار انترپرایز بررسی می‌کنم:

بخش دوم: الزامات توسعه و نگهداری محصول
بخش سوم: الزامات زیرساخت
بخش چهارم: الزامات امنیت
بخش پنجم: الزامات طراحی و نگهداشت محصول

💬 فیدبک شما حتمن در جهت‌دهی ادامه مطالب کمک می‌کنه 😊
Please open Telegram to view this post
VIEW IN TELEGRAM
12
«اگر ندانی چرا موفق شدی، دیر یا زود همان چیز تو را زمین می‌زند.» این حسِ مشترکِ خیلی‌ از برندهای بزرگ است که یک روز بیدار شده‌اند و فهمیده‌اند دیگر شبیه «خودِ قدیمی‌شان» نیستند. یادداشت اکونومیست دقیقاً درباره همین لحظه است؛ لحظه‌ای که شرکت‌ها می‌فهمند مسیر را گم کرده‌اند و مجبور می‌شوند خودشان را دوباره «بنیان‌گذاری» کنند؛ چیزی که جان ایواتا اسمش را گذاشته Refounding.

نایک و استارباکس دو نمونه زنده‌اند. مدیرعامل جدید نایک در اسلاید اولش فقط دو جمله داشت: «نایک یک شرکت ورزشی است» و «نایک شرکتِ رشد است». پیامش ساده بود: برند در سال‌های اخیر آن‌قدر در مد، کالکشن، اینفلوئنسر و تکنولوژی غرق شده که وسواسش روی «ورزشکار» کم‌رنگ شده است. نسخه‌اش برای نایک، برگشتن به همان دی‌ان‌ای اولیه است: دویدن در پیست‌های اورِگُن.

در استارباکس هم مدیرعامل تازه در نامه‌ای نوشت: «دوباره برگردیم به استارباکس.» یعنی از کافی‌شاپِ صرفاً «تحویل موبایل‌اوردر» برگردیم به جایی برای ماندن، مکث کردن، دیدن آدم‌ها. چیزی که این دو را به هم وصل می‌کند همان ایده‌ی «بازگشت به هسته» است: وقتی سال‌ها تصمیمِ ظاهراً منطقی می‌گیری (سهم بازار جدید، محصول تازه، کانال دیجیتال…) در مجموع می‌بینی سازمان آرام‌آرام از خودش جدا شده است.

بعضی وقت‌ها خودِ بنیان‌گذار برمی‌گردد و عملِ «بازبنیان‌گذاری» را انجام می‌دهد؛ مثل استیو جابز در اپل یا هاوارد شولتز در استارباکس. اما همیشه هم لازم نیست مؤسس برگردد؛ مهم این است که مدیر جدید بتواند «شخصیتِ واقعی سازمان» را صریح تعریف کند و از آن مثل خط‌کش استفاده کند. ایواتا می‌گوید شخصیت سازمانی یعنی ترکیبِ یک نیاز ماندگارِ انسانی + یک توانمندیِ منحصربه‌فرد. دیزنی، نیازِ «گریختن از واقعیت» را با توانایی خلق جهان‌های عجیب پاسخ می‌دهد.

رشد، بدون این خط‌کش، دیر یا زود تبدیل می‌شود به پَخش‌وپلا شدن. نه محصول باید هویت ما را زندانی کند (مثل نتفلیکس که به DVD نچسبید)، نه بیانیه‌های «هدف» توخالی جای هویت را بگیرد. هر چند سال یک‌بار باید صادقانه بپرسیم: واقعاً در چه کاری بهترین‌ایم؟ چه نیازی را بهتر از بقیه جواب می‌دهیم؟ و بعد هر تصمیم بزرگ را با همین دو سؤال تراز کنیم. این یعنی شرکت را قبل از آن‌که واقعاً گم شود، دوباره پیدا کنیم.

#بازآفرینی_سازمان #بحران_هویت #مدیریت_استراتژیک #اکونومیست #سپندارند
1
تئوری بسه! بریم ببینیم این الستیک تو عمل چند مرده حلاجه؟
بچه ها قسمت پنجم آپلود شد. تو این قسمت دیگه با DevTools و اینا کاری نداریم، مستقیم وصل شدیم به ASP.NET Core.
جذابیت این قسمت اینه که یه دیتابیس خالی رو برمیداریم، با کلی دیتای رندوم و عجیب غریب پرش میکنیم و بعدش جوری روش کوئری میزنیم که انگار سالهاست داره کار میکنه.

اگه میخوای الستیک رو "جمعش کنی تو مشتت"، این ویدیو مال توئه.

https://www.youtube.com/watch?v=aLWl1gtsl20
6👍3
Forwarded from Learning With M
This media is not supported in your browser
VIEW IN TELEGRAM
من با همش موافقم ولی یه مورد ششم هم من اضافه کنم که به نظرم از همه مهم تره.

اونم اینه که : مدیر ها باید دنبال آدم هایی باشن که رشد می کنن و رشد میدن.
💯53🔥2
اگر نگران ارتباطات درون شرکتی در زمان اختلالات شدید اینترنتی هستید، وقبلا مثلا از Slack یا RocketChat استفاده میکردین، یه رقیب خفن دیگه دارن به اسم https://mattermost.com/
به جز پیام رسانی سازمانیش که خیلی خوبه رو نسخه On-Permise شون ، تو همین نسخه سیستم تماس صوتی اعضا هم داره که خیلی کار راه بندازه و کیفیتش طبق تست های من عالیه.
اگه نیاز داشتین، حتما بررسیش کنین
🔥2
Forwarded from tech-afternoon (Amin Mesbahi)
💡🌱 چرا بیشتر برنامه‌های توسعه شکست می‌خورند؟ مشکل موقعیت‌یابی اشتباه!

وقتی آقای الف، (یک دولوپر از نظر مهارت فنی، جونیور، ولی با ۱۲ سال تجربه) برنامه یادگیری سال جدیدش رو برای من فرستاد تا نظرم رو بگم؛ لیستش از الگوهای طراحی مایکروسرویس تا هوش‌مصنوعی تا... رو در برداشت. ازش پرسیدم: «آخرین باری که یک Pull Request یا Merge Request دادی که به بخش محدودی از نرم‌افزار بهینگی کارایی یا ساختاری اضافه کرده باشه (و نه فقط خواسته‌ی تسک) و کامنت‌های بیسیک هم از دید دولوپرهای ارشد نگرفته باشه کِی بوده؟ پاسخ صریح و مطمئنی نداشت! این دقیقاً جاییه که اکثر برنامه‌های توسعه، چه فردی، تیمی یا سازمانی، شکست می‌خورن: ما به جای شناخت دقیق موقعیت فعلی، مستقیم سراغ مقصد می‌ریم. مشکل: ما نمی‌دانیم واقعاً کجا ایستاده‌ایم.

تصور کنید می‌خواهید از تهران به اصفهان بروید، اما GPS موقعیت فعلی‌تون را اشتباه تبریز نشون می‌ده. هر مسیری که انتخاب کنید، اشتباهه، نه به خاطر مقصد، بلکه به خاطر نقطه شروع. سه سناریوی واقعی از موقعیت‌یابی اشتباه:

1️⃣ سناریو ۱: دولوپر جونیور، آقای الف
موقعیت واقعی: کدهاش هنوز فراتر از خواسته‌ها نیست، متدهاش بنا به دانش کم، و نه ضرورت و اقتضای شرایط، بیش از ۸۰ خط می‌شن، استفاده بجا از الگوهای طراحی رو نمی‌دونه.

موقعیت ادراک‌شده:
آمادگی برای یادگیری معماری‌های پیچیده، فریب عدد سال‌های تجربه، فریب آشنایی با عنوان مفاهیم پیشرفته

نتیجه: سه ماه وقت صرف یادگیری DDD می‌کنه، اما کدهایش همون if/else تودرتوی قبلی با اسامی fancy است. API چت‌جی‌پی‌تی صدا می‌زنه، توهم دانش GenAI داره.

هزینه: ۳۶۰ ساعت وقت + frustration + از دست دادن فرصت یادگیری Clean Code، کسب توهم بیشتر که مثل یک دیوار محکم جلو یادگیری صحیح و به‌جا رو ازش می‌گیره!

2️⃣ سناریو ۲: تیم توسعه (یک استارتاپ ۱۵ نفره)

موقعیت واقعی: Code coverage زیر ۳۰٪، هیچ integration test ندارن، deployment تقریبا دستی است، تیم آلوده به وایب‌کدینگ مخفی شده.

موقعیت ادراک‌شده: آماده رفتن به microservices، توانایی تحویل فیچر و توسعه سریع‌تر (وهم وایب‌کدینگ بدون سنجش میزان کد کثیف و ناکارآمد و ناهمگون)

نتیجه: شش ماه صرف split کردن monolith شد، اما debugging چندبرابر شد چون observability ندارند، روز به روز درک کدها سخت‌تر شده، هر اصلاح با وایب‌کدینگ موجب خطا و مشکل در جای دیگه می‌شه.

هزینه: ۶ ماه × ۱۵ نفر × میانگین حقوق = حداقل ۴.۵ میلیارد تومن + velocity کمتر شده

3️⃣ سناریو ۳: مدیر محصول تازه‌کار

موقعیت واقعی: هنوز نمی‌دونه چطوری یک user story خوب بنویسه یا backlog prioritize کنه

موقعیت ادراک‌شده: آماده طراحی استراتژی سه‌ساله محصول

نتیجه: یک سند ۴۰ صفحه‌ای strategy که هیچ‌وقت اجرا نمی‌شه، چون execution از پایه مشکل داره، مدیران فریفته‌ی محتوای غیرواقعی سند شدن

هزینه: اعتماد تیم + فرصت تمرکز روی مهارت‌های بنیادی

فریمورک سه‌مرحله‌ای برای موقعیت‌یابی صحیح

مرحله ۱: Assessment (ارزیابی بی‌رحمانه سطح فعلی) برای موقعیت‌یابی صحیح، باید از خود سؤالات سختی بپرسید که پاسخ‌شان قابل اندازه‌گیری باشه
و اگر نمی‌تونید موقعیت فعلی را با یک عدد یا fact مشخص کنید، هنوز موقعیت‌یابی نکرده‌اید.

مرحله ۲: Gap Analysis (محاسبه فاصله واقعی) حالا که موقعیت فعلی رو می‌دونید، باید بفهمید دقیقاً یک سطح بالاتر کجاست. نه دو سطح، نه سه سطح؛ فقط یک سطح. این مفهوم را Vygotsky، روان‌شناس روس، دهه ۱۹۳۰ ذیل Zone of Proximal Development (ZPD) تعریف کرده (اگر دوست داشتید بیشتر بخونید). و نشون می‌ده یادگیری فقط در یک باند باریک اتفاق می‌افته:

خیلی آسون » Comfort Zone (یادگیری صفر)
کمی چالش‌برانگیز » Learning Zone (یادگیری حداکثر) ← ZPD همینجاست
خیلی سخت » Panic Zone (یادگیری صفر)

مرحله ۳: Action Planning (طراحی گام اول قابل اجرا) بعد از شناخت موقعیت و تعیین گام بعدی، باید یک برنامه خیلی کوچیک طراحی کنید که در عمل اجرا شدنی باشه.

آمار: ۶۸٪ از مهاجرت‌ها به microservices در سازمان‌هایی که بلوغ کافی نداشتن، منجر به کاهش productivity شد (منبع: ThoughtWorks Technology Radar 2019)
یا ۷۵٪ از برنامه‌های یادگیری سال نو تا پایان فوریه رها می‌شن! (منبع: University of Scranton research) دلیل اصلی: اهداف خیلی بالاتر از سطح فعلی

خلاصه اینکه: فقط یک سؤال از خودتان بپرسید: «اگر بخوام امروز به کسی ثابت کنم دقیقا در چه سطحی هستم، چه عددی یا fact مشخصی می‌تونم نشون بدم؟ و این عدد با چه معیار و سنگ محکی سنجیده شده؟»

اگر پاسخ روشنی ندارید، قبل از هر برنامه‌ریزی دیگه‌ای، اول موقعیت‌یابی کنید.
Please open Telegram to view this post
VIEW IN TELEGRAM
5💯3👍2
باران زد ...
11👍5🕊2
#گزارش_روزانه
روز یکم
درباب تیم ورک و تفویض اختیار
6😍2🔥1
من یه رمان شروع کردم چند وقتیه که این جاست
https://github.com/Merkousha/TheTaleOfDara
دنبال یه راهکاری برای تصویر سازی و ویدیو سازیش هستم که بشه با کد جلو بره و بتونم تصویر کاراکتر ها و صحنه ها رو ثابت نگه دارم، اگه کسی ایده ای داشت خیلی ممنون میشم کمک و راهنمایی کنه
👍73
پنجشنبه آینده یه برنامه خواهیم داشت در باره اینکه چطور یک محصول مبتنی بر AI و Automation همون Refhub.ir خودمون رو به عنوان یک فاندر و دولوپر و نیمچه مدیرمحصولش توسعه دادم.
👍26🔥53
‏بعد از اکسکوینو حالا فلایتیو هم به دلیل شکایت کاربرانش با بحران مواجه شد
🚫پروانه فلایتیو «تعلیق» شد

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

🔹در این نامه اعلام شده که فلایتیو به دلیل عدم انجام تعهدات ایجاد شده و عدم صدور بلیط مسافران پس از واریز وجه توسط آنان و همچنین شکایات متعدد در سامانه حقوق مسافر از تاریخ ۸ آذر به مدت یک ماه تعلیق می‌شود.

روزنامه شرق
👍6👏43🤣2
ماجرای فروش 207 یک میلیون تومانی در دیجی کالا چند تا نکته داشت، قرار بوده یه دونه شو بفروشن یک میلیون تومان ولی ظاهرا سر کنترل نکردن Race Condition 5 تاش فروش رفته !
مسئله ی اصلی اینه که خیلی ها ممکنه توسعه دهنده رو مقصر بدونند، ولی دیتا رو باید چرخوند و دقیق نگاه کرد، دیجی کالا بنا به اعتراف خودش نزدیک 16 همت فروخته در این روز ، پس ضرر این احتمالا توی اون سود گم هست و بیزنسی که احتمالا برای این ایده خلاقانه پاشو روی گردن تیم فنی و محصولش گذاشته بوده با زمان کم هم کم مقصر نیست.
البته ما واقعا از اصل ماجرا خبر نداریم، فقط بلند بلند فکر میکنیم و طبق تجربه ها مون از کامیتونیتی حدس میزنیم که احتمال این اتفاق بیشتر بوده.
نظر شما چیه ؟
👍153