Home » Productivity

Category: Productivity

New Paradigm Tools – Slack

What is Slack for?

You may be old enough to remember mIRC. If so, Slack is like that but for business.

If you have no clue what mIRC is, then Slack is a way to text chat with your team over the Internet, grouping the discussion into multiple channels. 

 

What is Slack NOT for?

Slack is not a project management tool. Instead is a remote communication tool. While you could use it to manage simple, short projects, you will miss the ability to create tasks, track progress, and reach your goals for more complex ones. 

 

Why use Slack? 

I have been working remotely for over ten years now. And I would communicate with my clients over email. This approach was generally OK if only two people were involved: the client and me. As soon as someone else wanted to join the conversation, it would get complicated very fast! Here is why:

  •  How could they read the context of the previous discussions – that are now buried in an old email that they don’t have access to?
  •  How could they filter the information if it is not organized into topics? 
  •  There is no guarantee of an email being delivered. When an email gets lost, a lot of awkward “didn’t you get the memo?!” situations ensue.

 

The Power of Slack

Slack does more than getting the information out of your email and into a team-accessible-space. 

It has a robust notification and ignore system. Taking the time to learn about and properly configure the notifications can make or break your Slack using experience. Suppose you choose to get notified about everything. In that case, your phone will constantly buzz at you, driving you crazy, which inevitably leads to shutting down notifications altogether, which means you’re shutting down slack and choose not to communicate. Not good!

The key is to fine-tune what you get notified about and create distraction-free time for you to do productive work. 

It’s tempting to think that everybody on the team is just a text chat away, but unless your purpose is to chat, you won’t be terribly productive. 

Some jobs may require you to monitor and respond to Slack constantly. Some brainstorming or research phase of a project may require that you keep your eye on Slack. But for the rest of the time, turn everything off except private messages from your boss and any emergency or announcement channels. When you’re done for the day, make sure you set slack on “Do Not Disturb” (you can automate this if you have fixed work-hours).

Slack Workspaces are another powerful concept, although super confusing when you first start. 

To clarify this for you, think of it this way: You don’t have a Slack account. What you have instead is an account inside a Slack Workspace. Why is this important and confusing? Because each workspace has its own password, even if you use the same email to access all of them. 

It’s like working for three companies, each has an access key card with the same picture of you but a different code on it, so you cannot use the same key everywhere. Similarly, each Slack Workspace has its own password and email. Why is this important? Because it enables you to use the same tool for multiple teams and projects and still keep everything separate within the same program. Pretty neat! 

Finally, because the conversations are grouped into channels, it is easier to focus only on what you care about and mute (or leave) the other channels. This feature is essential in long projects with large teams. 

 

The downsides of Slack

When I stumbled into Slack one year ago, I thought it was the answer to all of my professional and personal problems! I would use the SlackBot to remind me of important things; I would use channels to organize personal notes; I would use emojis to simulate a project management environment. Oh, the nerdiness!  

It was fun for a month until it because evident that Slack is is to be used for effective communication, and that’s it :).

 

Some misuse of Slack by not understanding its purpose:

  •  project management – use Trello or Asana, or BaseCamp for this
  •  collaborative documents – use Google Drive, Or DropPox Paper (Yes, I know about Slack posts, but they are a far cry from a truly collaborative document platform)
  •  file-sharing – again, use DropBox, Google Drive, or OneDrive – yes, you can share files on Slack, but I think they added this feature just so to make it easier to fill up your free quota :). Sharing images, small spec files, and generally whatever is small enough to be an “email attachment” could be OK. But for anything larger, use a proper file sharing tool.

 

Misuse of Slack by not understanding team communication.

There is a reason Slack adds by default a “random” channel. It is the channel that allows that team member who always has something “fun” to say or share to be safely ignored while they can “express freely.” If you delete that channel or don’t clarify what it is for, expect your “announcement” or “emergency” channels to get spammed. 

Be mindful when sending a text and notifying everyone: will this boost the team’s productivity or just create a barrage of distractions. Nobody wants to wake up to 99+ slack notifications that have nothing to do with them doing their work that day. 

 

Misuse of Slack by not knowing the tool

This problem is probably the biggest and most annoying drawback, and it also prevents a team from adopting Slack. You need to learn the tool and follow the agreed protocols. 

It’s like driving on the streets: we need to trust that you know how to handle your car, and you understand that a red light means stop! Learning the tools and the rules is what makes for a smooth drive (or Slack experience).

Read an article or two about how to use Slack like a pro. It will take you 30 minutes, and you’ll ace it. It will make you feel super confident and become the Slack guru. But most of all, you will be able to create value for your team with clear and smooth communication.

 

Slack Video

I am adding this here because, so far, I have a poor experience with Slack video. The lag is so significant that it was impossible to have any meaningful conversations with my collaborators. I am sure this will improve in the future.

Slack Alternatives

A completely free alternative to Slack that works in the same way, is Discord. The name is unfortunate since discord is not what you want on your communication lines.

Wandering vs Leading

When you start a new project, you can find yourself on any point on the following spectrum: on the far left, there is wondering, and on the far right, there is going straight at a target.

When you are wondering, you don’t know where you want to go. You don’t have a destination. You try this; you try that, your ideas keep shifting, the way you talk about the project keeps shifting, your questions change.

You have this niggling feeling that you want to do something, but you cannot easily articulate what it is. And so you open your senses up for exploration until you discover what you clearly like and you dislike. And a vision starts to emerge. 

On the other end of the spectrum, you know where you are going. You have a map, a plan, and a guide you can call in case of trouble. You are super focused at this stage, your thinking is crystal clear, and your ideas are very stable. You know what is a distraction and what will move you along the path. 

Where are you on this spectrum? 

The way I see it, artists tend to be on the far left side. And they are comfortable in that space of exploration, of the unknown, of continually shifting ideas. It is a place where you are focused on self-discovery, on looking inside to uncover what that niggling feeling is about. 

On the far right side, you find the manager who cares only about the mission, about getting there as effectively as possible. The focus is no longer inwards because the vision is clear. The focus is on the team, on the project, and on being of service. 

In the middle of this spectrum is a place where you have found your vision, so you know where you are going, but you haven’t mapped out the road yet. 

I feel extremely uncomfortable on the left side, the wandering side, where you need to face “not knowing,” making mistakes, and “wasting time.”

I am used to being an A student, which means always having the “right answers” and not making mistakes. 

Being on the extreme right, where you are the manager and just executing the plan, feels more comfortable, but it can also be a place to hide. There is little risk involved. There are little unknowns. And if you fail, you can blame the map or the plan. 

As you move towards the left, things become more and more uncertain and risky. It’s a place fit for adventures—those who are OK with going into dead-ends and having to backtrack and try again. 

No point on this spectrum is better than the others. You can subjectively feel differently about it, as I don’t enjoy the wandering around part, but a project goes through all the phases.

Getting stuck is the problem.

You could wander forever and look busy in your constat search, but how will you sustain that? How will you take care of your family? Or how will you bring positive contributions to your communities?

You can also get stuck in the middle, looking for the “perfect plan” and trying to avoid mistakes. 

The best way to make sure you are making progress is to base your “why” on the good of a larger community. To try to find out how your endeavors will help others, not just you. And then, maybe, you can seamlessly move from crystallizing your vision to efficient execution.

So I ask you again: where are you on the spectrum? And are you making progress, or are you hiding in your favorite place? 🙂 

(credit: ideas inspired by Jonathan Stark – The Business of Authority )

Is this the best way to accomplish our goals?

Have you ever tried to coach a team towards an end goal but failed? Either because you can’t get your point of view across or because the discussion gets sidetracked continuously into things that are not that important? 

I have tried to send documentation to be studied that points at the right solution. That did not work. 

I have tried to use my experience and authority to give them the best solution and move on to the implementation phase. That did not work either. 

I have tried allowing them to learn on their own and to figure it out eventually. That also did not work because of time constraints. 

And guess what the common denominator is to all the failed attempts? Me! 🙂

My thinking says: if they only had the right information, they would see things like I do. Unfortunately, that is not true. As I am discovering, each one of us sees the world through a different lens. Our views may be similar, but they will never be the same

Today I was studying Seth’s book “Stop Stealing Dreams.” And I was fascinated with how many ideas he can share, without giving any advice on what to do! And not only that, but almost every paragraph had me stop and ponder what was said. I could feel the cogs in my brain getting a good workout!

I had to digest the entire book to figure it out finally. And the answer is now simple and obvious. Seth asks a lot of questions, inviting the reader to think for herself!

And the most potent question was:

Is this the best way to accomplish (…insert goal here…)?

This question serves double duty:

1. It makes sure that we know and agree on what the goal is. If we don’t, we need to go way back in our discussion and check and decide on our goals again. 

2. Once we agree on the goal, asking “is this the best way” opens everybody’s mind to contribute in a focused way towards the goal. 

The key difference for me is that I no longer dish out my solutions but instead invite everyone to contribute. The best way that the group finds may be way better than what I had initially thought the correct answer was. We all learn, and we move forward together.

I will definitely give implement this one in my communication.

Meetings – as a display of power

Why yet another writing about meetings? Because it is an old habit that needs to change. And because it is so old, we need to challenge it strongly and repeatedly to defeat the inertia.

Most people go to meetings because they feel they have to, not because they want to or need to. 

When there is no engagement, the meeting becomes a waste of time and a show of status (“who’s who”).

If you are the meeting organizer, you may care a lot about your project or your idea or about getting feedback. But not everyone in the meeting cares about the same things that you do. And if all you can see around you are bored people who would rather be someplace else, what can you do differently? (assuming that you care)

You could change the meeting duration from one hour to 10 minutes! No more room for fluff, for checking the phone, or for being late. And above all, you show respect to the other participants forced to spend their time with you.

You could also simply cancel the meeting. Do you need to send an update? There is email; there is slack; there is the phone. Do you need feedback? You can use online surveys or schedule one-on-one interviews in cases where you need to go deeper. 

Above all, seek and measure engagement. If people around you are not engaged, everything moves in slow motion, and you are also missing on a ton of creativity that has no room to be expressed. 

If you are meeting participantwhat would happen if you didn’t go? Would the project miss a critical piece of insight, or would “people upstairs get upset”? If it’s just people getting upset for you being honest about not having anything of value to contribute, then maybe you need to bring this up. Challenge the reason you have been invited to the meeting and make sure you need to be there. If you know your input is valued and sought after, you will be more likely to be engaged. But if you feel like a replaceable cog in the system, then you won’t be missed. 

Another thing you can do is start a discussion about meetings around the office. Are they effective? And how do you measure that effectiveness? If there is little engagement, what can you change to have more of it? What would happen if you canceled the meeting? What is the difference between synchronous communication (phone and meetings) and asynchronous (Slack, email, voice messages)

With new technology, we can do better. Show respect and seek engagement, not a display of power.

How do you think meetings should change in the new environment? Who are meetings for, and what are they for?

One path is to do the bare minimum

Your boss does not appreciate you, or is there a glass ceiling in your company or your department? Or are your clients always trying to pay less?

The solution? One is to do the bare minimum required not to get fired. Or, if you work for clients, do the bare minimum to meet spec. That’s an effective use of your time, right? 

Except, it isn’t. 

It is a race to the bottom. And eventually, you will win. 

You cannot control what your boss thinks of you. Or how the company is structured. Or how your clients see your work. 

That leaves you with the only thing you can control: your attitude. 

Doing the bare minimum, just getting by, it is a victim attitude. It is a way for you to get “revenge” on the outside circumstances that don’t reward you. 

So what is the alternative? 

The alternative is to choose to grow. To choose to be focused, to do outstanding work, work that you are proud of, and you would happily brag about at your next job interview or in the sales call with your prospects. 

Will your current boss suddenly appreciate you? 

I would say that is the wrong question. Yes, we do crave appreciation and being seen for what we are, but it starts with yourself. Appreciate yourself first. And one way to do that is to create yourself every day in the person you want to be, regardless of how those around you see you. As you get better at this, you will think differently, you will see new opportunities, you will have the energy to act on them, and your circumstances will change. 

Stay focused

All the productivity gurus and spiritual gurus talk about the power of being focused. And for a good reason. Scrolling through your social media feed scatters your mind. Juggling too many projects increase the task-switching costs. Chasing too many topics does not allow you to go deep on any of them. 

Create the discipline of staying focused. Even if you don’t like your current job, stay focused. It builds a skill that will be priceless in all areas of your life. 

Staying focused also means choosing not to indulge in fear and doubt and worry. Choose courageous thoughts; choose creative thoughts. 

A side note about becoming a martyr 

That is not what I am suggesting in this article. I am not talking about self-sacrifice; instead, I am suggesting getting out of self-pity and allowing outside circumstances to determine your inner feelings and how you show up in the world. 

Ask powerful questions like:

  • what is needed from me at this moment?
  • how can I help in this situation?
  • whom can I connect? 
  • how can I better at this?
  • what is truly important now? 
  • how can I be generous today?
  • is what I am doing, and thinking serve my short and long-term goals? 

Still not using Log Files in your app?

Have you ever had to contact support for a web app or a plugin to fix a problem, and the first thing they ask is for full access to your web server so they can “debug” the issue? 

This request frustrates me to no end. 

It is unprofessional, and it is lazy. 

The reason support asks for this is so they can run tests and inspect the results on your LIVE server. If that makes you nervous, it should! How can you know that they will not accidentally mess with your customers’ data? Not to mention all the privacy issues that crop up as soon as you hand your keys to a third party with no control. 

A proper way to deal with providing support for your app or your plugin is to add logs—a log file journals the activity and the data passing through your code. Inspecting a good log file will almost always let you know what the problem is and where the problem is. When a customer calls you for support, you only need to ask for the log files, not the keys to the server. 

In my experience, a good log file creates a breadcrumb trail that documents the data flow and the branching decisions in your code. Ideally, inspecting the log file alongside your code allows you to precisely follow along and determine what was wrong, without even having to run any code. 

A common mistake is to be unnecessarily verbose while at the same time not documenting the branching decisions. Silently discarded errors and exceptions are the usual pitfalls, and close second are if/else branches where only one of them leaves in a mark in the log. 

Security and Privacy

Now that you understand why log files are a must, especially in a client-server situation (like all the web applications), you need to be careful not to store sensitive data into the log file. Don’t store passwords or credit card numbers, and unless absolutely necessary, do not store emails. 

If sensitive data is required for you to be able to rebuild the data flow, make that available under a specific “log level” that is only activated on request. And in some cases, the entire log system can be activated only when trying to debug a problem. With this approach, however, you lose historical data that you need to fix the problem.

Always provide a way for an admin to flush the logs. 

Rolling Over

I am an overly enthusiastic user of log files. Simply because they work, and they speed up the process of solving problems. But there is a mistake that I kept doing for far too long. That mistake was no automatic rolling of the log files. What that meant is that the logs grew and grew until they would eat up all the allocated disk space. 

Oopsy! 

When using log files, decide when a log entry is too old and have an automated mechanism to remove those logs. Rolling the log files once a month (log1, log2, log3, etc.) and removing the very old files is a useful approach. 

If you don’t currently use log files, what is your strategy to support and debug your application while it is running on the customer’s LIVE server? I hope you will not say: “get root access and hack away until I find the bug” 🙂

Staying on top of your email. One account to rule them all!

Why yet another email management article? 

I am writing this article because, in my work, I have met many people who still struggle with managing their emails, and I can suggest a reasonably simple solution. 

The problem

Online communication still requires an email address. From making purchases to setting up a subscription and staying in touch with your audience, you will need to use email

The wrong solution for this is to use your personal account for all situations. The main reason people use this is that it is convenient. There is one account to check, one password to remember, one email client, to learn to use. It is hard to argue against these advantages. But there are serious drawbacks as well. 

  1. You expose your personal email to spammers. The logic is quite simple: the more places you use an email address, the more likely that some spammers will find it. 
  2. It also becomes harder to keep track of email and categorize it based on purpose: subscriptions, business, personal, marketing, etc. Everything piles up in one big inbox. 
  3. There are some privacy concerns. Using the same email everywhere allows data tracking algorithms to follow you around and to infer some usage patterns that you may not want to be exposed. But even more fundamental than that, you may want to avoid online stackers and trolls by being very careful with whom you share your personal email. 

A better solution is to use different emails for different purposes. It is keeping things separate. While this solves all of the problems above, it creates a big hassle with having to check multiple email accounts, managing various passwords, and using different email clients. 

The Best of Both Worlds

If you make good use of auto-forwarders and filters, you can have the best of both solutions. 

With auto-forwarders, you collect all of the emails into one central account. (For advanced users I recommend POP3 pooling instead, as it is better when handling SPAM.) The best way to create forwarders is to use the “Forwarders” feature for your hosting provider or email provider.

The second part is to use filters into your main account, you categorize, label and organize the incoming email based on the email address it was actually sent to. E.g., email that was forwarded from the business email goes into the business folder, emails from the customer care address will go into a customer care folder, and so on. 

The way you choose to organize your inbox is up to you, but you now have the power to do so because even though all email arrives in your main inbox, you know where it came from. 

Now that incoming email is sorted out, how about outgoing? 

Most email services allow you to configure “aliases” that will hide your main account email. In effect, this will enable you to “Send email As…” The power of this approach is that you can also send all of your emails from your favorite client, as long as you use the proper “Send Email As…” when you need to communicate from a different email account. 

The Short Recipe

1. Create different emails for different purposes

2. Setup auto-forwards to collect all the email into your main account

3. Use Aliases/Identities/Send As features to send email from the main account but “as if” from a different account

4. Use filters in your main account to organize the incoming email

The Discipline

For this to work, you need to be disciplined and follow this process. If you are in a rush, you may be tempted to use your main account when someone asks for your email. It is best to have a “disposable” account on hand for this situation. An account that is already configured. This way, you will avoid the temptation to share your main email account because you can’t be bothered to set up a new email.

What other strategies do you use to keep spam out of your inbox and organize your email accounts? 

In a competitive world, adversity is your ally

I like to be comfortable. I like instant gratification and home deliveries. I like automation that makes my life easier.

But what is all this ease for? What will I do with it? With the extra time and the extra energy?

If I am smart, I will do something hard to do.

Leaning into comfort when it comes to your personal life may be a good idea, but when it comes to business, to creating value for your audience, all the low hanging fruit is gone. All that is left are the hard questions, the tough problems that everyone else shies away from.

You can look at this and conclude that “it is too hard!” or instead, you can conclude: “This is an opportunity to serve in a place with a big need and little to no competition.”

“If one can do it, you can do it, if no one can do it, you must do it” – Shajjath Aleem

There is something to be said about a problem that is too big. That is also a trap as it lets you off the hook. If the problem is so big, nobody really expected you to keep your promise and solve it. It is just another way to procrastinate.

Look at your resources, consider your will power, your energy, and your passion and choose a hard problem that you can actually solve.

Credit: Seth Godin – The Dip

Just Quit!

Or better yet, don’t even start!

Quitting has a bad reputation, but it can be one of the best decisions you can make. 

As children, and later as students, we were often being told to “not be lazy”, and people who are busy or hard-working are applauded. 

But this advice is flawed in a subtle but dramatic way. Busy work is not the same as focused work. It is entirely possible to be busy all day and not accomplishing anything of importance.

The way we were taught in school was in 50 minutes blocks of something, and then we would be interrupted to do something else. 

The logic, they say, is that children get bored with one subject, and this switching adds diversity to the school day. But what it actually does is prevents anyone from going deep on any one topic. 

We carry this habit of “multi-tasking” into our adult life, and working on multiple projects at a time, doing a tiny bit of each day. 

I used to think that doing multi-tasking, I was productive, but I was just busy.

The Cost of Task Switching

This cost became extremely obvious to me when working on complex software projects. Just getting into the context of thinking where I left off would take up most of the hour, and then I’d have to switch to something else. My mind got an excellent workout, but my output grew at snail speed. 

Repeated task switching does not allow you to go deep and to build expertise. And it costs you time that will add up. It is a perfect recipe to become and stay average

The solution is to quit! Or better yet, don’t even start! 

If you don’t have it in you to finish this project or become the best at what you do, quit and choose something else. Don’t quit soon, quit now. Ignore the sunk costs: “but I’ve already invested so much in this!”

Quit, but quit strategically. Don’t become a serial quitter. Instead, quit so that you can focus on the projects you want and can finish. So you have the time and energy to become the best in the world at what you do. 

Quitting is especially important if you find yourself on a dead-end path. A dead-end path is different from a plateau. A plateau can be overcome; a dead-end cannot. Every second you stay on a dead-end path is a second wasted that could be spent on the other path, which would get you more fulfillment and personal growth. 

Dead-end paths could be a business that is now obsolete and dying, a job where you’ve become stuck in a rut, a project that is not moving forward despite your best efforts, or a relationship with no potential for growth. 

A quick aside about “The best in the world.”

Becoming the “best in the world” can feel very challenging until you realize that “the best in the world” does not mean “the best on the planet”. You get to choose and define your world, your market, the people you would like to delight, to be “the best” for. And you can grow from there. 

I will end with a quote from the book that inspired this article:

“Quit the wrong stuff.
Stick with the right stuff.
Have the guts to do one or the other.”

The Dip – by Seth Godin

My every day list of tools

Following is the list of tools I use to make my life easier. 

As a caveat, I am mostly active in the online software environment, so this list is heavily skewed in that direction.

1. Total Commander – geeky tool for file management. Features a “side by side” layout, making it easy to know what the source and what is the destination for what you are doing. Unlike the “copy/paste” concept in Windows Explorer. It has other neat features like super quick preview and edit capabilities.

2. FileZilla – Free FTP client – pretty basic – but it works. 

3. Sublime – my go-to text editor. It has replaced NotePad++ because it has a more polished UI that is easier on the eyes. It has syntax highlight and a neat feature that shows you what has changed in the document, even if you don’t use a versioning system. 

4. Photoshop – for my photo editing and image creation on Social Media and sometimes for personal photographs. 

5. Voice Metter Banana – virtual sound mixer for Windows. It allows me to record a call, increase the volume of the people on the call, and mix in music when needed

6. GoldWave – a sound editor, used mostly to clear noise from audio, or for trimming. Sometimes I use Audacity – depending on what I am trying to do.

7. Grammarly – AI-powered spell checker to make sure my writing is not filled with typos and grammar issues.

8. Slack – manage project communications

9. Evernote – taking notes, research, learning, todo list. Its beauty is that it syncs on all of my devices, has tags, can search text into an image, and is fast!

10. Zoho Docs – alternative to Google Docs – online solution for spreadsheets and writing documents

11. Asana – for project management 

12. Putty – SSH client for windows. Used for server management.

13. rsync – backup utility for my websites – creates versioned backups fast.

14. PhpStorm – long time favorite Php IDE – I like everything from JetBrains. They’re the best when it comes to creating software developer tools 🙂

14. ManyCam – virtual camera for Zoom calls – used to add titles, color correct my image, add filters and looks as PRO as possible 

15. Cmder – console for Windows (replacement for cmd) – mainly because it supports colors, making debugging console applications much easier. It also uses much cleaner fonts. Not sure when Windows will get a decent default console app.

16. Fastmail – email provider that respects my privacy

17. ESET – internet security: antivirus, firewall, sandboxing, and all that jazz. I’ve been using this for ten years now, and I am a happy customer!

18. Duplicati – Windows space-efficient backup tool based on the Linux “duplicity” tool. It saved me one from a complete HDD failure. 

19. Dropbox – cloud storage and sharing among devices.

20. Git and GitHub – software versioning system.

21. Figma – wireframes, mockups, design.

22. Google Calendar – mostly for reminders and sometimes for planning ahead skill development. 

If you know better, faster, and more useful alternatives for these tools, let me know in the comments below. I am always looking to expand my arsenal! The categories I care about are productivity, software development, and design.