Say bye to ADO.NET Entity Framework in Orcas/.NET 3.5 RTM

As many reported (including me), ADO.NET team decided to postpone the EDM designer after Orcas/.NET 3.5 RTM. With this move they basically frozen the use of EF in real applications (wizard is very limited, typing all that XML is not really an option) until EDM sees the light of the day.

Now it is getting even worse. They decided to postpone entire EF for the time being mentioning H1/2008 as a tentative release date. It is amazing to see a huge company, full of money, full of very talented people, like [MS] that can't create an ORM in years (remember ObjectSpaces?). Whether this is politics or misjudgment or something other is hard to know for sure, however, they certainly aren't lacking the resources, are they.

So, what do you do in the meantime? Either start playing with LINQ to SQL or go with LLBLGenPro a proven, reliable, powerful, excellent ORM solution that is ready to use right now.

Starting with ADO.NET Entity Framework in Orcas beta 1

Orcas is bringing two similar but different LINQed ORM approaches: LINQ to SQL and Entity Framework/LINQ to Entities. I thought that it is about time to try out the later, so I created a new project and fired up Entity Data Model (EDM) Wizard (the only way to avoid typing all that XML definitions for now*). The result was a bunch of empty xml and code files. Oops. Fortunately I was aware that a EDM wizard hot fix is out. Once the fix is installed, I re-run the wizard, picked a couple of tables from a Northwind database and finished the process. This time the definition and code files were generated just fine. At least I thought so. Next step is to create an instance of strong typed ObjectContext, like this:

NorthwindEntities db = new NorthwindEntities();

Yet, I got a "At least one of the input paths does not exist." exception each time I've tried to run that simple piece of code that is supposed to run without problems. Hm. My first thoughts were that strong typed NorthwindEntities ObjectContext class is passing wrong arguments to supertype ObjectContext constructor. After a couple of tests I saw that the arguments were correct. So, what is wrong. The answer is, of course, in exception message. I think it is saying that some types are missing or something like that. I correlated this fact to the selection of only a couple of tables in wizard instead of selecting all of them. So I re-run the wizard once more, this time selecting all tables. This time it worked smoothly - seems like the third iteration is the good one.

The bottom line is that if you want to play with Entity Framework you have to:

  • Install EDM Wizard hot fix
  • Always include all tables (or modify entity model definitions, mappings, etc by hand)
  • or type XML like mad

* ADO.NET team has a video of an EDM designer prototype which looks really cool. But, what really sucks is the sentence "that we can expect to see released after the upcoming Orcas release". Yes, you've read it right. No EDM designer for Orcas release. This is like having to assembly a (fast sports) personally car before driving it. On the bright side though: your XML and typewriting skills will have opportunity to shine.

Getting Internet over FTTH (optics) isn't that easy, oh no, it is an adventure

Amazingly, Slovene national ISP Telekom (recently SIOL, my original ISP, was merged with Telekom) has really fulfilled the promise to bring fiber optics to my home. Actually, the infrastructure (cable) has been outside my doors for a month or so now. In the middle of the month I was wondering when I can get a connection already - FTTH 6Mb/6Mb would be of great benefit over ADSL2 2Mb/384Kb to me. So I called ISP's sales center. The operator said that they are sending letters (not e-mails) to subscribers and once I get the letter I can upgrade (I am already on their ADSL2). I got the letter in a couple of days and I phoned them again asking, hey connect me. The operator (new one) said - we have to check whether you can get optics at all. After telling him that I sure can, since cable is right outside the doors, he told me that they are not connecting customers yet and that I should call later next month (May). Oh well, but the story doesn't end here. Next day I was reading their forum and I saw a post from a guy saying that Telekom has already connected a bunch of customers in my city. I even found the news on the website that "first seven customers has been connected" and that they actually started fulfilling the promise. Go wonder. Of course I phoned the sales operator again (yet another one) who told me to apply for connection through their website and if anything goes wrong, I should call their support operator. So I went, filled a ton of data and clicked finish - just to get an exception of server error. This time I phones support and the guy I got told me that he can't help me as he can't even come close to this application of theirs and that I should call sales. See - I am already being pushed in recursion. OK, so I called sales and a new operator told me that they are experiencing problems with this application (which seems being used by them, too) and I should call them in an hour or so. Of course the application wasn't working for a couple of days and a bunch of different sales operators told me to call later because they have no idea what's wrong. Only after n-th call I got a sales operator that almost yelled at me: "What do you want? We are not selling optics yet, go away and return after we announce we are selling optics! And those seven guys who were connected were testers". Yet, they have an application in place that lets you apply for optics (but it throws a seemingly unrelated exception later on), they announced that they started connecting customers (note: there was no mentioning of test connections, no, it was explicitly stated that they were connecting subscribers), they have a price list in place and 80% of sales operators told me that I can apply, it is just the application that doesn't let me. And I can't even apply for optics right now.

The bottom line is no optics for now and I can't even apply for it. Perhaps in a month or less, who knows - apparently nobody. When it happens it happens. As for me, I have mixed feelings about optics: sure, the speed will be great, the stability should be better, the price should be lower but seeing how they are dealing with this makes me afraid of logical problems related. Needless to say, that my old ADSL2 modem needed a year of constant firmware upgrades to start working properly, at least more or less properly, IPTV has constant problems, IP phone quality is bad, etc. So I am bit in a dilemma whether to switch to optics right now, or wait for situation to stabilize (I guess the illogical part of me will prevail and I'll jump on optics bandwagon as soon it is available).

Should prime minister distinguish between web site, blog and forum?

In a recent publication of weekly Mladina I read an article that Slovene prime minister doesn't distinguish between web site, blog and forum (they quoted a question and his answer where it is more or less obvious). At the same time, the same prime minister is preaching that he and his government will lead Slovenia to be "one of the most successful countries of the world, on of the lighthouses of the 21st century". Leaving aside that this goal is totally ridiculous and one can't even laugh at it, one has to ask himself/herself: should a prime minister know the very very basics of the Internet? Even more so, if he is leading the country to be the most successful (whatever that means) on the earth. I think he should, we are in the 21st century after all.

Burning large files using free DVD burning software

I had to burn a ~12GB file today on Vista, not a trivial task unfortunately.

Of course, I opted for burning the file to 3 DVD-Rs. First I made 3 files that matched maximum DVD-R size using WinRAR (if you don't need compression I strongly suggest using Fastest mode which is really fast). Then I had to burn those three files to 3 blank mediums. At this point the problems started. Which burning software should I use? I don't consider Nero anymore because it is bloated and I had an odd experience with it, plus it isn't free. Note, that I don't need fancy features, just burn the selected file(s) or ISO image.

I looked at David's list of free burning software and picked DeepBurner first, I installed it, run it, picked first file (~4.5GB) and started burn process. It was finished in 2 minutes. Wow, that was fast! But the problem was the fact that it burned just ~400MB of file for some odd reason No errors were reported, just the file wasn't there. Entirely at least. Later I discovered in their forums that DeepBurn has problems writing large files. Go figure, bad luck of choice.

Next, I picked InfraRecorder. Amazingly, it has a similar problem. It has written a bigger part of the file though. And again, no errors reported.

At this point I opted for Vista's easy burning feature. This time it won't even try to burn the file. And yes, no errors reported, just the click on Burn Files to Disk button doesn't do a thing. Argh.

Finally, after several ruined DVDs, I tried ImgBurn and it worked. Huraaaa, at last. I had to set UDF mode though.

So, the winner is: ImgBurn! A good choice if you have to burn really large files. The other software mentioned just acts oddly when burning such large files. What is even worse is the fact that no error is reported. OTOH if you need an easy to use burning software for writing not too large files I would recommend InfraRecorder - it is more friendlier than ImgBurn.

Our police knows everything

Last month there were two thefts from people connected to Slovene president Janez Drnovšek. Each time there was a computer (with possibly sensitive data) stolen among other minor valuable things. After first theft the police immediately issued a notice that the theft probably isn't related to the president, rather that it was a coincidence. After the second theft they immediately claimed the same, plus that two incidents aren't related. Even though they didn't have a clue who was behind the thefts and what were the reasons at that time. Isn't that really brilliant crime investigation from our police? Here comes even more fascinating investigation conclusion.

After a while they arrested a couple of drug addicts that stole one of the computers and sold it to another person. But here comes the witchcraft touch: the police says the data wasn't compromised in any way. How can police be so sure that nobody copied the harddrive or stolen the data in some other way - the computer was missing for weeks? Are they using some alien surveillance technology?

Statements like that certainly don't add to police credibility, do they?

Is Expression Web Designer good for designing asp.net 2.0 applications?

Expression Web Designer (EWD) is supposed to be a designer's tool for designing asp.net 2.0 applications. It has other roles but working on asp.net 2.0 applications is what interests me currently. So I tried running EWD on a real asp.net 2.0 project. EWD looks nice, seems nice but I immediately stumbled upon a serious limitation.

EWD won't show 3rd party controls at design time nor it will provide intellisense help for them. At first I thought I was missing something. But no - support for 3rd party controls is really missing. Imagine Visual Studio without showing 3rd party controls at design time. It would cripple its designer very much and the same is true for EWD. Seems like [MS] forgot to eat its own dogfood on this and they also never used EWD on a real asp.net 2.0 project, not just a demo that uses out of the box controls. Or it was a deadline that forced them not to provide this support. Whatever the reason is it makes EWD much less usable on asp.net 2.0 projects.

There is a partial workaround though. Seems like installing 3rd party controls in GAC helps with intellisense support.

If you consider this feature important, then do vote for it at [MS] Connect:

https://connect.microsoft.com/ExpressionWeb/feedba...