Catch the Dot

  • Binary Tree : Level Order Traversal

    In a binary tree, node level is defined as the number of nodes which are in between the node in context & the root node. If we consider root node is at level 0, then immediate child nodes of root are at level 1 and the subsequent child nodes are level 2 and so on. Thus level order traversal of a binary tre involves processing nodes on the basis of their levels i.e. level 0 nodes are to be processed before nodes at level 1 which are to be processed before nodes which are at level 2 etc. The screenshot below shows a tree and its corresponding level order traversal :

  • Building Recommendation System Using F# – Part 2

    In the first part, we implemented our first F# function towards building a recommendation system, which could tell us relative closeness of two users based on their ratings given to the various music bands. During implementation, I highlighted some of the core F# programming concepts like pattern matching, options, modules etc.. In this part, we are going to concentrate on following three things:

  • Building Recommendation System Using F# - Part 1

    In this blog post, using F# language, we will try to build a simple recommendation system. The true intent of this post is to learn F# language by implementing a recommendation system. If you are truly interested in learning what it takes to build a true recommendation system, then I would encourage you to read the following text : A Programmers Guide to data mining. I too have used this text as a source of reference for the content of this post. In this post, I am going to port the original python based code to F# and while doing that I will try to highlight various functional programming concepts.

  • Using jsPerf for performance tuning of JavaScript Code

    jsPerf is an online utility for evaluating the performance of your JavaScript code. You can submit multiple variations of your code and then evaluate their relative performance using jsPerf. Interesting feature about jsPerf is that it provides you the result in a browser specific manner i.e. you can run the test on multiple browsers and then compare the performance of your code on different browsers. In this article I will provide you a walkthrough on how to use jsPerf.

  • Benefits of Following

    Things change pretty rapidly in technology world. New frameworks are coming up , existing ones are getting upgraded, languages are adding new features etc. And among all this, the important question for a developer like me or you is, how to keep our self updated? Although there are lots of things that can be done to keep our self updated, one of the approach that I have found working for me is to follow .Net programmers on Twitter.

  • Inauguration Of My Laptop

    Today I received my new laptop which is an Intel Core i5-2450M @ 2.50GHz 4 GB RAM machine . The other laptop(office provided) which I have used for past two years for programming is an Intel Core2 Duo T6570 @ 2.10GHz machine. Reason why I am talking about the laptops that I own is because of my interest in writing multi-threaded/parallel code using the new TPL API provided in the .Net 4.0 framework.

  • Upcoming Courses on Coursera

    Coursera is offering free online courses on various topics such as Network, Information, HealthCare, Computer Science, Mathematics etc. Courses are grouped under these categories and they cover a wide range of topics. I recently completed a five week course called “Design and Analysis Of Algorithms” by Tim Roughgarden. Course material is good, video lectures are short, clear and downloadable. Programming exercise, Q&A, discussion forums etc are few other things that make these courses really interesting.