মূল বিষয়ে

scrambled egg

originally published on 17-09-2018

bliss

originally published on 27-04-2018

thoughts

originally published on 27-10-2017

vim fingers

originally published on 27-10-2017

javascript iceberg

originally published on 21-04-2016

ভিম এলো কোথা থেকে

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

তবে ভিম একটা রহস্যও বটে। সিংহভাগ চেনাজানা সফটওয়্যার প্রকল্পগুলির উৎস সহজেই জানা যায়, কিন্তু ভিম কোথা থেকে কার মাধ্যমে আসছে তা বের করা তেমন সোজা না। এত জনপ্রিয়তা আর গুরুত্ব সত্ত্বেও ভিমের বিষয়ে সিদ্ধান্ত নেয়ার জন্য কোন নির্দিষ্ট কমিটি বা প্রতিষ্ঠান চোখে পড়ে না। ভিমের ওয়েবসাইটে গিয়ে কয়েক মিনিট ধরে ঘোরাঘুরি করেও হয়ত কে একে বানালো কেন বানালো এইসবের উত্তর পাবেন না। কোনো আর্গুমেন্ট ছাড়া ওপেন করলে ভিমের স্টার্টআপ স্ক্রিনে লেখা আসে, এটা নাকি “Bram Moolenaar et al.”-দের লিখিত। কিন্তু ব্রাম মুলেনার টা কে? আর ওই রহস্যঘেরা “et al.”-ই বা কারা?

এত প্রশ্নই যখন করছি, আরও জরুরি প্রশ্ন হতে পারে, ভিম থেকে বের হতে হলে কেন :wq টাইপ করতে হয়? হ্যাঁ, জানা থাকলে বোঝা যায়, এটা আসলে “write” এর পর “quit”, কিন্তু এটা কয়জন শুরুতেই বুঝতে পারে? কে ঠিক করলো যে ভিমে টেক্সট কপি করাকে “ইয়াঙ্ক করা” বলতে হবে? টেক্সট খুঁজে বের করে প্রতিস্থাপনের জন্য কেন :%s/foo/bar/gc এরকম ম্যাজিক লিখতে হবে? ভিমের অদ্ভুতুড়ে বৈশিষ্ট্যগুলো এতই অস্বাভাবিক, যে কোনো কারণ ছাড়াই এগুলো ঠিক করা হয়েছে বলে মনে হয় না। কিন্তু এই ধারণাগুলো ত্থেকে আসলো?

(বিস্তারিত…)

টিমাক্সের মক‍্শো: ২

This entry is part 2 of 2 in the series টিমাক্সের মক‍্শো

টিমাক্সের কিছু কনফিগারেশনের কথা বলেছিলাম প্রথম পর্বে। সেগুলো লিখে ফেলে এই অধ্যায় শেষ করে ফেলি।

(বিস্তারিত…)

টিমাক্সের মক‍্শো: ১

This entry is part 1 of 2 in the series টিমাক্সের মক‍্শো

সূচনা

লিনাক্স কিছুদিন ভালমত চালালেই বুঝে ফেলা যায় যে, ঝকমকে গ্রাফিক্সঅলা কোন হাইফাই ডেস্কটপ নয়, সাদামাটা টার্মিনালটাই এই রাজ্যের শাসক। প্রায়ই টুকটাক কমান্ড চালানোর জন্য টার্মিনাল উইন্ডো খুলতে হয়। হয়ত দেখা যায়, একগাদা টার্মিনাল উইন্ডো খুলে ডেস্কটপটাই ঘুটঘুটে অন্ধকার করে ফেলেছি। আবার এতগুলোর মধ্যে দরকারি টার্মিনালটা খুঁজে বের করতে গিয়ে Alt+Tab এর বারোটা বাজে। এই টার্মিনালগুলো সব যদি একসাথে সাজানো গোছানো থাকতো, কি সুবিধাই না হত, তাই না? তার সাথে টাইল করা রঙচঙে অ্যাডভান্স‍্ড টার্মিনাল দেখিয়ে সস্তায় পাতিহ্যাকার ভাবও নিতে পারি (শেষের স্ক্রিনশটটা দ্রষ্টব্য 😎)!
ঠিক এই কাজের জন্যই জনপ্রিয় অদ্বিতীয় একটা প্রোগ্রাম হচ্ছে টিমাক্স (tmux)। কিন্তু অধিকাংশ টার্মিনালভিত্তিক প্রোগ্রামগুলোর মতই এটাও নতুনদের কাছে স্বভাবসুলভ দুর্বোধ্য। এইখানে টিমাক্স চালানোর প্রাথমিক ধারণা তুলে ধরার চেষ্টা করছি।

(বিস্তারিত…)

আর্চলিনাক্সের কাস্টম প্যাকেজ রিপোজিটরি

বিভিন্ন ডিস্ট্রোতে প্যাকেজ ম্যানেজার দিয়ে প্যাকেজ ইনস্টল করার পুরো ব্যাপারটাই অত্যন্ত সোজা। একটা সহজ কমান্ড দিয়েই অফিশিয়াল রিপোজিটরি থেকে রাজ্যের সব প্যাকেজ একজায়গায় পাওয়া যায়। কিন্তু কিছু প্রোগ্রাম অফিশিয়াল রিপোজিটরিতেও থাকে না। সেক্ষেত্রে নিজস্ব একটা প্যাকেজ রিপোজিটরি বানিয়ে নেয়া যায়, ফলে ডিফল্ট প্যাকেজ ম্যানেজার দিয়েই সরাসরি নিজস্ব কাস্টম প্যাকেজ ইনস্টল করে নেয়া যাবে; aur থেকে makepkg দিয়ে ইনস্টল করা, বা make দিয়ে বিল্ড করা, বা কোন র‍্যান্ডম আর্কাইভ ডাউনলোড করে install.sh জাতীয় স্ক্রিপ্ট চালিয়ে ম্যানুয়ালি ইনস্টল করা, ইত্যাদি হরেক রকম বিকল্প ব্যবস্থা লাগবে না।

অবশ্য এই প্যাকেজ রিপোজিটরিগুলোর গঠন আর কনফিগারেশন দেখলে মনে হয়, প্যাকেজ ইনস্টল করা যত সোজা, রিপোজিটরি তৈরি করা হয়ত ততটাই কঠিন। কিন্তু আসলে নিজস্ব প্যাকেজ রিপোজিটরি তৈরি করে ফেলা মোটেই জটিল কোন কাজ না। যেমন, আর্চের জন্য একটা ফর্মাল রিপোজিটরি বানিয়ে ফেলা যায় খুবই সহজ কয়েকটা ধাপেই:

(বিস্তারিত…)

উইন্ডোজ কী এর নাম কী?

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

(বিস্তারিত…)

জিপিজি ওয়েব কী ডিরেক্টরি

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

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

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

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

(বিস্তারিত…)

উইন্ডোজের জন্য কিবোর্ড লেআউট সুইচার

আমি লিনাক্স ডেস্কটপে Super+Space শর্টকাট দিয়ে কিবোর্ডের লেআউট ইংরেজি এবং বাংলায় পরিবর্তন করি। অনেক সময় উইন্ডোজেও কাজ করতে হয়, তবে সেখানে লেআউট পরিবর্তনের জন্য উইন্ডোজের ভাষায় Windows+Space শর্টকাটটা কাজে লাগানোর সুযোগ নাই।

কিন্তু সুযোগ না থাকলে সুযোগ তৈরি করে নিতে হয়। 😎

(বিস্তারিত…)

শুরু

শুরুতেই, শুরু করা বিষয়ে একটা অতি-উৎসাহদায়ী উক্তি:

এগিয়ে যাওয়ার মূলমন্ত্র হচ্ছে শুরু করা।

মার্ক টোয়েইন

💜🏁