singalen: (Default)

Originally published at Fiberglass flowers. You can comment here or there.

All the software is equally bad…

Well, I know some pieces of software that are good, but I won’t mention them today.

One of our msbuild vs nant choice criteria is  a product versioning support.

Sad or funny things are:

  • both don’t include sane tool out of box;
  • both need installing NAntContrib or MSBuild Community Tasks;
  • even then both can’t sanely write AssemblyInfo.cs in order to leave other properties intact; if you had InternalsVisibleTo satellite unit test assembly - it won’t build then;

NAntContrib Version task is way more functional.

Additionally, MSDN page design where MSBuild reference manual lives, is awful.

I wonder if it’s the reason to choose a build tool, while they are approximately equal.

OTOH, MSBuild has a great GenerateBootstrapper task to install .NET framework from MSI (WiX sample included in the referenced wiki).

singalen: (Default)

Originally published at Fiberglass flowers. Please leave any comments there.

Discussing Java vs C# coding conventions, I got an idea:
Geek code for a coding conventions.
Like:
-----BEGIN GEEK CODE-CODE BLOCK-----
GP:java,c,cpp,haskell
Off:2S P:N Name:Camel Flex:2
------END GEEK CODE-CODE BLOCK------

which means:

  • GP:java,c,cpp,haskell - geek of programming languages (listed);
  • Off:2S - prefer 2-space offsets;
  • P:N - place parentheses on new line (opposed to S - same);
  • Name:Camel - prefer camelCase;
  • Flex(0,1,2) - I’m flexible on this and can easily accept other’s conventions.

This will help others to see what you prefer an not (?) to start stupid holy arguing.