Jobping Laurent Kempé MVP JetBrains Academy Member Certified ScrumMaster


My status

View Laurent Kempé's profile on LinkedIn

Xbox 360


Locations of visitors to this page

.NET Dudes


French .NET Dudes




Tech Head Brothers

September 2007 - Posts

Today was my last day at ecenter solutions (Helvetia)

Today it was my last day at ecenter solutions (spin off of Helvetia, Swiss insurance).

My role there was as following:

January 2006 – October 2007 (ecenter solutions)

Senior Solution Architect

  • Responsible for the design and implementation of the software release management process of the Helvetia Patria Group ebusiness platform.
  • Leading Windows backend architecture and development using web services and .NET technologies.

October 2002 – January 2006 (Helvetia Patria Group)

Solution Architect, Deputy Head of Architecture and Infrastructure

  • Responsible for design and architecture of the Helvetia Patria Group ebusiness platform.
  • Support business projects, technical projects and internal projects.

Here is a recommendation made by Didier Beck on my LinkedIn profile

Didier Beck, CEO, co-founder, ecenter solutions (colleague)
worked directly with you

“I had the chance to hire Laurent and to work with him during 5 years, without managing him directly. Laurent is a very nice person and a highly experienced expert as Senior Solution Architect. Greatly committed, supporting our team-spirit, he was very appreciated inside our company, and outside, by our customers, for his professionalism. Laurent is specially strong in 4 fields: Software Lifecycle Management, complex and scalable Web application Architecture and Technology, SOA implementation, linking efficiently Infrastructure and Software Architectures.” September 27, 2007

I will have a "New start on next Monday" at innoveo solutions also as a Senior Solution Architect.

My role in innoveo solutions will be:

  • Architecture, conception, design and realization of customer solutions.
  • Observation of current technology trends guaranteeing the market attractiveness of the enterprise solutions and services.
  • Co-operation in customer projects.

innoveo start

So I leave a company to get in a new one, and the great point is that all my former colleagues (except one, you will miss Thomas) will also be my future colleagues at innoveo solutions.

Note to self - How can I change the database owner?

From: http://www.mssqlcity.com/FAQ/Admin/DBOwner.htm

You can use the sp_changedbowner system stored procedure to change the database owner.
Read about the sp_changedbowner stored procedure in SQL Server Books Online.
This is the example to make the user John the owner of the pubs database:

USE pubs
EXEC sp_changedbowner 'John'
New start on next Monday

Yeah next Monday I will start in a new formed company called innoveo solutions.

Has Didier said on his post "INNOVEO: New working contracts signed" I signed on the 11th September 2007 to join on 1st of October 2007. I see you coming concerning the date, as Jon, but no, I am not superstitious.

The team is a melting pot of cultures with people coming from Austria, France , Germany, India, Italy and Switzerland. So it is 6 nationalities in a team of 14 people. Not bad.

Recap from Didier:

"We have always said that we have a particular, a quite special team-spirit. A lot of people thought that we were arrogant. Now, guys, I think that it is difficult for you *not to recognize* that we have a strong team-spirit ;-) During the 6 months of the negotiation process, the team has remained absolutely stable and compact, we have delivered greatly all the time (I am very proud of that!), and 14 of the 15 people are joining innoveo on October 1, 2007."

This period was really intensive and still is but shown what team-spirit and dedication can achieve.

I am really happy to join innoveo solutions and I hope we will have great success!

Hello Kirti : Toolkit Release 10920

This has been a long awaited release and has lots of important bug fixes. We were unable to get the Test Framework ready in time and hope to get that out later. The release notes talk about it in detail at this new sample website location. The binaries can be downloaded from the Toolkit Release page.

Please try it out and let us know if you run into any issues.

Hello Kirti : Toolkit Release 10920

Microsoft Expression : Expression Blend 2 September Preview is now available!

Good timing for me :)

Expression Blend 2 September Preview is now available!

Microsoft Expression : Expression Blend 2 September Preview is now available!

What were you developing 10 years ago ?

I found browsing the Internet an old software I developed Xit.

I am not 100% sure it was developed 10 years ago it might be more 11 years ago, but that's really funny to see things like that still on the Internet. Whoa, I didn't realized I was that old!!! :) Compared to my 102 grand father I will hopefully write software for quite some time :)

This application was a cool one, it was written for the wonderful AMIGA using the Magic User Interface, MUI (can't believe that this site still exists) . The application was an icon on you desktop, you had just to drag an archive on it to unpack it, or a set of file to pack.

I first had an AMIGA 500 then an AMIGA 1200, that I still have in a box in the cellar.

At nearly the same time, the Amiga 1200 was released, and featured the MC-68EC020. It also had 2MB Chip RAM (which was expandable to 10MB of total RAM). Both the A1200 and A4000 made use of AmigaDOS 3.0, which added CrossDos, a useful commodity capable of reading and writing MS-DOS-formatted disks. Workbench 3.0 was also included. This release had a number of new features, including "datatypes" and "localization". Datatypes allowed programs to access data in an unlimited number of formats, whereas localization enabled Workbench and other programs using it to utilize multiple languages. Also, a new filesystem, DCFS (Directory Caching File System), was incorporated.

Today I am running a notebook with 4Gb RAM, it is 2048 time more RAM, crazy!

I had so much fun with the AmigaOS and the Motorola 68000 family CPU :-)

I found the first reference about Xit here:

Short:        Use in an intuitive way the XPK libs
Author:       lkempe@assisi.fr (Laurent Kempé)
Uploader:     lkempe assisi fr (Laurent Kempé)
Type:         util/pack
Version:      1.0
Architecture: m68k-amigaos

Actually, Xit was written to replace XDrop by Martin A. Blatter which was
issued in 1992. As a matter of fact, Xit is adding some new functionnalities
to its 'ancester' XDrop.

Functions of Xit :

Packing/unpacking file(s) or drawer(s)
AppIcon / AppWindow
Fast information about any present packing library
Xit can pop up a window to show the evolution of the (un)packing
A beep can be heard when the (un)packing is over
The destination drawer for the packed files can be chosen
You can choose either to keep or delete the source file
The icon of the file is copied if present
A default icon can be added if not present
The user interface of Xit is MUI based. The windows can be easyly resized
Easy install thanks to the Installer script

Laurent Kempé______________________________________________
EMail : lkempe@assisi.fr (Work) - lkempe@nucleus.fr (Home)
  WWW : http://www.assisi.fr/users/~lkempe/
  IRC : Stormie
Posted: Sep 15 2007, 12:49 AM by lkempe | with 1 comment(s)
Filed under:
phew! I got pressure from Richard and Rédo :-)

Rédo started it and Richard was second.

Cool I also got my Web 2.0 Master Degree.

Posted: Sep 15 2007, 12:08 AM by lkempe | with no comments
Filed under:
IE7Pro 1.1 released

IE7Pro is THE plugin to have if you use Internet Explorer.

The changelog of 1.1 version is:

  1. Add Online Bookmarks
  2. Add Text Saver
  3. Add Privacy Cleaner
  4. Easy Homepage improved
  5. Fix some bugs

To read about the different features take a look at the User Guide.

Posted: Sep 12 2007, 09:47 AM by lkempe | with no comments
Filed under:
Silverlight Streaming hosting and Expression Encoder

How do you host your video content created with Expression Encoder on Silverlight Streaming ?

The first answer is wait for the plugin that will let you do that:

Coming Soon
Publish directly to Silverlight Streaming.

If you can't wait take a look at Silverlight Streaming SDK that tell you how to do it !

But how do you do if you want to have your video on Silverlight Streaming and your application on your site ?

Read the documentation. I have to say, it was quite obscure the first time I read it. So here is the way we did it with Mathieu.

The output of Expression Encoder is saved in the following folder:

C:\Users\Username\Documents\Expression\Expression Encoder\Output

In this folder you have everything to start with a very good looking player; the xaml, the JavaScript, your video, a html document, even a visual studio project. You might look at Tim Heuer video "cheating at creating a Silverlight media player".

To start you have to modify the default.html to use the Silverlight JavaScript script delivered by Silverlight Streaming:

<script type='text/javascript' src="Silverlight.js"></script>


<script type="text/javascript" src="http://agappdom.net/h/silverlight.js"></script>

This is recommended by the documentation, but it is not mandatory:

Instead of hosting Silverlight.js on your own web site and using it, you should use http://agappdom.net/h/silverlight.js

Then you have to modify the StartPlayer.js, replace:

function StartPlayer_0(parentId) {
    this._hostname = EePlayer.Player._getUniqueName("xamlHost");
    Silverlight.createObjectEx( {   source: 'player.xaml', 
                                    parentElement: $get(parentId ||"divPlayer_0"), 
                                    properties:{ width:'100%', 
                                                 isWindowless:'false' }, 
                                    events:{ onLoad:Function.createDelegate(this, this._handleLoad) } } );
    this._currentMediainfo = 0;      

with this, adding the initParams:

function StartPlayer_0(parentId) {
    this._hostname = EePlayer.Player._getUniqueName("xamlHost");

    Silverlight.createHostedObjectEx( {   source: 'player.xaml', 
                                        parentElement: $get(parentId ||"divPlayer_0"), 
                                        id: this._hostname, 
                                        properties:{ width:'100%', 
                                                     isWindowless:'false' }, 
                                        events:{ onLoad:Function.createDelegate(this, this._handleLoad) },
                                        initParams:"streaming:/4065/livewriterdemo/livewriterdemo.wmv" } );
    this._currentMediainfo = 0;      

Now you need a way to get back this the real url of you video out of the streaming:/4065/livewriterdemo/livewriterdemo.wmv, this is done automatically by the script doing a post to Silverlight Streaming server that returns the following javascript:

SLStreaming._StartApp("bl2", null
, {}
, []
, ["http://msbluelight-0.agappdom.net/e1/d/4065/8.w/63325188000/0.UZcUXMfJgIK0I0HcP-SQGzhvvVE/livewriterdemo.wmv"]);

Now we need to take car of the real url in the _handleLoad method we change the call to the _playNextVideo to a new method ChangeVideo:

StartPlayer_0.prototype= {
    _handleLoad: function() {
        this._player = $create(   ExtendedPlayer.Player, 
                                  { // properties
                                    autoPlay    : true, 
                                    volume      : 1.0,
                                    muted       : false
                                  { // event handlers
                                    mediaEnded: Function.createDelegate(this, this._onMediaEnded),
                                    mediaFailed: Function.createDelegate(this, this._onMediaFailed)
                                  null, $get(this._hostname)  ); 
    ChangeVideo: function(){            

        var params = $get(this._hostname).InitParams;
                { "mediaUrl": params, "placeholderImage": "", "chapters": [] }  

We get access to the initParams converted to a real url using:

        var params = $get(this._hostname).InitParams;

Tanks to Mathieu for the help in the javascript coding.

So this is all you need to do to have your video hosted and delivered by Silverlight Streaming and your application hosted on your own site.

Silverlight and file system loading

I am currently working with Silverlight and Silverlight Streaming and had an issue over the weekend I am sure I will not be the last one to have so:

Don't try to load a Silverlight application from the file system, I mean double clicking an html file, prefer to have a little web application or even use "Starting ASP.NET Development Server from a right click in explorer" to test your application.

The security used in both cases is different so it makes the difference.

Thanks to Mathieu for the support in the development and Jon Galloway for the support in troubleshooting the issue.

More Posts Next page »