jump to navigation

deli.ciou.us vs. Delicious Toolbar buttons: Keeping logged in August 19, 2008

Posted by User Imageindus in : deli.cio.us , add a comment

Delicious launched a new version a few days ago. All good, new features, etc. etc. But, I liked it’s simple interface — just Tag the things you visit and save it for future use. What else is needed when you wanna bookmark.

The new IE7 Toolbar buttons are way too much — like recently visited links, and a lot of new features which I don’t necessarily need. So, I wanted to keep using the old toolbar buttons — but it won’t work! Everytime I try to bookmark a page, it will force an account sign-in for a new session :(

Here’s how to keep using the old IE7 Toolbar buttons without the pesky sign-in:

  1. Install the new toolbar buttons on IE7 (the install process itself is quirky). Do not uninstall the old toolbar buttons
  2. Sign in to delicious.com using our account via the new IE7 buttons
  3. Hide the new buttons (forever)
  4. Keep using the old ones without any trouble

 

Rate this:
3.7 (1 person)

Apache logs, Load Balancer and X-Forwarded-For August 13, 2008

Posted by User Imageindus in : apache, tips , 1 comment so far

In most normal configurations Apache’s web server logs look like this:

75.104.128.36 - - [13/Aug/2008:14:06:32 -0700] “GET /index.html HTTP/1.1″ 200 21279 “http://khaitan.org/” “Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.16) Gecko/20080702 Firefox/2.0.0.16″

This is achieved by using the following log format in the apache virtual host config, which looks like this:

%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-agent}i"

However, when you move apache behind a Load Balancer say F5 BigIP, the logs start showing the IP of the load balancer instead of the actual client IP. This may result to error in reporting viz. uniques, and other issues if your application relies on knowing the client IP. It is also possible that any geo based code may also stop working. There is an easy way to fix it.

Good news is that most of the modern load balancers already have a mechanism of sending the client IP. This is done by inserting an HTTP header X-Forwarded-For. It may look something like this: UA-CPU: x86
Accept-Encoding: gzip, deflate
X-Forwarded-For: 67.161.42.194

First, Make sure that your Load Balancer is sending the X-Forwarded-For header. Drop this small php file on your server which is behind the load balancer and make sure that the IP of the machine from where you are connecting to shows up in the header as shown above.


<?php
$headers = apache_request_headers();
foreach ($headers as $header => $value) {
echo "$header: $value
\n";
}
?>

If you do not see that header, change your load balancer settings (Google X-Forwarded-For for your specific load balancer) or better still call your Sys admin to do it for you.

Finally, modify your log directive in apache by replacing %h to %{X-Forwarded-For}i

%{X-Forwarded-For}i %l %u %t "%r" %>s %b "%{Referer}i" "%{User-agent}i"

 

Rate this:
3.7 (1 person)

MySQL data sharding using Spock Proxy August 12, 2008

Posted by User Imageindus in : Mysql , add a comment

Yesterday at the Silicon valley MySQL Meetup, Frank of Spock.com talked about Spock Proxy. Spock Proxy is a fork of MySQL proxy which has been built to meet the data sharding needs of Spock.com, the people search engine.

Here are some highlights:

 

Rate this:
3.4

Java Technologies at Yahoo! August 5, 2008

Posted by User Imageindus in : Java, Yahoo , add a comment

Yesterday, I attended a talk at SDForum presented by Dean Yu and Joshua Blatt of the Java platform team at Yahoo! The Java platform team centralizes the Java efforts for Yahoo’s non-open source efforts. I say non-open source as the platform team covers everything except things like Hadoop, etc. which are in the public domain.

Java as a technology is not native to Yahoo! The platform at Yahoo! was primarily C/C++ and PHP at the frontend (mostly). Java came through several acquisitions which were running Java stack, notably:

Here are the raw bytes from the session:

 

 

Rate this:
3.7 (1 person)

Twitter should count out @replies and @user from status text July 17, 2008

Posted by User Imageindus in : twitter , add a comment

Twitter messages are limited to 140 bytes (not characters, if you are multi-byte speaker!). However, a lot of messages now carry the usernames, either for @replies or for simply refering to @user in the message. As the twitter userbase grows, people would start running out of shorter names like @t, @ev or @1ndus and eventually go the email route having_my_long_name@emailhost.com.

The day is not far when twitter screen names would @mylongname2008. This one takes 10% of the text from 140 available.

At the minimal twitter should count out the @replies and @user from the 140 characters and make that part of the meta-data. 

The API can handle this transparently, It just requires adding a new field called to-user-screen-name in the API.  The API already has all the information for the sender ids, sender screen names, reply-to-user-id, user-id, etc.

 

Rate this:
3.9 (3 people)

WordPress inching towards full CMS capabilities July 14, 2008

Posted by User Imageindus in : Web, WordPress , add a comment

Matt announced WordPress 2.6. Features include:

 

Rate this:
3.9 (2 people)

Afghanistan’s hidden treasures July 5, 2008

Posted by User Imageindus in : Afghanistan, Art, Ganga, India , 1 comment so far

The “care takers” of Afghanistan’s precious antiquities from the ancient era concealed the treasures from Soviets, then taliban. These were feared to be lost; with the help National Geographic society along with Afghanisatan’s National Museum the unearthed trove reveals Afghanistan to be a metling pot and major trading hub where people from “east” brought muslin, spices, and ivory while the people from the west brought exotic minerals, gems, tools.

While reading the recent article on this discovery, I found a stunning picture of Ganga, the river goddess, carved out in ivory.

River goddess ganga

See the original photos and story at NGM. The treasure is going to be on display at Asian Art Museum of San Francisco in San Francisco, California between October 24, 2008, to January 25, 2009.

Rate this:
4.2 (4 people)

Barack Obama’s lucky charm: Carries a miniature god Hanuman in his pocket June 9, 2008

Posted by User Imageindus in : Hinduism, hanuman, obama , 2comments

Time magazine’s photo blog has a very interesting picture where Barack Obama is displaying the things he carries in his pocket to bring him luck. One of them is a tiny metal statue of the Hindu god Hanuman.

What caught my eye that tiny icon (or Murti) did not look like one of god Hanuman as it has 4 hands, one holding a chakra, the other a trishul or a gada, the other two hands have a lotus and a conch, presumably. These 4 things are associated with Lord Vishnu (Lord Krishna is an incarnation of Lord Vishnu). However, the tiny statue has a tail (it also looks like that while showing this to the reporters, the face of the statue was touching the palm). Sending this image to a professor at Delhi University for further analysis.

Here is the slightly annotated version of the original picture.

chakra.jpgchakra.jpgchakra.jpg

Rate this:
4.2 (4 people)

Starbucks goes Free Wi-Fi June 3, 2008

Posted by User Imageindus in : starbucks , 1 comment so far

USAToday is reporting that Starbucks now has Free Wi-Fi.

Thirsty for more business during the worst slump in its history, Starbucks will try to lure more customers by offering two hours of free AT&T Wi-Fi a day.
The Wi-Fi freebie will be available starting Tuesday to customers who purchase a minimum $5 reloadable Starbucks Card, register online for the Starbucks Rewards Card program, and use the card at least once a month. The two hours must be consecutive. New members also receive a voucher for a free drink.

I don’t need to stop at my friendly Panera bread for a muffin and “a” free WiFi with my order :-)

Rate this:
3.7 (1 person)

[GoogleIO] OpenSocial Primer: What is OpenSocial May 28, 2008

Posted by User Imageindus in : Google IO, Opensocial, io2008, shindig , add a comment

Chris Schalk, Kevin Marks, Patrick Chanzeon on stage at Google IO

Patrick’s High level overview of OpenSocial

  1. Making the web better by makting it social
  2. Jaiku’s Jyri Engestrom’s 5 rules for social networks: What is your object? What are ur verbs? How can ppl share objects? What is the gift in the invitation? Are you charging the publishers
  3. How do we socialize objects online without having to create yet another social network?
  4. Deveoper uses API to access the social objects. eg. LinkedIn
  5. Problem is we have 100s of Social Networks hence the developer needs to learn 100s of different APIs for accessing social objects
  6. Hal Varian talks about Network effects. He is a chief economist at Google. OpenSocial is an implementation of Ch. 8 from his book “Information Rules”
  7. OpenSocial Foundation created by Yahoo, Google, myspace. Goal of the foundation is to keep the specification open.
  8. With OpenSocial you learn the programming model once, er, 80% once and 20% specific to the container
  9. iLike, Slide, Flixster, RockYou etc. are building OpenSocial compliant apps for bebo, linkedin, hi5 etc.
  10. 275 million users are OpenSocial container ready

Chris Schalk on building OpenSocial Apps

  1. Client API in Javascript, REST coming up
  2. JS API in three parts a. People and Friends. b. Activities c. Persistence
  3. JS function can be embedded in gadget running in an OpenSocial container
  4. JS Callback function for returned data
  5. Posting an activity is similar to posting an activity and getting a callback
  6. Persistence. Not clear where the data persists? container or gears like client?
  7. Server side REST services: /people/{guid}/@all for getting a collection of all people connected to user identified by @guid All part of shindig codebase. does pagination etc. REST looks more promising for business apps on OpenSocial compared to JS which could be for cool apps
  8. Serverside integration options: Google AppEngine, EC2
  9. Checkout Google IO code lab

Kevin Marks now

  1. Containers provide a social context
  2. OpenSocial separates app logic from Social Context
  3. An app sees user ids — the container makes them people
  4. Users understand the social contract of the containers
  5. Save apps and users from re-registration hell
  6. Containers don’t choose the users, users choose to join
  7. They grow thru homophily and affinity
  8. Network effect can bring unexpected userbases
  9. OpenSocial gets you tol all their users
  10. Make your plan to localize. You’ll be surprised where the users are coming from
  11. Not just social networks. Social network sites, Personal dashboards, Personal CRM systems, Sites based around a Social Object
  12. Abstracted container concepts at Viewers + friends and Owner + friends. Owner and Viewer are defined by the Container. The application gets IDs and connections to other IDs
  13. The Owner may not be a person. It could be an organization or an object.
  14. Kinds of container — Social Object sites like imeem, flickr
  15. Kinds of container — CRM systems like Oracle CRM, Salesforce.com
  16. Kinds of container — Any web site enabled by Google Friend connect
  17. Container sites control policy. Check the Env., Getting information (Viewer info may not be available, may need permission). Spreading you application (Sending message to activity). Monetization and Installation

Closing Remarks by Chris, Patrick

  1. Apache Shindig open source software the allows you to host opensocial applications
  2. Heavy partner involvement
  3. Host within an hour’s worth of work
  4. Incubated at Apache
  5. Build process of Opensocial apps automated through maven (why not ant?)
  6. SocialSite at Sun is an Open Source project that allows you to turn your web app into a OpenSocial container
  7. Leverages Shindig
  8. Built by Dave “Roller” Johnson of Sun.
  9. Complimentary to Friend Connect
Rate this:
4.2 (4 people)