Contents
About Myself
Name:
|
Dhruv. Matani.
|
Age:
|
19yrs. + 5 months as on the 1st
of Jan 2004.
|
Occupation:
|
Student for life.
|
University:
|
This cruel world.
|
Location of College:
|
Planet no. 3, The Solar System, The Milky Way Galaxy, off The Andromeda Galaxy.
|
My permanent Date with Computers.
I began programming in GW-BASIC/QUICK BASIC. This continued for about 2
years, after which we were formally taught C++, and Visual Basic for
another 2 years. Well, needless to say, the quality of teaching C++ and
Visual Basic was much below par, so I decided to take up the endevour
myself, and scrap the stupid syllabus that students like me were
confronted with. I learnt some Object Pascal along the way as well. (in
the form of Delphi Pascal, as its called). Delphi is basically a
tool to program in the Object Pascal language, which is an Object
Oriented extension of the famous Pascal programming language. Sad to
say
that some people think that Pascal is a language not worth learning.
Well, Object Pascal helped me understand the OOP model in a pretty
decent manner. That has helped me manifold to understand the provisions
made in C++ to support the OOP paradigm. Both are very well designed to
support the OOP model. C++ on the other hand supports not one, but many
styles of programming. Naturally both have their ups and downs. You can
find many sites drawing a comparison between them, but I think it's
unfair to compare programming languages. You can find many resources on
C++ programming and Delphi programming on the web. I have here a list
of
a few that I found helpful, and have used. I also have here a few of my
own articles, which I hope you find useful. If you do, please do mail
me
at: .
Top
My Favourite Links
Here is a list of a few links that I found useful. They have been
segregated topic-wise.
C++
Programming Resources.
- About C++
- Programmer's
Heaven
- The programmer's
Lair
Delphi
Programming Resources.
- About Delphi
- Programmer's
Heaven
- The programmer's
Lair
Message
Boards.
- Programmer's
heaven
- comp.lang.c++
- comp.lang.c++.moderated
News.
- Slashdot
- The Times of India
- Reader's Digest
Other stuff.
Music I like and listen to.
- Abba
- Ace of Base
- Asha Bhonsle
- Billy Joel
- Black Sabbath
- Bob Dylan
- Bob Marley
- Bryan Adams
- Celine Dion
- Coldplay
- Creed
- Deep Purple
- Def Leppard
- Dido
- Dire Straits
- Dream Theatre
- Enigma
- Fleetwood Mac
- Frank Sinatra
- Ghulam Ali
- Glen Hansard
- Goo Goo Dolls
- Guns N Roses
- Hemant Kumar
- Jagjit Singh
- Joe Satriani
- Keane
- Kenny G
- Kishore Kumar
- KK - Pyar Ke Pal, and Doosti.
- Led Zeppelin
- Lucky Ali[Film tracks: Sur].
- Lucky Ali[Non-film tracks: Sifar].
- Manna Dey - Madhushala
- Mark Knopfler Solos
- Marketa Irglova
- Metallica
- Pearl Jam
- Pink Floyd
- Ravi Shankar
- REM
- Richard Marx
- Robbie WIlliams
- Robert Miles
- Roxette
- Savage Garden
- Scorpions
- Shania Twain
- Shankar Mahadevan[Film tracks include: Dil Chahta Hai, Lakshya,
& Mission Kashmir, Rockford].
- Shankar Mahadevan[Solos and Non-film tracks: Breathless].
- Staind
- Starship
- Sting & The Police
- Sunscreen
- The Corrs
- The Cranberries
- The Eagles
- The Verve
- Three Doors Down
- Travelling Wilburys
- Travis
- Yanni
- ZZ Top
Games I play.
- Frozen Bubble. www.frozen-bubble.org
I have created 21 levels for this game. They are not very easy, but at
the same time, they are do able. So, anyone who is interested can
download them from here.
Top
Programming
Books
I find these books really helpful, and
am currently in the process of reading them:
- The C++ Programming language (Special Edition) - Bjarne
Stroustrup.
- Data Structures and Algorithms - Adam Drozdek.
- The Design and Evolution of C++ - Bjarne Stroustrup.
- Effective C++ - Scott Meyers.
- More Effective C++ - Scott Meyers.
- C++ Templates - Josittus and Vandevoorde.
- Introduction to Algorithms - Thomas Cormen et al.
- Design Patterns - Gamma et al.
- Concrete Mathematics - Graham, Knuth, Patashnik.
- Compilers - Principles, Techniques & Tools - Alfred V. Aho,
Ravi Sethi, Jeffrey D. Ullman.
- Programming with POSIX Threads - David Butenhof.
- The Art of Computer programming (Volume - 3, Sorting and
Searching) - Donald Knuth.
- Introduction to Automata Theory, Languages and Computation -
Hopcroft, Ullman, and Motwani.
- Database Systems - The Complete Book - Ullman, et al.
- Database System Concepts - Krtoh, et al.
- Computer Networks - Andrew S Tanenbaum.
- Modern Operating Systems - Andrew S Tanenbaum.
- Introduction to Information Retrieval - Christopher D. Manning, Prabhakar Raghavan and Hinrich Schutze
- Information Retrieval: Algorithms and Heuristics(2nd Edition) - David
A. Grossman and Ophir Frieder
- Modern Information Retrieval - Ricardo Baeza-Yates and Berthier
Ribeiro-Neto
Here is a list of a few papers I have
written. These may be vaguely classified as papers, because they have
not been written under anyone's supervision, or because anyone wanted
me
to gather information about that subject, or because I needed to
innovate and do some research on that subject. They came about only
because I felt writing down the thoughts that I had at that time!
Here are some programs for you to
download, and use. These are absolutely FREE, and source code included.
If not mentioned, they are license under the GNU/GPL (GNU General
Public
License).
You may get a copy of the license
here.
Bug Fixes
This is a list of bug-fixes I've created for various programs I've used
over the years.
Here are a few algorithms that I have
implemented, and a few that I have modified for the better or the
worse.
A description is included with each one. This is a very important part
of programs, and optimization, so please do send me any
comments/suggestions on these algorithms.
The NSTL is a collection of generic
contrainers, and algorithms, much like the STL. It is intended to be
used in a way similar to the STL. The NSTL was made in a way, keeping
with the STL framework, and in intended to extend it.
Equation Cruncher
Equation Cruncher is a distrubuted
application for solving a large system of linear equations. Something
of the order of a few hundred linear equations in those many unknowns
can be solved quite easily by Equation Cruncher given a large number of
nodes connected to the server.
TDDB
-> The
Distributed Database
This is a project that I intend doing for my final year BE course. I'll
be doing this along with 6 other people,
Sandesh,
Pascal, Sameer,
Shrikant, and Anubhav. It's going to be a mammoth
project, so Please wih us Luck! The official disussion forum can be
found here:
LibLyric - Lyrics Library
LibLyric is tool that allows you to download song lyrics from the web
without relying on any one web site, or the HTML page structure
thereof. This tool will access the web to download the lyric, and
give you what it thinks is the best match.
p2p-fs -> Peer to Peer File
System
p2p-fs is read-only peer-to-peer file-system, meant to be used on high-speed
LANs, or a local network. It provides the features of a P2P system, and the
ease of use of a traditional file system for sharing files.
Split Downloader
Split Downloader is a file downloading tool which allows you to
download files by getting past the file-size download limit imposed in
many work places. This tool will allow you to download only those
files that are shared via the HTTP protocol.
MapReduce Simulator
I had been reading a lot about MapReduce and it's open source counter
part - Hadoop. So, I decided to read up on the official paper and
write a small simulation MapReduce framework that just simply does
the Map and Reduce operations. This simulator does not have any of the
fancy features that Google's MapReduce is designed with. ie. Fault
tolerance, failover, etc.... However, it does allow you to run the
mapper task as multiple threads. If you want to get an idea of
how to write programs using MapReduce without breaking a sweat, please
go ahead and experiment!
Javascript Image Viewer
The Javascript Image Viewer is an experiment in Javascript and PHP. I
basically wanted to learn some more of javascript, and what better way
than to write an application. Also, I was having problems; since the the
image viewing tools installed on my machine(EOG, konqueror, nautilus,
etc....) weren't able to handle a large number(700) of images in one
directory. So I thought of writing my own that worked in a browser
rather than finding one online.
Top
Contact Me
You can catch me at:
on email.
Top
Page last updated on November-11-2008, 08:37 PM (IST).