A post on slashdot.org notes The Continuing American Decline in CS as evidenced by the dismal performances of US students at the ACM International Collegiate Programming Contest.
The original story at businessweek.com suggests that the poor showing of American students at the competition is A Red Flag in the Brain Game. Of particular interest are the responses to the article that are available on the businessweek.com site. Ignoring the movement of computer science curricula from intense, rigorous study of algorithms and theoretical computer science toward team and project management, many commentators present a pessimistic career outlook and unsatisfactory compensation for US software developers as the causes for their lack of motivation to excel.
As usual, these commentators blame external factors, which they implicitly suggest are beyond control. Today’s computer science, with the exception of programs that focus on theoretical computer science, places less significance on algorithm implementation. Computer science in the US is biased toward software reuse and extensible design. Many programmers are unable to create a robust implementation of quicksort, but they are able to perform their jobs with a simple qsort() function call.
The contest participants needed to independently study various algorithms more closely in order to be more competitive. These students are committed to their decision to be computer scientists in an environment where software development jobs are being outsourced and compensation is poor. They had the option to focus development of their competencies in low-level code fragment implementation and win competitions, or they could use their time in school to develop skills for the management of nontrivial software development efforts and prepare themselves to bring software engineering ideas to the industry.
The Associated Press reports that a Retiree Flushes Cash Down Toilet. The man apparently did not realize that his money still had value. As opposed to depositing his money in a financial institution where the money would have earned interest and this confusion would have been avoided, he simply transferred his money from his matress to his toilet.
Six Signs That You Should Run — Not Walk — From Your New Job is an article I easily remember reading once over the last couple of years. Kate Lorenz provides observations that a new employee can use to perform a quick evaluation of a company. These observations can also be useful to seasoned employees. In her article, Lorenz brings up high employee turnover. Being one of a couple of individuals with the most seniority is not a problem. There is a problem when seniority is gained at an alarming pace. Increasingly high turnover should be a significant hint that the company is no longer a great place to work, and witnessing high turnover should encourage action.
The moment that a better opportunity is made present is the best time to act on it. If not simply for the benefit of the individual, it should be done purely to promote good economic principles. These principles strive for the optimal allocation of limited resources, such as a worker’s time and skills. Employees, not only consumers, determine the fate of companies. Like consumers, employees are drawn to great companies and help them secure a good position in the marketplace. Good companies keep good workers, which develop good products or services, and draw good customers who pay good money that can be used for good worker compensation to promote good business growth. Less than good companies do not experience such a great positive-feedback cycle and ultimately perish. The economics are that simple.
MONEY Magazine and salary.com present a list of the Best Jobs in America. Software engineering is at the top of the list. The average annual income of a software engineer is $80,427. Other parts of the site state outsourcing as a worry of software engineers, and neck, wrist, and back pain are recognized as common problems.