Archive for March, 2010|Monthly archive page

Mapping is awesome!

It’s been quiet because We have been working on a new feature – mapping nearby restaurants. We have just pushed it out of the door!  You can access it from any profile page If this profile has any nearby restaurants. As always, feedback and bug report welcome.

Here is a direct link for nearby restaurant of Bibiche Bistro. All restaurants on map are displayed in colored marker. There are total 5 colors and each color indicates rating of the restaurant.

a snapshot for your taste..

smooth, more smooth

some things just got easier for ya!

As promised in the previous post, Smooth registration is now online.

What is it about? If you try to do any action(by clicking a button or something) that requires you signed in, You will get a small green box below the link where you can register or sign in. You will be redirected to the same page once you have registered or signed in successfully.

seamlessly. It is like you have never left the same page.

There have been a problem that user submit duplicated restaurant. Analysing the log It seems that some users submit without doing a search on the site. So we changed the flow and show the ‘add restaurant’ link only on the search result page.

as always, feedback welcome.

oh, just saw this insane news: New York State Assemblyman seeking to ban all salt in restaurant cooking. I am just amazed how ignorance people can be.

Smooth login vs Jumping between login pages

smooth...

Don’t you hate it when you click a link that subsequently redirect you to a login page? Sometimes without even being redirected back to the previous page. arggg!

We want a smooth login without jumping back and forth from different pages. With web 2.0 and all the javascript libraries (We use JQuery) avaialbe, It isn’t really hard to implement. A smooth process will make user experience enjoyable. Nothing beats that, Right? Put it on your top todo list If you are starting a social webapp.

Well, put your money where your mouth is. you say.

Lo behold, We just added this feature! Now try any action that requires user being register, such as “Publish a review” or “Heart a recipe“. A popup appears, supplies your username/password then go, page refreshes and you are logged in! Simple and Easy!

Let us know if you experience any problems. The next coming feature is popup registration.  Stay tuned.

Patient is a virtual for debuging and solving problem

So I was closely monitor the apache log and noticed the avatar upload action seems to be failing. After further testing, recipe image upload also not working. Ewwwwww…

Avata upload feature can be found everywhere in normal webapps. But the backend is little complicated than it seems. We don’t want one web server serving both static and dynamic content as static content might uses up and ties up the available processes. That’s especially true for file uploading.

So we split things up – serve all static content and cgi using front end apache, while still proxying the rest of requests to the backend application server.

But that’s troublesome to setup and we tried multiple solutions. here a sample config:

<Location />
ProxyPass  http://backend:8888/app/
ProxyPassReverse  http://backend:8888/app/
</Location>

<Location /upload>
SetHandler cgi-script
Options +ExecCGI
</Location>

The problem here is that all requests are routed to the backend no matter what the Location directive order is. After few times of rereading the apache doc, we gave up and try to work around it by putting the upload script on a different vhost. Problem seemed to be resolved and We were happy until the avatar upload is failing. To summary the cause, JS cross site scripting.

doh!

Unwilling to dive into js cross site scripting issue, I am determined to find a solution in apache. After few hours of googling and asking in forum and irc, eventually I read about exclamation point in ProxyPass from a post. Go back  the doc again.

The ! directive is useful in situations where you don’t want to reverse-proxy a subdirectory.

Ha. That’s my solution! Why didn’t I read it more carefully? ProxyPassMatch Directive also comes to handy. Just make sure the exclusions come before the general ProxyPass directive and In my case, outside of the Location / block.

So now cgi and static content are served by yummytime.com from the frontend apache.

avatar and recipe image upload bug gone! Sorry for the wait, now please upload :)

Yummytime.com went live

Yes. After months of development, Yummytime went live on Jan, 20th 2010. We will call it as the first stage 1.0 as we learn from our users and  more features being rolled out.

You may have seen goodspot.ca if you were searching for toronto restaurant. It is a website I started as a hobby in 2006. It only lists toronto restaurants and user can only posts anonymously. It is so simple and works as a hobby. The site is hosted on a cheap vps and 2 months ads revenues paid for the entire year hosting.

But that’s enough. My computer programming skill has got much better and the web has evolved with ajax, web 2.0 and whatnot. And most importantly, I still love food, dining out, cookings.

Yummytime.com is so much better.

Now you can register an account and track what you have reviewed. And There are 6900+ listing of restaurants from Vancouver, Montreal and Toronto(More to come). 4 times of what it used to have. Wait, It gets better. Along the years I have become more interested to cookings. Yummytime.com also lists 1500+ recipes with delicious photos. Not to mention a big up to web 2.0 for smooth user interaction.

So go register an account and start posting!  and Don’t forget that feedback welcome!

get your hands on it :)

now get your hands on it :)

Follow

Get every new post delivered to your Inbox.