After more than a month out of the country, I am now back in Germany. Where have I been the last month and a half? Well, I got married at the end of June and my wife and I went to Venezuela for a honey moon and to meet the family. We saw Angel Falls, the Guacharo Cave, lots of beautiful beaches, thermal waters, hadcrafts and more. The trip was spectacular, and I’m pleased that my wife got to meet my whole family. Now I’m glad to be back and I’m eager to get back into the world of Perl and open source. I hope to have an interesting post next week.
Category Archives: Miscellaneous
Why are plants green?
Have you ever wonder why plants are green?
And no, the answer I’m looking for is not “stuff is green because it reflects green light and absorbs red and blue”. What I mean is, why in the world would plants choose to reflect green, when most of the sun light is in the green spectrum? Wouldn’t it make more sense or plants to absorb green?
Well, today I found a web page explaining this. I thought it was very interesting and wanted to share the link. In summary:
- Why are plants green?
- Because they appeared late, after a different organism had already developed green photosynthesis. The first plants (algae) lived in the water, below the non-green plants, so all they had available was red and blue.
- Then why did green plants come to dominate the planet?
- Because this new kind of plant also had the ability to use CO2 from the atmosphere to make sugars. So although they were disadvantaged when it came to the light spectrum, they were superior over-all.
It is also interesting that plants have evolved to minimize the disadvantage of being stuck with the non-green spectrum. Plant leaves have a complex structure that makes light bounce around inside the leaves, so that each photon has multiple chances of being absorbed. For this reason, although chlorophyll only absorbs about 2% of incident green light, a leaf as a whole can absorb as much as 50%. For more on that point, see this page.
Personal Finance Software
Updated: 3 Nov 2009.
This is a list of eight “Personal Finance” (accounting-type) programs that are entirely free, open source and mostly cross-platform. KMyMoney is not cross-platform but in the future it will be. The programs are listed in approximate order of simplicity and features.
Main Links:
Summary
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
|---|---|---|---|---|---|---|---|---|---|---|---|
| Buddi | ![]() ![]() |
![]() ![]() ![]() ![]() |
Yes | No | No | No | No | No | No | ![]() |
No |
| HomeBank | ![]() ![]() |
![]() ![]() ![]() ![]() |
Yes | Yes | Yes | No | No | No | No | ![]() |
No |
| iFreeBudget | ![]() [3] |
![]() ![]() |
Yes | No | No | No | Basic | No | Yes | ![]() ![]() |
No |
| Grisbi | ![]() ![]() |
![]() ![]() |
Yes | Yes | Yes | Yes | No | No | Yes | ![]() ![]() |
No |
| Money Manager EX | ![]() [4] |
![]() ![]() ![]() |
Yes | Yes | No | No | Basic | OK | Yes | ![]() ![]() ![]() |
No |
| jGnash | ![]() [5] |
![]() ![]() ![]() |
Yes | Poor | No | No | Good | Good | Yes | ![]() ![]() ![]() |
No |
| KMyMoney | [6] |
![]() ![]()
|
Yes | Yes | Yes | Yes | Good | Good | Yes | ![]() ![]() ![]() ![]() |
No |
| GnuCash | ![]() |
![]() ![]() |
Yes | Yes | No | Yes | OK | OK | Yes | ![]() ![]() ![]() ![]() |
Yes |
[1] I only list platforms where the program can be installed by non-technical users.
[2] Multiple currencies means that you can have different accounts in different currencies. Some programs advertise “multiple” currencies and what they mean is that you can pick any currency as long as all your accounts have the same one.
[3] This is a Java program, so in principle it should be possible to run it on a Mac. But the program has not been tested on Mac and personally I could not get it to run on my Intel Mac.
[4] There is an experimental version for Mac.
[5] Runs on PPC Macs, but not on the new Intel Macs unless the user is fairly technical.
[6] When KMyMoney is ported to KDE4 it will run on Windows and possibly Mac. As of Feb 2009 the port to KDE4 has not started.
Buddi
“Buddi is a personal finance and budgeting program, aimed at those who have little or no financial background.”
Buddi may be a good choice for people who simply wish to track their income and expenses. It is very simple and very easy to use. There are only three tabs: My Accounts, My Budget and My Reports. In My Accounts you put your assets (bank accounts, cash) and liabilities (credit card, student loans, mortgage). In My Budget you put income and expenses. In My Reports you see various reports like “show me my income and expenses for last month”.
I got a good impression of Buddi. It doesn’t have any advanced features, but for people who are just starting to track their personal finances it might be a good fit. The only issue I have with it is that it can’t export to QIF. So when you outgrow this package, you’ll have a hard time moving your data to a different application. If you think you might be in this situation, I recommend you look at HomeBank.
Missing features:
- Does not support QIF import.
- Does not support stocks.
- Does not support multiple currencies (all accounts have the same currency).
- Does not have any reports besides budget.
HomeBank
A very small and simple finance package. Suitable for keeping track of your expenses or making a budget. Like most personal finance software, it organizes things into accounts, payees and categories. Features include: QIF import/export, OFX and CVS import, scheduled transactions, simple annual budget and car cost.
If your needs are simple or if you are just starting to track your finances, HomeBank is for you. A very important feature that it has is QIF export. This will allow you to migrate to another application later when your needs change. As you gain experience managing your finances you will gradually outgrow HomeBank and it is important to know that you can migrate.
Missing features:
- Does not support stocks.
- Does not support multiple currencies (all accounts have the same currency).
- Does not have any reports besides budget.
iFreeBudget
The main feature that iFreeBudget provides compared to HomeBank is support for scheduled transactions, some support for investments and a somewhat wider range of reports. In exchange for that you give up QIF import and export as well as some ease of use. However, it does offer OFX import.
Special features: iFreeBudget can download your transactions on-line, directly from your bank. I wish more programs had this feature (btw, I did not test this feature). Another feature is that your account data is encrypted, so you have to enter a password to access it.
I am concerned about the lack of QIF export. If you decide to move to a different package you will have a hard time migrating.
Support for stocks and investments is very basic, but it may be appropriate for some users. iFreeBudget does not actually track money flowing between your bank and your stocks. It simply records the fact that you have certain stocks and gives you the current market value.
The main reason I give it a low score on ease of use is transactions. The wizard is certainly “easy”, but it’s a lot of clicks just to enter your groceries. You can go to File > New > Transaction. The problem here was that iFreeBudget kept saying “Invalid account” but didn’t tell me which account was invalid or why. It took me a while to find the problem.
If you are considering iFreeBudget, I would recommend that you also look at Money Manager EX. It has a similar feature set, somewhat better, and I find it easier to use.
Missing features:
- Does not support QIF import and export.
- Does not support multiple currencies.
- Support for stocks and investments is weak.
- Support for reports is a little weak.
Grisbi
This is still a low-end product. Grisbi supports all the features I listed for HomeBank, plus it supports multiple currencies (go to Edit > Preferences). It also has income/expense reports. Grisbi can import QIF and GnuCash files, and it can export QIF and CSV files.
I was not particularly impressed with Grisbi. It is not a bad program at all, but I felt that jGnash and KMyMoney have an easier user interface even though they have more features. So why would I use Grisbi? Still, I am sure that some people will prefer Grisbi and the program definitely deserves to be mentioned.
Grisbi offers QIF export and that’s important. It means that you have the option of migrating to a different package later when your needs change.
Missing features:
- Does not support stocks.
- Support for multiple currencies is weak (e.g. no price editor).
- Support for reports is weak.
- I don’t like the UI as much as the other programs.
Money Manager EX
This is a nice program, I like it. It has a similar but somewhat better set of features than iFreeBudget and I like the user interface better.
Money Manager EX has only basic support for stocks. It can track what stocks you have, but it does not track money flowing between your bank account and your stocks. MMEX has support for multiple currencies. The system is basic (e.g. there is no “price editor”) but I suspect that it is perfectly adequate for a lot of people. MMEX also has a pretty decent collection of reports (e.g. cash flow forecasting) which should be more than enough for most people.
If you need a program that supports stocks or multiple currencies but you want something simple and basic, you should definitely try Money Manager EX.
MMEX can import QIF files, but it cannot export to QIF. This is my main concern with this program. It may be perfectly suitable for you today, but if your needs change and decide you want a different package, you may have trouble migrating. MMEX does support CSV export and I guess that’s better than nothing, but realistically, that’s not enough to migrate to a different application.
Unique features: MMEX supports encrypting the database with the account data.
Missing features:
- Does not support QIF export.
- Support for multiple currencies is weak.
- Support for stocks and investments is weak.
jGnash
and KMyMoney
These are my favourites. Both programs have a very similar feature set, but very different user interface. IMHO both have a good UI, they are just different. So definitely try both. That said, please note that jGnash has poor QIF support.
Both programs support stocks and investments including stock splits, and both have strong support for multiple currencies. That includes automatic online updates of stock prices and currency exchange rates.
Although these programs have a lot more features than Grisbi, I find the user interface easier to understand. If you are used to thinking in terms of asset and liability “accounts” vs income and expense “categories”, KMyMoney will be more familiar. If you learnt double-entry bookkeeping, either will feel comfortable – both programs include income and expense in the “accounts” section.
Reports: Both have a more complete set of reports than either HomeBank or Grisbi. They include net worth, balance sheet, portfolio, investment performance, etc. KMyMoney has better reports than jGnash. KMyMoney includes more reports (e.g. tax and forecast) and its reports are more flexible (e.g. monthly or yearly net worth, net worth by institution, etc).
Importing data: jGnash can import QIF and OFX. KMyMoney can import QIF and GnuCash. A reader (Ron Price) has reported that jGnash does a poor job at importing QIF files. Ron tested QIF import on several programs on this page and jGnash was the worst. jGnash lost his categories and accounts. If you are migrating from another program, be sure to test.
Exporting data: KMyMoney can export to QIF, but jGnash cannot. This is important. It is hard to migrate away from jGnash because it doesn’t support QIF export. jGnash has a good feature set, but you might want to switch to a different program later, and this is difficult without QIF export.
Other: Both support scheduled transactions and secure file encryption.
Unique features: jGnash can export reports to PDF and it has an interesting client/server architecture. KMyMoney supports VAT, it has better documentation and a much more active community (so it’s easier to get help).
GnuCash
Probably the best known accounting package for Linux. GnuCash is a step up in the complexity/features scale. Besides “personal finance”, it provides small business accounting features like invoicing, billing, accounts payable and accounts receivable. You can setup customers, vendors and employees. I can’t say much about the business features because I don’t use them.
GnuCash supports multiple currencies and stocks, but honestly, jGnash and KMyMoney both handles those better. For this reason, I am planning to migrate from GnuCash to jGnash or KMyMoney.
GnuCash supports QIF, OFX, and HBCI import. It also has the most complete set of reports from any program in this list (cash flow, employee report, etc). It includes a financial calculation (e.g. for annuities or present value calculations).
GnuCash does not support QIF export, bug KMyMoney supports GnuCash import and QIF export, so it’s not a big problem to migrate away from GnuCash. I recently migrated from GnuCash to KMyMoney and I didn’t have any significant problems.
GnuCash doesn’t try to hide the details of double-entry bookkeeping to the same extent that the other programs do. If you have studied accounting, you might like this, but people who never learnt accounting might need some time to get used to thinking of income and expenses as “accounts”. You don’t need to know the difference between debit and credit to use GnuCash.
Other Software
Before we begin, I’d like to suggest other great resources which are not strictly “Personal Finance Applications” but should be very useful to anyone wanting to mange their finances.
- Financial calculators: Auto loan, savings plan, taxes, life insurance, you name it.
- Investor Education Fund: Unbiased finance information for Canadians.
- Spreadsheets: Google Spreadsheets and OpenOffice.org.
Send Your Suggestions
Is there a great program or feature that you think I should cover? Let me know! I do want to focus on free (no cost), cross-platform, open source software with an active community.
- Why free? Because there are many great free tools that people don’t hear about.
- Why open source? Because it’s the easiest way to make sure that the program isn’t cripple-ware, ad-ware or trial-ware.
- Why active community? Because it helps ensure over-all quality, regular updates, documentation and support.
- Why cross platform? Because that way more people can use it, and because it sucks when an application limits your choice of operating system.
Upgraded WordPress
I just upgraded WordPress to version 2.7 and I’m happy. The upgrade was quick and painlesl. I did have to choose a new theme, but I’m happy because I found a nice new theme for my site that I really like.
I won’t review WordPress 2.7. I don’t know it enough to do it justice. But the new version does feel nicer. WP continues to be easy to use and flexible.
Social Responsibility
I finished reading the essay “ Famine, Affluence, and Morality” by Peter Singer (1972). In it, Singer makes a compelling argument that we have a moral responsibility to help those in great need, whenever doing so would not have negative consequences of similar moral weight.
Please do read the essay. I cannot do it justice in this blog post.
At face value, the above seems sensible enough, but the implications are significant. Can you really justify buying yourself a new sweater, not because you are cold, but because it simply looks good on you, when the same money could save dozens of lives in the third world? For only $3 UNICEF can administer vaccines for five major diseases and give vitamin A tablets to children to strengthen their immune system. How then can we justify spending the same $3 on chocolate? Do we not have a moral imperative to forego the luxury of a few chocolate bars, a coffee, or a new sweater, and instead use those funds to bring relief to some of the millions of people in the world who are under distress?
The sad truth is that the vast majority of us actually spend more on luxury than on aid – a lot more. I myself spend 9% of my income in luxuries (restaurant meals, books, movies, travel, etc) and less than 1% of my income on aid for the most needy. Are my luxuries 9 times more important than vaccines and food for the world’s most poorest?
A family that earns $40,000 a year and sponsors a child through World Vision for $35 a month is considered “generous”. But this family is only spending 1% of their income on the most needy. There is something deeply wrong in society when one of the most affluent families in the world (the typical family in the developed world) is considered “generous” when they give 1% of their wealth to save lives from famine and dicease, and the family who does not give even that 1% is considered normal. An affluent individual who gives 5% of his income to UNICEF is considered very generous, even while the same individual spends several times more than that on luxury.
I strongly suggest that you read Peter Singer’s essay. It is well worth the time.
And what am I going to do about this? Well, at a minimum, I cannot morally justify spending more on luxury than on aid. So starting from this day on, I will bring the two expenses in line. I wil reduce my luxury expenses by a fair chunk, and I will increase my aid expenses by a really big chunk, so that they reach parity. I have chosen UNICEF as the avenue of aid.
Singer would argue that this is still not the type of budget that our moral imperative demands. Even the weaker imperative – “that we should prevent bad occurrences unless, to do so, we had to sacrifice something morally significant” – would demand more (my luxuries are not morally significant). He would be right. But I see my budget change as a step in the right direction. I don’t think that it is very much to ask of anyone that they make their luxury and their aid expenses match. A luxury is, by definition, not needed. So it should be within anyone’s means to at least spend no more on luxury than they spend on vaccines, food and vitamin A tablets for the world’s most needy.
In Case of Terrorist Attack, Do Not Discard Brain
Warning poster
“With Barack Obama so far ahead in the polls some people are getting worried that this election cycle’s October surprise will be a terrorist attack. There was, after all, the 2004 Madrid train bombings and Osama Bin Laden did personally intervene in the last US presidential election.
So this week’s comic is a friendly reminder: keep your brain running at all times. When you switch it off bad things happen.”
New stock market terms
| CEO | Chief Embezzlement Officer. |
| CFO | Corporate Fraud Officer. |
| Bull Market | A random market movement causing an investor to mistake himself for a financial genius. |
| Bear Market | A 6 to 18 month period when the kids get no allowance, the wife gets no jewelry, and the husband gets no sex. |
| Value Investing | The art of buying low and selling lower. |
| Broker | What Walll Street has made me. |
| Standard & Poor | My life in a nutshell. |
| Stock Split | When my ex-wife and her lawyer split my assets equally between themselves. |
| Financial Planner | A guy whose phone has been disconnected. |
| Market Correction | The day after you buy stocks. |
| Cash Flow | The movement your money makes as it disappears down the toilet. |
Security Maxims
Security Maxims from Roger Johnston. Funny, and yet a very good list. I found this link in Bruce Schneier’s blog.
ADDED 3 Nov 2004:
You can find the original list of security maxims on the Argonne Vulnerability Assessment Team (VAT) page. The VAT informed me that they prefer to have a direct link to the maxims page because that page is updated regularly. In addition, they want to avoid spreading outdated versions as much as possible.
Definition of planet
I think that by now everyone knows about the controversy regarding the definition of a planet and that Pluto is now a “dwarf planet” not a “planet”.
- A PLANET is a body that (1) is in orbit around the Sun, (2) has sufficient mass so that it nearly round due to gravity, and (3) has “cleared the neighbourhood” around its orbit.
- A DWARF PLANET is a body that (1) is in orbit around the Sun, and (2) has sufficient mass so that it nearly round due to gravity.
It appears that after two years this definition is still controversial. Planetary scientist Alan Stern, head of the New Horizons mission to Pluto, feels that all of these bodies in the Kuiper belt should be called planets, much the same way that there are many rivers on Earth and we don’t say “river” and “dwarf river”.
I disagree with Alan and his river analogy. Bodies like Pluto really are different than the other big planets. They have a different history and a different formation. On the other hand, calling these “dwarf planet” and saying that a dwarf planet is not a planet is very poor nomenclature. Any reasonable person would think that a dwarf planet is a type of planet. I’d like to suggest two alternatives:
Proposal #1
Instead of “dwarf planet“, call these objects “planetoids“. This at least improves the nomenclature and avoids confusion as to whether a dwarf planet is a type of planet or not.
Proposal #2
We could all all these bodies “planets” and say that there are three types of planets: dwarf planets, terrestrial planets and gas giants. It would work like this:
- A PLANET is a body that (1) is in orbit around the Sun, and (2) has sufficient mass so that it nearly round due to gravity.
- A DWARF PLANET is a PLANET that has not “cleared the neighbourhood” around its orbit.
- A TERRESTRIAL PLANET is a PLANET that (1) has “cleared the neighbourhood” around its orbit, and (2) is composed primarily of solid matter.
- A GAS GIANT PLANET is a PLANET that (1) has “cleared the neighbourhood” around its orbit, and (2) is composed primarily of gas.
I think that these definitions might better reflect our current understanding of how different bodies evolve in a solar system.
![Platforms [1]](/_2009/img/text-platforms.png)













