সর্বশেষ সম্পাদনা করেছেন পরিবেশ প্রকৌশলী (১৯-১১-২০১৬ ০০:২২)

টপিকঃ হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

(লেখাটা বটগাছ বিভাগেও যেতে পারে, পড়াশোনাতেও হয়তো যেতে পারতো; কিন্তু আমার মনে হয়, শেষ পর্যন্ত আলোচনা প্রোগ্রামিং-এই সীমাবদ্ধ হয়ে যাবে তাই 'প্রোগ্রামিং' ফোরামে দেয়া।)

৮ বছর হল শিক্ষকতা করি। আমার কাজ ও শেখানোর বিশেষায়িত ক্ষেত্র হল পানি পরিশোধণ, সরবরাহ ব্যবস্থা, বর্জ্য পরিশোধণ, পয়ঃনিষ্কাশন, তরল ও কঠিন বর্জ্য ব্যবস্থাপনা, পরিবেশগত প্রতিক্রিয়া ইত্যাদি। এর সাথে সেঁচ ব্যবস্থার কোর্সটাও নিতাম। আগ্রহ আছে পানি সম্পদ ব্যবস্থাপনার কোর্স তথা হাইড্রলজি, ওপেন চ্যানেল ফ্লো বিষয়ে।

কিছুদিন আগে কর্মক্ষেত্র পরিবর্তন করে বাসা এবং বাচ্চার স্কুলের কাছাকাছি জায়গায় চলে এসেছি। যেখানে যোগ দিয়েছি সেখানকার সিভিল ইঞ্জিনিয়ারিং বিভাগটা নতুন শুরু হয়েছে। তাই আমার জন্য যুতসই বিষয়গুলো এখনো পাওয়া যাচ্ছে না (ওগুলো ৩য়+৪র্থ বর্ষের জিনিষ)। কিন্তু সিভিল ইঞ্জিনিয়ারিং বিষয়ে বুয়েট থেকে বিএসসি পাশ করে যদি এই বিষয়ের অন্য কোর্সগুলো না পড়াতে পারি তাহলে সেটা হাস্যকর শোনাবে। সদ্য পাশ করে শিক্ষকতায় আসা লোকজনও এই ক‌োর্সগুলো পড়িয়ে যাচ্ছে – আর প্রায় সেইম সিলেবাসে পাশ করে এবং এ্যাতবছরের কাজ এবং শিক্ষকতার অভিজ্ঞতা নিয়ে আমি সেগুলো পড়াতে পারবো না!?!?

যা হোক, গতবার ক্যাড কোর্সের ল্যাব নিয়েছিলাম। ক্যাডে আমি নিজে যথেষ্ট আত্মবিশ্বাসী হলেও, শিক্ষাপ্রতিষ্ঠানে প্রচলিত ধারণা ‘অটোক্যাড’ নামক সফটওয়্যার শিখতে বা শিখাতে হবে। আমি নিজে এই সফটওয়্যারে বেশ দক্ষ হলেও এটার উচ্চমূল্য + আমার অপারেটিং সিস্টেমের সাথে যায় না বলে ব্যবহার করি না। বিকল্প ক্যাড সফটওয়্যার ব্যবহার করে আমার নিজের কনসালটেন্সির কাজ করি --- অর্থাৎ আমি একাধিক ক্যাড সফটওয়্যারে দক্ষ। আমাদের ছাত্রাবস্থায় এই কোর্সটা বুয়েটে ছিল না, কিন্তু এখন আছে; কাজেই ফ্রেশ গ্রাজুয়েটরাও এই বিষয়টা পড়াতে পারবে - যদিও ব্যবহারিক বিষয় পড়াতে বাস্তব প্রয়োগের অভিজ্ঞতা খুব দরকারী একটা বিষয়।

এবার ‘ইঞ্জিনিয়ারিং ড্রইং’ নামের ল্যাব কোর্সটা নিচ্ছি। এটাতে সরাসরি বড় কাগজে আঁকাআঁকি হাতে ধরে শিখাতে হয়। স্কেল ধরে সোজা লাইন টানাও যে কারো জন্য কঠিন কাজ সেটা শিখাতে গিয়ে টের পেলাম। একদিকের দৃশ্য দেখে অন্যদিক থেকে সেটা কেমন দেখাবে সেটা আঁকা এটাতে একটা বাধ্যতামূলক বিষয় – এই কাজটার জন্য কল্পনাকে প্রসারিত করতে হয়। মানুষের কল্পনা শক্তিকে প্রসারিত করা যথেষ্ট কঠিন কাজ বলেই মনে হচ্ছে। হঠাৎ বুঝতে পারলাম আমরাও আমাদের শিক্ষকদের একই রকম পেইন দিয়ে এসেছি।

এবার আমি কোর্সগুলোর মধ্য থেকে ‘নিউমেরিকাল অ্যানালাইসিস এন্ড কম্পিউটার প্রোগ্রামিং’ নামে একটা ক‌োর্স পড়াবো বলে ঠিক করলাম। এটা সিলেক্ট করার কারণ, আমার একজন কলিগ এটা পড়াতো - এখন উচ্চশিক্ষার্থে বিদেশে চলে গেল। এটার সাথে প্রোগ্রামিং-এর আরেকটা ল্যাব কোর্সও আছে। খেয়াল করলাম যে এই কোর্সেটা পড়াতে অনেকেই আগ্রহ পায় না – হয়তো প্র‌োগ্রামিং বিষয়টা অনেকেরই অপছন্দের। বুয়েটের সিলেবাস ফলো করে এই ক‌োর্সে ম্যাটল্যাব নামক একটা সফটওয়্যার শিখাতে হয়। অবশ্য কিছুদিন আগে নাকি বুয়েটে এই ক‌োর্সে সি অথবা সি++ শিখাত‌ো। আমাদের সময়ে এই কোর্সে ForTran77 নামক ল্যাঙ্গুয়েজ শিখিয়েছিল।

ম্যাটল্যাব কখনো দেখিনি। কিন্তু তাতে কি! ফোরট্রান তো ভালই পারতাম। এছাড়া আমার আন্ডারগ্রাড থিসিস ছিল কিউবেসিক ল্যাঙ্গুয়েজে করা একটা প্রোগ্রাম: এটার জন্য নগদে QBasic ল্যাঙ্গুয়েজটা শিখেছিলাম। এই প্রোগ্রামটা কিছু স্ট্রাকচারাল অ্যানালাইসিস করতে পারতো এবং গ্রাফিকাল আউটপুট দিত। বেশি না, ফাংশন টাংশন সহ সব মিলিয়ে দেড় হাজার লাইনের চেয়ে একটু বেশি কোডিং ছিল সেটাতে! সেটা ব্যবহার করে আমার সুপারভাইজার স্যার একটা কনসালটেন্সির কাজও করেছিলেন বলে জেনেছি পরবর্তীতে।

বুয়েটে ভর্তির আগে গাঁটের পয়সা খরচ করে ‘ফক্সপ্রো’ নামে একটা প্রোগ্রামিং শিখেছিলাম। এটা দিয়ে ডেটাবেস টাইপের কাজ করা যেত। ফক্সপ্রো’র একটা চমৎকার গ্রাফিকাল ইউজার ইন্টারফেসও (GUI) ছিল – সেটা দিয়েও দারুন কাজ করা যেত; তবে আমি শিখেছিলাম প্রোগ্রামিং। ফক্সপ্রো বহু আগেই মার্কেটে হারিয়েছে, এমনকি মাইক্রোসফটের অধিকারে যাওয়ার পরও। প্রায় একইরকম ‘মাইক্রোসফট অ্যাকসেস’ ব্যবহার করেছিলাম একসময়। সম্ভবত ‘ওরাকল’ নামক ডেটাবেস প্রোগ্রামের সাথে ফক্সপ্রো পেরে উঠেনি।

নিজের আগ্রহে html নামক একটা জিনিস শিখেছিলাম বহু আগে। কাজেও লাগিয়েছিলাম: বিয়ের প্রস্তাব পাঠানোর সময়ে নিজের বায়োডাটা একটা html ফাইল বানিয়ে ফ্লপি ড্রাইভে ভরে পাঠিয়েছিলাম। সেখানে বামদিকে নিজ পরিবার, শিক্ষা, মায়ের দিকের আত্মীয়স্বজন, বাপের দিকের আত্মীয় স্বজন ইত্যাদির লিস্টের মত ছিল; ক্লিক করলে ডানদিকের প্যানেলে সেটা খুলতো। প্যানেলের পেছনে টাইল ব্যাকগ্রাউন্ড ছিল। এছাড়া একটা মিডি ফাইলে থাকা মিউজিক বাজতো ব্যাকগ্রাউন্ডে! আমার শ্বশুর সাহেব আত্মীয়-স্বজনদেরকে সম্ভাব্য জামাইয়ের প্রোফাইল দেখাতে - সেটা থেকে দেখে আবার টিপিকাল একটা সিভি টাইপ করে নিয়েছিলেন।

পরবর্তীতে .. .. অনেক দিন পর, কয়েক বছর আগে একটা শখ জাগলো যে অনলাইনে একটা ক্যালকুলেটর টাইপের জিনিষ বানাবো। এখন তো রিস‌োর্স অনেক সহজলভ্য। নেট ঘেটে php নামক ল্যাঙ্গুয়েজের টিউটোরিয়াল ঘাটতে থাকলাম। তখন একজন বললো - আরে ভাই, আপনি জাভাস্ক্রিপ্ট শেখেন; php ব্যাকএন্ডে সার্ভারে ডেটাবেজ রাখে, আপনার দরকার পুরাটা ব্রাউজারে রান করানো জিনিষ, যেটা জাভাস্ক্রিপ্ট করে। তাই এবাউট টার্ন করে জাভাস্ক্রিপ্টের কোড দেখে শেষে একটা দাঁড় করিয়ে ফেললাম। ব্লগস্পটে আমার ব্লগে সেই কোড দিতেই যা চাইছিলাম তা হয়ে গেল। সেটা ছিল সেপটিক ট্যাংক ক্যালকুলেটর - এখনো সেটা চমৎকার চলছে
‌‌
এছাড়া নিয়মিত ভাবেই স্প্রেডশিট প্রোগ্রামে কোড লিখতে হয়। আগে এক্সেলে আর এখন লিব্রেঅফিসক্যালক-এ। ভাল এক্সেল জানে দাবী করা লোকজনও স্প্রেডশিটে আমার করা প্রোগ্রামগুলো দেখে ইমপ্রেস্ড হয়। আগের উল্লেখিত সেপটিক ট্যাংক ক্যালকুলেটরও প্রথমে একটা প্রিন্টরেডি স্প্রেডশিট প্রোগ্রাম ছিল (আছে এখনও)। বিশেষত সিভিল ইঞ্জিনিয়ারদের স্প্রেডশীট ছাড়া পেশাগত জীবন অচল – অন্ততপক্ষে ডিজাইনের কাজ যারা করে। নিজে না করলেও কোনো বড়ভাইয়ের করা এক্সেল শীট দিয়ে সারাজীবন ডিজাইন করে খাচ্ছে এমন ইঞ্জিনিয়ারও আছে।

এ্যাতগুলো প্রোগ্রাম করার ব্যাপক (!!) অভিজ্ঞতা থাকায় সাহস করে এবার ম্যাটল্যাবের ল্যাব কোর্সটা পড়ানোর জন্য নিয়েই ফেললাম। ছাত্রদের কাছে আমার সহজ স্বীকারোক্তি – আমি ম্যাটল্যাব পারিনা; সবাই একসাথে এটা শিখবো। অবশ্য এখনকার বিশ্ববিদ্যালয়ে পড়ানোর ধারণাটাও এরকমই। শিক্ষক পড়ায় আর ছাত্ররা শিখে – ব্যাপারটা এমন নাই। এখানে সবাই শিখে; শিক্ষকের কাজ হল শিখতে সাহায্য করা = ফ্যাসিলিটেটর।

মুশকিল হল, ম্যাটল্যাবও একটা মালিকানাধীন সফটওয়্যার। এমনকি এটার ছাত্র-ভার্সনও দাম দিয়ে কিনতে হয়। তাই বিকল্প হিসেবে এর সাথে অকটেভ (GNU Octave) নামক ফ্রী-সফটওয়্যারটাও শেখা জরুরী - কারণ এটার প্রায় ৯৫% কমান্ডই ম্যাটল্যাবের মত কাজ করে। দুইটা ল্যাব রুম ব্যবহার করে ভিন্ন ভিন্ন সময়ে  ক্লাসগুলো নিতে হয়। ইউনিভার্সিটির একটা ল্যাবে দেখি MatLab ইনস্টল করাই আছে (অবশ্যই পাইরেটেড), আরেকটাতে কিচ্ছু নাই। সেই কিচ্ছু-নাইয়েরটাতে কবে ওনারা ম্যাটল্যাব ইনস্টল করবে, এই ভেবে অকটেভ ইনস্টল করে নিলাম – আসলে ইনস্টল বলতে যা বুঝায় সেটা করার দরকার হয়নি; কারণ যেই ফাইলটা ডাউনলোড হয়েছে সেটা পোর্টেবল সফটওয়্যার!

এখন যে বিষয়ে সাহায্য দরকার সেটা হল – শেখানোর জন্য ছোট ছোট প্রোগ্রামের আইডিয়া (উদাহরণের মত করে)। তার সাথে এসাইনমেন্ট দেয়ার জন্য প্র‌োগ্রামের আইডিয়া দরকার। আমার করা প্রোগ্রামগুলো এখন ওদের হজম হবে না, কারণ এগুরলোর দরকারী সূত্রগুল‌ো ৩য়/৪র্থ বর্ষের আগে শেখার তেমন কোন সুযোগ নাই। ইতিমধ্যে কয়েকটা প্রোগ্রাম করিয়েছি কিংবা করাবো বলে ঠিক করেছি সেগুলো এখানে দিলাম –

১। সূত্র দিয়ে, ইনপুট নেয়া আর আউটপুট দেয়ার প্রোগ্রাম। পরে এর কোড আর ধাপগুলো দিলাম (BMI)।
২। একটা সংখ্যা মৌলিক সংখ্যা কি না সেটা বের করার প্রোগ্রাম
৩। একটা রেঞ্জের মধ্যে সবগুলো মৌলিক সংখ্যা বের করার প্র‌‌োগ্রাম
৪। নিউমেরিকালের বাইসেকশন, সেকান্ট মেথডের প্রোগ্রাম। এটাতে ক্যারেক্টার ইনপুটকে ইকুয়েশন হিসেবে নেয়া শেখে।
৫। ট্রাপেজয়ডাল রুল আর সিম্পসনস রুল ব্যবহার করে ইন্টিগ্রেশন প্রোগ্রাম।

যা যা করানো হবে/হচ্ছে:
ক) লজিকাল অপারেটরের ব্যবহার। if elseif else end, switch ইত্যাদি।
খ) লুপ কমান্ড। for, while লুপের ব্যবহার।
গ) পলিনোমিয়ালের রুট বের করা। (মূলত: এক লাইনেই হয়)
ঘ) মেট্রিক্সের সাহায্যে কয়েকটা ভ্যারিয়েবল একবারে সলভ করা। (মূলত: এক লাইনেই হয়)
ঙ) ২ডি, ৩ডি গ্রাফ আঁকা : প্লট, সাবপ্লট, এক্সিস, রং দেয়া ইত্যাদি
চ) ইন্টারপোলেশন
ছ) লিস্ট স্কয়ার কার্ভ ফিটিং

স্যাম্পল প্রোগ্রাম: BMI বের করার প্রোগ্রাম (BMI = kg/m^2)।
- প্রথম ধাপে এতে শুধু ইনপুট নেয়া আর আউটপুট দেয়া শেখে।
- পরবর্তী ধাপে If else end … বা if elseif else … end দিয়ে রেজাল্টের উপরে মন্তব্য করা শেখে। সাথে ক্যারেক্টার স্ট্রিং দিয়ে মন্তব্য বানানোও শেখে।
- পরবর্তী ধাপে ভুল ইনপুট রিজেক্ট করে আবার ইনপুট চায় – এতে প্রথমে for লুপ আর পরে while লুপ দেখানো হয়।

শুরু হয় এই ক‌োড দিয়ে

kg=input('Please insert your weight in Kg = ');
m=input('Please insert your height in meters = ');
bm=kg/m^2

ধাপে ধাপে একই প্রোগ্রাম শেষে এই ক‌োডে রূপান্তরিত হয়:

clear
clc
disp('This is a program to calculate the Body Mass Index (BMI)')
disp('========================================================')
kg=input('Please insert your weight in Kg = ');

% Check the if the value is OK or not

while 1
  if kg<=0
    disp('Your Weight is too low for such calculations ...')
    kg=input('Please correctly enter your weight in kg = ');
  elseif kg>150
    disp('You have entered an abnormally high value of weight ...')
    kg=input('Please correctly enter your weight in kg = ');
  else
    disp(' ')
    break
  end
end

% Now the value is OK
d1=['Your weight is = ',num2str(kg),' kg(s)'];

m=input('Please insert your height in meters = ');

% Check the if the value of m is OK or not
while 1
  if m<0.3
    disp('Your Height is too low for such calculations ...')
    m=input('Please insert your height in meters = ');
  elseif m>2.5
    disp('You have entered an abnormally high value of height ...')
    m=input('Please insert your height in meters = ');
  else
    disp(' ')
    break
  end
end

% Now the value is OK
d2=['Your height is = ',num2str(m),' m(s)'];

% Next line is the main calculation of the program!!
bm=kg/m^2;
d3=['Your BMI is = ',num2str(bm)];

% Comments on the results
if bm<18.5
    d4='BMI < 18.5 ; You are Under-Weight.';
elseif bm<25
    d4='Wow! 18.5 < BMI < 25 ; Your BMI is in normal range.';
elseif bm<30
    d4='25 < BMI < 30 ; You are Over-Weight.';
else
    d4='BMI > 30 ; You have Obesity.';
end

% displaying final output
disp('============Results============')
disp(' ')
disp(d1)
disp(' ')
disp(d2)
disp(' ')
disp(d3)
disp(' ')
disp(d4)
disp(' ')
disp('==============End==============')

পরিবেশ প্রকৌশলী'এর ওয়েবসাইট

লেখাটি CC by-nc-sa 3.0 এর অধীনে প্রকাশিত

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

পরিবেশ প্রকৌশলী লিখেছেন:

এবার ‘ইঞ্জিনিয়ারিং ড্রইং’ নামের ল্যাব কোর্সটা নিচ্ছি। এটাতে সরাসরি বড় কাগজে আঁকাআঁকি হাতে ধরে শিখাতে হয়। স্কেল ধরে সোজা লাইন টানাও যে কারো জন্য কঠিন কাজ সেটা শিখাতে গিয়ে টের পেলাম। একদিকের দৃশ্য দেখে অন্যদিক থেকে সেটা কেমন দেখাবে সেটা আঁকা এটাতে একটা বাধ্যতামূলক বিষয় – এই কাজটার জন্য কল্পনাকে প্রসারিত করতে হয়। মানুষের কল্পনা শক্তিকে প্রসারিত করা যথেষ্ট কঠিন কাজ বলেই মনে হচ্ছে। হঠাৎ বুঝতে পারলাম আমরাও আমাদের শিক্ষকদের একই রকম পেইন দিয়ে এসেছি।

কলেজে থাকতে এই জিনিস ছিলো আমার। দেখা যেতো ভালোই শুরু করেছি, ফিনিশিংয়ের টাইমে টের পেতাম দুইটা পয়েন্ট দুই দিকে চলে যাচ্ছে! tongue

সর্বশেষ সম্পাদনা করেছেন Gypsy Saleh (১৮-১১-২০১৬ ২৩:৩৪)

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

পরিবেশ প্রকৌশলী লিখেছেন:

এখন যে বিষয়ে সাহায্য দরকার সেটা হল – শেখানোর জন্য ছোট ছোট প্রোগ্রামের আইডিয়া (উদাহরণের মত করে)। তার সাথে এসাইনমেন্ট দেয়ার জন্য প্র‌োগ্রামের আইডিয়া দরকার।

আগেই বলি আমি প্রোগ্রামিংয়ে ক অক্ষর গোমাংস। ঘটনাক্রমে আমার কাছে একটা ফাইল ছিল তাই দিলাম দেখুন কাজে আসে কিনা।
https://www.dropbox.com/s/ofgyjm6zbl8hx … .docx?dl=0

https://www.dropbox.com/s/7jwhvi5glxec1 … .pptx?dl=0

hard to hate but tough to love

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

coursera তে একখানা ফ্রি কোর্স আছে, চেক করে দেখতে পারেন। আশা করি কাজে দিবে smile
https://www.coursera.org/learn/matlab/

ইট-কাঠ পাথরের মুখোশের আড়ালে,
বাধা ছিল মন কিছু স্বার্থের মায়াজালে...

সর্বশেষ সম্পাদনা করেছেন মোঃজাবেদ হোসেন (১৮-১১-২০১৬ ২৩:৫৪)

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

একটু মনে হয় ভুল আছে smile http://hussainuzzaman2.blogspot.com/p/blog-page.html  ই জিনিসটা জাভাস্ক্রিপ্ট এ করা, জাভাতে নয়।
নামের দিক দিয়ে কাছাকাছি হলেও দুটোর মধ্যে বিস্তর ফারাক smile
অবজেক্ট ডিটেকশনের একটা প্রজেক্ট এর জন্য আমিও ম্যাটল্যাব শেখা শুরু করেছি সম্প্রতি।

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

ম্যাটল্যাব দিয়ে অনেক কিছুই করা যায়। আমরা যখন ছাত্র ছিলাম, যে কোন ইন্সট্রুমেন্টের সিগনাল প্রসেসিং অংশটা ব্লক ডায়াগ্রাম হিসেবেই দেখেছি। স্যারদের জিজ্ঞেস করলে বলতেন, এটাতো ডিএসপি (ডিজিটাল সিগনাল প্রসেসিং) এর ব্যাপার, এটা ওখানে শিখবে। কিন্তু ডিএসপি তে ঐ স্যামপ্লিং শিখাইতে শিখাইতেই দিন শেষ। তাও তাত্ত্বিক। ল্যাবের কথা বাদই দিলাম।  নিউমেরিক্যাল অ্যানালাইসিসেও শুধু থিওরি। ল্যাব হতো না। নিজ চেষ্টায় কিছুটা শিখেছি। এবং আবিষ্কার করেছি যে, এগুলো অমুক জায়গায় শিখাবে, তমুক জায়গায় শিখে আসার কথা, টাইপ কথা বলে এড়িয়ে যাওয়ার আসলে কোন দরকার ছিলো না।  বায়োমেডিক্যাল ইন্সট্রুমেন্টেশন কোর্সটাতে ছাত্র থাকাকালীন সময় একই চিত্র। শুধু জানতাম, ইমেজ প্রসেসিং হয়। ক্যামনে হয় কোন ধারণাই ছিলো না। স্যাররাও শিখায় নাই। আমি যেমন আজকের ইভিনিং ক্লাসে সিটি স্ক্যানের ইমেজিং এর প্রাথমিক ধারণা দিলাম ম্যাটল্যাব দিয়ে। ২*২ পিক্সেলের জন্যে সহজ ১২ লাইনের প্রোগ্রাম। গ্রে-স্কেল ইমেজিং।

যাই হোক, মনের দুঃখে অনেক কথা লিখে ফেললাম। কাজের কথা বলি। ইমেইল চেক করেন। পাঁচটা লেকচারের পিডিএফ পাঠিয়েছি। এগুলো MIT এর ম্যাটল্যাব কোর্সের লেকচার। এতো সুন্দর করে কোথাও আর পাই নাই। উদাহারণ করে দেয়া আছে এবং সেই সাথে প্র্যাকটিস করার জন্যে কয়েকটা করে এক্সারসাইজও দেয়া আছে। এই লেকচারগুলো ফলো করলে আপনি ইন্টারমিডিয়েট লেভেলের ম্যাটল্যাব প্রোগ্রামার হতে পারবেন। আর নিউমেরিক্যালের জন্যে যতদুর মনে পড়ে লেকচার ৩ পর্যন্ত করলেই হবে।

রাবনে বানাদি ভুড়ি :-(

সর্বশেষ সম্পাদনা করেছেন পরিবেশ প্রকৌশলী (১৯-১১-২০১৬ ০০:২৭)

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

মোঃজাবেদ হোসেন লিখেছেন:

একটু মনে হয় ভুল আছে smile http://hussainuzzaman2.blogspot.com/p/blog-page.html  ই জিনিসটা জাভাস্ক্রিপ্ট এ করা, জাভাতে নয়।
নামের দিক দিয়ে কাছাকাছি হলেও দুটোর মধ্যে বিস্তর ফারাক smile
অবজেক্ট ডিটেকশনের একটা প্রজেক্ট এর জন্য আমিও ম্যাটল্যাব শেখা শুরু করেছি সম্প্রতি।

ধন্যবাদ। ঠিক করে দিলাম।

Gypsy Saleh লিখেছেন:
পরিবেশ প্রকৌশলী লিখেছেন:

এখন যে বিষয়ে সাহায্য দরকার সেটা হল – শেখানোর জন্য ছোট ছোট প্রোগ্রামের আইডিয়া (উদাহরণের মত করে)। তার সাথে এসাইনমেন্ট দেয়ার জন্য প্র‌োগ্রামের আইডিয়া দরকার।

আগেই বলি আমি প্রোগ্রামিংয়ে ক অক্ষর গোমাংস। ঘটনাক্রমে আমার কাছে একটা ফাইল ছিল তাই দিলাম দেখুন কাজে আসে কিনা।
https://www.dropbox.com/s/ofgyjm6zbl8hx … .docx?dl=0

https://www.dropbox.com/s/7jwhvi5glxec1 … .pptx?dl=0

ছায়ামানব লিখেছেন:

coursera তে একখানা ফ্রি কোর্স আছে, চেক করে দেখতে পারেন। আশা করি কাজে দিবে smile
https://www.coursera.org/learn/matlab/

তার-ছেড়া-কাউয়া লিখেছেন:

যাই হোক, মনের দুঃখে অনেক কথা লিখে ফেললাম। কাজের কথা বলি। ইমেইল চেক করেন। পাঁচটা লেকচারের পিডিএফ পাঠিয়েছি। এগুলো MIT এর ম্যাটল্যাব কোর্সের লেকচার। এতো সুন্দর করে কোথাও আর পাই নাই। উদাহারণ করে দেয়া আছে এবং সেই সাথে প্র্যাকটিস করার জন্যে কয়েকটা করে এক্সারসাইজও দেয়া আছে। এই লেকচারগুলো ফলো করলে আপনি ইন্টারমিডিয়েট লেভেলের ম্যাটল্যাব প্রোগ্রামার হতে পারবেন। আর নিউমেরিক্যালের জন্যে যতদুর মনে পড়ে লেকচার ৩ পর্যন্ত করলেই হবে।

ধন্যবাদ সব্বাইকে। smile

এখন পর্যন্ত tutorialspoint থেকে কাজ চালিয়েছি। ছাত্রদেরকেও চিনিয়ে দিয়েছি। বেশ ভাল রিসোর্স।

সর্বশেষ সম্পাদনা করেছেন সদস্য_১ (১৯-১১-২০১৬ ০২:১৯)

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

ম্যাটল্যাবের নিজস্ব ডকুমেন্টেশনও খারাপনা। উদাহরনে ভরপুর। আপনার লিস্টই আমার কাছে যথেষ্ট মনে হচ্ছে।

যাই হোক, আগে থাকতে প্রোগ্রামিংএ হাত পেকে যাওয়ায় ক্যালকুলাস-৩ ব্যাবহারিক ক্লাসে যখন ম্যাটল্যাবে হাতেখড়ি হল প্রথম কয়েকদিন নাকসিটকলাম... এইসব কি পোলাপাইন্না জিনিস!  tongue

এরপর কয়েকদিনের মধ্যেই ম্যাটল্যাবের আসল রুপ দেখে যাহারপরনাই ইম্প্রেস্ড! ইনপুট, আউটপুট, লুপ, কন্ডিশন এই সব হল ম্যাটল্যাবের বোরিং পার্ট যদিও শুরুটা এগুলোতেই হয়। এর পর যখন ইকুয়েশন সল্ভ, মেট্রিক্স মেনিপুলেশন, পল্টিং শুরু হয় তখন দেখা যায় ম্যাটল্যাবের মুন্সিয়ানা। ফান স্টাফ!  thumbs_up

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

সদস্য_১ লিখেছেন:

ম্যাটল্যাবের নিজস্ব ডকুমেন্টেশনও খারাপনা। উদাহরনে ভরপুর। আপনার লিস্টই আমার কাছে যথেষ্ট মনে হচ্ছে।

যাই হোক, আগে থাকতে প্রোগ্রামিংএ হাত পেকে যাওয়ায় ক্যালকুলাস-৩ ব্যাবহারিক ক্লাসে যখন ম্যাটল্যাবে হাতেখড়ি হল প্রথম কয়েকদিন নাকসিটকলাম... এইসব কি পোলাপাইন্না জিনিস!  tongue

এরপর কয়েকদিনের মধ্যেই ম্যাটল্যাবের আসল রুপ দেখে যাহারপরনাই ইম্প্রেস্ড! ইনপুট, আউটপুট, লুপ, কন্ডিশন এই সব হল ম্যাটল্যাবের বোরিং পার্ট যদিও শুরুটা এগুলোতেই হয়। এর পর যখন ইকুয়েশন সল্ভ, মেট্রিক্স মেনিপুলেশন, পল্টিং শুরু হয় তখন দেখা যায় ম্যাটল্যাবের মুন্সিয়ানা। ফান স্টাফ!  thumbs_up

এদের স্টাইলে ফ্লো কন্ট্রোলটা রপ্ত করতে একটু সময় লেগেছে - আগে তো ফোট্রান বা কিউবেসিকে goto দিয়ে যেখানে খুশি সেখানে পাঠায় দিতাম --- এখানে আবার সেগুলো নাই; ওগুলো নাকি পঁচা তরিকা; এটুকুই আমার জন্য একটু ঘাটাঘাটির বিষয় ছিল। এছাড়া বেসিক জিনিষ তো সেইম। মেট্রিক্স, ইকুয়েশন সলভ, প্লটিং দেখে আমিও ইমপ্রেস্ড। মুশকিল হল, যাদেরকে শিখাচ্ছি - তাঁদের এটা প্রথম কোনো প্রোগ্রামিং শেখা! আমি তাই এক্সেল দিয়ে কাজ করাও দেখাই। তারপর এটা শুরু করে বলে দেই এই যে ভেরিয়েবল এগুলো হল এক্সেলের সেলের মত; তবে সুবিধা হল, আমাদের ইচ্ছামত নাম দেয়া যায়; আর কমান্ডগুলো সায়েন্টেফিক ক্যালকুলেটরের মতই -- এই বেসিক জিনিষগুলো পরিষ্কার করতে কখনও ৩-৪ ক্লাস চলে যায়।
আর লুপ প্রতিবার কিভাবে এক্সিকিউট করে সেটা ধাপে ধাপে বোর্ডে করে দেখাই, ফ্লো কন্ট্রোলের জন্য continue, break ইত্যাদি সহ কোড লিখাই, বোর্ডে সবগুলো সাইকেল লিখি, আউটপুট দেখি ইত্যাদি বিভিন্ন সার্কাস করার পর দেখেছি তাদের প্রোগ্রেস বেশ ভাল।
ডকুমেন্টেশনগুলো আমার জন্য ঠিক আছে। কিন্তু একেবারে প্রাথমিক লেভেলের ছাত্রদের জন্য সেটা যথেষ্ট টাফ।

পরিবেশ প্রকৌশলী'এর ওয়েবসাইট

লেখাটি CC by-nc-sa 3.0 এর অধীনে প্রকাশিত

১০

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

একবার দেখেছিলাম ম্যাটল্যাবে কবিতাও লেখা যায়

  “যাবৎ জীবেৎ সুখং জীবেৎ, ঋণং কৃত্ত্বা ঘৃতং পিবেৎ যদ্দিন বাচো সুখে বাচো, ঋণ কইরা হইলেও ঘি খাও.

১১

Re: হিজিবিজি কথাবার্তা - ০১ (প্রোগ্রামিং, ম্যাটল্যাব, সাহায্য দরকার)

ম্যাটল্যাবের মুন্সিয়ানা!
https://www.youtube.com/watch?v=UzxYlbK2c7E#t=57m30s
টাইম 57:30 to 1:02:30

অফটপিক: মানুষের ইন্টারেস্ট কিভাবে ড্রপ করে... খুবই ইন্টারেস্টিং। প্রথম ল্যাকটারটা দেখছে ১.২ মিলিওন, দ্বিতীয় লেকচারটা দেখছে আধা মিলিওন, তৃতীয় কোয়াটার মিলিওন... সময়ের সাথে কোনকিছুতে মানুষের ইন্টারেস্ট হারানোর রেট প্রা সুসম!