When I started with MonoDroid and MonoTouch (today Xamarin.Android and Xamarin.iOS) one of the first sentences that drew my attention were "it is Silverlight profile" and since then all ports of the libraries I needed was simply done in this way:
- create Silverlight dll
- copy code from original projec/dll to new one
- use project linker or manual adding to add files
- patch the differences
Silverlight was IMHO excellent tech. The problem is that software went from desktop to server (90's) and to mobile. Normally it would be from smaller, less powerful to stronger more powerful so mobile to desktop to server and now early adopter companies like Microsoft have to breakdown their tech to pieces to enable "start small and grow (pay) as you need"
I like to explain everything through physics and human mentality is like pendulum. at the beginning everything was [generated] on the server, then we got Flash and great performance in graphics, because it was done locally. Silverlight followed. Then pendulum went other way and everybody said few megs download of flash or silverlight is too much. And those two technologies were doomed...
OK. Now somebody comes and tells: Standards! HTML, CSS, JS. HTML is not standardized (yet).
Though I prefer standards, the adoption is something that dictates standardization and adoption (dog is biting his tail). I was c++ dev for years and this language was pushed to margins/background because standardization was too slow and while committee was sitting and eating (I don't want to use other verbs). At that point I realized that algorithm no matter how good it is will not be sold by console textual output, but bu UI. Sometimes Form sells-supersedes Function and this is when I started with c# and .net.
Bottom line - Silverlight was good tech and god starting point for mobile and "even smaller than mobile" = IoT tech. Imagine nuget in silverlight which downloads only mine dlls and if not present in cache downloads rest of the dlls from feeds.... I mean this could be standardized easily. And even if not standardized then first accepted (by us) and then the usage/acceptance tidal wave might trigger standardization.
Today I would like to see Silverlight as an option to [not only browser] client side tech (xaml instead of ncurses??? for embedded IoT devices, pushing vectorized XAML through ssh or RDP). I see - over the network partial screen refreshes through XAML injection on IoT devices to reduce network traffic. Then XAML as JAML to reduce overload even more....
The I'd like too see XAML differences between Microsoft part of XAML between WPF and Silverlight cleaned up, so we get true cross platform.
And in the next step[s] to think about XAML4ALL (merging with Xamarin.Forms), xwt etc...
enough I got carried away.