Apr 8, 2010

Easy phishing scam detection tool

Did you know that you have an easy phishing scam detection tool? Yes, you do! It is called "your eyes"!
Today I got a nice phishing scam. Here it is:

Cyan–colored rectangles are mine. They are created by my "scam detection tool".
What do they tell you? That typography is inconsistent. You do not even have to read this e–mail to understand that it is not from Google. Just look: missing spaces here, unnecessary spaces there, missing punctuation. Scam.
This message is still more clever than a typical "YOU WON 1000000000€ SEND YOUR MAIL SEX ADDRESS".
So next time when you get a message from Google or Apple, watch the typography. Bad typography is the first sign of scam.

Apr 7, 2010

ThreadViews extension for Thunderbird and PostBox

If you are using Postbox e–mail, rss and news client (yeah, you should!), you may wonder if my ThreadViews extension works with it.
Yes, it does. Version 1.3 is specially updated to support PostBox!

Get it here of from the Mozilla download page. On Mozilla web site this extension is listed as experimental because there are no enough feedbacks to promote it to public. If you like this extension, please, leave a positive feedback there.

Mar 28, 2010

How to give the best presentation

On March 27th, 2010 I went to the first Zend Framework conference in the world. While watching presentations I thought that technical people have absolutely no idea how to present. This is a hard solid fact: anybody can bore the audience to death even with an interesting topic.
Here I am going to tell you how to make the presentation right and avoid death of your listeners.

Mar 23, 2010

Setting up multiple e–mail addresses with Postbox

If you like Postbox, you may like it even more when you know that you can set up many e–mail addresses for the same account. For example, people write me to four different addresses and I generally reply from the same address. All e–mails come to the single mailbox. Essentially these addresses are aliases to my main e–mail address.
The most straightforward solution for having multiple e–mail addresses is to set up many accounts. But this solution is very inconvenient because you get many fake accounts in your sidebar. Much better solution is to use identities.
Identities in Postbox link multiple e–mail addresses to a single account. You can also have automatic signature insertion and PGP key selection for the identity.
To use identities, go to your accounts:

Mar 18, 2010

Postbox: e–mail, rss and news client

A week ago I discovered Postbox: a great looking e–mail, rss and news client based on Mozilla Thunderbird. However it is much faster than Thunderbird and offers many goodies to organize your communication more effectively.
Here is a screenshot of Postbox:

Click to enlarge
On Mac Postbox can make Spotlight search your messages. On any platform you get lightning fast search, tags that work very well, link extraction, easy signature editing (no more files for signatures!), Facebook & Twitter integration. You can even attach files from one message to another! Attachment downloading is also easy from the sidebar you see on the right.
In other words, I am absolutely love Postbox!
Now, something special for you. Postbox is not free, it costs $39.95 but if you follow my referral link, it will cost you $10 less, only $29.95. It is absolutely worth all its money! Give it a try, you will not be disappointed!

What type of engineer are you?

If you work in the web development field, you can call yourself an engineer. Did you know that web engineers are divided to categories? Knowing where you belong can focus your job, enhance your skills and give you more incentives at your work.
Let's have a look to various engineering categories for web developers.


If you work in Adobe Photoshop and Illustrator only, you are a clear web designer. This is the most creative work out there. Designers are usually special people, not like anybody else. Usually they live somewhat outside of the rest because their job is totally different from what other do.
Being designers is interesting because design is what people see when they come to the site. Design meets them. If visitors like the design, they will stay longer. If design is horrible, they will leave the site in many cases regardless of the site content.
Being a good designer rates you very high in the industry.

Mar 9, 2010

New "Magento development" book

If you are a developer interested in Magento e–commerce platform, here is the best Magento development book for you, reviewed by me :)

Mar 3, 2010

Farewell, TemplaVoila!

As of today I am no longer managing or developing the famous TYPO3 TemplaVoila extension. I decided to quit the development and lead because my views on the development, purpose and perspective of this extension does not agree with other developers in the team. Being democratic I prefer to leave than to stay on the way of others.

It happened so that I was a sole TemplaVoila development for three years. I spent numerous hours of my own time fixing bugs and implementing new features. I never got a cent for it, it was always a pure enthusiasm. Nobody sponsored or supported this work. The reality of the open source world: you create, others use, you stay away.

Today I announced that TemplaVoila 1.4.2 will not be released any soon because of the major bugs in it. I was immediately accused of “stopping progress” by two different people. All these years of hard work meant nothing it seems. I was very much stressed by such views. I can’t bear that. And I won’t. Quality means very much to me but I am not going to listen to any more accusations. I would rather drop the project completely than being accused of stopping progress because I want to release a quality product. I am tired to fight for the quality!

I think TemplaVoila was the best that happened to TYPO3. To me my latest 1.3.x version would be still the best one: slim, small, fast, free of unnecessary clatter and cheap looking plastic icons. I am going to use 1.3 for my own projects from now on. I am going to host it on Google code and fix bugs and make it compatible with newer TYPO3 version as they are released. The official version is to be continued by other people. Since now I have absolutely no relation to TemplaVoila. My name will be removed from the extension soon.

Long live to you, TemplaVoila! Have a good future! Good bye!

Feb 18, 2010

Apple Airport Extreme error -6753

You reset your Apple AirPort Extreme or Time Capsule. You try to connect with AirPort Utility. You get error -6753. You google for it and find that lots of people has this problem but nobody seem to have a solution.
Well, I do.

Feb 17, 2010

Vodafone usability mistake

Use Vodafone Mobile Broadband software with my USB modem to connect to the Internet when I work in café (I usually write something in café in the morning). Every time when I plug the modem, this software pops up and prompts me to connect. The software is cool, beautifully designed and very friendly. All is cool except one small detail. Have a look at the picture:

As you see there is a prompt to connect (I wish it just could connect without asking!). Two buttons are selected in some way: one has full glow, another has outer glow. It means that one of the will act on space key, the other – on Enter key. Which one will act on what key? This question always makes me stop and think. Remembering excellent Steve Krug's book named "Don't make me think", I see such selection as a usability mistake by Vodafone. Obviously I wish to connect if I plugged in my modem! But how do I do that without pressing wrong button and without using mouse? I have to think for 10 or more second and guess that Enter key will probably apply the fully glowing button. May be it will, yeah. May be... What if not? I never try to remember such details because they take my brain's RAM and they are not what I should be thinking of. My experience should be different in this case: the program should provide a single selection, which is the most appropriate and desired by the user. Which one? Obviously to connect! Why else would I plug the modem?
This kind of mistakes quite common. It comes from the programmer's wish to give more choices to the user. Good wish but wrong. It makes people think to make the choice to the obvious one.
Don't make me think, Vodafone!

Jan 29, 2010

No thumbnails in TYPO3? Check ImageMagick!

I upgraded my server to a newer version of Linux in December. Today I suddenly noticed that I see "No image generated" yellow banner across all images in the TYPO3 backend.
Normal steps in such cases would be to go and check ImageMagick installation using the TYPO3 Install tool:

Jan 21, 2010

How to repair a broken YaST online update in SuSE 11.2

One of the last YaST2-ncurses packages renders YaST2 online update and software management in SuSE Linux 11.2 unusable. Online update just exists back into the menu. If you want to fix it, follow these instructions:

  • Mount your install DVD. In my case it looks like:
    mkdir /mnt.dist
    mount -o loop /mnt/distro/opensuse-11.2-x86_64.iso /mnt/dist
  • Change path to RPM packages location. In my case:
    cd /mnt/dist/suse/x86_64
  • Restore original packages. In my case:
    rpm -Uvh --force yast2-ncurses-pkg-2.18.4-2.9.x86_64.rpm
    rpm -Uvh --force yast2-ncurses-2.18.10-2.1.x86_64.rpm

That's all. Now you can use online update. It will propose you yast2-ncurses fix, which you should install.

Avoid your personal "Aurora operation"

I am not a Microsoft Windows user. I was quite indifferent to the latest Microsoft Internet Explorer scandal that causes break in to Google, Adobe and many other major companies (the “Aurora operation”). However posts and articles about this event pop up so often, that they are very hard to ignore.
Yesterday I read a phrase that made me think a lot about the way how we develop software. The source was not in English and it is hard to make a precise translation. The phrase sounds like this: “Software will be always vulnerable while it is written by humans”.
Why did this phrase caught me? For several reasons.
Firsts, I immediately remembered many extensions that I saw in the past with trivial security problems. It is so easy to avoid them and yet people still write it insecurely.

Jan 18, 2010

Using XDebug helper plugin with FireFox 3.5.7

Recently my FireFox automatically updated itself and disabled XDebug helper plugin, which I use to debug PHP scripts with Komodo IDE. While it is possible to start debugging by adding XDEBUG_START_DEBUG=1 to the URL, it is not very convenient when debugging such framed applications as TYPO3 Backend.

There is no update for this plugin. Even worse: it is disappeared from the list of FireFox plugins. Fortunately I have it locally and managed to cheat FireFox to recognize this plugin as valid.

It is quite simple. Firsts, you need to shutdown FireFox. Next you need to go to the extensions/ subdirectory of your FireFox profile. On Mac it is in ~/Library/Application Support/Firefox/Profiles/ff3.default. In the extensions/ you will see xdebughelper@mail.ru and install.rdf inside it. Open this file in the text editor. You need to change two values there:

  • set em:maxVersion to 3.*
  • increase em:version

Start FireFox and you have XDebug icons in FireFox again!

Jan 6, 2010

Komodo IDE, XDebug and superglobals

If you, like me, prefer Komodo IDE for PHP development, you may have noticed that superglobals ($_GET, $_POST, etc) are absent from "Superglobals" tab in debug window. If you have this problem, update to the latest PECL version of XDebug:
sudo pecl update xdebug
Superglobal will magically appear. Do not forget to restart Apache:
sudo apachectl restart

Jan 4, 2010

Extracting text from HTML body

Do you know how to extract text from the HTML <body> tag with one regular expression? Here it is:
function extractBody($htmlContent) {
    $result = '';
    $regExp = '/.*<body[^>]*>(.*)<\/body>.*/is';
    if (preg_match($regExp, $htmlContent)) {
       $result = trim(preg_replace($regExp, '\1', $htmlContent));
    return $result;
Note that you have to use "i" and "s" modifiers, otherwise this regular expression will not work in all cases. "i" modifier helps to detected <body> tag in mixed or upper case. "s" modifier forces regular expression to work correctly with new line characters.

Small performance enhancement tip

Do you have your own server? Does TYPO3 run slow? Would you like to try a simple step to improve the speed? Here it is.
Check if you have NSCD installed. NSCD is a caching daemon for DNS lookups. Even if you have HostnameLookups off in the Apache configuration, Apache still does look ups from time to time for internal reasons. If you do not have NSCD, it may take lots of seconds (especially if host does not exist). With properly configured NSCD it will be much faster.
Here is my NSCD configuration regarding DNS lookups: