My new home page at Github pages using jekyll-powered blog.

As, we Speetouch 330 Adsl modem users know, there’s no drivers available for windows 7. And while using vista driver, there will be a BSOD as soon as you plug-in device or at system startup if its already plugged-in. So ?? what should, we do upgrade to a router ? naaa, I am not leaving my modem yet ;). but I found a little work around which worked for me. Here it is, go to services, there is a speedtoch 330 service put it to Manual start and compatibility mode vista, then restart. Now first plug-in the modem and start service and tada you are ready to use your modem.

git-logo Hey! GIT ?  Doesn’t that suppose to mean stupid ? You know if you think that then you are right, it does means stupid but for now: typedef GIT “Global Information Tracker”, just settle with it. Even if Linus say’s “I’m an egotistical bastard, and I name all my projects after myself. First Linux, now git.” then it doesn’t means some one using Linux and GIT is also ____, oh! forget it what am i saying.

So basically GIT is a source code management system or Software Configuration Management (SCM) system or version control system, yes! something like CVS, SVN, Bazaar, Bitkeeper, Preforce and VSS (i don’t know why but whenever I see a GIT tutorial people keep missing VSS, hey! everyone it’s not fair :|).

Officially Git is defined as “a free, open source & distributed version control system designed to handle everything from small to very large projects with speed and efficiency.” And yes it is handling large project with tons of developers very efficiently (Projects like: of course Git itself, Linux Kernel, Gnome, Qt, Ruby on Rails, Android, Wine, Fedora, Debian,, VLC and more). And if we got to documentation, it is defined as “the stupid content tracker”, though it is what said and wrote but what people perceive with this is that, it’s a version tracking system so easy that even a stupid can use easily.

Why a new version tracking system was needed ? To put it simple none of the freely available system met the requirements of Linus for Linux Kernel code management, plus they needed something distributed because the way they work (and the way of their work might be because previous SCM BK was DVCS) but as we go one we will see, actually its really easy and efficient way of working even when you are not working from inside office (because, we use VSS and its offsite version, will be a no-no for most of the users if they see how easy its is if make a patch and just mail it and anyone apply it), plus you have an offline working just as same as online, except if you emphasize on keeping a centralized repo. As Linus wrote in an e-mail on April 7, 2005 while writing the first prototype:

However, the SCMs I’ve looked at make this hard. One of the things (the main thing, in fact) I’ve been working at is to make that process really efficient. If it takes half a minute to apply a patch and remember the changeset boundary etc. (and quite frankly, that’s fast for most SCMs around for a project the size of Linux), then a series of 250 emails (which is not unheard of at all when I sync with Andrew, for example) takes two hours. If one of the patches in the middle doesn’t apply, things are bad bad bad.

Now, BK wasn’t a speed demon either (actually, compared to everything else, BK is a speed deamon [sic], often by one or two orders of magnitude), and took about 10–15 seconds per email when I merged with Andrew. HOWEVER, with BK that wasn’t as big of an issue, since the BK<->BK merges were so easy, so I never had the slow email merges with any of the other main developers. So a patch-application-based SCM “merger” actually would need to be faster than BK is. Which is really really really hard.

So I’m writing some scripts to try to track things a whole lot faster. Initial indications are that I should be able to do it almost as quickly as I can just apply the patch, but quite frankly, I’m at most half done, and if I hit a snag maybe that’s not true at all. Anyway, the reason I can do it quickly is that my scripts will not be an SCM, they’ll be a very specific “log Linus’ state” kind of thing. That will make the linear patch merge a lot more time-efficient, and thus possible.

(If a patch apply takes three seconds, even a big series of patches is not a problem: if I get notified within a minute or two that it failed half-way, that’s fine, I can then just fix it up manually. That’s why latency is critical—if I’d have to do things effectively “offline”, I’d by definition not be able to fix it up when problems happen).

For his new SCM, he wanted it to be very fast, efficient, safe guarded against corruptions, a very BitKeeper-like workflow and something which is everything except anything like CVS or SVN. Linus made this clear in his talk at Google that he hates CVS and SVN both.

Linus Torvalds visits Google to share his thoughts on git

[continued] Tags: ,,,

As Salam u Aliqum & Hi to everyone!

I m gonna start writing something on this blog, whenever i feel like it. so it might be a bit difficult for you to dig some thing awesome. Hey you! yes you, Listen carefully. “Don’t expect anything really awesome, it will be average stuff, rather I will try to make tech things bit easier by writing them for me.” 😉