Architecture Chat #44

Average turn out today - with 5 of us showing up, had some interesting discussions though - here's a list of some of the stuff we talked about:

  • Field naming... giving up the habit of underscores, then taking them up again to avoid the additional wordiness of this.whatever, and the practice of avoiding adornments for fields etc. in unit tests to improved the readability/scanability of tests.
  • Method naming, the move towards more readable/unique names vs. less descriptive heavily overloaded methods, i.e. Find vs. FindByName, FindById etc.
  • Inner classes used to firewall logic inside a class or hold shared context for a set of operations, the inherit difficulty in testing this, and whether it's a logical refactoring, or a design decision you tend to make up front when writing the outer class.
  • The survey on how relevant computer science teaching is (i.e. how does the curriculum compare with the real world).  Being run by Tony Gorschek, Blekinge Institute of Technology, Sweden & Ewan Tempero, Auckland University, New Zealand.
  • Approaches to testing applications which depend on a large number of small islands of configuration loaded at run time (i.e. xml etc.) which are interdependent - the challenges of validating individual snippets, and issues with snippets potentially relying on other snippets etc.
  • Redgate taking over reflector.net, and interesting new debugging product coming out as a result.
  • Rolling your own licensing frameworks, the mixed reaction of being a target for crackers (someone likes me product, but someone doesn't want to pay for it), realities of they'll never pay anyway, common mistakes made when building your own licensing (putting all your license code in a separate assembly, not signing it, not obfuscating) and things like using ILMerge with internals.
  • Native compilation tools and all-in-one framework bundling tools for .Net (thinstall,
    remotesoft salamander, Mono etc.).
  • CouchDB and scalability/query qualities (unfortunately more questions then answer, Peter B & Myself need to have a play with this stuff and report back next time) - interests in insertion costs when you have lots of views, are queries against views really a cheap operation/linear cost.
  • SEO & Silver light tips and tricks - also discussed hacking browser history in the same was we do with ajax.
  • Web crawlers pretending to be mobile clients.
  • Protocol buffer & .net implementations such as protobuf-net which you can use with classes marked up with data contracts.
  • Groking IoC, what are the lights on moments - the difficulty some have with jumping from the principles of DI/IoC to using a container.
  • Discussed if there might be some value in presenting on practical use of an IoC container at a local user group, as the DI/IoC conversations we've had in Auckland over the last few years tend to stop short of that point, and it's often hard to make the jump from manually doing DI verses using a container to wire everything up and the advantages/disadvantages of doing so.


Thanks to all who came, see you in two weeks.
Written on March 26, 2009