Archive for October, 2008

Resharper by JetBrains

What can I say.. I am impressed.. Very impressed.  Try it out now – Resharper.  Commercial license is only $349.00
What did I achieve?  Few small things at the moment, improved “extract this into a method” functionality, suggesting when to use “const” for strings, site-wide analysis for problems, convert method to static.  Very cool..
Here’s a list of features

Add parameters easily with Resharper

I was able to take a piece of code inside the function, say AccountsReceivable.GetReferenceNumber(“abc001”) and convert that to a parameter of my helper function just by highlighting it and selecting “introduce parameter”.  It then went ahead and updated all references to this function to pass the AccountsReceivable.GetReferenceNumber(“abc001”) as if it was a variable

Create variables to replace common values

Here’s another case.  Imagine you have some reference to something like dr[“status”].ToString(), you can “Introduce Parameter” and it will ask you if you want to update just that one line, or update ALL references inside that function wtih the new variable name…  pretty neat!

Also have you encountered the situation where some variable is declared near the top of a function and then its used somewhere in the middle… and you are stuck wondering whether you can get rid of it or you can modify the code without breaking it ?  Well Resharper will allow you to join the declaration with the intiialization, so its re-partnered to its vaue 🙂

Easily worth the $350 price tag.

You will get the most bang for your buck in the first month or so anyway, use it to clean up and spiffy your app, and then try not to let it descend back into chaos.


Automated .NET testing with WatiN

This software is super cool.  WatiN – Automated Web Application Testing!

Here’s how you can use it.  Download it.  Download the test recorder (it’s not perfect, but its pretty good).  Create a trivial test case so you know it’s working.  Then build on that test case.    It will output code for NUnit, MBUnit, or even VS2005Test

Load up your VS IDE, then execute it from Visual Studio 2005 or 2008 Test Runner.    It will give you the results right there!  Super cool or what??

With this framework I was able to create some pretty simple test SUPER fast.  – Login test, check for correct page loaded.   Then I tested some shopping cart logic (adding items, removing items, clearing cart.)

In conclusion you can effectively create tests with WatiN.  Give it a try.  It’s compatible with practically every testing framework (including Fitnesse) that you probably use.


.NET Blogging Softwares

When I first started this blog, it was done in Subtext, which is a very impressive .NET blog software. It is a fork off the old .TEXT blog engine. To give you a bit of history, .TEXT codebase was left and eventually became Community Server. That was my preferred choice of blogging engines, but I did not want to pay money for it at this point in time when I wasn`t even sure if I was going to have time or energy to continue the site over the yeras.

Actually Wordpress was really the option I wanted, being the most popular and the most feature comprehensive blogging software out there (tons of plugins, tons of templates/themes, and so on)…

Now, Subtext can work great for you if you are willing to contribute some features. Otherwise you will find yourself dependent on a code base maintained by just a few people (rapidly growing, no doubt), but really in this case my business is blogging, not contributing to .NET blogging softwares, so I am abandoning the Subtext ship and switching to Wordpress.

Some of the new features on this site you will find

  • faster response rate due to caching plugin
  • see related posts at the bottom of each post
  • subscribe to comments so that you can continue the discussion if someone responds to you
  • and more coming…

I wanted to add these features to make the site more interactive for everyone, plus nicer looking (I don`t have time to develop my own theme, I plan to utilize an already existing one online).

Lets see where it goes 🙂 So for me, the clear winner is Wordpress (even though its not running .NET).
I claimed that .NET is superior to PHP, however, of course, that does not mean that every single software written in PHP sucks, nor that every .NET software rocks.. Far from it

Setup ASP.NET 1.1 on VISTA

As strange as it sounds, yes, you might need to setup ASP.NET 1.1 and VISUAL STUDIO 2003 to work on VISTA.

Here’s how to do it. I read maybe ten other pages and tried tons of different things but this is the definite guide on how to make ASP.NET/VS2003 work on Vista.

Thanks dude!

A few comments about developing on Vista. I am running a lenovo T61 (Vista 32bit) with 2GB ram with VS, IIS7, SQL Server 2008 with Full Text catalog, and the whole works, so when memory was getting full (i.e. had Outlook open, Excel open, as well as all that other stuff) it was actually TOTALLY FREEZING for literally 5 minutes a time (even the clock was frozen).

I managed to remedy this problem by buying and using a ReadyBoost compatible USB disk and I don’t have this problem any more. Try it out. I think it’s a pretty creative and useful feature that they put in Vista!

Learn Faster

Change of atmosphere is actually a much faster way to learn, as I recently found out due to a job change.  A lot of time spent in the same environment working with the same people and learning stagnates.  If you really want to learn something different, be bold, take a risk, and change jobs.  Another factor is type of company – changing company types can increase learning speed by working in a different environment.  Technical skills are not the only skills that matter, so keep that in mind.  By looking at how different companies work together and achieve goals is a learning experience in itself.  I was concerned that moving from a team with many talented developers to moving to a team of one developer (me) my learning would stagnate.  However, this is not the case.  I feel like I’ve learned so much in the last few days just by being in a different environment.  Take risks!  Be bold!

Factors to note

– Background of those you are working with
– People who you are working with (non technical)
– Location of new job/environment
– Number of work hours
– Technology used (is it old, is it new… )

You can find a lot of these things out by asking in the interview.  There are implications for each one of the factors above.  For example, large companies are more resistant to change.  They are usually late followers in adopting new technologies.  However, some people feel that in large companies they have job security…  So it all depends.

I think Justin of CodeThinked (a nice .NET blog that I subscribe to) sums it up pretty well why he changed jobs.

Keep in mind we humans are fussy beings.  We don’t like change (most of us, anyway).  You might find a lot of things uncomfortable in your new position.. It will take a while to adjust to the new area, new coworkers, new boss, and so on.   But hey, life is about taking risks, right?  Can’t be complacent all the time.

Optimization WordPress Plugins & Solutions by W3 EDGE