Thejesh GN

A Blog, A Website and A container for all my views with excerpts from technology, travel, films, india, photography, kannada, friends and other interests. I am Thejesh GN. Friends call me Thej

MySwar is out

Posted by Thejesh GN On January - 10 - 201211 COMMENTS

MySwar is the complete guide to Hindi film music. Ever since I joined Mavrix, friends have asked me about the project that I am working on. I have given different versions. But now that MySwar is open to public, here is the almost definitive description “MySwar is the complete guide to Hindi film music. It lets you browse your favorite Hindi film albums and songs and get a treasure trove of information about them. It’s also got a great music recommendation feature. Rate songs you like and we’ll tell you what other songs you might like.”

As of now we have details of 4000+ albums, 22000+ songs and 3200+ artists. We have covered only hind movies from 1971 to 2011. I know, I know there are lots more to do. We need do 50s, 60s hindi films and we also need to do non film music. Well all I can say is its in progress.

Two best parts of the sites are Similar Songs suggestion using our internal recipe for each song. The recipe is not there yet. We are improving it almost on day today basis. But its worth showing off. Have a look and let me know what you feel.

MySwar Similar Songs

MySwar Similar Songs

Next one is discover based on your likes and ratings. Rate the songs you like and MySwar will suggest you songs based on it. Again discover algorithm gets updated almost on daily basis.

Discover music on MySwar

Discover music on MySwar

It’s a standard LAMP stack, python and MongoDB in this case. I will probably write a detailed post on the technology and platform choices one day. Until then go ahead register for an account and enjoy. Of course suggestions are more than welcome.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

The Year that was 2011

Posted by Thejesh GN On December - 31 - 20113 COMMENTS

Tradition continues. Here are the significant things that happened in 2010.

1. Left Infosys. Enjoyed my stay at Infosys and it was time.
2. Joined Mavrix. Our first product MySwar is in private beta now. We will go public beta next week. Wait for a detailed post.
3. Janaagraha – Part 2. Continued working with Janaagraha as a technologist.
4. Not much travel, except for an unexpected amazing trip to London
5. First time I invested in Equity. I will write more about it later. Time to start planning for retirement.
6. Love, Life and Friends – Roller coaster in simple words.
7. Line of the year “Forgive, Forget and Move on”
8. Met Steve Woz.The best moment of the year. Unforgettable.
9. I have been writing “The Year that was” for last 5 years :) 2010, 2009, 2008, 2007

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

hg4subl – Sublime Text plugin for Mercurial

Posted by Thejesh GN On December - 26 - 2011ADD COMMENTS

I love Sublime Text and Mercurial. All most all my projects use these two tools. Clearly I need a tighter integration between these two. Sublime Texts provides Python based plugin API architecture. Its quite easy to follow and write a plugin. So I took sublime-text-2-git and modified it to work with Mercurial. I have added a few extra features and intend to develop in future.

Now I can work with my repository from inside Sublime Text.

Its easy to install:

  • On Linux go to command prompt
  • cd ~/.config/sublime-text-2/Packages
  • hg clone http://code.thejeshgn.com/hg4subl
  • Restart you Sublime Text

Now your tools menu should have Hg and related menus. Some of the menu’s are enabled only when you are inside a repo work folder. I have tested it only on Linux. If you are a windows user, let me know how it goes.
You can also use Ctrl+Shift+P to quickly access the commands.
hg4subl options

hg4subl show logs

The bottom panel is used to display the notifications to users. For example branch change in the working project

The plugin also can update itself. Go to Tools-Hg->hg4subl update. The notification panel show the information about the update
update

You can fork the project on bitbucket-hg4subl and send me pull requests if you have any.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

My mercurial dev/prod workflow using clones

Posted by Thejesh GN On December - 16 - 20112 COMMENTS

Most of the people whom I work with are very confused about repository and work-folder of mercurial. If they are comfortable with that then they are hesitant to use named branches. Hence I stopped using branches for maintaining my dev and prod code streams. Instead settled on clones (forks on Bitbucket/GitHub). I find it easy to explain to all kind of people and easy to work. I was thinking about writing an how-to for the same. But blog makes much sense.

dev-prod-clone model I have a development repository for a ‘project’ called ‘proj-dev’. Every bit of code which makes sense will live here. Every team member has push access to this project. Lets say we developed over several months. Now we have reached some sane level where we could show it to our family. We use tags to bookmark stages of development. So after passing all rc.x.x.x (release candidate aka test releases) stages, we have reached v.0.1.0. Which probably is our alpha production release.

Now I clone/fork the ‘proj-dev’ to ‘proj-prod’. Only support and system admin team has push access to ‘proj-prod’. Anything that has to get onto production servers has to come from ‘proj-prod’. Hence we deploy the production code from ‘proj-prod’.

From here on we have two tracks. Click on the image for bigger resolution.

Track 1 – ‘proj-dev’ :

  1. May not be stable
  2. All developers will have push access to this repository
  3. Regular development continues on this repository
  4. Any developer can pull, production fixes from ‘proj-prod’ or accept pull requests
  5. Once all the features reach stable state and production ready, team marks it as v.x.x.x

Track 2 – ‘proj-prod’ :

  1. is most stable
  2. Direct commits to this repository are done only as part production fixes
  3. All production fixes are sent as pull request to main ‘proj-dev’ repository
  4. Any developer can pull ‘proj-prod’ into their repository
  5. Any production ready code (v.x.x.x) on ‘proj-dev’ will be pulled into this repository. Production deployment can be done only from this repository.

This is what I follow as a team lead. It keeps the work-spaces separate on my developer’s machine. It also keeps repositories separate. I guess its easy to understand or I find it easy to explain it to my team. Do you think its easy to follow?

I will probably call it the dev/prod clone model :)

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Meeting Woz

Posted by Thejesh GN On December - 4 - 201112 COMMENTS

I didn’t expect it to happen. It was a very happy surprise. Today is one of the most unforgettable days in my life. I am much bigger fan of him now.

I knew he was in Bangalore. I knew he was here for a private secretive conference. But he was not really secretive about it on Facebook:). I knew it was almost impossible to meet him. Also I didn’t want to disturb him in any way.

I just wanted to leave a fan letter at hotel reception. But like any other hotel they denied he was there. Reception refused to pass on my letter. I literally had to wait there for an hour or more. At last they accepted it. The last line in my fan letter was “let me know if you have time. I would really like to meet you.”. I was just trying my luck.Like anybody I couldn’t wait, so I sent him a mail inquiring about my letter. He replied very promptly that he got it and offered to meet me. It was the OMG moment. I was so happy and high that I couldn’t sleep properly. Read the rest of this entry »

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Get in touch