Andrew Davey

Back to Profile: Andrew Davey


  • Erik Meijer: ​Democratizi​ng the Cloud

    I dislike weak typing, at least in the form that VB gives us. There are languages that allow types to change at runtime (adding methods, etc) but I never really found the need for that feature. For me type inference is the big winner. Both VB and C# are getting this in next version. It means much simpler code to read and write, whilst still having the safety of the compiler.
    I always thought it strange to discard years of advanced compiler and type systems design!

    I hope the next version of VB does have the "Dynamic Interface" feature. It provides the best way to program against weakly typed objects. It lets the all your code be strongly typed to the interface, however at runtime you can attempt to cast any object type you want to it. I believe the runtime will then check the validity of the object upfront - so you get fail fast, rather than fail half way through some nasty computation due to mis-spelling a function!
  • Erik Meijer: ​Democratizi​ng the Cloud

    Great video! Erik, you are a legend!

    I would love to see Microsoft get more behind some of the .NET languages developed outside of Redmond. Languages like Boo and Nemerle have great features like type inference, duck typing, first class functions, syntactic macros and much more.
    The only thing holding these languages back is the lack of tool support i.e. Visual Studio.
    Whilst some of the advanced features may be beyond VB Mort's, they allow those in the know to be very productive. The result is better code developed, which in turn can be consumed by the business-level developers.
    I personally see Nemerle as a potential successor to C#. It can look and feel just like C#, but allows so much more expressiveness if you want it.
  • CCR Programming - Jeffrey Richter and George ​Chrysanthak​opoulos

    Do all the nice operator overloads still exist in the CCR?
    Whilst having a library that is consistent with the BCL is very important, the operator overloads really let you concentrate on only your code. Reducing code noise is an important goal IMHO. Since C# has no syntactic macro capabilities, operator overloads are the only way to abstract away the boiler plate code. (Being a purely additive feature means no has to use them if they like typing lots.)

    If I get time I will look at making some syntactic macros for Boo or Nemerle, to make coding against the CCR look awesome Smiley

    Also, make the CCR available as a separate download - this will certainly increase uptake by the community. (Dare I say make the project shared-source? Seeing the code would hopefully make it easier for people to write their own extensions.)

    Keep up the great work!
  • Jim Allchin - The Longhorn Update

    Are Google now going to have a huge advantage over winFS? Shame really - I value a usable file system over fancy UI.
  • Kam Vedbrat - How are user expectations changing now that computers are being used longer every day?

    Auto-hide defeats the whole idea of an area where important stuff is always visible.
  • Kam Vedbrat - How are user expectations changing now that computers are being used longer every day?

    The whole sidebar idea really is a bit old. Surely anyone can make a right-docked app bar using the SHAppBarMessage() api call?
    I really hope MS have something revolutionary up their sleeve in the shell department. One thing I would find useful would be the ability to have different switchable mini-shells that can be customised to the various project I'm working on. So then on each project desktop, I could have all the documents, tasks, common apps, etc related to that project.