AJ's blog

December 16, 2012

Windows 8 @ SDX

Filed under: SDX, WinRT — ajdotnet @ 6:16 pm

While I am working through technical details and the bits&bytes of various aspects of WinRT and WinPRT applications, there is a lot going on in SDX as well. And we share quite a bit of this work…


Roadshows and Conference…

First there is a roadshow „The Professional Touch“– Entwicklung moderner Line-Of-Business Apps” which is provided by us and Microsoft Germany:

AFAIK, there are still free seats available!

Matthias and Daniel also spoke at the ALM Days 2012 in November:

I’m not sure if the presentations will be made available online…



Much of this is based on Matthias’ LOB reference application: SDX Privatbilanz (German).



On top of that, several colleagues are also providing information on their blogs, as well as on the company blog:


App Store…

And the – so far – last step was the first release of a time sheet application: SDX WorkTime (also German only, sorry).

This release was meant to check out the publishing process, and the team met that demand quite well. Next releases will focus on the backend (we intend to use Microsoft CRM), and there are already a lot of discussions going on regarding the user experience of Windows Store Apps.


What’s next?

I have really no idea what any of my colleagues may come up with next. Judging from what they produced during the last months, and given the fact that we have some holydays ahead… . Well. After working for SDX for more than a couple of years, it is still one of the most vibrant and intriguing companies I know.


Merry Christmas and a happy new year!

That’s all for now folks,

August 14, 2011

RIA with Silverlight–The Business Perspective

If you read this, chances are that you are a developer and that you like Silverlight. And why not? Exciting platform, great features, outstanding tooling. But! If you’re a corporate developer, have you sold it to your management yet? If not, this post is for you.

Silverlight is for RIA, and the domain of RIA applications is largely intranet or closed/controlled extranet user groups. This again is what is usually found in larger enterprise companies. Companies that usually have a vested interest in controlling their environment. And in terms of bringing software into production and of operations and maintenance afterwards, every new platform is one platform to many.

So, the odd developer comes along and talks about this great new technology. Does the management care? Probably not. What does it care about? Simple. Money! Money, as in costs for deployment and user support, hardware and licenses to get the stuff up and running, operations and developer training, maintenance. And money as in savings in the respective areas and – the cornerstone, as the business usually pays the bill – impact on the business. All usually subsumed under the term ROI.

About a year ago, I finished an analysis looking into RIA with Silverlight, conducted for a major customer. Not from the point of view of the developer, but that of business people, operations, and IT management:

So, let’s look briefly at each aspect…

User/Business perspective…

The business doesn’t exactly care for the platform Silverlight itself; it cares for its business benefits. Benefits as in improved user experience, streamlined business workflows, office integration, and so on. And since we had some lighthouse projects with Silverlight we were able to collect some customers’ voices:

“This [streamlining with Silverlight] would reduce a […] business process […] from ~10 min to less than a minute.”

“Advanced user experience of Silverlight UI helps raising acceptance of new CRM system in business units”

“I was very impressed of the prototype implementation […] with Silverlight 3. Having analyzed the benefits of this technology I came to the conclusion that I want the […] development team to start using Silverlight as soon as possible. […]”

This is also confirmed by the typical research companies, like Gartner or Forrester:

“Firms that measure the business impact of their RIAs say that rich applications meet or exceed their goals” (Forrester)

Operations perspective…

In production, the benefit of Silverlight applications (compared with respective conventional web based applications) is reduced server and network utilization.

For example, we had a (small but none-trivial) reference application at our disposal, which was implemented in ASP.NET as well as Silverlight (as part of an analysis to check the feasibility of Silverlight for LOB applications). We measured a particular use case with both implementations – starting the application and going through 10 steps, including navigation, searches, and selections. Both applications were used after a warm-up phase, meaning that the .xap file, as well as images and other static files had already been cached.

The particular numbers don’t matter, what matters is the difference between the amount of data that has been exchanged for each step (in case of navigations none at all for Silverlight). For the single steps:

And accumulated over time:

A ratio of roughly a tenth of the network utilization is quite some achievement – considering that the Silverlight application wasn’t even optimized to use local session state and caching, it should be even higher.

This should have a direct impact on the number of machines you need in your web farm. Add the fact that session state management on the client drastically reduces the demand for ASP.NET session state – usually realized with a SQL Server (Cluster) – there is yet another entry on the savings list.

On the down side is the deployment of the Silverlight plugin. For managed clients – especially if outsourcing the infrastructure comes into play – this may very well become a showstopper.

IT Management perspective…

With respect to development and maintenance, what IT Management should care about includes things like ability to deliver the business demands, development productivity, bug rates in production, costs for developer training, and so on.

Actually all areas in which Silverlight can shine, compared with other RIA technologies, and with the typical mix of web technologies as well:

  • Rich, consistent, homogenous platform
    • .NET Framework (client and server), Visual Studio, Debugger, C#
    • Reduced technology mix, less technology gaps, less broad skill demands
  • Improved code correctness and quality…
    • compiler checks, unit testing, code coverage, debugging, static code analysis, in-source-documentation, …
  • Improved architecture and code
    • Clean concepts, coding patterns, clear separation of client code, lead to better architectures
    • Powerful abstractions lead to less code (up to 50% in one project), less complexity, less errors

Customers’ voices in this area:

“between our desktop app and the website, we estimate 50% re-use of code”

“a .NET developer can pretty much be dropped into a SL project. […] This is a huge deal […]”

“As alternative for Silverlight we considered Flash. […] only Silverlight could provide a consistent development platform (.NET/C#). […]”



Taking all this together, and considering that enterprise companies usually have the tooling and test environments (well…) readily available, this all adds up to something like the following bill:

RIA Return on Invest

Whether the bill looks the same for your company or for one particular project, of course, depends on many things. Especially nowadays with all the hubbub around HTML5 and mobile applications (without any relevant Silverlight support). But if RIA is what you need, the Silverlight will quite often yield far more benefits than any other option.

Still, you need to do your own evaluation. However, I hope to have given you some hints on what you might focus on, if you want to sell technology to the people who make platform decisions in your company.

The actual analysis was fairly detailed and customer specific. But we also prepared a neutralized/anonymized version, which we just made available for download (pdf). (Also directly at SDX.)

That’s all for now folks,

kick it on DotNetKicks.com

July 26, 2010


Filed under: Blogroll, SDX — ajdotnet @ 7:59 pm

Recently I have been blogging a little less than usual. One reason for that was that my company started its corporate blog, named „Flurfunk“ (German, „water-cooler conversation“?). And being an experienced blogger… they said… and I was arrested. Anyway, it’s in German, therefore…

flurfunk<content locale=”de; de-DE”>

… für die der deutschen Sprache mächtigen Leser: SDX hat den firmeneigenen Blog „Flurfunk” gestartet.

Die Themen sind ein bunter Mix aus kleineren technischen Artikeln (und Kollegen die das mit dem “klein” noch nicht verstanden haben :-P), netten Hinweisen aus dem Back-Office  ;-), aktuelles aus dem Büro, Veranstaltungshinweise – und nicht zuletzt Marketing.
OK, auch nicht ganz so ernst gemeintes ist dabei ;o). Schön bunt ist‘s auf jeden Fall!

Einfach mal reinschauen und guten Tag sagen 🙂


That’s all for now folks,

July 8, 2009

new CloudApp()

Filed under: Azure, SDX, Software Architecture — ajdotnet @ 7:46 pm

Microsoft hasn’t even released Azure yet, still they felt compelled to start a little developer competition. And SDX is participating… .

During the last 4 weeks a team of my colleagues has put together a working application, simulating an actual business scenario. Starting at point zero, coming up with a meaningful idea – in terms of a cloud solution, and putting together a working application, is quite some achievement. Congrats, guys.

Now business scenario sounds a little drab, and banking, especially related to credits, may not actually cause people to applaud hilariously these days. But frankly, since the winner is decided by a community voting and we never thought about that application as particularly “sexy”, we never aimed for that goal. Our aim was to demo the potential of the cloud. Nothing less.

And that’s what the application does. It takes big amounts of data (storage), runs advanced statistical calculations (Monte Carlo simulations) (compute), and delivers the results. Since these are peek time usages, we may use several worker roles to scale out the calculations, cutting back when they are not needed (dynamic provisioning). Exactly what the cloud is about.

And what I really do like is that it doesn’t stop there. Service Bus may be leveraged to integrate this application with “local” solutions, calling back when the calculation has finished. SQL Data Services (once they become available with reporting) may be used for longtime data mining and trend analysis. One can even think of producing information needed to calculate a single credit contract and using Live Mesh to distribute it among the sales people.

So, check it out: http://ratingsimulator.cloudapp.net/  

That’s all for now folks,

July 13, 2008

Working for SDX (a.k.a. My latest project…)

Filed under: Miscellaneous, SDX, Software Developers — ajdotnet @ 4:04 pm

Advertisement warning!

I’ve said it in an earlier post: I like working for SDX. In fact my work has become even more challenging due to a changed job description (with the unfortunate side effect that I have less time to spend on this blog). Anyway, we are looking for people (don’t look at the date of the post; if you are reading this in a year the statement will still be true). Well, here’s a short description of my latest project to give you an idea on some of the work we do for our customers…

I just completed a pilot study for one of our major customers, running about 3/4 of a year. Starting point was a system consisting of a non-trivial database and of two VB6/ActiveX/DHTML applications. Initially created a decade ago as replacement for a simple MS Access application, it had grown organically into a multi-purpose-application and a very vital, central data pool for “quite a few” stakeholders.

Since Microsoft has decommissioned VB6, the customer decided to do a VB6-to-.NET migration. My job as responsible architect was designing the target architecture, and coming up with a migration path that supported parallel operations of old and new world during the anticipated two years time the migration would take.

Of course in a decade the world has changed, so has the business and the way software has to be built to honor that. Globalization, European Union, changed customer’s perceptions, constantly changing demands, the way software is built, maintained, and operated.
So the job quickly grew to include a new domain model, adjusted business processes, better business alignment. So far the demands.

The agreed on strategy we came up with is an ecosystem of applications. One core application implements the main parts of a new domain data model, ensures consistency and — essential in any distributed system and surprisingly difficult to achieve at times — provides stable identifiers. Circled around this core application is a number of other mutually independent applications. (The possibility to do this of course relies on the business requirements being mutually independent.)

This approach is driven by

  • the separation of the monolith in as many as possible disparate applications (pardon the exaggeration, but it is a fair number),
  • defined ways of interaction between these applications (including off-the-shelf-software),
  • and providing a sound basis to support building the custom-made family members.

This strategy provides the flexibility to build each application according to demand of specific stakeholders, even allowing for contradicting business demands of different departments. The set of applications can change in the future to address changed needs. Future technology changes can be applied in small steps (lessening the chance that will build the next Moloch). Maintenance should get better, because each application is less complex (simpler architecture, less business functions). And it conforms with Roger Sessions works on complexity of software systems.

Of course, a small but rigid set of rules and governance has to be implemented to ensure peaceful coexistence and avoid “chaotic growth” of our application family in the future. Especially the growth of interdependencies between the applications has to be watched carefully.

Next steps will be applying for the budget at the top management and then hopefully building that system. Of course with my and SDX participation 😉 .

Now, if that sounds like a challenging and interesting project; if you happen to be willing to work in the Rhein/Main area, Germany; if you could envision yourself working for the same company as I do 😉 … (not necessarily in that project!). Well then pay a look at http://www.sdx-ag.de/jobs.aspx (German language skills mandatory!).

That’s all for now folks,

January 31, 2007

Shiny new web (german)

Filed under: Miscellaneous, SDX, Software Developers — ajdotnet @ 8:08 pm

This is some news for our german readers…

<language culture=de-DE />

💡 Der Web-Auftritt von SDX ist komplett überarbeitet, runderneuert und neu gestaltet worden.

Für den Auftritt wurde diesmal eine Marketingagentur mit eingespannt (unsere Kunden kommen zu uns wenn sie professionelle Hilfe brauchen 😉 — warum sollten wir das anders halten?).
Die Agentur hat dann allerdings erstmal dafür gesorgt, daß wir alle den Kopf hinhalten müssen… 😯 . (Die Erfahrung war’s wert, aber ein Jobwechsel kommt nicht in Betracht.)

Viele Stunden und einige Abende gingen dann noch für’s Texten drauf — kein SDX’ler der nicht seinen Anteil daran hätte — und é voilà, das neue www.sdx-ag.de.

Und Schuld an allem ist diese Dame! (Ehre wem Ehre gebührt! 😉 )



That’s all for now folks,

August 11, 2006

Why I like working for SDX

Filed under: SDX, Software Developers — ajdotnet @ 6:16 pm

www.sdx-ag.deTime and again I’m asked why I like working for SDX. The short answer is: “Working with bright people!”

The longer answer:

  • Working with people that challenge you and that you can challenge – to accomplish something better.
  • Working with people with whom you can quarrel about one thing and drink a coffee afterwards, joking about something different.
  • It’s the mixture of professionalism, determination, motivation, and fun. The fact that you can rely on your collegues to be honest with you (even if it hurts).
  • Having the opportunity to work with new technologies, evaluating them, and finally use them. The opportunity to question old ideas and develop new ones. To accomplish something new, to drive progress, for the individual, for the current project, for the customer, and for SDX.
  • And the fact that all this does not stop with bits and bytes, rather it is a common attitude reaching from dev people to sales to marketing.

There is of course the fact that at SDX we work leading edge on SOA and .NET. This may be the thing that makes SDX attractive (for customers as well as for new collegues), yet in my opinion this is just a consequence of the things said before.

PS: I lied in the first sentence. Time and again I’m asked whether I would like to work for XY. Well, things may change, so keep asking ;-).

PPS: This post was not sponsored, nor did anyone ask for it :-).

PPPS: If you like what you just read, if you are from Germany (Rhein-Main-Area), and if you would like to give SDX a try, just visit http://www.sdx-ag.de/jobs/jobs.htm.

PPPPS: Too bad, I should have thought earlier of sponsorship… 😕

That’s all for now folks,

Blog at WordPress.com.