Juno, Freaks and Geeks

Some time ago I enjoyed watching Juno. It had an air of familiarity, and I couldn't figure out what it resembles. Then I stumbled upon Freaks and Geeks (just search it on YouTube if you don't already know it).

If you like watching other people's reaction when found in various situations, this is a great movie for you. Now I think some episodes still make some valid points about what it means to be kind with each other, even though we are in 2009, it was filmed in 1999 and the events happen in 1980. My favorite character is Mr. Rosso (the school guidance counselor).

POST#0069 2009-APR-12

Add Comment

Word Perfect - Almost Perfect

At one time we had to make an invoice system work with a dot matrix printer – it was chosen because it was cheap, reliable, needed little maintenance and it did the job well. It took the pre-printed invoices and printed the needed values on the paper, a huge improvement over writing them by hand. It (the printer) had a font selection menu with some standard fonts, and a 5.25 inch disk drive to upload custom fonts. Imagine this old dinosaur printer (which was very fun to work with), and you start to put yourself in the text processing universe of 20–30 years ago.

Almost Perfect describes the rise and fall of WordPerfect, a writing which changed my perception on this piece of software and the software business. It was very captivating to read, and I devoured it all last Sunday. Since the events happened a long time ago (in my case some of them even before I was born), it made an even more interesting read to learn about a piece of history.

POST#0068 2009-APR-6

Add Comment

5 Tips to integrate in a foreign culture

„Let's improve Romania's image“ is a Facebook cause, which I found via A business-edu.ro article (Romanian). I first joined the cause because I was curious, and intrigued:

Because Romania's image is deteriorating day after day and because we really believe that each and one of us loving this country can do something to improve its image.

Here's my selection of 5 tips to consider if you are a foreigner trying to integrate in another culture:

Control what goes on into your head:
Something confirmed by my personal experience is that what the voice in your head is saying very much determines who you are. So, if you are always rumbling inside and criticizing and keep having negative thoughts, the problem is within yourself, not others.

Disregard and avoid the stereotypes:
Identify the excuses and justifications (clichés) which everyone is using. Then avoid using them. For example, „Romanians are not Gypsies, who are actually the ones responsible for all the bad deeds attributed to Romanians“. If we are ourselves discriminatory, how can we expect others to treat us in a more favorable way?

Tell a unique story:
Do your best to make people understand the good parts of your country. Try telling a unique story. In Romania, Stephen III of Moldavia was a great country manager and succeeded keeping its independence despite the tendencies of the time. Michael the Brave defended the region from the Ottomans and tried the unification of the then-split Romania. This isn't just History text-book propaganda, it's the glass half full which we should make sure others understand. The image of your country becomes your image.

Knowledge is power:
You are not the first person who tries to integrate into a foreign culture, and it's something well studied over the years. Read all the literature you can! The Intercultural competence Wikipedia article for example is a great place to start.

Expect open-mindedness from others:
In all fairness, let's give some credit to the western civilization for the virtues of being open minded in general, and for the optimistic and positive attitude found in most of the countries representative for it. Isn't that one of the reasons why you wanted to be part of it in the first place? Remember that people with high self-esteem consider themselves fair (citation needed, but makes sense doesn't it?), which makes it likely that they will take into consideration your personality and not your nationality.

POST#0067 2009-MAR-30

Add Comment

Why should marijuana be kept illegal

There is a movement on sites such as digg.com suggesting that marijuana (Cannabis) consumption should be made legal. This problem affects many countries across the world. Obama was recently asked in an on-line discussion by participants whether legalizing it could help the country get out of the economic crisis. This question has, at least in my opinion, the air of a joke.

Considering the money which tobacco and alcohol industries are making, what would happen with the legalization of marijuana, which may be more addictive than anything else of which law permits consumption? Let's look for a moment at those two legal vices. You could start by asking the question „what is the role of alcohol in society?“. It is found in the majority of cultures, evidence of its existence and consumption dating thousands of years BC. There is no apparent role, and its existence may be meaningless. It isn't banned simply because of inertia, and because banning it may lead to some degree of society destabilization – think US alcohol prohibition and Al Capone. To some people it provides comfort. To some people, it ruins life. And, in the case of smoking tobacco, it was at first a symbol of masculinity. Then, it was positioned as a symbol of women independence, and the producers doubled their potential market, since there are as many women as there are men.

But, back to the issue of cannabis, I'm not saying it makes people dumb but I can't say how much more intelligent it makes them either. If it's ever going to be legalized, I can only imagine the marketing campaigns following, and how much money and influence some producing companies would make. Would this help the world economy? Cannabis plantations would certainly provide a few jobs in agriculture, but would also leave illegal farmers from Elbonia without jobs potentially. Should it be legalized? I don't know.

POST#0066 2009-MAR-26

Add Comment

Anti-bad Luck Society

You would think that the fight against superstition (today taking the form of anti-creationism) is a new and contemporary movement. An empty cage, a challenge for a Creator to place a new animal in it? In contrast, here's what people thought 150 years ago[1]:

„ANTI–BAD LUCK SOCIETY — The only way to prove the position that superstition is nonsense is by a bold defiance. Some brave Frenchmen are trying to do this. A society has been formed at Bordeaux to put down the superstition of evil omens. As everybody knows, it is ‘bad luck’ to begin anything on a Friday, or to sit down at a table with thirteen, or to spill salt between yourself and a friend. The new society proposes to have regular dinners on Friday, to have thirteen guests, and spill salt around before commencing.“ March 1859

A note from the article then mentions „It appears that the society has not in fact survived.“

[1]: Scientific American March 2009: „50, 100 & 150 years ago“

POST#0065 2009-MAR-23

Add Comment

The HTML 5 section tag

The traditional h1… h6 HTML tags were developed to allow the generation of a document outline, but there is a problem with the fact that, for example, a blog post displayed in a feed reader may violate the reader's heading structure. If the post is using h1, and the reader already uses the h1 tag for something else, the heading may show up as a huge text on the reader page. The solution: proper CSS styling, and inclusion of the post in a HTML 5 section tag. But until HTML 5 is widely implemented, not using heading tags inside the feed content remains a good alternative.

POST#0064 2009-MAR-20

Add Comment

On the Zeitgeist of Programming 2009

Seeing that you are reading this post, there is a high probability that you are reading a number of other feeds and web pages as well. We are increasingly connected with more people, and there is a wealth of ideas floating around on the web related to just about anything. We are taught how to approach work – how to be in the flow, how to manage our tasks, how to have meetings, how to develop software, how to generate new ideas. It's basically everyone putting their experience, their stories on-line, teaching us how to do things.

From the market of ideas, the successful ones make it. How do we define a successful idea? It's perhaps one which is best „in tune“ with the largest number of readers. It's the one that readers feel as if it spells out what has been in the back of their mind, but they didn't have the occasion to give it conscious thought, let alone to formulate it coherently and express it to others. These ideas become extremely popularized through the Internet, then they are adopted by a subset of all the readers.

This is good and helps everyone become a better person, but I think more caution should be taken about which ideas to adopt. Take for example the statement „It's better to release early, and release often“. I first read about it from 37signals, who had a great deal of success while applying it, and I thought „What a great thing, it absolutely makes sense“. Well, it makes sense to them, but there are also stories where it didn't work. In fact, there could be any number of reasons for the 37s success. The „release early, release often“ may have indeed be one of them, but other factors may have affected the outcome. It's difficult to establish a correlation between the success and the release philosophy, let alone a causation one.

Take for another example „To be happy, your job has to be something you like“. The problem is this can be depressing for someone who doesn't like any work at all, or hasn't found their calling. I have yet to see the evidence for people who like their work being happier than others. On the other hand, as seen in the TED talk by Mike Rowe Celebrating dirty jobs, it seems that people can be happy even if they don't like their job. How about people who like their job but are unhappy? We have that too, because the way to happiness is not through work alone.

On the other hand, there exists another type of articles which are very well argued, with good evidence backing whatever idea they are suggesting. In the case of programming on the web, I should have an alarm set up, ringing whenever something sounds too good to be true, and I should also learn not to take things for granted.

POST#0063 2009-MAR-15

Add Comment

Paul Graham's Keep Your Identity Small

A very interesting article, which makes you think at something you ordinarily wouldn't:

http://www.pau­lgraham.com/i­dentity.html

In short, it says it's wrong to have too many identities, because that would reduce your flexibility.

The most interesting identities are those related to meta-ideas. Let's define a meta-idea as an idea about ideas. Being a scientist is a meta-idea for example, because they work with ideas all the time: they take one and see if it matches reality.

Considering yourself a scientist is equivalent to putting a sign in a cupboard saying „this cupboard must be kept empty“. Yes, strictly speaking, you're putting something in the cupboard, but not in the ordinary sense.

It seems after reading the article that „Keeping Your Identity Small“ is also a meta-idea, and one advantageous to have.

POST#0060 2009-FEB-17

Add Comment

Code comments

This is a very simple idea about writing what goes on in your head inside source code file comments. So, my approach is that when writing code, it's not necessary to write comments about what the code does as long as you use suggestive variable names and methods for the objects you create. In other words, you can „let the code speak for itself“.

In languages such as Java and C#, methods have a typed return value. In PHP however, any method can return any type of value, such as null, boolean, object, array… And different coders use this capability in different ways. For example, you can design your methods to return false on error, rather than using exceptions. Or, you can make them return an array of values, which you then extract(): later. It's all good as long as it's consistent. But in order to make your code easier to understand by others (who may not be familiar with your conventions), it's a necessity to comment the methods with a simple description of what the method does, the parameters it can take and about the returned value.

But the practice I found extremely useful is to comment the thought processes occurring when writing code. I like to type this as a dialog, or a q&a. It may not make much sense to do this at first, but it's vital later when you try to remember why you made a specific design decision. This way, design involves an argument with yourself, done over time:

...
/**
 * "Why is method called foo()?"
 * "Because it returns bar"
 * "But why should it return bar? Shouldn't we create a new class and move it there..."
 * "Maybe, but let's let it like this for a while then see what happens"
 */
public function foo() {
  ...
}
...

This would also work for a number of programmers and it would look just like a chat:

...
/**
 * <Programmer1> Hi, ASL PLS
 * <Programmer2> U 1st
 */
...

No, not that kind of chat! Well, you get the idea – they could log the debate about design decisions with the help of comments, hoping it would be useful in the life cycle of the application.

POST#0059 2009-FEB-12

Add Comment

Learning to drive a car

It's something many of us have to deal in life at one point or another. It's not easy at first, but it can be done, and many people manage to drive a car. But like a friend used to say, it's only after you have gotten the driver's license that you truly begin to learn.

As a newbie in this field, what drives me crazy is being on the road with someone who thinks is an expert, who keeps repeating what you should do (and sometimes you're about to do). They may very well have more experience than you, but as soon as they're not in the driver's seat they start acting strange. Yes, it seems to me they behave in totally un-deterministic ways. You cannot predict what wrong or mistake they will invent that you're doing next.

Yeah, I know this sounds like a completely lame complaint, but it affects at least this reptilian-brain-center-enabled, emotional being.

I try to handle the situation by not concentrating much on what they say. How the car behaves, the sound the engine makes, and interaction with the other traffic participants – including (but not limited to) showing middle fingers – give more accurate feedback when making mistakes. I simply concentrate on driving as best I can, or where it's possible – let the more experienced driver on the wheel.

P.S. Just kidding about the middle fingers. I'm a polite enough driver that I never got one.

POST#0058 2009-FEB-8

Add Comment