Category Archives: SE Commentary

Open Source Dot-Net is 4 years old and going strong!

It seems like just a couple of years ago that Microsoft, the evil empire of the 1990s and early 200s, embraced open source and put the .NET ecosystem into the open source.  It was a shocking event which was meant with some pessimism by a community that had been bitten far too many times by the old mantra “embrace, extend, extinguish” from Microsoft (not that they were unique in this mantra).  It’s shocking that we are four years into this process but more shockingly is how well the .NET community is functioning.  This is not an “in the open source” which is code for “you can see the code but we are the developers.”  Microsoft, against all my expectations, has successfully built an open source community around open source .NET.  Take a look at the pull request statistics.  There is a substantial community element in most of the pieces (Chart and to read more it check out Matt Warren’s blog post on this):

If you look at the time series data he Warren has created it looks even more promising.  That’s not to say all is well for everyone in the .NET open source world.

As a person that tried to get back into it, to the point of polishing off SharpenNG to make it work in a post Java 7 world, I have to say that even with the improvements over the last few years the non-Windows platforms are still not first class citizens.  Development for .NET sings under Visual Studio, which of course only runs on Windows.  The old Xamarin Studio rebranded as Visual Studio Mac does provide a decent experience but still nothing in comparison.  People on Linux on the other hand are out in the cold.  Yes there are the command line tools and Visual Studio Code.  That works a lot better than I expected but you can feel how clunky that development is in comparison, and MonoDevelop seems to get worse and worse as time goes on.  When I think about dabbling with .NET again I think about trying Rider by JetBrains the next time.  Perhaps they’ve cracked the nut.  One thing I refuse to do is jump to Windows.

Related to all of that is the other elephant in the room: Microsoft doesn’t support UI development nor has any plans to on Linux.  There are open source alternatives like Avalonia and Eto.NET.  I know that Michael Dominic’s development shop was able to turn out a live geospatial cross platform app, Gryphon, using Avalonia so there can be some serious work done with this.  Maybe because of that official blessing from Microsoft isn’t needed, especially if Rider combined with the above fits the bill.  Maybe that’s the community evolving beyond Microsoft too?  Still, at this stage there is a second (or in the case of Linux third) class citizenship feel about it.  It’s orders of magnitude further along than I thought they would get though, which is a promising sign.

Milestone: Higher Responses on Diaspora instead of Facebook

The Cambridge Analytical debacle from earlier this year and the subsquent #deletefacebook storm brought me into the alternative social media platform Diaspora.  At the time, as I wrote here, I had hoped to leave the walled gardens forever.  Initially I did just that but practicalities changed that forced isolation quite a bit.  In some cases, like DDG, I’m still 99% using the open alternative.  In others, like YouTube, I’m mostly using the old system because I just can’t get what I need out of the alternative system yet (although I still try more and more every week).  However for much of it, especially on the social media side, it’s more of a mix.  I’m on Diaspora as much as I’m on Facebook.  I’m on Mastodon more than I’m on Twitter, but that was always a small platform for me versus my usage of Facebook.  The best way to think of this blend for me is that I try to make Diaspora and Mastodon my primary platform and Facebook my secondary one, with Twitter being a distant third.

What that means practically is that I’m pretty much logged into Diaspora, Mastodon, and Facebook continuously throughout the day.  The first places I’m posting to are Diaspora and Mastodon.  The first places I’m checking posts is Diaspora and Mastodon.  Most of the new activity from me is on Diaspora and Mastodon with manual cross posting, thanks again Facebook for screwing up your API permanently to prevent external posting,  when I want to share the same thing on Facebook as well.  Because I have  just over 1000 friends on Facebook and almost all of them are people I’ve interacted with in real life (most mere acquaintances or met once at a social function or something) there is just a larger volume of relevant and more personally resonating posts from others I interact with.  So if one were to look at my activity feeds and notifications on a given morning when I start the day you’d see tons of activity on Facebook and a little activity on Diaspora and Mastodon.  Today was different.

Today the equation was reversed.  Today I had more interactions to wade through on Diaspora.  I had more relevant interactions to wade through at that.  I had more notifications to wade through.  I even got comparable engagement on my cross-posted material from late last night on all three systems.  That’s the first time that’s happened since I went back to having a foot in both worlds!

Is it that I crossed a tipping point in people I’m connected to on these alternative social media systems?  Is it that the influx of Google+ users have caused a spike in engagement across the systems in question?  I don’t know the answer to why, and this will probably stay a noteworthy exception rather than a rule moving forward.  However it can’t be a bad sign, except in one way.  In the span of how long I’ve been writing this article, which is a free association lasting 15 minutes, I’ve already received almost ten notifications on Diaspora.  I know that the notification controls are not as fine grained on Diaspora as they are on Facebook.  It’d be a great problem to have to need to tackle that sort of feature request in the near future :).

Adjusting to not-as-social social media alternatives

I’m now three weeks into picking up and using non-walled garden social media systems instead of traditional ones, specifically Diaspora over Facebook and Twitter.  It has mostly been a good experience despite some major disagreement on some of their decisions on user experience and other rough edges that I hope to help fix soon as a contributor.  But the thing that puts social media apart from blogging or other static production ecosystems is the concept of sharing and interacting with other users.  By the nature of the the fact these massive digital halls are still pretty empty I’m just not getting my fill of that.

Continue reading Adjusting to not-as-social social media alternatives

Kotlin Compactness Example from Swift Blog Article

This pro-Swift article came across my RSS feed recently and while I don’t want to do a direct comparison of Swift versus Kotlin since I haven’t done Swift coding I did think it was interesting to point out similar points of efficiency in their simple example built as a product of the Kotlin language compared to others like Java, the language they picked on too.

Continue reading Kotlin Compactness Example from Swift Blog Article

Completing leaving the user data selling walled gardens

Over the weekend I had made a bunch of progress on migrating away from the walled garden systems.   I’m happy to report substantially more progress.  This will of course be an ongoing process of refinement and testing.  However I’m currently getting substantial amounts of my needs met in enough areas that I’m prepared now to start pulling the plugs on Facebook, the Google Ecosystem, Twitter, and so on.  When I wrote about this over the weekend I had completed my hypothetical replacement of several systems.  I have some updates to those elements as well though.   My current replacement portfolio looks as follows (summary at the very end):

Continue reading Completing leaving the user data selling walled gardens

Progress on leaving the user data selling walled gardens

As I wrote earlier this week after the Cambridge Analytica event came to light my nagging feeling that I needed to get off these Facebook, Google, etc. platforms crossed a threshold.  It was no longer something that I thought I should do but something I was going to actively do.  In one week I’ve made progress in pretty much every dimension (scroll down to the bottom if you just want my list of alternatives).

Continue reading Progress on leaving the user data selling walled gardens

Replacing Facebook/Google Et Al With Open Platforms

I’ve had my moments in the past where Facebook pissed me off and I tried Google+.  That didn’t work out too well so I went back to Facebook after they addressed some of those problems.  I had my moments in the past where I was concerned about the amount of tracking Google does in searches so I went to DuckDuckGo.  That’s still my main search engine but sometimes I need results that come out better in Google so go there.  I also use the Google platform for my e-mail, documents, etc.    The concept of them selling my data in exchange for giving me free service has bothered me to varying degrees over the years, but seeing how greedily it was manipulated recently is really amping that up to me.  The amount of information available to the highest bidder has always been a known quantity to me but these recent stories are just putting that up to eleven.   It’s not just the Cambridge Analytica story.  There is also the story about Facebook and other companies forcing users to turn over their keys, so to speak, so they can look at any and all their personal data as a condition for working for them.  There is the way they exploited that data in difficult discussions.

Continue reading Replacing Facebook/Google Et Al With Open Platforms

iPhone Excitement Isn’t Just For the Fanboys

I almost never wait in huge lines for anything.  I camped out once for football tickets in college.  Once.  I also once waited six hours for an iPhone 4 when it first came out.  It was my first smart phone and I had been putting off getting one way too long.  That was it though.  Yet I know people who have waited in ever decreasing lines for each iteration of the iPhone.  The reduced lines are definitely part of the sizzle wearing off and the iPhone being just another smart phone.  Yet even at 8 pm last night there was a line for iPhones outside our local Apple store.  It didn’t wrap around the mall like in the iPhone 4 days but the end of the first day still having a line for an iPhone 8 was pretty telling to me.

Continue reading iPhone Excitement Isn’t Just For the Fanboys

The Death of Ubuntu Desktop Was Greatly Exaggerated

It was just a few months ago when Ubuntu announced they were killing off Unity, their main desktop option.  Many people were wondering if this was part of their larger pivot towards more profitable ventures and thus they would be leaving the desktop behind.  I too was filled with worry about that potential outcome but calmed myself remembering that I was not locked into one vendor for my OS any longer.  In the intervening months however it has become clear that Ubuntu is not killing of the desktop, far from it.  In fact the strides they are taking with Ubuntu 17.10 and Ubuntu 18.04 look like they are about to put out the strongest desktop offering to date.  Not having to carry the weight of a phone platform, their own desktop environment, etc. has allowed their team to focus on giving positive contributions to Gnome proper.  I’ve had the opportunity to play around with the Ubuntu 17.10 betas and have to say that I don’t think I’d be missing anything from my current Ubuntu experience.  I look forward to upgrading to 18.04 when the time comes and no longer worrying about if one of my desktop baselines was going away.

Applying “Good” Programming To Old BASIC

On one of my classic computing Facebook Groups there was a post quoting Edsger Dijkstra stating, “It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.”  It’s actually part of a much larger document where he condemns pretty much every higher order language of the day, IBM, the cliquish nature of the computing industry, and so on. Despite most of it being the equivalent of a Twitter rant, in fact each line is almost made for tweet sized bites, there are some legitimate gems in there; one relevant to this topic being, “The tools we use have a profound (and devious!) influence on our thinking habits, and, therefore, on our thinking abilities.”  No, I don’t agree with the concept that starting with BASIC, or any other language, permanently breaks someone forever, but the nature of the tools we use driving our thinking means that it can lead to requiring us to unlearn bad habits.  Yet has someone tried to actually write BASIC, as in the BASIC languages of the 60s, 70s, and early 80s, with actual design principles?  Fortunately/unfortunately, I tried a while ago, with some interesting results.

Continue reading Applying “Good” Programming To Old BASIC