[ale] Moral or Ethical to think of being a .NET consultant for a Linux lover

Michael B. Trausch mbt at naunetcorp.com
Thu Oct 10 10:56:19 EDT 2013


On 10/10/2013 09:37 AM, Narahari 'n' Savitha wrote:
> But I am trying to learn .NET and become a consultant in that field.
>  This way between Java and .NET and may be .php, I may have myself
> unemployment insured.
>
> The question that is haunting me is, Linux Lover and .NET, is it
> Morally right ?
>
> Is it ethically incorrect ?

I will write this /one/ post on the topic on the list.  If you have any
questions for me beyond that, we can take the chat off-list.  I won't
participate in the ensuing flamewar.

*No, the use of C# or the CLR is not an unethical act**.*  The
specification is freely available, and there are several free
implementations at this point.  Microsoft has started open-sourcing
(under friendly licenses) components of their implementation of the CLR,
as well.  Of course, you don't have to use those to work; portability
between the free software implementations and the reference
implementation is far more complete than Java implementations are, and
there is zero reason to not use the free software model.  Whether it is
deployed on Windows or not isn't (terribly) much your concern, aside
from the fact that you can use some more sane POSIX APIs when you're not
on Windows, of course.  :-)

Now for the tangental soapbox.  :-)

I think that the ideal cross-platform environment is... NOT Java, and
NOT the CLR; NOT Python, and NOT a script-based runtime environment.  It
actually looks to me that GNUstep is about the closest we get to
ideal---and I say that having worked in Java, C#, C+GObject, straight C,
and PHP, among others.  It works /well/, it is /native code/, it
performs /awesomely/, the programming language is really easy to work
with and the APIs are both elegant and cross-platform---and it can work
on nearly any POSIX system and Windows itself.  Anything that you need
handled for you from the underlying system that isn't covered by the
GNUstep runtime is easily accessible via libraries that will abstract it
away for you; e.g., apr or similar.  And there are two great, free,
open-source implementations of the compiler (GCC and clang), and there
are multiple free implementations of the runtime specification that
GNUstep is based on.

There are other means to achieve the same level of portabiity (using
C+GObject is one of them, or the Apache Portable Runtime, scripting
environments, whatever)... but the mechanics and dependencies of things
built on top of e.g., GNUstep are /*so much lower*/ than for other
"managed" environments that it's well worth checking out, IMHO.

    --- Mike

-- 
Naunet Corporation Logo 	Michael B. Trausch

President, *Naunet Corporation*
? (678) 287-0693 x130 or (855) NAUNET-1 x130
FAX: (678) 783-7843

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.ale.org/pipermail/ale/attachments/20131010/a2b6ad3d/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cbbdicji.png
Type: image/png
Size: 1701 bytes
Desc: not available
URL: <http://mail.ale.org/pipermail/ale/attachments/20131010/a2b6ad3d/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 901 bytes
Desc: OpenPGP digital signature
URL: <http://mail.ale.org/pipermail/ale/attachments/20131010/a2b6ad3d/attachment.sig>


More information about the Ale mailing list