Askaro morphing into a place discovery and recommendation site

Yesterday I just pushed to production the first installment of a series of steps to change askaro from a hyperlocal q&a site into a place recommendation and discovery service. Started the process by redesigning the question detail page (with the help of Lasse and Richi). For example, here is a pretty successful page about finding the imposible good paella restaurant in barcelona.

You can now respond with a place, optionally explaining why you'd recommend it.  Askaro now uses the google local search api, relying on google places. Google places has a long way to go, lots of places are missing. Today, I was trying to recommend Au port de la lune, a french restaurant near La Boqueria, in Barcelona, but the restaurant isn't in google maps, go figure. Obviously, coverage of US, UK, etc is much better. There seem to be competing efforts to build databases of places, now that the space it hot (foursquare, et al) but I haven't found one with decent terms and comprehensive data. It's a very hard problem, understandably.

So, askaro is narrowing down the focus, from a an anything goes local Q&A service to a site where to ask (and provide) recommendations in your local area, i.e. where to get a haircut, find a good bike repair shop, have MSG free dim sum, by halloumi cheese, etc. You could also save recommended places for future references.

Next on my plate is to fix the question list page, which is a royal mess, FB integration, etc. Let me know if you bump into bugs, have any suggestions, etc 

NOTE: translations are now back to 90%. Patience.

Posted by

Comments [0]

Does Askaro need a sitemap?

I've had taken my eye off the ball vis-a-vis SEO for askaro site. Time to change course.

The issue at hand is that google has only indexed approx 400 questions but in Spain alone there are more than 1200 questions. Furthermore, the url of the questions in the google index are both duplicate and wrong, pretty disastrous. You'll see a bunch of URLs with _PERMALINK_ in them. This is an artifact of a hidden html node that I keep in every question page to be used as a template for new answers. Since it's hidden via CSS, I thought google would be clever enough to not index it.  I was wrong.

I just added a rel=nofollow a few minutes ago, hoping that google would remove them from the index. In a few days, I might remove the template node from the html altogether and use a different strategy to construct the html for answers (via ajax)

So, back to the problem at hand. Why isn't google slurping the question pages even though askaro's home page rank is 5? I was thinking that perhpaps the issue is that each question is 3 hops away from the home page. For example:

Home -> United States -> San Francisco -> Best tiramisu around embarcadero?

So, a couple of weeks ago I decided to add a link to all the questions in the home page (right after the 3 latest questions showcased). Note that google has followed the link and indexed the page, but still hasn't followed the link to every question.

I'm hesitant to spend time buiding a sitemap for all the questions and keep it up to date. But would a sitemap solve my problem?

As an alternative to build and  maintain a sitemap, I'm thinking of having a link to all questions for a country in the country page in order to increase the number of internal links pointing to a question page, and reduce the number of hops from home. I'm also considering having a clean (and separate) url structure for the all question pages. For example, for all questions (all countries)

/questions
/questiosn/2
/questions/3
...

For a specific country questions (e.g Spain), something like this

/questions/es
/questions/es/2
/questions/es/3
....

Am I on the right track with my thinking?

Update:

Got some public and private feedback telling me to get moving and code a sitemap. Will do shortly. In the mean time, just finished I was was set out to do. So, I changed the url to the all questions page (to /question from /?questions=1 who is now permanently redirected). Also created a url for all questions for a specific country. Forgive me for spelling them out here, I'm not going to hide my desire for a thorough indexation. So, let me signal it to Big G.

Preguntas en España

Questions in United States

Questions in Germany

Questions in UK 

Preguntas en México

Update 2:

Got more feedback from friends, so ended up

1) Reduce the number of countries in the home page (for first time visitors and google bot)

2) Increased the number of top cities in the home page to 10. So, now New York and San Francisco are in, in addition to the top Spanish cities such as Madrid and Barcelona

3) Some minor speed improvements (in question detail page). More to come

4) Remove duplicate html titles

5) Added a sitemap (re-generated every day). Might do it for the other languages or "upgrade" it to a geo sitemap (georss)


 

Posted by

Comments [1]

Askaro chosen as one the 5 finalists to the European startup 2.0 competition

Tomorrow I'll give a presentation about Askaro in Bilbao, followed by a short Q&A section. This as part of the annual European startup 2.0 competition, where Askaro was chosen as one of the 5 finalists.  Is only a 5 minute talk, no ppt or keynote material prepared. I'm going commando.  This competition is organized by the nonick conference about social networks and online communities.

Love to meet fellow developers/entrepreneurs. See you there.

Update: Askaro got the 3rd place at nonick. Thanks for the recognition.

-Ubaldo Huerta

 

Posted by

Comments [0]

From the blog to Askaro's Facebook page

Thanks to RSS Graffiti everything we post in Askaro's blog is automatically published in Askaro's Page in Facebook. There are easy ways to post from a blog to a personal profile in FB, but it is not that easy to do it for a FB page, many apps that promise that don't work, but RSS Graffiti is great. 

Posted by

Comments [1]

Askaro now available 7 languages

We just have received 5 new translations to Askaro. In addition to English and Spanish, now the site is available in German translated by Sebastian Holzapfel, French by Matt Martin, Portuguese (Brazil) by Cleber Lima, Greek by Tasos/Kostas Koutsavlis and Hungarian by Gabor Hauberger. Thanks so much! ¡Gracias!

Askaro is about exchanging information by locals, so being available in the local language is simply a must. We are looking forward to get more translations, so if you feel like having Askaro in your language, please, read these instructions or contact us at translation@askaro.com

Posted by

Comments [0]

Translate Askaro into your language

If you're interested in having askaro available in your language, you can actually make it possible. It's not that hard, but it's time consuming.

Instructions:

1- Download the latest copy of translation file for your language

2- Edit the translation file. See how to work with translation files.

3- Send the translation file to translation@askaro.com We'll notify you when your translation contributions are live on the site. Once you've sent to us the translation file, please wait until we notify you that the file has been accepted and your translation is visible on the site.

To continue working on your translation, you should download the again the latest copy. We'll get back to you within a day or two after you send us the translation file via email.

To recognize your efforts, you'll appear on the about page as member of the Askaro team.


Posted by

Comments [2]

From LAMP to app engine (part 1)

In installments, I'll describe my experience developing a web site, and operating it, based on LAMP (in my case, redhat, apache, mysql, php), versus app engine (google's "cloud computing" offering). The LAMP site is a classifieds site called loquo (started in 2002, and acquired by ebay ibn 2005, I left the project in 2006). Askaro is the app engine based one that Eduardo Manchon and I  "launched" yesterday, and will be used in the comparison.

Right off the bat, I'll glad the world has evolved; the gains, beyond the promised offer of scalability (hopefully I'll need it :-), are palpable from the start, both in ease of software development and web operations, which is to me the hardest thing for any web startup, if it grows, of course. I don't pretend to write an evaluation of app engine, compare it with amazon ec2, azure, et al or talk about cloud computing in general, instead I write down what it feels like going from LAMP to a very specialized "cloud" offering, in this case app engine, designed for request/response http, not a general purpose one. 

So, rewind back to 2002. I was coming from the world of enterprise java apps (java), C++, NT services, some MFC, etc. After ditching dot net (couldn't stomach DLL hell, full windows xp reinstalls, etc), I went onto learn my first scripting language (PHP), and to master a web friendly (fast reads) SQL database: MySql. Naively, the first incarnation of the app ran out of my DSL line in my Barcelona flat (this was the time before ~$100 per month dedicated servers and all-you-can-eat bandwidth, at least in europe).

Before any line of code was written, I had to install, and fully understand, the security model of mysql, compile php module for apache, learn apache configuration, just to make a developer sandbox nest. Now, if I didn't compile php, extensions, tweaked my.conf, etc, no chance I would be able to operate a production site with even modest traffic. So I paid my dues, hands dirty early on.

Fast forward to  2009: to get started, all is need is app engine sdk which includes a developer sandbox that has an integrated toy web server, not suitable for production, but it mimics the production environment, which is what you'd care  (the Apache) and the datastore (the Mysql). 

Now, I had to learn python for the job, diveintopython.org got me to appreciate the language. You take it from there. That's the P in LAMP. I let others compare both languages in terms of syntax, expressiveness, number of extensions, etc. To me, they don't even belong to the same class. The L (linux) part of LAMP, well dissolves itself. I don't know which linux disto, if at all, my code runs on. No more worries about load, the nightmare, or not, translates into cost, since I'm charged by the cpu hour (yesterday, askaro went a few cents over the free quota, maybe because I'm using shim cache which relies or because the way I'm doing the bounding box queries is very inefficient). So, the linux disto, kernel compilation, load, etc hell translates into optimizing the code to reduce computation, an ultimately, my cost. Now, this is an unknown "science" to me, but my motivation for understanding where CPU cycles went is high. Traffic yesterday was 3200 visits, about 8 pages/visit although there is a lot of ajax action that isn't counted as a page view doing this bounding box queries.

I haven't put to test app engine scalability: the best it has handled so far, is a burst of 10 request/second when we were mentioned in a national newspaper. Loquo, I recall, peaked a 50 request/sec under my watch. Even at that, no amount of meditation or ashtanga yoga was enough to help me endure the desperation dealing with server load spikes, php module leaking memory, recompilations, server down, etc. For months, apache was configured to recycle child processes every 500 requests or so, that's how bad it got. No piece of mind, ever. The memory leak "resolved" itself by migrating loquo to a datacenter in Holland after ebay acquisition. More capable hands, the fact it moved to debian, differente kernel, who knows, but it went away. Right before the migration, the site was running at ev1server (If I recall, 4 front apache server with a hardware load balancer, 3 mysql (1 master for writes, replicated to 2 slaves for reads, plus a mail server (qmail), image server, maybe another one for svn, otrs, trac, something like that). 

In the app engine world, I don't do web operations. Well, little of it, I'll get to it. When you push your code to the "cloud", it lives in a runtime, where http requests get dispatched to your code, so apache, it's modules, compilation, hardware load balancer out the window. 

There is a lot more to talk about, staging environment, data sharding, versions, backups, vendor lockin, schema evolution, offline processing, etc in both worlds, but this is getting to be to long to read in a screen.

Posted by

Comments [3]

Askaro mockups

I'd like also to thank Lasse and Richi for their work getting askaro off the ground. I received an invaluable education on how to produce cleaner html markups, also learned not to fear CSS any more; well, I still cut corners here and there, but for the most part, I've emerged stronger as a result of brainstorming design ideas, branding, artwork, etc, etc in countless days and nights with them. Professional, and personal integrity, is also in the mix. That's all, for now.  

Posted by

Comments [0]