Category: English

English articles

QWERTY, ЯВЕРТЪ & ЧШЕРТЪ

QWERTY, ЯВЕРТЪ & ЧШЕРТЪ

For the English text, see the button after the Bulgarian text.

По време на първия ми сблъсък с Windows VISTA RC1 забелязах, че официалната българска Phonetic подредба, предоставяна с VISTA всъщност е “стандартната”, но едва ли използвана от някой “ЧШЕРТЪ” подредба, създадена от купчина университетски ентусиасти и някак преминала през утвърждаването на БДС.

Също така RC1 версията на VISTA има и инсталационни проблеми с външни клавиатурни подредби, създадени чрез Microsoft Keyboard Layout creator. Александър помогна с това, отбелязвайки че единствено User Accounts Control има някакъв проблем с инсталатора на подредбите, генериран от MKLC. Ако забраните UAC (единствено за инсталацията), може да си инсталирате каквато и да е външна подредба.

Досега аз бях използвал фонетичната ЯВЕРТЪ подредба, предоставена от Станимир Стаменков. Попитах Станимир за изходния код на подредбата и след това прибавих някои мои комбинации на AltGr+клавиш, накоито бях свикнал преди.

Прибавих:

* Знакът за евро (AltGr+е)
* [] и {} (AltGr+[] и съответно AltGr+Shift+[])
* „ и “ (AltGr+ и AltGr+.)
* § и № (AltGr+’-‘ и AltGr+Shift+’-‘)
* и-ударено (AltGr+и)
* Ы и ы, (AltGr+ь/Ь)

Да, разбирам че създавайки още една подредба просто внасям още повече хаос в наличните български клавиатурни подредби. Но на мен тези клавиши са ми нужни и затова предпочетох този път:

* Свикнал съм с тези клавиши и предпочитам да си ги имам
* Вече имам и изходния код на подредбата и ако ми потрябва нещо за в бъдеще, просто ще го добавя.

Ако харесате нещото, изпозлвайте го. Може да го свалите от тук и да го използвате според словията на CC-Public Domain лиценз. Отбележете, че този лиценз е доста по-свободен от лиценза на този блог. Ще ми е приятно да чуя коментари, предложения или препоръки.

During my first encounter with Windows VISTA RC1 (in Bulgarian) I noticed that the official Phonetic layout, provided with VISTA, is actually the “standard”, but barely used by anyone “ЧШЕРТЪ” layout, created by a bunch of university enthousiasts (in Bulgarian) and somehow passed the validation of the Bulgarian Standards Institute.

Also, RC1 build of VISTA had some issues with custom keyboard layouts, created by Microsoft Keyboard Layout creator. Alexander helped with that, stating that only the User Accounts Control has an issue with the installer, generated from MKLC. If you disable UAC (for the installation only), you can install any keyboard without any problem.

So far I was using the Bulgarian phonetic ЯВЕРТЪ keyboard layout, supplied by Stanimir Stamenkov. I asked Stanimir to provide me with the layout’s source code and then I added few more AltGr+keys, to which I was used before.

I added:

* EUR sign (AltGr+E)
* [] and {} keys (AltGr+[] and AltGr+Shift+[] respectively)
* „ and “ (AltGr+, and AltGr+.)
* § and № (AltGr+’-‘ and AltGr+Shift+’-‘)
* ѝ key (AltGr+I)
* ы/Ы keys (AltGr+x/X)

Yup, I do realize I create even more mess with just another keyboard layout out there. But this layout suits me pretty well, mostly because of two reasons:

* I’m used to these keys and I need them
* I have the source and if I need another key, I just should add it.

If you like that thing, feel free to use it. You can get it from here and use it in accordance with the CC-Public Domain license. Please note that this license is different than the license of this blog (It’s much more relaxed actually). I will appreciate a comment here, if you’re using, modifying or having ideas or suggestions about this layout.

WordPress 2.0.4 upgrade

WordPress 2.0.4 upgrade

Today I switched to WordPress 2.0.4. Forgetting about this nasty MySQL bug, I got again all “????” in my Bulgarian postings.

For my future reference, I must remember to add the following line:

$this->query(“SET NAMES UTF8”);

to the end of _function select($db)_ in _wp-includes/wp-db.php_. Sick!

Apart from that, the upgrade went smooth.

Great Company, E-Boghandel [2]

Great Company, E-Boghandel [2]

Few weeks ago I shared here some problems with one book delivery. Just few days later I shared my extreme satisfaction after the resolution of the case.

Today I understood that I was not mistaken in my evaluation about the services, which SAXO & E-Boghandel provide.

You may ask why? The story is quite short: The day before yesterday I surprisingly found in my p.o.box the lost copy of the Harry Potter book, which E-boghandel sent August 21st. It seems that the post offices recovered and (finally, after 2 months and a week!) delivered the first package to me.

I was both astonished and worried. Astonished, because I did not believe I will see the first book again – I was thinking that it’s either lost, or they will recover and return to sender. Worred, because now I have two books, and I paid only for one – obviously something was wrong in this calculation.

I wrote E-boghandel the following letter:

> Hi,
>
> Today I received the book, which was mentioned in the attached mail thread.
>
> I do not know what took so long the book to come to my door, but now I have two Harry Potter books.
>
> Can you tell me what are my options and to which address I have to ship the second book back?
>
> It seems post office has really screwed the things up… 3 months delivery, wow!
>
> Many thanks in advance!
> Doncho Angelov

I was almost ready to ship the book back, but today I received this answer:

> Hi,
>
> You have only paid once, so please keep both copies of the book.
>
> Best regards,
> _name removed for privacy reasons_
> SAXO.com | e-boghandel.dk

I am really thrilled. I am just twisted Bulgarian boy and I never, ever received so good and people-oriented attention from a company, which provided only web-serivce to me. The people at e-boghandel.dk proven once again that they do not care just about the books and the profit, but also for your level of satisfaction from their service.

I want to thank them again for this great service. I might decide to give the first book as a present to someone, but I will definitely keep the second one, because it’s not just a book. It will remind me about this case and about the fact that there are great companies around us too!

Right click slow responce resolved?

Right click slow responce resolved?

I was experiencing very nasty problem for the past months: when I right click a file on the notebook, it took hell lot of a time to display the context menu. Sometimes it took even more than 30 seconds or so. The most nasty thing (apart from this problem) was the fact that I can’t do anything, while I’m in “waiting state” for the context menu – if you click somewhere else, the menu will hide immediately after shown and you will have to right-click and wait again.

Today I made a huge step to the resolution of this problem. Everything started with this forum posting, about which I red in Windows XP Expert Zone Community WebLog. The resolution, which was suggested there, was simple:

> try this…
>
> Go into any folder’s menu
> Click Tools->Folder options
> Go to the “View” tab
> …And uncheck “Automaticaly search for network folders and printers”
> Click OK…

I tried these steps and Ohhh, Miracle – the right click reaction seems much faster now. It will take some time until I confirm my observations, but so far it seems much, much faster.

I’ve still got some delays (for example – in the PDF files), but these are acceptable (and unavoidable) for now.

Another place to look for probable resolution of this problem is the following registry key:

HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers

This is the registry place, where most of the Context menu handlers are located. If you start removing the handlers one by one, you will most probably see which one of these guys are causing the long delay. And you may switch off the context menu handler (if you can afford).

It’s not bad idea at all to backup your registry before proceeding. If you do so, you will be able to restore the things, if you mess up something! Also, System Restore Point is not a bad idea before proceeding.

I will continue digging in this direction and I will most probably share my findings, if there are any…


Днес успях да преодолея много досаден проблем, който имам от година. Проблемът накратко: при натискане на десния бутон в/у папка или файл, на компютъра му отнемаше от 10 до 30 секунди да ми покаже контекстното меню. Много досадно и дразнещо!

Проблемът се оправи, когато приложих следните инструкции:

> От менюто на Explorer в коя да е папка:
> Избери Tools->Folder options
> Отиди на “View”
> Махни отбелязаното на “Automaticaly search for network folders and printers”
> Натисни ОК…

Това направи нещата доста по-бързи. Все още се наблюдава забавяне при някои файлове, но това засега е поносимо (и неизбежно)…

Qtec Bluetooth and ActiveSync

Qtec Bluetooth and ActiveSync

Recently I was obsessed with the idea to force my Qtec 9090 to use its Bluetooth capabilities for ActiveSync-ing with my notebook. Both gadjets have Bluetooth and both were capable of using it (well, at least I thought so) – making Bluetooth working should not be a big deal.

I made some searches and hit the following resources on the net:

1. Synchronizing HP iPAQ h2210
with Bluetooth (Belkin Dongle) using MS ActiveSync 3.7
, which explains in general how to setup Bluetooth from both sides in order to make the synchronization. During my search I noticed these good articles as well:
1. Bluetooth ActiveSync Guide for Windows XP Service Pack 2
2. ActiveSync Troubleshooting Guide : Synchronization Errors
3. Bluetooth AutoSync for Microsoft Smartphone 2003; Bluetooth ActiveSync Guide for i-mate Smartphone2 [These links are just for my reference for the future, when I will need similar procedure for Smartphone]
4. ActiveSync with Bluetooth and Windows XP SP2 (another good explanation with screenshots)

2. Going crazy with ActiveSync via bluetooth at XDA-Developers forum, which explained me how to patch my bluetooth with its latest software release. Actually, I had to download and install Pocket Bluetooth Tools. The latest version (1.1.0.0) works for me so far…

3. Activesync Port Availability Via Bluetooth, How to reassign port numbers ?

4. Auto-start for ActiveSync via Bluetooth?, whicih teached me how to start my Bluetooth ActiveSync with a push of a button

After this reading I decided to step on. The first problem I had was “no serial connection” between the two devices. Reinstalling my Bluetooth notebook drivers fixed that one.

After the successful pairing it took me some time to fix the big mess (because of the previous problem and many changed settings), but as a result now I have working Bluetooth synchronization – just in the way I want it to work. Now I do not need the craddle, but just the power cable, because with this Bluetooth working continuously the device became even more power-hungry…

More Secure Image

More Secure Image

Current plugin version: 1.0rc2.DA1

Few months ago I found a great plugin SecureImage, which helped me to get out of all nasty spam comments in my blog. However, during the plugin’s usage I found some very nasty problems:

1. Probable and dangerous SQL injection in some parts of the code (original author was already notified)
2. Sometimes the PNG image was not displaying correctly, and also PNG image stream contained the whole blog’s main page after the PNG image. Obviously, this was causing wrong images for some contents of the main page (most of the times the contents were OK and the PNG image was displayable).
3. Pingbacks and trackbacks were disabled. Mike Baptiste’s comments told me how to re-enable this back, and I integrated it in this custom version of the plugin.

As direct result of all the problems above, I decided to create new version of this great plugin. The new version is based at the original plugin, plus the three fixes above. Please feel free to download and use it. Installation instructions are simple – just copy the plugin and enable it – it should be quite sufficient.

Please have in mind that I also changed a bit the form with the secure image – I like the image to be just after the edit box, where the user should enter it. I find it more compact this way.

If you find a problem, or have an idea, or just want to say something, please do not hesitate to comment below!

_Update_: It seems to me that the pingbacks/trackbacks still do not work. Any help with that will be much appreciated!

SecureImage “invalid image” problem

SecureImage “invalid image” problem

I was a happy user of the SecureImage plugin for some months, while at some point few of my friends started to complain that they cannot see my “secure image”, which caused them to loose ability to comment, unless they are registered users.

Initially I did not believe my eyes, but after some research I found a very nasty generic problem in the plugin, which could cause some of these “header already sent” errors, about which the users complain in the plugin’s main page. Unfortunately, these warnings were just the tip of the iceberg – the main and most nastiest problem is when my readers cannot see the secure image: both the browsers (IE and FF) were failing to display it.

It was not easy to find the problem, but I finally nailed it down. The problem is in the plugin’s PNG generation code. When the plugin is asked to generate the PNG image, it does all correctly, but after that it passes the control to the standard WordPress processing, which causes your whole main page’s HTML code to be concatenated after the PNG image’s stream. This caused two problems:

1. Depending on your current site’s contents, your readers may or may not see the PNG image, which will definitely cause them not being able to comment at all (sick!)

2. Your traffic will be increased, because instead of serving 30K (the PNG image average size), it will serve 30K+<the contents of your index.html at the time of the serving>. In my case each image went to about 100K because of this.

The solution of this problem is easy: you just have to replace the “print” command of the image generation:

print $wpdb->get_var(“SELECT img_data FROM $wpdb->secureimage
WHERE img_name = ‘$image'”);

with “die” instead:

die ($wpdb->get_var(“SELECT img_data FROM $wpdb->secureimage
WHERE img_name = ‘$image'”));

This will cause your plugin to stop at the very rigth point just after the image is sent to the client.

SecureImage SQL Injection

SecureImage SQL Injection

Recently I installed SecureImage WordPress plugin. Main reason: Comment spam went so high I was absolutely mad and angry, and I decided to give these bastards a lesson.

However, on the same day after installing it I found some problems in the plugin. The plugin itself was working, but the problems were serious. I wrote the following email to the author (Thom Skrtich):

>Hi Thom,
>
> I recently installed 1.0rc2 version of SecureImage plugin.
>
> I have found one minor and one major problem in the code. I am attaching the a file with the “old” version and my modifications. Here is the description of what I’ve found:
>
> __I) SQL Injection Attacks__
> Unfortunately, the plugin contains few places, where SQL injection attacks are possible. Please diff my code and original code – you will find these places. I have added mysql_real_escape_string on these places.
>
> __II) MD5 hash visible__
> This is much minor problem than the one above, because the worst thing, which may happen is to bypass with some logic the protection code. I have modified the code, and now it stores two MD5 hashes: one for the image (completely different than the code word) and the original code word one. Please take a look at the changes – they are minor I suppose – easy to understand. However, please do not hesitate to ask me for information, if you need more explanations.
>
> Please have in mind that I have not yet published this information. I will schedule my post to appear in a week, so the users would have enough time to upgrade. The flaws are serious and they must be resolved, because they might be crucial for the user’s databases, if someone decides to use them.
>
> Best regards,
> \-\-\-
> Doncho

Thom reacted quite quick and he assured me that he will change the plugin. But today there is still no intention of this, so I decided to post this, because the users must be informed for the danger, and also because I have made some additional modifications, which can be outlined as a new, modified version of the SecureImage plugin.

Weather Icon 2

Weather Icon 2

Today I spontaneously decided to upgrade my Weather Icon plugin, which gives me so nicely the weather in some cities I’m interested about. The plugin was quite old and I was absolutely sure there would be a newer (and better) version.

And so it was: in the main developer’s blog I found that the recent version is 2.0.1, which was much newer than what I alreeady had.

The instructions were really simple. After 15 minutes I had my new plugin integrated and working in the same way as before. But this time I saw there was more: languages, options etc. So I decided that I shall translate the plugin in Bulgarian, because all the rest of my blog is in Bulgarian as well.

Another hour and it was all done. I think I succeeded locating one of the developers, so soon the translation will be integrated in the main package (I suppose). But in case it’s not integrated and in case you need WeatherIcon plugin translated in Bulgarian, here is the archive, which contains both .po and .mo files. Grab it, use it, change it – it’s up to you. But most important – have lots of fun :).

My Gravatar problems

My Gravatar problems

During the recent weeks so called Gravatar service was in the focus of many blogs, both Bulgarian and foreign ones. The fuss around this new cool stuff was great, and as a direct result today Gravatar serves more than 756 Milion global avatars (and counting)! If you want to know what Gravatar is, you can either look at Yovko’s blog (in Bulgarian), or Gravatar::About (in English).

But unfortunately for me, I was unable to register my own gravatar for a long time. I was quite mad, since I was feeling it’s very unfair to me. And since it was not working only for the emails, which belong to my own domain […@doncho.net], I was even feeling it too personal!

Gravatar’s site behaviour was strange: If I try to register a gravatar with an email, which belongs to my domain doncho.net, Gravatar was responding that it has sent a confirmation mail and I should click the link in that mail in order to activate my account. But… nothing like that happened – I never received such email and respectively I was never able to register such email. Since all my correspondence goes through this domain, I was quite mad! Finally I ended up with only my g-mail registered in Gravatar service.

At the end I realized that without external help my gravatar mission would be a great failure. But I was thinking:

> Come on, this service already has 750 Million subscribers, do you really think that someone can take personal care for you? And also – it’s free?
> Naaah, that will never ever happen, I should not bother writing at all

These were my thoughts. But as I already mentioned, I was despered for Gravatar. So I decided to write.

Finding an email was not an easy task, but I finally succeeded. I used both ways: a message to the administrator of Gravatar’s forum and their support forum to post about my problem.

I got my answer on the same day! This Great Guy, Tom Werner, had some time to look at my desperate call for help, and he activated my “stalled” account. The email sending problem is most probably still standing, but I finally have an active gravatar, which is associated with the email address in doncho.net domain.

Tom also helped me with another (quite stupid) move. When I was registering in the Gravatar’s forum, I used my whole gmail as login name! Stupid, very stupid! I realized how stupid I was immediately after I finished my registration ;), which made my stupidity permanent, except if an admin does not help. As you know, forum login names are [the only] permanent thing, which you cannot easily change. And since I made at least one post, it was just a question of time SPAM robots to harvest my email and to start sending me even more spam. Sick!

So I had to use Tom’s help again. It was quite a shame for an experienced Internet used (as I think I am) to describe such lame behaviour, but I needed some help. It’s just like in the doctor’s office: you say everything so the doctor can give you the best treatment.

So I did, and so Tom did. In few hours this last nasty error of mine was resolved.

Thanks again, Tom! You have my (thumbs up) for you and your service! Keep up the good work, and give us G2 as soon as it gets ready to hit the streets ;).

Theme: Overlay by Kaira Extra Text