Rockford Lhotka

 Sunday, March 4, 2012

I am pleased to announce the release of CSLA 4 version 4.3. It is available from the CSLA download page and from nuget.

This release adds support for Silverlight 5.

Silverlight 4 is still supported. The assemblies are in a Silverlight4.zip file in the bin folder created by the setup program in your Program Files folder or other install location.

Other major enhancements include:

  • New binary serialization scheme for MobileFormatter resulting in substantially smaller data flowing across the data portal from Silverlight and Windows Phone client applications. The ProjectTracker sample application has been updated to use this new scheme – look at the app server web.config and the SilverlightUI and WpUI app.xaml.cs files to see how the client and server configuration is handled.
  • Numerous enhancements to the business rules subsystem. See the change log for more information.
  • Bug fixes to address some specific data portal issues. See the change log for more information.
  • CommandBase now supports managed properties.

With this version, CSLA 4 now supports the following platforms:

  • Microsoft .NET 4
    • Windows Forms
    • ASP.NET Web Forms
    • ASP.NET asmx services
    • WPF
    • WCF services
    • ASP.NET MVC 3
  • Silverlight 5
  • Silverlight 4
  • Windows Phone 7.5
  • Mono
    • OS X
    • Linux
  • Mono for Android

The source code also includes a version of CSLA 4 that builds for WinRT (Windows 8) Consumer Preview. This is largely untested, but does demonstrate that existing business classes (especially those built for 3- and 4-tier deployments in Silverlight) can be simply recompiled for use in WinRT applications. Consider this a preview of CSLA 4 version 4.5, coming later this year with support for .NET 4.5 and WinRT.

Sunday, March 4, 2012 3:29:03 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Monday, February 13, 2012

A beta release of CSLA 4 version 4.3 is now available from here:

www.lhotka.net/cslanet/download.aspx

The big change in this beta release is that the Silverlight projects are now bound to Silverlight 5.

I plan to write a document describing how to undo the very few changes required to support Silverlight 5, so if you want to back-port the code for Silverlight 4 you'll be able to do so on your own. This document will be available within the next couple weeks - before the 4.3 release.

The really big change came in the previous alpha release: MobileFormatter now allows much more efficient creation of the serialized byte stream, resulting in much smaller amounts of data sent over the network between a Silverlight/Windows Phone client and an app server. This same technology will be used in the WinRT codebase as well.

My plan is to release 4.3 on or before Feb 29.

That will allow us to branch 4.3 in svn so the primary codebase can focus on version 4.5 with support for .NET 4.5 and WinRT.

The 4.3 release will go into maintenance mode - meaning we'll address bugs, but don't plan any more feature changes.

Monday, February 13, 2012 12:45:40 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Friday, February 10, 2012

Every now and then I do a blog post about working at Magenic. About YOU maybe working at Magenic.magenic-custom-soltions

With luck, the current upturn in the US economy will continue. Certainly we are seeing robust business opportunities across all of our regional offices (Atlanta, Boston, Chicago, Minneapolis, San Francisco) and at a national level in places like New York, Charlotte, LA, and elsewhere.

As a result, Magenic is actively seeking to hire consultants with several key skill sets, including:

  • .NET development
  • iOS development
  • Android development
  • SQL Server
  • Business Intelligence
  • SharePoint Server
  • Project management
  • Program management

You can see more details about career opportunities and information about Magenic on our Careers web page.

I want to make two broad observations.

First, Magenic provides broad career opportunities. We hire people right out of university to work in our Minneapolis-based Delivery Center. And we hire experts with many years of experience in our areas of focus, with the expectation that they’ll provide great service to our customers, as well as mentoring and coaching for Magenicons with less experience. As you can imagine, we also look for people anywhere between college graduate and amazing expertise.

If you want to work with some impressive experts in an open and sharing environment that supports learning and growing, this is the place to be. That’s true if you are just getting started, are well into your career, or have experience and expertise to share with others. In short, this is good place to work if you want to build your career.

Second, our industry is in the middle of an exciting and turbulent time. The rise of numerous incompatible client devices and technologies, coupled with major changes in back-end server capabilities around public/private cloud computing, noSQL, and big data make for a very unpredictable future. Such turbulence provides great opportunity for personal and professional growth.

This idea of growth is particularly true for people who are passionate about technology and providing great solutions for hard problems. Even better is the opportunity to work with a whole group of people with this kind of passion, supported by a culture of sharing knowledge and supporting learning and growth of expertise. It is hard to imagine a better place to be during this period of major industry change than at Magenic.

Contact us on our Careers web page and see if we’re a good fit for you and your career!

Friday, February 10, 2012 11:13:52 AM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Thursday, January 26, 2012

I have posted an alpha version of CSLA 4 version 4.3.0 for download from the CSLA download page.

Although Jonny has been extremely busy with a number of bug fixes and some feature changes, I think the biggest change in this alpha release is a major optimization of the MobileFormatter.

MobileFormatter is used to serialize object graphs on Silverlight and Windows Phone. It is used by the data portal, and n-level undo (if you use that feature).

Until now, I have recommended that you use compression on the byte stream that flows over the data portal, because the XML created by the MobileFormatter is often quite large. It compresses efficiently, and we’re quite efficient about what we put into the byte stream, but it is just plain big.

Sergey did some really nice work for version 4.3, allowing the use of alternate reader/writer objects so the data can be serialized into something other than XML. Specifically, he created binary reader and writer objects that are around 70% more efficient in terms of byte stream size. That’s about as much as you could expect to get with compression!

The result is that you can probably avoid the CPU intensive overhead of compression and still get a small byte stream to transfer over the network.

The CSLA 4 version 4.3.0 change log includes a discussion of the configuration settings you need to change to use the new reader/writer objects.

This is a non-breaking change, because the default is the same behavior as in 4.2. But this is a big change and we really appreciate your help in testing the new reader/writer objects to ensure they work across a wide range of applications.

Thursday, January 26, 2012 1:15:02 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Wednesday, January 25, 2012

I am pleased to announce that the Using CSLA 4: Windows Phone ebook is now available for purchase.

If you purchased the Using CSLA 4 ebook series you already own the book, and can download it now.

This ebook (in PDF format) demonstrates how to create a Windows Phone 7 (WP7) application that uses a business layer created using CSLA 4. This ebook also demonstrates the use of the MVVM (Model-View-ViewModel) design pattern in a way that is very complementary to the capabilities provided by CSLA .NET business objects, resulting in an application that is easy to build and maintain with clear separation of concerns between the XAML-based view, the interface control code in the viewmodel and the model composed of CSLA-based business objects. This ebook also makes use of the open-source Bxf MVVM UI framework.

The ebook includes a sample application demonstrating the concepts and techniques discussed in the book.

Here’s the high level content outline:

  1. Introduction
  2. Windows Phone
    1. About Silverlight
    2. Windows Phone Application Model
    3. Silverlight Navigation
    4. ApplicationBar Control
    5. Overview of XAML
  3. MVVM Design Pattern and CSLA 4
    1. MVVM Design Pattern overview
    2. Bxf MVVM Framework
    3. Main Shell Implementation
    4. CSLA .NET Windows Phone features
  4. Business and Data Access Layers
    1. Responsibility-driven design
    2. Domain overview and implementation
  5. Application Implementation
    1. Windows Phone project setup
    2. Main shell implementation
    3. User scenarios
Books | CSLA .NET | WP7
Wednesday, January 25, 2012 5:35:03 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Monday, December 12, 2011

One of my primary news sources is The Morning Brew blog. I have it in my RSS reader, and I at least skim through every post.

It amazes me how Chris is able to pull together the key information every day – his dedication and the quality of his work are commendable.

If you are looking for an easy way to keep up on what’s going on in the Microsoft developer world, this is your source!

Monday, December 12, 2011 5:27:50 PM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Friday, December 9, 2011

One of the perks of working for Magenic is that Greg and Paul (the owners) give all employees a tech gift at the end of each year.

Past gifts have included Tivo units, Xbox consoles (with and without Kinect over time), GPS units, Kindle readers, you get the idea.

This year’s tech gift: a Kindle Fire with a one year Amazon Prime subscription.

Magenicons work hard to do great work for our customers, and this is one way the company shows its appreciation for that dedication. Thank you Greg and Paul, and thanks to all the Magenic employees that make the company a great place to work!

Friday, December 9, 2011 11:31:37 AM (Central Standard Time, UTC-06:00)  #    Disclaimer
 Friday, December 2, 2011

I try not to vent all that often, but this just seems deserving…

It seems like every time I install Visual Studio 2010, SQL Express doesn’t work.

I just repaved my laptop – new Win7 install, the whole works.

My previous install didn’t have working SQL Express – as in Visual Studio couldn’t create or open SQL Express files as part of a project. I’d spent a few hours trying to get it working – installing and uninstalling VS/SQL in various combinations to no avail.

The OS reinstall was, in part, because I figured I’d screwed something up so bad it just need a total restart.

Sadly, after installing Win7, Office, VS10, and then VS10 SP1 I still don’t have a working SQL Express – basically out of the box.

My conclusion? The VS10 installer is broken. What else could be wrong here?

At no point, on this new OS install, have I installed SQL Server by hand. The SQL Server install on the machine is directly from the VS10 install – and it doesn’t work.

The SQLEXPRESS service is running, but VS10 can’t talk to it.

I’m surely not looking forward to spending another ton of hours troubleshooting this problem – again. And presumably without success – again.

In short: WTF!?!

Friday, December 2, 2011 11:56:07 AM (Central Standard Time, UTC-06:00)  #    Disclaimer