আসসালামু আলাইকুম, কেমন আছেন ভাইসাহেবেরা? আশা করি ভালোই আছেন। আমিও আল্লাহর রহমতে ভালোই আছি। আমি আজকে কি বিষয়ে আলোচনা করবো তা টিউনের টাইটেল দেখেই বুঝে গেছেন। তবে মনে করবেন না একেবারে সাদামাটা প্রোগামিং শেখাবো আপনাদেরকে। আমি অবশ্যই মানসম্মত ভাবে কোর্সগুলো তৈরী করবো যাতে আপনি কিছুটা হলেও সি প্রোগ্রামিং শিখতে পারেন। আমি জানি প্রতিটা বিষয়ই শিখতে হয়, মানুষ জন্ম থেকেই কোন কিছু শিখে আসে না। আপনারাও হয়তো জানেন। কিন্তু জানেন কি জন্মের পরেও সব মানুষ সব কিছু শিখতে পারে না?
কিছু কথাঃ মুহম্মদ জাফর ইকবাল স্যার বলেছিলেন কম্পিউটারের জন্মই হয়েছিলো কম্পিউট বা হিসেব করার জন্য। এখন কম্পিউটারে মানুষ গান শোনে, সিনেমা দেখে, ফেসবুক ব্যবহার করে , ইন্টারনেট ব্যবহার করে এমনকি চুরি চামারি পর্যন্ত করে কিন্তু কম্পিউট বা হিসেব করে না! অথচ কম্পিউটারে কম্পিউট করার মতো আনন্দ আর অন্য কিছুতেই নেই। কম্পিউটারে কম্পিউট করার জন্য যেটি জানা দরকার সেটি হচ্ছে একটুখানি প্রোগ্রামিং।
আমি চাই টেকটিনসের লেখক বা পাঠক অর্থাৎ বাংলাদেশীরা প্রোগ্রামিং শেখার জন্য এগিয়ে আসুক এবং সেটা হবে আমাদের জন্য বিশাল সাফল্য। আমি এই কোর্সে সি প্রোগ্রামিং এর মৌলিক বিষয়গুলো শেখানোর চেষ্টা করবো যাতে একজন শিক্ষার্থী সি প্রোগ্রামিং সম্পর্কে ভালো ধারণা পায়। এই কোর্সটি করলে আপনি কখনোই একজন বড় প্রোগ্রামার হয়ে যাবেন না বরং আপনি প্রোগ্রামার হওয়া শুরু করবেন। আমার সাথে যদি পুরো কোর্সটা করেন তাহলে বুঝতে পারবেন প্রোগ্রামিং এর চাইতে বেশি আনন্দ আর কোন কিছুতেই নেই। প্রোগ্রামিং এ অনুভব করার মতো অনেক কিছুই আছে আর আপনি যদি সেগুলো ঠিকমতো অনুভব করতে পারেন তাহলে আপনি প্রোগ্রামিং ছাড়া আর কিছু ভাবতেই চাইবেন না। আপনার গান শুনতে মন চাইবে না, সিনেমা দেখতে মন চাইবে না, মন চাইবে শুধু প্রোগ্রামিং করতে!
কেন সি প্রোগ্রামিং শিখবোঃ এই প্রশ্নটা মনে আসা স্বাভাবিক, এত প্রোগ্রামিং ল্যাংগুয়েজ থাকতে আমরা কেন সি প্রোগ্রামিং শিখবো? এটি অনেক পুরোনো ল্যাংগুয়েজ। কিন্তু এটি পুরোনো হলেও অনেক অনেক বেশি জনপ্রিয় একটি ল্যাংগুয়েজ। পৃথিবীর বড় বড় প্রোগ্রামিং প্রতিযোগীতায় যে অল্প কয়টি প্রোগ্রামিং ল্যাংগুয়েজ ব্যবহার করা হয় সি ল্যাংগুয়েজ সেগুলোর মধ্যে অন্যতম। বিশ্বের বড় বড় প্রোগ্রামিং প্রতিযোগীতাতে কখনোই বড় বড় অ্যাপলিকেশন তৈরী করতে বলা হয় না, বলা হয় বেসিক সিনট্যাক্স ব্যবহার করে নতুন ধরণের অ্যাপ তৈরী করতে।
আমি আমার এই কোর্সটিকে এমনভাবে সাজানোর চেষ্টা করবো যাতে আপনারা সি প্রোগ্রামিং এর মৌলিক বিষয়গুলো সম্পর্কে সঠিক ধারণা পান এবং সেগুলো সঠিকভাবে ব্যবহার করতে পারেন। প্রোগ্রামিং চর্চার বিষয়, আপনি ইচ্ছে করলেন আর প্রোগ্রামিং শিখে গেলেন সেটি হতে পারে না। আপনাকে পরিশ্রম করতে হবে ঘন্টার পর ঘন্টা, প্রতিটি কোড নিয়ে কাজ করতে হবে, প্রতিটি সিনট্যাক্স নিয়ে কাজ করতে হবে, প্রতিনিয়ত জানতে হবে নতুন কিছু। এর পরেই না হয় আপনি নিজেকে প্রোগ্রামার হিসেবে দাবি করতে পারবেন। হয়তো বড় বড় প্রোগ্রামিং প্রতিযোগীতায় পুরষ্কার পাবেন। তাহলে দেশের মধ্যে সবচাইতে বোধহয় আমিই বেশি খুশি হবো।
বেশকিছু বড় বড় ওয়েবসাইট আছে যারা প্রোগ্রামিং প্রতিযোগীতার আয়োজন করে। আমি চাই আপনি এসব প্রতিযোগীতায় নিয়মিতো অংশগ্রহণ করবেন। এতে যেমন আপনার প্রোগ্রামিং দক্ষতা বাড়বে তেমনই বিভিন্ন দেশের প্রোগ্রামারদের সাথে আপনি মেশার সুযোগ পাবেন। যদিও ভালো প্রোগ্রামার হওয়ার জন্য আপনার ভালো গণিত জানতে হবে।
যা যা থাকছে এই কোর্সেঃ আমি আগেই বলেছি প্রোগ্রামিং চর্চার বিষয়, এখানে মুখস্ত করার কিছুই নেই। সবকিছু হৃদয় দিয়ে অনুভব করতে হয়। আপনি যদি প্রোগ্রামিং বিষয়টাকে হৃদয় দিয়ে অনুভব করতে পারেন তাহলে আপনার কাছে মনে হবে প্রোগ্রামিং একটি খেলা। কোর্সের লেসনগুলো যত বড়ই হোক না কেন আপনি পুরো লেসন কমপ্লিট করার আগ্রহ পাবেন। আপনার সাথে আমি প্রোগ্রামিং প্রোগ্রামিং খেলবো । দেখবো আপনি জিতেন না আমি জিতি! আমি হয়তবা পারবো না, তাও চেষ্টা করতে দোষ কি?
এই কোর্সে লেসনগুলো দেখে নিনঃ
উপরের গুলো তো বাধ্যতামূলক কোর্স লেসন, ভুল বললাম দেখার পর্যায়! খেলা শুরু করার আগে আপনাকে অবশ্যই নিচের লেখাগুলো পড়ে নিতে হবে।
আমি ধরে নিচ্ছি আপনি উইন্ডোজে প্রোগ্রামিং করবেন। সেইজন্য আপনাকে কোডঃঃব্লকস ইন্সটল করতে হবে। কোডঃঃব্লকস ছাড়াও আপনি যেকোন সি কম্পাইলার ব্যবহার করে সি প্রোগ্রামিং করতে পারবেন। তবে আমি যেহেতু কোডঃঃব্লকস ব্যবহার করে সি প্রোগ্রামিং শেখাবো সেহেতু সবচাইতে বেস্ট হেল্প পাওয়ার জন্য আপনাদেরও উচিত হবে কোডঃঃব্লকস ব্যবহার করা।
কোডঃঃব্লকস ডাউনলোড করতে পারেন এখানে থেকে। এই ওয়েবসাইটের কোডঃঃব্লকস এর ডাউনলোড পেইজের বাইনারিতে গেলে আপনি তিনটি অপশন পাবেন। আপনি দ্বিতীয়টি অর্থাৎ codeblocks13.12mingwsetup.exe ডাউনলোড করবেন। ফাইলটির সাইজ ৯৭ মেগাবাইটের মতো। আর ইন্সটল এর কাজটি অন্যান্য সফটওয়্যার বা গেমসের মতোই। সেজন্য কিছু লিখলাম না।
আমি ধরে নিয়েছি আপনি কম্পিউটার ব্যবহারে দক্ষ কিন্তু প্রোগ্রামিং এ অদক্ষ বা বিষয়টার সাথে অপরিচিত। আমি সেইভাবেই কোর্সের লেসনগুলো তৈরী করবো। প্রোগ্রামিং করার জন্য শুধুমাত্র লেসনগুলো পড়ে গেলেই হবে না, প্রতিটি কোড কম্পিউটারে লিখতে হবে এবং বিল্ড করে চালিয়ে দেখতে হবে। একটি লেসন না বুঝে পরের লেসনে চলে যাওয়া যাবে না। কোন কিছু না পারলে সেটি নিয়ে দীর্ঘ সময় ধরে চিন্তা করতে হবে। প্রথমেই অন্য কাউকে জিজ্ঞেস করা যাবে না। একজন দক্ষ প্রোগ্রামার হওয়ার জন্য যেকোন সমস্যা নিজে নিজে চিন্তা করে সমাধান করাটা অতি গুরুত্বপূর্ণ।
আজকে আর কিছুই বলবো না, পরের পোস্ট থেকে প্রথম লেসন শুরু করে দিবো। লেসনগুলো একটু বড় হতে পারে, কিন্তু হবে খুবই মজার। তাহলে প্রস্তুতি নিন - আপনার সাথে আমার শুরু হবে প্রোগ্রামিং প্রোগ্রামিং খেলা ............'
আমি দেলোয়ার হোসেন দিহান। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 11 বছর 5 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 18 টি টিউন ও 79 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 0 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
ধন্যবাদ , চালিয়ে যাবেন আশা করি ! সাথে আছি