T40T, 6th June 2008 to 9th June 2008

Csharp kitteh

(kitteh codez: ./;;;;;;;;;;;;;;;;;;;;)

Time to start C# familiarisation, this long weekend is the weekend to start. My guide is the book: “Pro C# 2008 and the .Net 3.5 Platform” written by Andrew Troelson

Having last been semi-professional in Java about 10 years ago, there are many similarities. But lots of new platform learnings. Unix shell, paths and commands are difficult things to dump.

Just ensuring I understand the fundamentals before I jump into the deep end of the BCL and other .Net goodness

So, some new things:

  • using the Visual Studio Command Prompt to pre-setup paths
  • @*.rsp files for input to csc.exe (to replace command lines)
  • Console.* and Environment.* for command-line/console style apps; along with return values
  • Escape characters vs. @”sss” verbatim strings
  • Narrowing/Widening datatypes at compile time (short/ints)
  • out, ref, params (leave params as last argument)
  • operator overloading (sans generics), arrays, simple objects, enums’
  • structs on the stack, vs referenced types on heap
  • Nullable types (using ? at the end of the type declaration, ?? as default override if value is null)
  • Objects, default constructors
  • constructor chaining using this. keyword
  • Encapsulation using properties (auto getters and setters, or Accessors and Mutators)
  • partials (one class across multiple *.cs files)
  • class diagrams; same 3 base things of OO programming (encapsulation, inheritance and polymorphism)
  • base class construction
  • nested classes
  • virtual, override in polymorphism; as keyword + null test in polymorphism
  • SEH. Structured exception handling
  • The heap, generations as a method of marking objects as “more likely to stick around” in System.GC
  • Finalize. Finalize when unmanaged (ie: Pinvoke) objects
  • Dispose. call Dispose on an object that implements IDisposable (if x is IDisposable…)

Inspecting ur classes

New feature of Visual Studio 2008, LOLCAT edition. CATROSPECSHUN OV UR CLASSEZ

T40T, 12 May 2008

Install Windows Server 2008, SQLServer2005 into Virtual PC 2007

  • My previous application development platform experience is LAMP, so this Windows Server 2008 stuff is going to be fun!
  • Installation to a fresh VirtualPC took less than 15 minutes.
  • Only 6 updates required post install of Windows Server 2008 Enterprise
  • Added Application Server, Web Server (IIS), File Services as installed applications
    • FTP added because I understand that stuff
  • Installed VirtualPC extensions
  • Reconfigurated networking for home network
  • Installing SQLServer2005 (as most external hosters are using this revision)
    • Too many questions for a mere mortal. Its like recompiling MySQL!
    • Going for a base level SQLServer as possible
    • Apply SP update to SQLServer2005
  • Launch SQLServer Management Studio
  • All Seems Well
  • Time to Backup the VM

Next sub-project: Windows Mobile 6 Professional SDK

  • Some of the Imagine Cup finalists use the Windows Mobile 6 SDK, so grabbing that and evaluating their entries
  • Installed; have to wait for the .zip files so I can correctly unzip with directories. Oops
  • (on hold)
  • (restarted at 8:00pm)
  • OK, submissions reviewed, including in-the Mobile emulator (w00tage!). Karo has my data 🙂

ASP.NET/Database. Exactly how easy is it? Can I do it without RTFM?

  • Move VM over to separate machine
  • Launched OK!
  • Hmm, adding a user, setting up non-Windows authentication (ie: no ActiveDirectory) requires checking on super-special(tm) checkbox. Done and running. Can create a table, add columns and records.
  • I declare a successful day

Transparent 40% Time

desk geek

As my Microsoft job subtlety changes at the beginning of July, it is self-development time!

Next year involves more cycles devoted to development ‘themes’. A change that I am

Following sage twitter advice from Christy Dena, the diary is locked and loaded. Every Monday and Friday are hard allocated to self-development.

Self-development relies on self-control.

To aid the tempation of twitter, email, rss feeds, weewar, TV, cats and general outside interruptions: I am a stickler for not misappropriating this 40% time. Secondly, there will be a blog/wiki post that will detail the daily activities. 40% time full transparency.

The general themes:

  • Windows Server 2008 as Web Development/Web Host backend
  • SQLServer 2005/8 as datastore
  • C#
  • HTML/Ajax/Silverlight
  • DLR; IronPython and IronRuby