Rockford Lhotka's Blog

Home | Lhotka.net | CSLA .NET

 Monday, April 07, 2014

CHSPK18 Visual Studio Live! is coming to Chicago again this year. We’re right downtown near the big park and the lake, so it is a great location!

Even better, we’ve got a great lineup of content that covers today’s technologies (like WPF and ASP.NET) and emerging technologies like JavaScript single page applications (SPAs), TypeScript, mobile development for Android, iOS, and Windows.

I hope to see you there!

Update: I forgot to mention that you can save $400 on registration by clicking the link in this post!

Monday, April 07, 2014 1:29:15 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [1]  | 
 Thursday, April 03, 2014

Microsoft has substantially improved the story around side loading of Windows 8 WinRT (Windows Runtime or Windows Store) apps for the enterprise and business environments.

I’ve blogged pretty extensively in the past about the costs of the two steps necessary to side load apps:

  1. Unlock your devices for side loading
  2. Actually side load (install) your various business apps

Microsoft has now radically changed the cost of step 1. This blog post from Microsoft contains the following statement:

Enterprise Sideloading– In May, we will grant Enterprise Sideloading rights to organizations in certain Volume License programs, regardless of what product they purchase, at no additional cost. Other customers who want to deploy custom line-of-business Windows 8.1 apps can purchase Enterprise Sideloading rights for an unlimited number of devices through Volume Licensing at approximately $100. For additional information on sideloading licensing, review the Windows Volume Licensing Guide.

Basically what this means is the following (as I understand it):

For developers/testers things are unchanged – you still use a free dev unlock key to install apps for development and testing.

For organizations with an Enterprise Agreement (EA) you’ll be able to get a side loading unlock key that you can use on all your Windows 8 Pro and Windows 8 Enterprise devices, regardless of whether they are domain joined or not. As before, you can also get ‘companion device’ keys to unlock Windows RT devices if you have a Windows 8 Enterprise device too.

For smaller organizations that don’t have an EA you might have (or can get) one of a number of ‘Open’ or ‘Select’ license agreements with Microsoft. Once you have one of these you can buy a side loading key for around $100 that will unlock any number of Windows 8 Pro or Windows 8 Enterprise devices.

When compared to the old model of buying keys for $30/device this is a major change in the right direction. For a maximum of around $100 virtually every organization (small to huge) can get a side loading unlock key for all their devices.

Now this still doesn’t address the need to actually install your apps onto your devices.

Microsoft offers InTune, which is a full MDM (mobile device management) product. If you find the value proposition of an MDM compelling then InTune is probably the right answer for you – though there’s a per device/per month cost (ranging from $6/device/month to $11/device/month) so you don’t get MDM for free of course.

Screenshot (5)I’ve been coordinating an open source project called OrgPortal that you can use to (relatively) easily create an app store for your organization.

There’s another open source project called CompanyStore that is very similar.

Alternately you can have your users manually run a PowerShell to install and update each app manually over time.

I think Microsoft has taken a substantial step in the right direction with the changes to the cost and availability of side loading keys. Couple this with the increasing maturity of projects like OrgPortal and CompanyStore and I think we’re getting to the point where WinRT is something to consider for business app development.

Thursday, April 03, 2014 12:43:38 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [6]  | 
 Tuesday, April 01, 2014

On my flight to SF for #bldwin this week I sat between two random people. All three of us were normal business travelers, all spending our time on the flight doing a mix of entertainment (videos, reading, social games) and work (spreadsheets, email, editing documents).

(yes, I know it is rude to look at what your fellow travelers have on their screens, but in the cramped quarters on an airplane how can you NOT see???)

To my left was a man, perhaps in his late 30’s. He had an iPad that he used as a tablet to do some reading and watch some video. He also did some work on the iPad, for which he dug out a clamshell case that converted the iPad into a laptop with a keyboard. One device plus a laptop-sized keyboard peripheral.

To my right was a woman, maybe in her early 40’s. She had an iPad that she used to play some social games and do some reading. For most of the flight she dug out a traditional big Win7 laptop so she could use Outlook, Word, and Excel. Two devices consuming about the same physical area as the guy with his iPad and clamshell, though I bet he carried less weight than she did.

I’m sure it’ll be no surprise to anyone reading this blog that I was using my Surface Pro 2 the whole flight. And I too did some reading, some email, did a little social gaming, browsed the web, and did some work in Word. I am quite confident that my single device consumed less physical area than their devices in my carry-on bag. It might be that the weight of my device was comparable to the guy with his iPad/clamshell (the Surface weights more than the iPad, but perhaps less than the clamshell). Certainly we both were carrying less weight than the woman with an iPad and old-fashioned laptop.

For a long time I pleaded with Microsoft to give us (or at least me) a device that gave me the power of a laptop in the form of a tablet. It took them long enough, but I want to be clear that I think the Surface Pro 2 is exactly what I asked for way back when.

Enough battery life I don’t think about it. Light enough to carry (though not as light as the smaller iPads). Powerful enough to run Visual Studio and 1-2 Hyper-V VMs so I can do my work. Compact even with the backlit type keyboard.

The only thing I really wish is that there was a WinRT version of Office. The fact that existing Office drops me into the legacy desktop, and more importantly doesn’t allow me to use the Share charm or the integrated-into-WinRT DropBox and Box support is frustrating.

I’m fine with being in the legacy desktop for Visual Studio, because then I’m almost certainly connected to a bigger monitor, keyboard, and mouse setup.

(for those who are curious, here’s a good example of a nice USB-based docking station for Windows tablets; dual monitor output, keyboard/mouse, and more USB ports for other peripherals; all by plugging in one USB cable to your device)

But I frequently use Office without being docked, and it would be much nicer to use a WinRT version in that scenario.

Tuesday, April 01, 2014 4:57:13 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Thursday, March 20, 2014

The MyVote app is a complete modern app built by Magenic as a demo for Modern Apps Live! conferences.Logo

MyVote from Modern Apps Live! LV 2014 is available on the MyVote releases page on GitHub.

The MyVote app is available for install

Although we’ve made the code available on GitHub, getting the app compiled and running is non-trivial of course, because this is a complete modern app with clients for

  • WinRT
  • iOS
  • Android with Xamarin
  • HTML 5/JavaScript single page app

and services that use

  • Windows Azure SQL Server
  • Windows Azure Mobile Services
  • Windows Azure Web Sites
  • Windows Azure Cloud Services

In GitHub the README.md file contains a list of places in the code where you’ll need to insert your own encryption and service keys. Beyond that you are largely on your own. If you are looking for a more detailed walkthrough of the implementation I can only suggest that you attend Modern Apps Live! in Orlando this fall.

Thursday, March 20, 2014 10:23:53 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Monday, March 17, 2014

I just created a release of CSLA 4 version 4.5.580-Beta with preliminary support for iOS via the Xamarin tools.

You can get it via nuget (easiest), or from the release page on GitHub.

This is an exciting pre-release because it now means you can reuse the same business logic code across all modern app client platforms and the desktop and the cloud. This is a “who’s who” list of supported platforms:

  • iOS
    • iPad
    • iPhone
  • Android
    • Phones
    • Tablets
  • Windows
    • WinRT (Windows 8)
    • WPF
    • Silverlight
    • Windows Forms
  • Windows Phone
  • Cloud and servers
    • Windows Azure
    • Windows Server
    • ASP.NET (MVC and Web Forms)
    • WCF
    • Web API
  • Linux
  • OS X

CSLA .NET allows you to easily create reusable business logic (authorization, validation, calculations, etc.) and to share a common app server with simple network configuration. I don’t know of any other open source C# framework that makes it possible for you to reuse the exact same business logic across all these different platforms.

Because the iOS support is new we are asking for your help. If you have the Xamarin tools for iOS please help us out by building some business code using CSLA and let us know if you find any issues (either on the forum at http://forums.lhotka.net or via the CSLA GitHub page.

Monday, March 17, 2014 10:42:21 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [2]  | 
 Thursday, March 06, 2014

I few weeks ago I posted about my new Nokia Lumia 1520 “phablet”: Lumia 1520- First thoughts

Tomorrow my new Lumia 1020 will replace the 1520.

Why?

Because the 1520 is just too big. Otherwise I really like it in a lot of ways – high def screen, easy to read content, very fast, slot for MicroSD card.

But it doesn’t fit nicely into my pockets, and it is very awkward to hold up to my ear when talking (yes, I often use BlueTooth, but not always).

Mostly though, even with my big hands (I’m 2m tall after all) I can’t use it one-handed. <insert texting while driving jokes here> In reality this has nothing to do with driving as I have a good hands-free setup in my truck. This has to do with normal everyday use of the phone, and the reality that it never works one-handed, even for basic things like pulling it out of my pocket to answer a call.

I have high hopes for the 1020. It is the size of my 920, which I loved, and has a much better camera. I don’t believe it has a MicroSD slot though, which is the only real negative I can see.

Thursday, March 06, 2014 1:56:47 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [2]  | 
 Sunday, March 02, 2014

In my last post my focus was on listing the numerous WinRT apps I use on a regular basis – many of which, if I couldn’t get them on Win8 would drive me to carry an iPad. I’m personally not just a software developer, I’m a user of computing as well.

One line, a sensation-maker, in my post was that I think Windows developers who aren’t using WinRT apps are doing their ultimate users a disservice. This doesn’t apply to web developers or other people who aren’t developing actual Windows applications, but it surely applies to people living today in the legacy WPF, SL, and Windows Forms technologies.

The thing is, I made no effort to describe why I believe that to be true, because the focus of that post was to list useful apps.

So what did I mean by that comment?

Here’s the thing. As someone who does use a lot of WinRT apps I can say that a lot of them suck. I’ve divided the suckage into three categories.

Some apps are obviously built by pure mobile developers, who have no comprehension of keyboard/mouse or productivity on anything but a tablet. So their apps are sometimes pretty good on a tablet, but are virtually useless on a laptop or desktop. Because I use all three types of device with pretty much every app, I find that these mobile-only or mobile-first apps just suck. I might use them on my tablet, but they are always pretty secondary to more complete apps because they aren’t universal.

Other apps are obviously built by pure desktop developers, who have no comprehension of touch. These apps often work pretty well with keyboard/mouse, but are awkward to use with touch. Technically they work on my tablet, but they aren’t fun or efficient, and so I consider them to suck.

The third group of sucky apps are built by people with no WinRT user experience. These apps might, in theory, work pretty well with touch and/or keyboard and mouse, but they miss the point of all the cool WinRT features. They don’t use AppBars or the Share charm or Settings or Search correctly. They don’t use dialogs correctly, they don’t use navigation correctly. I’m sure the authors of these apps often think they are being clever by inventing their own techniques, but as a user their apps just suck because they don’t work right.

In short, sucky apps come from three sources:

  1. Mobile developers who don’t consider laptop/desktop device scenarios
  2. Desktop developers who don’t consider tablet scenarios
  3. Developers who are ignorant about the WinRT environment and don’t understand how it works

So as a developer, if you plan to ever build WinRT apps and you aren’t using WinRT then you are pretty much guaranteed to fall into category 3, and very possibly 1 and/or 2.

Hence, if you are a smart client developer – unless you are planning to retire on WPF (which is fine) or switch to the iPad/Android world, you are doing yourself and your users a disservice if you aren’t actually using and learning “the WinRT way”.

Update:

Jason Bock mentioned something to me that got me thinking. I base all of this on one core assumption:

Win32 has no long-term future as a mainstream technology.

To be clear, I am 100% sure Win32 will be around for the next 20-30 years, just like mainframes and minicomputers are still with us – usually hidden behind the scenes or in a terminal window, but still here. I don’t think anyone would call them “mainstream” though. Nobody ever mentions IBM in the same breath as Microsoft/Apple/Google/Samsung.

Now if you think Microsoft will back off from WinRT, and by some miracle Apple and Google and Samsung will just completely fail to adapt iOS, Android, or ChromeOS to the enterprise, then you can imagine yourself still doing Win32 as a mainstream technology in 5-7 years.

I personally can’t imagine that happening. I think 5 years from now Win32 will be pretty much what we think of as VB6 today. Something that runs a ton of software, and something that people still do, but not something that would be considered mainstream or vibrant.

For my part, I think that if Microsoft does back off WinRT to try and rejuvenate Win32 … well … that’ll be the opening one or more competitors needs to swoop in and take the enterprise desktop.

Sunday, March 02, 2014 10:55:12 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [10]  | 
 Wednesday, February 26, 2014

New Skitch I thought I’d post a list of the top Windows 8 WinRT (windows store) apps that I use all the time.

I know a lot of people who are running Win8 and treating it like Win7 – never leaving the legacy Desktop if at all possible. I think those people are doing themselves a disservice, and in the long run if they are developers then they are doing their users a disservice. I say this because I view the Desktop today in the same light I viewed green screen terminals in the early 1990s – a necessary evil that will ultimately fade into the mists of time (except for those poor users who will forever be stuck using legacy apps).

So these are the apps that, if they didn’t run on Win8, would probably drive me to get an iPad or Android tablet (except that because they are on Win8 I can use them on my tablet AND on my desktop, which is extremely nice). For the most part these are pinned on my start screen on my tablet and desktop. I’ve bolded the WinRT apps and left the legacy Desktop apps unbolded so it is clear just how much I use WinRT.

Productivity:

  • Mail, Calendar, People – the standard apps/hubs that come with Win8 – they started out bad, but have become quite good
  • Outlook (desktop) – I only use this to schedule Lync meetings anymore, but can’t live without it until there’s an alternative way to schedule a Lync meeting
  • Yahoo Mail – I use yahoo as my spam dump, but occasionally scan through to see if anything real creeps into that mail box
  • OneNote – they’ve really made this app nice for keyboard/mouse and touch and pen users – indispensible!
  • Skitch Touch – nice, easy to use graphic editor – I use it to crop/annotate quick screen grabs for the most part
  • Healthvault – keep track of my blood pressure and weight, important given my recent health issues, and it works on WP8 too
  • qool – a very simple to-do tracker, which works for me because it is low-friction, but I wish it worked on WP8 too
  • MyTrips – I travel a lot and rely on Tripit.com to keep me sane; MyTrips is on Win8 and WP8 and is better than the “official” Tripit app
  • Office (desktop) – I so wish there was a WinRT version of Office, but in the meantime I can’t live without the legacy Desktop version
  • Live Writer (desktop) – still the best way I know to author blog posts

News, weather, etc:

  • Nextgen Reader – RSS reader that also runs (and syncs) to my WP8 phone
  • Bing News, Bing Weather – nice apps, consistent on WP8 (finally), and keep me up to date with the world
  • MyRadar – consistent with WP8 and the fastest way to get weather radar on any device – I love this app!
  • Reading List – keeps a list of articles/posts/URLs that I want to review or use later
  • Flipboard – I use this only on my tablet because it is only fun with touch, but it presents a visually pleasing way to browse facebook/twitter/other web info

Finance:

  • Bing Finance – keep track of the market and business news
  • Mint – keep track of family finances – mostly just trying it out (and it is really nice), because I’m already a Quicken user
  • Quicken (desktop) – keep track of family and business finances, but I wish there was a WinRT version more like Mint – my problem is that Mint can’t do small business stuff, so I need Quicken

Social:

  • Lync (desktop) – I mostly use the Desktop version, though the WinRT app is slowly catching up and I do look forward to being able to use it
  • Twitter – the official twitter app, I’m sure there are better ones, but I’m not a heavy twitter user so this is fine
  • Skype – I use the WinRT app, but sometimes I also use the Desktop app – but the WinRT app is catching up fast, which makes me happy
  • Facebook – sure I can get there via the web, but I do like the app
  • Yammer – I mostly use the web because the yammer app is pretty poor, but it works as a share target; the WP8 app is better
  • Reddit by samrad – I’m not a big reddit user, but this is a nicely designed app that is fun to use
  • IE11 – for LinkedIn, because they don’t have an app yet; and for yammer because the WinRT yammer app is too limited

Media:

  • Xbox Music – I have a subscription to the service, and love the access to so much music on my tablet/PC/phone
  • Xbox Video – I’ve purchased a few movies to watch on the airplane on my Surface, and we also watch them on the TV through the Xbox
  • Netflix – we cut the cable a couple years ago and rely on Netflix/Hulu/Amazon for almost all media, so this app is indispensible
  • Hulu Plus – see my notes on Netflix – indispensible
  • IE11 – I wish, oh do I wish, that Amazon had streaming video app, but as it is I’m stuck using IE to watch Amazon video
  • MetroTube – very nice youtube app; another is MegaTube, but personally I prefer MetroTube
  • Zune (desktop) – my Xbox Music subscription provides me with 10 free songs each month, and the old Zune app is the only way to use those 10 credits to ‘purchase’ the tracks
  • Comics – the Comixology app is really nice; I know, as an adult I shouldn’t read comics, but I’m an uber-geek so I do, and this app is a really nice way to read them
  • Kindle – I mostly use a real Kindle because I don’t like reading on a glossy screen, but if I’m caught without my Kindle I’ll read on my Surface or phone
  • VEVO – I remember the days when MTV used to be about music videos, and VEVO is much like MTV from 1985 – happiness!

Utilities:

  • Clipboard – this is an app that allows you to Share from any app into the Windows clipboard, and I use it constantly – couldn’t live without it
  • File Manager HD – the best file manager app I’ve found so far – local and remote file access, quite nice
  • OneDrive/SkyDrive – slightly faster than File Manager HD for OneDrive access, but otherwise a duplicate
  • Dropbox – gives access to shared folders and other advanced features not in File Manager HD
  • Box – really a duplicate of File Manager HD
  • Remote Desktop – the WinRT Microsoft RDP client is nice, and I use it daily
  • TeamViewer – I sometimes use TeamViewer to connect to my desktop when I’m on the road; not as fast/smooth as RDP, but it gets through firewalls and NAT routers better

Photos:

  • Photos – I do use this app, but it was far better in Win8 than it is in 8.1 – they really crippled it…
  • Live Photo Gallery (desktop) – The only way to get at the thousands of photos on my server, and remains far, far more powerful than the built-in Photos app

Gaming:

  • Steam (desktop) – so I can get at all the games I’ve purchased via Steam
  • Origin (desktop) – so I can play Battlefield 4 and (soon) TitanFall
  • Wordament – my favorite casual game
  • Halo Spartan Assault – so nicely done, and fun to play

Shopping:

  • Amazon – of course! I do more shopping on Amazon than pretty much anywhere else
  • Zappos.com – I’m not a small man, and zappos always has shoes that fit, and their service is excellent
  • NewEgg – I go back and forth between their app and their web site, but the app is pretty decent

Development:

  • Visual Studio (desktop) – of course
  • Blend (desktop) – of course
  • Xamarin Tools (desktop) – build iOS and Android apps with C#, what more could you want???
  • GitHub for Windows (desktop) – nice way to interact with github and Visual Studio Online repositories
  • TortoiseGit (desktop) – I used TortoiseCvs, then TortoiseSvn, so it is natural that I’d use TortoiseGit more than any other git client
  • Windows 8 Dev Icons – provides useful icons with code snippets to access them
  • Xaml Candy – provides useful code snippets for common XAML elements
  • Samples Browser – browse Microsoft samples
  • Code Writer – a nice WinRT text/code editor for numerous file formats
  • Project Spark – so much fun to build WinRT and Xbox games
  • Project Siena – has the potential to be the “VB” of WinRT if they continue to evolve this tool – there’s no faster way to build simple WinRT business apps
  • Chrome (desktop) – for when IE11 doesn’t meet my needs
Windows 8 | WinRT | WP8
Wednesday, February 26, 2014 11:28:46 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
On this page....
Search
Archives
Feed your aggregator (RSS 2.0)
July, 2014 (2)
June, 2014 (4)
May, 2014 (2)
April, 2014 (6)
March, 2014 (4)
February, 2014 (4)
January, 2014 (2)
December, 2013 (3)
October, 2013 (3)
August, 2013 (5)
July, 2013 (2)
May, 2013 (3)
April, 2013 (2)
March, 2013 (3)
February, 2013 (7)
January, 2013 (4)
December, 2012 (3)
November, 2012 (3)
October, 2012 (7)
September, 2012 (1)
August, 2012 (4)
July, 2012 (3)
June, 2012 (5)
May, 2012 (4)
April, 2012 (6)
March, 2012 (10)
February, 2012 (2)
January, 2012 (2)
December, 2011 (4)
November, 2011 (6)
October, 2011 (14)
September, 2011 (5)
August, 2011 (3)
June, 2011 (2)
May, 2011 (1)
April, 2011 (3)
March, 2011 (6)
February, 2011 (3)
January, 2011 (6)
December, 2010 (3)
November, 2010 (8)
October, 2010 (6)
September, 2010 (6)
August, 2010 (7)
July, 2010 (8)
June, 2010 (6)
May, 2010 (8)
April, 2010 (13)
March, 2010 (7)
February, 2010 (5)
January, 2010 (9)
December, 2009 (6)
November, 2009 (8)
October, 2009 (11)
September, 2009 (5)
August, 2009 (5)
July, 2009 (10)
June, 2009 (5)
May, 2009 (7)
April, 2009 (7)
March, 2009 (11)
February, 2009 (6)
January, 2009 (9)
December, 2008 (5)
November, 2008 (4)
October, 2008 (7)
September, 2008 (8)
August, 2008 (11)
July, 2008 (11)
June, 2008 (10)
May, 2008 (6)
April, 2008 (8)
March, 2008 (9)
February, 2008 (6)
January, 2008 (6)
December, 2007 (6)
November, 2007 (9)
October, 2007 (7)
September, 2007 (5)
August, 2007 (8)
July, 2007 (6)
June, 2007 (8)
May, 2007 (7)
April, 2007 (9)
March, 2007 (8)
February, 2007 (5)
January, 2007 (9)
December, 2006 (4)
November, 2006 (3)
October, 2006 (4)
September, 2006 (9)
August, 2006 (4)
July, 2006 (9)
June, 2006 (4)
May, 2006 (10)
April, 2006 (4)
March, 2006 (11)
February, 2006 (3)
January, 2006 (13)
December, 2005 (6)
November, 2005 (7)
October, 2005 (4)
September, 2005 (9)
August, 2005 (6)
July, 2005 (7)
June, 2005 (5)
May, 2005 (4)
April, 2005 (7)
March, 2005 (16)
February, 2005 (17)
January, 2005 (17)
December, 2004 (13)
November, 2004 (7)
October, 2004 (14)
September, 2004 (11)
August, 2004 (7)
July, 2004 (3)
June, 2004 (6)
May, 2004 (3)
April, 2004 (2)
March, 2004 (1)
February, 2004 (5)
Categories
About

Powered by: newtelligence dasBlog 2.0.7226.0

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2014, Marimer LLC

Send mail to the author(s) E-mail



Sign In