Interview Questions Headline Animator

Wednesday, August 30, 2006

Some Geeky and extremely useless stuff...

Today I have some really geeky stuff... most of the information on this one... I am not sure where I would be using them... But we have been working with Microsoft technologies and windows operating systems for long... and I thought we ought to look into some of this stuff and at least know about them...
 
These are just compilations of stuff that I have come up over the years mostly during those frantic surfing sessions... they were lying somewhere in the corner of my machine... I was cleaning up my machine... looking for disk space in my 120 gig machine (can you believe it...!!!) and found them...
 
Too many software installed... and I still have that collection of games that Binoy gave me... I am working on it dude... working real hard... I wish I worked on my design patterns that hard.. anyways...
 
If you have .Net framework installed on your machine and if you go to C:\WINDOWS\assembly, what you see there is a lie. That directory isn't really a directory. look at the headings you have version, culture and public key token. Yeah it shows what's inside the GAC. its a shell extension. But it doesn't show you everything that's inside the GAC. If you really want to see what's inside the GAC in the explorer environment, fire up the command line and type in Subst G: C:\Windows\Assembly. This creates a new drive that maps to the mentioned directory path. Then instead of visiting the C:\Windows\Assembly, if you visit the G:\ you will see what's really in the GAC. The system doesn't really know that you enough to hide the real stuff that's inside the gac... stuff that's usually concealed... Talk about cheating the system... Har har...!!!
 
Now I don't really know how you can use this knowledge... But I am sure someone will find a way to use it... and let me know about it...!
 
There are some windows hot keys that we all know like the Windows + E keyboard button fires up the windows explorer and Windows + F fires up Search files and folders and so on. But there is more. There is a whole list here at http://www.codinghorror.com/blog/archives/000378.html check it out guys. Not only that if you go to http://www.softpedia.com/progDownload/WinKey-Download-887.html using winkey you might even be able to customize a couple of windows hot keys.
 
if you press Windows + R and type in wmic and hit enter you will see the windows management and instrumentation shell. it looks like the command line utility. WMIC is based on aliases. Aliases make the primary data provided by WMI available without having to understand WMI-specific concepts. For example, the processes running on the current system are available from the PROCESS alias. To view all of the processes that are currently running on the computer, type PROCESS in the WMIC utility. To list a specific process, type a command such as PROCESS WHERE (Description="explorer.exe"). To receive specific properties for the processes, type a command such as PROCESS GET Name, Handle, PageFaults. More information at http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/wmic.mspx?mfr=true
 
if you press Windows + R and type in netsh and hit enter you see the Netsh. This is a command-line scripting utility that allows you to, either locally or remotely, display or modify the network configuration of a computer that is currently running. Details at http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/netsh.mspx?mfr=true and some fun stuff at http://www.hanselman.com/blog/UninstallingIPv6SupportOnWindowXP.aspx also for networking geeks. Didn't make much sense to me though... I was just on one of those surfing sprees...
 
Some more crazy commands in the windows command line environment that I didn't know about. Not giving much details... Everybody should definitely check it out once though...
 
click Windows + R and type in the following commands and hit enter.
 
"fsutil" - file system manager
"eudcedit" - font building tool
"sfc" - scans system files and can repair or install the proper microsoft versions if corrupt
"driverquery" - list of all the device drivers running on your machine with their properties
"diskpart" - disk partitioning utility. Should be used extremely carefully
"openfiles" - lists all open files
"sc" - lets you manage services from the command line
"getmac" - gets the mac addresses
More commands at http://www.networkclue.com/os/Windows/commands/ this is real interesting stuff...
 
 
Nilotpal Das
Consultant - Microsoft Technology Practice
_____________________________________________________________________________________________________________________________________________________________
Kanbay Software (I) Ltd.., Cell Phone: +91-98600-59190
 

Tuesday, August 29, 2006

Smart clients to Browser based...

Hello,
 
Microsoft has been web centric since the beginning of Studio .Net. It decided that there would be validation controls on the web forms. Controls that can be dropped on the web page, a few properties set and they would magically work...
 
Now this should be an easier task to implement on windows forms... with no restrictions such as statelessness. Windows forms is a desktop environment. You can do whatever you want to. And it would have taken a much lesser effort for Microsoft to provide such smart controls on windows forms. Then Why didn't Microsoft do so?
 
To add a column that has combo boxes, why do we have to go through a long process of creating a control that inherits from the textBoxColumn populate it with a populated combo box, then add it to tablestyles and then add the tableStyles to the grid. While there is a nice cool feature of a template column in web forms.
 
Microsoft has no way of knowing what you are going to put in the template column and yet it has given a model so simple that you can put whatever you want to into any of the columns of the datagrid. Hell I have seen Datagrids inside a column of a datagrid. And trust me the simplicity freaks you out.
 
I wonder why...!
 
 
Nilotpal Das
Consultant - Microsoft Technology Practice
_____________________________________________________________________________________________________________________________________________________________
Kanbay Software (I) Ltd.., Cell Phone: +91-98600-59190
 

Wednesday, August 23, 2006

RE: Do you understand code better than people..?

I am sure when Binoy said that, he didn’t mean that I don’t have to understand people if I want to be an architect… I am sure he agrees and surely has some really strong feelings about bridging the geek gap… It was never either this or that… its never really either this or that… the world isn’t black and white…

 

The subject that I was trying to touch upon is that all isn’t lost if you ain’t a geek… J

 

Well the fun part is you don’t even have to be a domain expert to be an architect…

 

IMHO, Architects minds need to be more extensive then intensive… they need to be deep but at the same time wide… they need to know about businesses, people and technology… the deeper they go the better but they definitely have to have a wide reach… the deeper you are the better architect you become… otherwise everyone who has knowledge about the business, people and technology is a potential architect…

 

One big thing that I noticed this time in my US trip is that previously I used to think that I am pretty good with people and not that good with code… But this US Trip changed everything… I mean I think I am much better with code than I am with people… I mean code is complex and there is a lot of book keeping involved some times… and its always intellectually very challenging… but they can never be as complex as people can be… code throws back at you what you give it… but people on the other hand can be extremely unpredictable at times…

 

Regards,

 

Nilotpal

Phone: +91-9860059190


From: vivek [mailto:vivek.oswal@c-sam.co.in]
Sent: Thursday, August 24, 2006 11:13 AM
To: Nilotpal M. Das
Cc: 'Binoy Shah'
Subject: RE: Do you understand code better than people..?

 

A damn good question!! :)

But I take that question as a probe to investigate about and within myself....and not a binary decision making trump...

 

However, I think you could become both...because you better hope that you keep evolving...keep getting better....

 

Geekdom is know nothing more than a vestigeal residue which perhaps belongs to a set of concepts from the past era of computing....I am surely beginning to believe so...

 

You always need to understand people better, it is a prerequisite to living a good life...perhaps know thyself is equally important...unfortunately neither of this is innate, but something you only learn over the course of your life...

 

The bottom line is, perhaps,  to not create this option...and get better at what you love doing more...which could be either of them! Find your own truth....!

 

Vivek

 

 


From: Nilotpal M. Das [mailto:nmdas@kanbay.com]
Sent: Thursday, August 24, 2006 9:34 AM
Subject: Do you understand code better than people..?

One day before I was returning from the US, I met Binoy... we were discussing something about whether I should take the technical path (architecture) or should I take the path where I am more involved with people (management)... and Binoy asked me... Do you think you understand code better than you understand people?

 

Binoy was perhaps implying that I have to understand code better than people to become an architect... basically be a geek first... As much as I would like to be one... I am not... But again... the question is... Do I really have to be a geek to be an architect...

 

Read on...

 

 

Regards,

 

Nilotpal Das

Consultant - Microsoft Technology Practice

_____________________________________________________________________________________________________________________________________________________________
Kanbay Inc., Cell Phone: +1-516-582-7746

 

 

--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.405 / Virus Database: 268.11.5/426 - Release Date: 8/23/2006

Do you understand code better than people..?

One day before I was returning from the US, I met Binoy... we were discussing something about whether I should take the technical path (architecture) or should I take the path where I am more involved with people (management)... and Binoy asked me... Do you think you understand code better than you understand people?
 
Binoy was perhaps implying that I have to understand code better than people to become an architect... basically be a geek first... As much as I would like to be one... I am not... But again... the question is... Do I really have to be a geek to be an architect...
 
Read on...
 
 
 
Nilotpal Das
Consultant - Microsoft Technology Practice
_____________________________________________________________________________________________________________________________________________________________
Kanbay Inc., Cell Phone: +1-516-582-7746
 

Offshore and agile... Martin Fowler...

Offshore development and agile... thoughts by Martin Fowler...
 
Offshore development seems opposed to agile development in a couple of ways. For a start it immediately goes against the notion of physical proximity, since by definition offshore developers are a long way away. Secondly most offshore organizations favor the plan-driven approach where detailed requirements or designs are sent offshore to be constructed.
 
 So the fundamental question is whether agile techniques can be used in an offshore setting. If so how does it compare to using an plan-driven methodology (the term I'll use here for non-agile)?
 
 - Continuous Integration
 - Send Ambassadors
 - Contact Visits
 - Do not underestimate the culture change
 - Use WIKIs
 - Use Test Scripts
 - Regular builds for feedback
 - Regular short status meetings
 - Short iterations
 - Iteration planning meeting
 - Start with bug fixes when moving codebase
 - Separate terms by functionality not activity
 - Expect to need more documents
 - Get multiple communication modes working early
 
 
 
Nilotpal Das
Consultant - Microsoft Technology Practice
_____________________________________________________________________________________________________________________________________________________________
Kanbay Inc., Cell Phone: +1-516-582-7746
 

NHibernate...

I just read about NHibernate at 1.20 in the night... I couldn't really research it because it was too late in the night, I had already uninstalled the studio 2005 because its a 180 day trial version and my other CDs for Studio 2003 from my MVP days are in the closet in the other room... and I didn't really want to wake the whole house digging through the closet in the middle of the night...

And besides Even if i did find the cds i wouldn't be able to research it today considering the amount of time the installation would take... So I am going to research this subject one of these days... Thought you guys would also be interested... So here goes...

NHibernate is a .NET based object persistence library for relational databases.

NHibernate handles persisting your .NET objects to and from an underlying relational database. Rather than you having to write SQL to get your objects in and out of the database, NHibernate takes care of this for you. Your code only needs to be concerned with your objects, NHibernate generates the SQL and makes sure that things end up in the correct tables and columns.

Given an XML description of your entities and relationships, NHibernate automatically generates SQL for loading and storing the objects. Optionally, you can describe your mapping metadata with attributes in your source code.

NHibernate supports transparent persistence, your object classes don't have to follow a restrictive programming model. Persistent classes do not need to implement any interface or inherit from a special base class. This makes it possible to design the business logic using plain .NET (CLR) objects and object-oriented idiom.

For more details... refer: http://www.hibernate.org/

Regards,

 
Nilotpal Das
Consultant - Microsoft Technology Practice
_____________________________________________________________________________________________________________________________________________________________
Kanbay Inc., Cell Phone: +1-516-582-7746
 

Wednesday, August 16, 2006

Good read...

Hi,

 

Good read…

 

Vicissidude writes "Teachers in sports, music, and other fields tend to believe that talent matters and that they know it when they see it. In fact, they appear to be confusing ability with precocity. There is usually no way to tell, from a recital alone, whether a young violinist's extraordinary performance stems from innate ability or from years of Suzuki-style training. The preponderance of psychological evidence indicates that experts are made, not born. In fact, it takes approximately a decade of heavy labor to master any field. Even child prodigies, such as Gauss in mathematics, Mozart in music, and Bobby Fischer in chess, must have made an equivalent effort, perhaps by starting earlier and working harder than others. It is no coincidence that the incidence of chess prodigies multiplied after László Polgár published a book on chess education. The number of musical prodigies underwent a similar increase after Mozart's father did the equivalent two centuries earlier."

 

Regards,

 

Nilotpal

Thursday, August 03, 2006

WWF...

Nice piece of information on the Windows workflow foundation.
 
 
 
Nilotpal Das
Consultant - Microsoft Technology Practice
_____________________________________________________________________________________________________________________________________________________________
Kanbay Inc., Cell Phone: +1-516-582-7746