این پروژه یک کار گروهی برای ترجمه آزاد یکی از بهترین کتاب های برنامه نویسیه پایتونه
من فکر میکنم سطح کاری که با پایتون انجام میدم در حد یه خراش هم نیست!
برنامهنویس باهوشی رو به اسم مارک میشناختم. مارک یک برنامهنویس خودآموخته بود و هر روز سخت تلاش میکرد تا مهارتهای برنامهنویسیش رو ارتقا بده. به لطف اینترنت و stackoverflow مارک به سرعت مهارتهای پایتونی خودش رو افزایش میداد.
اما اخیرا مارک در درهی ناامیدی گیر کرده بود. مارک احساس میکرد سرعت یادگیریش در زبان پایتون پایین اومده و چیزهای جدید و کمی رو به کندی در مورد پایتون یاد میگیره … خیلی کند …
اما در ابتدا اینطور نبود. مارک خیلی سریع اصول اولیه پایتون رو یاد گرفته بود، اما ظاهرا این تنها قسمت ساده ماجرا بود. البته مارک هنوز هم از برنامه نویسی با پایتون لذت میبرد. یک زبان برنامه نویسی زیبا، قدرتمند و همه منظوره. (به قول یکی از همکارانم، سلطان زبانهای برنامه نویسی)
احساس اعتماد به نفس مارک هنگام کار با پایتون پایین بود، زیرا داشتن اعتماد به نفس هنگامی که در سطح ابتدایی پایتون گیر کرده بود، سخت بود. منظورم این است که مارک میتوانست بابت هر مشکلی یک راهحل پایتونی ارائه کند. اما مسیری برای ارتقای مهارتهای پایتون مارک وجود نداشت. مارک نمیدانست چه ویژگیهایی از پایتون وجود دارد که ممکن است مفید باشد.
و این همان قسمت چالش برانگیز ماجرا است: نحوه ادغام تمام قطعات پازل
ذهنیت بهبود مداوم و تمایل به تسلط بیشتر در برنامهنویسی، چیزی بود که مارک را به حرکت در میآورد. با این حال، خواندن داکیومنتهای فنی زمان زیادی از مارک در طول کار روزانهاش میگرفت، همچنین داکیومنتهای فنی گاهی شامل مثالهای واضح و نمونههای کاربردی در کار روزمره نیستند.
و اکنون رویای تسلط به زبان پایتون در مارک به آرامی میپژمرد …
من کاملا مارک را درک میکنم، زیرا چند سال پیش، من هم همینطور بودم.
من Dan Bader هستم. من وبسایت RealPython رو راهاندازی کردم و در حال حاضر بیشتر از ۱۵ ساله که مشغول به کدنویسی هستم. تسلط به زبان پایتون یکی از بزرگترین انگیزههای من در مسیر شغلیم به عنوان یک مهندس نرمافزار بود. من داستان مارک را با شما به اشتراک گذاشتم زیرا من هم تجربه مشابهی در سر و کله زدن با مستندات هنگام رشد مهارتهای پایتونم داشتم.
چندی پیش، من روشی برای یاد دادن Best Practice های پایتون به توسعه دهندگان پیدا کردم. نوشتن کدهای پایتون زیبا و تمیز به اندازه تکه کدهایی بسیار کوچک.
من این تکتیکها را ترفندهای پایتون نامیدم.
ترفندهای پایتون به عنوان یک سری کوتاه از تصاویر کدهای پایتون شروع شد که من به مدت یک هفته در توییتر به اشتراک گذاشتم. در کمال تعجب، آنها پاسخهای خوبی دریافت کردند و توسعهدهندگان پایتون در سراسر جهان، تکه کدها را دوست داشتند.
ترفندهای پایتون قطعه کدهای کوتاهی از زبان برنامه نویسی پایتون است که به عنوان ابزاری برای آموزش مفهایم عمیق پایتون استفاده میشود. این کتاب، جنبه های مختلفی از این زبان را با مثالهایی ساده آموزش میدهد و باعث میشود تا در زبان برنامه نویسی پایتون عمیق تر حفاری کنید و درکی شهودی برای خود ایجاد کنید.
در طی چندین روز آینده، توسعه دهندگان بیشتری با من تماس گرفتند و از من بخاطر اشتراک گذاری این قطعه کدها که باعث شده بود در این مسیر پیشرفت کنند، تشکر میکردند. آنها با من درمورد ارزش فوقالعادهی این قطعه کدها صحبت میکردند و از چگونگیِ تاثیرگذاری این کدها بر تسلطشان روی پایتون میگفتند.
به مرور زمان من ایمیلهای بیشتری از برنامه نویسان مختلف دریافت میکردم و در تمام ایمیلها الگویی تقریبا مشابه وجود داشت: برخی از این ترفندها بدون هیچگونه توضیحی واضح بودند. برای برخی از ترفندهای پیچیده تر، هیچگونه راهنمایی وجود نداشت و هیچکس منابع بیشتری به آنها ارجاع نمیداد تا درک برنامه نویسان از آنها عمیق تر شود. بنابراین دریافتم که گاهی اوقات تنها تصویری از یک قطعه کد برای توضیح یک ویژگی جالب از پایتون کافی نیست.
اکنون ترفندهای پایتون پر قدرت تر به صحنه بازگشتند.
من بهترین و محبوب ترین (و درعین حال جدیدترین) ترفندهای پایتون را از سری اصلی برداشتم و با استفاده از آنها شروع به نوشتن نوع جدیدی از یک کتاب پایتون کردم.
جنبه اقتصادی: تنها ترجمه این کتاب با قیمت ۱۵۰ هزار تومن به فروش میرسه. من اصلا نمیگم که قیمت به صرفه نیست ولی قبول کنیم خیلی ها توانایی پرداخت همین مبلغ رو هم ندارن. ترجمه رایگان این کتاب میتونه یک دلگرمی براشون باشه یا صرفا یک سرگرمی مفید رایگان در اختیارشون بذاره.
جنبه سرگرمی: تو این روز ها هیچ چیز بهتر از یک سرگرمی مفید نیست و این پروژه هم فرصت خوندن یکی از بهترین کتاب های برنامه نویسی پایتون رو به شما میده و هم یک سرگرمی خیلی خوبه.
از همون اول خیلی ها با این کار مخالف بودند که با کمال احترام باهاشون مخالفم.
اگه قرار باشه که یک کتاب فقط یک بار ترجمه بشه که دیگه رقابتی به وجود نمیاد و کیفیت افت میکنه. این کار به نظرم اصلا با حقوق مترجمان محترم این کتاب منافاتی نداره ضمن اینکه ترجمه این دوستان هم رایگان نیست.
بله این کتاب ترجمه شده ولی با قیمت ۱۵۰ هزار تومن به فروش میرسه. انصافا برای یک کتاب ۳۰۰ صفحه ای و اونم نسخه چاپی قیمت مناسبیه ولی تو این شرایط فعلی و مخصوصا این شرایط کرونایی خیلی ها توانایی پرداخت همین مبلغ رو هم ندارن.
اما دلیل اصلی انتخاب این کتاب محبوبیت اونه. اکثر برنامه نویس های پایتون حداقل اسم این کتاب رو شنیدن. اگر ما با یک کتاب کمتر شناخته شده شروع میکردیم قطعا همین چند نفر هم جذب این کار نمیشدند.
بخش هایی از کتاب که به زبان انگلیسی هستند و ترجمه نشده. کافیه اون قسمت ها رو با ترجمه جایگزین کنید(حتی یک خط!) و یه ریکوئست بفرستید. منم سر وقت اون رو باز بینی میکنم و اگه خوب بود به ترجمه اضافه میشه و اسمتون هم به لیست ترجمه کنندگان این کتاب اضافه میشه.
اگر میخوای یک بخش بزرگ یا یک فصل رو ترجمه کنی با ایمیل زیر بهم خبر بده تا از ترجمه دوباره توسط بقیه جلوگیری بشه.
open.book.translation.persian@gmail.com
بعد از تموم شدن کتاب نسخه ویرایش شده و نهایی اون با فرمت pdf منتشر میشه اما فعلا میتونید کتاب رو از طریق gitbook که لینکشو اخر مقاله گذاشتم مطالعه کنید.
Python Engineer Roadmap
In this repository, I share codes of the introduction to python courses published on my youtube channel
Negar trying to be a spell corrector for persian language.
Jalali calendar binding for Python based on Python's datetime module
آموزش برنامهنویسی پایتون - این محتوا برای کلاس مبانی برنامهسازی دانشگاه صنعتی شریف تولید شده است.
This project is an open-source project which I made due to sharing my experience around the Python programming language.