Mind, Body and Spirit

The only thing in this universe that we have control over is ourselves. Speaking another way, we have the full power on ourselves. For things to change you have to change yourselves, people said.

Yeah! I know I have full power on me. I have to change me (I wrote me on purpose). But, what exactly should I change/improve/focus on? How do I get started? To get started, we need more concrete detail than a general statement.

I am pretty sure that many people have heard about that statement. However, they have not still made any progress on their life. Why? Maybe, yes just maybe, they have not had a clear idea of what it means, what they should start with. Therefore, they might choose to know and let it go as any other events in life.

Since I have started a new journey of Personal Development (sometimes I called it Personal Excellent) some years ago (around 3 years). I have read books about the topic, applied and experienced in my daily life. I have made a good progress. Which encourages me to try more, experience more and as a result, share more. Sharing is a part of Personal Development.

A human being has 3 parts: Spirit, Mind and Body. They are all equally important. Do not neglect any.

I am sure there are books talking in detail about them. However, I choose to explain them in the way it makes sense to me; in the way I understand them.

Spirit

It is our mental assets. Everyone has their own relationships. We have parents, children, spouse, friends, coworkers, classmates, … Some people have plenty of good ones. Whereas some have a few or none.

To leave a good life, we have to built up our mental assets. As any other asset, mental asset can come and go if we do not build/protect it. I have a few suggestions

  1. Assert your current relationships. Simply write them down will make a huge impact on your thinking. Not believe me? Try it.
  2. Priority the relationships that you value most.
  3. Focus on improving them. Sometimes a phone call might help.

There are things that make us feel better such as favorite songs, movies, …

It is our attitude on life. Some looks at life with an anger eye. For some people, everything is so annoying. They hate everything. They have a pessimistic opinion. But, there are people who see life joyful. Every event is a gift, no matter how bad it is.

You do not have to cheer for a sad event. You do not have to cry for a good event, either. Develop yourself to have the right attitude on each event.

Same event, different reactions, choice is yours.

Mind

It is our intelligent assets. It is our knowledge, our skills. Unfortunately, many people that I knew, spoke to do not care much about this (Yeah, maybe I have not met enough people).

My favorite question that I usually ask myself is “what have I learned since the last year?“. In any job interview, I asked candidate the same question. Sometimes, I felt one year was too short, I asked them: what have you learned since graduated from the university?. Not many said it fluently.

What have I learned since the last year?

Are you dare to ask yourselves that question?

You should have a plan for your mind. Otherwise, you will stay behind. We are leaving in a fast changing age. The information is on over the internet.

Some might say “I do not have time and money to learn.”

Oh really! Are you sure?

Body

It is our health (not the body building part 😛 ). It is not the good looking appearance (of course if it is good, then perfect). With the fast growing of internet, mobile devices, IoT, everyone seems too busy.

I do not have time to exercise“, they claimed. If a 70 years old, laying on the bed (or hospital) says it, I believe.

We can build up our Spirit, improve our Mind anytime. But we cannot do the same with Body. The body has time constraint. Therefore, you cannot delay it for tomorrow. If you delay it too long, you will reach “I do not have time” soon. In other word, it is too late.

Suggestion? Yes. Do whatever it takes to build a habit of improving your Body (the health) NOW. Keyword is NOW.

 

Everyone is unique. Each has their own life, their own way of living. If we choose to think that we are victims of circumstances, then we have no power to improve. But if we choose to think that a human being has 3 parts Spirit, Mind and Body; and we have full power on them, that we can control and improve them; we will make a huge difference on our life. In fact, circumstance is the result of our actions. You reap what you sow.

Spirit, Mind and Body! I hope the post will give your some ideas to think over the weekend and get you started if you choose to. Once you choose to do it, you will find out how to do easily.

Have a nice weekend!

My Thoughts Unit Test Is an Art

It started with my Unit Test Mock and State Live Together. My friend asked me to explain a bit more about my statement

Unit Test is an art.

 

It was such an interesting question when he asked: Why do you have this statement?

He made a good point. I promised to give him my thoughts on it.

Things have no meaning unless you label them.

“What UT is” does not matter much. What you think it is matters.

Unit Test (UT) is Code

First and foremost, UT is code. We write a piece of code to test our production code. When comes to code, we have to

  1. Design
  2. Consider best practices
  3. Consider maintainability
  4. Decide what tools to use
  5. … Thousands of other things

As a developer, I say: Code is an Art.

Point of Views

When working in an organization, when talking about Unit Test, each level has a different view. I will give some of my observations. Please notice that I do not claim anything here. I give my observations.

Non – Technical Manager

He assumes UT is a piece of cake, that we should write UT when there is time.

Problem: There is always NO time.

Half – Technical Manager

Maybe he knows some about UT. He knows the important of UT. He also knows the difficulty of writing UT. Regardless of those he still wants to push for code coverage, and think UT is kind of easy.

Developer

I have not seen many developers have the right mindset about UT. And depending on the technical skill, their UT code quality is less than or equal the production code.

I have not seen many developers study UT seriously. To them, it is a nice-to-have thing.

Because of that mindset, their UT code is a maintenance nightmare. Think about when you have to change your production code; when you have to add new code.

Some developers think UT is a joke, a waste of time.

QA

Here is a funny part. Sometimes I heard a story that in a company the manager expects QA to write UT. Oh God!

 

Many parties just forgot (or pretended to) the fact that UT is code.

When people come to an Art gallery, looking at the same picture. Will they say the same thing? I do not think so.

So What?

People look at things depending on their point of views in life. The same event two people might have different opinions. Sometimes, in order to improve something, we simply need to change our view.

Who should change their view? Developers, in my opinion. Developers get the best advantages out of UT.

Here are a few things I suggest you, developers, to begin with

  1. Do a serious research about UT: What is it? What is it for? What are the best resources to learn it? …
  2. Start today build the habit of writing UT. The key word is TODAY.
  3. After a week, review all UT you wrote. You can ask an experienced developer to give you advice.

And you should not

  1. Study “How to” books at the beginning. “How to” are good only when you know what and why.
  2. Start TOMORROW.

 

Final Thought

What you think about UT will determine how good you are as a developer. When reading this post, some might think of TDD. But NO. I am not talking about TDD. I highly recommend you start small.

By no mean, I am a UT expert. I am just trying to make things better every day.

Want to learn more about UT? This The Art of Unit Testing by Roy Osherove is a good resource.

Where Is Your Virtual Library? I Asked in a Interview Session

In any interview sessions, I usually ask candidates about

  • Books they read
  • Famous authors, developers they know
  • Sites they visit most.
  • …..

I call them the virtual library. Some candidates were confused, surprised by my question. Guess what? Most of their answer were close to nothing. They did not have it. They could not name any books, authors, or developers.

“You said you love technologies. How did you learn new stuff?”, I asked. I got many of these

  • I learn from doing projects, doing real tasks in my company
  • When I need something, I google. (Luckily they still remember there is a website called google).
  • I read some code examples….

Why Did I Ask?

First, I know that books, blogs, sites, … are not the only ways to learn technologies, learn new skills. But they are essential.

The mind is a central factory. It controls every aspect of your life including your programming skill. Just like your body, the mind needs food. What is the food of the mind?

  1. Information
  2. Wisdom
  3. Concept
  4. Good thinking habits from others

There are more. But you get the idea. The mind needs food.

The mind needs food.

When I want to hire a developer, I need to know how he fed his mind.

When you come to Google and ask a question, you must know what to ask. And sometimes, you must know why you ask.

Reality

If one consist that they do not need to enrich their virtual library, ask yourselves these questions

  • How are you doing as a developer?
  • What is your improvement since last year, last 3 years?
  • Have you ever asked why a piece of code works the way it works?
  • Have you ever asked what and how to improve a piece of code?

To many developers, the unit test concept is not new. But how many people actually learn to make a proper unit test? a good unit test? If you are asked to improve your unit test skill, what do you do?

Have a Nice Day

A human being is unique. Our body and mind both need food. You feed them well. They work best for you.

If for some reasons, you have not read books before, you should give it a trial. Pick a technical book (because you are a programmer). Read it.

You cannot know what works for you unless you try it.

Good luck and be a great developers, my friends.

Do Not Trust Your Memory

Every day we come to work. We check out our schedule. We join our meetings. They are normal sequences, behaviors. We have done over and over again.

Meetings? There are many meetings during our work. Some of them are meaningful. While others are a waste of time. Some people hate meetings …

How many people remember what have been discussed in a meeting?

I have seen this pattern in my daily work

  1. People come to a meeting room. Some might even not know meeting’s topics. Sad but true.
  2. They sit on a chair, listen to the speaker.
  3. The meeting ends. They leave.

So far so good. A typical meeting. Except, many of them do not remember what being discussed, agreed in that meeting.

Why?

They had thought that they would remember.

Don’t Trust Your Memory

I, once, read from a book that statement. Don’t trust your memory. If you want to look in the “why”, then ask google.

Don't Trust Your Memory
Don’t Trust Your Memory

There are so many researches about it.

And here is my most favorite author, Mr. Jim Rohn.

Jim Rohn Quote
Jim Rohn Quote

Take Notes

There is an easy solution: Take notes. You can bring your paper/pencil or electronic devices to meetings; you take notes in ways you like most.

But there is an ugly truth. I still have not seen people taking notes in a meeting. They still come to meeting in bare hands. I kept asking myself, why do they not take notes? Maybe they do not see the values out of it.

Value. Yes, human works base on it. Let’s try to find values from my point of view.

A Tool to Remember and Review

Once we write things down, we increase the chance to remember them. That is an obvious fact. Think about the old days when you were in school. You wrote what teachers said. You took notes on your books.

Meetings might be boring. But with a notebook in our hands, we can review what we have noted down. We can jot down our new ideas, thoughts, or even drawing some fun images.

A Skill

Taking note is a crucial skill. However, it is not easy at all. People have to learn to master it.

Image we are in a meeting room, the speaker keeps talking, information flows, there are papers and a pencil in our hands, how will we start writing?

Professional

Not all meetings require taking notes. I do not mean that at all. We, as a professional, know what meetings are important. We, as a professional, must show our professionalism. We must try to put ourselves in the speaker’s shoes

We must try to put ourselves in the speaker’s shoes. One day, you are that speaker. You are the one who sends messages. And they just get lost. Feel that pain and show respect NOW.

How To Start?

Very simple folks!

  1. Buy a notebook (or some piece of paper) and a pencil.
  2. Bring them to every meeting you attend.
  3. Write something down. Do not care too much about what you write.
  4. If you do not know what to write, draw a circle, a face, a line. Just make sure it is different than before the meeting.

Soon you will know what to write. It is a skill. Skills are gained by practice.

Don’t you believe me? I was not born with the ability to write this post. I have been a terrible writer as well. Guess what? It does not matter. As far as I practice, I get better every day.

 

Empower Your Reading with Kindle (Amazon Books)

I have been reading with my Kindle; with books bought from Amazon for 2 years. The original reasons were to improve my knowledge and English skill. However, there was a problem back then. As a reader, I highlighted and took notes while I read directly on Kindle books. The problem was that I could not find anywhere to look at them again. A bigger problem was that I had not dug deep enough into the problem.

There are always solutions to any problem. I have found out at least 2 ways to solve that problem. I hope that if anyone has the same problem. This post will save you a bit of time. If you have not started reading yet, I hope this will give you a small motivation to start.

Note: You have to have a Kindle, and buy books from Amazon.

Amazon Kindle Site

Amazon has a wonderful built-in site for your Kindle Amazon Kindle Highlights Let’s take a look at mine

Amazon Kindle Highlights
Amazon Kindle Highlights

Those are highlights and notes from the book “Grammar Girl’s Punctuation 911: Your Guide to Writing it Right (Quick & Dirty Tips)“. I just read it and I can review my notes anytime.

However, there is a small issue. It is a one-page for all highlights and notes. Which makes it very hard to look at an individual one. Of course, there is a way to find it.

You can use the search feature on the top right corner. After locating to the book you want to view, click on it. Here it is

Your Book Detail
Your Book Detail

Click on “View Your Notes & Highlights” button. Enjoy your notes and highlights

You Notes & Highlights
You Notes & Highlights

Goodreads

Many readers have been using Goodreads to manage their reading. Goodreads was acquired by Amazon. Therefore, it is another good option. Once you have an Amazon account, use it to log into Goodreads. The kindle also has Goodreads built-in. Make sure you activate Goodreads in your kindle as well. Once setup, let’s take a look at Goodreads.

Goodreads Notes & Highlights
Goodreads Notes & Highlights

In term of functionality and usage, they are identical. They offer

  • Review your notes and highlights
  • Allow you to add more notes, or add notes for your highlights, notes.
  • Encourage your reading. Empower your knowledge

 

Personally, I prefer to use Goodreads. Because it is also a reading social network site. However, the Amazon Kindle has a huge benefit with a “Popular Highlights” section for each book. That section gives you access to other readers’ mind. They read the book and thought those were important to them. You, as a reader, do the same; and enjoy the benefit they offer.

Have a good day and Enjoy your reading!