اختلاف سرعت بین هاردهای
توی چندسال اخیر همیشه فقط درگیر استفاده از
روی یک سیستم؛
همهی پارتیشنهای لینوکس رو بردم روی
کانفیگ و ... انجام شد؛ مقداری کار کردن با سیستم نشون میده کرنل، باینری و .... توی کمتر از ثانیه میاد بالا
حتی اجرای اپلیکیشن ها هم سریع هست ولی لود شدن گرافیک برنامهها خیلی کند.
مانیتورینگ با
باینتری برنامهها سریع اجرا میشه چون روی
هست.
راهکار: یا این پوشه رو link کنم و ببرم روی
~/.local
و ... هم دنبالش میره
یا اینکه یک پارتیشن برای
راهکار زیاده که مهم نیست فعلا؛ اما این اختلاف سرعت و میزان پیشرفت هاردهای
اینکه ۸۰ مگ باینری سریعتر از ۷-۸ مگ کانفیگ لود میشه خیلی عجیب بود.
نهایتاً:
مثل
این مدل پارتیشن بندی هم دیگه به زباله دان تاریخ خواهد پیوست.
بنظرم دیگه سودی توی این مدل پارتیشن بندی نیست.
hdd, ssd خیلی زیاد شده : توی چندسال اخیر همیشه فقط درگیر استفاده از
SSD بودم، خیلی کم پیش میومد که برم سراغ HDD؛ مگر برای Cold Archive روی یک سیستم؛
SSD رو قرار دادم و چون هارد HDD هم داشت و حجمش ۲ ترابایت بود گفتم بذارم اونم باشه.همهی پارتیشنهای لینوکس رو بردم روی
SSD به غیر از home (والا اوایل که ssd اومده بود روی سیستمهای هیبرید این ترکیب برنده بود) کانفیگ و ... انجام شد؛ مقداری کار کردن با سیستم نشون میده کرنل، باینری و .... توی کمتر از ثانیه میاد بالا
حتی اجرای اپلیکیشن ها هم سریع هست ولی لود شدن گرافیک برنامهها خیلی کند.
مانیتورینگ با
htop, iotop, iostat نشون داد مشکل اصلی روی هارد هست.باینتری برنامهها سریع اجرا میشه چون روی
ssd هست ولی دیر لود شدن و ... بخاطر این هست که کانفیگهاشون روی~/.config هست.
راهکار: یا این پوشه رو link کنم و ببرم روی
ssd دیتاهاش رو که چندتا دیگه مثل ~/.local
و ... هم دنبالش میره
یا اینکه یک پارتیشن برای
home بسازم روی ssd و .... راهکار زیاده که مهم نیست فعلا؛ اما این اختلاف سرعت و میزان پیشرفت هاردهای
SSD تعجب برانگیز بود اینکه ۸۰ مگ باینری سریعتر از ۷-۸ مگ کانفیگ لود میشه خیلی عجیب بود.
نهایتاً:
مثل
swap روی سیستم شخصی که برای من ۱۰ سالی هست به زبالهدان تاریخ پیوسته.این مدل پارتیشن بندی هم دیگه به زباله دان تاریخ خواهد پیوست.
بنظرم دیگه سودی توی این مدل پارتیشن بندی نیست.
👍30❤2
RandRng
اختلاف سرعت بین هاردهای hdd, ssd خیلی زیاد شده : توی چندسال اخیر همیشه فقط درگیر استفاده از SSD بودم، خیلی کم پیش میومد که برم سراغ HDD؛ مگر برای Cold Archive روی یک سیستم؛ SSD رو قرار دادم و چون هارد HDD هم داشت و حجمش ۲ ترابایت بود گفتم بذارم اونم باشه.…
یک سری تغییرات دیگه؛ حالا که اینترنت انقدر داغون هست نشستم و وقت گذاشتم روی بهبود سرعت لپتاپ :
بعد از جابجایی
به هارد
پس فکر کردم شاید برای
بعد از تغییر این مورد بهبودی توی وضعیت
اول از همه مطمئن بشیم همهی
محدوده فرکانس
برای من بین
بریم یک load برای ۱ دقیقه روی
توی ترمینال دیگری هم این دستور رو اجرا کنیم :
قبل از اجرای دستور پایتون باید پایینترین میزان فرکانس رو ببینید یا نزدیک به اون (برای من
برای من این مقدار از
قبل از هرکاری یک سرچ زدم دیدم روی
و بله مشکل همین بود؛ کرنل ۶ به بعد
رسید به
یعنی ۱ ثانیه سریعتر ۳۸ تا ماژول رو لود کرد؛ اجرای مجدد:
هم نشون میده حالا دیگه به
راضی ام از خودم 👌
پ.ن :
دمای cpu حدود ۶ درجه اومد پایین (خیلی وقت بود 46 درجه رو ندیده بودم الان که لاگ قبلی رو میخونم 54-56 بوده موقع کد زدن، که الان 46 هست؛ یعنی ۸-۱۰ درجه)
بعد از جابجایی
home به هارد SSD و ارسال Downloads, Videos, Documents, ...
به هارد
HDD سلسهای از مشکلات حل شد؛ ولی همچنان سیستم کند میزد.پس فکر کردم شاید برای
CPU باشه و اعداد داره بهم دروغ میگه؛ اول از همه اگر Gnome استفاده کرده باشید میدونید که میتونید حالت Power رو بذارید روی Performance که اولویت بجای باطری روی سرعت پردازش باشه.بعد از تغییر این مورد بهبودی توی وضعیت
CPU ندیدم پس بیشتر بهش پرداختم :sudo apt install linux-cpupower intel-microcode cpufrequtils
اول از همه مطمئن بشیم همهی
core ها روی حالت performance هستند:echo 'GOVERNOR="performance"' | sudo tee /etc/default/cpufrequtils
sudo systemctl restart cpufrequtils
محدوده فرکانس
cpu رو بگیریم :cpupower frequency-info | grep "current policy"
برای من بین
800MHz تا 3.80GHz هست.بریم یک load برای ۱ دقیقه روی
cpu بذاریم ببینیم وضعیت cpu چطوری میشه؛ توی ترمینال اول بریم برای مانیتور کردن cpuwatch -n 0.5 "grep '^[c]pu MHz' /proc/cpuinfo"
توی ترمینال دیگری هم این دستور رو اجرا کنیم :
python3 -c $'import time, itertools\nstart=time.time()\nwhile time.time()-start<60: list(itertools.permutations(range(8)))'
قبل از اجرای دستور پایتون باید پایینترین میزان فرکانس رو ببینید یا نزدیک به اون (برای من
800MHz) بعد از اجرای دستور باید از این مقدار بالاتر باشه و حتی به ماکزیمم هم برسه.برای من این مقدار از
800 روی هیچکدوم از هستههای cpu جابحا نمیشد؛ پس یک بخش دیگه کندی لپتاپم همین بوده.قبل از هرکاری یک سرچ زدم دیدم روی
BIOS قدیمی این مشکل وجود داره؛ پس بدون اینکه تنظیمات کرنل یا سیستم رو دستکاری کنم BIOS update انجام دادم (فقط ۱ ورژن جدیدتر اومده بود ولی خب تستش ضرر نداره) و بله مشکل همین بود؛ کرنل ۶ به بعد
BIOS آپدیت شده رو لازم داشته برای اینکه optimization درست کار کنه.nvim startup time: 1320ms
رسید به
nvim startup time: 237ms
یعنی ۱ ثانیه سریعتر ۳۸ تا ماژول رو لود کرد؛ اجرای مجدد:
watch -n 0.5 "grep '^[c]pu MHz' /proc/cpuinfo"
هم نشون میده حالا دیگه به
3.5GHz هم میرسه.راضی ام از خودم 👌
پ.ن :
دمای cpu حدود ۶ درجه اومد پایین (خیلی وقت بود 46 درجه رو ندیده بودم الان که لاگ قبلی رو میخونم 54-56 بوده موقع کد زدن، که الان 46 هست؛ یعنی ۸-۱۰ درجه)
👍24❤8🗿1
RandRng
یک سری تغییرات دیگه؛ حالا که اینترنت انقدر داغون هست نشستم و وقت گذاشتم روی بهبود سرعت لپتاپ : بعد از جابجایی home به هارد SSD و ارسال Downloads, Videos, Documents, ... به هارد HDD سلسهای از مشکلات حل شد؛ ولی همچنان سیستم کند میزد. پس فکر کردم شاید برای…
این راهکار به کار شما هم میاد
اگر کندی حس میکنید؛
با دستور python و
watch -n 0.5 "grep ..."
شروع کنید؛ وضعیت cpu رو یک نگاهی بندازید و ....
اگر کندی حس میکنید؛
با دستور python و
watch -n 0.5 "grep ..."
شروع کنید؛ وضعیت cpu رو یک نگاهی بندازید و ....
❤14👍3🔥1🗿1
یک شرکت اروپایی از ۳ شنبه هفته پیش تا دیروز؛ ۷ تا از نیروهاش بهم لینکدین پیام دادند برای دعوت به همکاری.
پسر چقدر چندباره کاری دارن اینا.
اگر میشد تو لینکدین گروه زد، خیلی خوب میشد 😂
پسر چقدر چندباره کاری دارن اینا.
اگر میشد تو لینکدین گروه زد، خیلی خوب میشد 😂
😁24🔥3😐3👍1🗿1
This media is not supported in your browser
VIEW IN TELEGRAM
آدم چجوری ذره ذره به بی آبرویی عادت میکنه!
این پست رو یکجایی ذخیره کنید، که هروقت لازم شد؛ ببینید و گوش بدید.
👍46🔥8❤2🗿2
RandRng
یک سری تغییرات دیگه؛ حالا که اینترنت انقدر داغون هست نشستم و وقت گذاشتم روی بهبود سرعت لپتاپ : بعد از جابجایی home به هارد SSD و ارسال Downloads, Videos, Documents, ... به هارد HDD سلسهای از مشکلات حل شد؛ ولی همچنان سیستم کند میزد. پس فکر کردم شاید برای…
بعد از ۲ روز این راهکار روی سیستم من برگشت به حالت قبل و فقط
نشون میداد؛ تمام تنظیماتی که میشد روی کرنل و لینوکس زد رو زدم ولی هیچکدوم دائمی نبود.
در نهایت متوجه شدم؛
(چیز خوبی هست، محافظت میکنه از سختافزار ولی کاش راهکاری برای دور زدنش میذاشتند، که کسی که میدونه چیکار داره میکنه بتونه دورش بزنه)
منم دائماً لپتاپ رو توی برق نگه میدارم (از همون روز اول خرید) خرابی باطری بهتر از خاموشی یکدفعهای بخاطر قطعی برق دستگاه هست (این ممکنه
خلاصه باطری رو در آوردم و برگشتیم به روزهای اوج 👌
800MHz نشون میداد؛ تمام تنظیماتی که میشد روی کرنل و لینوکس زد رو زدم ولی هیچکدوم دائمی نبود.
در نهایت متوجه شدم؛
Asus, Lenovo و MSI توی بعضی مدلها یک EC سختافزاری داره که اگر سلامت باطری کمتر از ۸۵٪ باشه اجازه نمیده CPU بیشتر از حداقل فرکانس کار کنه و چون سختافزاری هم هست هیچ جوری نمیشه تغییرش داد.(چیز خوبی هست، محافظت میکنه از سختافزار ولی کاش راهکاری برای دور زدنش میذاشتند، که کسی که میدونه چیکار داره میکنه بتونه دورش بزنه)
منم دائماً لپتاپ رو توی برق نگه میدارم (از همون روز اول خرید) خرابی باطری بهتر از خاموشی یکدفعهای بخاطر قطعی برق دستگاه هست (این ممکنه
gpu, cpu رو آسیب بزنه) خلاصه باطری رو در آوردم و برگشتیم به روزهای اوج 👌
👍23
من روی یوتیوب هیچ کانال فارسی زبانی رو ندارم؛ سرویس
روی یکی از اکانتهای پر استفادهام چندسال قبل روی پشتیبانی گوگل اعلام کردم که کارم سفر کردن هست تا مشکلاتش حل بشه.
اما توی ۳ روز گذشته؛ غیر از یکی از اکانتها که همه چیز رو بلاک کردم؛ تمام پیشنهادات یوتیوب بهم در مورد
خیلیهاش به زبان انگلیسی
ولی روی اکانت شرکت به زبان آلمانی هم ۲ مورد بود
و روی اکانت دیگری به زبان فرانسه هم داشتم.
نمیدونم چرا دست از سر ما برنمیدارن ؟
البته من برای تمیز نگهداشتن
location و ... رو هم خاموش کردم.روی یکی از اکانتهای پر استفادهام چندسال قبل روی پشتیبانی گوگل اعلام کردم که کارم سفر کردن هست تا مشکلاتش حل بشه.
اما توی ۳ روز گذشته؛ غیر از یکی از اکانتها که همه چیز رو بلاک کردم؛ تمام پیشنهادات یوتیوب بهم در مورد
Persian Empire, Persian DNA, Persian are not Arabs, .... هست.خیلیهاش به زبان انگلیسی
ولی روی اکانت شرکت به زبان آلمانی هم ۲ مورد بود
و روی اکانت دیگری به زبان فرانسه هم داشتم.
نمیدونم چرا دست از سر ما برنمیدارن ؟
البته من برای تمیز نگهداشتن
recommendation سعی میکنم همرو not interested بزنم ولی بنظرم این موضوع خیلی عجیب بود.👍31😐3🔥1
RandRng
من روی یوتیوب هیچ کانال فارسی زبانی رو ندارم؛ سرویس location و ... رو هم خاموش کردم. روی یکی از اکانتهای پر استفادهام چندسال قبل روی پشتیبانی گوگل اعلام کردم که کارم سفر کردن هست تا مشکلاتش حل بشه. اما توی ۳ روز گذشته؛ غیر از یکی از اکانتها که همه چیز…
این اکانت من فقط راجب برنامهنویسی recommendation میخوره
چی بشه که Tech-news, ... هم بیاره اما بعد پست قبلی هر ویدئویی که نگاه میکنم
بسیار مطالبی شبیه مورد سوم از پایین بهم نشون میده. پروندههای CIA راجب ایران؛ تاریخچه ایران؛ تیکه مصاحبه Joe Rogan , ....
چی بشه که Tech-news, ... هم بیاره اما بعد پست قبلی هر ویدئویی که نگاه میکنم
بسیار مطالبی شبیه مورد سوم از پایین بهم نشون میده. پروندههای CIA راجب ایران؛ تاریخچه ایران؛ تیکه مصاحبه Joe Rogan , ....
من ازینا که باور کنم الگوریتم یوتیوب به یکباره بهتره شده باشه نیستم.
اما باور دارم که مدیا و نیوز و ... توانایی کامل توی تغییر دید آدمهای زیادی رو دارند.
👍23❤2🐳2👏1
RandRng
این اکانت من فقط راجب برنامهنویسی recommendation میخوره چی بشه که Tech-news, ... هم بیاره اما بعد پست قبلی هر ویدئویی که نگاه میکنم بسیار مطالبی شبیه مورد سوم از پایین بهم نشون میده. پروندههای CIA راجب ایران؛ تاریخچه ایران؛ تیکه مصاحبه Joe Rogan , ....…
یک نکته دیگه هم میتونه باشه؛ با توجه به اتفاقات اخیر توی کل دنیا درمورد ایران زیاد جستجو و مطلب دیده شده
پس خیلی از کانالهای یوتیوب حتماً راجب این مطلب گذاشتند و ...
پس به همین دلیل هم یوتیوب ویدئوهای قدیمی ایران رو هم دوباره داره
که چون این پترن برای من قبلاً اتفاق نیوفتاده؛ برای همین خیلی برام تعجب برانگیز شده
پس خیلی از کانالهای یوتیوب حتماً راجب این مطلب گذاشتند و ...
پس به همین دلیل هم یوتیوب ویدئوهای قدیمی ایران رو هم دوباره داره
index میکنه که چون این پترن برای من قبلاً اتفاق نیوفتاده؛ برای همین خیلی برام تعجب برانگیز شده
👍21🐳2
RandRng
Teddy Swims – Apple Juice
Ask any one who knows me
Tell me not to, and I only do it again and again times ten
So, who the hell are you to tell me what to do?
Don't you worry, Mama's praying
So I'm never too far gone
Let you know if I need saving, baby
'Til then, I'm pouring another one
👍4🐳2🔥1
تیم ما
ولی با این حال خیلی ضدحال هست روزایی که ۹-۱۰ ساعت کار میکنم تا یک چیزی رو پرفورمنسش رو زیاد کنم یا یک باگ منطقی توی کد رو پیدا و برطرف کنم و تهش میشه:
این هفتهها دائم اینطوری بودم.
atomic کامیت میزنه (در هر لحظه میتونیم به یک کامیت خاص که یک مشکل حتی کوچیک رو حل کرده برگردیم و ...)ولی با این حال خیلی ضدحال هست روزایی که ۹-۱۰ ساعت کار میکنم تا یک چیزی رو پرفورمنسش رو زیاد کنم یا یک باگ منطقی توی کد رو پیدا و برطرف کنم و تهش میشه:
1 commit pushed.
این هفتهها دائم اینطوری بودم.
😁18👍3❤2🗿1
جون هرکی دوس داری تو لینکدین :
۱- با کتابهایی که نخوندی عکس نگیر
۲- تحلیل سیاسی نکن؛ نظر سیاسی بده (حقت هست توی این جامعه داری زندگی میکنی ولی تحلیل نکن)
۳- پستی که خودت نخوندی و فقط عکسش رو نگاه کردی، لایک نکن
مورد اول خیلی تو مخی هست؛ طرف یک کتابی رو معرفی کرده، ۷۰۰ تا هم لایک خورده.
قسم میخورم نخونده خودش؛ چون کتاب فقط اسم و ،رح قشنگی داره.
مطالبش مزخرفترین کتاب مقدماتی پایتونی بود که دیدم؛ توی ۲ فصل اول بیش از ۱۰ تا ایراد گرفتم.
تازه فصل اول اصلا ربطی به پایتون نداشت.
اینو بفرستید؛ برای هرکسی که باید.
۱- با کتابهایی که نخوندی عکس نگیر
۲- تحلیل سیاسی نکن؛ نظر سیاسی بده (حقت هست توی این جامعه داری زندگی میکنی ولی تحلیل نکن)
۳- پستی که خودت نخوندی و فقط عکسش رو نگاه کردی، لایک نکن
مورد اول خیلی تو مخی هست؛ طرف یک کتابی رو معرفی کرده، ۷۰۰ تا هم لایک خورده.
قسم میخورم نخونده خودش؛ چون کتاب فقط اسم و ،رح قشنگی داره.
مطالبش مزخرفترین کتاب مقدماتی پایتونی بود که دیدم؛ توی ۲ فصل اول بیش از ۱۰ تا ایراد گرفتم.
تازه فصل اول اصلا ربطی به پایتون نداشت.
اینو بفرستید؛ برای هرکسی که باید.
1👍42😁4❤3💯2
این برای بچههایی که روی Gnome هستند؛ برای مدیریت سایز و جای پنجرههای اپلیکیشنهای باز (اگر مثل من از تنظیم کردن با موس و دست به موس شدن بدتون میاد)
میتونید از Tactile استفاده کنید؛ Extension Manager رو باز کنید و نصبش کنید و لذت ببرید.
میتونید از Tactile استفاده کنید؛ Extension Manager رو باز کنید و نصبش کنید و لذت ببرید.
👍13❤4😐3
هرسال ماه محرم که میشه
یک ژانر مداحی هم داریم که مثل آهنگ کردی میمونه؛
اگر متن رو گوش بدی غمگین میشی اگر ریتم رو گوش بدی، رقصت میگیره.
بعد طرف میگه؛ هیئت ما شور حسینی بالایی داره
شور حسینی یا ریتم آهنگ ؟
ی سری هم تو اینستا و ... هستند که آهنگش رو برامون پیدا میکنند و کنار مداحی میذارن.
خلاصه دست همشون درد نکنه.
یک ژانر مداحی هم داریم که مثل آهنگ کردی میمونه؛
اگر متن رو گوش بدی غمگین میشی اگر ریتم رو گوش بدی، رقصت میگیره.
بعد طرف میگه؛ هیئت ما شور حسینی بالایی داره
شور حسینی یا ریتم آهنگ ؟
ی سری هم تو اینستا و ... هستند که آهنگش رو برامون پیدا میکنند و کنار مداحی میذارن.
خلاصه دست همشون درد نکنه.
😁53🍾6😐5👍4🗿3💯1
این رو دیدم :
خداوند سرزمین پارس را از دشمن، دروغ و خشک سالی حفظ نماید.
اپتیمایزش کردم :
خداوند سرزمین پارس را از آخوند و خشکسالی حفظ نماید.
خداوند سرزمین پارس را از دشمن، دروغ و خشک سالی حفظ نماید.
اپتیمایزش کردم :
خداوند سرزمین پارس را از آخوند و خشکسالی حفظ نماید.
2👏72👍12❤6😐6🗿3😁2💯2
هرکی من رو بشناسه یا یک مدت
کلی بهونه که آقا من زبانم خوب نیست؛ نمیتونم بخونم کلمات سخته و ... هم هربار میشنوم.
این چندروز یک کتابی رو شروع کردم به خوندن که توی اون زمینه هیچ کاری انجام ندادم تاحالا (مثلا فرض کنید بازی سازی؛ من برنامه نویسی رو میدونم شما هم میدونید ولی بازی سازی یک دنیای کاملا جدید میشه برام - واقعا نرفتم سراغ بازی سازیها مثال زدم)
۴ تا تب روی مرورگر باز کردم همش هم
توی ۳ روز ۳ فصل رو خوندم؛ وقتی با بچههایی که کارشون هست صحبت میکردم باورشون نمیشد من قبلا حتی ۱ پاراگراف هم راجب این موضوع نخوندم و حالا همه اصطلاحات مقدماتی رو میدونم اونم فقط توی ۳ روز - یعنی اگر مدیر تیمشون از قبل من رو نمیشناخت الان باید ثابت میکردم که آقا من هیچی نمیدونم بیاد توضیح بدید.
بعد ازین تجربه شخصی خودم بنظرم اگر کسی بگه من انگلیسی بلد نیستم پس کتاب ندید فقط و فقط از تنبلی هست؛ چون یادگرفتن مقدمات انگلیسی هزارتا دوره آنلاین داره که شاید تو بدترین حالت و زمانبندی ۲ ماه وقت بگیره و بعدش اندازهای که کتاب برنامهنویسی بخونید سواد انگلیسی دارید (تازه برنامهنویس هم که هستید و از روی کدها هم میتونید سردربیارید چه خبر هست)
follow داشته باشه میدونه من برای عمیق شدن توی مطالب هیچ چیزی بهتر از کتاب نمیبینم.کلی بهونه که آقا من زبانم خوب نیست؛ نمیتونم بخونم کلمات سخته و ... هم هربار میشنوم.
این چندروز یک کتابی رو شروع کردم به خوندن که توی اون زمینه هیچ کاری انجام ندادم تاحالا (مثلا فرض کنید بازی سازی؛ من برنامه نویسی رو میدونم شما هم میدونید ولی بازی سازی یک دنیای کاملا جدید میشه برام - واقعا نرفتم سراغ بازی سازیها مثال زدم)
۴ تا تب روی مرورگر باز کردم همش هم
AI؛ ۳ تاش duck.ai و یک مورد هم chatgpt۱- توضیح کلیات و کلمات تخصصی به انگلیسی روان و مثال duck.ai
۲- ترجمه کلمه یا جمله duck.ai
۳- مقایسه با روشهای دیگه و خلاصه سرچ اینترنتی duck.ai
۴- توضیح دقیقتر + ارائه نمونه مثال: chatgpt
توی ۳ روز ۳ فصل رو خوندم؛ وقتی با بچههایی که کارشون هست صحبت میکردم باورشون نمیشد من قبلا حتی ۱ پاراگراف هم راجب این موضوع نخوندم و حالا همه اصطلاحات مقدماتی رو میدونم اونم فقط توی ۳ روز - یعنی اگر مدیر تیمشون از قبل من رو نمیشناخت الان باید ثابت میکردم که آقا من هیچی نمیدونم بیاد توضیح بدید.
بعد ازین تجربه شخصی خودم بنظرم اگر کسی بگه من انگلیسی بلد نیستم پس کتاب ندید فقط و فقط از تنبلی هست؛ چون یادگرفتن مقدمات انگلیسی هزارتا دوره آنلاین داره که شاید تو بدترین حالت و زمانبندی ۲ ماه وقت بگیره و بعدش اندازهای که کتاب برنامهنویسی بخونید سواد انگلیسی دارید (تازه برنامهنویس هم که هستید و از روی کدها هم میتونید سردربیارید چه خبر هست)
1👏61👍20❤6
#تجربه
کلی راجب
الان میخوام دلیلش رو بگم (چند روز پیش متوجه شدم که نگفتم این موضوع رو)
سالها قبل وقتی قرار شد با یک شرکت بزرگ همکاری کنم؛ اولین تسکم که بهم داده شد؛ توی ذوق زدگی زیاد و هیجان و ... که بودم دوتا چیز رو با خودم بستم :
۱- تسک رو زودتر از موعد انجام بدم
۲- تمام اصول پایتون استاندارد رو رعایت کنم
تسک رو زدم (مثلا ۴ روز) - ۳ روز کامل هم وقت گذاشتم تمیزش کردم تمام موارد
تسک ۱۴ روز کاری رو توی ۷ روز کاری تحویل دادم؛ همکارهایی که با من استخدام شده بودند همه لذت بردند وقتی رفتیم توی جلسه اول با مدیر تیم؛ کدهای من رو که دید کلی تعریف کرد اول ازم که با سوادی و پایتون رو خوب یاد گرفتی و مرسی که زودتر از
بعدش همونجا توی جلسه :
کل کدهام رو پاک کرد (روی
وقتی جلسه تموم شد؛ گفت مهم ترین چیزی که باید رعایت کنی این هست که با استاندارد تیم خودت کد بزنی - دست خط خودت رو وارد کد نکنی.
پیش خودم گفتم: اگر باقی آشغال کد زدند من نباید اینطوری باشم که! (حالا آشغال هم کد نزده بودند ولی نسبت به من که همه اصول رو رعایت کرده بودم بدتر بود)
من اون کد رو مجدد زدم با دستخط تیم؛ چندماه گذشت و من همیشه درگیر اون برخورد اول بودم (کار اولمم توی این سطح هم بود؛ پیش خودم گفتم شاید اینا با ایرانیها مشکل دارند؛ که خب اسکل بودم که اصلا همچین فکری رو کردم) بعد بهم یک پروژه رو داد گفت برو کدهای این رو استاندارد و اپتیمایز کن چون کل پروژه دست خودت هست هر استانداردی که دوس داری رو دنبال کن (جمله دقیقش این بود؛ استاندارد روز اولت رو دنبال کن اگر دوس داشتی)
پروژه رو باز کردم؛ شروع کردم خوندن ۳ روز گذشت من فقط ۲۰٪ پروژه رو فهمیده بودم!
هرچی هم جلوتر میرفت بدتر و سختتر میشد تو ذهنم نگهدارم پروژه رو.
یک دفعه فهمیدم چرا روز اول کدهای من رو پاک کرد؛ رفتم و ازش تشکر کردم که بهم یاد داد و این یکی پروژه رو داد که درک کنم.
مشکل این بود:
توی پروژه و کدی که داده بود تا تمیز کنم؛ توی زمانهای مختلف آدمای مختلف کار کرده بودند و همیشه با این هدف که فقط کار کنه کد زده بودند —> بیش از ۱۵ نفر کار کرده بودن و هرکسی همونطوری که خودش دوس داشت؛ همه چیز داشت هر اصولی که بگی؛ تمام اصول به تنهایی همواره استانداردهای درستی بود توی پایتون و همگی هم تمیز کد زده بودند ولی وقتی کنار هم قرار میگرفت کثافت خالص بود.
یعنی نمیشد من یک بخش پروژه رو یکبار تمیز کنم و همون چیزا رو برای بخشهای دیگه هم کپی کنم توی هر بخشی که وارد میشد باید از اول میفهمیدم و میخوندم و تصمیم میگرفتم با کدش چیکار کنم.
این بهترین چیزی بود که اونجا یاد گرفتم.
کلی راجب
clean code صحبت کردم؛ همیشه هم گفتم شما نهایتا باید با استاندارد تیمی که باهاش کار میکنید کد بزنید. (که خب میتونید صبحتهام یا پستهاش رو پیدا کنید و بخونید)الان میخوام دلیلش رو بگم (چند روز پیش متوجه شدم که نگفتم این موضوع رو)
سالها قبل وقتی قرار شد با یک شرکت بزرگ همکاری کنم؛ اولین تسکم که بهم داده شد؛ توی ذوق زدگی زیاد و هیجان و ... که بودم دوتا چیز رو با خودم بستم :
۱- تسک رو زودتر از موعد انجام بدم
۲- تمام اصول پایتون استاندارد رو رعایت کنم
تسک رو زدم (مثلا ۴ روز) - ۳ روز کامل هم وقت گذاشتم تمیزش کردم تمام موارد
PEP8, tricks, ... درنهایت۲ روز هم تست نوشتم براش.تسک ۱۴ روز کاری رو توی ۷ روز کاری تحویل دادم؛ همکارهایی که با من استخدام شده بودند همه لذت بردند وقتی رفتیم توی جلسه اول با مدیر تیم؛ کدهای من رو که دید کلی تعریف کرد اول ازم که با سوادی و پایتون رو خوب یاد گرفتی و مرسی که زودتر از
deadline تسک رو رسوندی (که همونجا گفتم چون میخواستم اگر ایرادی داره؛ قبل از ددلاین رفع کنم)بعدش همونجا توی جلسه :
کل کدهام رو پاک کرد (روی
Liveshare بودیم) بعدشم برنچ git من رو پاک کرد (برای هیچکس اینکارو نکرده بود با اینکه هزارتا ایراد گرفته بود ازشون) خیلی ناراحت شدم تا آخر جلسه هم چندبار دیگه ازم تعریف کرد؛ کدم هیچ ایرادی نداشت هیچی ولی من تا آخر جلسه فکر این بودم که چرا.وقتی جلسه تموم شد؛ گفت مهم ترین چیزی که باید رعایت کنی این هست که با استاندارد تیم خودت کد بزنی - دست خط خودت رو وارد کد نکنی.
پیش خودم گفتم: اگر باقی آشغال کد زدند من نباید اینطوری باشم که! (حالا آشغال هم کد نزده بودند ولی نسبت به من که همه اصول رو رعایت کرده بودم بدتر بود)
من اون کد رو مجدد زدم با دستخط تیم؛ چندماه گذشت و من همیشه درگیر اون برخورد اول بودم (کار اولمم توی این سطح هم بود؛ پیش خودم گفتم شاید اینا با ایرانیها مشکل دارند؛ که خب اسکل بودم که اصلا همچین فکری رو کردم) بعد بهم یک پروژه رو داد گفت برو کدهای این رو استاندارد و اپتیمایز کن چون کل پروژه دست خودت هست هر استانداردی که دوس داری رو دنبال کن (جمله دقیقش این بود؛ استاندارد روز اولت رو دنبال کن اگر دوس داشتی)
پروژه رو باز کردم؛ شروع کردم خوندن ۳ روز گذشت من فقط ۲۰٪ پروژه رو فهمیده بودم!
هرچی هم جلوتر میرفت بدتر و سختتر میشد تو ذهنم نگهدارم پروژه رو.
یک دفعه فهمیدم چرا روز اول کدهای من رو پاک کرد؛ رفتم و ازش تشکر کردم که بهم یاد داد و این یکی پروژه رو داد که درک کنم.
مشکل این بود:
توی پروژه و کدی که داده بود تا تمیز کنم؛ توی زمانهای مختلف آدمای مختلف کار کرده بودند و همیشه با این هدف که فقط کار کنه کد زده بودند —> بیش از ۱۵ نفر کار کرده بودن و هرکسی همونطوری که خودش دوس داشت؛ همه چیز داشت هر اصولی که بگی؛ تمام اصول به تنهایی همواره استانداردهای درستی بود توی پایتون و همگی هم تمیز کد زده بودند ولی وقتی کنار هم قرار میگرفت کثافت خالص بود.
یعنی نمیشد من یک بخش پروژه رو یکبار تمیز کنم و همون چیزا رو برای بخشهای دیگه هم کپی کنم توی هر بخشی که وارد میشد باید از اول میفهمیدم و میخوندم و تصمیم میگرفتم با کدش چیکار کنم.
این بهترین چیزی بود که اونجا یاد گرفتم.
1👍83❤23🔥3