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

হ্যাকাথনে কিভাবে কি হলো, সেকেন্ড রানার্স আপ কিভাবে হলাম এসব অভিজ্ঞতা বর্ননা করেই এই ব্লগ পোস্ট।

পদার্থ বিজ্ঞানে ইলেক্ট্রনের গতি ও অবস্থানের রহস্যময় অনিশ্চিত আচরনের “আনসার্টেইনিটি প্রিনসিপাল” এর আবিস্কারক হলেন বিজ্ঞানী হাইজেন-বার্গ। আর কম্পিউটার প্রোগ্রামের রহস্যময়ী অনিশ্চিত আচরন করা বাগ’গুলোকে তারই স্মরনে প্রোগ্রামাররা নাম দিয়েছেন হাইজেন-বাগ।

একটা “হাইজেনবাগ”কে যখন বোঝার বা সমাধান করার চেস্টা করা হয় তখন হয় সেটা গায়েব হয়ে যায় নাহয় আরো উদ্ভট নতুন রুপ নিয়ে প্রোগ্রামারের ঘুমের তেরটা বাজিয়ে দেয়।

আমাদের এবং আমাদের লিখা কোডের সাথে তাই মিল করেই টিমের নাম রাখি “দ্যা হাইজেনবাগস” (The Heisenbugs)

আমি লিডার হবার প্রেশার নিতে চাইনি একদমই কিন্তু এরপরেও টিমের লিডার নির্বাচন করা হয় আমাকে।

ID

রেজিস্ট্রেশানে আমরা বেছে নিয়েছিলাম “সাস্টেইনেবল টুরিজম” প্রবলেম সেটটি। তো আমরা হ্যাকাথনের আগেই এদিক সেদিক বিভিন্ন আইডিয়া নিয়ে ভাবতে থাকি।

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

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

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

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

ভেবেছিলাম সরকারী ইভেন্ট, ৮টার কথা বলে শুরু হবে ১০টায়, কিন্তু আটটার একটু পরেই আমাদেরকে লাইন ধরে নিয়ে যাওয়া হয়, একটা আইডিকার্ড আর কালো গেঞ্জী দিয়ে পাঠানো হলো দোতলার ৬১ নাম্বার টেবিলে। আমরা গিয়ে বসলাম দুটো মাল্টিপ্লাগ প্রোভাইড করা ছিলো। এক টেবিলে বসানো হলো দুই টিম করে।

সকালে ব্রেকফাস্ট হিসেবে দেয়া হলো একটা ছোট স্যান্ডুইচ আর একটা আপেল। এরপর বিভিন্ন ভাষন - লেকচার - ইত্যাদি ইত্যাদি শুরু হয়ে গেল। সাউন্ড সিস্টেমে কে বা কারা ছিলো জানিনা বাট ব্যাক্কলের মত বেস দেয়া ছিলো গায়েহলুদ লেভেল হাই, আর ট্রেবল সম্ভববত ছিলো শূণ্য সেট করা। বেস এর ধুম ধুম এর কারনে আমরা ৬১ নম্বর টেবিলে বসেই ৮০-৯০% কথা বুঝছিলাম না, পিছনের দিকের বা নিচতলার কেউ বুঝছিলোনা আমি শিউর।

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

আমাদেরকে বলা হলো যে তারা কোন ব্রড সলুশান বা বড় কিছু চাচ্ছেন না। তারা চাচ্ছেন, “Design a solution for a particular group of people in a particular situation.”

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

তাই আমি আবার দোতলায় আসার পর টিমের সাথে সবকিছু ডিসকাস করলাম। আগের আইডিয়া পুরোই ফেলে দেয়া হলো। গুগল ডিজাইন স্প্রিন্ট এর Understand, Diverge, Converge করা হলো।

storyboard

নতুন একটা আইডিয়া দাড়িয়ে গেল। এরপর মূল আইডিয়াটা বড় সাদা কাগজে ড্র + আউটলাইন করে দেখাতে হবে, ওইদিকে আমাদেরকে দেয়া বোর্ডটা কারা যেন নিয়ে গেছে। ভলান্টিয়াররা বলছেন আর কোন এক্সট্রা বোর্ড নেই।

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

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

এজন্য চয়েস করলাম আয়োনিক ফ্রেমওয়ার্ক, যেটা করা এংগুলার ২ তে এবং বিল্ড করা হবে কর্ডোভা দিয়ে।

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

সবার মোবাইলে ডাটা নেয়া হলো, ডাটা কেবল দিয়ে কানেক্ট করে টেথার করা হলো, এবং হ্যাকাথনে বসে কনফিউজড আমরা শেখা শুরু করলাম আয়োনিক ফ্রেমওয়ার্ক।

frustration code

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

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

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

sleepy abrar.js

যাই হোক, আমরা ভেবেছিলাম বিকাল ৩-৪টা পর্যন্ত টাইম দেয়া হবে, কিন্তু সকালে হটাত বলা হয় যে ১০টা থেকেই জাজরা আশা শুরু করবেন। তখনো আমাদের অ্যাাপের মৌলিক অনেককিছুই হয়নি। আমরা আবার শুরু করলাম যত দ্রুত সম্ভব প্রোটোটাইপ তৈরির চেস্টা। শেষের দিকে পাশের টেবিলে জাজ এসে যাচ্ছিলো কিন্তু বিল্ড স্ট্যাকে সমস্যা থাকায় এপিকে বিল্ড হচ্ছিলো না, হতাশ - ফ্রাস্ট্রেশান সবকিছু মিলিয়ে খুবই বাজে অবস্থা। এদিকে দুই টিম মেম্বার কোথায় গায়েব হয়ে গেছে তাদের ফোন করেও খুজে পাওয়া যাচ্ছেনা(তারা কোন চিপায় গিয়ে আরামসে ঘুম)। বহু ইন্টার্নেট সার্চ, স্টাক ওভারফ্লো উলট পালট এবং ডিবাগিং এর পর জাজ আশার কিছু আগে বিল্ড হলো আমাদের আইডিয়ার ৩০-৩৫% আছে এমন একটা খুবই বেসিক এপিকে। ইমুলেটরে রান করা গেলো আইওএস ভার্শন। আর বাকি ফিচার দু একটা আমরা মকাপ হিসেবে পিসিতেই করে রাখলাম।

জাজরা এলেন,আগেই বলে দিলেন “ভবিষ্যতে করবো” টাইপ কিছু বলা যাবেনা। মোবাইলে টাইমার দিয়ে এক মিনিট টাইম দিলেন। খুব দ্রুত প্রোটোটাইপ দেখলেন।
আমি যতটুক পারলাম প্রেজেন্ট করার চেস্টা করলাম, যদিও সময় এবং ঘুমহীন মস্তিস্কের কারনে কিছু মৌলিক পয়েন্টই বলতে ভুলে যাই তবুও মোটামুটি ভাবে জাজিং শেষ হলো।

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

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

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

ঘোষনা শুরুই হলো সাস্টেনেবল টুরিজম নিয়ে, এবং প্রথম ঘোষনাটাই ছিলো, “সেকেন্ড রানার্স আপ হয়েছে টিম… দ্যা হাইজেনবাগস” এরপর আনএক্সপেক্টেড শকে আমরা লাফিয়ে উঠলাম। এক লাফে আবরারের পেন্ড্রাইভের খোলস উড়ে কোথায় চলে গেল। আমরা উপরে গিয়ে পুরস্কার নিলাম। কনফিউজড আমরা একেকবার একেক দিকে দৌড়ালাম। ছবি তুললাম। সবার সাথে উদযাপন করলাম। এরপর ফটোসেশন হলো, হাত উপরে তুলে , ভি দেখিয়ে ছবি তোলা হলো।

us

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