---
title: ".NET Newbie"
date: 2003-03-17T14:20:55-05:00
url: https://blog.lmorchard.com/2003/03/17/dot-net-newbie/
author: Les Orchard
---

# .NET Newbie

So, while my time is mine, I've decided that I want to expand my
practical horizons.  And, one of the first things I can think of is to
go lateral and approach something I've looked upon with mild disdain:
Microsoft technologies.  In particular: .NET
<br /><br />
I already understand Unix well enough to do damn near anything -- this
is not to say that there aren't still years worth of things left for
me to learn in that sphere, but I'm not nearly as adept with
Microsoft's offerings.  And, besides the practical concerns with being
flexible enough to take on what work the world offers me, I also have
a hunch that this .NET thing will make me think as differently about
Microsoft as OS X made me change my mind about Apple.
<br /><br />
Maybe.  But it's still a good attitude with which a punk unixhead can
approach the subject, I think.  I'm going to assume that brighter
people than myself have applied themselves to the creation of .NET and
prepare to be surprised.  This attitude has always served me well in
the past when trying something new.  (Take Python, for instance.)
<br /><br />
Okay.  Got a good attitude.  Have installations of <a href="http://www.decafbad.com/twiki/bin/view/Main/WinXP">WinXP</a> and Win2003
preview (which I'm kinda, grudgingly digging so far) running in
Virtual PC on my <span style='background : #FFFFCE;'><a href="http://www.decafbad.com/twiki/bin/edit/Main/PowerBook?topicparent=Main.FilterData"><b>?</b></a><font color="#0000FF">PowerBook</font></span>.  Could even draft a PC at home into
service running an appropriate OS if need be.  Have downloaded the
.NET Framework and installed it on XP and Win2k3.
<br /><br />
Now what?  Were this Java, I'd pop open an emacs window and start
playing.  I'd grab some free app servers and check some things out.
Being on a fixed budget, I don't think I can spring for any packages
like Visual Studio .NET.  And being a unixhead, I'm used to being able
to find dev tools for free.
<br /><br />
Anyway, this absolute newbie is continuing to poke around.
<!--more-->
shortname=dot_net_newbie

<div id="comments" class="comments archived-comments">
            <h3>Archived Comments</h3>
            
        <ul class="comments">
            
        <li class="comment" id="comment-221084431">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://lockney.net"><img src="http://www.gravatar.com/avatar.php?gravatar_id=e413973485c5536801d587baa1a55905&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://lockney.net">Thomas Lockney</a>
                </div>
                <a href="#comment-221084431" class="permalink"><time datetime="2003-03-17T14:38:16">2003-03-17T14:38:16</time></a>
            </div>
            <div class="content">I made a similar choice not long ago. Actually, I just realized that there was a tool I really needed and the only easy way to meet the need quickly was to teach myself a little C# and just get it done.

First, I would check out SharpDevelop from http://www.icsharpcode.net/OpenSource/SD/. It's a free C# editor that's pretty nice and rather feature complete as far as I can tell. Of course, it just uses the underlying tool that come with the .NET Framework SDK (which you'll want to download and install if you haven't already -- this is not the same thing as the Framework itself). 

Next, go check out The Oreilly Network. There's a handful of good articles on there to check out and get a feel for the language, including a series (can't rememeber the title and don't have time to find the link) that compares java and C# -- very useful stuff.

At some point, though, you just have to pick a target (some small tool or whatever) and start coding away. I still haven't fully explored the language, but having programmed in java for many years, I've found that it's a pretty simple language to pick up. And, being that I'm stuck on MS platforms for work, it's nice to be able to code directly to the underlying API.</div>
            
        </li>
    
        <li class="comment" id="comment-221084432">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://www.larkfarm.com"><img src="http://www.gravatar.com/avatar.php?gravatar_id=8dd4f313e5a537b0549659c3a90a4887&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://www.larkfarm.com">Mike Gunderloy</a>
                </div>
                <a href="#comment-221084432" class="permalink"><time datetime="2003-03-17T15:46:50">2003-03-17T15:46:50</time></a>
            </div>
            <div class="content">Just to amplify - everything in .NET can be done with command-line tools; #Develop or VS.NET are just shells on top of that. So just use your own favorite editor. The Framework SDK is at http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true . When you install it, one thing you'll get is a selection of samples & quickstart tutorials that will get you up and running.</div>
            
        </li>
    
        <li class="comment" id="comment-221084433">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href=""><img src="http://www.gravatar.com/avatar.php?gravatar_id=53d4100cc82179a69e211bc5bc69887a&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="">Sean Cull</a>
                </div>
                <a href="#comment-221084433" class="permalink"><time datetime="2003-03-17T16:34:39">2003-03-17T16:34:39</time></a>
            </div>
            <div class="content">Here are some more links you might be interested in:
www.gotdotnet.com
http://www.csharpfriends.com/
http://www.devcity.net/net/
http://www.datagridgirl.com/default.aspx
http://www.dotnetextreme.com/</div>
            
        </li>
    
        <li class="comment" id="comment-221084434">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://www.orbitalworks.com/"><img src="http://www.gravatar.com/avatar.php?gravatar_id=f45f2628a85f238300d7aa9efb7a8f01&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://www.orbitalworks.com/">Kenny Gatdula</a>
                </div>
                <a href="#comment-221084434" class="permalink"><time datetime="2003-03-18T10:27:08">2003-03-18T10:27:08</time></a>
            </div>
            <div class="content">You may want to check out ASP.net. I installed the 'Web Matrix' and tried out some of the samples. Pretty interesting stuff.</div>
            
        </li>
    
        <li class="comment" id="comment-221084435">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://www.burtonini.com/"><img src="http://www.gravatar.com/avatar.php?gravatar_id=e21a399a8a04e4475c6bd084b8ec83be&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://www.burtonini.com/">Ross Burton</a>
                </div>
                <a href="#comment-221084435" class="permalink"><time datetime="2003-03-19T08:52:20">2003-03-19T08:52:20</time></a>
            </div>
            <div class="content">Don't forget Mono, a Linux implementation of the C# spec. IRC clients, media players and documentation browsers have all been written on it, so it does work.
http://www.go-mono.com/</div>
            
        </li>
    
        <li class="comment" id="comment-221084437">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://www.decafbad.com"><img src="http://www.gravatar.com/avatar.php?gravatar_id=2ac2cffd36ada8c734b90e02a1e5c1ac&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://www.decafbad.com">l.m.orchard</a>
                </div>
                <a href="#comment-221084437" class="permalink"><time datetime="2003-03-19T11:19:55">2003-03-19T11:19:55</time></a>
            </div>
            <div class="content">Alas, I've tried installing Mono under OS X a few times without success.  This latest time, I tried via Fink, which seemed to work on the installation side yet does nothing but throw Bus Errors when I try compiling or running anything.  :(</div>
            
        </li>
    
        <li class="comment" id="comment-221084438">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://www.prince.org/"><img src="http://www.gravatar.com/avatar.php?gravatar_id=768d0cc88f9591a83c9913028127d5f4&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://www.prince.org/">Ben Margolin</a>
                </div>
                <a href="#comment-221084438" class="permalink"><time datetime="2003-03-20T08:43:23">2003-03-20T08:43:23</time></a>
            </div>
            <div class="content">I think your attitude is just right, and indeed, the class libraries underneath .net are really elegant IMO. I tell people it's "java done right"... C# is nice, too -- the other legacy langs in .net variants, I don't think are quite so nice.

Anyhow, I have to write a small windows app/util now and then, and from now on I'm using C#. But for web stuff, which is my bread and butter, I just, frankly, don't trust microsoft enough to expend the time, energy, and effort to building things with asp.net or similar. I don't want to be locked to their platform. (And if you believe they're going to be happy if/when mono "finishes", and can run the same apps without compiling on linux, you're nuts--they'll subvert it like hell *when*appropriate*. Right now it's not appropriate to their business needs; in fact it's quite useful for them to seem to be supportive of it.)
Just remember that microsoft is a business first and foremost, and wins by having people use their platforms. To me, the public wins by using a common platform, which for the kinds of things I build, they do--the web. The code I invest my time in, should run "on the web", and that implies to me hardware-agnostic, OS-agnostic. That puts the power back into my hands, allowing me to find the right hardware and OS for the particular systems' needs, not "the only one I know how to program on", such as .Net, or VB. [C# is open, and the language is great--but mostly who cares, without the libraries? And the libraries only run right now, 100%, and I'd argue, forever only >90%, on Microsoft OSes.]

OK, that was rambling, sorry :-) I've thought about this a lot, and while I haven't the time or organizational skills at the moment to truly effectively convey my opinion, at least I feel a little better!</div>
            
        </li>
    
        <li class="comment" id="comment-221084439">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://monkey.org/~jose/"><img src="http://www.gravatar.com/avatar.php?gravatar_id=d74863ca9c7785cd396379766095036c&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://monkey.org/~jose/">jose</a>
                </div>
                <a href="#comment-221084439" class="permalink"><time datetime="2003-03-20T10:58:58">2003-03-20T10:58:58</time></a>
            </div>
            <div class="content">hey les, long time no see. sorry to hear about your jobless sitch, but ... good to see you're using it for good. i'm also getting hooked on the .NET thing, i'm finally grokking the tech they're embracing. i think it's pretty cool, and can finally let me do some of the more interesting things i have wanted to do. i think the rotor source should install on os x, which would be a nicer, faster way to do it. i know mono works on linux-ppc, so the underlying processor support is there. 

a few links:

http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=579

http://www.oreillynet.com/cs/weblog/view/wlg/1269

anyhow, you can see where this is going: you should have support for .NET on os x. 

happy hacking.</div>
            
        </li>
    
        <li class="comment" id="comment-221084440">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://www.ntwizards.net/blog/"><img src="http://www.gravatar.com/avatar.php?gravatar_id=206fbbec4cb9474d5a622b33a450319b&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://www.ntwizards.net/blog/">Bryce</a>
                </div>
                <a href="#comment-221084440" class="permalink"><time datetime="2003-03-20T18:14:50">2003-03-20T18:14:50</time></a>
            </div>
            <div class="content">Eclipse has a C# plugin, if you can get Mono running you can completely avoid Virtual PC.</div>
            
        </li>
    
        <li class="comment" id="comment-221084443">
            <div class="meta">
                <div class="author">
                    <a class="avatar image" rel="nofollow" 
                       href="http://www.furrygoat.com"><img src="http://www.gravatar.com/avatar.php?gravatar_id=55de90f5a0977fcf7b47ce4e6837f48d&amp;size=32&amp;default=http://mediacdn.disqus.com/1320279820/images/noavatar32.png"/></a>
                    <a class="avatar name" rel="nofollow" 
                       href="http://www.furrygoat.com">Steve Makofsky</a>
                </div>
                <a href="#comment-221084443" class="permalink"><time datetime="2003-03-21T19:40:38">2003-03-21T19:40:38</time></a>
            </div>
            <div class="content">Why dont you give the shared source cli a try (SSCLI or ROTOR)? It compiles on the OSX command line.
http://www.cs.columbia.edu/~lok/csharp/rotorquickstart.html
http://www.microsoft.com/downloads/details.aspx?FamilyId=3A1C93FA-7462-47D0-8E56-8DD34C6292F0&displaylang=en</div>
            
        </li>
    
        </ul>
    
        </div>
