Git not working in macOS Catalina?

I just updated to macOS Catalina yesterday. When started my terminal, it wasn’t able to recognize it as a Git repository. I work with WordPress plugins. So I thought I might have updated directly from WordPress.org so the Git folder got replaced and it is not a Git repo anymore!

So I tried to clone again from Bitbucket but it showed an error message-

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

So, I googled and found that I need to update Xcode from StackOverflow. This is the code I ran and everything was back to normal again.

xcode-select --install

You can also run xcode-select --reset. That works too!

Setting up Localhost on OSX Mojave for PHP Development

Laravel Valet? What is it?

I am using Laravel Valet to install Nginx and a domain masking service which will allow us to access our localhost address (127.0.0.1) from a domain something like mysite.test.

Valet is helpful for people who have a very low configuration laptop or PC. I use MacBook Air with 8GB RAM and 128GB SSD. I have to keep my RAM available for Chrome, so I can’t provide enough resource for the local server. This is why I use Valet instead of Xampp or Mamp. It just uses 7 MB of RAM and really fast compared to any other local server solution and I really love the domain masking and SSL feature.

Read More

LearnPress Alternative

I was looking for a LMS plugin to make a portal for a university. When I was searching for plugins on Google, I have read a lot about LearnPress but I had to struggle a lot with the bugs and sometimes my entire site got broken and was showing 503 error.

So I decided to go for a very new plugin which was released recently. I was very hesitant in the beginning as the install count is very low but two 5 star reviews helped me to trust them and give it a try.

Surprisingly it worked!

I am still working on the site and the teachers are working on the content. If you too are looking for an alternative, you can check Tutor LMS.

When I have talked with them via email, I got to know that they are working on a pro version with certificate and many other essential features. I will update here once I get to try the pro version.

সাইমন সিনেক এর ‘স্টার্ট উইথ হোয়াই’ থেকে শেখার মত ৩ টি বিষয়

বিজনেস বা মার্কেটিং নিয়ে যে কারো সাথে ডিসকাশনের সময় আমার মুখ থেকে অটোমেটিক সাইমন সিনেক নামটি চলে আসে। যেকোনো বিজনেস বা মার্কেটিং ক্যাম্পেইন ডিজাইন এবং ডেভেলপ করার সময় আমি তার Start With Why বইতে মেনশন করা Golden Circle ফলো করার আপ্রাণ চেষ্টা করি।

তার বইয়ের সারমর্ম লেখার মত জ্ঞান বা ধৃষ্টতা, কোনটাই আমার নেই। হাবস্পট এর টুইটার একাউন্ট থেকে বেন এর লেখা একটি পোস্ট পেয়েছিলাম। সেখানে তিনি যে প্রধান ৩ টি বিষয় উল্লেখ করেছেন, তার সাথে আমি একমত এবং সেখান থেকেই পরিমার্জন করে এই পোস্ট টি লিখছি।

Read More

6 Times I failed to establish a business

Why am I sharing this?

Well, this is sort of a reference post that I am about to write in future. It will add more weight to what I am saying.

Anyway, It started when I was in school. I used to work for a signboard and banner making shop and learnt to navigate through Adobe Illustrator and Adobe Photoshop a little.

1. Advertising Service

I wanted to work as a third party who gets orders from businesses and gets them done from the place I used to work. I designed my own business card saying that I own an advertising company (which I didn’t), printed it and distributed around the place I used to live. I didn’t get a single order! Moreover, someone spread my number to telemarketing shitheads and I still get calls even after 9 years!

2. eLearning Website

At my early days of college, I wanted to open a eLearning website because I was not happy with my teachers. I used to watch tutorials on YouTube and felt that I can make videos in Bangla with the best teachers in the country. So I joined a web development course. During the three month duration, I got so much involved in writing code and felt exciting that I forgot about the eLearning portal and started to dream about becoming a programmer.

3. Freelance Web Developer

Right after finishing the web development course I opened profile at every possible freelancing platform and started looking for work. I did find a couple but my skills were not enough for professional grade work. So I thought of having a pause and increase my skills.

4. Domain Hosting Company

I joined a web development training center to teach people about markup language and how to use a CMS to create a website. It was the time of “24.com” boom and the training center owner wanted to open yet another news portal. When I successfully completed one website, he introduced me with his journalist friends and got 7 new orders for news portals. None of them paid a single penny and also I was not getting my salary on time. So I left the job and also forgot about having a domain hosting company.

5. Bulk T Shirt Printing

I was jobless for 24 days and I thought about what else I can do! I saved 10,000 taka till then and I thought I can buy cheap t-shirts, print some unique designs and sell to the shops. I put a lot of effort this time and travelled to at least 10 different printing companies and RMG factories. Some of them were out of the city and required an entire day to reach and come back! None of them agreed to sell a smaller amount or print smaller amount. Also printing smaller amounts will increase the cost a lot. So I realized 10K BDT is not enough to start a business and I forgot about this as well.

6. Software Company

When I left my job from a software company as a business development manager, I thought I’m old enough to handle a company and can gather some developers and agree to work as partners(in plain words, unpaid developers). Also, seed funding, crowdfunding, startup, angel investors were the buzzwords at that time. So I got the courage to discuss the idea with some of my ex-colleagues and they all agreed. Meanwhile, I got a message from a client that he wants to invest in our company. But the final discussion went from investing in our company to owning our company. During the discussion, we registered the company so that we can legally take partners and sell shares. That cost us a hell lot of money but none of us wanted to do yet another job. So the investment discussion ended and all of us lost motivation making a company from volunteer work.

The developers parted their ways but I tried to keep that dream alive. I hired content writers from my university wanted to keep the blog running to get attention from potential investors. Also, shared the mockups I made from a designer with my own personal fund. That too was a handsome amount for any Bangladeshi. They were preparing to write about project management tips and software reviews but it didn’t last long as they were not progressing that well. I was going through depression as well. The domain ManagX.com is still up and running with no complete content. I keep renewing it and will launch it someday. Because I invested a lot in this and I will keep this dream alive.

Do what you love আর love what you do এর প্যাঁচাল

Do what you love; love what you do কথাটা অন্তত একবার হলেও আমরা শুনেছি। তবে কখনো কি একটু সময় নিয়ে ভেবে দেখেছি যে আসলে কথা দুইটা দিয়ে কি বোঝানো হচ্ছে বা আমরা কিভাবে এটা ফলো করতে পারি?

Read More

How not to write a blog post (especially on the company blog)

You might be a tiny little blogger or an individual who likes to write about the new things they learn or their daily experience. If this is the case, it is okay for you to feel down somedays and use a dull tone to write a thing or two on your personal blog.

Feeling low is totally okay and I am not against that. I am not saying you should always jump with joy and energy in all your blog posts like those Instagram bloggers or youtube vloggers do. People are intelligent these days and they can identify a fake smile or enthusiasm very easily and it is very disappointing.

Why writing in a grey tone is bad?

People actually don’t care about how you feel unless they have a personal connection with you. People come to the internet to feel happy, feel entertained, laugh and share positive vibes with their friends and hundreds of other people that they refer as friends.

So, if you are using a dull tone because you are not feeling right today, your writing will not reach many people. Most of them will stop reading halfway, some might not read after a couple of lines and will close the tab. What worse can happen is that because of this one bad experience or negative vibe, they might not come back again for a long time or start judging each of your posts before they read the next one.

Missing the rainbow on a company blog

If you are an online company serving people all over the world, your blog is one of the most important parts of your company. Because it is the front desk of your company which communicates with the world and shows who you are, what things you care about and how you respond to people and recent issues.

So, if you are not showing your enthusiasm when announcing a new feature of your product, introducing new plans or sharing a good news with your readers, it will hurt you bad. Real bad.

Your company blog is not a place for the interns. It should never have a half-baked content. Even if all of your content developers are having the writer’s block (which is somewhat impossible), you should not publish a post that seems less than great. In situations like this, you may try sourcing the content from some other company or a freelancer because the show must go on! But you should never risk your audience lose interest in your content and start judging if your write-ups are worth their time.

So if you are publishing blog posts regularly, people read and never comment, you know what you’re doing wrong.

What I recommend

Company Owners: Whenever you’re hiring a new technical writer or a content development executive (or whatever fancy job title you give to your blog writer) ask them to write about a good news and a bad news.

Something like “One of our developer died yesterday from caffeine attack” and “I received hundred litre tomato ketchup for free” and see the level of enthusiasm, positive energy and emotion they show on their writing. Don’t just put the word “energetic” on your job post.

Writers or people looking for a job: You read what I wrote above. Try writing something like that and discuss with friends about showing empathy on your writing, using better words to express your emotions. People can’t see your face or feel your situation. So, even it’s a dry post about just a new software or a stupid android game, you must feel excited. You must write in a way that people feel excited to comment on your post and download your software or app and pay.

You’re not just a writer. You’re no less than a salesman, a product owner and the communication manager. You alone have the power to ruin the company image or make it a great success.

Never ever play with the companies reputation. If you’re not feeling like writing today, talk to your boss, take the day off and go somewhere you like. If you’re constantly feeling like not writing anything or not feeling the right amount of energy, slap yourself a couple of times, have a red bull and try as much hard as you can. But please show 2-3 person to get a non-biased review before publishing.

My thoughts on winning employee loyality

When someone says my employees do not last long or they leave without prior notice, the first thought comes to anyone is that the company might not have offered enough cash. People work for cash for sure but that does not drive them every single day. I myself is an employee and have worked for Americans, Indians, Italians and Bangladeshies. I have worked around 6 years for Bangladeshi companies on their actual offices and Been working remotely for 3 years. So I have enough insights to say that

Money does not drive people

I am a big fan of Simon Sinek and his “WHY Series“. In some of his writing and talks, he said that money is just a result. If you work, you get paid. That creates a temporary happy feeling. It does not create a feeling of fulfilment. It will not get you excited to wake up every single day and go to the office.

I totally agree with him. Even luxury cars or apartments cannot make people happy or stick to a job for a longer period.

What Gets People Excited?

This is the time of millennials. From the office to schools, shopping malls, CEOs… they are everywhere. They have a certain type of behaviour and thinking process. I am not saying you should go full-on hipster and buy PlayStations and beanbags etc. Having a pingpong table or foosball creates a good vibe in the office and the new recruits think that these people are quite nice. At least the bosses are not into cannibalism. They don’t eat people.

Here’s something serious that some of my classmates and seniors in the university found about millennials, their expectations and how the company owners can align with them-

    1. Communication
      Communicate with them as much as possible. Give them brief instructions, tell them specifically what you actually want, what is the end target and what process they should follow. Don’t just leave them with a vague idea and later get frustrated with them for not meeting your expectations. Neither the employee nor the boss likes to get disappointed to disappoint either one. So make sure your managers are careful about communicating with their executives. As a CEO or GM or MD, you should talk to your employees and team leads to check if everything is going right.
    2. Quality Management
      The people on the management level needs to be really sharp and always be alert about who is doing what and how is their daily, weekly and monthly productivity. If the curve is going downwards every single day and remains for a week, they should check all the possible reasons and sit with the person immediately and fix that. Waiting for the employee to come up with a complain never works. They come with a resignation letter or don’t come at all.
    3. Branding
      People want to be a part of something greater than themselves. This is human instinct and that is why we have been building groups, communities and tribes. So branding your company locally or internationally will not only help to grow your revenue, it will also help you to find the quality human resource and retain them. Actually, there’s a saying that if you take a good care of your employees, they will take a great care of your clients. So it helps both ways.
    4. Community Involvement
      Community events, especially for IT companies, can help them in many ways. If they encourage their employees to attend conferences and speak at one at least once in a year, that will make them learn new things, connect with a bigger group of people and represent the company as well. So sending an employee for a full days workshop at home or abroad is not actually a loss in productivity, it is an investment for your human resource.
    5. Empowerment
      Letting the employees to always come up with a new idea, thinking about new solutions or optimizing the workflow are always exciting. A software developers job always does not have to be about writing software code. He can spend a day at a school understanding how things work there, what are the problems and how they can be solved. A technical writer can spend a couple of hours at twitter reading tweets about the issues people are having today and come up with an analysis. A change in tasks or letting them feel that they are free to do anything they like will always excite them and bring positive results. My point is let them do whatever they want to, discuss with them how they want to do it and as a boss, add your two cents to get some results for the company (wink wink).
    6. Make them feel special
      I know you have mentioned “performance bonus” on your job advertisement. For god’s sake please do not forget that. Award them for the small things they do or when they go beyond their responsibilities. Sometimes give them treat or buy a small gift for no reason. It creates a feeling of belonging. You can do these things in front of the entire team or in your personal room. Change their job title once in a couple of years. Focus on the small things to keep them engaged.
    7. Build the future with them
      Nearly 70% of the millennials dream of having their own company one day. This is one of the major reasons why they change their jobs frequently to gather more knowledge, experience and network.
      Most of the big companies have in-house incubation program for startups created by their current or ex-employees. They invest in those startups, buy shares and if they are making good progress, sometimes acquire them. So they actually become a family member for you. You support them to go ahead and stand on their own feet.
      Even if they fail, they will have a trustable body to take care of them.

Summing it up

Employees and bosses both feel like having an immature girlfriend to me. We always have to be alert, take the best possible care and think wisely every possible step. Yes, things will go wrong and that’s totally normal. There’s no concrete bible about how you can stop people from leaving your company and keep them until they die. Humans will always be unpredictable. So do your best, always keep an eye on the stories about other companies, how they manage their human resources, recent studies and books.

কেন আমি মার্কেটপ্লেসে কাজ করতে নিরুৎসাহিত করি?

ব্যক্তিগত অভিজ্ঞতা

আমি নিজে শুরু করেছিলাম মার্কেটপ্লেস থেকে। সাধারণ HTML বেজড স্ট্যাটিক সাইট বা টেম্পলেট তৈরি এবং Joomla দিয়ে সাইট তৈরি করতে জানতাম। প্রচুর কনফিডেন্স ছিল। যেহেতু একাই যেয়ে সাগরে ঝাপ দিয়েছিলাম তাই একেবারে উপুড় হয়ে পরে বিশাল একটা ধাক্কা খেয়েছিলাম।

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

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

মোটামুটি ৭ বছর ফুল টাইম জব এবং মার্কেটপ্লেসে থেকে আমার নিজের উপলব্ধি হচ্ছে-

মার্কেটপ্লেসকে কোন দীর্ঘস্থায়ী আয়ের উৎস হিসেবে নেওয়া উচিত না।

অনেক বেশি স্ট্রেস, কমিউনিকেশন এবং কনভিন্স করতে সময় বেশি নষ্ট হওয়া, পেমেন্ট নিয়ে ঝামেলা সহ শত শত কারণ আছে। এগুলো এড়ানোর উপায় নেই।

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

তাহলে কি করতে বলেন?

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

যদি মার্কেটপ্লেস থেকে কোন টিমে জয়েন করার সুযোগ পান, তাহলে মার্কেটপ্লেস ভালো যায়গা।

একটা টিমের সাথে থাকা সব সময় গুরুত্বপূর্ণ। কারণ মানুষ সামাজিক জীব আর মেন্টাল সাপোর্ট এবং স্কিল ইম্প্রুভ করার জন্য টিমের কোন বিকল্প নেই।

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

টাইমজোন নিয়ে ঝামেলা না থাকলে আর ফুলটাইম কাজ করার জন্য সুযোগ থাকলে অবশ্যই যেকোনো একটা টিমে জয়েন করা উচিত। হোক সেটা লোকাল বা রিমোট টিম।

দুইটার মধ্যে পার্থক্য কি?

একটা টিমে থাকা অবস্থায় যে পরিমাণ ভুল করার সুযোগ পাবেন এবং শেখার সুযোগ পাবেন, সেটা একা কাজ করে কখনো পাবেন না।

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

টিমে থাকলে কেউ না কেউ ব্যাকআপ দেওয়ার জন্য থাকে। শান্তি করে একটু ছুটি নেওয়া যায়।

সবচেয়ে বড় কথা হচ্ছে একা কাজ করলে big picture টা দেখতে পাওয়া যায় না। ভবিষ্যতের পরিকল্পনাও নিজেকে কেন্দ্র করে করা হয়। টিমে থাকলে অনেক ভিন্ন ভিন্ন দৃষ্টিকোণ থেকে দেখার আইডিয়া পাওয়া যায়। দীর্ঘস্থায়ী আয়ের জন্য প্রস্তুতি নেওয়া যায়।

কোন কোম্পানিতে জয়েন করলে নিজের প্রডাক্ট ডেভেলপ করার জন্য যথেষ্ট সময় পাওয়া যায় এবং নিজের কোম্পানির জন্য প্রস্তুতি নেওয়া যায়।

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