Oracle gets decorated by Microsoft… with an Obsolete Attribute

About a week ago Microsoft announced that the System.Data.OracleClient namespace will be deprecated in .Net 4.0. However the fact is that “deprecated” doesn’t mean it will disappear completely anytime soon. In fact the official statement clearly states the following: Microsoft will continue to provide hotfixes for critical issues in System.Data.OracleClient as per the standard support policy for .Net Framework 4.0. We will also continue to make critical bug fixes in future service packs for .Net Framework 4.0. So it will probably hang around for another 8-10 years so your old application doesn’t have to be updated for some time yet. … Continue reading Oracle gets decorated by Microsoft… with an Obsolete Attribute

Using the CodeDom to do scripting with .Net

Introduction The company I work for, Interactive Medica, provides SaaS business solutions for the pharmaceutical industry. Many of our clients receive data from third-parties which they need us to import into our system. This is pretty straight-forward and common in many industries. The data arrives in different formats, CSV files (or other delimited text files), Access database, Excel Spreadsheets, and so on. Sometimes the files are zipped and sometimes not. Sometimes the files are uploaded to us via FTP and at other times we need to pull the data, also usually via FTP. Any developer have at some time or … Continue reading Using the CodeDom to do scripting with .Net

How to prevent Extension methods from appearing as global functions

C# have static (or shared) classes which VB lacks. Instead VB uses modules which are almost the same thing. One thing differs though and that is that modules makes its public methods appear as global accessible functions, meaning you don’t have to type the ModuleName.MethodName() when calling such a member. You can instead simply call MethodName() directly. A disadvantage of this fact is that extension methods, that must exist in modules in VB, will appear in IntelliSense as global functions and not only as a method of the type you extended. Let’s say you have the following: Public Module ExtensionMethods … Continue reading How to prevent Extension methods from appearing as global functions

What I don’t like about iPhone

A couple of weeks ago I caved in to peer pressure and got myself an iPhone 3G 16GB (probably very stupid since the 3rd generation iPhone is released next week). Before I tell you what I don’t like about this phone I should probably mention that I do love the iPhone, but nothing is ever so good that it doesn’t have room for improvements. I’m also aware that many of the things I will comment on here are being addressed in version 3 but I’m still amazed that some of these features are not available already. OK, here’s the list: … Continue reading What I don’t like about iPhone

Windows 7 = Windows 6.1

I was rather confused when I first heard that Microsoft was going to call the new version of Windows for Windows 7 since in my mind it’s Vista that should have been version 7. The first version of Windows NT got the version number 3.1 to align with the 16-bit version of Windows. Later there where a 3.5 and a 3.51 version of NT before the release of NT 4. After that came Windows 2000, which was Windows 5. Then Microsoft released XP which I thought should have been version 6, but the version number was set to 5.1 even … Continue reading Windows 7 = Windows 6.1