Nov 24, 2014

Zend Certification Study Guide

I understand why they give 50% discount to it. Not worth the money at all.

It costs $15 at Zend web site and it is absolutely useless. If you can read headings of PHP manual at and 2-3 sentences of each section, this is what this $15 guide gives you: heading at a couple of [worthless] sentences.

Lost money, total crap. Don't buy.

Nov 23, 2014

Why I wouldn't upgrade to Yosemite, iOS 8.1, etc.

Usually when Apple makes updates I upgrade fast. For regular users (non-developers) such updates are easy and bring new cool features. For developers it is a certain amount of pain because developers have to reinstall all kind of tools they use (java, macports, Xcode, and so on). It takes some time but still it is usually worth upgrading.

This time when Apple released Yosemite and iOS 8.x I decided not to upgrade. Why? Because it causes more problems than it is worth. See yourself:

  • Apple broke TRIM for 3rd party SSDs. It is pretty bad not to provide TRIM by default for all drives but to complicate TRIM enabling is even worse. Yes, this can be overruled but the cost is lowering security of the OS. Bad.
  • Continuity. Sorry, no. I do not wish to pick up phone calls on my Mac or iPad. I do not want all my devices to ring at the same time, especially when I am on a call with my boss over Skype. Yes, it can be switched off. But I do not want to go and switch it off everywhere somewhere deep inside settings. I want either a question at installation or this feature to be off by default to preserve compatibility.
  • Stability issues. OS X should not come with wi-fi connectivity issues.
  • Performance issues. Nether iOS, not OS X should be that much terribly slower because some head at Apple decided that transparency is cool and windows now should be transparent. Yes, can be turned off but why the system comes with non-optimal settings?
  • Why does it enforces iCloud on me? I do not want to use your iCloud, Apple!
Apple devices and OS are still the best combination to work with. Nobody made even anything remotely close to the convenience of Apple production for the same price. So I stick with Apple for now but I am looking for something else. Not Windows. May be some Linux, which is optimized for humans (no, not Ubuntu). And good hardware that works smoothly, with multitouch touchpad and proper keyboard work. 404, not found so far.

Nov 21, 2014

Your code tells about you more than you think

Suppose you have the following in your code:

$this->pid_list = $this->pid_list ? $this->pid_list : 0;
if (! $this->pid_list) {
$this->errors[] = 'No pid_list defined';

This translates to: “If the value is not true, than set it to false. If the value is false, set the error message”. As you see, there is some room for improvement here: there is no need to set the value to false if it is not true because it is already false.

When you code, think what you write. The code above tells that the author either does not know PHP well enough or he is not thinking clearly.

Speaking too much

Recently when I communicate with people in various languages, I started to notice that people talk too much. They repeat themselves may times using different words, often speak about unrelated things or completely off topic. Sometimes it takes 5-10 minutes to discuss something, which could be discussed 2x faster.

When you need to communicate to others, make sure that you know your subject and what you want to say. Don't let others sit and think: “What does he really want to say?”

Nov 20, 2014

How to change number of recent places in save dialogs on OS X

I have to save files to various locations from time to time. There are many such locations and my side bar is quite long. Adding more and more items there is not a convenient option because such locations often have short living time. It also clatters the side bar.

Fortunately save dialog has recent locations but unfortunately it is limited to five items. I spent time searching for ways to increase this limit and found it:

defaults write .GlobalPreferences NSNavRecentPlacesLimit -int 10