توصیه شده, مقاله های سیسوگ

اهمیت تئوری و ریاضیات در برنامه‌نویسی قسمت اول: خواص سیستم متمم 2

اهمیت تئوری و ریاضیات در برنامه‌نویسی قسمت اول: خواص سیستم متمم 2

آیا تئوری و ریاضیات در زندگی ما کاربردی دارد؟

تقریبا همه‌ی ما، یا بهتره که بگوییم همه‌ی ما، جامعه‌ی فارغ‌التحصیلان کمابیش سوار تاکسی، مهمانی و خلاصه اینور اونور شنیدیم که درس دیگه فایده نداره و الان همه‌ی درس خونده‌ها بیکار هستن و …

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

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

 چالش کاربرد تئوری و ریاضیات در برنامه‌نویسی

 

 

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

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

سیستم متمم 2

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

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

سیستم متمم 2 تضمین می‌کند که اگر ما چندین عدد را با هم جمع و تفریق کنیم، در صورتی که در هنگام عملیات (نه پایان عملیات) سرریزی (overflow) رخ بدهد، اما رنج یا محدوده نتیجه نهایی، از تعداد بیت‌هایی که ما برای اعداد در نظر گرفتیم بیشتر نشود، مشکلی به وجود نمی‌آید. و نیازی به در نظر گرفتن بیت‌های اضافی، برای سرریز، نخواهد بود.

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

سیستم متمم 2

 

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

به عنوان مثال می‌خواهیم نتیجه عبارت 14-12+6 را با استفاده از این سیستم بدست آوریم. همانطور که مشاهده می‌کنید دو عدد 14- و 12 در محدوده اعداد چهار بیتی سیستم متمم 2 نیستند، اما نتیجه حاصل‌جمع در محدوده این سیستم می‌گنجد. ابتدا از عدد 6 شروع می‌کنیم و در جهت ساعتگرد 12 واحد حرکت می‌کنیم، به عدد 2 خواهیم رسید. سپس 14 واحد به صورت پادساعتگرد حرکت می‌کنیم، به عدد 4 خواهیم رسید که همان جواب مسئله می‌باشد. اگر توجه کرده باشید در طول این عملیات در مجموع چهار بار Overflow و Underflow رخ داده است اما نتیجه نهایی صحیح می‌باشد!

متخصصین دیجیتالی که ایده سیستم متمم 2 به ذهنشان خطور کرد و زحمت کشیدند سیستم به این خوبی را تدوین کردند، قطعا فقط برای بازی با اعداد روی کاغذ، شبیه کاری که ما در بالا انجام دادیم نبود. بلکه هدفشان فراتر از این بود و خواستند چالش‌هایی که مدارات دیجیتال در عمل با آن روبه‌رو بودند را برطرف کنند. حقیقتا موفق هم بودند و چالش دو 0 وجود داشتن، پیچیدگی مدار تفریق‌کننده و … در سیستم‌های قبلی را برطرف کردند. نگران نباشید ما هم قرار نیست که فقط کاغذ بازی کنیم، بلکه با یک مثال عملی همراه شما خواهیم بود.

ما برای اثبات ادعای خود، مباحث مطرح شده را در بستر یک سخت‌افزار پیاده‌سازی خواهیم کرد. برای این کار یک میکروکنترلر AVR که رجیسترهای این نوع میکروکنترلر 8 بیتی می‌باشند را در نظر می‌گیریم. سپس چهار متغیر 8 بیتی علامتدار تعریف خواهیم کرد. قرار است نتیجه یک عملیات جبری بین سه متغیر را، به متغیر چهارم انتساب دهیم.

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

به عنوان مثال اگر مجموع دو عدد اول عددی بین 128- تا 127 باشد، و حال اگر حاصل‌جمع دو عدد قبل را با عدد سوم جمع کنیم و سرریزی رخ ندهد، مشکلی نخواهیم داشت و نکته‌ی جدیدی هم نخواهد بود که ما خدمت شما عرض کنیم.

اما ما با استفاده از کلیدهای ورودی به نحوی متغیرها را مقداردهی می‌کنیم که مجموع دو متغیر اول و دوم از محدوده 128- تا 127 خارج باشد و اصطلاحا سرریز یا overflow رخ بدهد. اگر یادتان باشد گفتیم که با هر بار فشردن کلید سوم، 10 واحد از این متغیر کم خواهد شد پس با چند بار فشردن این کلید، کاری می‌کنیم که مجموع سه متغیر در نهایت در محدوده 128- تا 127 جای بگیرد. مجموع اعداد را بر روی LCD نمایش خواهیم داد. مشاهده می‌کنیم که نتیجه حاصل صحیح می‌باشد!

 

 

مگر در حین عملیات سرریز رخ نداد، پس چرا نتیجه نهایی صحیح است؟ این دقیقا یکی از خواص کمتر شناخته شده، سیستم متمم 2 می‌باشد که تضمین می‌کند اگر در حین عملیات سرریزی رخ بدهد، ولی نتیجه نهایی در محدوده جای بگیرد، هیچ مشکلی به وجود نخواهد آمد و نیازی به در نظر گرفتن بیت‌های اضافی نمی‌باشد.

در این رابطه در محیط CodeVision کدی نوشتیم که در پایین همین مقاله میتوانید دانلود نمایید.

در پروژه‌‌ی پیوست، برای اینکه خودتان بتوانید از کد موردنظر تست بگیرید فایل پروتئوسی نیز وجود دارد. و نکته دیگر اینکه کل کد مربوط به این عملیات کلا یکی دو خط می‌باشد، بقیه کد صرفا برای گرفتن بانز کلید به صورت نرم‌افزاری می‌باشد تا اگر خودتان خواستید در عمل روی یک تراشه avr با رجیسترهای 8 بیتی تست بگیرید مشکلی به وجود نیاید. کد بانز کلید نیز به صورتی نوشته شده است که با برداشتن دست از روی کلید عمل خواهد کرد.

نتیجه‌گیری

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

فرض کنید شما به عنوان طراح در یک پروژه، برای کارهای پردازشی خاصی، عرض بیت‌های متفاوتی در نظر می‌گیرید و از خواص سیستم متمم 2 استفاده نمی‌کنید. اگر پروژه‌ی شما کل حجم تراشه مورد نظرتان را در برنگیرد مشکلی نخواهید داشت ولی در صورتی که حجم پروژه شما بیشتر از حجم تراشه مورد نظر باشد، مجبور می‌شوید تراشه خود را عوض کنید و تراشه‌ای تهیه کنید که میزان حجمش از تراشه قبلی بیشتر باشد. فکر نکنید که رعایت نکردن این موضوع فقط در حد درصد خیلی کمی از حجم کل تراشه تفاوت ایجاد خواهد کرد و شما می‌توانید تقریبا با همان هزینه یک تراشه دیگر جایگزین کنید. بلکه در خیلی از پروژه‌ها، رعایت کردن این موضوع می‌تواند حجم کد را به شدت کاهش دهد.

اما این موضوع چه ربطی به اقتصاد پیدا می‌کند؟ اگر تفاوت قیمت دو تراشه فقط 10 درصد باشد شاید مشکل چندانی ایجاد نکند. اما در نظر بگیرید که قرار است از پروژه شما تولید انبوه شود، در این صورت شما باید 10 درصد را، در n محصولی که قرار است تولید شود، ضرب کنید. قطعا مبلغ بسیار زیادی خواهد بود و توجیه اقتصادی نخواهد داشت.

پس اینجاست که می‌توان فهمید مفاهیم تئوری و ریاضیات می‌توانند تا چه اندازه ارزشمند باشند و چه نقشی را ایفا کنند.

این مقاله ادامه‌دار خواهد بود. پس با سیسوگ همراه باشید.

لینک قسمت دوم.

 

دانلود فایل‌های پروژه پیوست:

 

tows-complement.7z

انتشار مطالب با ذکر نام و آدرس وب سایت سیسوگ، بلامانع است.

شما نیز میتوانید یکی از نویسندگان سیسوگ باشید.   همکاری با سیسوگ

16 دیدگاه در “اهمیت تئوری و ریاضیات در برنامه‌نویسی قسمت اول: خواص سیستم متمم 2

  1. بازتاب: اهمیت تئوری و ریاضیات در برنامه‌نویسی قسمت دوم: کری یا سرریز، کدام؟ - سیسوگ - Sisoog
  2. بازتاب: اهمیت تئوری و ریاضیات در برنامه‌نویسی قسمت دوم: کری و سرریز، کدام؟ - سیسوگ - Sisoog
  3. Avatar for عبدالله عبداللهی عبدالله عبداللهی گفت:

    سلام
    مطلب جالبی بود.

    1. Avatar for Phoenix Phoenix گفت:

      سلام بر عبدالله عزیز. سپاس از نطر مثبت شما. سعی می‌کنیم قسمت‌های بعدی را جالبتر و ملموس‌تر ارائه بدهیم.

  4. Avatar for MSON MSON گفت:

    بسیار مطلب مفید و قابل تاملی بود

    1. Avatar for Phoenix Phoenix گفت:

      سپاس از نظر مثبت شما دوست عزیز.

  5. Avatar for نوید نوید گفت:

    سلام. ممنون از مطلب خوب شما.
    شاید بتوانم نظرم را این‌طور دیگری بیان کنم که بگویم: «کشوری که عموم افرادش چنین دیدگاهی داشته باشند، هرچه مشکل اقتصادی داشته باشند حقّشان است.» امّا با خود می‌گویم شاید درست نباشد در مورد مسئله‌ای صحبت کنم که اشرافی به آن ندارم بنابراین:
    به نظر بنده، اگر جامعه چنین دیدی نسبت به کسب دانش در دانشگاه‌ها دارد حتماً دلایل واضحی داشته، که باید به آن‌ها پرداخته شود. البتّه از آن جا که رشته‌ی من کامپیوتر است، لذا شاید مواردی که در ادمه بیان می‌کنم برای دیگر رشته‌ها لزوماً درست نباشد.

    برای بررسی دقیق‌تر شاید بهتر باشد دو وجهه‌ی آموزشی و پژوهشی یک دانشگاه را در نظر بگیریم. مقطع کارشناسی (undergraduate) بیشتر به وجهه‌ی آموزشی و ساختن پایه‌های تئوری و اندکی هم عملی در یک رشته می‌پردازد و تلاش دارد یک تصویر کلّی نسبت به کاربردها و فیلدهای آن رشته در ذهن دانشجو ترسیم نماید. در صورتی که این پایه‌ها به خوبی آموزش داده شوند، دانشجو احتمالاً می‌تواند یکی از دو راه پیش روی خود را انتخاب نماید:
    1) ورود به صنعت و بازار کار به عنوان شخصی که دانش کافی از تئوری و ابزارهای حوزه‌‌اش دارد و به دنبال کسب تجربه‌ی کافی‌ در بازار کار است تا بتواند پله‌های ترقّی را در حوزه‌ی خودش طی کند. (در این مورد وجهه‌ی آموزشی دانشگاه پررنگ‌تر است)
    2) ورود به دوره‌های تحصیلات تکمیلی با توجّه به علاقه‌ی فرد به یکی از زمینه‌های تخصصی رشته‌اش که در کارشناسی با آن‌ها آشنا شده‌است، عمیق شدن در آن حوزه و تلاش در حل چالش‌هایی که تا کنون حل نشده باقی مانده‌اند. (در این مورد وجهه‌ی پژوهشی دانشگاه پررنگ‌تر است)

    پیش‌نیاز مورد اوّل، وجود صنعتی فعّال با قدرت مالی خوب است که نیاز به افرادی بیش از یک تکنسین دارد. به این معنا که نیاز به استفاده از دانش در عمل دارد. در واقع این مورد زمانی محقق می‌شود که بخواهیم صاحب تکنولوژی باشیم.
    پیش‌نیاز مورد دوّم هم مجدّداً به وجود صنعتی فعّال امّا این بار با قدرت مالی بسیار بالا که توانایی ریسک داشته باشد و بخواهد مزایای رقابتی ایجاد کند، وابسته است. به این معنا که توانایی این را داشته باشد روی تحقیقاتی سرمایه‌گذاری کند که ممکن است به نتیجه نرسند امّا اگر به نتیجه برسند جهش قابل توجّهی در ارزش آن کمپانی به‌وجود خواهد آمد.
    امّا مورد دوّم پیش‌نیاز بزرگ دیگری هم دارد و آن اعتماد صنعت به دانشگاه و ارزشمند شمردن چالش‌های صنعت برای اساتید و پژوهشگران دانشگاهی است.
    (شایان ذکر است، پیش‌نیازهای دیگری هم وجود دارند که در مواردی مهم خواهند بود امّا به طورکلّی این موارد اهمیّت بیشتری دارند.)

    صحبت در مورد اتفّاقاتی که افتاده‌اند یا باید بیفتند تا این شروط ارضا شوند، باعث طولانی شدن بحث می‌شود و نیاز به متخصصین این امر نیز دارد. امّا تا همین نقطه هم می‌توان نتیجه گرفت که گرچه اگر به صورت global و جهان‌شمول به مسئله نگاه کنیم، بدون شک علوم پایه و همچنین علوم کاربردی و مهندسی نقش بسیار تأثیر گذاری در تک‌تک لحظه‌های هر فرد دارند، ولی ممکن است نیاز جوامع در دوره‌های مختلف، متفاوت باشد. شاید در این مقطع از رشد یک کشوری مثل ایران با شرایط اقتصادی خاص و تحریم‌هایی که بر آن وارد شده است، ما نیاز به تعداد زیادی مهندس و پژوهشگر نداشته باشیم و باید برای تولید هر سه دسته از افراد زیر تلاش کرد:
    1) تکنسین‌ها
    2) مهندسان
    3) پژوهشگران
    در هر یک از سه دسته به ترتیب از بالا به پایین تعداد افراد بیشتری را نیاز داریم؛ یعنی تعداد تکنسین‌ها باید بسیار بیشتر از پژوهشگران باشد. امّا به نظر می‌رسد در ایران برعکس است. همچنین پژوهشگران باید به چالش‌های داخلی خیلی بیشتر توجّه کنند و این نیازمند تغییر معیارهای ارزیابی دانشگاه‌هاست که ظاهراً هدف خودشان را فراموش کرده‌اند.

    همانطور که در ابتدا عرض کردم صحبت‌های بنده بیشتر در جهت رشته‌ای بود که خوانده‌ام و شاید کمی بیشتر در مورد رشته‌های مهندسی و علوم پایه. و [با وجود این‌که قطعاً صحبت‌هایم در حوزه‌ی خودم هم اشکال خواهند داشت ولی] به خود اجازه‌ی نظر دادن نسبت به دیگر حوزه‌ها را نمی‌دهم. (گرچه به شدّت به علوم اجتماعی احترام می‌گذارم)

    1. Avatar for Phoenix Phoenix گفت:

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

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

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

      در آخر بگویم که شما بین خطوط را خوب خواندید و متوجه موضوع شدید.

      موفق و پیروز باشید.

      1. Avatar for نوید نوید گفت:

        با سلام مجدد. سپاس از اینکه وقت گذاشتید و نظر بنده را خواندید.
        با بند اوّل نظرتان موافق نیستم. در واقع ما از نظر تولید علم بسیار هم خوب هستیم. مسئله‌ای که بنده به آن اشاره کردم، عدم انطباق علم تولیدی با نیازهای داخلی است. علمی که در ایران تولید می‌شود اتّفاقاً بسیار ارزشمند است امّا معمولاً بیشترین سود را همان کشورهایی می‌برند که دشمن حسابشان می‌کنیم. اساتید و پژوهشگران ما (معمولاً) علاقه‌مندند روی لبه‌ی علم حرکت کنند و تحقیقاتشان را با علم روز منطبق کنند امّا صنعت بسیار عقب‌تر از آن است. گرچه در رشته‌ی من اوضاع از دیگر رشته‌ها خیلی بهتر است و بهتر هم خواهد شد. در حال حاضر در ICT شرکت‌هایی میبینیم که به مرحله‌ای رسیده‌اند که نیاز به پژوهشگر دارند.
        بنده هم مثل شما معتقدم موضوع قابل حل است، به شرطی که هر فردی خودش را نسبت به جامعه و بیت‌المال مسئول بداند. چه قانون‌گذاران، چه اساتید و چه ما دانشجویان که در حال تحصیل رایگان هستیم و شاید بد نباشد در کنار رشد فردی به رشد جامعه‌مان هم فکر کنیم.
        در واقع وقتی «همه» به این نتیجه رسیدیم که اصلی‌ترین ملاک ارزش‌مندی هر شخصی، میزان تأثیرگذاری او بر جامعه‌اش (social impact) است، آن زمان به سوی مسیر درست پیش خواهیم رفت.

        1. Avatar for Phoenix Phoenix گفت:

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

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

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

          حقیقتا بیاییم چندین هزار مقاله که اکثر اونا یا از ژورنال‌های معتبر نیستند یا اگر هستند از رتبه کافی برخوردار نیستند و کتاب‌هایی که فقط تالیف داخل هستند را تولید علم ندانیم.

          در طول یک دوره چند ساله کوتاه تولید مقالات ما از 5 هزار میرسه به 35 هزار، یعنی 7 برابر البته اعداد دقیق نیستند. و بعدا هم خیلی از افراد سیاسی استناد میکنن به همین آمار و می‌گویند ما تولید علم داشتیم. آیا واردات ما به کشور یک هفتم شد؟ آیا فرهنگ و جامعه ما هفت برابر رشد داشته است؟ آیا در هر زمینه‌ای ما به میزان رشد این مقالات پیشرفت داشته‌ایم؟ پس نتیجه این است که یا آمار دروغ است یا اگر دروغ نیست کیفیت لازم را نداشتند و فقط به فکر کمیت بودند و یا مشکلات دیگر. در این زمینه دکتر گلشنی در دانشگاه شریف به صورت مفصل یک سخنرانی داشتند خالی از لطف نیست که اون سخنرانی را ببینید و اتفاقا بعد از اون سخنرانی ایشون از کار برکنار میشن و ظاهرا بازنشستگی اجباری…

  6. Avatar for حسین حسین گفت:

    با سلام .
    تشکر بابت مقاله .
    همین مسئله ای که فرمودید . تفاوت بین کشورهای تولید کننده تکنولوژی و کشورهای مصرف کنده تکنولوژی است.
    نگاه در کشورهای عقب مانده فیزیکال و به شدت عملگرا است و از سر منشاء دانشها اطلاعی ندارند . برای همین شخصی مثل مهران مدیری
    میگه که اصلا دلیل وجود ریاضیات رو نمیفهمه !!!! چون تکنولوژی در جامعه ما تولید نشده که ملت نقش علوم پایه رو در تکنولوژی بدونن .
    پایه ای ترین چیزی که داریم اینه :
    منطق
    و بقیه تعاریف به این صورت هستند( البته از نظر خودم ):
    فلسفه :
    منطق + چند اصل موضوعه ( گزازه های صحیح ) => گزاره های جدید بر اساس اصول موضوعه و منطق (فلسفه)
    ***********
    ریاضیات :
    فلسفه ای است که در مورد چیزهای قابل اندازه گیری مطالعه میکند.
    ***********
    مکانیک : ریاضیاتی که به شکل و حرکت چیزها و کنش آنها با هم فارغ از جنس آ نها میپردازه .
    *************
    ترمو دینامیک : ریاضیاتی که به انتقال انرژی بین اجسام مربوط میشه .
    *************
    شیمی :
    ریاضیاتی که به کنش مواد با هم دیگه فارغ از شکل آنها میپردازه ( معادلات شیمی در واقع شکلی از معادلات ریاضی هستند )
    **********

    و جالبه که بدونید اولین کامپیوتر دنیا رو دانشجوهای رشته ریاضی یکی از دانشگاهای آمریکا ساختن .
    اونموقع هنوز علم کامپیوتر از ریاضیات جدانشده بود .!!! و ساختن ماشینهای محاسبه از دغدغه های ریاضیدانها بود ( بلز پاسکال در قرن شانزدهم و چارلز بابیج در قرن هجدهم نمونه هایی رو ساخته بودن .)

    1. Avatar for Phoenix Phoenix گفت:

      سلام و درود بر حسین نازنین. اجازه بدهید اعتراف کنم در طول این مدت که مطالبی را در سیسوگ منتشر می‌کنم، نظر شما بهترین و جامع‌ترین نظر بوده است. و همچنین نقدی منصفانه و آگاهانه در این باب ارائه دادید، گرچه ممکن است با شما در رابطه با تعاریفی که کردید اختلاف نظر داشته باشم. قرار بر این بود که مجموعه “اهمیت تئوری و ریاضیت در برنامه‌نویسی” در چندین قسمت منتشر شود، اما به دلیل استقبال کم نزدیک بود بیخیال قسمت‌های بعد شویم تا اینکه شما به ما این دلگرمی را دادید که هنوز هم هستند افرادی که حداقل اهمیتی برای همچین موضوعاتی قائل می‌شوند. در نهایت این را بگویم که ما بسیار خوشحالیم که مخاطبینی همچون شما ما را دنبال می‌کنند.

      1. Avatar for حسین حسین گفت:

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

        1. Avatar for Phoenix Phoenix گفت:

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

  7. Avatar for علی علی گفت:

    سلام و خسته نباشید
    منکر کاربرد ریاضیات در هر شغلی نیستم ولی باور دارم سیستم آموزشی ما اموزشهایی که قطعا برای هر کس کاربرد داره را رها کرده و چسبیده به اموزشهایی که شاید یه روزی یه جایی بدرد خورد…
    مثل انتگرال مشتق لیمیت و…
    باید طوری باشه که ما کاربرد مباحث تئوری را بفهمیم کجاس تا اگر روزی نیاز بهش داشتیم بریم سراغ فرمولش نه اینکه همه فرمولها را حفظ کنیم و هیچکس هم ندونه به چه درد میخوره
    مصداق بارز درس کنترل خطی?

    1. Avatar for Phoenix Phoenix گفت:

      اینکه سیستم آموزشی ما ضعف‌های شدیدی دارد که گاها فاجعه می‌آفریند را نه تنها من بلکه خود اساتید مطرح، دانشگاه‌‎‌های بزرگ هم نمی‌توانند انکار کنند. ولی در مورد اینکه این مفاهیم کجا کاربرد دارند، جایگاه این مطالب در ایران عزیز ما کجاست و آیا نیاز هست ما آنها را یاد بگیریم، ارجاعتون میدم به نظر دوستمون، حسین عزیز در همین پست. که انصافا بهترین پاسخ برای سوال شما خواهد بود.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *