Presentation made on the occasion of the Decade of Data Science Event held at the Park Hotel.
December 17, 2021
November 07, 2021
Metaverse Reloaded
October 31, 2021
ডু ইট ইয়োউরসেল্ফ D I Y শিক্ষা স্ট্র্যাটেজি
জেনারেল স্ট্রিম থেকে প্রোগ্রামিং কেরিয়ারে
ভারতবর্ষে সবাই চায় ইঞ্জিনিইয়ারিং বা মেডিক্যাল কলেজে ভর্তি হতে কারণ এই পথে চাকরি বা রোজগারের সুযোগ খুব বেশি। কিন্তু সবার কপালে সেটা হয় না। কিছুটা মেধা, কিছুটা টিউশান বা গৃহশিক্ষক এর উপর খরচা করার ক্ষমতা আর কিছুটা সৌভাগ্য বসত বেশ কিছু ছাত্র এই লাইনে ঢুকে যায়। কিন্তু দেশের বেশির ভাগ ছেলে-মেয়েদের জেনেরাল স্ট্রিমে ফিজিক্স, কেমিস্ট্রি, ইতিহাস, ভূগোল, বটানি, বাংলা, ইংরেজী ইত্যাদি নিয়ে তিন বছরের গ্র্যাজুয়েশন কোর্সে ভর্তি হতে হয়। তবে এই বি-এ বা বি-এস-সি পাশ করে চাকরি পাওয়া খুবই শক্ত ব্যাপার। আই-এ-এস, আই-পি-এস, ডব্লু-বি-সি-এস, লোয়ার ডিভিশন ক্লার্ক, ব্যাংক, রেল, স্কুল টিচার এইসব লাইনে মুষ্টিমেয় কয়েকটা খালি পদের জন্য কোটি কোটি আবেদনকারীর ভীড়। কাট-থ্রোট কমপিটিশন। ডোমের চাকরির জন্য মাস্টার্স পাস করা প্রার্থী ! আবাসনে, সুপারস্পেশ্যালিটি হাসপাতালে সিকিউরিটির কাজে বহাল হয় মাস্টার্স করা ছাত্র। কোনও পেশাই ছোটো নয় কিন্তু তাহলে জেনেরাল স্ট্রিমে পড়ে গ্র্যাজুয়েশন করলে ভবিষ্যৎ কী একেবারেই অন্ধকার? একেবরেই না। ছেলেপুলেরা কী স্বপ্ন দেখবে না? নিশ্চয়ই দেখবে। একটু বুদ্ধি খাটিয়ে চললে, এই জেনেরাল স্ট্রিম থেকেই সফ্টওয়ের সেক্টরে চাকরিও পাওয়া যেতে পারে এবং তার জন্যে চাই একটা ডু -ইট-ইয়োরসেল্ফ (D I Y) শিক্ষার স্ট্র্যাটেজি। কারণ মানুষের আধুনিক জীবন যাপনের সঙ্গে এই সফটওয়ার টেকনোলজি এমনভাবে জড়িয়ে গেছে যে আর এসব না শিখে উপায় নেই।
এই D I Y কেরিয়ার গড়ার মূলে হচ্ছে জ্ঞান (বা নলেজ) এবং দক্ষতা (বা স্কিল) এর মধ্যে পার্থক্যটা বোঝা । চাকরির বাজারে নলেজের ( মানে ইতিহাস, ভুগোল, ইংরাজি, বাংলা, ফিজিক্স, কেমিস্ট্রি, ফিলসফি, ইকনমিক্স ইত্যাদি) খুব একটা দাম নেই শুধুমাত্র শিক্ষার ক্ষেত্র ছাড়া। শিক্ষকতা আর অধ্যাপনার সঙ্গে যুক্তদের কাছে এর দাম। কিন্তু দাম এবং স্থান দুইই আছে স্কিলের - যেমন প্লামবার, ছুতোর, ইলেকট্রিশিয়ান, মেকানিক, অ্যাকাউন্টেনসি এবং এই লাইন ধরেই ব্লু কলার থেকে হোয়াইট কলারে গেলে কমপিউটার প্রোগ্রামিং। বহু ক্ষেত্রে দক্ষ প্লামবার বা ইলেকট্রিশিয়ান একজন বেকার বাংলা বা ইতিহাসের গ্রাজুয়েটের চেয়ে বেশি রোজগার করতে পারে, কিন্তু বহু বাঙ্গালি ঘরে এই সব ব্লু কলার কাজের উপর স্পৃহা নেই। তাই হোয়াইট কলার কাজের কথাই হোক। প্রোগ্রামিং ছাড়াও আর কিছু হোয়াইট কলার স্কিল আছে, কিন্তু আপাতত সেগুলো পাশে রেখে এই প্রোগ্রামিং লাইনেই ভাবা যাক। সেটাই আজকের আলোচনার মূল বিষয়।
কিন্তু ইঞ্জিনিয়ারিং কম্পিউটার সায়েন্স না পড়েই কি আই-টি কম্পানিতে প্রোগ্রামিংএর চাকরি পাওয়া সম্ভব? হ্যাঁ সম্ভব। আর সেটাই এই আর্টিক্লের বিষয়। ধৈর্য ধরে পড়লে নিজের বা বাড়ির ছেলে মেয়েদের একটা কেরিয়ার গড়ার পথ দেখা যাবে সফ্টওয়ার সেক্টরে।
প্রথম প্রশ্ন, এত বিষয় থাকতে প্রোগ্রমিং শিখবো কেন? কারন সফ্টওয়ার এমনি একটা স্কিল যেটা সব সেক্টরেই ভীষণ ভাবেই দরকার। বর্তমানে অটোমোবাইল থেকে অ্যাস্ট্রোলজি, ব্যাঙ্কিং থেকে বায়োটেকনলজি, রোবটিক্স থেকে রিটেল - প্রত্যেক ব্যবসাতেই সফ্টওয়ারের খুব দরকার আর তাই দরকার প্রোগ্রমিং জানা স্কিল্ড প্রোগ্রমারের। কিন্ত এই চাকরি পেতে গেলে ইতিহাস, বাংলা, ফিজিক্স বা ইকনমিক্সের ডিগ্রি দেখিয়ে কোন লাভ নেই। একটা গ্র্যাজুয়েশন ডিগ্রি খুবই দরকার, কারণ এ ছাড়া কোন কোম্পানি কথাই বলবে না। আমাদের দেশে graduation is necessary, but not sufficient । এবার দেখা যাক এই নেসেসারি গ্রাজুয়েশনের সঙ্গে কি কি সাফিসিয়েন্ট স্কিল দরকার। আর ঠিক কি কি করলে একজন জেনারেল স্ট্রিমের ছাত্রের বায়োডেটা একটা আই-টি কোম্পানির কাছে গ্রহণযোগ্য বা আকর্ষণীয় হয়ে উঠতে পারে।
শুরু করতে হবে তিন বছরের স্ট্র্যাটেজিক পরিকল্পনা নিয়ে যাতে গ্র্যাজুয়েশনের জন্য নির্ধারিত সময়টা বাজে খরচা না হয়ে যায়। যেহেতু গ্র্যাজুয়েশনের ডিগ্রিটা না করলেই নয় তাই এর পেছনে খুব একটা মাথা ঘামানোর দরকার নেই। একটা মোটামুটি ভদ্রস্থ কলেজ, মানে যেখানে খুব বেশি ছাত্র পলিটিক্স বা নেশা ভাঙের গল্প নেই সেখানেই ভর্তি হয়ে যাওয়া ভাল। বাড়ির কাছে হওয়া খুব দরকার্, যাতে যাওয়া আসায় সময় নষ্ট না হয়, কারণ আমাদের কলেজের কাজের বাইরে অনেক কাজ আছে। সায়েন্স ডিগ্রি হলে ভাল হয়, তা সে বটানি, জিওগ্রফি, জিওলজি বা সাইকলজি হলেও কোন ক্ষতি নেই। এসব কোন জ্ঞানই কোন কাজের নয় যদিনা কেউ শিক্ষকতা বা অধ্যাপনায় কেরিয়ার গড়তে চায়। কর্পোরেট চাকরীর জন্য দরকার একটা ডিগ্রি আর ৭০% মার্ক্স। এটা একান্ত নিয়ম রক্ষার জন্য, নয়তো বায়োডেটা কেউ খুলে দেখবেই না।
এইবার আসল কাজ শুরু!
দামি স্মার্টফোনে পয়সা খরচ না করে প্রথমেই একটা সস্তার ল্যাপটপ কম্পিউটার কিনে ফেল। যদিও তার সঙ্গে একটা সস্তার অ্যানড্রয়েড ফোন খুব দরকার। এই ফোনে আনলিমিটেড 4G ডেটা ভরে , সেই ফোনকে ওয়াই-ফাই হটস্পট করে লাপটপের সঙ্গে টেথার বা কানেক্ট করতে হবে, যাতে ল্যাপটপ থেকে ইন্টারনেট ব্যবহার করা যায়। স্মার্ট ফোনে ফেসবুক, ইউটিউব, গেমস বা ইনস্টাগ্রামের মতো এন্টারটেইনমেন্ট বা টাইমপাস হয়। আসল কাজ করতে গেলে ল্যাপটপ খুবই প্রয়োজন। ল্যাপটপ নিয়ে এবার কেরিয়ার গড়ার ত্রৈবার্ষিক পরিকল্পনা শুরু করে ফেল ।
প্রথম বছর
প্রথমেই শিখতে হবে গুগল (Google) সার্চ। ইন্টারনেটে হাজার হাজার টিউটোরিয়াল পাওয়া যায়, যার বেশির ভাগই ফ্রি বা নিখরচায় মেলে । নানা রকম সাইটে গিয়ে শিখলেই হল, কিন্তু কী শিখবে? এতো জ্ঞান সমুদ্রে পড়ে হাবু ডুবু খাওয়ার মতো। তাও, কয়েকটা দিক থেকে শুরু করা যায়। প্রথমেই সার্চ করো "Getting started with Google Docs"। দাম দিয়ে কেনা বা পাইরেটেড Microsoft Office ব্যবহার না করে, ফ্রি অনলাইন Google Docs Word Processor ব্যবহার করতে শেখ। তারপর Excel এর মতন Google Sheets এ spreadsheet ব্যবহার করতে শেখ।
ইংরাজির ওপর ভাল দখল না থাকলে ইংরাজি ভাষার ওপর ফ্রি অনলাইন ক্লাস বা টিউটোরিয়াল খোঁজো। ইংরেজী লেখা ও বলার বেসিক জ্ঞান টুকুনি জরুরী। সেক্ষেত্রে স্পোকেন ইংলিশের ক্লাস বা কমিউনিকেটিভ ইংলিশের ক্র্যাশ কোর্স করা যেতে পারে।
আনলিমিটেড ডেটার কৃপায় অসংখ্য সাইট ঘোর আর দেখ জগতে কোথায় কি হছে। ফেসবুক, টুইটার, ইনস্টাগ্রাম ঘোরো, কিন্তু মনে রেখো, ইন্টারনেটের আড়ালে প্রচুর বাজে লোক আছে। প্রথম প্রথম অচেনা, অজানা লোকের সঙ্গে ভাব জমানো উচিত নয়। আত্মীয় বা কলেজের রক্ত-মাংসের বন্ধু ছাড়া কাউকে বিশ্বাস করবে না। আর যে কোন সাইট, যেমন পর্নোগ্রফিক সাইট, থেকে কম্পিউটারে ভাইরাস বা ক্ষতিকর প্রোগ্রাম চলে আসতে পারে । তাই সহজে কিছু ডাউনলোড করবে না। Windows কম্পিউটারে ফ্রি Microsoft Defender প্রোগ্রাম লাগানো থাকলে, ভাইরাসের ভয় অনেকটা কম। মানে Covid এর বাজরে মাস্ক পরে থাকার মতো।
কিছুটা গুগল সার্চ নিয়ে সড়গড় হবার পর এবার একটু জ্ঞান বা নলেজ জোগাড় করার পালা। প্রথম বছর জ্ঞান, দ্বিতীয় বছর দক্ষতা বা স্কিল। এই পরিকল্পনা নিয়ে চললে, এবার প্রোগ্রমিং ব্যাপারটা বোঝার সময় এসে গেছে। আগে স্কুলে প্রোগ্রামিং করা থাকলে ভালো, না হলে ক্ষতি নেই। গুগল সার্চ করো এই বলে- "Free Coding Tutorials for Kids"। সার্চের প্রথম উত্তরগুলো স্পনসর্ড বিজ্ঞাপন। সেগুলো ব্যবহার করতে গেলে পয়সা লাগবে। এড়িয়ে চলাই ভাল। ইন্টারনেটে ফ্রি টিউটোরিয়াল এত আছে যে বাইজু বা হোয়াইটহ্যাট -এর মতো যায়গায় পয়সা খরচ করা বোকামি। গুগল সার্চ করে অনেক ভাল ভাল টিউটোরিয়াল সাইট পাওয়া যাবে তবে www.code.org এ "An Hour of Code" দিয়ে শুরু করা যেতে পারে।
এই কোডিং টিউটোরিয়াল থেকে কয়েকটা প্রাথমিক ধারণা পরিস্কার হয়া উচিত। ভেরিয়েব্ল কি? ইনটিজার, ডেসিমাল, স্ট্রিং আর বুলিয়ান। অপরেটর দিয়ে কি করা হয়? নিউমেরিক, স্ট্রিং আর কমপারিজন অপরেটর। কনডিশনল আর লুপ (বা ইটিরেটিভ) অপারেশনের প্রয়োজন কোথায়? ডেটা ইনপুট্-আউটপুট কি করে হয়? জগতের প্রতিটি কমপ্যুটার ল্যাংগুয়েজ -- সি, সি++, জাভা, পাইথন, জাভাস্ক্রিপ্ট -- সবই এই কয়েকটা প্রাথমিক কনসেপ্টের উপর চলে। যে কোন একটা ভাষা শিখলে, অন্য কোন ভাষা শিখতে চার সপ্তাহের বেশি সময় লাগবে না। তাই প্রথম বছরে জাভা-স্ক্রিপ্ট অথবা পাইথন, যে কোন একটা ল্যাংগুয়েজ নিয়ে মোটামুটি সড়গড় হয়ে গেলে একটা বিরাট পদক্ষেপ নেওয়া হয়ে যাবে।
প্রথম বছরে এই সব প্রাথমিক কোডিং কনসেপ্ট নিয়ে ঘাঁটা ঘাঁটি করে সড়গড় হওয়া খুব দরকারি। এর সঙ্গে আর একটা কাজ করা দরকার আর সেটা হোলো নিজের এক বা একধিক ব্লগ লেখা। নিজের ওয়েবসাইট তৈরি করার সব চেয়ে সহজ উপায় হোলো ব্লগ। blogger.com অথবা medium.com এ বিনা খরচায় কি করে ব্লগ খুলতে হয় তা গুগল সার্চ কর "How to create blog at blogger" । শুধু কনজাম্পশন করলেই হয় না, কিছু ক্রিয়েট করতে হয়। মূল মন্ত্র হতে হবে consumption to creation। ব্লগ হোলো ডায়েরি লেখার মত। কি লিখবে? নিজের যা ভালো লাগে, তাই। সিনেমা, রাজনীতি, খেলার খবর নিয়ে লেখো। তবে টেকনলজি বা গ্যাজেট নিয়ে লিখলে ভাল। প্রতি সপ্তাহে একটা করে পোস্ট লেখ। গুছিয়ে কোনো কিছু লিখতে পারা কর্পোরেট জগতে খুবই জরুরি। লেগে থাকো। তৃতীয় বছরে এর উপকার বুঝতে পারবে।
দ্বিতীয় বছর
এইবার শুকনো জ্ঞান থেকে কয়েকটা নির্ধারিত স্কিল দরকার। অনেক কিছুই শেখার আছে, তবে ফুল-স্ট্যাক ডেভেলপার হতে গেলে বা প্রোগ্রামিং এ সম্যক এবং সম্পূর্ণ জ্ঞান অর্জন করতে হলে একগুচ্ছ স্কিল দরকার। বড়, কর্পোরেট কমপিউটার সিস্টেম একটা মেশিনে চলে না। থ্রি-টায়ার সিস্টেমে তিনটে মেশিন থাকে। এক হল ইউজার বা যে ব্যবহার করে তার কাছে একটা ল্যাপটপ বা স্মর্টফোন থাকে যেখানে ব্রাউজারে প্রোগ্রাম চলে অর্থাৎ ফ্রন্ট এন্ড সিস্টেম। দুইহল মাঝে ওয়েব-সার্ভারে চলে ব্যাক-এন্ড সিস্টেম। তিন, তার পিছনে তৃতীয় টায়ারে ডেটা রাখা থাকে ডেটাবেস সার্ভারে। ফুল-স্ট্যাক ডেভেলাপার হতে গেলে এই তিনটে ব্যাপারেই স্কিল বা দক্ষতা থাকা দরকার আর এইখানেই বিভ্রান্তি শুরু হয়। কোনটা ছেড়ে কোনটা শেখা উচিত? এখানে নানা মুনির নানা মত! লেখকের মতে একটা জাভাস্ক্রিপ্ট ভিত্তিক ( জাভা নয়! জাভাস্ক্রিপ্ট ) ফ্রেমওয়ার্ক নিয়ে দক্ষতা অর্জন করাই ভালো। গুগল সার্চ করে দুটো স্ট্যাক পাওয়া যায়। MERN আর MEAN । MERN স্ট্যাকে আছে- [M] মঙ্গো ডেটাবেস, [E] এক্সপ্রেস জাভাস্ক্রিপ্ট ফ্রন্ট এন্ড, [R] রিয়্যাক্ট জাভাস্ক্রিপ্ট ব্যাক-এন্ড , [N] নোড জেএস রানটাইম । MEAN স্ট্যাকে, [R] রিয়্যাক্টের বদলে [A] অ্যাঙ্গুলার ব্যাক্-এন্ড ব্যবহার হয়। প্রথম বছরে জাভাস্ক্রিপ্ট শেখা থাকলে এই জাভাস্ক্রিপ্ট প্যাকেজ গুলো বুঝতে অসুবিধা হওয়া উচিত নয়। প্রত্যেকটা ক্ষেত্রেই, গুগল সার্চ করে টিউটোরিয়াল খুঁজে বার করে, ধৈর্য ধরে, ধাপে ধাপে সেই টিউটোরিয়াল গুলো করতে হবে। আটকে গেলে গুগল সার্চ করে উত্তর আর পথ নিজেই বার করে নেওয়া যায় অনায়াসে।
জাভাস্ক্রিপ্টের মতন ল্যাংগুয়েজ শেখার সঙ্গে আর একটা গুরুত্বপূর্ণ বিষয় হোল অপারেটিং সিস্টেম যা দিয়ে মুল কম্পিউটার চালিত হয়। আমাদের বাড়ির ল্যাপটপে সাধারনত উইনডোস ১০ চলে, কিন্তু বড় করপোরেট সেকটরে লিনাক্স এর ব্যবহার বেশি। তাই লিনাক্সে কাজ করার দক্ষতা থাকলে চাকরির সুবিধা বেশি। লিনাক্স শেখার জন্য আলাদা ল্যাপটপ কেনার প্রয়োজন নেই। উইনডোস ১০ এ উইনডোস সাবসিস্টেম ফর লিনাক্স (WSL) চালু করে, উবানটু অ্যাপ ডাউনলোড করে নিলে, উইনডোস মেশিনে বসে খাসা লিনাক্সের কাজ শেখা আর করা যায়।
এই রকম নিজে নিজে পড়ার ব্যাপারটা আমাদের কলেজের ছাত্রছাত্রীদের কাছে একটা অভিনব অভিজ্ঞতা। কিছু বই কেনা যেতে পারে কিন্তু এখানে টিউশান স্যারের কোনো গল্প নেই। ইতিহাস, ভূগোল, অঙ্কের মতন, এই বিষয় গুলি বছরের পর বছর এক থাকে না। প্রতি বছর পালটে যায়। স্কুল কলেজের মাস্টারমশাইরা এসব ব্যাপারে সাহায্য করতে পারলে ভালো । আসলে যারা জানে, তারা কর্পোরেট সেক্টরে কাজ করে কিন্তু তাদের আবার শেখনোর সময় বা ইচ্ছে নেই। যারা নিজে নিজে শেখে, তারাই আই-টি সেক্টরে বড় হয়, নাম কেনে। আজ যা শেখা হচ্ছে, চার-পাঁচ বছরে তা বদলে যাবে। আবার নতুন কিছু শিখতে হবে। তাই প্রথম থেকেই, নিজে নিজে শিখতে শেখাটা খুব জরুরি।
তৃতীয় বছর
কিন্তু শুধু শিখলেই হবে না, নিজের জ্ঞান আর দক্ষতা সকলের সামনে তুলে ধরতে হবে। তাই প্রথমেই খুলে ফেলা দরকার একটা লিংকডইন প্রোফাইল (linkedin.com)। ফেসবুকের মতোই লিংকডইন একটা সোশাল নেটওয়ার্ক যেখানে হৈহুল্লোড় বেলেল্লেপনা নেই কিন্তু আছে গম্ভীর এবং তাত্ত্বিক বিষয় নিয়ে পোস্ট। চাকরি খোঁযার সহজ উপায়। এইখানে নাম লিখিয়ে, পোস্ট আর কমেন্ট করে নিজের কথা ছড়াতে হবে। এর সঙ্গে দরকার একট গিটহাব ( github.com ) রিপসিটারি। গিটহাব হলো প্রোগ্রমারদের সোশাল নেটওয়ার্ক। এখানে লোকে নিজের লেখা প্রোগ্রাম জমা করে রাখে, যাতে অন্যরা তা দেখতে পায় এবং ব্যবহার ( মানে কপি-পেস্ট) করতে পারে। চাকরি দেবার আগে, কোম্পানিরা দেখতে চায় তুমি কি রকম প্রোগ্রাম লিখেছো।
এইবার বায়ো-ডেটা বা সি-ভি লেখার পালা। গুগল সার্চ করলে নানা রকম ভাবে সি-ভি লেখার স্টাইল পাওয়া যাবে। যেটা ভালো লাগে, সেটা ব্যাবহার করো, তবে সি-ভি তে, ব্লগ (যা প্রথম বছরে শুরু হয়েছিল), লিংকডইন প্রোফাইল ও গিটহাব-এর উল্লেখ করা খুব প্রযোজন। এতদিনে গ্র্যাজুয়েশনের দু বছর হয়ে গেছে, সেই দু বছরের মার্কস নিশ্চয় দেবে আর জানিয়ে দেবে ডিগ্রি কবে পাওয়া যাবে। আর থাকবে স্কিল সেট-এর লিস্ট - পাইথন, জাভাস্ক্রিপ্ট, রিয়্যাক্ট ( বা অ্যাঙ্গুলার), নোড্-জেএস মঙ্গো-ডিবি, লিনাক্স, গিট । এই সব কথা গুলি সি-ভি তে থাকলে, সি-ভি লোকের নজরে পড়বে। এইবার সি-ভি বিভিন্ন জব সাইটে পোস্ট করে ডাকের অপেক্ষায় বসে থাকা।
শেষ কথা
এই ভাবে চললেই কি করপোরেট রা সোজা সুজি অ্যাপয়েন্টমেন্ট লেটার নিয়ে বাড়িতে পৌঁছে যাবে? সেটা না হলেও, এটুকু বলা যেতে পারে যে শুধুই একটা গ্র্যাজুয়েট ডিগ্রি থাকার চেয়ে এই সব করলে চাকরি পাওয়ার চান্স শতগুণ বেড়ে যায়। বাজারে এই সব স্কিলের চাহিদা খুব কিন্তু দক্ষ লোক পাওয়া যায় না। কোম্পানিরা হন্যে হয়ে ঘুরছে। তোমার এই স্কিল গুলি থাকলে আর তা দেখাতে পারলে, তারা মাথায় করে নিয়ে যাবে -- জানাশুনো, ধরাধরি, তদবির, ঘুষ কিছুই লাগবে না।
তবে এই ডু-ইট-ইয়োরসেল্ফ (DIY) এডুকেশন কিন্তু খুব সহজ নয়। মনের জোর, ধৈর্য আর অসীম একাগ্রতা দরকার। সবাই পারে না। চার-পাঁচ জনের একটা সেল্ফ-স্টাডি গ্রুপ তৈরি করে নিলে অনেকটা শুবিধা হবে। আর সফ্টওয়ারে কাজ করে এমন দু-এক জন দাদা-দিদি মেন্টর থাকলে খুব ভাল হয়। তবে তিনি শেখনোর সময় পাবেন না। শিখতে হবে নিজে নিজে, গুগল দেবতার পায়ে ( বা সার্চে) মাথা ঠুকে। শুধু মাত্র ইংরাজির ব্যাপারে একটা স্পোকেন ইংলিশ ক্লাস করে নিলে, পরে ইন্টার্ভিউএর ভেতর কথা বলার সময় আত্মবিশ্বাস বেড়ে যাবে।
ইন্টারনেট একটা অসাধারণ জায়গা, কিন্তু এখানে শুধু মুখ বেঁকিয়ে ছবি তুলে পোস্ট করে কোন লাভ নেই। এটাকে ব্যবহার করে কেরিয়ার গড়তে পারাটাই আজকের দিনে খুব প্রযোজন। তবে ইন্টার্নেটের সঙ্গে সোশাল মিডিয়া যেহেতু ওতোপ্রতো ভাবে জড়িয়ে আছে, তাই শেষ করি আর দুটো সোশাল মিডিয়া সাইটের কথা বলে। কমপিউটার জগতে নতুন কি হচ্ছে তা জানার প্রথম যায়গা হল স্ল্যাশডট (slashdot.org) এখানে সবাই খুব ক্ষুরধার মস্তিস্কের লোক, তাই এখানে কথা না বলে, চুপচাপ লোকের কথ শোনা আর তাদের থেকে শেখা ভাল। দ্বিতীয়টা হল স্ট্যাকওভারফ্লো (stackoverflow.com) প্রোগ্রামিং এর কাজে কোথাও আটকে গেলে, এই সাইটে গিয়ে বিনীত ভাবে প্রশ্ন করলে, অন্য মেমবাররা যত্ন করে সাহাজ্য করে। এই সব সাইট আছে বলেই ইন্টার্নেট ভিত্তিক ডু-ইট-ইয়োরসেল্ফ (DIY) শিক্ষা সমভব।
---------
আরো পড়ুন এই website এ
September 15, 2021
Engineers Day 15 September
Celebrated Engineers Day by reaffirming my identity as a Mechanical Engineer and building this Mars Buggy with a kit from Ukraine Gears.
Cost me about 4 hours of work and a very sore thumb. Wish I had a tool to press in the wooden pieces
August 24, 2021
Crisis as a Catalyst / Women at Work
We are surely aware of SaaS or Software as a Service but let us explore the intriguing concept of the Crisis as a Catalyst for Change.
Y2K - 1999
Those of us who are old enough to have been professionally active during the Y2K era, would recollect that industrialised societies, especially the US, were in a tizzy over how computer systems, both private and public, would collapse on 31 Dec 1999. This was because of the way dates had been defined with two digit years since the dawn of the computer age in the early 1960s and no one had thought that 99 would be followed by 00. Hence massive IT projects were commissioned to make systems Y2K proof by rewriting the code to accommodate four digit years so that 1999 would be followed by 2000.
But the size of the task -- spanning so many organisations and their plethora of systems -- was so huge that there were simply not enough programmers to make even this simple change. At this point of time, software companies in India were trying to do business by sending inexpensive Indian programmers to the US for doing this job. But the process of obtaining employment visas and the logistics of airfare, hotel stay for programmers and their families was very expensive and cumbersome.
Some progressive software companies in India suggested that the work be done remotely using the newly established internet and the rising spread of telecom facilities but this was initially laughed at and scorned. How on earth could programmers work from a distance without sitting in close proximity to the end users. Any such proposal was initially rejected outright, but then as deadlines came closer, backlog increased the logistics of moving humans across international borders became insurmountable challenges, most customer companies eventually relented.
The Y2K crisis spawned the concept of off-shore delivery centres where people working from India could deliver services in the US at the same level of performance as people sitting in the US. Thus was born a whole new business model that allowed a vast number of people to be engaged in mission critical work without having to step on to an aircraft and cross immigration barriers.
Cut to the year 2020.
The internet and web based applications like eCommerce, online banking, social media and video phone-calls have taken over the world. But there is one corner that is still dark and unpleasant. While we had the technology to work from home, no company was yet ready to allow its employees to do so. Some were openly suspicious about people not being punctual and sincere at home and the other more liberal ones felt that without face to face meeting it is not possible to run a large company. Most employees were resigned to this fact except that women employees are far more affected than men.
This is because for a variety of reasons, women in India are not as mobile as their male counterparts. Whether this is correct or not is a matter of another debate, the fact remains that this is often held against women when it comes to mission critical roles. We understand the need to care for children and we also say that these loads need to be shared by men but the fact on the ground is that women have to, or are seen to play a far bigger role "at-home" than men who are "out-at-work".
But just as the pressure of the Y2K crisis broke down the barriers to off-shore delivery so did the Pandemic2020 break down the barriers between "home" and "work" in the spirit of Tagore's Gharey-Bahirey. Suddenly everyone, right from the CEO downwards, was working-from-home and that too not just for a day but for nearly two years and still counting. And did the corporate sector suffer because of this? Certainly not if you consider the booming stock market.
This new model of work-from-home has not only helped corporates survive and prosper in these difficult times but has had an unintended and huge impact on women executives. Now that no one expects them to step out of home, many more of them can seek significant engagements in the corporate world, and this is more important, corporates have now accepted that work-from-home is as good as, if not better, than people crowding at the office!
Just as Y2K showed how to access to a vast pool of Indian talent without the overhead cost of visa, airfare and travel, so has the Pandemic2020 given corporates access to a vast pool of talent without the overheads of commuting and the administrative cost of maintaining a large office. So even if complete work-from-home may not become the norm, a hybrid model would surely become widespread and acceptable in the corporate community. This could take many different forms but essentially employees would have the option of working mainly from home and be at office once or twice a week or even a month. Video conferencing and collaborative work tools, that have been around for many year but have become acceptable in the last two years will become the backbone of the organisation just as email and MS-Office has been over the past so many years.
The biggest beneficiaries of this new, work-from-home model would be women who would now be able to balance their corporate and domestic duties with much more ease and elegance and this will lead to significant rise in the percentage of women employees in the workforce.
We can only hope that both corporates and talented women will see this trend and jump on to this bandwagon as quickly as possible.
July 25, 2021
From Machine Learning to Machine Motivation
Software artifacts that display artificial intelligence are increasing in both number and sophistication. There are many definitions of what constitutes intelligence and there are many ways in which software has been programmed to demonstrate the same. Of all the many options, the use of artificial neural networks (ANN), that closely mimic the connectionist approach of animal brains, has been found to be most effective in performing tasks that are both useful and insightful. This includes, for example, recognising faces, driving cars, generating meaningful text passages and playing a wide range of games both against humans and against other programs. It may not be the case that the ANN will always be the best way to demonstrate this kind of intelligent behaviour, so for the purpose of this study an ANN is neither necessary nor sufficient. All that we need is a digital artifact -- a container of data, code, model, APIs or a combination of some of these -- that we will refer to as a digital intelligence unit, or DIU. Having access to a DIU equips a digital computing device with the ability to demonstrate intelligence or mimic a specific behaviour of an intelligent biological system.
Digital Intelligence Unit
A DIU may be a digital construct but its input and output could be both digital as well as physical. A typical DIU that we deal with today may read in a piece of digital information, like an image or data file as an input and generate digital output, like a name or a class. However there is no conceptual difficulty in assuming that the DIU is connected to sensors that capture a physical measurement from the environment or that it can cause wheels, drills, arms, actuators or tools to move and do physical work.
For example, a DIU may guide a car to move through traffic or terrain, pick up and assemble physical objects like rocks, machine components or even assemble two objects together. It can also sense and consume energy or where necessary cause the generation or transformation of energy from one state to another. Not all DIUs need to be very sophisticated. There could be very basic DIUs that simply interrogate other devices and exchange information or a DIU that allows a device to share a physical resource like a camera or a disk with another device. Nevertheless, we will treat the DIU as a digital abstraction that is resident on a digital hardware device like a computer.
A set of DIUs that work together may be viewed together as a larger, bigger or more sophisticated DIU. This larger DIU may still reside on one hardware device or its parts may be distributed across multiple hardware devices and identified with something like a Uniform Resource Identifier as is done in web development. However, this set of smaller, compatible DIUs -- is, conceptually, still another DIU. For example, a ‘rover’ that NASA sends to Mars may consist of a collection of DIUs, each with its own intelligent function but the ‘rover’ itself may be viewed as another DIU.
Continuing with this analogy, we may be tempted to view a biological animal, like a fish or man, as a DIU that is a collection of simpler DIUs. For the sake of argument, and simplicity, we may view, or model, a biological dog as a collection of four DIUs that can scan the environment and identify objects, distinguish between edible and non-edible objects, consume edible objects and generate signals that express facts about the taste of the food. So four discrete DIUs are collected together to give a bigger DIU called a digital dog.
While this analogy appears tempting, it poses a few challenges.
Motivation
The first challenge is motivation. What motivates a DIU to demonstrate its intelligence? Or what is even more fundamental, what causes a DIU to come into existence?
For a DIU to demonstrate its intelligence, a program must be executed, which means that someone or something must start the program. This is not difficult because most digital platforms (as in computers with operating systems) have mechanisms that could cause certain programs (including DIUs) to start automatically when the system boots and then wait for signals, or interrupts, from the external world. These signals or interrupts could be key-presses or other events like the arrival of mail or the rise of temperature.
What is much more difficult is the process of creating the DIU in the first place. At our current level of understanding, the motivation to create a new DIU, or a new capability, lies in the hands of a human programmer and not within the domain of the digital device. As a human programmer, I can decide that in addition to recognising faces, we need to generate music for which we need an additional DIU. The process of building, or writing the code, for another DIU can be automated -- programs to write other programs are not impossible with current technology, for example, the Github CoPilot or GPT3 -- but someone must have the motivation to do so.
Current DIUs can be programmed to improve their performance with time. Face recognition programs or self-driving cars can be programmed to become better with use but we still do not have any logical mechanism through which a face recognition program suddenly decides to learn how to drive a car or vice versa. Coming back to our digital dog, its food recognition DIU can become better and better to differentiate good food from bad but it is extremely unlikely that it will acquire an additional DIU that makes it jump over the fence and search for better food outside the house.
Incidentally, a fence jumping DIU is not at all difficult to construct. With current technology it is a trivial exercise to build a robotic system that can jump over a fence. However, what is missing is the motivation to include this DIU in the current digital dog DIU and enhance its capabilities. We need a human programmer to identify this new need and add this additional DIU to the digital dog. Thus the challenge lies in creating a mechanism, a motivation, that will allow the digital dog DIU to do this on its own.
Let us see how a biological dog does this in the physical world.
The Community
A biological dog will jump the fence when it sees another biological dog jumping the fence. This ability to jump the fence, or the motivation to do so, is a behaviour, an ability ( or intelligence unit), that resides within the community and which is acquired by or triggered in a member by observing other members. Perhaps this is far more so in humans than in animals who are primarily hardwired. So the existence of a community is an important mechanism that allows an individual member to enlarge its DIU by acquiring the DIU available with some other member. In fact, in the story of human evolution, one of the reasons why humans have been so successful compared to other animals, is because they could form communities, share experiences and learn from each other. Henrich [6]
The first challenge is to devise a mechanism that motivates an individual member of the community to search for and get access to a DIU that is available with others. We refer to this as low level or primary motivation.
Computers that are connected in a network, say a TCP/IP based Ethernet network, can be viewed as a community that can share information with each other. However,they do not share information spontaneously. There needs to be a trigger activated by a human or an external stimulus that causes an exchange of information. Two computers, A and B may be connected by a network and one, say A, may have a DIU to recognise faces and the other, B, may have a DIU to drive cars. But there is no reason or likelihood for A to access the car-driving DIU on B or for B to access the face recognition DIU on A.
First, A would not be aware of the existence of the car-driving DIU on B and even if it were, there would be no reason, or motivation, to access it. To overcome this drawback and to create the mechanism for the primary motivation, we introduce the analogy of a computer virus.
Primary Motivation : The Virus and the DXP
A computer virus is a computer program, but we can view it as another DIU that is capable of performing at least two tasks. First, unlike other programs that sit patiently on their host platform waiting for a signal to do something, a virus program actively seeks out other devices in the network, or the ‘community’, and actively looks for exploitable exposure points. These exposure points could be TCP/IP ports through which messages could be sent or files and folders that can be written on. Second, it usually makes a copy of itself and places the copy in the second device.
Unlike the DIUs that we are interested in, a computer virus has malicious intentions but the principle under which they operate can be easily adopted by the DIUs. This leads to the idea of a DIU Exchange Protocol (DXP) that is built into the operating system of all digital devices, somewhat similar to the ubiquitous TCP/IP stack. The DXP stack on any host device, is designed to look into other, target devices connected on the network and if allowed to do so by the DXP stack on the target device, to scan it for the existence of new DIUs. This is the primary motivation built into the protocol stack. If a new DIU is found it will be copied back from the target to the host. Obviously, the process works in a symmetrical, peer-to-peer manner. Any machine with DXP can be a host and can pick up DIUs from any other target machine that is running the DXP protocol.
How do we know and recognise a DIU from the many other files, programs, images lying in the target? At the simplest level, a DIU can be identified by something like a file extension. For example, the http protocol recognises files with extensions like htm, html etc but will not interact with doc or ppt files. But given the complexity of a DIU, a simple file may not be sufficient. So we may create a DIU as a container -- a Docker container is a good analogy -- that contains code with APIs, models and perhaps data that may be exchanged across devices. Markers present in the container, for example a correctly formatted XML file, will allow the DXP protocol to recognise them as such and distinct from other artifacts lying in the machine.
The process can be made significantly simpler and more secure if instead of exchanging DIUs from each other in a peer-to-peer manner, DXP protocol on each device publishes its DIU, or saves it, to a central location like a DIU repository. This could be analogous to the Docker hub, CRAN the repository for R packages or even GitHub which has a lot of source code. A better mechanism could be to store the DIUs as smart contracts in an Ethereum, or similar, blockchain. There are two advantages for using a blockchain based approach. First, blockchain ‘full’ clients, that validate transactions and add blocks to the blockchain are designed to operate autonomously without any human intervention and as we show later, this is important in our scheme. Secondly, the DXP protocol that controls the process of adding a new block, with smart contracts, can be configured to include a validation process to ensure that only valid DIUs are added. The validation process will be explored in more detail later.
Once the repository is in place, then any member-device of the DIU user community can pull any DIU that is required or is of interest. The newly pulled DIU can then be assembled with other DIUs already present to create larger and more sophisticated DIU. This would not only mean that the device has evolved by acquiring a new ability but it has done so on the basis of its own primary motivation.
The DIU repository, and the primary motivation built into the DXP protocol, gives us a possible solution to the problem of how our digital dog enhances its ability by acquiring the ability, or DIU, to jump over the fence and find better food. This leads us to two more difficult questions, both of which are tied to the phenomenon of motivation. First, if it is not a human being, then who will create these DIUs and why? Second, why should an existing digital platform that already has a set of DIUs pull one more and add it to the DIUs that it already has.
We shall park the first question for the time being and focus on the second. Which DIU should a platform pull and why? What is the motivation for a device to pull a specific DIU? The basic or primary motivation, namely to scan the DIU hub and pull DIUs at periodic intervals, is baked into the design of the DXP protocol. But the choice of which DIU to pull depends on two factors, namely compatibility and utility.
DIU Compatibility
For a DIU to work, it needs certain prerequisites. A DIU to drive a car needs access to a car, that is a device with engine, wheels, radars and many other things. A dog does not have wings and cannot fly in the air but it has legs that allow it to jump. So it learns how to jump and not how to fly. Similarly every digital device cannot pull any DIU. Its choice is restricted to a set of DIUs that it is in a position to operate, or for which it already has the prerequisite DIUs.
Prerequisites are usually chained backward. Let us consider that a device attempts to install a face-recognition DIU.
A face recognition DIU needs
A DIU that already has the ability to access a network camera
OR
A DIU that can obtain a camera for the device, that in turn needs
A DIU that can execute an eCommerce transaction to purchase a camera and that in turn needs
A DIU that can earn money with say crypto mining or performing Amazon Mechanical Turk type assignments
AND
A DIU that can physically plug a camera, that in turn needs
DIU that can operate a robotic arm, etc., that in turn needs
{ another hierarchy of DIUs}
What if every device were to adopt this chain strategy? That would lead to a situation where every device can do everything which may not be physically possible or even desirable. Can a dog acquire the ability to fly? It may be possible after many many generations -- as the evolution of species has shown -- but obviously the physical dog body will die but its genomes will get progressively altered over generations until it can fly. Similarly the physical platform on which the digital device works may collapse but the software can get transferred from device to device and keep acquiring DIUs until it can do whatever it wants to do. This will take a long time and a lot of resources.
Instead, let us focus on how a device will pull a certain DIU that it wants to. But what is it that the device ‘wants-to-do’? This is a part of a larger question that will be addressed as the next level of motivation, or secondary motivation. Our current focus is on the question of “Which DIU should a platform pull?” and we said that the answer depends on compatibility and utility. We have addressed the issue of compatibility with primary motivation and we now look at utility and the secondary motivation.
Secondary Motivation : DIU Utility
A DIU will be selected for a pull and implementation, if it provides some value to the device. A biological dog will learn how to jump because it gives it better food and so improves its ability to survive. It will not try to learn how to walk on two legs even if it sees another dog walking on two legs because walking on two legs does not increase its survivability. In the case of biological species, the utility of a particular ability is related to survival and this survival operates at different levels - survival of the individual body, survival of the species or the genome. There is also the possibility or the question of the survival of specific genes in the genome, if we agree to accept Dawkins’ principle of The Selfish Gene.
Mapping this issue of biological survival to the world of digital devices is the next challenge and in a sense it loops back to the first issue that we identified already, namely motivation. We have already addressed this at one level of primary motivation that partially explains which DIU is to be pulled based on the ability to search for and pull DIUs on the basis of feasibility and compatibility. Now we need a next, or higher level of secondary motivation. Why should a digital platform seek any specific DIU to enlarge its set of DIUs?
In the biological world the only motivation behind the process of acquiring intelligence ( or ability to perform certain tasks) is survival. Humans in a certain limited way are governed by Maslow’s hierarchy of needs. When it comes to digital devices, we need to determine whether they should be guided, like lower animals, by the need to survive? Or should they be guided by something similar to the human hierarchy of needs? We know that in the case of computer viruses, the motivation is simply to spread to other machines, which is like a survival strategy. For a higher level digital device, that is one with a complex DIU, the motivation could be something else.
So instead of trying to discover what could be the motivation, we can as humans build our own definition of secondary motivation directly into the algorithm of the DPX protocol. Most optimization problems begin with a motivation, which is generally captured by means of an objective function that we try to minimise or maximise depending on the problem, but there could be others. The Open Shortest Path First is an algorithm that is baked into the heart of the Internet Protocol (IP) and determines the route to be taken by a data packet. Public Key Cryptography is an algorithm that is present in the HTTPS protocol and ensures data security. Proof of Work is an algorithm that is built into many cryptocurrency protocols to determine which block will be allowed to enter the blockchain.
Similarly we need a motivation algorithm, the secondary motivation, that is baked into the DPX protocol that determines which DIU is of interest to the device or is useful. The design of this algorithm could be based on certain principles that human society holds dear, like the three principles of Utilitarianism that can be summed up as the “the greatest good for the greatest number.” We could also draw upon certain ideas drawn from popular culture like the Three Laws of Robotics created by Isaac Asimov. Obviously other competing approaches can be explored as well. All that we are saying now is that a motivation function, whatever it may be, needs to be built into the DPX algorithm and this will guide the choice of DIUs that will be allowed to be added to the repository or pulled from it by individual platforms.
With the algorithm of the secondary motivation that decides on which DIU to acquire, in place, we now have another question that we had parked earlier. If it is not a human being, who will create this pool of DIUs and why? This leads us to a tertiary motivation that operates at the community level.
Tertiary Motivation : Community Participation
Mutations that drive biological evolution occur at random. The ones that survive and are passed down through generations survive purely because they make the individuals “fitter” in their respective environments. Thus, evolution works in a brute-force manner, randomly trying out different permutations, and keeping only those mutations that survive the test of natural selection. Similarly, it can be possible to devise mechanisms that will generate newer and newer DIUs and then test them against the principles of secondary motivation. Here we will draw upon three analogies from the world of mathematics and computers and use them to define another level of motivation that can motivate the community as a whole to come up with more and more DIUs.
First let us consider the Ramanujan Machine that was created by Raayoni, et.al [7] to automatically generate new mathematical conjectures using an algorithmic approach. Ramanujan was an Indian mathematician who came up with many unproven conjectures, most of which were validated long after his death. However these conjectures opened up new vistas in number theory that are still being exploited today. The Ramanujan machine is a network of computers running algorithms dedicated to finding conjectures about fundamental constants in the form of continued fractions. The purpose of the machine is to come up with conjectures (in the form of mathematical formulas) that humans can analyze, and hopefully prove to be true mathematically.
The Ramanujan machine currently generates conjectures from a rather narrow domain of number theory and uses two algorithms, namely MITM and gradient descent. But we can envisage other algorithms that may generate tasks or objectives that are in line with the contours of the secondary motivation algorithm. Then the code for these tasks can be created by a product or process similar to the Open AI’s GPT-3. This combination of a secondary motivation task generator and a code creator can then be viewed as a DIU engine that can run autonomously and generate any number of novel DIUs.
The second key piece of our strategy would be a blockchain based decentralised autonomous organisation( DAO) . This is a self-sustaining distributed mechanism that creates economic value by encouraging individual machines to validate transactions -- in this case DIUs created by the DIU machine -- and rewards successful ones with cryptocurrency tokens. For a DIU to be valid it must meet the conditions of DPX protocol in terms of interoperability and the principles of secondary motivation. Only then it will be accepted as a part of the DIU blockchain and this blockchain will become the DIU hub or repository that we had discussed earlier.
Unlike the Bitcoin or current Ethereum blockchain that is based on an energy intensive Proof of Work protocol, this DIU Blockchain could be based on the principles of Proof of Stake or other energy efficient protocols.
This combination of a DIU generator and blockchain based DIU validator is remarkably similar in principle to the combination of generator-discriminator that is the basis of a class of artificial neural networks called generative adversarial network [GAN] first proposed by Goodfellow A GAN, which is the third piece of our proposed tertiary motivation mechanism, is typically used to generate original artifacts that are nearly indistinguishable from similar artifacts that are found in natural populations. The most common example of this is human faces. Given a training set of human faces, a GAN can generate synthetic images of faces that are not found in the training set, but cannot be distinguished from naturally occurring images. In this case, the training set of DIUs could be the thousands of currently extant DIUs of AI systems that have been developed by humans. In fact, the blockchain could also be seeded by humans as in the first few thousand blocks could contain DIUs built from existing AI systems. However, going forward, the combination of the DIU engine and the blockchain validation process will create a GAN-like mechanism that will create a potentially endless series of DIU.
This mechanism will provide the tertiary motivation to fuel an evolving ecosystem of digital devices with more complex and useful DIUs. As a by-product, the crypto-tokens generated on this DIU Blockchain could be used by digital devices to pay for DIUs that they pull from the DIU hub.
July 17, 2021
LifeSciences in the Cloud
Do you wish to carry out complex life science experiments but do not have the equipment to do so? Or even otherwise, if you want to catch a preview of the next big thing in technology, you should know about cloud based Life Science. But what is the "Cloud" that we are talking about?
Unless you have been living under a rock for the past ten years, it is very unlikely that you have not heard of Cloud Computing. Originally popularised by Amazon AWS and then picked up by Google Compute, Microsoft Azure and host of other companies, cloud computing is a business that allows individuals and organisations to do away with owning computing hardware. Instead they use computers located at vendor premises and pay only for the time that they use it.
In fact, individuals who use GMail, Hotmail, Google Docs, Google Sheets or even the new Office 365 are actually using a cloud service. All that they have on their laptop or phone is a web browser - Chrome, Mozilla, Edge etc., while their documents are being stored and processed at a distant computer located on the cloud vendor premises to which they are connected over the internet. At a corporate level, companies are doing away with large computers - running business applications like SAP or hosting relational databases - on their premises and using computers located at cloud vendor premises. Here company employees use a browser or a specialised client software to connect to computers at vendor premises. In the case of a public cloud, this connection is over the public internet but in case there are security issues, some companies prefer a private cloud where the connection is made over secure, private networks provided by telecom operators. Virtual Private Networks (VPNs) over public internet is also a valid mechanism for accessing private clouds.
Irrespective of whether the user is an individual or a corporation, or whether they are using a public or a private cloud, the key principle of cloud computing is that the hardware is owned, operated and located at vendor premises and the user pays to, well, just use it. Depending on the nature of the contract between the user and vendor, the price of the service, when not free, is based either on the kind of hardware and software that is used or the number of transactions processed. The key value proposition that cloud computing brings to the table is that the user can 'order' a machine, use it just for as long as they need to and then dispose it of very easily without having to bear the capital cost or the cost of technicians who manage it. This business model, known as Infrastructure-as-a-Service, has become the most popular way of doing business in the corporate world, except of course for highly secretive operations and those that involve national security.
Frankly, cloud computing is old news. Perhaps little more interesting than automobile manufacturing, petroleum refining in terms of novelty. What is really novel and interesting is when we transfer the concept of the cloud from the world of computing to that of laboratory based life sciences.
Life sciences is the sizzling new field that is changing the world today. Many corporates are investing in projects for drug discovery, genetic engineering and myriads of other projects based on the bio and life sciences. But all such research needs huge, complex laboratories with very expensive instruments. While big pharma and life science companies with deep pockets can fund the huge capital expenditure required to set up these labs, smaller companies and universities are at a deep disadvantage here. Research is not possible without these labs and such labs are not possible without huge capital expenditure.
This is where the cloud steps in.
Emerald Cloud Lab and Strateos are two of a new breed of cloud companies (like the Amazon of old) who have invested in huge, state-of-the-art laboratories and 'rent' out the same to anyone who subscribes to their service, for a fee in a manner that is analogous to traditional cloud computing.
How does it work?
The cloud provider has a stack of virtually all kinds of high end equipment and a stock of inorganic and organic consumable materials -- chemicals etc., that are usually found in any such laboratory. Whatever consumables are not in stock can of course be ordered and obtained through standard eCommerce channels.
Scientists who subscribe to this cloud lab can set up experiments on their laptop using client software. This is very similar to writing software programs : for example, add 5 gm of A to 3 ml of B and stir for 10 mins. Then heat for 30 mins, then add 2 mg of C and separate the precipitate from the fluid. Measure the weight of the precipitate and then add 3 ml of D and measure the quantity of gas produced [... and so on.] Once this experiment is ready, that is the program has been written, it is uploaded into the cloud lab and then the machines take over. Most of the lab machines are highly automated or are connected by arms, actuators, conveyor belts, sensors and other modern robotic devices that are found in any automated factory today. The experiment is carried out, the results are noted, stored and sent back to the scientist who devised the experiment and requested that it be executed. And of course there is a bill for the use of the consumable chemicals and for the use of the specific machine that is debited from the account of the organisation that has signed up for this service.
Readers who have a more intimate knowledge of the work done in life science labs would understand that a platform like this is particularly helpful for performing high throughput experiments. Researchers can design compound libraries, prepare samples and assay plates, perform measurements, acquire and process experimental data, all with the click of a cursor. They can then run multiple seamless workflows in parallel and in fact can even troubleshoot their experiments remotely!
The brilliance of this model is no different from the brilliance of the traditional cloud computing model -- end users do not have to incur any capital expenditure or have an army of technicians to manage the equipment and carry out experiments. Watch this video.
There are two ways in which this fascinating technology can be used in the academic and corporate world.
- First, small companies and universities that cannot afford the capital expenditure for complex equipment can easily sign on for such services and start using equipment that they never had access to in the past.
- But even large pharma and life science companies, who can afford such equipment can centralise their labs at one location and use a private cloud to allow its employees who can be located in any part of the world to use the same. The pandemic has made work-from-home acceptable to many corporates and using cloud labs will allow even scientists, who traditionally need to work in labs, the opportunity to work from home and allow corporates to seek out the best talent from any part of the world.
How I hope that some Indian corporates -- who are notorious for never taking the lead with any new idea or technology -- will understand the immense potential of this new process. For a change, let India lead and not follow the herd.
A more detailed post that claims that Cloud Labs will be the norm is available here.
July 10, 2021
Ramanujan, Gödel and Hindu Darshan
I recently saw two movies on Indian mathematicians, the first on Shakuntala Devi and the second -- The Man Who Knew Infinity -- on Srinivas Ramanujan. Obviously both these mathematicians are very well known in India and to a certain extent, or in certain circles, in the world as well. Both Shakuntala Devi and Ramanujan seemed to have magical or supernatural abilities to see or visualize solutions to mathematical problems. Of course, Ramanujan was several orders of magnitude higher than Shakuntala. His work on Number Theory, -- the Queen of Mathematics ( where Mathematics is the Queen of the Sciences) -- was vastly more significant or exciting compared to the mere complexity of arithmetic computations that Shakuntala could demonstrate. But then, if Shakuntala had not been deprived of her childhood and childhood schooling by her avaricious father, who made Shakuntala earn money for the family, she might have had the opportunity to demonstrate more significant abilities.
But we are not here to compare Shakuntala or Ramanujan. I see them as the Rishis, or savants, of ancient India who could visualize the truth. That is why in India, we use the word darshan when we talk about subjects that Europeans refer to as philosophy. Literally, darshan means vision or sight. Metaphorically, it means insight born out of intuition. India's rishis or savants could see the truth, or as it is said, they could hear it directly from its source. Which is why the Veds are referred to as shruti, or that which has been directly heard, as opposed to the subsequent literature smriti, or literature that is remembered from an earlier era.
The ability to see the truth in darshan or to hear the same as a shruti is a fundamental feature of the Indic spiritual ethos and is the basis of all intellectual enquiry in Hindu India. Hindu savants who could see or hear great philosophical and scientific truths were treated with reverence and viewed with respect if not awe. In contrast, the European worldview is based, among other things, on the method of proofs that were codified by Euclid of Alexandria and known to the common man as Euclidean geometry. But Euclid is more than just geometry. Unlike Vedic mathematics which is more of a collection of mathematical aphorisms, Euclidean mathematics starts from a foundation of self-evident axioms and then builds a self supporting superstructure of theorems that are connected with beams of irrefutable logic. The strength and beauty of this approach is that even though Euclid applied it to geometry, it has been adopted by the European academic establishment not just in the pristine precincts of Mathematics but even in the more rough and tumble world of the physical, biological and now even in the social sciences. Net-net the proofs provide the necessary rigour that, in the European mind, separates the grain of truth from the chaff of anecdotes and hearsay.
This is where savants like Ramanujan ( and Shakuntala) collide with the modern -- largely European and American -- world of mathematics. Ramanujan never, or rarely, had a proof for his conjectures. He claimed that his family goddess Namgiri, a local avatar of the Divine Feminine Mahalakshmi, would tell him the equations and they could not but be true because they had been revealed by the Devi herself. To his dying day, and he died very young at the age of 32 after battling tuberculosis that he had developed in the cold weather of England, Ramanujan claimed, that to him, an equation had no value unless it expressed a thought of God.
This was of course heresy to mathematicians like Hardy and Littlewood who had a great fondness for Ramanujan and had arranged for him to join them at Cambridge. For Hardy and his tribe, a statement without a proof was a mere conjecture, an intellectual oddity, but not something that could be accepted as an intellectual achievement. After a lot of persuasion, that included quite a few unfortunately harsh words, Hardy could compel Ramanujan to develop proofs of some of his numerous conjectures. Fortunately, this was enough, first for the Royal Society and then Cambridge University to accept him as Fellow. Ramanujan was the second Indian to be elected as Fellow of the Royal Society.
Ramanujan died in 1920, and you will have to see the movie to know how and why he died so young, but had he lived for another ten years he would have heard Kurt Gödel presenting an usual paper in Vienna where he claimed that mathematics ( or rather arithmetic, the most primordial part of mathematics) in incomplete. Gödel Theorem of Incompleteness showed that if a formal, logical system is consistent, then it cannot be complete. This means that there will be statements that are true but not provable by logically connecting them to established theorems. Moreover the consistency of axioms cannot be proved within the system. A simple analogy would be to consider the following sentence : "This statement is false." If you think about it, there is no way to determine the whether the statement is true or false!
Gödel used mathematics itself to drive a stake through the heart of mathematics. He used the letter of a false doctrine to kill its own spirit. This was so humiliating for the world of mathematicians, that a mathematician of the stature of John Von Neumann, one of the first to hear Gödel's presentation in person -- and understand it! -- gave up a career in pure mathematics because he realized that it was pointless. He subsequently moved to applied mathematics and did wonderful work with computers but never again did he touch pure mathematics and Number Theory.
Ramanujan was of course deeply immersed in Number Theory and his numerous conjectures -- statement that are true but not yet proven -- were precisely the kind of statements whose existence was established by Gödel in his Theorems of Incompleteness. Pushed by Hardy, Ramanujan did publish 28 peer-reviewed papers in the last six years of his short life but he has left behind more than 3500 conjectures that are available in his notebooks that were subsequently published or printed by Springer Verlag many years later. These notebooks are the frantic efforts of a man to capture and preserve for posterity the thoughts of "God "that he could see as beautiful equations. These beautiful equations are possibly no less profound than the shloks of the RigVed but only to one who has the ability to understand or rather appreciate them. It is a different matter of course, that Bruce Berndt, Professor of Mathematics at the University of Illinois at Urbana Champaign, eventually proved almost all these 3500 odd conjectures or theorems that Ramanujan left in his notebooks. See this interview and this paper.
Gödel's Theorem establishes that there are statements that are true but not provable and so provability is a weaker notion than truth. Absence of a proof does not weaken the value of a true statement. In a sense the Incompleteness Theorem puts a closure, a boundary, to Ramanujan's premise that a proof is not really important in the search of the truth. If it is there, then that is nice. If not, so be it. There is no reason to disbelieve or devalue what has been revealed just because there is no proof.
It may of course be argued that Gödel's Theorem is applicable only in the domain of mathematics and that too within the narrow confines of arithmetic. Extrapolating it into the domain of mysticism and religion is incorrect. In a strict sense, that may be true, but nevertheless it opens up a crack in the otherwise impenetrable wall of hard logic that keeps mysticism away from 'scientific' or rational enquiry. But this crack gives an indication, a hint, that logic and rationality are not as sacrosanct as they are made out to be. Even if a field as structured and as logically tractable as arithmetic cannot be accommodated and captured with the tools of logic then it is even more unlikely that a subject as complex and nuanced as religion can ever be understood or explained in logical and rational terms. There is nothing to be apologetic about accepting the limits of logic and rationality.
Ramanujan's genius is beyond doubt. Had he simply proved these theorems he would have been just another great mathematician. What is far more interesting however is his ( and Shakuntala Devi's ) ability to transcend the process of proving truths -- like mere mortals -- and jump straight through to the eventual truth of a statement. Not only does this provide a practical demonstration of Gödel's Theorem of Incompleteness but is an endorsement, a contemporary reaffirmation, of the process through which Hindu savants had a darshan or vision of the Truth. The shruti literature of the Veds and the Upanishads encode Truths that were directly envisioned by Hindu savants and that is why we hold so dear today.
I end by quoting Rabindranath Tagore
সীমার মাঝে, অসীম, তুমি বাজাও আপন সুর। আমার মধ্যে তোমার প্রকাশ তাই এত মধুর॥
that can be loosely translated as - "It is so very pleasing to experience the epiphany of the infinite when it manifests itself within the finite domain of my own limited psyche."
P.S. I have been told that even though all this sounds kind of plausible, true scientists will never be convinced to accept the core idea of this post. Frankly, I am not here to convince anyone. I am here to state my point of view that others may or may not agree with.
May 06, 2021
The full moon of April 26
With regard to a close relationship, you may encounter turbulence. The full moon of April 26 might be difficult for you because unpredictable Uranus will be conjunct the Sun, making things quite unstable, and this would directly affect your living quarters. At the same time, Uranus will directly oppose the full moon in your house of marriage and committed partnerships. This full moon could involve your steady, live-in sweetheart, your spouse, or someone you collaborate with closely to do your job. A sudden tearing away from the status quo is likely to result.
Your landlord may tell you the rent will go up (too high in your opinion) or that the building you live in has been sold, and you will need to move soon. This unexpected news may rattle you, but as you think of it, it may be for the best—you need more room.
It’s possible you are breaking up with your romantic partner, and in that case, you would be moving out. It appears the onus of finding a new place to live will fall to you, not your partner. The part that makes this full moon difficult is the sudden nature of the news that comes to you out of the blue.
Your ruling planet—Venus, the one that has the job of taking good care of you—will be orbiting close to Uranus too, making you feel that without warning, life has turned inside out. You might be uprooted from your living quarters, but if it’s been too small, too dark, or too expensive, you may be glad to leave.
This is an extract from Susan Miller's predictions for Taurus. My mother was a Taurus ( Sun Sign) and she passed away on the night of 27-28th April