Wednesday, 28 April 2010

The things alcohol make you do

A consultant and a developer went to a bar..... And after a few drinks they got into a stupid discussion on how bad programmers are. One said that most programmer will look at a class and if they will think that they will only need a single instance of that class in their system they will instinctively make that class a Singleton. The other would not accept the fact that this can be. So who do you think is right and who is clearly mistaken? and while you're at it, can you tell who said what?...

Managing a one man project

Ken Egozi asked me to put an answer I gave on the Alt.Net mailing list so here goes. the thread started by someone asking for an online Gantt service and later evolved on how to manage a project without the use of a Gantt. the specific project is quite small - about 2 months total and will be done by a single person. however the client is pressured and want to be sure that it can be done by the specified target date. Here's what I wrote: If I were you I would start by: write down in a list all the things need to be done (from the point of view of the client). not the technical 'how', just a list of things that define "what' needs to be done. after you have your list, sort it by priority and roughly estimate how long each item is going to take you. when you finish, take a step...

Monday, 26 April 2010

What Have we Learnt Today?

As usual during the Practical Scrum Course I’m giving. At the end of the first day I gather some feedback in the form of two questions I ask: What was the most surprising thing you have heard today? What is the most controversial thing you have heard today? here are the (unedited) answers I've got this time: The Most Surprising How much client expectation can effect estimations That in some projects a client can get a new version every couple of weeks New approach to estimations. That in 4 weeks we should finish X features (development, testing and documentation) and make them ready to be shipped. Its important to leave room for “exciters” features. The most controversial Less documentation if at all. Priority Poker technique Everyone using a waterfall...

JustMock – New Mocking Framework

The world of unit testing in .NET has recently become just a little more interesting. This month Telerik has announced the beta of their new JustMock mocking framework. The interesting thing about this framework, is that for the first time a new tool is actually trying to compete with the power of TypeMock’s Isolator framework. JustMock, like Isolator, is using the CLR profiler API in order to intercept method calls, allowing mocking of virtually any kind of class/method in your code. Including static methods, private methods, sealed classes and more. At a first glance JustMock API looks very similar to the AAA syntax of the Isolator tool, what I did notice howeverare two main differances: It appears that JustMock has two modes of operation. The standard mode, in which the profiler...

Sunday, 18 April 2010

Resetting Visual studio

Lately I've been working on some visual studio add-ins and plug-ins. I'm testing a few new ones and even playing around learning how to develop one of my own. Doing so did cause me to break the IDE leaving me in all sorts of weird situations. For example one time I messed it so bad I couldn't even create a new .NET project any more. For some reason the IDE insisted that I'll install some language tools (or something alike). In the past this got me into a reinstall process which in most cases does solve the problem however does take about an hour or so. Lately, I found that in most cases, issuing a reset command does in most cases solve the problem as well. So when having problems with VS-IDE before reinstalling try the following: Reset...

Wednesday, 14 April 2010

Don't be a Smart Ass Coder - Exercise in Rafctoring

Here's a piece of code I saw the other day. the code is for real and given after massive renaming to protect the guilty for ( int j = 0; j < 2; j ++ ){ if ( j == 0 ) pObject = Repository::GetInstance() ->GetObjectByHandle( pParent->GetPartAHandle()); else pObject = Repository::GetInstance() ->GetObjectByHandle( pParent->GetPartBAHandle()); if ( pObject ) { ObjectGeometry objectGeometry = pObject->GetGeometry(); for ( UINT i = 0; i < objectGeometry.NumRectangles(); i ++) { Rectangle* pRect = Repository::GetInstance() ->GetRectanglesByHandle( pObject->GetRectnagleHandle(i, 0)); if ( pRect ) m_Repository.DiscardRect( pRect->GetHandle() ); } m_Repository.DiscardSpread(...

Pages 381234 »
 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Walgreens Printable Coupons