Web

Support WikiPedia

It is the season of giving.. And who else can be more eligible than the WikiPedia Foundation. For those that use the Internet regularly, you know that WikiPedia has become an indispensable resource. This is collaboration and sharing in it’s purest sense. How many of your arguments end now with.. “I checked WikiPedia and I am correct” :).

I know that times are tough for many people, but if you do have the opportunity..take a minute to donate to the WikiPedia foundation. Click on the this link to go to the donation page .. http://wikimediafoundation.org/wiki/Donate/Now/en

They are aiming to raise $6MM and are up to $3.8MM now.

HOW TO : Configure JBoss to follow symbolic links

Jboss, in addition to being an application server also serves static content. We recently ran into an issue where some static content was not displayed when users hit the link. The JBoss server kept spewing 404 errors, stating that the content was not found. On some hair pulling research, we figured out that JBoss, like Apache, does not follow/allow content mapped to a symbolic link.

So for example in your web app, you added a sym link to another directory, where most of your content is stored, Jboss would not show the content, when you go to the link.

Here’s a quick guide to fix this.

  1. Go to the deploy folder of the context you want to configure. For example, if you used the default context, you go to $JBOSS_HOME/server/default/deploy/jboss-web.deployer
  2. Edit the context.xml file and add allowLinking=”true” in the Context (NOTE : This allows Jboss to publish symbolic links on all apps in your application server, if you want to restrict it to just one particular app, you have to edit the context.xml in your specific application folder). Upon adding the option, our context.xml file looked as such



   

   
   org.jboss.web.tomcat.security.RunAsListener

More information on options for the context.xml can be found here

http://www.jboss.org/file-access/default/members/jbossweb/freezone/docs/2.1.0/config/context.html

For the record, Jboss configuration and accompanying documentation is what I call black magic :).. Too many options, too many ways to do the same thing.

Week 6 training and improved charts with Google Charts

Week 6 of the Chicago marathon training and I was again not able to keep up with my mid week runs. Although I did manage to improve the charts displaying the training program :).. I added a new column to compare my actual milege to the recommended milege.

Here are the parameters I used

cht=bvg
chs=400×250
chtt=week+6+Training
chdl=Recommended+Miles|Actual+Miles
chco=ff0000,00ff00
chxt=x,y
chxr=1,0,15
chxl=0:|Mon|Tue|Wed|Thu|Fri|Sat|Sun|
chd=t:0,3,4,3,0,7,0|0,2,0,3,0,0,7
chbh=10

Tracking my runs using Google charts

I wrote a brief blurb, when Google came out with their Google Charts API. The API essentially allows you to represent your data visually by just generating a URL.. I have been wanting to use this in real life for quite some time now and think I finally found a need :). I am going to be tracking my weekly runs with using this API  moving forward.

Here’s a graphical representation of my runs for Week 5 of my traning for the Chicago marathon

Week 5

As you can see, I have been slacking off on my mid-week runs.

I used the following parameters to generate the graph

Type = cht (vertical bars)

Legend = chtt (Week 5 training)

Axis Values = chxl (Mon, Tue, Wed, Thur, Fri, Sat, Sun)

The URL I used to generate the image is http://chart.apis.google.com/chart?chtt=Week+5+Training&chts=FF0000,20&chdl=Miles&cht=bvs&chxt=x,y&chxl=0:|Mon|Tue|Wed|Thu|Fri|Sat|Sun|&chs=300×150&chd=t:0,0,3,0,0,0,10&chco=4d89f9,c6d9fd&chbh=20

I still need to figure out, how to show the values in the image and play with the ratio of the axis.

You can get all the information you need about this API by visiting this link http://code.google.com/apis/chart/

Rooting for the Mozilla team..

I downloaded multiple instances of Firefox 3.0 to support Mozilla’s attempt to set a world record for the most number of downloads in a day!!. Their servers had some problems dealing with the flood of download requests but seem to have stabilized now..Help set the record, but downloading a copy of Firefox 3.0. I have only used it for a hour now, but it is faster when I use Gmail. And it has a ton of new features that I haven’t even started playing with…

HOW TO : Create dynamic pages in WordPress

I have decided to run the Chicago Marathon again this year. But this time, I am running it for a cause. I am raising money for the ASHA foundation, a non profit entity helping to educate the poor and needy in India. As part of the fundraising process, I wanted to share my training information with the folks that are donating for this cause and hence the need for this post.

I was looking into creating a dynamic page in wordpress (the software that powers this blog) that would list all the posts related to my training for the marathon. Google came to the rescue as usual and pointed me to the “InLine Posts” plugin by Aral Balkan.

You can do create a dynamic page by

1) Download the “InLine Posts” plugin from here : http://aralbalkan.com/wordpress

2) Unzip the file and upload the contents to the plugins folder in your wordpress install. It is located in the wp-content folder.

3) Activate the plugin by logging into the admin interface of your wordpress install.

4) Create a new page and add the number of the post you want displayed in the page by listing the post ID in the following format : [[POST_ID]]

Tools of the trade : IBM Page Detailer

I discovered IBM Page Detailer, a tool to analyze web traffic between a client and a server in a graphical format, while listening to the brilliant Steve Sounder’s lecture on “Even Faster Web Sites” from the Google I/O 2008 conference. And credit goes to Ray for posting the list of videos from the Google I/O conference.

Am still playing around with this tool, but it looks like there is a lot of potential here. Rather than acting as a proxy, like most of the HTTP analyzers do, this tool actually places a probe in the clients network stack. And not to mention that it is free to use :).