skip to content
গুলবাহার

ইঞ্জিনিয়ারিং নোটবুক: সফটওয়্যার ইঞ্জিনিয়ারদের অজানা অস্ত্র

• ৪ মিনিট

সফটওয়্যার ইঞ্জিনিয়ারিংয়ে আমার কাজের একটি অবিচ্ছেদ্য অংশ হলো হাতে লেখা নোটবুক বা ফিজিক্যাল নোটবুক ব্যবহার করা। কাজের দক্ষতা ও কার্যকারিতা বজায় রাখতে এটি আমার জন্য সবচেয়ে গুরুত্বপূর্ণ ভূমিকা পালন করে। সম্ভবত এটিই আমার কাজের সবচেয়ে গুরুত্বপূর্ণ হাতিয়ার। অথচ খুব কম মানুষকেই আমি এই অভ্যাসটি অনুসরণ করতে দেখি!

মাস্টোডনে (Mastodon) আমি যখন আমার ফলোয়ারদের জিজ্ঞাসা করি, তাদের ২৫ শতাংশ জানান যে তারা ইঞ্জিনিয়ারিং নোটবুক ব্যবহার করেন, ৪০ শতাংশ ব্যবহার করেন না, আর ৩৪ শতাংশ জানেনই না এটি আসলে কী! আমি আরও দুটি প্রোগ্রামিং কমিউনিটির সঙ্গে যুক্ত, সেখানেও প্রায় একই চিত্র দেখেছি। এই অভ্যাসটি আসলে খুব একটা প্রচলিত নয়। তবে যেহেতু অনেকেই এ সম্পর্কে জানেন না, তাই এমনটা ভাবার কারণ নেই যে এটি কেবল নির্দিষ্ট কিছু মানুষের জন্যই কাজ করে। (যদিও এটি নিশ্চয়ই একটি কারণ হতে পারে!)

ইঞ্জিনিয়ারিং নোটবুক কী?

সবার আগে পরিষ্কার করা যাক, আমি আসলে কী নিয়ে কথা বলছি। আমি কোনো নির্দিষ্ট ধরনের বা ব্র্যান্ডের কাগজের নোটবুকের কথা বলছি না। আমি জুপিটার (Jupyter) নোটবুকের কথাও বলছি না। আমি মূলত একটি অভ্যাসের কথা বলছি—কাজ করার সময় নোট নেওয়া; অর্থাৎ আপনি কী করছেন এবং কেন করছেন, তা লিখে রাখা। গবেষকরা দীর্ঘদিন ধরেই ল্যাব নোটবুকে এভাবে তথ্য টুকে রাখেন।

বিভিন্ন ধরনের অনুশীলন থাকলেও, এগুলোর মধ্যে কিছু সাধারণ বৈশিষ্ট্য রয়েছে:

  • পুঙ্খানুপুঙ্খ বিবরণ: আপনি যে কাজটি করছেন তার প্রতিটি বিষয় লিপিবদ্ধ করুন। আপনার অনুমান বা লক্ষ্যগুলো লিখে রাখুন। লেখাটা এতটাই বিস্তারিত হতে হবে যেন অন্য কেউ সেটা পড়ে হুবহু একই ধাপগুলো অনুসরণ করতে পারেন।
  • তারিখ উল্লেখ করা: প্রতিটি লেখার সাথে তারিখ দিতে হবে, যাতে কখন কী হয়েছে তা জানা যায়।
  • তাৎক্ষণিক নোট নেওয়া: প্রকল্প শেষে তথ্য লেখার পরিবর্তে, কাজ চলাকালীনই (Real-time) নোট লিখতে হবে।
  • স্থায়ী রেকর্ড: পুরনো নোট মুছে না দিয়ে, শুধু সামনে এগিয়ে যেতে হবে—এটি ‘অ্যাপেন্ড-অনলি’ (Append-only) পদ্ধতি। কোনো পৃষ্ঠা ছিঁড়ে ফেলা বা পরিবর্তন করা যাবে না।
  • প্রাথমিক উৎস: এটিই হবে আপনার লেখার মূল জায়গা, অন্য কোথাও থেকে কপি করে এখানে আনা যাবে না।

বিস্তারিত লেখার বিষয়টি বিশেষভাবে গুরুত্বপূর্ণ, কারণ আপনার নোট পরে নিজের কাজে লাগলেও, সেটি যেন অন্যের জন্যও উপযোগী হয়। মনে রাখবেন, ভবিষ্যতের ‘আপনি’ আসলে ভিন্ন একজন মানুষ—সবকিছু আপনার মনে থাকবে না। তাই ধরে নিতে হবে যে, আপনি এর বেশিরভাগই ভুলে যাবেন।

আমি কেন ব্যবহার করি

২০১৬ সালে যখন আমি কনসালটিং শুরু করি, তখন থেকেই ইঞ্জিনিয়ারিং নোটবুক ব্যবহার করছি। একসাথে একাধিক ক্লায়েন্ট নিয়ে কাজ করার সময়, সুশৃঙ্খল থাকাটাই ছিল প্রকল্প সফল করার মূল চাবিকাঠি। গত এক দশকে কর্পোরেট চাকরি এবং বিভিন্ন ক্লায়েন্টের কাজ করতে গিয়ে এর উপকারিতা বারবার প্রমাণিত হয়েছে। আমি এটি ব্যবহার করি কারণ এটি আমাকে তথ্য মনে রাখতে এবং স্পষ্টভাবে চিন্তা করতে সহায়তা করে।

আমার নোটবুকটি স্মৃতি ধরে রাখতে অবিশ্বাস্যভাবে সাহায্য করে—মূলত দুইভাবে। প্রথমত, কোনো কারণে সাময়িক বিভ্রান্তি বা দীর্ঘ সপ্তাহান্তের বিরতি শেষে কাজে ফেরার সময় আমি সহজেই দেখে নিতে পারি আগে কী কাজ করছিলাম। দ্বিতীয়ত, কোনো কিছু মনে রাখার জন্য হাতে লিখে রাখাটা আমার কাছে সবচেয়ে কার্যকর উপায় বলে মনে হয়েছে। গবেষণাও সম্ভবত একই কথা বলে—কায়িক পরিশ্রম করে লেখা (যেমনটা হাঁটা বা চলাফেরার ক্ষেত্রে হয়) চিন্তা ও স্মৃতিশক্তি বাড়াতে সাহায্য করে, যদিও সবার জন্য তা সত্য নাও হতে পারে। যাই হোক, সম্ভব হলে এটি চেষ্টা করে দেখার মতো একটি বিষয়।

এটি চিন্তাভাবনার জন্যও দারুণ একটি হাতিয়ার। কাজ করার সময় আমি বিভিন্ন বিষয় লিখে রাখি, যাতে সেগুলো পরে কাজে লাগানো যায়। কোড পরিবর্তন করার পরে লেখার চেয়ে, সাধারণত আমি এডিটরে কোড লেখার আগেই নোটবুকে লিখে ফেলি (বা অন্তত লেখার চেষ্টা করি)। এর ফলে কিবোর্ডে হাত রাখার আগেই আমি ভাবতে বাধ্য হই। হাতে লেখার মধ্যে জাদুকরী কিছু একটা আছে, যা আমরা অনেকেই অনুভব করেছি—যেমন সাদা বোর্ডে (Whiteboard) কোনো সমস্যার সমাধান করার সময় হয়। এর ফলে আমি কী করছি এবং কোন বিষয়গুলো এখনো আমার অজানা, তা স্পষ্টভাবে বুঝতে পারি।

সত্যি বলতে, আমি পরে পড়ার জন্য নোট রাখি না। প্রতিদিনের স্ট্যান্ডআপ (Standup) মিটিংয়ে আগের দিনের কাজের আপডেট দেওয়া ছাড়া আমার নোটবুকটি খুব একটা কাজে লাগে না। আর আমি সাধারণত এটি কাউকেই দেখাই না। এগুলো সম্পূর্ণ আমার নিজের কাজের জন্য। লেখাটাই আসলে কাজ, কারণ এটিই চিন্তার প্রতিফলন।

যেহেতু অনেকেই দেখতে চেয়েছেন, তাই আমি আমার সাইড প্রজেক্টের ইঞ্জিনিয়ারিং নোটবুক থেকে একটি পৃষ্ঠার ছবি তুলে মাস্টোডনে শেয়ার করছি। এখানে সেই ছবি দেওয়া হলো।

Engineering Notebook

আপনি কি ব্যবহার করবেন?

হয়তো! তবে এই প্রশ্নের উত্তর আমি আপনার হয়ে দিতে পারব না। আপনি যদি ইতিমধ্যে চেষ্টা করে থাকেন, তবে উত্তরটা আপনার জানা থাকার কথা এবং আপনার অভিজ্ঞতা কেমন, তা আমি জানতে আগ্রহী।

আর যদি এখনো চেষ্টা না করে থাকেন, তবে আমার পরামর্শ হলো একবার চেষ্টা করে দেখুন। সবচেয়ে ভালো ক্ষেত্রে, আপনি একটি নতুন উপকারী অভ্যাস আয়ত্ত করতে পারবেন। আর সবচেয়ে খারাপ ক্ষেত্রে, আপনি বুঝবেন যে এটি আপনার জন্য নয়—তবে নিজের কাজের ধরন সম্পর্কে জানাটাও কিন্তু ইতিবাচক।

আর যদি ব্যবহার করেন, তবে নিজের মতো করে সাজিয়ে নিন! ফরম্যাট ও মাধ্যম নিয়ে পরীক্ষা-নিরীক্ষা করুন। কতটা বিস্তারিত লিখবেন তা নিয়েও পরীক্ষা করুন। তারপর আপনি যা শিখবেন তা অন্যদের সাথে শেয়ার করুন, যাতে আমরাও আপনার অভিজ্ঞতা থেকে ধারণা পেতে পারি!

যদি কোনো সফটওয়্যার প্রকল্পে সাহায্যের প্রয়োজন হয়, তবে আমার সাথে কাজ করার বিষয়টি বিবেচনা করতে পারেন!

কেমন লাগলো এই লেখাটি?

প্রাসঙ্গিক লেখা

৩টি লেখা
  1. সময় বাঁচানো ৫ ফ্রি ব্রাউজার টুলস

    ক্লাউড-ভিত্তিক ৫টি ব্রাউজার টুল যা প্রতি সপ্তাহে ঘণ্টার পর ঘণ্টা সময় বাঁচায়। ডাউনলোড ছাড়াই পেশাদারি কাজ করুন।

    প্রযুক্তিপ্রোডাক্টিভিটিওয়েব টুলস
  2. OpenAI বন্ধ করে দিচ্ছে তাদের সবচেয়ে মোহনীয় চ্যাটবট

    ওপেনএআইয়ের জনপ্রিয় চ্যাটবট GPT-4o বন্ধের ঘোষণায় ব্যবহারকারীদের মধ্যে ক্ষোভ ও শোক। অনেকে বলছেন, "এভাবে চলতে পারব না।"

    প্রযুক্তিকৃত্রিম বুদ্ধিমত্তামানসিক স্বাস্থ্য
  3. সোশ্যাল মিডিয়া ব্যবহারকারীর বয়স ন্যূনতম ১৬ কেন হওয়া উচিত

    অস্ট্রেলিয়ার ১৬ বছর বয়সসীমা আইন বিশ্বজুড়ে আলোড়ন তুলেছে। বিশেষজ্ঞরা বলছেন, বয়ঃসন্ধির সময় সোশ্যাল মিডিয়া মস্তিষ্কের জন্য ক্ষতিকর।

    সোশ্যাল মিডিয়াশিশু নিরাপত্তাঅস্ট্রেলিয়া