Recent Tweets

    Elsewhere

     

    February 2010
    S M T W T F S
    « Jan    
     123456
    78910111213
    14151617181920
    21222324252627
    28  

    Archives

    Tack sharp eyes

    One of the key things that I try to do when I take portraits is to focus on the eye of the subject. This is a well documented technique and works very well. Also, each lens has a sweet spot aperture for which the picture is really crisp. I find that it is at f/2.8 for my Canon 50 mm f/1.4 and f/4 for my Canon 70-200 mm f/2.8L. When I play with these sweet spots, I seem to get impressive tack sharp eyes. This is a crop from one of the self portraits that I shot with my Canon 50 mm at f/2.8. Next time, don’t shoot full wide for crisp results. Go ahead and try stopping down your aperture and find your sweet spot.

    Praveen Kumar

    Self Portrait

    Tack sharp eye

    Tack sharp eye

    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Beginning Alpine Skiing

    From Lake Tahoe

    This winter, I decided to give Alpine Skiing a try. As I live in the San Francisco Bay Area, Lake Tahoe is the natural choice for me to go for skiing. Me and three of my friends went to Tahoe the Christmas weekend. We stayed in The Ridge Sierra at Stateline, NV.

    I had never skied before. So, I decided to take beginner lessons. We were considering two resorts, Heavenly Ski Resort and Sierra at Tahoe. Heavenly was located very close to where we were staying and Sierra at Tahoe was a 30 minutes drive. As some of us felt that Heavenly is expensive and we got good recommendation about Sierra at Tahoe from a ski rental shop, we decided to go for Sierra at Tahoe. They had a 2.5 hour beginner lesson, ski rental and a full day restricted lift ticket for $89.

    We reached the resort at 10 am on the day after Christmas and the resort was crowded. It was a sunny day. We first had to check-in at their computers, pay for the package and proceed to the ski rentals. I got a 153 cm ski. It was awkward for me to walk with the ski boots in the beginning. The lesson started at 11:00 am. We had an instructor named Scott. We were taught about how to put on the skis, how to remove it, how to get back from a fall, wedging (French fries and Pizzas), stopping using wedge, climbing up hill without lift, getting on and off the lifts, making turns, stopping using C turn, slowing down using S turn, etc. I fell down a few times. Soon, I grasped some of the basics and managed to avoid falling by stopping using a turn or slowing down using a wedge.

    After the first day lessons, we took the lift to the bunny slopes about 10 times and applied some of the things that we learned on that day. I was able to appreciate some of the things that I didn’t quite get during the lessons. There were a few times, I fell when I get off from the chair lift. One thing that I noticed was that the times that I fell was only when there were four people riding the lift. When there were lesser people on the lift, I didn’t have an issue in getting off the lift. At the end of the day, we were so happy that we did reasonably well for the first timer. We wanted to come on the next day as well. But, my friends were warning me that we will feel so tired that we won’t be able to make it. So, we decided to defer the decision until the next day morning.

    The next day, I didn’t feel a thing. Two out of four of us opted out. Myself and Riaz Khan decided to head out for the second day lessons. It was bright and sunny when we left Stateline. However, once we crossed South Lake Tahoe, it was snowing heavily. We were wondering if we should turn around and call it off. But, we were too super enthusiastic to turn around. Finally, we got the message that it was an awesome day to ski from the ticketing lady. Also Sierra at Tahoe was running a promotion and upgraded our previous day ticket to a 3-pak at just $61 more. This time, we opted for the afternoon class and took the lift to the bunny slopes quite a few times in the morning. I got a chance to talk with various strangers while I was on the lift. One of such strangers was a Australian named Mark. He said that he will travel to the North America this season and will go back to Australia when it is winter there as he loves skiing. He identified me as an Indian and asked me why most of the Indians are either Software Engineer or a Doctor!

    I liked the teaching style of Scott and opted for his class on the second day as well. But, he insisted that I get a different instructor to get another perspective on the skiing basics as everyone has a different teaching style and approach. However, we anyway went ahead with Scott. The second class was all about making turns to slow down. We were taken to a higher slope, a 5 mile trail marked as green circle. We were coming down this slope using S turns to slow us down. We were still skiing wedged at this point. We did quite well for a beginner on his second day. I fell only once the entire stretch and I slowly gained the confidence to negotiate steeper slopes using turns. We then completed another very satisfying day at Tahoe.

    We (Riaz Khan) are planning to go for another trip soon to get our next level lessons. Scott told that we were ready for parallel skiing and turns in our next lessons. I am very eagerly looking for our next trip to Tahoe.

    I didn’t take any of my cameras to the ski resort as I don’t want to get side tracked into photography. So, there are no pictures of me at the ski resort.

    I want to share some thoughts for the beginners about the gears. Buy a snow pant. It is a very good investment. I am happy that I bought Coumbia Titaninum snow pants. They make to feel very comfortable and warm. Invest in a branded water/wind-proof gloves. I bought North Face Montana and it was really awesome. Some of my friends got cheaper gloves. But they were complaining that their fingers were freezing after they fell a few times in the snow as water went inside it. Look for pockets in the gloves to use hand warmers if needed. Next, get good goggles. You might need it on a very sunny day and even more on a snowy day. You might want to get one with good UV-A/B protection. So spend those extra dollars to get a branded goggles, because the last thing that you want to compromise is on your eye sight. Get a beanie.

    Keep some energy bars and water with you. Going to the restaurant on a crowded day will waste your time that could otherwise be spent in skiing. If you have energy bars, you can finish your meal while you are on the chair lift.

    Finally, keep snow chains in your car as the weather might change drastically and there are some parts of the highway where they might make snow chains mandatory. Even though we had a FWD sedan (Nissan Altima), we didn’t use snow chains during this trip. But, we carried the chains in the car.

    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Random links for week 50

    • We were troubleshooting an interesting problem with GCC/gdb that caused gdb to report an argument passed by reference as if it was passed by value. In the process, I was digging up some DWARF information. Ever wondered what exactly gcc is adding to support the debuggers when you use ‘-g’ switch? Michael J. Eager has an excellent “Introduction to DWARF Debugging Format” article.
    • I Found that Sun Studio dbx can handle binaries created by GCC with DWARF-2 debugging information very well. Sun Wiki has a page describing the DWARF differences between Sun Studio and GCC compilers.
    • Last week, the launch of Russian missile, Bulava caused quite a stir in Norway. Russian strategic nuclear forces blog claims that the test was a failure. However, I see some comments that suggests that the spiral motion was a feature instead of a bug. Here is the video of one of those UFO (later identified as Bulava) sightings.
    • To include a little more variety in my exercise routines, I am planning to include some Plyometrics. Currently, I am improving my weighted squats by going for high intensity squats. Squats is one of the exercise that I hate. However, in terms of fitness routines, I find doing something that I hate pays off very well.
    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Random links for week 46

    • Editing big chunks of text in Firefox text area is a pain. I am using “It’s all Text” Firefox add-on to edit text from a text area in external editors like Emacs, Vim, etc. I have configured my add-on to use emacsclient. I use this heavily when I have to edit text in TWiki, Bugzilla, Wordpress, etc. This post is written in Emacs using this add-on.
    • Speaking of TWiki, I discovered last week that there is an Emacs major mode for editing TWiki markup. It is erin.el, named after Erin Gray. It has some WYSIWYG capabilities and a markup sampler. I will start using it to see how useful it would be.
    • I started using Org-babel, that lets you to execute source code in various languages within Org-mode documents. It is really cool! It can also do cool syntax highlighting in the exported files.
    • I store my daily weight measurements as an Org table in Emacs. I was using Gnuplot to plot these values to track progress. Last week, I learned about R project and started experimenting a bit with it as well. Data visualization really helps.
    • From next week, I am adding HIIT cardio sessions to my exercise routine. I am going to have my HIIT sessions on non-lifting days, which seems to be the most recommended strategy. I don’t love cardio as much as lifting weights. But, I am eagerly looking for experimenting with HIIT.
    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Random links for week 45

    • I have an Apple TV and I run XBMC and Boxee on my Apple TV using Patchstick. Apple introduced Apple TV 3.0 Software last week. Somehow, the software just got upgraded automatically causing me to lose XBMC and Boxee. Patchstick isn’t available for Apple TV 3.0 yet. So, I had to downgrade it using another Patchstick product (Canadian based).
    • I am using Whey protein supplement as my post workout drink for a while now. Recently, I came across Casein protein supplements and started using it too. I take Whey after workout and take Casein before going to bed (only on workout days). Here is an article that compares Whey and Casein.
    • I am using magit mode in Emacs with my git repositories. It is quite helpful most of the times.
    • DTrace is a powerful tool for tracing a process. Recently, we have started working on defining Statically Defined Tracing for our system. I feel that it is a quite powerful way to approach system tracing.
    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Random links for week 44

    • Since I updated to OpenSolaris update snv_124, I am facing issues with Indic fonts rendering. I have created a bug describing the problem. The root cause of the problem isn’t diagonized yet. If someone knows what could be wrong, please let me know.
    • I keep hearing a lot about Haskell lately and wanted to get introduced to functional programming through Haskell. David Carlton and friends recently started a Haskell study group. It was a great opportunity and wonderful setting for learning Haskell! I just joined the group. We are studying Real World Haskell. The book is available online. I am currently on chapter 3 and it is engaging. Please feel free to join the mailing list, if interested.
    • My latest Emacs addiction is Org-Mode. I started using Org-Mode to maintain my GTD workflow. I am also using it as my note taking tool and daily/weekly status reporting tool at work. Org-Mode is very powerful! Give it a try and you will find out.
    • I just got back into the habit of going to gym regularly after a couple of busy months at work. This time, one of my primary goal is to able to do unassisted chin-ups. Here is an article on how to increase one’s chin-ups. Currently, I am focusing on negatives.
    • I am a big fan of Hyderabadi Chicken Biryani. I came across this great recipe on YouTube and tried it out a couple of times. The one I prepared yesterday turned out really great! If you are a Biryani fan, I would strongly recommend this recipe.
    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Fix mouse cursor jumping to top left corner of screen on OpenSolaris

    Update 2009-11-07: This issue is fixed in OpenSolaris build snv_126.

    OpenSolaris dev repository update snv_116 introduced an XOrg bug that caused the mouse cursor to jump to the top left corner of the screen very frequently. Apparently, there is some floating point math issue is involved using MMX/SSE2 instructions. I was living with the workaround posted on bugzilla. I was hoping that the bug would soon be fixed in the subsequent updates. Yesterday, I updated to build snv_122 and found that the issue still exists. Hence, I am posting about the workaround to fix this issue.

    $ pfexec bash
    # cp -p /usr/X11/bin/i386/Xorg /usr/X11/bin/i386/Xorg.orig 
    # echo 'xf86SigioReadInput+9?w 770f 9090 9090' | mdb -w /usr/X11/bin/i386/Xorg

    This bug is currently tracked in bugster.

    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Random links for week 36

    • My (ex-)manager David Carlton has decided to leave us to join Playdom. I learned a lot in the past two years working with him. We are going to miss him a lot! Playdom is fortunate to have such a talented individual on board. I am sure he will be bringing a multitude of perspectives into the game development at Playdom. I wish him all the very best in his new exciting game development career.
    • I am using git as my primary version control system at work. Lately, more of my friends have shown interest towards using git. For them, I would recommend knowing why git is better than other version control systems.
    • Recently, I have started editing multiple files with the same name (under different directories) simultaneously on my GNU Emacs more often. This got me confused easily and made me prone to making mistakes by editing wrong files. Here is a cool way to make buffer names unique in GNU Emacs.
    • Due to certain changes that are happening recently in our team, being agile is more of a necessity that ever before. I am seriously thinking of attending Agile Open California. Agile Open California is a coalition of agile practitioners and advocates with an intention to provide an opportunity for learning, networking and growth to the Agile community in California and others who are interested.
    • We are currently working on transitioning our software to 64-bit on Solaris. We run into interesting problems each day. Solaris 64-bit developer’s guide is a source of must know information for anyone who is working on developing 64-bit applications on Unix like platforms, especially Solaris.
    • Since I returned from India after my recent vacation, I haven’t got much chance to workout in the gym. I would like to use this opportunity for refreshing my appreciation of the basics of weight training and get a fresh start as early as next week.
    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    Per-user Mercurial Installation

    Recently, I had to install Mercurial on one of our Solaris 10 development machines without root access. The installation procedure was a little bit tricky. So, I thought it would be helpful to share the experience.

    First, I downloaded Mercurial source and extracted it. This is a standard procedure for installing any package from source.

    $ wget http://mercurial.selenic.com/release/mercurial-1.3.tar.gz
    $ tar -zxvf mercurial-1.3.tar.gz
    $ cd mercurial-1.3

    The installation mechanism is directly controlled by the Makefile. Per-user installation can be selected by choosing Makefile target install-home, install-home-bin or install-home-doc. The target install-home is a collection of install-home-bin and install-home-doc targets. The target install-home-bin builds/installs Mercurial binaries and the target install-home-doc builds/installs Mercurial documentation. To build the documentation, we would need ASCIIDOC and XMLTO. So, I decided to skip building the documentation. The target that I chose was install-home-bin. The installation prefix can be controlled by the environment variable HOME.

    The build process uses C compiler to compile Mercurial extensions written in C and linker to create the shared libraries. We need to specify the desired compiler and linker through CC and LD environment variables respectively. When using GCC, we need to specify CFLAGS to build relocatable objects. If the Python library is located in a non-standard location, we have to specify LDFLAGS appropriately as well. Here is how my compilation line looked like.

    $ make install-home-bin HOME=/home/praveen/chaos.SunOS CC=gcc CFLAGS="-fPIC" \
        LDSHARED="gcc -shared" LDFLAGS="-L/opt/csw/lib -Wl,-R/opt/csw/lib"

    Continue reading Per-user Mercurial Installation

    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx

    GNOME Metacity dual screen issue in OpenSolaris 2009.06

    With the latest OpenSolaris 2009.06, maximizing windows managed by Metacity (GNOME) will maximize the windows across both screens. This is due to an issue that Metacity was trying to use a wrong Xinerama type. This issue is fixed in the mercurial repository. However, the fix was not on time to make it into the final release of OpenSolaris 2009.06. But, there is a quick workaround for this issue. Here is the set of instructions.

    Step 1. Backup your current metacity.

    $ pfexec cp /usr/bin/metacity /usr/bin/metacity.orig

    Step 2. Download the fixed Metacity binary from developer’s site and replace the original binary.

    $ wget http://www.gnome.org/~erwannc/bugs/8748/metacity -O /tmp/metacity
    $ pfexec cp /tmp/metacity /usr/bin/metacity

    Note: Don’t do this in one step using wget -O /usr/bin/metacity. This broke my system.

    Step 3. (Optional) By now, your new Metacity should have already started working. If not, replace the current instance by hand.

    $ metacity --replace

    Happy dual-screening on your OpenSolaris 2009.06!

    • Digg
    • del.icio.us
    • Twitter
    • Facebook
    • Google Bookmarks
    • LinkedIn
    • Live
    • Yahoo! Bookmarks
    • Posterous
    • Sphinn
    • Mixx