আমি আনাম আহমেদ, Lets Learn Coding এর সহ প্রতিষ্ঠাতা
আমি যেভাবে কাজ করি

Shares

নাম এবং পেশা

আনাম আহমেদ, কোডিং শেখানোর অলাভজনক প্রতিষ্ঠান Lets Learn Coding এর সহ প্রতিষ্ঠাতা, এবং কোডমেট লিমিটেড এ সফটওয়্যার প্রকৌশলী।

“Lets Learn Coding” কি এবং কেন?

আমাদের অলাভজনক কোডিং শিখানোর প্রতিষ্ঠান Lets Learn Coding, আমরা আমাদের সাধ্যমত চেষ্টা করি মানুষকে কোড করতে শেখাতে। প্রায় প্রতিমাসেই আমাদের অন্তত একটা করে পাবলিক ইভেন্ট থাকে যেখানে আমরা কোন একটা প্রোগ্রামিং ল্যাঙ্গুয়েজ অথবা প্রযুক্তি নিয়ে আলোচনা করি। এছাড়াও মাঝে মাঝে আমরা ফ্রি কোডিং ওয়ার্কশপের আয়োজন করি। গত বছর শুরু করা এই উদ্যেগের শুরুতে আমরা চারজন (সুমন সেলিম, আমি, ফিরোজ, আসিফ খান) ছিলাম, এক বছর পর, আমাদের ইভেন্ট সংখ্যা ১৫, প্রায় ৩০০০ মানুষ ইভেন্টে যোগ দিয়েছে, আর এখন টীম মেম্বার  ১৪ জন।

llc team 2

আপনি ১০ বছর ধরে পেশাদার সফ্টওয়্যার ডেভেলপার, কোন প্রোগ্রামিংল্যাঙ্গুয়েজে আপনি কোড করতে ভালবাসেন ও কেন ?

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

ডেভেলপমেন্টের জন্য কোন IDE টি আপনার কাছে সেরা মনে হয় ?

কাজের জন্য অনেক আইডিইতেই কাজ করতে হয়েছে, সময় আর ল্যাঙ্গুয়েজ পাল্টানের সাথে সাথে প্রিয় আইডিই পাল্টেছে, যখন শুরু করেছিলাম, তখন প্রিয় ছিলে Visual Studio, তার পর NetBeans, কিছুদিন আগে ভালে লাগত Sublime Text,  এখন ভাল লাগে Jetbrains WebStorm, তবে Adobe Brackets আর Github Atom ও অনেক ভাল লাগে, অফিসে এই দুইটা বেশী ব্যবহার করি।

ডেভেলপমেন্টের জন্য কোন অপারেটিং সিস্টেম(ওএস) আপনি ভাল মনে করেন ?

আমি নিজে ডেভেলপমেন্টের জন্য Mac OSX আর Ubuntu ব্যবহার করি। ওয়েব ডেভেলপমেন্টের জন্য ম্যাক অথবা লিনাক্সের জুরি নেই। গত আট বছর ধরে বেশীভাগ সময়ই লিনাক্সেই ডেভেলপমেন্ট করেছি। আর সাথে গত এক বছর থেকে যুক্ত হয়েছে ম্যাক তবে ডেভেলপমেন্টের জন্য কেন অপারেটিং সিস্টেম ভাল এটা কিছুটা নির্ভর করে কি ডেভেলপ করতে হবে সেটার উপর। আবার ডেভেলপারের অভ্যস্ততা আর শেখার আগ্রহের উপর অনেকাংশে নির্ভর করে। তবে আমার কাছে কেও জিগ্গেস করলে সব সময়ই আমি লিনাক্সে ডেভেলপমেন্ট করতে বলি, প্রথম প্রথম কারো কারো বুঝতে সমস্যা হলেও, একবার অভ্যস্ত হয়ে গেলে লিনাক্স/ম্যাক ছাড়া অন্যকিছু ভালে লাগার কথা না।

সফটওয়্যার ডেভেলপমেন্টের জন্য কোন সাইট বা ব্লগগুলো আপনি নিয়মিত ভিজিট করেন ?

প্রথম নামটা সবাই জানেন, StackOverflow, তবে আমি সমস্যায় না পড়লেও StackOverflow তে নিয়মিত যাই, চেষ্টা করি অন্যদের সমস্যার সমাধান দেয়ার। না পারলে অন্যদের দেয়া সমাধান গুলো দেখি। নতুন অনেক কিছু শেখা যায়। এছাড়াও Codrops, Smashing Magazine, TutsPlus, Toptal Blog, হাসিন ভাইয়ার certainly.rocks সিরিজ রেগুলার চেক করি। প্রতিদিন একবার করে awwwards এ যাই সাইট অফ দা ডে এর ডিজাইন দেখার জন্য।

এমন কোনো প্রোজেক্ট বা প্রোডাক্ট আছে কি যেটি নিয়ে আপনি গর্ব বোধ করেন ?

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

আপনার সম্প্রতি অবদান রাখা কোন প্রিয় ওপেন সোর্স প্রজেক্ট (বা প্রকল্প) আছে?

বড় কোন প্রজেক্টে অবদান রাখার সময় অথবা সুযোগ হয়নি এখনও, আমার কিছু ছোট ছোট ওপেন সোর্স প্রজেক্ট আছে গিটহাবে, http://github.com/theanam

আপনার প্রতিদিনের কাজ করার জন্য কোন ডিভাইসটি বেশি ব্যবহার করে থাকেন এবং কেন ?

সবচেয়ে বেশী যে ডিভাইসটা হাতের কাছে থাকে সেটা আমার ফোন,  Sony Xperia Z2, মুলত সামাজিক যোগাযোগ, চট করে কিছু নেট ঘাটা, সার্চ করা আর বড় স্ক্রিন হওয়ায় আমার বই পড়ারও সঙ্গী হয়ে যায় আমার ফোন। এটাই দিনে সবচেয়ে বেশী ব্যবহার করি। phone

তিনটি অ্যাপ্লিকেশন,সফটওয়্যার বা টুলস যেগুলো ব্যতিত আপনি একেবারেই  চলতে পারেন না ?

  1. নেট করার জন্য Google Keep
  2. সব ধরনের কাজ করার জন্য Terminal
  3. আর ভার্শন কন্ট্রোলের জন্য Git

আপনার কাজের যায়গাটি কেমন ?

আমার কাজের যায়গা তিনটা, বাসায় একটা রুম আছে যেখানে কম্পিউটার আর গ্যজেট ছাড়া কিছুই নাই, এখানে আমার কাস্টম বিল্ট ডেস্কটপ কম্পিউটার আছে, খুবই সাধারন কনফিগারেশনের কম্পিউটার, লিনাক্স চলে, আর সাথে দুইটা মনিটর আছে, একটা ২২ ইঞ্চি, অন্যটা ১৯। এই ডেস্কের পাশের জানালা দিয়ে এয়ারপোর্ট থেকে প্লেনের উঠানামা দেখা যায়। আমার খুব ভাল লাগে দেখতে। সুর্যাস্তও দেখা যায় প্রায় পুরোটুকুই। বেডরুমে একটা পোর্টেবল টেবিল আছে, বিছানার পাশে নিয়ে বিছানায় বসে কাজ করা যায়। যেদিন প্লান থাকে কাজ করতে করতে ঘুমায় যাবো, আবার ঘুম থেকে উঠে কাজ করব, সেদিন এখানে বসি, আমার Macbook Air Early 2015  নিয়ে অথবা 2010 HP Probook নিয়ে। তবে ইদানিং এখানেই বেশী বসা হচ্ছে। বাসার বাইরে অফিস ছাড়া একটা কাজের যায়গা আছে, শাহজাদপুর, বাড্ডার একটা কফি হাউস, North End Coffee Roasters, এখানে মাঝে মাঝে চলে যাই বসে বসে কাজ করার জন্য। new_one

কাজ করার সময় আপনি কোন ধরনের গান বা কবিতা শুনতে পছন্দ করেন ?

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

আপনার সময় বাঁচানোর সেরা শর্টকাট বা লাইফহ্যাক কি?

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

প্রতিদিনের টু-ডু লিস্ট করার জন্য কোন সফটওয়্যার/পন্থা টি আপনার কাছে সেরা মনে হয় ?

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

একজন বাংলাদেশি হিসেবে যানজট আমাদের নিত্য দিনের সঙ্গী। আপনি যখন যানজটে অলস বসে থাকেন তখন কি করেন ?

গান শুনি, ফোনে চার্জ থাকলে বই পড়ি।

আপনার ফোন এবং কম্পিউটার ছাড়াও, কোন গ্যাজেট ছাড়া আপনি চলতে পারবেন না এবং কেন?

ঠিক গ্যাজেটের ক্যটাগরীতে না পড়লেও, ফোন আর কম্পিউটার ছাড়া আমার মানিব্যাগ ছাড়া চলতে সমস্যা হবে, মানিব্যাগের বিভিন্ন পকেটে ছোট ছোট টুল আর গ্যাজেট আছে। আমার কাছে এটা কিছুটা ব্যাটম্যনের বেল্টের মত।

আপনি কোন সময়টাতে কাজ করতে সবচেয়ে বেশি পছন্দ করেন ?

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

আপনার দৈনিক ঘুমানোর সময়সূচি কেমন ?

কয়েক মাস আগেও গড়ে দুই দিনে একবার ঘুমাতাম, এখন অবশ্য প্রতিদিন রাত ১২ টার মধ্যে ঘুমিয়ে সকাল ৮ টার মধ্যে উঠে পড়ার অভ্যাস করছি।

কোন কাজটিতে আপনি সবার থেকে একটু আলাদা, একটু ভালো –

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

গুণীজনদের কাছ থেকে পাওয়া এখন পর্যন্ত সেরা উপদেশ আপনার কাছে কোনটি মনে হয়েছে ?

আমার সামনাসামনি দেখা সবচেয়ে জ্ঞানী দুইজন মানুষ আব্বু আর আম্মু,  ছোটবেলায় অংক করার সময় আব্বু একটা কথা সবসময়ই বলত,

ভুল হলেও চেষ্টা করো, ভুল না করলে ঠিকটা শিখতে পারবে না

একজন সফটওয়্যার ইঞ্জিনিয়ার কে কোন বইগুলো এবং সিনেমাগুলো অবশ্যই পড়া ও দেখা উচিৎ ?

প্রতিদিনই এই লিস্টে নতুন বই যোগ হয়, তবে যে কয়টা বই আমার কাছে খুবই ভাল লেগেছে সেগুলো হচ্ছে:

  1. Algorithm by Cormen (বড় আর বোরিং বই, তবে এলগরিদম এর উপর সবচেয়ে ভাল বই)
  2. Eloquent JavaScript জাভাস্ক্রিপটের উপর লেখা খুব চমতকার একটা বই
  3. সুবিন ভাইয়ের কম্পিউটার প্রোগ্রামিং বই

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

যেকোনো জটিল পরিস্থিতিতে নিজের কাজ করার মানসিকতা ঠিক রাখার জন্য আপনি কি করেন ?

ধৈর্য রাখার চেষ্টা করি, নিজেকে বুঝাই পরিস্থিতি সবসময় এমনটা থাকবে না। আর শান্ত থাকার জন্য পেট ভরে খাই।

আপনি নিজেকে এখন থেকে পরবর্তী ৫ বছরের মধ্যে কোথায় দেখতে চান ?

আগামী পাচ বছর পরে নিজের অলসতা অন্তত ৫০% কমাতে চাই, অস্থিরতা কমিয়ে ধৈর্য বাড়াতে চাই। Lets Learn Coding কে আগামী পাচ বছরে অনেক বড় করতে চাই।

digital workld
digital world 1

যারা ভবিষ্যতের সফটওয়্যার ইঞ্জিনিয়ার হতে যাচ্ছে তাদেরকে আরও উৎসাহিত করতে আপনার কোন উপদেশ আছে কি?

লালন বলেছেন, “সময় গেলে সাধন হবেনা”, লালন সাহেব সফটওয়্যার ইঞ্জিনিয়ার না হলেও কথা ভুল বলেননি।

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

শূন্যস্থান পুরন করুন, আমি এই একই প্রশ্নের উত্তর গুলো এর কাছ থেকে শুনতে পছন্দ করব।

Rifat Nabi (Hacker, Backpack) masnun-rifat-nobi

আপনার সম্পর্কে আপনার কাছের কিছু মানুষের মতামত।

আনামের যে গুণটি সবচেয়ে বেশী ভাল লাগে, তা হল ওর ধৈর্য আর চিন্তা করার ক্ষমতা। কোন জিনিস ওর মাথায় একবার ঢুকে গেলে ও এর শেষ দেখেই ছাড়ে! এই যে কোন কিছুতে লেগে থাকার ইচ্ছাশক্তি – আমি মনে করি প্রতিটি কোডার এর এই গুণটি থাকা উচিত। আমার আর আনামের চিন্তাধারা অনেকটাই মিলে যায় আর তাই একসাথেও কাজ করছি অনেক দিন ধরে। ইচ্ছা আছে Lets Learn Coding নিয়ে বড় কিছু করার —– Muhammad Sumon Molla Selim

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

Shares