Wednesday, May 27, 2009

My Developer Environment

I’ve read Steve Smith post regarding Developer’s Machine.  Great post.  Got me thinking about my development environment…

Background: to fully understand the whole lifecycle of a solution, you need to know not just Unit test or integration tests. But also about  the backend/infrastructure where this application would eventually live. 

For instance, I have been involved in several integration projects at different clients. The solution calls for situations that involved multiple users, multiple roles, multiple permission profiles.  Yet, they only provided me with a SINGLE account to their environment to fully test my application.!

Being an integration geek, you need to have a bigger bag of utilities to help you being certain that your app works as intended.  IMHO, you not only need to know about IIS settings/security, but also about AD, Clustering, SQL roles, etc.  And it is not enough to just READ it from a blog.  You need to experienced it and work with it.  You need to be a JOAT.

Ideally, like Steve’s view, the Developer workstation will be both mobile and desktop.  It is nice to be able to take that mobile environment with you.  However, most of the times while working at home, I would trade my portability for some speed and flexibility. I like desktops with Dual screens (wish I had more than 2 monitors… :) and full size keyboards. I like to feel a mouse and not those annoying keypads/touchpads. Yes, I do HATE touchpads…!

I had built my own controlled environment (SandBox).  This is so that I can experience what the network operator/admin that is going to inherit my application would experience. Under this controlled environment, I can test the full cycle of my software (deployment, running, integration) . Nothing worse that going into a client’s environment and say: “… but, it works on my machine…”

I know that now a days, with VM’s (VPC/VMWare), building a Sandbox environment is easier and cheaper.  However, there are pros/cons for virtualization vs real machines. I feel that my investment was well spent.  My future upgrade will be to beef up my SQL server (still keeping it as a real machine).  Then put a couple of VM’s on the app and the web servers to test NLB and some Farm features of BizTalk and SharePoint.

CIMG6596 old CRT 14" monitor. No LCD here… :(
CIMG6592 I selected 4u cases for my servers, since they can fit  standard hardware (MB, Power Supl., video, nic’s) = cheaper…

4U – App Server
4U – SQL Server
2U – Web server
Guess which case I bought first…. ;)
CIMG6580 16-Ports Switch used to be plenty of ports over 5 years ago… :(
 CIMG6581 LAN lines.  Rest of my hardware ( 3 laptops, NetBook, Wii, NDS’s) are all on the Wi-Fi.
CIMG6573 Power master switch for all servers.
CIMG6587 KVM switch.
CIMG6595 My mini-keyboard. Love it…


BTW, I think building your own computer is still the way to go.


KVM Switches said...

Blog is interesting and motivated me a lot!! Thanks .Thanks for the information your new & latest technology KVM Switches

Dear Coupons said...
This comment has been removed by a blog administrator.