نوشته های دکتر خودم

نوشته های دکتر خودم

اینجا من یعنی خودم در مورد خودم و خود خودم می نویسم
نوشته های دکتر خودم

نوشته های دکتر خودم

اینجا من یعنی خودم در مورد خودم و خود خودم می نویسم

توزیع متغیر تصادفی مرورگر

 * فقط یک سوال ساده بود: «توزیع متغیرهای تصادفی تولیدشده در یک مرورگر، چیه؟» :دی و خب جواب هم از همون اولش روشن بود :دی «توزیع یکنواخت روی صفر و یک»، ولی خب بهانه بود برای کد زدن :دی. دانلود نمونه نوشته شده با Canvas و جاوااسکریپت از اینجا. عکس نمونه‌ی اجراست، اگه در اون کدی که نوشتم، randR رو یک عدد بزرگ -مثلا ۱۰۰۰۰- بذارید کلا مشخص میشه که توزیع یکنواخته.


پ.ن ۱: زمزمه‌ی این روزهام آه از عمر تلف‌ه، میگن آدم روزای آخر عمرش، از اول عمر تا آخر عمرش مثل فیلم جلوی چشم‌شه، حال این روزهای منم شبیه اینه :دی از اول دبیرستان تا الانم رو از جلوی چشم میگذرونم. امیدوارم واقعا زندگی مسئله‌ی بدوضع غیرخطی باشه :دی.

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

روزهای لعنتی

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


پ.ن ۱: بیرون نم‌نم برف در حال باریدن‌ه. نمردیم و در این قسمت از دودآباد هم برف دیدیم.

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

پایتون برای ریاضی‌دانان

 * اگر شما هم جز افرادی بوده باشید که یکی از دروس آنالیز عددی یا محاسبات عددی رو گذرونده باشید و یا دانشجوی تحصیلات تکمیلی مرتبط با یک پروژه‌ی محاسباتی باشید، احتمالا نمونه‌ای از کدنویسی‌های محاسباتی رو دیده‌اید. برای این مورد، از طیف مختلف زبان‌ها، از سی++ تا پاسکال و متلب استفاده می‌شه. در این بین عموما از متلب/اکتاو برای پیاده‌سازی ایده‌ها و از سی*/جاوا برای اجرایی ساختن آنها استفاده می‌شود، اما در این بین به نظر می‌رسد که یک اسم کمتر شنیده شده باشد: «پایتون».

 * برای مقایسه‌ی امکانات پایتون با متلب می‌توانید اینجا را ببینید و برای شروع یادگری پایتون می‌توانید از کدآکادمی و درس پایتونش استفاده نمائید.

 * همانطور که قدرت متلب به خاطر جعبه‌ابزارهای قدرتمند آن است، برای پایتون نیز می‌توان کتابخانه‌های قدرتمندی را یافت. یک لیست خوب از کتابخانه‌های پایتون را می‌توان در اینجا دید. در زیر ۴ کتابخانه‌ی مفید در محاسبات عددی آورده شده است:

  1. NumPy: کتابخانه‌ای با قابلیت‌های «پردازش قدرتمند آرایه‌های Nبعدی، استفاده از توابع پیچیده و محاسبات مربوط به جبر خطی، تبدیل‌های فوریه و اعداد تصادفی» می‌باشد. همچنین NumPy ابزارهایی را برای استفاده از کدهای سی/سی++ و فرترن در اختیار کاربر قرار می‌دهد.
  2. SymPy: شاید نام Maple به عنوان ابزاری برای محاسبات نمادین را شنیده باشید، محاسبات نمادین به کاربر این اجازه را می‌دهد تا بدون درگیر شدن در محاسبات عددی و تکنیک‌هایش، مشتق یک تابع را حساب کند یا تبدیل فوریه‌ی آنرا بدست آورد. برای مثال در محاسبات عددی، انتگرال تابع x برای یک بازه با استفاده از تکنیک‌های عددی محاسبه و نتیجه‌ی آن که یک عدد است بازگردانده خواهد شد، اما در محاسبات نمادین، انتگرال تابع x برابر  می‌باشد. برای دیدن یک نمونه می‌توانید اینجا را کلیک کنید. SymPy قدرت محاسبات نمادین را به پایتون می‌آورد!
  3. matplotlib: کتابخانه‌ای برای رسم و پردازش تصاویر -نمودار، گراف‌ها و …- ریاضی!
  4. PyWavelet: تبدیلات موجک در پایتون! این کتابخانه قدرت تبدیلات گسسته‌ی موجک را به پایتون می‌آورد ؛) با استفاده آسان و بهینه.

 * س. اوه! برا یه محاسبات باید اینقدر کتابخانه اضافه کنم؟ :/

ج. پایتون یه زبان برنامه‌نویسی‌ه و نه یک ابزار محاسباتی! تمام کارهایی که شما با سی* می‌تونید انجام بدید، در پایتون هم شدنی هستند! شاید خیلی هم راحت‌تر! شما با یادگرفتن پایتون به ابزاری مسلط نمیشین که شاید گاهی فقط به کارتون بیاد! با پایتون میتونید سیستم خودتون رو اونطور که دلتون میخواد به دست بگیرید ؛)

 * س. چقدر طول میکشه من پایتون یاد بگیرم؟

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

 * س. من رشته‌ی پرستاری خوندم بابا! ولی خب دوست دارم برنامه‌نویسی یاد بگیرم :(

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

 * س. اینکه تو لیست بالا فقط همین ۴تا کتابخانه رو آوردی، یعنی بقیه به اندازه‌ی اینها قوی نبودند؟

ج. مسلما نه! این چهارتا، کتابخانه‌هایی بودند که به درد من میخوردن! شما شاید نیازت یه چیز دیگه باشه و بخوای از کتابخونه‌ی دیگه‌ای استفاده کنی! مثلا برای پردازش تصویر بخواید از Scikit Image استفاده کنید و یا برای برنامه‌نویسی منطقی از PyDatalog! برای پیدا کردن اون چیزی که میخواین از PyPI استفاده کنید ؛).