Forwarded from Python BackendHub
داشتم با صدرا یک کدی رو بررسی میکردیم که نوشته بود.
یک اینترفیس API بود برای pypi که گفته بود سریع نوشته بود و خیلی کلین ننوشته
https://gist.github.com/lnxpy/b996d3ba298c6300de6f0ac515666576
بحث ریفکتورش بود که گفتم بدم GPT یک review بزنه. و واقعا wow
از آپدیت جدید gpt شما میتونید بهش custom instruction بدید. تا ۳۰۰۰ هزار کاراکتر میتونید fine tuned کنید. البته اگه ازAPI استفاده کنید دیگه لیمیتی نداره.
من مال خودمو خیلی کاستومایز کردم و نتیجه review اش شد این :))
پی نوشت:مورد ۳ سلیقه ایه. که خودشم شخصا دوست دارم.
@ManiFoldsPython
یک اینترفیس API بود برای pypi که گفته بود سریع نوشته بود و خیلی کلین ننوشته
https://gist.github.com/lnxpy/b996d3ba298c6300de6f0ac515666576
بحث ریفکتورش بود که گفتم بدم GPT یک review بزنه. و واقعا wow
از آپدیت جدید gpt شما میتونید بهش custom instruction بدید. تا ۳۰۰۰ هزار کاراکتر میتونید fine tuned کنید. البته اگه ازAPI استفاده کنید دیگه لیمیتی نداره.
من مال خودمو خیلی کاستومایز کردم و نتیجه review اش شد این :))
پی نوشت:مورد ۳ سلیقه ایه. که خودشم شخصا دوست دارم.
@ManiFoldsPython
👍6
Forwarded from Python BackendHub
البته اضافه کنم
۱. از gpt برای کمک به خودتون استفاده نکنید خیلی. چون جلوی خلاقیتتون رو میگیره. برای code review یا کدی که قراره میدونید دقیقا چطوری بشه و ۱۰۰درصد بلدین و صرفا واسه صرفه جویی وقته استفاده کنید.
۲. برای سلف استادی خیلی خوبه. که مثلا ریسورس های خوبو سریع پیداش کنید. یعنی ریسورس هایی که تو حالت عادی شاید رسیدن بهشون یکم سخت باشه. مثلا میخواین راجب <فلان چیز خاص> تحقیق کنید. ازش بخواین کتاب بهتون معرفی کنه راجب همون تایتل و همون سرفصلا و خیلی عالی انجام میده. یا مقدمه بهتون بگه.
۳. مطالبی که میگه چشم بسته قبول نکنید. مثلا اینجا code review ای که کرد خیلی جنرال بود. شاید خیلی از پوینتاش valid نبود برای یک کدی که قرار نیست maintain شه خیلی. یعنی نظرش خیلی تک بعدیه.
@ManiFoldsPython
۱. از gpt برای کمک به خودتون استفاده نکنید خیلی. چون جلوی خلاقیتتون رو میگیره. برای code review یا کدی که قراره میدونید دقیقا چطوری بشه و ۱۰۰درصد بلدین و صرفا واسه صرفه جویی وقته استفاده کنید.
۲. برای سلف استادی خیلی خوبه. که مثلا ریسورس های خوبو سریع پیداش کنید. یعنی ریسورس هایی که تو حالت عادی شاید رسیدن بهشون یکم سخت باشه. مثلا میخواین راجب <فلان چیز خاص> تحقیق کنید. ازش بخواین کتاب بهتون معرفی کنه راجب همون تایتل و همون سرفصلا و خیلی عالی انجام میده. یا مقدمه بهتون بگه.
۳. مطالبی که میگه چشم بسته قبول نکنید. مثلا اینجا code review ای که کرد خیلی جنرال بود. شاید خیلی از پوینتاش valid نبود برای یک کدی که قرار نیست maintain شه خیلی. یعنی نظرش خیلی تک بعدیه.
@ManiFoldsPython
👍15
Forwarded from Python BackendHub
راجب اصول تست نویسی, یک مقاله پیدا کردم, میخوندمش مفید و کلی بود
به عنوان یک software engineer حداقل باید با مفاهیم اشنا باشین که وقتی با کلمه های زیر خوردین فکر نکنید چیز خیلی عجیب و فضایی هستند. نمیگم بلدشون باشید ولی باید بدونید چی هستند. دونستن این موارد کمک میکنه بهتون که به عنوان یک SE بهتر کد بنویسید و بهتر تست بنویسید.
- Testing Strategy
- Test policy
- Test scenario & Test case
- Software requirements, and requirements review
- Types of automated testing (A/B, smoke, unit, integration, e2e, exploratory, stress, load, perfomance, regression, cross-device, crowss-browser, acceptance, black box, Operational acceptance, conctract acceptance)
- Types of manual testing (exploratory testing, ad hoc testing)
- Software quality indicators
- Test Metrics
لینک مقاله:
https://www.altexsoft.com/blog/engineering/software-testing-qa-best-practices/
@ManiFoldsPython
به عنوان یک software engineer حداقل باید با مفاهیم اشنا باشین که وقتی با کلمه های زیر خوردین فکر نکنید چیز خیلی عجیب و فضایی هستند. نمیگم بلدشون باشید ولی باید بدونید چی هستند. دونستن این موارد کمک میکنه بهتون که به عنوان یک SE بهتر کد بنویسید و بهتر تست بنویسید.
- Testing Strategy
- Test policy
- Test scenario & Test case
- Software requirements, and requirements review
- Types of automated testing (A/B, smoke, unit, integration, e2e, exploratory, stress, load, perfomance, regression, cross-device, crowss-browser, acceptance, black box, Operational acceptance, conctract acceptance)
- Types of manual testing (exploratory testing, ad hoc testing)
- Software quality indicators
- Test Metrics
لینک مقاله:
https://www.altexsoft.com/blog/engineering/software-testing-qa-best-practices/
@ManiFoldsPython
AltexSoft
11 Ways to Improve Software Testing through Planning, Work E
Learn the ways to improve software testing and quality assurance through planning, establishing a productive work environment, automated testing, and reporting
❤🔥3❤1
Forwarded from TorhamDev | تورهام 😳
https://www.youtube.com/watch?v=qSMHCHeErYY&list=PLEQ3RnweNGA6v7qTMrDCcpgr9u91zvpq_&index=1
بچهها مانی یک پلیلیست داره داخل یوتیوب پیش میره درباره نحوه تست نویسی, تست های مختلف, و اصول تست نویسی در SDLC.
ولی مفاهیم خوبی یادمیده که حتی اگه نخوایید در این لحظه درباره تست نویسی یاد بگیرید هم مفیده. مثلا همین دیپدنسی اینورژن و دپندنسی اینجکشن که داخل برای مثالfastapi هستش
بچهها مانی یک پلیلیست داره داخل یوتیوب پیش میره درباره نحوه تست نویسی, تست های مختلف, و اصول تست نویسی در SDLC.
ولی مفاهیم خوبی یادمیده که حتی اگه نخوایید در این لحظه درباره تست نویسی یاد بگیرید هم مفیده. مثلا همین دیپدنسی اینورژن و دپندنسی اینجکشن که داخل برای مثالfastapi هستش
YouTube
دپندسی اینجشکن (تزریق وابستگی) و قانون دیپندنسی اینورژن
In this video, I've explained what does Dependency injection means and what does Dependency Inversion Principle means, and how they're different. This is very critical knowledge which enable our code to be testable
✍️ Source Code: https://github.com/Man…
✍️ Source Code: https://github.com/Man…
درود دوستان!
از وقتی Campus Expert شدم، آنچنان فعالیتی که مرتبط با این Role باشه نداشتم. بهزودی، یک دورهمی لایو میخوام برگزار کنم که هم بیشتر باهاتون آشنا شم، هم دورهم گپ بزنیم و یاد بگیریم و شروعی باشه بر فعالیتهام در این زمینه!
در کامنتهای این پست، راجع به موضوعاتی که دوست دارید راجع بهش صحبت کنم بگید.
بیشترین موضوعی که درخواستکننده داشت رو انتخاب میکنم و چنانچه موضوعی باشه که جامعیت داره و در یک جلسه نشه جمعش کرد، چند جلسه دیگه هم میذاریم و بهش میپردازیم! ❤️
نظرتون چیه؟!
از وقتی Campus Expert شدم، آنچنان فعالیتی که مرتبط با این Role باشه نداشتم. بهزودی، یک دورهمی لایو میخوام برگزار کنم که هم بیشتر باهاتون آشنا شم، هم دورهم گپ بزنیم و یاد بگیریم و شروعی باشه بر فعالیتهام در این زمینه!
در کامنتهای این پست، راجع به موضوعاتی که دوست دارید راجع بهش صحبت کنم بگید.
بیشترین موضوعی که درخواستکننده داشت رو انتخاب میکنم و چنانچه موضوعی باشه که جامعیت داره و در یک جلسه نشه جمعش کرد، چند جلسه دیگه هم میذاریم و بهش میپردازیم! ❤️
نظرتون چیه؟!
❤🔥17🐳2❤1🎉1
Sadra Codes pinned «درود دوستان! از وقتی Campus Expert شدم، آنچنان فعالیتی که مرتبط با این Role باشه نداشتم. بهزودی، یک دورهمی لایو میخوام برگزار کنم که هم بیشتر باهاتون آشنا شم، هم دورهم گپ بزنیم و یاد بگیریم و شروعی باشه بر فعالیتهام در این زمینه! در کامنتهای این پست،…»
نظرتون راجع به این جمله چیه؟ (میدونم خیلیا واسه فان و خنده اینو پست میکنن ولی خب میخوام نظرتونو بدونم)
If the code works, don't touch it.
اگه کدتون کار میکنه، بهش دست نزنید.
If the code works, don't touch it.
اگه کدتون کار میکنه، بهش دست نزنید.
👌12👎8🗿3👍1
Sadra Codes
درود دوستان! از وقتی Campus Expert شدم، آنچنان فعالیتی که مرتبط با این Role باشه نداشتم. بهزودی، یک دورهمی لایو میخوام برگزار کنم که هم بیشتر باهاتون آشنا شم، هم دورهم گپ بزنیم و یاد بگیریم و شروعی باشه بر فعالیتهام در این زمینه! در کامنتهای این پست،…
بچهها دمتون گرم. اکثر سوالاتی که کامنت شد، نمیشه به دید یه موضوع واسه یه جلسه لایو بهشون نگاه کرد. سوالاتیه که در حد یه وویس میشه توضیحش داد و منم این کارو میکنم. 👌
بیشتر دنبال موضوع هایی هستم که هم جنبه یادگیری داشته باشه هم جنرال باشه مثلا گیت هاب اکشن یا پایتست یا چجوری کانترییوت کنیم روی پروژه های اوپن سورس و..
بیشتر دنبال موضوع هایی هستم که هم جنبه یادگیری داشته باشه هم جنرال باشه مثلا گیت هاب اکشن یا پایتست یا چجوری کانترییوت کنیم روی پروژه های اوپن سورس و..
👍8
Sadra Codes
نظرتون راجع به این جمله چیه؟ (میدونم خیلیا واسه فان و خنده اینو پست میکنن ولی خب میخوام نظرتونو بدونم) If the code works, don't touch it. اگه کدتون کار میکنه، بهش دست نزنید.
بچهها نکات خیلی خوبی گفتن. (توی کامنتها حتما بخونید)
یه سری از دوستان از دید بیزینسی به قضیه نگاه کردن که واسه خودمم جالب بود.
منم یه نکته کوچیک اضافه کنم. من بیزینسمن نیستم ولی در دنیای امروز، بیزینسی که requirementهاش در طول زمان تغییر نکنه، بیزنس شکستخوردهای هست. بیزینسی که از آمار استفاده نکنه برای بهبود کیفیت سرویسهاش، شکست خورده. بیزینسی که در زمان ساکن باشه، میدون رو واسه رقباش باز گذاشته. خب ما نمیخوایم اینجور شه.
اون بیزینس یا شرکت، به کمک نرمافزاره که پابرجا مونده. فیچری که شما هفته پیش پوش کردی روی پروداکشن، ممکنه فیدبک منفی خورده باشه از سمت کاربر. الان پایین آوردن یا فیکس کردن اون فیچر یه تسک حیاتیه. اگه خودتم بدونی پشت اون فیچر باگا دارن بالانس میزنن و درحدی نوشتیش که فقط کار کنه، خب تایم زیادی میخوای تا فیکسش کنی و کل تیم نمیتونه منتظر شما بمونه. در نتیجه یه وقفه در کار همه ایجاد کردی. اینجور ضربههاست که میتونه بیزینس رو کم کم به سمت نابودی ببره. (البته توی تیم تکنیکال)
من حاضرم کدی رو ریویو کنم که کار نمیکنه ولی میتونم متوجهاش شم تا اینکه سمت کدی برم که نمیتونم درکش کنم ولی داره کار میکنه. اینجور کدها بلافاصله تا requirementها و نیازمندیها تغییر کنن، کاملا useless میشن و یا باید ازنو نوشتشون، یا اول ریفکتورش کرد و بعد رفت سراغش. کدیو که میفهممش، میتونم کاری کنم که کار کنه ولی کدی که نمیفهمم، اگه مجبور باشم یه اتریبیوت بهش اضافه کنم، ریسک نمیکنم برم سمتش و اجبارا، یه بخش از منطق کار رو ثابت نگه میدارم.
ریفکتور کردن legacy codeی که ماهها پیش نوشتی، اصلا کار آسونی نیست.
یه سری از دوستان از دید بیزینسی به قضیه نگاه کردن که واسه خودمم جالب بود.
منم یه نکته کوچیک اضافه کنم. من بیزینسمن نیستم ولی در دنیای امروز، بیزینسی که requirementهاش در طول زمان تغییر نکنه، بیزنس شکستخوردهای هست. بیزینسی که از آمار استفاده نکنه برای بهبود کیفیت سرویسهاش، شکست خورده. بیزینسی که در زمان ساکن باشه، میدون رو واسه رقباش باز گذاشته. خب ما نمیخوایم اینجور شه.
اون بیزینس یا شرکت، به کمک نرمافزاره که پابرجا مونده. فیچری که شما هفته پیش پوش کردی روی پروداکشن، ممکنه فیدبک منفی خورده باشه از سمت کاربر. الان پایین آوردن یا فیکس کردن اون فیچر یه تسک حیاتیه. اگه خودتم بدونی پشت اون فیچر باگا دارن بالانس میزنن و درحدی نوشتیش که فقط کار کنه، خب تایم زیادی میخوای تا فیکسش کنی و کل تیم نمیتونه منتظر شما بمونه. در نتیجه یه وقفه در کار همه ایجاد کردی. اینجور ضربههاست که میتونه بیزینس رو کم کم به سمت نابودی ببره. (البته توی تیم تکنیکال)
من حاضرم کدی رو ریویو کنم که کار نمیکنه ولی میتونم متوجهاش شم تا اینکه سمت کدی برم که نمیتونم درکش کنم ولی داره کار میکنه. اینجور کدها بلافاصله تا requirementها و نیازمندیها تغییر کنن، کاملا useless میشن و یا باید ازنو نوشتشون، یا اول ریفکتورش کرد و بعد رفت سراغش. کدیو که میفهممش، میتونم کاری کنم که کار کنه ولی کدی که نمیفهمم، اگه مجبور باشم یه اتریبیوت بهش اضافه کنم، ریسک نمیکنم برم سمتش و اجبارا، یه بخش از منطق کار رو ثابت نگه میدارم.
ریفکتور کردن legacy codeی که ماهها پیش نوشتی، اصلا کار آسونی نیست.
❤7👍4⚡1