Archive for October, 2011
Leadership Exposed: Things You Thought You Knew About Leadership
Much has been written about leadership: rules, pointers, styles, and biographies of inspiring leaders throughout world history. But there are certain leadership ideas that we ourselves fail to recognize and realize in the course of reading books. Here is a short list of things you thought you knew about leadership.
1. Leaders come in different flavors.
There are different types of leaders and you will probably encounter more than one type in your lifetime. Formal leaders are those we elect into positions or offices such as the senators, congressmen, and presidents of the local clubs. Informal leaders or those we look up to by virtue of their wisdom and experience such as in the case of the elders of a tribe, or our grandparents; or by virtue of their expertise and contribution on a given field such as Albert Einstein in the field of Theoretical Physics and Leonardo da Vinci in the field of the Arts. Both formal and informal leaders practice a combination of leadership styles.
· Lewin’s three basic leadership styles – authoritative, participative, and delegative
· Likert’s four leadership styles – exploitive authoritative, benevolent authoritative, consultative, and participative
· Goleman’s six emotional leadership styles – visionary, coaching, affiliative, democratic, pacesetting, and commanding.
2. Leadership is a process of becoming.
Although certain people seem to be born with innate leadership qualities, without the right environment and exposure, they may fail to develop their full potential. So like learning how to ride a bicycle, you can also learn how to become a leader and hone your leadership abilities. Knowledge on leadership theories and skills may be formally gained by enrolling in leadership seminars, workshops, and conferences. Daily interactions with people provide the opportunity to observe and practice leadership theories. Together, formal and informal learning will help you gain leadership attitudes, gain leadership insights, and thus furthering the cycle of learning. You do not become a leader in one day and just stop. Life-long learning is important in becoming a good leader for each day brings new experiences that put your knowledge, skills, and attitude to a test.
3. Leadership starts with you.
The best way to develop leadership qualities is to apply it to your own life. As an adage goes “action speaks louder than words.” Leaders are always in the limelight. Keep in mind that your credibility as a leader depends much on your actions: your interaction with your family, friends, and co-workers; your way of managing your personal and organizational responsibilities; and even the way you talk with the newspaper vendor across the street. Repeated actions become habits. Habits in turn form a person’s character. Steven Covey’s book entitled 7 Habits of Highly Effective People provides good insights on how you can achieve personal leadership.
4. Leadership is shared.
Leadership is not the sole responsibility of one person, but rather a shared responsibility among members of an emerging team. A leader belongs to a group. Each member has responsibilities to fulfill. Formal leadership positions are merely added responsibilities aside from their responsibilities as members of the team. Effective leadership requires members to do their share of work. Starting as a mere group of individuals, members and leaders work towards the formation of an effective team. In this light, social interaction plays a major role in leadership. To learn how to work together requires a great deal of trust between and among leaders and members of an emerging team. Trust is built upon actions and not merely on words. When mutual respect exists, trust is fostered and confidence is built.
5. Leadership styles depend on the situation.
How come dictatorship works for Singapore but not in the United States of America? Aside from culture, beliefs, value system, and form of government, the current situation of a nation also affects the leadership styles used by its formal leaders. There is no rule that only one style can be used. Most of the time, leaders employ a combination of leadership styles depending on the situation. In emergency situations such as periods of war and calamity, decision-making is a matter of life and death. Thus, a nation’s leader cannot afford to consult with all departments to arrive at crucial decisions. The case is of course different in times of peace and order—different sectors and other branches of government can freely interact and participate in governance. Another case in point is in leading organizations. When the staffs are highly motivated and competent, a combination of high delegative and moderate participative styles of leadership is most appropriate. But if the staffs have low competence and low commitment, a combination of high coaching, high supporting, and high directing behavior from organizational leaders is required.
Now that you are reminded of these things, keep in mind that there are always ideas that we think we already know; concepts we take for granted, but are actually the most useful insights on leadership.
The New Sprint WiMax; The Newest and Best Broadcast System For Smart Phones?
A normal WiFi local area network (LAN) is good for sending and receiving signals for laptops, computers, cell phones and smart phones anywhere from one to three hundred feet or so from fixed-base routers (LAN IEEE 802.11standard), that broadcast at 2.5 GHz. The problem associated with the 802.11 standard routers for LANs is that a router is needed at variable points in a large home, let alone at large businesses, or outdoors where there may be more static interference. So, what is Sprint WiMax, and what does it offer?
Sprint WiMax offers up to 10 Mega-Bits per second (MPS) at up to 10 Kilometers (KM) from the signal generator of clean, fast and uninterrupted signals. WiMax could be considered something akin to a WiFi LAN on steroids, at IEEE 802.16 standard, WiMax allows customers a total and fast LAN wireless broadband access anywhere within 30 miles of a fixed-base station transmitter, and from three to five miles of a portable, mobile station transmitter.
The drawback of using a WiMax signal is that in city environments, the line-of-sight signal strength can be diminished from the 10 MPS at 10 KM that the Sprint WiMax promises in rural areas, to less than 10 MPS at 2 KM due to signal interference from highrise buildings, other signal generators, and other causes of line-of-sight signal interference in urban areas.
The formation of WiMax was realized as a partnership with the top internet and smart phone service providers, with the goal in mind to set 4-G broadband service globally available for wireless connectivity. With over 500 service providers already signed up, WiMax has the potential to be the biggest smart phone service provider, making their money the honest way, with full accountability and a service based on customer satisfaction. And when customers no longer need to find a wall jack to surf the web, check on email or chat with friends, they tend to be so happy that they spread their trust of, and faith in the brand by word-of-mouth advertising, the best advertising network available to mankind.
Aside from the considerable distances from relay towers that a customer can get a strong signal on thier smart phones and laptops with, WiMax enables extremely fast web browsing, and supports the Android platform, making way for all Google/Motorola future endeavours, above and beyond the Droid and Devour smart phones currently taking the market by storm. But WiMax does not end there, all 3-G and 4-G, as well as cell phone service providers can jump on board and use the system, for nominal fees, and give their customers the bigger umbrella and faster speeds of coverage that the WiMax platform provides.
WiMax does not discriminate against brands or services; any brand or service is welcome to join their total umbrella service. However, the best scenario for the optimum use of the WiMax system is three to four carriers per WiMax signal with no obstructions in the line-of-sight from the relay towers that generate the signal to the laptops, cell and smart phones that make use of the signals.
So far, Sprint and Clearwire are using the WiMax platform, and Intel and Samsung have signed on for setting their handheld devices to WiMax standards, along with many other, less known handset manufacturers. If you want to use the WiMax system, and are in the market for a new 3-G or 4-G smart phone, your best bet is to ask if the phone that you are interested in can be used on the WiMax system.
Shop smart, shop informed.
Type Casting Operators in C++
C++ Operators – Part 6
Introduction
This is part 6 of my series, C++ Operators. Casting means changing the object type of an operand to another; you need operators to do that. In this part of the series, we look at C++ type casting operators. We first look at casting with fundamental types. After that we look at casting with instantiated objects. Instantiated objects are objects created from classes.
Note: If you cannot see the code or if you think anything is missing (broken link, image absent), just contact me at forchatrans@yahoo.com. That is, contact me for the slightest problem you have about what you are reading.
Implicit Conversion
You can convert one type of fundamental object to another type implicitly. You do this using the simple assignment operator. The following code illustrates this:
#include <iostream>
using namespace std;
int main()
{
float hisFlt = 23.67;
int myInt = hisFlt;
cout << myInt;
return 0;
}
The first statement in main initializes a float object (hisFlt). The value of this float object has a decimal part. The second statement in main assigns the float object to an int. This is implicit casting, because no casting operator has been used. The myInt object now holds an int whose value should be the same as the value of hisFlt. You still have two objects, each with its value and after the conversion, the values in the two objects should be the same.
Well, with implicit conversion (type casting) there may be loss of precision. The value of myInt is actually, 23 without the decimal part; an integer can never have a decimal part.
You can cast fundamental objects using implicit conversion (simple assignment), but you may lose precision depending on the nature of the operands involved on either side of the assignment operator.
Implicit conversion has the disadvantage that you are still using the simple assignment operator, and in this case the meaning of the simple assignment operator is modified. To avoid this disadvantage you can use explicit conversion (see below).
Explicit Conversion
Explicit conversion does the same thing that implicit conversion does but this time you use parentheses to indicate that the casting is explicit. With explicit conversion you still use the simple assignment operator, but its meaning is not modified; it does the simple assignment. After the assignment operator, the second operand is preceded by the new object type envisaged. On the right side of the assignment operator you can put the new object type in parentheses or you put the second operand in parentheses. The following code shows the case where the new object type is in parentheses:
#include <iostream>
using namespace std;
int main()
{
float hisFlt = 23.67;
int myInt = (int) hisFlt;
cout << myInt;
return 0;
}
Note the second statement in main. The following code shows the case where the second operand is in parentheses:
#include <iostream>
using namespace std;
int main()
{
float hisFlt = 23.67;
int myInt = int (hisFlt);
cout << myInt;
return 0;
}
Note the second statement in main. With explicit conversion, you still have loss of precision depending on the nature of the operands on either side of the assignment operator. The output of the above two code samples is 23 without the decimal part. The explicit conversion works just like implicit conversion, but this time parentheses are used to indicate that casting is taking place, and the meaning of the assignment operator is not modified. Always remember that both implicit and explicit conversions can have loss of precision in the same way.
When you want to cast objects of fundamental types use implicit or explicit conversion casting. What about instantiated objects? For this, use the casting operators given below. You need basic knowledge in C++ Object Oriented programming to understand the rest of the article. If you do not have that knowledge, then read the series I wrote titled, Object Oriented Programming in C++. To reach the series, type the title and my name Chrys in the Search Box of this page and click Search.
dynamic-cast
The dynamic-cast operator is an operator that is used to cast a derived object to a base object. This operator works with pointers (and references) to both objects. The following code shows how a derived object is cast into a base object.
#include <iostream>
using namespace std;
class TheBase
{
public:
void bMthd()
{
cout<<”I am of the base”;
}
};
class TheDerived: public TheBase
{
public:
void dMthd()
{
cout<<”I am of the derived”;
}
};
TheDerived dObj;
TheBase *bObjPtr;
int main()
{
bObjPtr = dynamic_cast<TheBase*>(&dObj);
return 0;
}
In the code, you have the base class described. Then you have the derived class described. After that you have a declaration statement that instantiates an object for the derived class. Next you have another declaration statement that instantiates an object for the base class but with a pointer. At this point, you have a derived class object identified by an ordinary identifier (without the * or & operator). You also have a base class object pointed to by a pointer.
In the main function the dynamic_cast operator is used. It casts the derived instantiated object to the base instantiated object. The base object is now a converted form of the derived object and no longer what is was.
The dynamic_cast operator uses the pair of angle brackets and parentheses. In the parentheses you have the address of the source object (derived object). In the angle brackets you have the pointer type specifier of the target object (base object). The return value received at the left side of the simple assignment operator, is the pointer (address) to the converted object. In the dynamic_cast statement above, bObjPtr would now be pointing to a copy of the derived object converted, and no longer whatever it was pointing to. At the end there are two objects, as they were at the beginning. The difference now is that bObjPtr is no longer pointing to whatever it was pointing to before. It is now pointing to a copy of the derived object converted.
In simple terms the syntax for the dynamic_cast operator is:
baseObjPtr = dynamic_cast<baseClassName*>(&IDOfDerivedObj);
You can now use the converted derived object (base object pointer) as you would use the base object. The following code illustrates this:
#include <iostream>
using namespace std;
class TheBase
{
public:
void bMthd()
{
cout<<”I am of the base”;
}
};
class TheDerived: public TheBase
{
public:
void dMthd()
{
cout<<”I am of the derived”;
}
};
TheDerived dObj;
TheBase *bObjPtr;
int main()
{
bObjPtr = dynamic_cast<TheBase*>(&dObj);
bObjPtr->bMthd();
return 0;
}
Question: With the conversion of fundamental types there can be loss of precision. Is there similarly, a loss of member with the dynamic_cast operator that converts derived object to base object? Yes there is.
Each of the above two classes has its own method. The base class method is bMthd() but the derived class method is dMthd(). The following statement will not work:
bObjPtr->dMthd();
This confirms the loss of members from derived to base class as the conversion takes place.
static_cast
The static_cast operator can be used to convert a base class object to a derived class object. It works using pointers (and references) to the base and derived objects. Know that the static_cast operator is not as reliable as the dynamic-cast operator. Its syntax is the same as with dynamic-cast, but this time, the positions of the pointers (references) are inter-changed, since you are converting from base to derived and not derived to base. The following code illustrates the use of the static_cast operator:
#include <iostream>
using namespace std;
class TheBase
{
public:
void bMthd()
{
cout<<”I am of the base”;
}
};
class TheDerived: public TheBase
{
public:
void dMthd()
{
cout<<”I am of the derived”;
}
};
TheBase bObj;
TheDerived *dObjPtr;
int main()
{
dObjPtr = static_cast<TheDerived*>(&bObj);
dObjPtr->dMthd();
return 0;
}
In simple terms, the syntax of the static_cast operator to convert a base object to a derived object is,
derivedObjPtr = static_cast<derivedClassName*>(&IDOfBaseObj);
Some good news here: with the static_cast operator and in the conversion from base object to derived object, the base members are not lost. So the following statement will work after conversion:
dObjPtr->bMthd();
However, be warned: the static_cast operator is not as reliable as the dynamic_cast operator.
reinterpret_cast
The dynamic-cast and static_cast operators convert related objects. However, the reinterpret_cast operator converts any instantiated object to another. It also works using pointers (and references) to the source and target objects. In simple terms its syntax is,
targetObjPtr = dynamic_cast<targetClassName*>(&sourceObj);
Here, conversion does not really take place; a simple binary copy of the source object is made to the target object. Such a conversion is very unreliable and is not really useful.
const_cast
The aim of the const_cast operator is to remove the constant feature of an object during conversion. It also works using pointers (and references) to the source and target objects. In simple terms its syntax is:
targetObjPtr = const_cast <targetClassName*>(&sourceObj);
As with the other casting operators, you end up with two objects; the target object is a kind of copy of the source object and the source object is not changed. With all casting operators, the source object is not changed. For simplicity, I illustrate the use of the const_cast operator using fundamental objects. Read and try the following code:
#include <iostream>
using namespace std;
int main()
{
int const myInt = 5;
int *intPtr;
intPtr = const_cast <int*>(&myInt);
cout << *intPtr << “\n”;
*intPtr = 6;
cout << *intPtr;
return 0;
}
The main function starts by having an integer that holds a constant value. Then we have a pointer without any assignment. Next we have the casting to assign the value for the constant int to the pointer. The pointer is now pointing to an object different from the source int object. It has the same value as the constant source value, but it is not constant; it has changed. The rest of the statements illustrate the changing capacity of the pointed object.
This kind of casting can be useful when you have to pass a constant value to a function whose parameter is not constant. The following code illustrates this:
#include <iostream>
using namespace std;
void display(int *intPar)
{
cout << *intPar;
}
int main()
{
int const myInt = 5;
int *intPtr;
display(const_cast<int*>(&myInt));
return 0;
}
Note that the argument in the function call is the const_cast operator with its operands. The return pointer of the operator is the effective argument.
typeid
This operator does not really do conversion. It is used to determine the type of object of an operand. It returns a pointer for the type of object. The syntax to use the typeid operator is
typeid(operand)
You use it with the equal (==) and not-equal (!=) operators. The following code illustrates its use with fundamental objects:
#include <iostream>
#include <typeinfo>
using namespace std;
int main()
{
int a = 7;
int b = 8;
if (typeid(a) == typeid(b))
{
cout << “The types are the same”;
}
return 0;
}
Note that this typeid operator is found in the typeinfo header file. Note the include preprocessing directive for this header file.
In a similar way the typeid operator can be used with instantiated objects. The following code illustrates this:
#include <iostream>
#include <typeinfo>
using namespace std;
class CA
{
};
class CB
{
};
CA caObj1;
CA caObj2;
CB cbObj;
int main()
{
if (typeid(caObj1) == typeid(caObj2))
{
cout << “The types are the same” <<”\n”;
}
if (typeid(caObj1) != typeid(cbObj))
{
cout << “The types are not the same”;
}
return 0;
}
The direction of operation of the casting operators are left-to-right. Casting operators are implicit, explicit, dynamic_cast, static_cast, reinterpret_cast, const_cast and typeid. The calling of the operators look like function calls, but they are operators.
That is it for casting operators. Let us take a break here and continue in the next part of the series.
Chrys
To arrive at any of the parts of this series, just type the corresponding title below and my name, Chrys, in the Search Box of this page and click Search (use menu if available):
Assignment Operators in C++
Arithmetic Operators in C++
Equality and Relational Operators in C++
Logical Operators in C++
Unary Operators in C++
Type Casting Operators in C++
Pointer to Member Operators in C++
Isolated Operators in C++
Operator Precedence in C++
Swindler’s Den : Organised Cyber Crimes
Simply put, cyber-extortion is the practice of demanding money in exchange for not carrying out activities which could involve a victim’s cyber information being at risk. It is an organised criminal activity, intent on obtaining a ransom in advance from an individual/group/organisation, for not launching attack on their corporate database, transactional website and computer networking systems.
Nowadays it is a mere child’s play for a teenage hacker to hack someone’s confidential information. When organised criminal groups get involved, they are looking at financial gain. However, despite the potential possibility of an attack, the businesses do not seem to be taking the threat very seriously. In fact, one of the reasons such threats are kept under wraps is because organisations wants to protect their image. Consumers can lose confidence in an organization, thereby leading to huge losses, particularly in terms of revenue since the media coverage can result in negative publicity.
In the past, the practice of cyber extortion was restricted to leaking credit card details or personal data of the customers. But today, hackers can disrupt business activities. Extortionists can threaten to incapacitate the victim’s computer system or the transactional website. This is known as denial-of-service (DoS) at tack where the business system is made unavailable to the potential customers and intended users. While launching DoS attack, cyber extortionists typically target a high-profile website or service hosted on their servers such as web servers, data centre servers, credit card payment gateways and even on the root nameservers.
The DoS attackers typically follow two techniques: one that crashes the services and the other that floods it. Either way, the victim company stands to lose its online link with the customers, suppliers and partners. The cyber criminals quietly take control over the business information systems and then assemble them into a coordinated network that can be used to send electronic transmissions that deface the targeted business website. These hijacked information systems are individually referred to as ‘zombies’.
The coordinated networks of zombies-for-hire are referred to as ‘botnets’. The botnet armies do not have geographical limit and can be comprised of hundreds, thousands or even tens-of-thousands of computers. With network communications becoming more important to the companies today, as illustrated by the increased reliance upon online purchasing, the urgency to protect these systems has increased.
What is surprising is that organisa tions are increasingly hiring cyberextortionist to incapacitate their business competitors. If hired, they offer discounts to make these extortionists loyal customers and in return are assured protection that the organisation would not be attacked by other corporate competitors. People would always remember the Massachusetts businessman who allegedly paid members of the computer underground to launch an organised and crippling distributed denial of service (DDoS) attacks against three of his competitors. In what federal officials are calling the first criminal case to arise from a DoS-for-hire scheme, the resulting chaos cost the competitors almost two million US dollars.
After the popularity of online banking transactions, cyber-extortionists have adopted scientific techniques to obtain ransom from the victim. They open several anonymous bank accounts, both, in and outside the country of residence to hide their identity. The cyber-attackers demand ransom in small chunks of payments so as to escape money laundering watchdogs. The technique of receiving small chunks of money through several pseudonymous bank accounts is called ‘smurfing’ which comes under the umbrella of money laundering.
An effective deterrent against the cyber threats is both expensive and time consuming, requiring lots of trainings for the IT staff and customers. Heavy costs include testing, perpetual monitoring and co-location services such as off-site data and system backup. Other costs can include intrusion prevention systems, DDoS protection, information security consultants, record keeping, and liability insurance. Assessing the risks, such as risk of a successful DDoS attack, typically includes hiring an outside service to assess the company’s network weaknesses.
This may include developing a series of planned and controlled attacks, including initiating DDoS attacks on the company. IT security experts can raise awareness that the benefits of such a test outweigh the costs and risks of having a preventable attack. In ‘Prevention of Electronic Crime Ordinance 2007’, the Federal Investigation Agency (FIA) is held responsible for taking care of business organisations from internal and external threats. Liaison with FIA could be helpful in terms of facilitating communication with appropriate Law Enforcement agencies that specialise in cybercrime.
Law Enforcement agencies with appropriate expertise may be able to provide tactical assistance and other helpful information, such as whether the threat is from a known source, whether a similar attack was threatened in the past and whether the attack is credible.
The Scam And Con Job That Is Social Security
Social Security has been in the news a lot lately, given that it, along with Medicare, have the biggest chances of bankrupting the country’s financial health. With tens of millions of Baby Boomers about to enter retirement and the associated programs of Social Security and Medicare, unless serious steps are taken soon to get both programs under control, the future of the United States and the freedoms it should afford us will be serious jeopardy.
The big question is whether or not the American political class has the brains and the backbone to step up, make the difficult and unpopular choices, and fix the situation. Early indications are that they are not, given what happened when the President’s Deficit Reduction Commission proposed, after months and months of analysis, changes to the current Social Security parameters in order to save it from insolvency. Quicker than you can say politics, Nancy Pelosi jumped up and vowed there would not be any changes to Social Security but gave no indication on why there should not be any changes, proposed an alternative solution, or gave any indication she understood the underlying numbers.
If she did take a few minutes to understand what a scam and con job the Social Security program has degenerated into and how it is unsustainable as currently configured, she would not look so ignorant. Recent and not so recent reputable analyses show how bad this program actually is from a financial and freedom perspective, making you wonder why anyone would want to keep the program as is:
- A recent Associated Press investigative report highlighted the work of two economists, Eugene Steuerle and Stephanie Rennane from the Urban Institute think tank. Their research examined just how well the Social Security program performs financially and whether it is a good investment vehicle for individual citizens. In the AP article reporting their results, the two economists looked at an average-wage, two earner American couple earning ,000 a year. Upon retiring in 2011, they would have paid 4,000 into the Social Security program.
But according to the payout schedule and the Urban Institute analyses, this couple can expect, on average, to receive only 5,000 in Social Security benefits. Thus, this analysis shows that as an investment and retirement vehicle, the Social Security program yields a negative 10% return rate on investment. In other words, you would have been better off taking the money you earned, but confiscated by the government to sustain Social Security benefits for retired Americans, and put it under your mattress. If you had a broker getting negative 10% returns on your investment, you would fire them. Negative 10% return, confiscated wages, and this is the program that Nancy Pelosi does not want to change one bit.
Just like most other political class and government run programs, this one is a money loser and a freedom depriver. While this program may have made sense long ago when people did not live as long and the base of contributors to the program far outnumbered the ones receiving the benefit, that situation is long gone. People like Pelosi either do not want to recognize the changing reality or are not competent enough to understand it, but the program today is nothing more than a con job of those too young to retire.
- If you do not believe these two economists, consider an analysis I did on my own Social Security situation that looks at this financial fiasco from a long term, year-over-year investment perspective. I recently received my latest individual numbers from the Social Security Administration and updated my analysis spread sheet. The main assumptions and calculations in this spreadsheet include the following:
1) I calculated all of the money, year-by-year, that my employers and myself had contributed into the Social Security pool.
2) I assumed that I would have been able to keep that money but had to invest it in a tax free IRA or 401k account immediately.
3) I then located the historical annual S&P stock market investment returns and assumed that I put all of the Social Security money into a low cost S&P stock fund.
4) I grew, or shrank, my pool of money every year based on the S&P rate of return.
5) Starting this year, I assumed that I would get more conservative with my investment strategy since I am approaching retirement (I am 57), a standard investment tactic. Thus, I assumed that I could get a 4% return with this more conservative investment approach and that I would stay at this 4% conservative approach for the rest of my life.
6) Social Security tells me that age 62 I can start receiving monthly Social Security payments of ,592. This becomes my bench mark.
How much better or worse would this approach have been vs. what Pelosi wants to keep unchanged? Consider the following spreadsheet results:
* Under the above assumptions, starting when I was 62 years old, I could take out twice as much than what Social Security will pay me and not run out of money until I was 88 years old. At that point, if I was still alive, I could live off of other investments and savings.
* Under the above assumptions, starting when I was 62 years old, I could take out 75% more than what Social Security will pay me and not run out of money until I was 95 years old. At that point, if I was still alive, I could live off of other investments and savings.
* Under the above assumptions, if I wanted to be conservative, I could take out 50% more than what Social Security will pay me and not run out of money until I was 100 years old, at which point I would still have a 7,000 in my account.
Thus, a different approach from the Urban Institute but the same result: I am far better off investing my own money using standard investment knowledge than letting the political class dictate and control my retirement money and life style.
Another positive aspect of this theoretical approach is that I would have had the wealth and money under my control. I would not be subject to the whims and ignorance of the political class and subject to their control. Its called freedom and the con job of Social Security does rob us of some of our financial freedom.
- Don’t believe the stock market is a sound way to save for retirement? I took a much more conservative approach to find out if and when Social Security ever becomes a better deal. Using the same model above, I changed my long term investment approach so that it was not invested in an S&P stock fund but it was invested in long term U.S. T-Bills. I went to a government website to locate the historical annual returns of long term T-Bills. This is theoretically a safer, more conservative investment approach. What did I find out:
* Under the above assumptions, I could take 92 out of the account each month, the same amount as what Social Security will pay me, and at age 100, still have ,000 in the account.
* Under the above assumptions, I could take out 20% more than the 92, and enjoy a 20% better life style, and not run out of money until age 92, if I lived that long.
In either approach, I and probably tens of millions of other Baby Boomers would have been better off if the government had allowed us to take care of our own retirement. They did not and now we are in a quandary, with unwilling or unable leadership to solve a problem that might sink the nation. And unless major changes are made, this con job will continue for generations of Americans to come.
Three simple short term steps could clear up the crisis:
* Raise the retirement age to 70 with a provision for less wealthy and less fortunate Americans to draw full Social Security payments prior to that age if they need it. In 1950, there were sixteen workers for every retired, Social Security eligible person in the country. By 2030, that ratio will be down to two to one. It is unfair to burden the next generation of younger Americans with this burden for older Americans that do not need Social Security before reaching the age of 70. (Source of data: Time magazine article, March 20, 1995.)
* Prohibit any American with assets, not income, of over million to not draw any Social Security payments until their asset level is below million. A million asset base, invested to give off a modest 5% return a year, would generate annual income of 0,000 a year without depleting the principle. 0,000 would put that American in the upper 5% of earners in the country, anyone should be able to live comfortable on 0,000 in retirement. This action would make the system more solvent and create a higher chance that the truly needy Americans would still get Social Security support in the future.
* Reduce the Social Security tax rate but uncap the earnings cap so that all income, wages, interest, dividends, etc., are taxed at the lower rate. An American who makes about 0,000 a year pays about the same amount of Social Security tax of someone who makes million a year. This second person makes one hundred times as much in a year but pays the same amount of taxes. This inequity needs to be changed and made fairer.
Longer term, once the above three steps help stabilize and correct the short term disaster that the political class has created, the longer term strategy needs to be the dismemberment of the entire Social Security program and the return of Americans’ wealth and freedom to those Americans. Never again should we allow the politicians in this country to hoist a con job on us like the current Social Security program, a scam that reduces our freedom, reduces the life styles we can and should be able to afford in retirement, and allows the political class to control the end of our lives.
It’s called individual responsibility and politicians hate it when we control our own destiny. It deprives them of one less way to divide the country for their own political advancement, no matter what the cost to our pocketbooks.