Things To Do This New Year: Software Engineering

You know the drill.

Learn a new language to complement your programming skills.

It would be a typical New Year’s resolution for developers to learn a new programming language this year. But seriously, what’s the point of learning C# when you’re a Java developer (or vice versa)?

What you should be striving for are programming languages that are orthogonal to your current skill set. If you’re an enterprise developer used to statically typed OO programming languages, try dynamic languages like Python and Ruby. If you’re already using dynamic languages, try your hands on functional programming like Erlang and Scala. Same goes for platforms: web developers might want try programming in RIAs.

The point here isn’t to add bullet points to your resume, but to have different ways of looking at problems, like adding new tools to a toolbox. For example, had I not been aware of the basics of functional programming, I might have tried to force traditional Java-like synchronization techniques in my Google Wave gadgets instead of the more elegant FP approach.

Just a short plugging:

Rapid Development‘s Classic Mistakes (in software development) was a real eye-opener for me when I read it four years ago. Even though it was written almost a decade ago, a lot of the mistakes listed there were still present in my company.

To keep the list up to date, Construx (Steve McConnell’s company) is now holding the Classic Mistakes survey for 2010. Help update the study by taking the survey here.

Things To Do This New Year: Management

A simple tip to start the first work week.

Forget the “Golden Rule”.

Everyone has different motivations in the workplace. Some are there for the money. Some are there for the titles and recognition. Some are there for the sense of achievement that comes with closing a deal or finishing a project. Some are there for the learning experience to prepare them for their next job.

It is a common mistake when dealing with co-workers to think that what motivates them is the same as what motivates us. You can’t bait fish with cake, nor can you entice people with worms.

So the next time you need to ask something from your subordinates, or the next time you need to convince your boss to do something, put things in that person’s perspective instead of your own. If you can’t, make an effort to find out more about those persons in order to make it putting yourselves in their shoes easier.

Things To Do This New Year: Hardware

It’s a Sunday so we might as well do some cleaning.

Organize your hard drive with the help of a disk space analyzer.

WinDirStat

Longtime Windows users should already be familiar with this app. WinDirStat (Windows Directory Statistics) provides a treemap view of your hard drives, making it easier to find out which files or folders are taking too much space.

This is a Windows-only utility, but alternatives are available for other OSs. JDiskReport runs on any computer that runs Java. Mac users can also use Disk Inventory X, while Unix/Linux users should be comfortable with just using du.

Things To Do This New Year: Personal Finance

This one’s going to be a bit harder than the previous post.

Know your financial situation.

It is common to see people living beyond their means just because they aren’t aware that they’re earning less than they’re spending. You don’t need to read books to know that the obvious solution to this problem is to be aware of one’s financial situation.

However, personal wealth is more than just your paycheck and bills. In order to paint a better picture of your financial situation, you must track down other aspects of your finances and your life.

For this tip, I’ll be asking you to take note of the following for the next month:

Your passive income.

This is the money you’re getting in a month that doesn’t require any work. The simplest example would be collecting rental fees for a house that you leased to other people. Other examples would be interest on bonds, valuation increases in stocks, and profit from businesses you’ve invested in.

If you’re a normal twenty-something professional, this should be zero.

(Spoiler: financially independent people have a passive income higher than their expenses.)

Your wealth.

To simplify things, just ignore your “assets” and just focus on your wallet and your bank accounts at the end of this month.

Your current wealth should be the sum of the money in your wallet and all of your bank accounts (credit limit not included since it’s not real money) minus all of your debts. Credit card balance counts as debt and should be subtracted from the total unless it’s on a 0% monthly installment (then it should be counted as part of “expenses” below). Also, if someone owes you a substantial amount of money, add this to your wealth.

The normal value for a twenty-something professional would be at most at the low 5 digits (Philippine Pesos) to around negative 5 digits.

Your income.

This should be easy. Just get your paycheck and take note of your gross income.

The time you spend for your income.

This is a key point from the book Your Money or Your Life. The obvious example would be to compare a person earning PhP 5,000.00 for 40 hours of work to a person earning PhP 2,000.00 for 10 hours of work. Even if the two are set in the same time span (say, a week), the latter is more appealing because it’s 200 pesos/hr compared to 125.

The not-so-obvious way of thinking stated in the book is to take into account the other hours you spend for the sake of work. There’s commuting. There’s the hours you spend dressing up for work or shopping for work clothes. There’s the work-related meals. There’s the “decompression entertainment” and vacations to keep you sane. There’s the visits to the doctor due to work related stress.

It won’t be surprising to find out that a person who works 40 hours a week spends another 30 hours a week on the average to support his job.

So for this step, track down how many hours you’ve spent this month as a side effect of your job.

Your expenses.

Here’s the hard part:

Track down and itemize every expense you make down to the peso.

I would suggest you go low-tech for this one, using a small notebook or hipster PDA then transferring it to a simple spreadsheet instead of being tempted to find an app for your expense tracking. The problem with the latter is that their classification systems are usually inflexible. You’ll have more freedom classifying your expenses when you do it manually.

Yes, it’s annoying and yes, it’s easy to fall off the habit after a few days. However, knowing your financial situation depends on how accurate you track down your expenses. This is the only way you’ll see if you’re spending too much on certain things like food and clothes.

This process might also cause some feelings of guilt, especially if you notice that you are spending too much on stuff like food and clothes. Don’t feel guilty about your expenses (yet). You’ll just fall into the same trap as binge eaters who feel that they need to compensate for their overeating but just end up in a worse condition in the long run. At this point, just spend as you would spend normally.

Next month, I’ll write a follow-up post to discuss what to do with those numbers.