I still find this a little odd because I have a friend who is a bit more in the 
Unix world than I am, though I want to eventually excel at both operating 
systems.  My friend here, he told me the reasoning for my college's lack of 
interest for the .NET platform, saying that it is a cross platform issue for 
them; they think that what can be taught in .NET can just as easily be taught 
in Java, so that's what they use.  This bothers me to know end, for I am 
getting the feeling that their attitude further expresses and spreads the 
belief that Microsoft and cross platform and open source development do not go 
together.  But speaking of Open source and cross platform and cross device 
development, has anyone ever been concerned with Microsoft's restriction of 
modern interface apps to their store?  Does anybody ever worry about where our 
freedom has gone?  In other words, my goal is to become an open source 
developer (not developing for money, not doing any of that.)  Instead, I want 
to develop and show the world what I can do led by intrinsic rewards.  My 
career interest is in administration, not development.  That's not to say that 
I might not sell something in the future, but what is in the new model of 
development for those in the world of open source?  I mean, if applications and 
projects have to be inspected by Microsoft to even be considered for inclusion 
in the store, how in the world is that innovation?  And with this new model, I 
am struggling with the layout of my first project; should the front end be 
developed as a modern interface application or as a regular desktop 
application?  If you want my opinion, then I'll just say that Microsoft is 
pretty shallow when they say that their store model is to ward off malware and 
the bad guys.  Look at it, and then look at two other things; the speculation 
that BizTalk Server 2013 is the last of the on-premise versions of Microsoft's 
integration server, and then the limits that developers are placed under when 
developing with new and supposedly innovative programming models (namely modern 
interface applications.  What do you see?  Innovation and cross platform 
victory, or do you see what I see, consumer's freedom being taken away?

From: ozdotnet-boun...@ozdotnet.com [mailto:ozdotnet-boun...@ozdotnet.com] On 
Behalf Of Greg Low (GregLow.com)
Sent: Friday, January 04, 2013 6:37 PM
To: 'ozDotNet'
Subject: RE: More on cross-platform development

Well said David.

One thing I'd like to add to the conversation though is that I see people all 
the time that consider their mobile interfaces as a "low functionality add-on" 
to the "real" application. While I've dealt with mobile apps that way in the 
past, I'm increasingly changing my view.

We're moving into a world where the majority of Internet users will have the 
primary Internet experience via a mobile device. It's not some add-on access to 
their "real" usage like it has been for us in the past. I think we ignore that 
at our peril. We need to be thinking about how to make that experience be as 
rich as possible.

Regards,

Greg

Dr Greg Low

1300SQLSQL (1300 775 775) office | +61 419201410 mobile│ +61 3 8676 4913 fax
SQL Down Under | Web: www.sqldownunder.com<http://www.sqldownunder.com/>

From: ozdotnet-boun...@ozdotnet.com<mailto:ozdotnet-boun...@ozdotnet.com> 
[mailto:ozdotnet-boun...@ozdotnet.com] On Behalf Of David Connors
Sent: Saturday, 5 January 2013 9:35 AM
To: ozDotNet
Subject: Re: More on cross-platform development

On Sat, Jan 5, 2013 at 5:02 AM, Katherine Moss 
<katherine.m...@gordon.edu<mailto:katherine.m...@gordon.edu>> wrote:
I suppose it's a question of who is right in terms of the future.  I have read 
so many articles that insult .net to the core, and it kills me.  I'll never 
forget the guy who called the .NET Framework and it's set of development tools 
a McDonalds assembly line!
I like this topic and I remember the post: 
http://blog.expensify.com/2011/03/25/ceo-friday-why-we-dont-hire-net-programmers/
 Best part is where he calls .NET a language. Epic fail. I am surprised how 
much it still irritates me given how long ago it originally came out.

The guy's post is emblematic of software development junk/pop culture. These 
guys are always quick to the draw when it comes to saying MS is this or that 
but rarely have I seen a reasoned bit of introspection in how they conduct 
their own work. His hatred for .NET is based on what? RDP, that MS platforms 
use a \ instead of a / for path delineation (ironically, this is abstracted in 
.NET - not that he'd know).

How about as a comparison: it is 2013 and PHP (which expensify is written in) 
still isn't thread safe - or at least no one can agree on whether it is which 
is even worse. Maybe he should try a few posts about I/O completion, thread 
pooling, getting the best utilisation out of CPU and IO in his server farm, etc 
instead of the merits of the slash over the backslash.

I have worked on a lot of projects on a lot of platforms over the years. I've 
also done a lot of application assurance/security reviews on a lot of other 
people's work in my time and I can say without a shadow of a doubt, work that I 
review from people writing in PHP is, on the whole, horrific.  Go have a look 
at the guts of phpBB some day - he's dead right about Lord of the Flies.

Work I have reviewed from people working in .NET and Java is, on the whole, a 
much higher calibre. It is very rarely that I have seen the same abject lack of 
planning and forethought in .NET/Java projects that I have seen in PHP projects 
from customers.

Sure there is more overhead in getting a .NET project up and running compared 
to putting <?php print "Hello, World!"?> in a text file - but so what? Maybe he 
doesn't know you can whack <%@ Page Language="C#"  %> at the top of an aspx to 
make .NET 'just as productive as PHP'. Saves all that nasty thinking about 
overall systems architecture and long term maintainability.
Anyway, what I mean, is with all of this stuff leading to mobile development, 
does that mean that Microsoft is actually right and that the desktop computer, 
the on-premise server, the .NET Framework, and all the rest, are dying rather 
hard?  I mean, seasoned developers like you guys, and learners like me, how 
much of our time is being wasted in this century?
Don't panic - nothing is dying hard. The future is heterogeneous.

We had a Windows hegemony for a long time because MS was the only company in 
the world that:

  *   had a clue about the benefits of building ecosystems
  *   wrote the only stable and well supported mass scale OS (OS9 was junk, 
Linux is just too hard for end users and no one is going to rebuild kernals to 
make bluetooth work OS/2 tried to solve problems that didn't exist)
  *   had the money to do all of the above
  *   had the money to focus massive resources on really mundane stuff like 
having awesome drivers and rallying OEMs together to support stuff like plug 
and play etc
The stuff that made Windows so successful was really pretty basic. It was/is a 
dependable workhorse with great driver support and you could get it running on 
almost anything. That was always the hard part for competitors that came over 
the years. OS/2 might have been great on a number of technical merits, but it 
was the same old story, crappy hardware support, system resource requirements 
too high, backwards compatibility story was junk (the Windows subsystem on OS/2 
was beyond slow - and if you want to run Windows apps why not just run Windows?)

I reckon the key difference today is that there are a lot of players with - for 
all intents and purposes - bottomless pockets. Linux is starting to get there 
(check out Ubuntu) and when you couple it with cheapo asian fabs then you can 
slap together stuff like a new phone or tablet easily (well, easily if you're a 
corporate with bottomless pockets :). Making some fandagled 3D accelerated 
mobile device with amazing display and so on doesn't require much 
first-principals work these days. The chips are cheap and plenty or reference 
designs available for a relatively cheap price. Hell, you can buy tablets at 
retail for <$300 and they are good.

The economics have shifted such that a company like Google can take a hit on 
the acquisition of Android and subsequent development for the better part of a 
decade just because it has a long range interest in ensuring that Internet 
access doesn't become locked up in closed app-based ecosystems so it can flog 
ads. The fact that Samsung can take over most of the mobile market using the 
technical crumbs that fall off the table from Google's other interests is 
really amazing and in my mind points to the fact that we will never go back to 
an ecosystem with 90+% platform commonality.

Back to your question though, re time wastage, I think you're mistaking 
increased and scenario-specific usage patterns with some sort of shut down in 
existing usage patterns. How we interact with information today is not a 
zero-sum game and every new app or device does not necessarily subtract from 
somewhere else in the market.  I have more devices today then I did 5 years ago 
and that means more opportunity for someone like you to sell me something.

That aside, I love my phone and tablet but if I am going to write a mail like 
this it is going to be on a desktop computer and the smaller devices are always 
going to be more scenario-specific. Maybe that will change in time, but I doubt 
it.

At the end of the day .NET is a great environment for writing a variety of 
apps. On the server side, there is a mind-boggling amount of lot of heavy 
lifting Microsoft does around threading and concurrency that plumbs all the way 
down to how device drivers schedule work and behave when dealing with network 
and disk I/O. Old mate the CEO above wouldn't know this because his world view 
is informed by the pervasive pop/junk culture of taking dependencies on 
something because it is the 'it' technology of today.

Far from wasting your time, you can use this as a competitive advantage to 
build better performing apps that are more maintainable.  With third-party 
options like Xamarin, off the top of my head, I can't think of a better bet to 
make if you needed to choose a development environment for the heterogeneous 
world we live in today.

--
David Connors
da...@connors.com<mailto:da...@connors.com> | M +61 417 189 363
Download my v-card: https://www.codify.com/cards/davidconnors
Follow me on Twitter: https://www.twitter.com/davidconnors
Connect with me on LinkedIn: http://au.linkedin.com/in/davidjohnconnors

Reply via email to