Showing posts with label PDC2008. Show all posts
Showing posts with label PDC2008. Show all posts

Saturday, June 06, 2009

Just a few more words about the switch from Delphi to C#

Thanks for all your comments to my post about switching from Delphi to C#. Although I didn’t intend to stir up that discussion again, I would like to answer some of the questions and suggestions raised/

I appreciate everyone telling me about teaching C# programmers Delphi. I know it's not too hard; I've done it myself :-) But, the number of programmers out there does reflect the popularity of a platform, doesn't it? And some applicants bluntly told me they didn’t want to work in Delphi. They obviously didn’t get the job, but it did make me think a bit.

But, the lack of programmers wasn't the main reason for us to switch at all. Despite somewhat (...) critical sounds about Microsoft (some of which I tend to kind of share) there is a lot of development in the Microsoft world. Way more than in the Delphi world. Some may be good, some may be not so good or terrible, fact is that there is a lot of effort put in the MS platform.

What really did it for me were two things.

(1) We had to wait for Delphi 2009 for Unicode support, which (IMHO of course) is a major misjudgement. I haven't been able to deliver Unicode software, even though there was a bit of pressure out there. I know for a fact that I did lose sales because of that.

(2) About the same time Delphi 2009 (and Prism) came out, I attended the Microsoft PDC. It opened my eyes regarding to the scale of things. One may not like MS being enormous in size, but there are so many exciting things going on out there, that it made me decide to go the other way.

In fact, I particularly went to check out MS Surface. Just one of those things that MS can do and Embarcadero won’t. That’s not to hold against them, and it doesn’t have anything to do with my choice for C# really, but it did tell me that there was a lot more going on than I really wanted to realize.

Just a quick note on quality of tools: I was getting used to Delphi crashing on me several times a day. It was getting to a point that I did take that into account when starting a days work. I am so glad that is over: Visual Studio hasn’t crashed on me once since I started using it. Not a real argument for the choice either, but I’m glad that’s out of the way.

I will always love Delphi and will be programming in it for the next couple of years, I’m sure. But for the next few generations of our software engine, C#/.Net will be the platform of choice.

Now, that still doesn’t solve those designing issues for me :-) Guess I’ll have to do some investigation.

Bye,

Bart

Friday, June 05, 2009

Contemplating MVC for our software

I’m currently in the process of redesigning our software for a new implementation in C#/.Net. Our current implementation is great of course (…) but some considerations made us decide to move away from Delphi into C#/.Net. I’ve listed the reasons before, but to summarize here is a part of the introduction of our formal business case for going C#/.Net.

Microsoft will always invest more than Embarcadero will

As much as I like the Delphi world, there will be more development into C#/.Net than there ever will be into Delphi/Win32. It’s just a matter of size: MS is way bigger than Embarcadero and the number of developers for C#/.Net will always exceed the Delphi/Win2 group.

There are more C# developers than Delphi Developers

It’s a fact. I had a hard time to find experience local Delphi developers. There are plenty C# developers. To just mention a fact: the Delphi user group that I attended had between 5 and 8 developers on each meeting (every 3 months) and I was presenting on every meeting I attended. The dotned group I recently joined has meetings every month with between 20 and 50 developers every time. And the dotnet group is just one of many C#/.Net groups out there.

And there are numerous other considerations to make the move that I won’t mention here. All of them are commercial and strategic considerations, not technical ones.

So, there we go, we will redesign and implement our software.

Design decisions

There are a couple of little draw back to redesigning and reimplementing software (it will set you back a hell of an amount of money) but there are a couple of good aspects too. You can reconsider some design decisions you made earlier. You can apply new technology if you want to. Stuff like that.

There are two major decisions I am currently thinking over:

  1. Will I use DevExpress XPO or will I use the Microsoft Entity Framework for my ORM?
  2. Will I implement a ‘simple’ 3-tier model or will I go for a MVC model?

Deciding Object Relational Model

There is a bit of information available regarding the decision between XPO and the Entity Framework. I found Gary’s Blog (by DevExpress) highly informative. It’s been noted here that I am a huge DevExpress fan and am really considering building our software using XPO. But, the fact that Microsoft is behind the Entity Framework does play a role in my considerations. I haven’t gone into great detail investigating either technology (and I think I must to make a sound decision). It will be between those two I guess.

3-tier model or MVC model?

Our current app is more of a 2-tier model. The business logic is implemented next to the user interface and I want to move away from that. I am currently contemplating a MVC model or a ‘traditional’ 3-tier model. Our software will have a WinForms user interface as its main interface and most of the stuff out there is using ASP.Net (which I will use for only part of the editing work in our software).

I found this blog (http://rdn-consulting.com/blog/2008/02/01/selecting-a-mvcmvp-implementation-for-a-winforms-project/comment-page-1/#comment-1663) that kind of sums up my considerations.

I haven’t made any decisions on these issues, so any thoughts that you think are worth sharing are much appreciated.

Bye,

Bart

Sunday, November 02, 2008

Passion for Research

I’ve been blogging about the Microsoft PDC the last week and, although it strictly didn’t have anything to do with the Delphi community, I still think it is interesting to know what happened there. I will do one last summing up tomorrow on the event, but there was one presentation I would like to highlight.

I attended the talk on the WorldWideTelescope Research project. I had installed the software earlier and was really amazed at its quality. At the presentation I found out that it basically was a one man project by a guy named Jonathan Fay. I didn’t know that before and my respect goes out to that guy. I regard myself as a pretty good programmer, but what he has come up with is out of my league. So, respect to you Jonathan.

You can watch the presentation at http://channel9.msdn.com/pdc2008/PC48/. And, if you think of killing the video after a couple of minutes of watching, at least skip through to about 27 minutes and watch him talk about a presentation by a 6 year old kid, all done with his software. The passion that Jonathan shows after that really sums it up. That moment made this presentation the highlight of the conference to me.

Bye,

Bart

Thursday, October 30, 2008

Things that make you go humble – update

Please go to the blog again to see two videos on SecondLight and on Boku. Really worth the time they take.

Things that make you go very humble

Bye,

Bart

Wednesday, October 29, 2008

Things that make you go very humble

Todays keynote was exceptional. The topics were coming from Microsoft Research and although the first half hour or so was full of stuff mentioning how important Microsoft Research is to Microsoft and to the world, the remainder of the presentation was unbelievable good.

Sorry about the lack of pictures and videos this time; I didn’t have the camera ready. Sorry. The most cool stuff is at the end of the article so keep reading.

Keep reading to read about SecondLight

There was a talk about how MSR works in the field of medicine, helping researchers analyzing fast amounts of data. And although you really got the point that Microsoft’s technology is helping in that field, it didn’t feel really special.

There also was a talk about very tiny measuring devices for temperature and humidity and things like that, that are actually installed at the convention centre. The devices itself use about 4K of memory (remember that from the old days?) and only have a circuit board that’s the size of a quarter coin. It has a radio transmitter and, to give you a sense of things, there are about 100 of those sensors installed in the main hall. Microsoft has gathered the data about temperature and such during the last couple of days and presents the (vast amount of) data in nice graphical form. It really showed how the cooling system works and what the impact of the equipment, audience, and the cooling system is to the conditions in the hall.

Next, a new programming language for kids, called Boku, was shown. It uses a XBox console to let kids program a ‘games world’ and do really fantastic cool stuff using iconized commands. The speaker spoke quicker than a rapid firing machine gun, but what he showed was really AWESOME and I want one of those for my kids! This will be a very good reason for me to by an XBox (not quite sure if it was a PC or XBox that was used). Go look up the videos on Boku that are probably out there. It really was amazing to watch.

But, the real highlight of the key note was the stuff on what Microsoft calls SecondLight. Really DO GO find videos on that. It comes down to this. It uses a special kind of LCD and infrared cameras. The LCD can be made transparent by applying some kind of current to the screen.The effect is that the LCD will not only display the images as you know, but also lets a second image go through, to be projected on a simple piece of paper. And the fun thing is: this second image can be totally different from the image that is shown on the LCD. The effect is that you can display secondary information about (pieces of) the image on the primary LCD. (Side note: I just hear a fellow programmer calling home about this and he calls it “Freaking Cool”). You can hold a piece of simple paper just above the screen and show some detail information about the stuff that’s under that.

I find it hard to express in words, but really, really, go find videos and other information on this. It is freaking cool.

It really made me ponder about my own work. What a amazing boring job I have! I want to be working for Microsoft Research!

Bye,

Bart

Windows 7 installed

Win7I installed the pre-beta Windows 7 that we got. About the Windows 7 client itself: it looks a lot like Vista but has a couple of nice new things. You will find others blogging about all the new things found in there, so I won’t.

But, here’s a little tip. It runs excellently in a Sun’s VirtualBox box. Just point to http://www.virtualbox.org to get your copy and try it. I got it up and running within the hour without a hitch and that’s on a good but not very modern portable. VirtualBox feels a lot faster than Virtual PC. I will need Virtual PC though, because the Visual Studio 2010 copy that we got is made available as a VirtualPC image.

The goodies are delivered on a very nice and small 150Gb hard disk that I probably keep using because of its physical size. It’s nice and small yet very useful.

I also got to shake hands finally with Nick Hodges, Allen Bauer, Marc Hoffman and Jim McKeeth. My Dutch accent prevents me from taking part in the little interview that Jim did (I’m just too embarrassed), but I will definitely listen to it when it’s online.

We are getting ready to go to the party at the universal Studios now. And some people were already getting ready for that :-)

2982712000_c453190cef

Bye,

Bart

Tuesday, October 28, 2008

Presentation on Azure/Live/Mesh on the PDC

I just watch a presentation on the PDC on MS Azure and Windows Live by Chris Anderson and Don Box. These guys had a great presentation prepared and it was pretty fun to watch. They showed a bunch of great techniques and demo-ed how Azure will host your stuff (applications and data alike). They also showed how easy it is to get something going with techniques and languages that we already know like C#, LinQ, et cetera. In my mind it shows the counter part to the Google Apps platform (and probably beyond that).

However, they hardly got any applause which I think was very funny in itself. Although the stuff they showed was excellent and pretty ground breaking. Now, why didn’t they got the applause that they were quite obviously expecting?

A couple of reasons are possible:

  1. The audience didn’t get it. Nah, there are a couple of thousand developers in the audience and probably all very smart programming on a day to day basis. That can’t be it.
  2. The stuff isn’t that special and people thinking: what’s so special about that? That can be it, but that would probably because the stuff is so easy to do. From within Visual Studio and with a couple of easy mouse clicks you can deploy your software out there and the same goes for your data.
  3. Now, the third reason might be it (and it is the reason why I didn’t clap my hands a lot). This is ground breaking stuff that gives companies and developers a lot of power to create new solutions quickly and much faster than before. But, would you trust your applications and data in the hands of Microsoft?

I think that for applications that provide public services, like route finding applications, this all is great stuff. You can very quickly create your app, deploy it out there in the cloud for others to use. However for you business application you would like to keep your stuff on your own machines.

Now, what was shown in the demo, and maybe wasn’t emphasized enough, is the lack of needing to know where stuff is. It might be in the clouds or on your own machines, it might be in an Azure SQL Server database or in your own: it doesn’t matter. Simply by changing a root URI you can use the stuff from where ever it is.

So far I think Azure and the like is great stuff and I will certainly be thinking on how to use it. It is just not clear to me yet how I can use it in our software (which creates documentation solutions). But, maybe I should give myself a bit of time to think about that.

Bye,

Bart