প্রোগ্রামিং নিয়ে এক ডজন কমন প্রশ্ন ও উত্তর

প্রোগ্রামিং নিয়ে শিক্ষার্থীরা যেসব প্রশ্ন বারবার করে, এরকম এক ডজন প্রশ্ন প্রশ্নোত্তর আকারে লিখে রাখলাম।

১) আমি কি প্রোগ্রামিং শিখতে পারব?
উত্তর – এটা আসলে আগে থেকে বলা কঠিন। তিন মাস প্রোগ্রামিং নিয়ে সময় দাও, প্রতিদিন গড়ে ৪-৫ ঘণ্টা। তিন মাস পরেও যদি এই জিনিস ভালো লাগে, তাহলে শিখতে পারবে।

২) কোন প্রোগ্রামিং ভাষা শিখব?
উত্তর – এটা নির্ভর করে তুমি কোন ক্লাসে পড়, স্কুল-কলেজ নাকি বিশ্ববিদ্যালয়ের শিক্ষার্থী। বিস্তারিত উত্তর লিখেছি এখানে – কোন প্রোগ্রামিং ভাষা দিয়ে শুরু করব?

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

৪) আমি কম্পিউটার সায়েন্স পড়ি না, অন্য বিষয়ে পড়ি। আমি কি সফটওয়্যার ডেভেলাপার হতে পারব?
উত্তর – এই পোস্টে আলোচনা করা হয়েছে।

৫) আমি প্রোগ্রামিং শেখা শুরু করতে চাই। একটু গাইডলাইন দেন।
উত্তর – “প্রোগ্রামিংয়ের আশ্চর্য জগত” বইতে একেবারে শুরু থেকে কী করতে হবে ধারণা দেওয়া হয়েছে। এছাড়া এই ভিডিওতে আলোচনা করেছি।

৬) কোন প্রোগ্রামিং ভাষার ভবিষ্যত ভালো?
উত্তর – এটা বলা খুব কঠিন। তবে এভাবে চিন্তা না করে, বর্তমানে প্রচলিত ও জনপ্রিয় যেকোনো একটা ভাষার ওপর দক্ষতা অর্জন করতে হবে। জাভা, সি শার্প, পাইথন, পিএইচপি – এই প্রোগ্রামিং ভাষাগুলো এখন জনপ্রিয়।

৭) আমি গুগল (কিংবা মাইক্রোসফট, ফেসবুক, অ্যামাজন)-এ সফটওয়্যার ইঞ্জিনিয়ার হিসেবে কাজ করতে চাই। আমি কিভাবে ইন্টারভিউয়ের জন্য প্রস্তুতি নিব?
উত্তর – এই ভিডিওতে বিস্তারিত আলোচনা করা হয়েছে।

৮) প্রোগ্রামিং চর্চা করার জন্য কোন অনলাইন জাজ ব্যবহার করব?
উত্তর – এই লেখায় উত্তর আছে – প্রোগ্রামিং চর্চার ১০টি অনলাইন জাজ

৯) আমি কম্পিউটার সায়েন্স পড়ছি, বিভিন্ন জন বিভিন্ন পরামর্শ দেয়। কীভাবে সামনে আগাব বুঝতে পারছি না।
উত্তর – সঠিক মানুষের কাছ থেকে পরামর্শ পাওয়াটা গুরুত্বপূর্ণ। আমি এক ডজন সফল বাংলাদেশী প্রোগ্রামারের সাক্ষাৎকার নিয়ে একটি বই প্রকাশ করেছি, সেটি কয়েকবার পড়তে পারো। এছাড়া এই ব্লগেও অনেক আর্টিকেল আছে, সেগুলো পড়তে পারো।

১০) কম্পিউটার সায়েন্স পড়লেই কি চাকরি পাওয়া যায়?
উত্তর – না, শুধু কম্পিউটার সায়েন্স পড়ে সার্টিফিকেট থাকলেই চাকরি পাওয়ার নিশ্চয়তা নেই। বরং প্রোগ্রামিং স্কিল ও সেই সাথে কম্পিউটার বিজ্ঞানের জ্ঞান গুরুত্বপূর্ণ।

১১) সফটওয়্যার ইঞ্জিনিয়ার হতে হলে কি ভালো সিজিপিএ দরকার?
উত্তর – এখানে প্রোগ্রামিং স্কিল আর কম্পিউটার সায়েন্সের মৌলিক কিছু বিষয়, যেমন ডিসক্রিট ম্যাথ, ডেটা স্ট্রাকচার, অ্যালগরিদম, অপারেটিং সিস্টেম, ডেটাবেজ ইত্যাদি বিষয়ের ওপর জ্ঞান থাকাটাই গুরুত্বপূর্ণ। কেউ যদি এসব বিষয়ে ভালোভাবে লেখাপড়া করে, তার সিজিপিএ কম থাকলেও সমস্যা নেই।

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

অ্যালগরিদম কী?

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

মুহাম্মদ ইবন মুসা আল-খাওয়ারিজমি ৭৮০ খ্রিস্টাব্দে বৃহত্তর খোরাসানের খাওয়ারেজম অঞ্চলে জন্মগ্রহণ করেন। তিনি ছিলেন একাধারে প্রখ্যাত গণিতবিদ, জ্যোতির্বিজ্ঞানী ও ভূগোলবিদ। তিনি ভারতীয় দশভিত্তিক সংখ্যাপদ্ধতি নিয়ে একটি বই লিখেন যা ল্যাটিনে অনুবাদ করা হয় ‘Algoritmi de numero Indorum’ নামে। আল-খাওয়ারিজমি নামটি যখন ল্যাটিনে রূপান্তর করা হয়, তখন এটি হয়ে যায় ‘Algoritmi’। মূল বই লেখার প্রায় ৩০০ বছর পর এই অনুবাদটি করা হয়েছিল। এই বইটিই প্রথম দশভিত্তিক সংখ্যা ও এর বৈশিষ্টসমূহ ইউরোপে পরিচিত করে তোলে। এর ফলে জটিল রোমান সংখ্যার পরিবর্তে ইউরোপে এবং ক্রমে সারাবিশ্বে দশভিত্তিক সংখ্যাপদ্ধতি প্রচলিত হয়।

খাওয়ারিজমির নামানুসারে সংখ্যাপদ্ধতিটির নাম রাখা হয় Algorismus, যা ইংরেজিতে হয় Algorism। ১৩ শতকের দিকে Algorism শব্দটি ইংরেজি ভাষায় প্রবেশ করে। তৎকালিন উল্লেখযোগ্য অনেকেই, যেমন: জেফ্রি চসার (Geoffrey Chaucer) শব্দটি ব্যবহার করেছেন। গ্রিক শব্দ এরিথমস (ἀριθμός) অর্থ সংখ্যা। ১৫ শতকে এই শব্দের প্রভাবে ল্যাটিন Algorismus হয়ে যায় Algorithmus। ইংরেজি শব্দটিও তখন পরিবর্তিত হয়ে হয় Algorithm।

১৯ শতকের শেষভাগ পর্যন্ত Algorithm শব্দের অর্থ ছিল দশমিক সংখ্যা পদ্ধতি। ল্যাটিন Algorithmus অর্থও তাই ছিল। ২০ শতকের শুরুর দিকে এর অর্থ বদলে বর্তমান প্রচলিত অর্থটি আসে। এ সময় অ্যালান টুরিং আবিষ্কার করেন যে যন্ত্র অ্যালগরিদম অনুসরণ করে জটিল সমস্যা সমাধান করতে পারে। এটিই ছিল কম্পিউটার যুগের সূচনা। দ্বিতীয় বিশ্বযুদ্ধের সময় তিনি একটি যন্ত্র আবিষ্কার করেন যা অ্যালগরিদম অনুসরণ করে জার্মানদের এনক্রিপ্ট করা কোড (এনিগমা (Enigma) কোড) ক্র্যাক করতে পারত।

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

আধুনিক বিজ্ঞান ও প্রযুক্তির কল্যাণে আমরা প্রায় ২৪ ঘণ্টাই যন্ত্রপাতিতে ঘেরা। আর যন্ত্রপাতির উল্লেখযোগ্য একটা অংশ বুদ্ধিমান, যেমন: আমাদের ফোন, কম্পিউটার, স্মার্টওয়াচ ইত্যাদি। সাথে অতি প্রয়োজনীয় ইন্টারনেট তো আছেই। এগুলোর সবই চলে অ্যালগরিদম দিয়ে। আমাদের নিত্যব্যবহৃত সামাজিক যোগাযোগ মাধ্যম ফেসবুক, টুইটার, ইউটিউবে রয়েছে অনেক জটিল জটিল অ্যালগরিদম। এই অ্যালগরিদমগুলো এতই বুদ্ধিমান যে আমরা কখন কী দেখতে চাই, কী দেখতে চাই না তা অনুমান করতে পারে।

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

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

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

সমস্যা সমাধানের দক্ষতা একদিনে তৈরি হয় না। নির্দিষ্ট কোনো বই পড়েও হয় না। এটা বহুদিনের চর্চার, বহু পরিশ্রমের ফল। তাই ছাত্রজীবনে অলস হলে চলবে না। অ্যালগরিদম আপনার আমার মতোই ১.৩ – ১.৪ কেজি মস্তিষ্কের মানুষের তৈরি, তাই এগুলোকে ভয় পাওয়ার কিছু নেই। অ্যালগরিদম শেখার সময় এর পেছনের মৌলিক ধারণাটি বুঝতে হবে। অ্যালগরিদম কীভাবে কাজ করে জানার পাশাপাশি কেন করে তা বোঝা জরুরি। কেন প্রশ্নের উত্তর না জানলে কীভাবের উত্তর অল্পদিনেই ভুলে যাওয়ার সম্ভাবনা থাকে।

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

লেখকঃ মোশারফ হোসেন।

প্রযুক্তি বদলে দেয়া ১০ রূপকার

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

জেফ ডিনঃ

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

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

কেটি ডিলঃ

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

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

আরলান হ্যামিলটনঃ

আরলান হ্যামিলটনের কোম্পানি ব্যাকস্টেজ ক্যাপিটাল কাজ করে নতুন উদ্যোক্তাদের স্বপ্ন পূরণের জন্য। কোম্পানির প্রতিষ্ঠাতা হ্যামিলটন মনে করেন যে কেউ তার উপযুক্ত আইডিয়া নিয়ে উদ্যোক্তা হওয়ার যোগ্যতা রাখে। হোক সে মেয়ে বা সমকামী অথবা কৃষ্ণাঙ্গ।

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

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

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

ট্রিষ্টান হ্যারিসঃ

সেন্টার ফর হিউম্যানি টেকনোলজির পরিচালক এবং সহ-প্রতিষ্ঠাতা ট্রিষ্টান হ্যারিস কাজ করে যাচ্ছেন মানুষের জীবনের টেকনোলজির ক্ষতিকর প্রভাব কম করার মিশন নিয়ে। প্রযুক্তিতে তিনি এনেছেন বিপ্লব। একজন স্ট্যানফোর্ড গ্রাজুয়েট হিসেবে তিনি ক্যারিয়ারের প্রথমদিকে কাজ করেছেন গুগল এবং অ্যাপলের মত প্রতিষ্ঠানে। ২০১৩ সালে গুগলে কাজ করার সময় তিনি বুঝতে পারলেন টেকনোলজি তার আসল পথ থেকে বিচ্যুত হচ্ছে। নতুন নতুন ক্রিয়েটিভ জিনিস তৈরি করা বিরত থেকে ইউজারদের আগ্রহকে তারা তাদের ব্যবসার কাজে ব্যবহার করছে। হ্যারিস তখন মনে করলেন নতুন কিছু করতে হলে তিনি ছাড়া কেউই এগিয়ে আসবে না।

এই অনুপ্রেরণা থেকে তিনি ১৪১টি স্লাইডের একটি প্রেজেন্টেশন তৈরি করেন। সেখানে টেক কোম্পানিগুলো কিভাবে ইউজারদের আগ্রহ নিয়ে খেলছে সে বিষয়ে তিনি আলোকপাত করেন এবং এমন বিভ্রান্তি থেকে বের হয়ে আসার জন্য গুগলকে আহ্বান জানান।

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

লিসা জ্যাকসনঃ

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

লিসা জ্যাকসনের অদম্য চেষ্টায় অ্যাপল এদিকে বেশ খানিকটা এগিয়েছে। বর্তমানে অ্যাপল তাদের আইফোনের মেইন লজিক বোর্ড তৈরির জন্য রিসাইকেল টিন ব্যবহার করছে। ফলে বছরে ১০,০০০ টন টিনের আকরিক খনন করার দরকার হচ্ছে না। এছাড়াও আইফোন এক্সএসের স্পীকারের ঘের তৈরির জন্য বর্তমানে ব্যবহৃত হচ্ছে ৩৫% রিসাইকেল প্লাষ্টিক।

লিসা জ্যাকসন এ সম্পর্কে বলেন, “যখন আমরা পুনঃব্যবহার্য পদার্থ ব্যবহার করে আমাদের প্রোডাক্টগুলো তৈরি করতে চাইলাম তখন অধিকাংশ লোক বলেছিলো এটা অসম্ভব। কিন্তু অ্যাপল সব সময় চ্যালেঞ্জ নিতে ভালবাসে। এক্ষেত্রে বরাবরই আমরা সফল।”

হ্যাউই লিও, অ্যান্ড্রু অফষ্ট্যাড, ইমিট নিকোলাসঃ

Howie Liu, Andrew Ofstad, and Emmett Nicholas, the founders of Airtable, want to let anyone build an app, even if they can't code


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

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

বর্তমানে এয়ারটেবিল ৮০,০০০ কাষ্টমারকে তাদের সেবা দিয়ে যাচ্ছে। সেখানে রয়েছে বিয়ের অনুষ্ঠানের পরিকল্পনা থেকে শুরু করে বড় বড় কোম্পানির উৎপাদন পরিকল্পনা পর্যন্ত।

টনি রেইডঃ


অ্যামাজনের ভার্চুয়াল সহকারী এ্যালেক্সা এবং অন্যান্য ইকো ডিভাইস সেবার ভাইস প্রেসিডেন্ট হিসেবে কাজ করে যাচ্ছেন টনি রেইড। তিনি অ্যামাজনের শুরুর দিকের ৬০০ জন কর্মীর একজন। ১৯৯৮ সালে টনি যখন অ্যামাজনের যোগদান করেন তখন অ্যামাজন ছিল অনেক ছোট্ট একটি অনলাইন বইয়ের দোকান যার ছিল ভবিষ্যতে বিশাল কিছু হবার উচ্চাশা।

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

মাশায়োশি সানঃ

সফটব্যাংক-এর প্রধান নির্বাহী কর্মকর্তা এবং চেয়ারম্যান মাশায়োশি সান বর্তমানে সিলিকন ভ্যালির অন্যতম তারকা, যার কোম্পানির কোষাগারে জমা আছে ১০০ বিলিয়ন ডলার। সিলিকন ভ্যালিতে “মাশা” নামে পরিচিত মাশায়োশি সান সফটব্যাংক নামক জাপানী টেকনোলজি হোল্ডিং কোম্পানির প্রতিষ্ঠাতা এবং বর্তমানে প্রধান নির্বাহী কর্মকর্তা হিসেবে কাজ করে যাচ্ছেন। তার নেতৃতে গঠিত হয়েছে সফটব্যাংকের “ভিশন ফান্ড”। যে ফান্ডের অর্থ টেকনোজির উন্নতির জন্য ব্যবহৃত হচ্ছে।

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

সফটব্যাংকের প্রধান বাজির জায়গা এখন বিখ্যাত রাইডে শেয়ারিং প্রতিষ্ঠান উবার। এছাড়াও সম্প্রতি উইওয়ার্কে সফটব্যাংক বিনিয়োগ করেছে ১০.৫ বিলিয়ন ডলার। জাপানের দ্বিতীয় শীর্ষ ধনী মাশায়োশি সান, যার মোট সম্পত্তির পরিমাণ ১৩.৯ বিলিয়ন মার্কিন ডলার।

টিম সুয়েনীঃ


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

ফোর্টনাইট গেমকে অনেকেই একটি “বিস্ময়” হিসেবে আখ্যায়িত করেছেন। এই গেমটি গেমারকে একটি নির্দিষ্ট জায়গায় বেশ কয়েক ঘন্টা সময় আটকে রাখে যেখানে গেমার অপরিচিত মানুষদের সাথে পরিচিত হওয়ার সুযোগ পায়। এছাড়াও লাইভ কনসার্ট দেখতে পারে। সর্বোপরি এটি একটি ব্যবসা যেখান থেকে প্রায় ১০০ মিলিয়ন ডলার আয় করা হয়।ইতিমধ্যেই ফোর্টনাইট গেমটি নতুন প্রজন্মের গেমারদের দারুন সব অভিজ্ঞতার স্বাদ দিতে সক্ষম হয়েছে।

ফোর্টনাইট বলতে গেলে প্রায় বিন্দু থেকে সিন্ধুতে পরিণত হয়েছে। বর্তমানে এই গেমের রয়েছে ১০০ মিলিয়ন ব্যবহারকারী। সুয়েনীর এপিক গেম কোম্পানি এই বিপুল সংখ্যক ব্যবহারকারীদের সাহায্যের জন্য তৈরি করেছেন এপিক গেম ষ্টোর। যেটি পাল্লা দিয়ে এগিয়ে চলছে স্বনামধন্য গেমিং ষ্টোর এ্যাপল ষ্টোর এবং গুগল প্লে ষ্টোরের সাথে।

তাল তামিরঃ

তাল তামির কাজ করছেন ব্যাটারি ফ্রি চিপ নিয়ে, যেখানে শক্তির উৎস হবে রেডিও সিগন্যাল। এই উদ্দেশ্য তিনি প্রতিষ্ঠা করেছেন “উইলিউট”, যেখানে বর্তমানে তিনি প্রধান নির্বাহি কর্মকর্তা হিসেবে কাজ করে যাচ্ছেন। তিনি মনে করেন আমরা “শক্তি সমুদ্র বা Sea of Energy”- তে বাস করি। সেটি ব্যবহার করার জন্য দরকার কোন মানুষ বা কোন ডিভাইস।

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

মাত্র দুইবছর আগে যাত্রা শুরু করে উইলিওট। তাদের বর্তমান অবস্থানে দাঁড়িয়ে তাল তামির বলতেই পারেন, তারা যে স্বপ্ন নিয়ে যাত্রা শুরু করেছিলেন, সেটি পূরণ হওয়া সম্ভব। তামির বলেন, “যখন আমরা ব্যাটারি ফ্রি চিপ নিয়ে কাজ করা শুরু করি, তখন আমরা বুঝতে পারি শক্তিসমুদ্রের শক্তি নিয়ে কাজ করা কঠিন। কিন্তু অসম্ভব নয়। সেই কঠিন কাজটিই করে দেখিয়েছি আমরা।”

লেখক – তামান্না নিশাত রিনি।









Live Before You Die – স্টিভ জবস্‌

২০০৫ সালের ১২ জুন। অ্যাপল ইনকর্পোরেটের সহ-প্রতিষ্ঠাতা স্টিভ জবস্‌ স্ট্যানফোর্ড বিশ্ববিদ্যালয়ের সমাবর্তনে দেন তাঁর বিখ্যাত বক্তৃতা “How To Live Before you Die”। তাঁর এই বক্তৃতায় তিনি বলেন তাঁর জীবনের তিনটি গল্পের কথা। স্টিভ জবসের জবানিতেই আমরা আজকে এই লেখায় জানবো তাঁর সেই তিনটি গল্প।

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

প্রথম গল্পটির নাম আমি দিবো এক সূতোয় গাঁথা।

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

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

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

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

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

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

আমার দ্বিতীয় গল্পটা হচ্ছে ভালবাসা এবং হারিয়ে ফেলার গল্পঃ

আমি ভাগ্যবান ছিলাম – যা করতে ভালবাসতাম সেটি অল্প বয়সেই করতে পেরেছিলাম। ওজ এবং আমি অ্যাপল শুরু করেছিলাম আমাদের ব্যক্তিগত গ্যারেজে মাত্র ২০ বছর বয়সে। আমরা কঠোর পরিশ্রম করেছিলাম বলেই, গ্যারেজের দুইজনের কোম্পানি থেকে মাত্র ১০ বছরে অ্যাপল ২ বিলিয়ন ডলারের, ৪০০০ কর্মীর কোম্পানিতে পরিণত হয়েছে। আমরা যখন আমাদের সবচেয়ে সুন্দর আবিষ্কার ম্যাকিনটস তৈরি করলাম তখন আমার বয়স মাত্র ৩০। তখন আমাকে অ্যাপল থেকে ছাটাই করা হয়। প্রশ্ন হতে পারে, যে কোম্পানির শুরু আমি নিজে করেছি সেখান থেকে আমাকে কিভাবে ছাঁটাই করা যায় ? ধীরে ধীরে যখন অ্যাপল বড় হতে থাকলো, তখন আমি খুব মেধাবী একজনকে খুঁজতে থাকি যে কিনা আমার সাথে অ্যাপলকে আরো সমৃদ্ধ করবে। প্রথম একবছর আমাদের কাজ ভালই চলেছিল, কিন্তু যখন আমাদের লক্ষ্য আলাদা হয়ে গেল তখন আমরা ব্যর্থ হলাম। সেসময় অ্যাপলের বোর্ড অফ ডাইরেক্টরস্‌ আমার পক্ষ না নিয়ে তাঁর পক্ষ নিলো এবং ৩০ বছর বয়সে নিজ কোম্পানি থেকে আমাকে ছাঁটাই করা হলো। আমি আমার সারা জীবন যেখানে মনোনিবেশ করেছিলাম, সেটি এক মুহুর্তে চলে গেল; যা ছিল অত্যন্ত বিধ্বংসী।

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

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

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

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

আমার শেষ গল্পটি মৃত্যু নিয়ে।
যখন আমার বয়স ১৭, তখন আমি একটি বাণী শুনেছিলাম এমন যে, “তুমি যদি তোমার জীবনের প্রতিদিনকে তোমার জীবনের শেষ দিন মনে করে কাজ করো, তাহলে একদিন তুমি অবশ্যই সফল হবে।” এই কথাটি আমাকে এতটাই মুগ্ধ করেছিলো যে, গত ৩৩ বছর আমি প্রতিদিন সকালে আয়নার সামনে দাঁড়িয়ে নিজেকে প্রশ্ন করি, “যদি আমি জানি যে আজকে আমার জীবনের শেষ দিন, তাহলে কী আমি সেই কাজ করবো যা আমি আজকে করতে চাচ্ছি?” পরপর কয়েকদিন যদি উত্তর পেতাম “না”, তখন আমি মনে করতাম কিছু পরিবর্তন করা আবশ্যক।

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

একবছর আগে, আমি ক্যান্সারে আক্রান্ত হই। সকাল ৭ঃ৩০ এ স্ক্যান করে আমার অগ্ন্যাশয়ে একটি টিউমারের অস্তিত্ব শনাক্ত করা হয়। তখন আমি জানতাম অগ্ন্যাশয় কী জিনিস। আমার চিকিৎসক আমাকে বললেন, এই ক্যান্সারটি অনিরাময়যোগ্য ক্যান্সারগুলোর একটি এবং আমার আয়ু বড় জোড় ৩-৬ মাসের মত। আমার ডাক্তার আমাকে বলেছিলেন বাড়ি চলে যেতে এবং মৃত্যুর জন্য নিজেকে প্রস্তুত করতে। প্রস্তুতি বলতে ছিলো নিজের সন্তানদের কয়েক মাসের মধ্যে সবকিছু বলা যা আমি গত ১০ বছরে তাঁদের বলতে পারিনি। এটা ছিলো মূলত নিজের পরিবারকে বুঝানো যে, সময় সন্নিকটে যেন সবকিছু গ্রহণ করা তাঁদের জন্য সহজ হয়। ব্যাপারটা আসলে ছিলো পরিবারকে চিরবিদায় জানানো।

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

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

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

আমার যুবক বয়সে একটি বই বেশ সাড়া ফেলেছিল। বইটির নাম দ্যা হোল আর্থ ক্যাটালগ (The Whole Earth Catalog), যাকে আমরা সেসময়ের তরুণ সমাজ বাইবেল জ্ঞান করতাম। স্টুয়ার্ড ব্রান্ড তাঁর কাব্যিক ছোয়ায় এটিকে মানুষের কাছে নিয়ে এসেছিল। এটা ১৯৬০ সালের ঘটনা, যখন পারসোনাল কম্পিউটার এবং ডেস্কটপ আবিষ্কার হয়নি। তাই এই বইটিতে ছিল টাইপরাইটার, কাঁচি, পোলারয়েড ক্যামেরার ছোঁয়া। এটাকে বলা যায় “গ্রন্থাকৃতির গুগল”।

স্টুয়ার্ট এবং তাঁর দল বইটিতে নানা ধরণের বিষয়ের অবতারণা করেছিলেন। বইটির শেষে তারা বলে গেছেন আসল কথা। এটা ৭০’ দশকের মাঝামাঝি সময়, তখন আমি তোমাদের বয়সী। তাঁদের বইয়ের শেষ পাতায় সকালের রাস্তার একটি সুন্দর আলোকচিত্র ছিল। তোমাদের মধ্যে যারা অভিযানপ্রিয় তারা এমন ছবি প্রায়ই দেখে থাকো। ছবির নিচে লেখা ছিল, “Stay Hungry. Stay Foolish.” এটা ছিল তাঁদের বিদায় সম্ভাষণ। Stay Hungry. Stay Foolish, যা আমি নিজে সবসময় নিজের জন্য কামনা করি। আজকে এখানে সবাই তোমরা প্রাজুয়েট হয়েছো। আজ আমি তোমাদের জন্যও বলছি, Stay Hungry. Stay Foolish

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

[ Stay Hungry: কখনো তৃপ্ত হয়ো না এই ভেবে যে , তুমি সব জেনে গেছো। নিজেকে এগিয়ে নিয়ে যাও।
Stay Foolish: কাজ করে যাও এবং চেষ্টা করতে থাকো সেসব কাজ করার যেসব ব্যাপারে মানুষ বলে “কখনো এটা হবে না” ]

লেখকঃ তামান্না নিশাত রিনি


এইচটিএমএল কিভাবে শিখব?

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

এইচটিএমএল জানার আগে ওয়েবসাইট সম্পর্কে একটু ধারণা থাকা প্রয়োজন। তাই প্রথম ভিডিওতে ওয়েব ডিজাইন সম্পর্কে আলোচনা করেছি।

দ্বিতীয়, তৃতীয় ও চতুর্থ ভিডিওতে এইচটিএমএল-এর বিভিন্ন জিনিস দেখানো হয়েছে।

আশা করি, ভিডিওগুলো অনেকের কাজে আসবে। কোনো মতামত থাকলে পোস্টের নিচে কমেন্টে জানানোর অনুরোধ রইল।

FAQ – পাইথন দিয়ে প্রোগ্রামিং শেখা

পাইথন দিয়ে প্রোগ্রামিং শেখা (লেখক তামিম শাহরিয়ার সুবিন) বই সম্পর্কে কিছু সচরাচর জিজ্ঞাসিত প্রশ্নের উত্তর –

১) কোন প্রকাশনী থেকে বইটি প্রকাশিত হয়েছে?

উত্তরঃ দ্বিমিক প্রকাশনী (ওয়েবসাইট http://dimik.pub )

২) বইয়ের দাম কত?

উত্তরঃ গায়ের দাম ২০০ টাকা (দোকানে একটু কম রাখার কথা)।

৩) বইতে পাইথন ২ নাকি পাইথন ৩ ব্যবহার করা হয়েছে?

উত্তরঃ পাইথন ৩।

৪) আমি (তামিম শাহরিয়ার সুবিন-এর) কম্পিউটার প্রোগ্রামিং ১ম ও ২য় খণ্ড বইটি পড়েছি, এখন কি পাইথন বইটি পড়ব?

উত্তরঃ পাইথন শেখার কোনো দরকার থাকলে পড়া যেতে পারে, নইলে পড়ার দরকার নাই।

৫) বইটা কাদের জন্য উপযোগি?

উত্তরঃ যারা প্রোগ্রামিংয়ে একেবারে নতুন, প্রোগ্রামিং শেখা শুরু করবে, তাদের জন্য উপযোগি। এছাড়া যারা আগে প্রোগ্রামিং শিখতে গিয়ে শিখতে পারে নাই, এখন আরেকবার চেষ্টা করবে, বইটি তাদেরও কাজে লাগতে পারে। যারা অভিজ্ঞ প্রোগ্রামার, বইটি তাদের জন্য নয়।

৬) “পাইথন পরিচিতি” ও “পাইথন দিয়ে প্রোগ্রামিং শেখা” বই দুটির মধ্য পার্থক্য কী?

পাইথন পরিচিতি বইতে পাইথন 2.x ব্যবহার করা হয়েছে, আর পাইথন দিয়ে প্রোগ্রামিং শেখা বইটিতে 3.x। পাইথন পরিচিতি বইটি অভিজ্ঞ প্রোগ্রামার যারা পাইথন শিখতে চায়, তাদের জন্য, আর পাইথন দিয়ে প্রোগ্রামিং শেখা বইটি যারা নতুন প্রোগ্রামিং শিখতে চায়, তাদের জন্য।

৭) বইটি কোথায় পাওয়া যাবে?

নীলক্ষেতের হক লাইব্রেরি, মানিক লাইব্রেরি ও রানা বুক পাবলিশার্স-এ (ফোন নাম্বার দ্বিমিকের ওয়েবসাইটে দেওয়া আছে)। এছাড়া ঘরে বসে অনলাইনে অর্ডার করা যাবে রকমারি ডট কম-এ।

৮) ঢাকার বাইরে থেকে কিভাবে কিনব?

উত্তরঃ উপরে উল্লেখিত (নীলক্ষেতের) তিনটি বইয়ের দোকানে যোগাযোগ করতে হবে (ঠিকানা দ্বিমিকের ওয়েবসাইটে দেওয়া আছে)। এছাড়া rokomari.com বাংলাদেশের যেকোনো জায়গায় বই পৌঁছে দেয়।

৯) বাংলাদেশের বাইরে থেকে কিভাবে কিনব?

উত্তরঃ জানি না।

১০) বইতে কী কী বিষয় আলোচনা করা হয়েছে?

উত্তরঃ বইয়ের ওয়েবসাইটে বিস্তারিত আছে ঃ http://dimik.pub/book/155/

১১) পাইথন সম্পর্কিত কিছু প্রশ্ন ছিল, কোথায় জিজ্ঞাসা করবো?

উত্তরঃ পাইথন নিয়ে জিজ্ঞাসা থাকলে নিচের দুটি গ্রুপে কিংবা প্রোগ্রামাবাদে প্রশ্ন করতে হবে:

১২) আচ্ছা, পাইথন কী?

উত্তরঃ বিস্তারিত লিখেছি এই লেখায় : পাইথন কী?

একজন টিম বার্নার্স লী, ওয়ার্ল্ড ওয়াইড ওয়েব এবং একটি টুরিং পুরষ্কার

স্যার টিম বার্নার্স লী

সম্প্রতি স্যার টিম বার্নাস লী কম্পিউটার বিজ্ঞানের নোবেল পুরষ্কার হিসেবে খ্যাত টুরিং পুরষ্কারে ভূষিত হয়েছেন। এই বছর ছিল টুরিং পুরষ্কারের ৫০ বছর পূর্তি। গত ৪ মে, বৃহস্পতিবার এ্যাসোশিয়েন অফ কম্পিউটিং মেসিনারিজ (ACM) ওয়ার্ল্ড ওয়াইড ওয়েব (www), প্রথম ওয়েব ব্রাওজার এবং ওয়েবকে মানসম্মত করার জন্য যে মৌলিক নিয়মনীতি ইত্যাদি তৈরির জন্য প্রফেসর স্যার টিম বার্নাস লী-কে টুরিং পুরষ্কারে ভূষিত করেন ( “inventing the World Wide Web, the first web browser, and the fundamental protocols and algorithms allowing the web to scale”)।

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

টুরিং পুরষ্কার

১ মিলিয়ন ইউএস ডলার এসিএম টুরিং অ্যাওয়ার্ডের পুরষ্কার হিসেবে দেয়া হয়, যার আর্থিক সহায়তা প্রদান করে থাকে গুগল ইনকর্পোরেট। ব্রিটিশ গণিতবিদ অ্যালান টুরিং এর নামানুসারে এই পুরষ্কার দেয়া হয়ে থাকে। কম্পিউটার বিজ্ঞানের গুরুত্বপূর্ণ অবদানের জন্য এই পুরষ্কার দেয়া হয়ে থাকে।

এসিএম প্রেসিডেন্ট ভিকি এল হ্যানসন টিম লী এর টুরিং পুরষ্কার প্রাপ্তি সম্পর্কে বলেন, “ওয়ার্ল্ড ওয়াইড ওয়েব সর্বপ্রথম অনলাইনে আসে ১৯৯১ সালে। যদিও খুব বেশিদিন আগের কথা নয়, তারপরেও স্যার লী এর আবিষ্কারের আগের পৃথিবীর কথা ভাবাটা আমাদের জন্য কষ্টকর। বিভিন্ন দিক থেকে, ওয়ার্ল্ড ওয়াইড ওয়েবের অসামান্য প্রভাব সুস্পষ্ট। তারপরেও অনেকেই, WWW এর অন্তর্নিহিত প্রযুক্তিগত অবদানের স্বতঃস্ফূর্ত প্রশংসা করেন না। টিম বার্নাস লী, শুধুমাত্র ওয়ার্ল্ড ওয়াইড ওয়েবের মূল অংশটুকু উদ্ভাবন করেননি, একই সাথে তিনি URI (Uniform Resource Identifier) এবং ওয়েব ব্রাউজারও উদ্ভাবন করেছেন, যার দ্বারা Web এর ব্যবহার আমাদের কাছে সহজতর হয়েছে। WWW এর সামগ্রিক অংশের প্রতিটি উপাদান কিভাবে আলাদা আলাদা ভাবে কাজ করবে তার একটি সুস্পষ্ট ধারণা দিয়েছেন স্যার টিম বার্নাস লী।”

গুগলের বিশিষ্ট বিজ্ঞানী, অ্যান্দ্রেই ব্রোডার বলেন, “আমরা যেভাবে আইডিয়া এবং তথ্যের আদান-প্রদান করি, সেটির আমূল পরিবর্তন এনেছে এই ওয়েব এবং সেইসাথে বৈশ্বিক অর্থনৈতিক উন্নয়ন ও সম্ভাবনার চালিকাশক্তি হিসেবে নিজেকে প্রমাণ করেছে।” ভ্যানুভার বুশের একটি প্রবন্ধে ১৯৪৫ সালে ওয়েবের ধারণা পাওয়া গেলেও পরবর্তী কয়েক দশকে হাইপারটেক্সট, ইন্টারনেট, পারসোনাল কম্পিউটার ইত্যাদি নিয়ে ধোঁয়াশার সৃষ্টি হয়। কিন্তু টিম বার্নাস লী যখন Unified User Interface এর ধারণা দেন, তখন থেকেই মূলত ওয়েবের বিস্ফোরক বিকাশের সূচনা হয়।

১৯৮৯ সালে টিম বার্নার্স লী একাধারে এমআইটির কম্পিউটার সায়েন্স এ্যান্ড আর্টিফিসিয়াল ইন্টিলিজেন্স ল্যাব এবং ইলেক্ট্রিক্যাল ও ইলেক্ট্রিনিক্স প্রকৌশল বিভাগে কর্মরত ছিলেন, তখন এই ওয়ার্ড ওয়াইড ওয়েবের চিন্তা তাঁর মাথায় আসে। তাঁর চিন্তা ছিল পৃথিবী জুড়ে বিজ্ঞানীরা যেন সহজেই নিজেদের মধ্যে আইডিয়া এবং তথ্যের আদান প্রদান করতে পারে।

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

অক্সফোর্ড বিশ্ববিদ্যালয়ের অধ্যাপক টিম বার্নার্স লী World Wide Web Consortium এর প্রতিষ্ঠাতা এবং পরিচালক, যা ওয়েব ডেভেলপমেন্টের প্রযুক্তিগত মানদণ্ড স্থাপনের জন্য কাজ করে। একই সাথে তিনি World Wide Web Foundation এর প্রতিষ্ঠাতা, যার মূল লক্ষ্য জনস্বার্থে ওয়েবের ব্যবহার নিশ্চিত করা এবং ওয়েবের ব্যবহারকে মৌলিক অধিকার হিসেবে প্রতিষ্ঠিত করা।

CASIL এর ডিসেন্ট্রালাইজ ইনফরমেশন গ্রুপের পরিচালক, লী Http with Accountability (HTTPA) তৈরি করেন, যা Private-data এর ট্রান্সমিশন কিভাবে হচ্ছে সেটির উপর নজর রাখে এবং কিভাবে মানুষের দেয়া তথ্যের ব্যবহার হচ্ছে সেটি অনুসন্ধান করতে পারে। লী Solid (Social Linked Data) নামের একটি প্রকল্পের নেতৃত্ব দেন, যেটি একজন ব্যক্তিকে তার নিজস্ব ডাটা নিয়ন্ত্রণের অনুমতি দেয় এবং পছন্দসই অ্যাপ্লিকেশনে সেসব ডাটা ব্যবহারের জন্য যোগ্য করে তোলে।

এমআইটির প্রেসিডেন্ট এল র‍্যাফেল রেইফ বলেন, “টিম বার্নাস লী এর বর্নাঢ্য ক্যারিয়ার MIT এর মূল আসক্তি – প্রযুক্তির মাধ্যমে পৃথিবীর সৌন্দর্য বৃদ্ধির উদ্দেশ্যকেই ব্যাখ্যা করছে। আজ আমরা উদযাপন করছি আমাদের মানবজীবনের সর্বোৎকৃষ্ট প্রাপ্তি, যা টিম লী আমাদের জন্য করেছে এবং তাঁকে অভিনন্দন জানাচ্ছি এই সুন্দর পুরষ্কার প্রাপ্তিতে যা কিনা সত্যিকার অর্থেই তাঁর প্রাপ্য ছিল।”

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

CSAIL এর পরিচালক ড্যানিয়েলা রুস বলেন, “টিমের উদ্ভাবনী এবং স্বপ্লীল কাজগুলো আমাদের জীবনে এনেছে অভাবনীয় পরিবর্তন। এই পরিবর্তনের প্রভাব ছড়িয়ে গেছে যোগাযোগ এবং বিনোদন থেকে কেনাকাটা এবং ব্যবসা পর্যন্ত। তাঁর কাজ সারা বিশ্বের মানুষের উপর গভীর প্রভাব ফেলেছে, এজন্য আমরা CSAIL সকল সদস্য তাঁর কম্পিউটার বিজ্ঞানের সর্বোচ্চ সম্মান টুরিং পুরষ্কার প্রাপ্তিতে অত্যন্ত গর্ববোধ করছি।”

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

লেখকঃ তামান্না নিশাত রিনি।

অ্যারোস্পেসে ক্যারিয়ার গড়তে হলে

বিশ্ব মহাকাশ সপ্তাহ (World Space Week) উপলক্ষে ন্যাশনাল ইউনিভার্সিটি অব সিঙ্গাপুরে চলছে বিভিন্ন অনুষ্ঠান। গতকাল (শুক্রবার) সেখানে যাই তানভীরুল ইসলামের একটা বক্তৃতা শোনার জন্য।

এমা লেম্যান
এমা লেম্যান

তানভীরের বক্তৃতার পরই “Building a Career in Aerospace” শিরোনামে আরেকটি বক্তৃতা শুনি। বক্তৃতা করেন এমা লেম্যান (Ms. Emma Lehman), যিনি বর্তমানে গুগলের একটি প্রতিষ্ঠান টেরাবেলা-তে ফ্লাইট অপারেশনস টিমের নেতৃত্ব দিচ্ছেন।

 

সেখানে কী কাজ হয়, জানা যাবে নিচের ভিডিও থেকে:

সেখানে তিনি অ্যারোস্পেস-এ ক্যারিয়ার গড়ার জন্য নয়টি পরামর্শ দেন এমা। যদিও এগুলো নিয়ে তিনি বিস্তারিত বলেন, আমি কেবল বিষয়গুলোর নাম উল্লেখ করছি।

Jpeg
building a career in aerospace

১) লিখতে জানতে হবে: বিজ্ঞানীদের বিভিন্ন রিসার্স পেপার, গ্র্যান্ট প্রপোজাল ইত্যাদি খুব ভালোভাবে লিখতে হয়। তাই লেখালেখি-তে দক্ষতা অর্জন করতে হবে।

২) লেগে থাকতে হবে: কোনো কিছুই সহজ নয়, লেগে থাকা চাই। শুরুতে কোনো কাজ ভালো নাও লাগতে পারে। কিন্তু পরিশ্রম করে যেতে হবে। তাতে একসময় কাজটা সহজ হয়ে যাবে।

৩) নিজের নেটওয়ার্ক ব্যবহার করতে হবে: কেউ যখন লেখাপড়া শেষ চাকরির জন্য তৈরি, তখন নিজের কানেকশন মানে পরিচিত মানুষদের কাজে লাগাতে হবে। চাকরির জন্য কারো কাছে সিভি পাঠানোতে লজ্জ্বার কিছু নেই।

৪) ঝুঁকি নিতে হবে: সবসময় নিরাপদ চাকরি বেছে নিলে সেটা ক্যারিয়ারের জন্য ভালো নাও হতে পারে।

৫) এমন একটি কাজ বা চাকরি খুঁজে নিতে হবে, যেটি তুমি উপভোগ করবে আর কাজ থেকে তুমি অনুপ্রেরণাও পাবে।

৬) সবসময় আরামের কাজ খুুঁজবে না। যেসব জিনিস তুমি জানো, সহজেই করতে পারো, এরকম কাজ বারবার করে কোনো লাভ নেই।

ওপরের পরার্মশগুলো কেবল অ্যারোস্পেস না, সবার জন্যই সমানভাবে প্রযোজ্য। নিচের তিনটি অ্যারোস্পেসে ক্যারিয়ার গড়তে আগ্রহীদের জন্য বিশেষভাবে বলা:

৭) অ্যারোস্পেস স্টার্টআপে কাজ নিলে কাজ করার সুযোগ অনেক বেশি পাওয়া যায়। তাই স্টার্টআপেই কাজ খুঁজে নেওয়া উচিত।

৮) অ্যারোস্পেসের জগতেই অনেক ধরণের কাজ আছে। আমি কেবল এরকম কাজ করবো, বা এরকম কোম্পানীতে কাজ করব, এরকম মানসিকতা না রেখে নতুন চ্যালেঞ্জ নেওয়ার ব্যাপারে ফ্লেক্সিবল থাকতে হবে।

৯) পাইথন প্রোগ্রামিং শিখতে হবে।

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

সফটওয়্যার টেস্টিংঃ White Box টেস্টিং ও Black Box টেস্টিং

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

গ্রিক মাইথোলজি আজকে আমাদের আলোচ্য বিষয় না। আমাদের আজকে জানবো সফটওয়্যারের দুইটি টেস্টিং টেকনিক সম্পর্কে। যে টেকনিকগুলোর সাহায্যে একটি সফটওয়্যার থেকে বিভিন্ন ত্রুটি (যেমনঃ বাগ, errors) খুঁজে বের করা হয়।

সফটওয়্যার টেস্টিং কীঃ
টেস্ট (Test) শব্দটির সাথে আমরা সবাই পরিচিত। কোন কিছুর গুণগত মান যাচাই করার জন্য সেটিকে টেস্ট করার প্রয়োজন পরে। একটি সফটওয়্যারের ক্ষেত্রেও তাই। সফটওয়্যার তৈরি হওয়ার পর, সেটি থেকে বিভিন্ন বাগ(Bug), errors খুঁজে বের করার জন্য সফটওয়্যার টেস্টিং প্রসেসের সাহায্য নেয়া হয়।

সফটওয়্যার টেস্টিং -এর কলাকৌশল low-level টেস্ট থেকে high-level টেস্ট পর্যন্ত সমন্বয় করা হয়। Low-level টেস্টিং-এ যাচাই করা হয় যে ছোট কোড সেগমেন্ট-গুলো ঠিকঠাক মত implement হয়েছে কিনা এবং high-level টেস্টিং সফটওয়্যারটির মূল ফাংশন ঠিকঠাক আছে কিনা সেটা যাচাই করা হয়।

যেমনঃ আমাদের একটি প্রোগ্রামের বর্ণনা দেয়া হলো, যেটি কিনা একটি int প্যারামিটার নিয়ে সেখান থেকে আউটপুট হিসেবে প্রিন্ট করবে জোড় সংখ্যাগুলোকে। যদি জোড় সংখ্যা না হয় তাহলে int প্যারামিটারটির ভ্যালু অপরিবর্তিত থাকবে। ধরা যাক আমরা এই কাজের জন্য একটি ফাংশন লিখলাম এভাবেঃ

int fun(int param)
{
    int result;
    result = param/2;
    return result;
}

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

  1. White-Box Testing
  2. Black-Box Testing.

White-Box টেস্টিং:

 White Box টেস্টিং টেকনিক
White Box টেস্টিং টেকনিক

White-box টেস্টিং glass-box টেস্টিং বা structural টেস্টিং বা Clear box টেস্টিং নামেও পরিচিত। এই টেস্টিং টেকনিকে সফটওয়্যারের অভ্যন্তরীণ বিষয়গুলো জানার প্রয়োজন পরে। অর্থাৎ, কিভাবে কোড করা হয়েছে, টেস্টারের সেই সম্পর্কে বিস্তারিত ধারণা থাকে। যে কোড লেখে, সাধারণত সেই-ই এই টেস্ট করতে পারে। কোডের বিস্তারিত ধারণার উপর ভিত্তি করে একজন সফটওয়্যার টেস্টার টেস্ট কেস তৈরি করেন। টেস্ট কেসগুলো এমনভাবে তৈরি করা হয় যেন সেগুলো দিয়ে কোডের ছোট ছোট অংশগুলো যাচাই করা যায়। যেমনঃ একটা ক্যালকুলেটরের সফটওয়্যার বানানোর জন্য বিভিন্ন ধরণের ফাংশন লেখার দরকার পরে। এখন আমি যদি যোগের ফাংশনটি লিখি আমি লিখবো এভাবেঃ

int sum(int a, int b)
{
    int sum;
    sum = a+b;
    return sum;
}

সাধারণভাবে একজন প্রোগ্রামারেই এইটুকু প্রোগ্রাম লেখার পর ইনপুট দিয়ে টেস্ট করে দেখবে যে কোডটি ঠিকমত কাজ করে কিনা। দুইটি পূর্ণ সংখ্যা ইনপুট নিয়ে তাদের যোগফল আউটপুট দেয় কিনা। আমরা যারা একটু হলেও প্রোগ্রামিং এর সাথে পরিচিত, তারা জানি এই ফাংশনটিতে যদি আমরা 2,2 দেই তাহলে আসবে 4, আবার যদি দশমিক সংখ্যা যেমনঃ 2.5 , 2.5 তখন প্রোগ্রামার মাত্রই জানে এই দুইটি সংখ্যার জন্য এই ফাংশনের আউটপুট আসবে 4, যেটা সঠিক না। White-Box টেস্টিং এ এভাবেই ছোট ছোট ভাগে টেস্ট করা হয়।
White-Box টেস্টিং-এর বেসিক তিনটি ধাপ হলোঃ

  • প্রিপারেশন স্টেজ বা প্রস্তুতি পর্বঃ প্রিপারেশন স্টেজ বা প্রস্তুতি পর্বে White-Box টেস্টিং এর সকল বেসিক ইনফরমেশনের গঠন বা নকশা প্রণয়ন করা হয়ে থাকে। যেমনঃ কোডের ইনপুটের আলাদা আলাদা রিকোয়ারমেন্টস্‌, ফাংশনের বিবরণ বা functional specification, ডকুমেন্টের বিস্তারিত বর্ণনা, সঠিক সোর্স কোড ইত্যাদি।
  • প্রসেসিংঃ প্রসেসিং ধাপ মূলত টেস্ট কেস তৈরি করার ধাপ। এখানে টেস্ট কেস দিয়ে পুঙ্খানুপুঙ্খভাবে সফটওয়্যার অ্যাপ্লিকেশনটি পরীক্ষা করা হয় এবং পরীক্ষার ফলাফল সঠিকভাবে লিপিবদ্ধ করা হয়।
  • আউটপুটঃ আউটপুট পর্যায়ে White-Box টেস্টিং-এর চূড়ান্ত রিপোর্ট দেয়া হয়, যেখানে প্রিপারেশন এবং প্রসেসিং স্টেজের সকল তথ্য এবং প্রাপ্ত ফলাফল সংরক্ষিত থাকে।

সুবিধাঃ

  • White box টেস্টিং-এ প্রোগ্রামের অভ্যন্তরীণ বিষয়গুলো জানা থাকে, বিধায় এই টেস্টিং প্রসেস সফটওয়্যারের এরর এবং বিভিন্ন সমস্যা শনাক্ত করতে বেশ কার্যকর।
  • যদি সফটওয়্যারে কোন প্রছন্ন এরর(Hidden Errors) থেকে থাকে, যেটা সরাসরি বুঝা যায় না, সেটি White-Box টেস্টিং -এর মাধ্যমে শনাক্ত করা সম্ভব।
  • ভবিষ্যৎ-এ যদি সফটওয়্যারের সোর্স কোডে কোন ডেভেলপার কোন পরিবর্তন আনে, তাহলে এই টেস্টিং খুব সহজেই সেটা ধরে ফেলতে পারবে। (হুম, আলগা মাতব্বরি করার কোন সুযোগ নাই )।

অসুবিধাঃ

  • In-depth প্রোগ্রামিং জ্ঞানের দরকার হয় white-box টেস্টিং এর জন্য।
  • ইমপ্লিমেন্টেশন পরিবর্তনের সাথে সাথে টেস্ট কেসেরও পরিবর্তন হয়।

Black-Box টেস্টিংঃ

Black Box টেস্টিং টেকনিক
Black Box টেস্টিং টেকনিক

Black-Box টেস্টিং সফটওয়্যার টেস্টিং-এর আরেকটি method , যেখানে একটা অ্যাপ্লিকেশনকে পরীক্ষা করা হয় স্পেসিফিকেশনের উপর ভিত্তি করে। সম্পূর্ণ আলাদা একটি টিম এই টেস্টিং এর জন্য কাজ করে। ব্ল্যাক বক্স টেস্টিং -এ টেস্টারের সফটওয়্যারের অভ্যন্তরীণ বিষয়ে কোন ধারণা থাকে না। এখানে শুধুমাত্র দেখা হয় সফটওয়্যারটি ইনপুট হিসেবে কী নিবে এবং সেই মোতাবেক কী আউটপুট দিবে। কিভাবে প্রোগ্রামের আউটপুট আসবে সেটা টেস্টারের মাথাব্যথার কোন বিষয় না। ব্ল্যাক বক্স টেস্টিং টেকনিক দিয়ে যেসব এরর আলাদা করা যায় সেগুলো হলোঃ

  • ফাংশনের ভুল শনাক্ত করা যায়
  • ইন্টারফেসের এরর শনাক্ত করা যায়
  • ডাটা স্ট্রাকচার এবং ডাটাবেস এক্সেসের কোন ভুল থাকলে সেটি শনাক্ত করা যায়
  • বিহেভিয়ারাল বা পারফর্মেন্সের কোন এরর থাকলে সেটি শনাক্ত করা যায়

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

ব্ল্যাক বক্স টেস্টিং এর ধাপ হলো তিনটিঃ

  • ইকুইভ্যালেন্স পার্টিশনিং (Equivalence partitioning) এটি একটি সফটওয়্যারের টেস্ট ডিজাইন টেকনিক, যেখানে ইনপুটগুলোকে ভ্যালিড-আনভ্যালিড দুইটি পার্টিশনে ভাগ করা হয় এবং টেস্ট ডাটা হিসেবে ব্যবহার করা হয়।
  • বাউন্ডারি ভ্যালু এ্যানালাইসিস (Boundary Value Analysis) ইনপুট ভ্যালুর একটা বাউন্ডারি সেট করা থাকে। সফটওয়্যার টেস্ট করার সময় সেই বাউন্ডারির ভেতরের-বাইরের ইনপুটগুলো টেস্ট ডাটা হিসেবে দেয়া হয়।
  • কজ-এফেক্ট গ্রাফিং (Cause-Effect Graphing)  সফটওয়্যার টেস্টিং এ cause হিসেবে ধরা হয় ইনপুট কন্ডিশনকে এবং এর effect হিসেবে ধরা হয় আউটপুট কন্ডিশনকে। Cause-Effect graph-এর মাধ্যমে সঠিকভাবে টেস্ট ডাটা তৈরি করা হয়।

সুবিধাঃ

  • ইউজার পয়েন্ট অফ ভিউ থেকে সফটওয়্যারকে টেস্ট করা যায়, কারণ এর জন্য টেস্টারের প্রোগ্রামিং জ্ঞানের দরকার পরে না।
  • স্পেসিফিকেশনের উপর ভিত্তি করে সফটওয়্যার টেস্ট করা হয় বলে, স্পেসিফিকেশন জানার সাথে সাথে টেস্ট কেস তৈরি করা যায়।

অসুবিধাঃ

  • স্পেসিফিকেশনের উপর ভিত্তি করে টেস্ট করার কারণে, শুধুমাত্র ইনপুট এবং সংশ্লিষ্ট আউটপুটের উপর বেশি জোর দেয়া হয়। ফলে সফটওয়্যারের অনেক unimplemented অংশ টেস্টিং-এর আওতায় আনা সম্ভব হয় না।
  • স্পষ্ট স্পেসিফিকেশন ছাড়া, সঠিকভাবে টেস্ট কেস ডিজাইন করা যায় না।

লেখকঃ তামান্না নিশাত রিনি।

কম্পিউটার প্রোগ্রামিং ২য় খণ্ড

আগামীকাল (শুক্রবার, সেপ্টেম্বর ৯, ২০১৬) প্রকাশিত হতে যাচ্ছে কম্পিউটার প্রোগ্রামিং দ্বিতীয় খণ্ড। বইটি সম্পর্কে নানান জনের নানান জিজ্ঞাসার জবাবগুলো সব একসাথে রাখার জন্যই এই পোস্ট।

বইয়ের নামঃ কম্পিউটার প্রোগ্রামিং ২য় খণ্ড

প্রকাশকঃ দ্বিমিক প্রকাশনী

পৃষ্ঠাসংখ্যাঃ ১৮০

মূল্যঃ (সর্বোচ্চ খুচরা মূল্য) ২৫০ টাকা

বইতে কোন প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহার করা হয়েছে? সি (C)

কোথায় পাওয়া যাবে? নীলক্ষেতের হক লাইব্রেরি (ফোনঃ 01820-157181)মানিক লাইব্রেরিতে (ফোনঃ 01735-742908)। ঈদের ছুটির পরে রকমারি ডট কম (rokomari.com) -এ পাওয়া যাবে। যারা ঢাকার বাইরে থাকে, তাদের জন্য রকমারি থেকে কিনলেই সুবিধা, কুরিয়ারে বই পৌঁছে দিবে। যারা দেশের বাইরে থাকে, তারা কিভাবে কিনবে আমি জানি না।

পিডিএফ ভার্শন আছে? নাই।

বইতে কী কী বিষয় অন্তর্ভুক্ত করা হয়েছে?

অধ্যায় ১ – কম্পিউটার মেমোরি (Computer Memory) 18
১.১ – বিট ও বাইট 19
১.২ – ভ্যারেয়িবলের অ্যাড্রেস বা ঠিকানা 21
১.৩ – বিভিন্ন প্রকারের মেমোরি 24
অধ্যায় ২ – পয়েন্টার 27
২.১ – নাল পয়েন্টার 35
২.২ – স্ট্রিং ও পয়েন্টার 37
২.৩ – পয়েন্টারের পয়েন্টার 39
অধ্যায় ৩ – ফাইল (File) 42
অধ্যায় ৪ – রিকার্শন (Recursion) 63
৪.১ – লোকাল ও গ্লোবাল ভ্যারিয়েবল 63
৪.২ – স্ট্যাটিক ভ্যারিয়েবল 65
৪.৩ – বিভিন্ন প্রকারের মেমোরি 67
৪.৪ – রিকার্শন 69
অধ্যায় ৫ – বিটওয়াইজ অপারেশন (Bitwise Operation) 85
অধ্যায় ৬ – স্ট্রাকচার (Structure) ও ইউনিয়ন (Union) 99
৬.১ – স্ট্রাকচার (Structure) 99
৬.২ – ইউনিয়ন (Union) 112
৬.৩ – স্ট্রাকচারের মেমোরি অ্যালাইনমেন্ট 114
অধ্যায় ৭ – আরও পয়েন্টার 119
৭.১ – পয়েন্টারের হিসাব-নিকাশ 126
৭.২ – ভয়েড পয়েন্টার (void pointer) 129
৭.৩ – ফাংশন পয়েন্টার 130
৭.৪ – qsort ও bsearch ফাংশন 133
অধ্যায় ৮ – মজার কিছু প্রোগ্রাম 137
৮.১ – সময় পরিমাপ 137
৮.২ – র‍্যানডম নম্বর (random number) তৈরি 138
৮.৩ – নিজে হেডার ফাইল তৈরি করা 140
অধ্যায় ৯ – বিবিধ 142
৯.১ – কনস্ট্যান্ট (constant) ও ম্যাক্রো (Macro) 142
কনস্ট্যান্ট (constant) 142
ম্যাক্রো 143
৯.২ – এনিউমারেশন (enumeration) 146
৯.৩ – কমান্ড লাইন আর্গুমেন্ট (Command Line Argument) 150
৯.৪ – প্রোগ্রাম কম্পাইল হওয়ার ধাপসমূহ 154
৯.৫ – #typedef ও #define নিয়ে কিছু কথা 156
৯.৬ – main() ফাংশন ও return 0 158
৯.৭ – lvalue এবং rvalue 160
অধ্যায় ১০ – প্রোগ্রাম ডিবাগিং 164
১০.১ – ডিবাগিং কী? 164
১০.২ – সাধারণ ডিবাগিং 164
১০.৩ – কোডব্লকসে ডিবাগিং 169

বইটি কাদের জন্য উপযোগি?

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

বইয়ের ভূমিকাঃ

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

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

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

পাঠকের চোখে কোনো ভুলত্রুটি কিংবা অসঙ্গতি ধরা পড়লে আমাকে ইমেইল করার অনুরোধ রইল, পরবর্তী সংস্করণে সংশোধন করার চেষ্টা করব

তামিম শাহরিয়ার সুবিন,
 গ্র্যাব আর এন্ড ডি সেন্টার, সিঙ্গাপুর।
 আগষ্ট, ২০১৬।

https://fb.com/tamim.shahriar.subeen
https://twitter.com/subeen