বাংলায় জানার নতুন ঠিকানা

অ্যাডা লাভলেস: প্রথম কম্পিউটার প্রোগ্রামার হিসেবে পরিচিত নারীর বিস্ময়কর ইতিহাস

সিরিজ: ইতিহাস বদলে দেওয়া নারীরা

অ্যাডা লাভলেস: প্রথম কম্পিউটার প্রোগ্রামার হিসেবে পরিচিত নারীর বিস্ময়কর ইতিহাস
যন্ত্র তৈরির আগেই তার জন্য গণনার পথ দেখিয়েছিলেন অ্যাডা লাভলেস।

আজ একটি কম্পিউটারকে কী করতে হবে, তা ধাপে ধাপে লিখে দেওয়া আমাদের পরিচিত ধারণা। কিন্তু এমন যন্ত্র কার্যত তৈরি হওয়ার আগেই কেউ যদি তার জন্য গণনার নির্দেশ সাজান, তাহলে তাঁকে কী বলা যায়? উনিশ শতকের গণিতচিন্তায় এই প্রশ্নের কেন্দ্রে রয়েছেন অ্যাডা লাভলেস। চার্লস ব্যাবেজের পরিকল্পিত অ্যানালিটিক্যাল ইঞ্জিন নিয়ে লেখা তাঁর নোটে একটি জটিল গণনা সম্পন্ন করার ধাপ ছিল। সেই কারণে তাঁকে প্রায়ই বিশ্বের প্রথম কম্পিউটার প্রোগ্রামার বলা হয়। তবে তাঁর গুরুত্ব একটি উপাধিতে সীমাবদ্ধ নয়। তিনি এমন এক সময়ে যন্ত্রের সম্ভাবনা নিয়ে ভেবেছিলেন, যখন যন্ত্রটি কাগজের নকশা ও আংশিক নির্মিত অংশের বাইরে পূর্ণ রূপ পায়নি।

১৮১৫ সালে লন্ডনে অ্যাডার জন্ম। তাঁর বাবা ছিলেন কবি লর্ড বায়রন এবং মা অ্যানাবেলা মিলব্যাঙ্ক। জন্মের অল্প সময়ের মধ্যেই মা ও বাবা আলাদা হয়ে যান; অ্যাডা বাবার সঙ্গে বড় হননি। মা তাঁর শিক্ষায় গণিত ও যুক্তিবিদ্যার ওপর বিশেষ গুরুত্ব দেন। সে যুগে উচ্চবিত্ত পরিবারের মেয়েরা শিক্ষার সুযোগ পেলেও গভীর গণিতচর্চা তাঁদের জন্য প্রচলিত পথ ছিল না। অ্যাডা ব্যক্তিগত শিক্ষকদের কাছে পড়েন এবং ধীরে ধীরে জ্যামিতি, বীজগণিত ও যন্ত্রবিদ্যার প্রতি প্রবল আগ্রহ গড়ে তোলেন। কল্পনাশক্তি ও গাণিতিক অনুসন্ধানকে তিনি পরস্পরের বিরোধী ভাবতেন না; নতুন ধারণা তৈরি করতে দুটিকেই কাজে লাগাতে চাইতেন।

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

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

১৮৪২ সালে ইতালীয় প্রকৌশলী লুইজি মেনাব্রেয়া ব্যাবেজের অ্যানালিটিক্যাল ইঞ্জিন নিয়ে ফরাসি ভাষায় একটি প্রবন্ধ লেখেন। অ্যাডা সেটি ইংরেজিতে অনুবাদ করেন। ব্যাবেজের উৎসাহে তিনি অনুবাদের সঙ্গে নিজের ব্যাখ্যামূলক নোট যোগ করেন। ১৮৪৩ সালে প্রকাশিত লেখাটির নোটগুলো মূল প্রবন্ধের চেয়েও দীর্ঘ হয়। সেখানে তিনি যন্ত্রের বিভিন্ন অংশের কাজ, নির্দেশের বিন্যাস এবং গণনার সম্ভাব্য পদ্ধতি ব্যাখ্যা করেন। এটি নিছক ভাষান্তর ছিল না। ব্যাবেজের নকশা সম্পর্কে তাঁর নিজস্ব বিশ্লেষণ পাঠককে বুঝতে সাহায্য করেছিল, একই যন্ত্রকে নানা ধরনের গণনার কাজে ব্যবহার করার পরিকল্পনা কীভাবে করা যায়।

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

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

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

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

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

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

অ্যাডার ব্যক্তিগত জীবন দীর্ঘ ছিল না। ১৮৩৫ সালে উইলিয়াম কিংকে বিয়ে করেন; পরে তিনি লাভলেসের কাউন্টেস উপাধি পান। সন্তান পালন, সামাজিক দায়িত্ব ও অসুস্থতার মধ্যেও গণিত নিয়ে তাঁর আগ্রহ বজায় ছিল। তিনি গণিতবিদ অগাস্টাস ডি মরগানের কাছেও পড়াশোনা করেন। জীবনের শেষ দিকে তাঁর স্বাস্থ্য অবনতির দিকে যায় এবং ১৮৫২ সালে মাত্র ছত্রিশ বছর বয়সে তাঁর মৃত্যু হয়। অ্যানালিটিক্যাল ইঞ্জিন নিয়ে তাঁর বড় কাজটি তাই দীর্ঘ গবেষণাজীবনের ফল ছিল না; অল্প সময়ের গভীর অধ্যয়ন ও ব্যাবেজের সঙ্গে নিবিড় আলোচনার ফল ছিল।

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


আপনার পছন্দ হতে পারে