by Oleksi on January 13, 2010
I really enjoy using Newsstand for iPhone app which is an RSS reader that allows to sync with Google Reader. I use it to read RSS feeds while I’m in a train on the way to my work.
This morning I was badly surprised that I couldn’t update RSS feeds to my iPhone anymore. When I click “Refresh” button in Newsstand I was getting all sorts of errors. I even tried to reboot the iPhone but it didn’t help either. I made some real time search on Twitter about this problem and found a couple of tweets where people were reporting exactly the same problem. Made a search in Google and found nothing.
In about 5 hours I checked Newsstand app again hoping that the issue is resolved but the problem was still there. So this is what I did to resolve the problem:
- Uninstall Newsstand app
- Go to app store, find Newsstand app and hit the Buy button; don’t worry, it’s not going to charge you again
- Enter you password; at this point iPhone lets you know that you’ve already purchased this app so hit Ok to continue downloading it
- Once app is installed, run it and type your Google account info if you want to be able to synchronize with Google Reader
- Bum! It’s working again
I think the reason it stopped working was because of some changes that Google recently did on their end.
Update: I’ve just found this blog post on Newsstan’s site that explains how to resolve the issue. Too bad I didn’t look there at first place.
by Oleksi on November 11, 2009
Recently I was working on a small project where I had to implement count down timer on a web page so that when it expires certain action happens (e.g. form submit). Also this timer had to perform synchronization with server side based on user’s browsing session so that user can’t trick it by reentering the page. Here are some lessons learned:
- Don’t reinvent the wheel. There are thousands of samples on the Internet that show how to implement the countdown timers in JavaScript, Flash, etc . I’m a big fan of jQuery so I decided to go this route and looked for jQuery plugin. I found the one called jQuery Countdown that looked very promising so I decided to use it
- Make sure that you account for situation when user uses Back/Forward browser buttons to re-initiate the timer. If you want to prevent this from happening you need to implement synchronization with server each time user visits timer page. I.e. when user first loads web page with timer you need to store the current time on the server. Then every time this page loads do the AJAX call to see if this user has already started the timer and how much time is left
- Never rely on client side’s system time to perform timer related calculations (e.g. how much time is left). Let’s say you retrieve the time stamp from the server of when user initiated the timer. Don’t compare this time stamp with user’s system time to determine how much time is left for the timer. You don’t know what time zone user is in. Perform all time related calculations on the server and return “time left” to the client instead.
- Important: Make sure that timer component you use doesn’t rely on client side’s system time to operate properly. To verify this just change your system time while timer is counting down. For example let’s say you have timer set for 5 minutes and it start counting down. Then you change your system time one hour back. Make sure that one additional hour wasn’t added to countdown. I had this exact problem with jQuery Countdown plugin and had to replace it with other JavaScript code
I hope these advices will help you to avoid the problems I run into and implement robust countdown timer for your web application.
by Oleksi on October 23, 2009
Finally I’ve got back from my vacation in Ukraine and this is the 1st post since then. I haven’t been in Ukraine for 5 years and a lot had changed over there. One thing that really shocked me was the quality of service in bars and restaurants.
In every bar I’ve been, right after we (me and my friends) are placed seated the waiter forgets about us. For example if you need another bottle of beer it may take 15-20 minutes to get it. So I started wondering why is that. It’s supposed to be in best interests of the owner to maintain high quality of service.
And then I realized! Waiters don’t get tips! That’s why they don’t really care! It’s just not common in Ukraine and other post Soviet Union countries to leave tips the way it goes in US (%15 – %20 of order). People leave only change which is less than $1 in most cases! And the waiters’ salaries are measurable. So why would they bother to care about their customers?
It could be obvious thing that commission model is closely related to quality of service but I didn’ t realize this until I’ve seen the completely opposite side.
by Oleksi on September 25, 2009
My vacation countdown begins. In few hours I’m going to leave for airport and then fly to Ukraine – my motherland I haven’t visited for 5 years. Although many bloggers keep blogging while they are on vacation and even on their honey moons I will try to completely stay away from blogging. This means that my next post will be in about 3 weeks.
Here are 4 reasons why I think you need to stay away from blogging while on vacation:
- Give yourself and your readers a break – everyone needs a break at least once a year
- Once you’re back from vacation you’ll be more passionate to start blogging again
- While you are on vacation, many new ideas will come to your mind for future blog posts. You should record these idea so they don’t get lost
- Spend time with your family and friends. Most of them don’t get what the blogging is so don’t be “computer nerd” in their eyes
Once I’m back from vacation I’ll write a follow up post. May be I’ll come up with more reasons why you need to stay away from blogging while on vacation
See you all in 3 weeks!
by Oleksi on September 18, 2009
I was really busy the last two weeks. So busy that I haven’t had a chance to write at least one post for my blog. Although it takes about 30-40 minutes to write a post I still couldn’t afford it. Although by looking at my stats I realized that nobody really cares besides me.

As you can see I got only 62 visits. The max was 13 visitors per day. 3 RSS subscribers. Nothing to be proud of for 3 months old blog. And I’m not surprised that I have such a low usage. I exactly know the reasons why:
- I tried to post once a week and I haven’t blogged for two weeks now. Should post at least 2 times a week
- I haven’t picked one particular subject to blog about. I blog about different kind of things ranging from running online store to productivity tips. I.e. I haven’t defined my niche
- My posts are too long. I should learn how to write shorter posts but more frequently
- I don’t do any promotion of my blog at all. I very rarely comment on ProBlogger, ShoeMoney and John Chow blogs and I have my Twitter and Facebook profiles linked to my blog. That’s all that I’ve done to promote my blog
- I don’t network with other bloggers
You may be wondering why the hell I need to run a blog like this. This blog is the beginning of developing my personal brand. I try to make it useful for the beginners like me so they don’t repeat my mistakes and see what really works. I’m not pretending to be a guru and bullshitting people with content aimed to sell affiliate offers. I don’t even have any advertisement yet…
Hold on, look like I’ve just defined my target audience! LOL
by Oleksi on September 3, 2009
I’m writing this post to prevent you from making the mistake I made. When I started working on online store project the first thing I did was buying domain name and registering hosting account. After that I started researching the shopping cart platform. That was wrong. I should have chosen shopping cart platform first and then find the hosting that is optimal for it.
Every hosting is unique in one way or another. My thinking was to get cheap hosting first while online store is under development and then when it’s ready to go live to switch to different hosting plan if needed. So I chose the cheap shared hosting, installed Magento shopping cart platform and everything seemed to be going well. Until I started importing about 11,000 products into shopping cart.
The whole process of importing these many products was a nightmare. The problem was around different limitations that hosting provider impose on shared hosting account such as memory limit, time out length, etc. So I was getting “500 Server Error” multiple times during different stages of import process. Even after I finished the products import I was still running into different issues due to hosting limitations. Plus hosting support wasn’t that great either.
Online store is still under development but I’m aggressively looking to switch to different hosting provider now. I’ve already made the research and found the hosting that is optimal for Magento based ecommerce stores. It offers the basic plan with the ability to easily upgrade to advanced plan.
So don’t repeat the same mistake I made. I wasted so much time because of it and now I have to spend time on moving the site over.
by Oleksi on August 25, 2009
Not all of us were born with designer skills but many of us want their sites to look nice and professional. This is where we get to dilemma of hiring designer for our web site. I’ve just went through this “hell” and want to share with you the new approach that I’ve used and that indeed worked for me. But before let’s look at the old way of hiring the web site designer.
Old Way Of Hiring Web Designer
I ran through this last year when I was working on eCommerce project for the client. I’ve set up shopping cart platform, entered products and it was time for design. My client wanted something “special” although he didn’t know what exactly he wanted. So I went to Craigslist, paid $20 and put up an ad. Right away I started getting tones of proposals from all around the world (mostly from India of course). My client wanted local designer so I picked around 70(!) candidates for review and eventually picked the one that looked the most professional for the budget that I had.
Then the hell has started. My client has made the deposit, designer started working. I was passing requirements between my client and designer. Designer was submitting drafts. My client didn’t like those since he wanted something “special”. Designer reworked and submitted drafts again. Eventually it ended up that designer spent so much time that she started asking for more money. My client was like “What did I pay the deposit for?”… And the project just failed.
New Way Of Hiring Web Designer
I’ve heard about 99Designs a couple of times and all good stuff. So I decided to give it a shot. Here is why I call it new way. With 99Designs you run the contest. Designers from all over the world start to participate submitting their drafts based on your requirements. You are free to ask participating designer to change something and they’ll be happy to make a change for the chance to win the contest. The only catch is you have to deposit money upfront to the special escrow account. If by the end of contest you pick the winning design these money will be transferred to the winner in exchange for the design source files. In worse case of scenario you’ll loose only $39 listing fee and get your money back.
Here are few things you need to be aware of to run the successful design contest:
- Write as detailed contest requirements as you can. Include URLs of web sites that you like. Check other similar listings first to see how others write the requirements.
- Don’t listen to 99Designs suggested prize for your contest. They put it the way high. For example they suggest to put $600 for web site design and you could get it for $300. The reason they put it so high is they charge %10 of the winning prize. Also check other contests that have already ended to see how much people paid.
- Communicate with designers who participate in your contest. This way you can ask them to change something. Plus other designers will look up the comments and have a better understanding of what you want
- If you don’t have logo design run the separate contest for it first. And then run a contest for the web site pages.
- Note that the final outcome of the contest is one or more PSD files. Don’t expect to get your design in HTML/CSS format. This would be separate project that requires skill that not all designers have. I’ll write another article on this soon.
I hope this info will help you getting your design done. I had very positive experience with 99Designs. Please share your experience.
by Oleksi on August 17, 2009
I was playing the other day with new Samsung cell phone my friend got from AT&T. Comparing to iPhone it was a little lame. But I really liked one feature of this Samsung cellphone that iPhone currently doesn’t have:
When you type on touch screen keyboard there is a vibrating response on when you hit the key right. I.e. if you hit somewhere in between keys you won’t get as much vibration as you get if you hit the key right. This vibrating response in some way mimics the actual key press experience. So this is something that Apple should definitely consider for future releases.
Looking forward in the future, let’s say 5 years from now, I think that touch screen keyboards will respond with vibration at the exact point where fingertip hits. This will mimic almost identically the experience that we have when typing real keyboard key.
by Oleksi on August 4, 2009
The old saying says “The distance from love to hate is just one step”. This is exactly what I feel about Magento – an open source eCommerce platform. I’ve already spent a couple of month using it for online store project and I have this mixed feeling about it.
The reason I picked Magento was because of positive feedback I heard from others. The set of features it offers “out of box” is amazing and you are getting it all for FREE. You can taste Magento through this demo.
One particular feature that I love is layered navigation where you can filter your products by common sets of attributes. This is very useful when you have to offer a large selection of products. For example if you sell shoes, your website visitor can narrow it down to Mens shoes made by Kenneth Cole of Black color. In this case “Mens”, “Kenneth Cole” and “Black” are all different attributes that could be filtered by.
The first time I was upset with Magento was when I tried to bulk import special type of product (configurable product) and discovered that there is no native support for this. Thanks to the great community around Magento I was able to find the solution but it was such a waste of time.
Another thing that drove me crazy was the glitches after importing large amount of products. After I imported about 1,000 products my favorite layered navigation feature just stopped working. I wasn’t alone, the whole community was complaining about the same issue for more than a year. And the only way to resolve this issue was through the guy who found a work around. Chris McKee was so kind that he even worked on my hosting remotely to resolve the issue absolutely for FREE. Thanks Chris for helping me and many others!
There were many other little things that I wouldn’t mention here. But I’m proud that I made it through. I’ve imported around 9,000 products and the next step is to customize the design. Will keep you posted on the progress.