Cat Got Your Tongue?

If the thought of public speaking scares you, you’re hardly alone.  A whopping 74% of adults fear public speaking, and in fact, it is the number 1 fear.  More people actually fear public speaking than death!  While you may be able to avoid public speaking most of the time, many people find that at some point in their lives, they’re forced to give a presentation.  If you’re one of them and fear an upcoming public speaking engagement, here are some strategies to put you at ease:

  • Prepare, Prepare, and Prepare Some More.  You’ll feel much more comfortable about your upcoming speech if you are well-prepared.  Rather than trying to do it all at the last minute, write your speech in advance and practice giving it a number of times.  This will greatly increase your confidence level.

  • Visualize your Success.  Visualization has been shown to work wonders on performance outcomes.  For instance, research has shown that people who merely envisioned themselves successfully making free throws improved their free throw percentages significantly, without even spending more time on the basketball court.  Spend some time imagining everything going well and it is far more likely to do so.

  • Avoid Negativity.  You may be inclined to allow your mind to run wild with negative thoughts, “I’ll probably have a heart attack while I’m in the midst of presenting,” or “This is bound to go poorly.”  Rather than dwell on the negative, remind yourself of past occasions where you confronted a challenge and did well.  For example, you might say something like, “I’ve spoken in public before and my worst fears never materialized,” or “Even the best public speakers get nervous.  These feelings of anxiety are no big deal and easy to ignore.”

  • Engage in Deep Breathing.  Slow, rhythmic deep breathing can be very useful for quieting your nerves.  Spend some time taking deep belly breaths prior to your speech and whenever the thought of public speaking distresses you.  By breathing in this way, you’ll find it much easier to relax.

Object-Oriented Programming: Generic Mechanism in C++

One of the most common and fundamental goals in programming is to avoid copying code and to reuse code wherever that's possible.  One of the ways in which this is demonstrated is the generic mechanism (implemented differently in various programming languages).  The point of generic programming is writing code which is independent of type; what we want to achieve is creating a "blueprint" for a class or function which we can later use multiple times.  This is especially useful when it's combined with operator overloading, and often used for implementing various containers (like the stack, which will be our example).

We will be talking about two types of templates in C++ - function templates and class templates (C++14 also introduced variable templates).

Function templates behave just like regular functions, with the exception that one function can be used many times for different types.  For example, we can define a function template for addition, and then use it for integers, floating point values or even objects of our Complex class.  Of course, for this to work, we also have to provide a way to add user-defined types, and operator overloading is the way to do that.

The format for defining function templates is the following:

template <class identifier>
function_declaration;
            

template <typename identifier>
function_declaration;
            
Both of these declarations do the same thing.  The second one was introduced to avoid confusion (since the parameter doesn't need to be a class - it can also be a primitive type like an integer).  Let's see an example:
template <typename T>
T add(T arg1, T arg2)
{
   return arg1 + arg2;
}
Now, in order to call the function, we just need to specify the type:
int a = 10, b = 4;
int c = add(a, b);

Complex c1(1, 2), c2(2, 0);
Complex c3 = add(c1, c2); //this can only work if we have overloaded the + operator for the Complex class

 

Class templates are usually used for implementing containers, and they provide a specification for generating classes based on parameters.  We define them like this:

template <typename identifier>
class_definition;
Let's write an example of a generic stack class:
template <typename T, int CAPACITY>
class Stack
{
private:

int t;
T s[CAPACITY];

public:

Stack()
{
  t = -1;
}

int empty() const
{
  return t < 0;
}

int full() const
{
  return t == CAPACITY - 1;
}

T top() const
{
  return s[t];
}

void pop()
{
  t--;
}

void push(T element)
{
  s[++t] = element;
}
};

/*declaration examples*/
Stack<char, 256> stack1;
Stack<int, 1024> stack2;

 

What’s Your Learning Style?

Everyone learns differently.  That’s why you may have struggled to play soccer while your brother seemed to pick it up very naturally.  Over the years, experts have determined that there are 7 different types of learning styles.  Read our summary on the major styles, courtesy of LearnDash, to determine which one you are or head over to learning-styles-online.com to take a free test on the topic:

 

  1. Visual.  Are you an expert at map reading?  You may just be a visual learner.  They tend to prefer pictures, images, and diagrams.

  2. Physical.  This might be the aforementioned brother’s style of learning.  Physical learners learn by doing and may draw diagrams or use physical objects to assist with their learning.

  3. Aural.  Do you have a knack for song lyrics?  Aural learners benefit from hearing information whether it’s an instructor speaking, a recording, or just that new tune on the radio!  You can think of this type as learning through the 3 R’s: rhythm, rhyming, and recordings.

  4. Verbal.  This person enjoys words when learning.  According to LearnDash, “they make the most of word based techniques, scripting, and reading content aloud.”

  5. Logical.  These are “big picture” folks.  They like to use logic to understand things and often want to know the “why” behind things.

  6. Social.  Social people prefer to learn in groups.  They benefit from learning with other people, for instance, in a classroom setting.

  7. Solitary.  If you prefer self-study over groups, you may be a solitary learner.  This type of learner enjoys working alone and finds that this is their preferred method of picking up new information.

 

Most people probably overlap in various categories.  However, if there is one category that you have identified as your primary style, make an effort to use that method when possible.  It will help you to ultimately retain more of what you learn. 

Want to Be More Effective? The 7 Habits of Highly Effective People

The 7 Habits of Highly Effective People has sold more than 25 million copies worldwide in 40 different languages.  Many people have found the book enormously useful at helping them to achieve their personal and professional goals.  If you’d like to be more effective—and don’t have time to read the book in its entirety—read on to glean some of its key concepts as summarized by FranklinCovey:

 

  1. Be Proactive.  Take responsibility for your life.  Realize that you have the freedom to choose your thoughts and feelings.  When you face obstacles, address them proactively rather than burying your head in the sand.

  2. Begin with the End in Mind.  Determine what you would like to achieve i.e. when you’re dead, what do you hope that people will say about you?  Create a personal mission statement, focusing on who you want to be and what you want to accomplish in life.

  3. Put First Things First.  Tackle your most important priorities.  There are plenty o f time-wasting activities that can keep us from achieving our goals. Prioritize your time by devoting it to those things that are most important to you.

  4. Think Win-Win.  Work well with others and seek to be cooperative, rather than competitive.  Strive for mutually beneficial solutions.

  5. Seek First to Understand, Then to Be Understood.  Covey says that most people tend to work on developing their writing and speaking skills, while ignoring their listening ability.  To become more effective, he encourages people to listen carefully to gain a full understanding of what others are saying.

  6. Synergize.  Synergy occurs when the whole is greater than the sum of its parts (for example, 1+1=3).  Covey encourages his readers to innovate and problem solve with others who have different points of view to achieve maximum synergy.

  7. Sharpen the Saw.  Invest time and money on yourself so that you are continuously improving.  Do this in all areas of your life—physical, spiritual, mental, and emotional—to be the most effective person you can be.

Thought For The Day

“The most beautiful thing we can experience is the
mysterious. It is the source of all true art and science.”

Albert Einstein