alex in a nutshell

December 28, 2014

Update WordPress via SSH

Filed under: — Alex Salamakha @ 2:53 PM

I’m trying to keep my web server as secure as possible and I disable FTP on the server.
Ever since that moment I’ve been having troubles with automatic updates of WordPress but never got around to fixing it. Now I have.
WordPress offers two options out of the box: FTP or FTPS (SSL)

Since I didn’t configure FTP, I naturally selected FTPS (SSL), since I use SFTP to upload files to the server. WRONG!
SFTP is NOT the same as FTPS. Here is a long article explaining details.

Both FTPS and SFTP use a combination of asymmetric algorithm (RSA, DSA), symmetric algorithm (DES/3DES, AES, Twhofish etc.) and a key-exchange algorithm. For authentication FTPS (or, to be more precise, SSL/TLS protocol under FTP) uses X.509 certificates, while SFTP (SSH protocol) uses SSH keys.

Anyway, how do you solve this particular WordPress auto-update problem?
By installing a plug-in, of course!
SSH SFTP Updater Support is the easiest way to keep your WordPress installation up-to-date with SFTP.
It gives you one more option on your update screen:


December 26, 2012

Canon MX870 on OSX 10.8 Mountain Lion

Filed under: — Alex Salamakha @ 3:25 PM

Spent a couple of hours today making my Canon MX870 printer work.
The printer is connected to the LAN via Ethernet. No luck printing under OSX while Windows 7 and 8 were perfectly fine.
It turned out that default Bonjour name of the printer needs to be shortened via Printer’s native menu.

  1. Point to http://IPofThePrinter/. You can get the IP from the router’s DHCP table
  2. Click Advanced
  3. Click Other Settings
  4. Under Bonjour settings change Service name to something short, mine is MX870
  5. Click OK at the top of the page
  6. Go back to your Mac, open Preferences
  7. Click Print and Scan
  8. Remove the printer by pressing “-“ button
  9. Add the printer and scanner again by clicking “+” button
  10. Enjoy !

December 19, 2011

Refreshing unread counts for IMAP folders in Outlook 2007 or 2010

Filed under: — Alex Salamakha @ 11:30 PM

I’ve got three Google Apps accounts with IMAP interface and I use Outlook to manage my emails.

It’s a great tool, but it has an annoying feature – when it starts it doesn’t display unread counts for IMAP accounts. So you have to physically click on every IMAP account to see whether you have any new messages or not. Pretty horrible, if you ask me.

Thankfully, it’s not that hard to solve this problem.

First of all, enable Developer tools:

Right-click Outlook toolbar, then choose Customize the Ribbon menu

then tick Developer toolbar:

You will now see Developer toolbar

Click on Macros button.

In the new window type GoThroughAllAccounts or whatever name you fancy and click Create button

In the editor window type

Sub GoThroughAllAccounts()
For Each Account In Session.Accounts
//iterate through accounts and go into each folder
Set Application.ActiveExplorer.CurrentFolder = Account.DeliveryStore.GetDefaultFolder(olFolderInbox)
End Sub

In the tree on the left click on Microsoft Outlook Object, choose ThisOutlookSession and double-click it. A new editor window will appear.

In the window choose Startup event from the drop-down on top-right and type

Call GoThroughAllAccounts

in the body of the sub-routine

Save your script and close the script editor.

Now we need to set permissions for your script to run on startup.

In Outlook click on File >> Options >> Trust Center and then press Trust Center settings button

Click on Macro Settings link on the left and choose one of the two options:

1) Notifications for all macros you will have to press Enable macros every time you start Outlook

2) Enable all macros – it will work without bothering you, but you have to be more cautious with this settings as you may end up getting viruses.

I use option 2).


April 26, 2011

Making Delicious plugin work with Firefox 4

Filed under: — Alex Salamakha @ 7:02 AM

I love my Firefox 4, but I had one little problem since upgrading – my Delicious plugin stopped working. Since Delicious team is slow with releasing updates, here is the list of steps to fix the problem:

  1. From the menus select Help > Troubleshooting information
  2. On this new tab, near the top, you’ll see a field called Profile Directory.  Click the button in the field to launch Explorer for Windows or Finder if you’re using OSX.
  3. In the window which has popped up navigate to the extensions folder.  Inside that should be another folder named “{2fa4ed95-0317-4c6a-a74c-5f3e3912c1f9}”.  Inside this is a file called install.rdf
  4. Open install.pdf in any plain text editor.
  5. Around line 8 you should see some XML which looks like this: em:maxVersion="4.0b3pre" />
  6. Update this to em:maxVersion="4.0" /> (See we removed the b3pre bit?)
  7. Save the file and restart Firefox.
  8. The delicious extension will now work.

September 23, 2009

.Net 4, Azure SDK and WCF HTTP Activation

Filed under: — Alex Salamakha @ 10:33 AM

Azure SDK requires WCF HTTP Activation to be installed. However, WCF HTTP Activation won’t install if you have installed .Net 4 prior to that. Here is why:

when you install the .Net 4.0 beta, for some reason it also overwrites at least one of your .Net 3.0 (WCF) files, at least on 64bit systems, namely

c:\windows\\framework64\v3.0\Windows Communication Foundation\SMConfigInstaller.EXE“.

So the bad part is, with this new version in place you cannot longer enable the “WCF HTTP Activation” Feature of Vista and Win7 and even worse, uninstalling .Net 4 beta does not restore the original version.

So if you’re building a new system, make sure you install WCF HTTP Activation prior to .Net 4.

If you have screwed up like I did, install Windows 7/Vista on a VM, copy SMConfigInstaller.EXE file back, restart your machine and enjoy.

September 19, 2009

Microsoft TechEd Australia 2009

Filed under: — Alex Salamakha @ 4:55 AM

It’s been fantastic to get away from the office and spend few days at sunny Gold Coast.

Every paid TechEd delegate received an awesome package from Microsoft and HP:


Now I have a little carry-around-meetings netbook, HP Mini 2140. Despite being a bit too sluggish for development in Visual Studio 2010 and not having Bluetooth it is a really nice machine which has proven itself for the job.

Back to the conference. There were quite a few interesting sessions. Here is my top 5:

  • Chris Auld from Intergen, NZ presenting on Azure platform. Great overview and comparison of all cloud platforms (Session ARC201).
  • Jim Webber, Thoughtworks’ Global Head of Architecture, presenting on architecturing REST-based systems and hypermedia. Jim is a fantastic and passionate presenter, I enjoyed both of his sessions (SOA321 and ARC305) immensely.
  • Joel Pobar presenting on F# and its application in applications. It was a very interesting session (DEV450) indeed, one of those sessions that any developer should love –  playing with new cool stuff  with new technology. I’ll be catching up with Joel during his upcoming Sydney visit to talk more about F#.
  • Nick Randolph on interconnectivity between clients (including mobile) and Azure services, queues, etc viagra vs cialis. Full of practical stuff on Azure (Session SOA341).
  • Rob Farley from LobsterPot Solutions presenting a hands-on session on SQL Azure (Session SQL305).

And, as usual, TechEd is a place where you meet interesting people and get inspiring ideas. It was great to catch up with ex-colleagues from ediCargoWise who now run their own company, EnvoyAT.

Looking forward to TechEd 2010, it’s going to be great to spend few full on technical days at Gold Coast this time next year.

September 18, 2009

Apple and treatment of iPhone OS beta testers

Filed under: — Alex Salamakha @ 8:50 PM

I was boarding a flight to New Zealand few weeks ago and was about text my wife when my iPhone switched to its emergency screen. I quickly connected my laptop straight after take off only to see  iTunes error message about my OS version is too old.  That’s Apple’s way of telling a beta tester that he needs to upgrade his beta to a new one, which was released on the same day. No warnings, no nagging, just shut down the bloody thing. There goes my in-flight entertainment. FAIL!

Accident? Well, it’s a beta after all, however, you can’t downgrade back to a stable version even if you are prepared to wipe the entire phone off. FAIL! Well, technically you can downgrade but jailbraking it first, but it’s another story.

Got to hotel, spent 2 hours downloading new beta over both ridiculously slow and expensive Internet connection.

Yesterday it happened again. Right in the middle of a busy day iPhone OS 3.1 beta 4 decided to switch itself off. That’s how I found out about final release of 3.1. FAIL!

Companies should treat its beta testers with respect.  In contrast, Microsoft released Windows 7 RC due to expire early next year, few months after the planned release. Not only that, users get plenty of warnings on when their beta will expire, enough to plan ahead for an upgrade.

I fail to see any logic behind Apple’s decision to treat its customers like shit,  blocking any ability to use the phone except for emergency calls until the upgrade. If you really want me to upgrade, tell me in a form of a message. I may need phone now, but in few hours I’ll do it. Nah, why bother? FAIL!!! FAIL!!! FAIL!!!

I will never try Apple beta software again. This experience wasn’t good’ enough. And HTC Hero on Android platform looks exceptionally good.

July 27, 2009

Mac support from Microsoft

Filed under: — Alex Salamakha @ 10:14 AM

Today I decided to buy Microsoft Office for Mac 2008 via Microsoft Home Use Program. Ordering is easy, paid with a credit card, downloaded the DMG file and voila – it’s all installed in a matter of minutes. Here comes the interesting part – ACTIVATION.

Product activation refused to work behind my work proxy. Fair enough, not every proxy is catered for. That’s what manual activation is for? Right? I thought so too. The screen looks pretty straightforward, call your call centre, tell them your product key and hardware fingerprint and ask them for activation code:

Office Mac 2008 Activation screen

Office Mac 2008 Activation screen

It took about 15 minutes and 10 repetitions for Australian activation hotline to understand that  I’m activating Office for MAC. No, it’s not a Apple product, it’s a Microsoft product. No, I can’t give you installation ID as I only have Hardware Fingerprint number. No, I don’t want technical support, I want to activate a product I bought. No, I cannot go back to the retailer (WTF?!!!!), I bought it directly from Microsoft!!! What Url? Which site I downloaded the product from? Oh, you don’t know what Digital River is? etc.

It turned out, they don’t activate MS products for Mac, my option is to contact customer service for Mac by visiting a MS customer service for Mac support link, which doesn’t even have Australia as an available country for support, not to mention that it will take a day or two at very least.

20 minutes later I was transferred to technical support(WTF?!) that decided to fix my proxy or ask my system administrator to bypass it. Sorry guys, it’s a bank, I can’t switch it off. No, I don’t want to re-install the product, it works just as you designed it, all I want is to activate it. No, I don’t technical have problems, I JUST WANT TO ACTIVATE THE PRODUCT I’VE JUST BOUGHT!!!

1 hour later, after sending them screenshots of activation screens (another WTF), links that point to customer service page, etc.,  I was transferred to a department that supposedly looks after Home Use Program only to be advised to call my local support line where I started about 2 hours ago. I gave up and just hung up on these absolutely pathetic useless customer service officers .


  1. When designing a product, allow users to use it immediately. Vista works without serial number for a month.
  2. When deciding to force customers into a certain path, make sure the path exists.
  3. When setting up call centres in India make sure workers understand your product range.
  4. When outsource, make sure you at least set them up technically. I couldn’t hear half of what they said due to background noise (“Sir, it’s a call centre, there is a lot of noise here”) and whenever I could hear them, the line was breaking up (joys of IP telephony). Thankfully, they called back on my mobile number to resolve this issue.

My first experience as a Microsoft Retail client is abysmal, contrary to my MSDN user experience. I was treated like a thief and when requested help felt like a ping pong ball bounced between various hopeless operators.

It would’ve been easier to download pirated version of BitTorrent than to go via legitimate channels. No wonder piracy is blossoming.

PS: I finally activated the product by finding an Internet connection without proxy.

PPS: The only time I will consider calling Microsoft so called Customer Service is when I decide to raise my blood pressure by 20 points.

October 1, 2008

Lookout under Outlook 2007

Filed under: — Alex Salamakha @ 1:18 AM

Amazing lightning-fast search for Outlook, Lookout, doesn’t work out of the box with Office 2007.

However, you can make it work by following instructions from Mike Belshe, one of Lookout authors:

August 18, 2008

iPhone wireless sync with multiple PCs

Filed under: — Alex Salamakha @ 8:39 PM

Since my Dopod d810 died as a result of an accident, I needed to get a new smartphone. The choice is obvious – iPhone 3G. It’s a nearly perfect device, however iTunes sync is sub-optimal. I couldn’t get it to sync consistently at work, where I have Outlook 2007 with Exchange 2007 Server.

Sometimes it would sync, sometimes it wouldn’t. After hours on the phone with Apple support I’ve narrowed down the problem – if Outlook doesn’t talk to Exchange, everything works. As soon as Exchange is in the picture, it becomes an issue. I couldn’t get my iPhone to sync with Exchange directly due to security policies at my workplace.

On top of that, sync with Outlook usually means that my Exchange calendar will contain both business and private events, which is rather sub-optimal, I’d rather keep my work environment business-only site.

So ideally I want the following:

  • Don’t keep any personal info at work machine
  • Keep one central repository of all contacts and calendars (outside of work)
  • Sync iPhone with contacts on my home laptop (backup reasons and in case I don’t have an Internet connection for some time)
  • No wires and as automated as possible

After some digging around and talking to several colleagues, I’ve came up with an optimal way of addressing all my sync needs. Take a look at the high-level diagram of the solution:

iPhone Sync diagram

I already have a Google account, and Google Calendar is an awesome tool, BUT iPhone doesn’t sync with it directly. Here comes NuevaSync. It’s a free service that provides Exchange interface to Gmail, Google Calendar, and Plaxo.

You need:

  1. Create a Google Account. It’s free.
  2. Download Google Calendar Sync utility to synchronise your Outlook/Exchange with Google Calendar. It’s free.
  3. Create a NuevaSync account. It’s free.
  4. Configure your NuevaSync account by providing your Google Account credentials.
  5. Configure your iPhone to work with NuevaSync:
    • Click Settings >> Mail, Contacts, Calendar
    • Add a new Exchange account with NuevaSync credentials. Click here for full instruction (requires login on NuevaSync web site).
  6. In Settings >> Fetch New Data uncheck Push email to save your battery. Instead select Fetch time more appropriate for your needs. I started with 15 minutes, but found 1 hour to be heaps better for battery life.

That’s about it.

If I get a meeting request in my work inbox while I’m away from my desk, the request trickles through to my iPhone within short time and I can still make it.

Ad-hoc sync with my MacBook Pro works great via iTunes whenever I connect the iPhone to it. Apple did a fabulous job of syncing the iPhone with multiple machines, something I could never get my Windows Mobile phone to do.

I don’t use email sync. I get too many emails at work and I don’t feel like getting them on my iPhone. I get all my personal emails on the iPhone, however. In order to do that I’ve set up all my mailboxes in Google Apps (you can bring your own domain as well) and enabled IMAP via Google Control Panel. iPhone works with IMAP mailboxes very good and I found myself using iPhone mostly for all my email needs. As I do it in small intervals throughout the day, I don’t need to allocate a huge chunck of time every evening to clear my Inbox.

This tip will also work if you have a Windows Mobile device.

UPDATE: Google now offers Exchange interface, hence there is no need to use NuevaSync. Just point your phone straight to Google:

Next Page »
Copyright © 1997-2017 Alexei Salamakha. All rights reserved
email:    Alex Salamakha on Facebook    Alex Salamakha on LinkedIn