How to Set Default Directory in Mac Terminal

As a tech person I need to use the terminal a lot. So, after opening the terminal need to browse or open any specific dir if I want to run any command based on dir or services like git. At home I mostly use mac(though as office I use windows long time) and I was looking for how to set any specific directory default in mac’s terminal. After doing some search found some help in stackoverflow. Here is how I have set for mine.

Open your mac’s termnial. Run command nano ~/.bash_profile .

bash_profile. This file is loaded before Terminal loads your shell environment and contains all the startup configuration and preferences for your command line interface.

via this article

Now write the below line in the bash profile file, the first has my fav dir that I want to open at terminal start

export START="/Applications/XAMPP/xamppfiles/htdocs/projects" //this is my fav dir I like to open as default dir for mac
if [[ $PWD == $HOME ]]; then
cd $START
else
cd $HOME
fi

Save the bash profile and exit. Now open your terminal.

Note: I used the tricks from here at stackoverflow and tried to write as my own way.

ফ্রিল্যান্সার আইডিকার্ড এবং আমার ভাবনা

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

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

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

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

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

সময় এর সাথে ব্যক্তি এবং দেশ উভয়কেই তাল মিলিয়ে এগিয়ে যাওয়া দরকার।

ধন্যবাদ সময় নিয়ে পড়ার জন্য।

ফ্রিল্যান্সার নামে সরকার যে সাইট চালু করেছে তার ঠিকানা এখানে

বাবা খাওয়ার পর থালে একটু জল দিয়ে ভিজায়ে রাখবা না হলে মায়ের বুক শুকায়ে যায়

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

ঢেউ (The Wave)

ঢেউ যত বড় হয় তার আঘাত করার ক্ষমতা তত বেশি। প্রতিটি ঢেউই এক সময় নিস্তেজ হয়ে যায়। তবে ঢেউ এর শক্তির মাত্রা নির্ধারণ করে এর পার্শ্বপ্রতিক্রিয়া কতখানি হবে এবং কতদিন থাকবে।

পার্শ্বপ্রতিক্রিয়া শুধুমাত্র ঢেউ এর শক্তির উপরই নির্ভর করে না যার উপর ঢেউ প্রতিক্রিয়া দেখাচ্ছে তার উপরও নির্ভর করে।

সময়ের সাথে সাথে ঢেউ যেমন নিস্তেজ হয়ে যায় তেমনি ঢেউ এর তৈরি পার্শ্বপ্রতিক্রিয়াও সময়ের সাথে বিলীন বা পরিবর্তিত হয়ে যায়।

আমরা সময় এবং অবস্থান এর প্রক্ষিতে কেউ কেউ ঢেউ এর সরাসরি প্রতিক্রিয়া দেখতে পারি আর কেউ কেউ শুধুমাত্র পার্শ্বপ্রতিক্রিয়া এর চিহ্ন দেখতে পায়।

যারা সরাসরি ঢেউকে সরাসরি জানতে পারেন আর যারা শুধুমাত্র পার্শ্বপ্রতিক্রিয়া থেকে ঢেউকে জানার চেস্টা করে তাদের জানা এবং বোঝার ভেতর পার্থক্য থাকে।

সময়ের সাথে সাথে ঢেউ যেমন বিলীন হয়ে যায় তেমনি নতুন ঢেউও তৈরি হয় তবে প্রতিটি ঢেউ এর আঘাত আর আঘাত এর কারণে তৈরি পার্শ্বপ্রতিক্রিয়া একই হয় না।

নোটঃ এই লেখায় ঢেউ একটি প্রতিকী শব্দ মাত্র।

গুটেনবার্গ ব্লক(ডাইনামিক) মাল্টি সিলেক্ট ফিল্ড(Gutenberg Block (Dynamic) Multi Select Field)

গুটেনবার্গ ব্লক(ডাইনামিক) মাল্টি সিলেক্ট ফিল্ডঃ

গুটেনবার্গ ব্লক এর ডাইনামিক ব্লকের(স্টাটিক কি হয় পরীক্ষা করি নাই) মাল্টি সিলেক্ট ফিল্ড এর ক্ষেত্রে আমি একটা সমস্যায় পড়েছিলাম ফিল্ডটাইপ কি লিখব সেটা নিয়ে। যেহেতু ডাইনামিক ব্লকের ক্ষেত্রে পিএইচপি থেকে ফিল্ড টাইপ এবং ডিফল্ট ভ্যালু গুলো ডিক্লেয়ার করতে হয় তাই আমি এই রকম লিখেছিলাম

‘id’ => array(
‘type’ => ‘array’,
‘default’ => array()
),

ব্লক এর আউটপুট একটা শর্টকোড ছিল। শর্টকোড সরসরি ব্যবহার করলে কোন ইরর পাচ্ছিলাম না কিন্ত ব্লকের আউটপুট থেকে আসলে ইরর পাচ্ছিলাম এই রকম

PHP Notice: Undefined index: items in … \wp-includes\rest-api.php on line 1150

আমি যে প্লাগিন নিয়ে কাজ করছিলাম সেটার কোডের ভেতর কাকতলীয় ভাবে অনেক জায়গায় এরের ইন্ডেক্স হিসাবে ‘items’ কীটা ব্যবহার করেছি কিন্তু এটার সাথে রেস্ট এপি এর সম্পর্ক খুঁজে পাচ্ছিলাম না। পরে গুগল সার্চ করে পেলাম মাল্টি সিলেক্ট ফিল্ড এর ক্ষেত্রে array এর আইটেম গুলোর টাইপও ডিক্লেয়ার করে হয় যা নিচে

‘id’ => array(
‘type’ => ‘array’,
‘default’ => array(),
‘items’ => array(
‘type’ => ‘integer’
)
),

‘items’ কী টার সাথে array এর আইটেম গুলোর টাইপ ডিক্লেয়ার করার ক্ষেত্রে ‘items’ কীটা ব্যবহার আমাকে বেশি কনফিউজ করে দিয়েছিল সমস্যাটা বুঝতে।

২য় হচ্ছে, আমার জ্ঞানের অভাব কিভাবে মাল্টি সিলেক্ট ফিল্ড এর ক্ষেত্রে array এর আইটেম গুলোর টাইপ ডিক্লেয়ার করতে হয় কিনা সেইটা না জানা

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

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

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

My post in wordpressian facebook group
https://www.facebook.com/groups/wordpressians/permalink/1397270923744425/

Gutenberg Block (Dynamic) Multi Select Field:

In the Gutenberg block’s dynamic block (whether static or not tested) in the multi select field, I had a problem with what to write on the fieldtype. Since dynamic block requires field type and default values ​​to be declared from PHP, I wrote like this.

‘id’ => array (
   ‘type’ => ‘array’,
   ‘default’ => array ()
),

The block’s output was a shortcode. I could not get any error when using shortcode sarsera but I was actually getting error from block output.

PHP Notice: Undefined index: items in … \ wp-includes \ rest-api.php on line 1150

I used the ‘items’ key as the index of the error in many places inside the code of the plugin I was working with but I could not find the relation of Rest AP with it. After doing a Google search, I can also declare the type of the items in the array in the Multi Select field below.

‘id’ => array (
   ‘type’ => ‘array’,
   ‘default’ => array (),
   ‘items’ => array (
      ‘type’ => ‘integer’
   )
),

Using the ‘items’ key to declare the type of the items in the array with the ‘items’ key made me more confused to understand the problem.

Secondly, my lack of knowledge on how to declare the type of array items in the multi select field is not known.

Third, I found a solution to this with WordPress’s Rest AP, but it has links to Gutenberg’s Dynamic Block because Gutenberg Dynamic Block’s output renders it from PHP and sends the json request to the Rest API request.

Fourth, I shared it here if anyone would benefit because yesterday, after closing the office, I closed the office and did not solve the problem, I sat with it before dawn.

Lastly, when I don’t understand the angle problem or understand how to solve it or I can’t find a solution, I give a Gap from work or code. This Gapta can be anything from leaving the office to drinking tea, bidi, drinking or going to actress Jaya Ahsan’s Facebook page.

Entertainment Talk Show Idea for BD TV Channels

বিনোদন মিডিয়ার জন্য একটা বিনোদন মূলক বিজনেস আইডিয়াঃ

কলকাতার বাংলা সিরিয়াল এর বাংলাদেশী দর্শকদের বাংলাদেশের টিভি চ্যানেলে ফিরিয়ে আনার বিষয়ে আমার একটা চিন্তা।

আমাদের দেশে নিশ্চিৎ ভাবেই কিছু মানুষ টক শো দেখে না হলে প্রতিদিন রাতে প্রায় প্রতিটি টিভি চ্যানেলে টক শো হতো না। কিন্তু তথাকথিত টক শো দেখে দিন শেষে মানুষ একটা হতাশা বা না পাওয়া নিয়ে ঘুমাতে যায়।

“The Walking Dead” নামে একটা ইংলিশ টিভি সিরিয়াল এর বিষয়ে গপসপ করার জন্য আর একটা টক শো সিরিয়াল হয় যার নাম “Talking Dead”. এই কন্সেপ্ট কাজে লাগিয়ে আমরা যেটা করতে পারি সারা দিন কলকাতার বাংলা টিভি চ্যানেল গুলোতে যে জনপ্রিয় টিভি সিরিয়াল হয় বা বাংলাদেশীদের প্রিয় টিভি সিরিয়াল গুলোর কাহিনীর সারাংশ নিয়ে আলোচনার জন্য প্রতিদিন কয়েকজন আংকেল আন্টিকে ডেকে টক শো এর আয়োজন করা যেতে পারে। অন্তত সারাদিন কেউ যদি কোন সিরিয়াল মিসও করে ফেলে সেইটার ফলো আপ আলোচনা সমালোচনা জানা এবং দেখার জন্য বাংলাদেশী টিভি চ্যানেলে নিশ্চিৎ ভাবেই ঢু মারবে। এই ধরনের টক শো এর নাম “Talking Dead” দিলেও চলত কিন্তু ইংরেজি নাম লোকে খাবে না। বাংলা কোন নাম খুঁজতে হবে। যেমন – “মৃতদের কেচ্চা!”

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

বিঃ দ্রঃ আমি এই আইডিয়ার কপিরাইট এর জন্য আবেদন করব কিনা সবার মতামত চাচ্ছি।

ভালোবাসার পাল্লা

তুমি এক কেজি ভালোবাসা চাইলে …
আমি ভালোবাসা মেপে দিলাম।
আমার স্বভাব বসত পুরাতন ঝং ধরা বাটখারা ব্যবহার করে ৫০ গ্রাম কম দিলাম।
মাপার সময় দাঁড়িপাল্লা এদিক সেদিক হেলিয়ে দুলিয়ে আরো ৫০ গ্রাম কম দিলাম।
তুমি ভালোবাসা নেওয়ার সময় খেয়াল করনি, আমি ঐখান থেকে আরো ৫০ গ্রাম উঠিয়ে নিয়েছিলাম।
আর হ্যাঁ বলতে ভুলে গেছি, কিছু পচা আর মেয়াদ উত্তীর্ণ ভালোবাসা ছিল যা প্রায় আরও ১৫০ গ্রাম হবে।
তুমি কোন কিছু ভালোমত খেয়াল না করে বেহিসাবীর মত ৩০০ গ্রাম ফাঁকি নিয়ে চলে গেলে।
আচ্ছা যাবার সময় তুমি মুচকি হেসেছিলে কেন ?

আমি ভেবেছিলাম আমি চালাক আর তুমি বুঝি খুব বোকা।
আমার প্রচন্ড ভুল ভাঙল সেদিন যেদিন তুমি ৭০০ গ্রাম ভালোবাসা আমার দাঁড়িপাল্লা বাটখারা দিয়ে মেপে ১ কেজি হিসাবে ফেরত দিয়ে গেলে!

১০ মার্চ, ২০১৯
দুপুরের ভাত ঘুম আসার আগে

বুদবুদ

আমিতো ঘুমে ডুবে ছিলাম,
স্বপ্নে যখন বুদবুদ ছাড়লাম
ঠিক – ঠিক তখনি তুমি বুঝলে আমার খিদে পেয়েছে!

অভিশাপ

//অভিশাপ

তুমি অভিশাপ দিলে, আমার ঘর পুড়ে যাক।

আমি ঘুমিয়ে স্বপ্ন দেখলাম, আমার ঘর পুড়ে যাচ্ছে, এরপর আমি ঘরপোড়া ছাই দিয়ে দাঁত ব্রাশ করলাম।

ঘুম থেকে উঠে দেখলাম আমার ঘর পুড়ে নাই, কারণ কোন দিন আমার কোন ঘরই ছিল না।

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

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

পরের দিন স্বপ্নে দেখলাম, তোমাকে শীত থেকে বাঁচাতে তোমাকে আমার বুকে জড়িয়ে রেখেছি।

//১৯.১২.২০১৬