    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
     <channel>
        <title>ACCU  :: Editorial</title>
        <link>https://members.accu.org/index.php/articles/1241</link>
        <description>Professionalism in Programming</description>
        <dc:language>en-us</dc:language> 
        <dc:creator>Administrator</dc:creator> 
        <admin:generatorAgent rdf:resource="http://www.xaraya.org" /> 
        <admin:errorReportsTo rdf:resource="mailto:webeditor@accu.org" />
       <sy:updatePeriod>hourly</sy:updatePeriod>
       <sy:updateFrequency>1</sy:updateFrequency>
       <docs>http://backend.userland.com/rss</docs>




<div class="xar-mod-head"><span class="xar-mod-title">Journal Editorial + CVu Journal Vol 15, #5 - Oct 2003</span></div>

<table border="0" cellpadding="1" cellspacing="0">
    <tbody>
    <tr>
        <td valign="top">
            Browse in :
       </td>
       <td valign="top">

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c184/">Journal Columns</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c185/">Editorial</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c76/">Journals</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c77/">CVu</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c106/">155</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/c185-106/">Any of these categories</a>

                    -                        <a href="https://members.accu.org/index.php/articles/c185+106/">All of these categories</a>
<br />
</td>
   </tr>
   </tbody>
</table>




<div class="xar-error">
   <p>
 <strong>Note:</strong> when you create a new publication type,
the articles module will automatically use the templates
<em>user-display-[publicationtype].xt</em>
and <em>user-summary-[publicationtype].xt</em>.
If those templates do not exist when you try to preview or display a new article,
you'll get this warning :-)  Please place your own templates in themes/<em>yourtheme</em>/modules/articles . The templates will get the extension .xt there. </p>
</div>
<div class="xar-norm xar-standard-box-padding">
   <h1><strong>Title:</strong>&nbsp;Editorial</h1>
<p><strong>Author:</strong>&nbsp;</p>
<p>
<strong>Date:</strong> 09 October 2003 13:16:00 +01:00 or Thu, 09 October 2003 13:16:00 +01:00</p>
<p><strong>Summary:</strong>&nbsp;<p>The Internet Isn't Working</p></p>
<p><strong>Body:</strong>&nbsp;<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e22" id="d0e22"></a></h2>
</div>
<p>How often have you been approached by a friend, colleague or
family member telling you that &quot;the Internet isn't working&quot;? If
you're polite, you'll work out a way to find out what is actually
wrong without having to tell them that there is no single
centralized thing called the Internet, and that most of it
certainly is working just fine, thank you very much. I hope you'll
do me the same courtesy when I say that, right now, the Internet is
not working.</p>
<p>Decentralized as it is, there is one thing holding the Internet
together: the distributed database known as DNS (domain name
service). While DNS information is distributed, it relies on a
known set of &quot;root&quot; servers to provide authoritative information on
top-level domains. Maintenance of these root servers is contracted
out to Verisign, a private company whose interests do not always
coincide with those of other Internet users.</p>
<p>One thing Verisign are responsible for is answering DNS queries
for machines in the <tt class="literal">.net</tt> and .<tt class=
"literal">com</tt> domains. Fortunately DNS is defined by open
standards, and Verisign are (or ought to be) bound by various
contracts and rules. So far, so good. But then Verisign decided to
change the way DNS works on the Internet, presumably in a bid to
make more money. In effect, Verisign have registered every single
possibly unregistered domain in the <tt class="literal">.com</tt>
and <tt class="literal">.net</tt> domains. Yes, every single one.
Any lookup for the address (&quot;A&quot; record) for a domain name that is
not registered to someone else will now return the address of
<tt class="literal">sitefinder.verisign.com</tt>, where it should
return a result indicating that the domain is not registered.</p>
<p>In case you're thinking that this is harmless, let's look at
some consequences.</p>
<div class="itemizedlist">
<ul type="disc">
<li>
<p>Spam filters that rely on checking that the domain of a sender's
address is valid no longer block any spam, as almost any domain
appears to be valid.</p>
</li>
<li>
<p>Programs which tolerate expired domain names by falling back to
another name will find that the expired name now resolves, but to a
machine not offering the service.</p>
</li>
<li>
<p>Web browsers pointed at a site that no longer exists receive
HTTP return code 302, defined by the HTTP standards as meaning &quot;
The requested resource resides temporarily under a different URI.&quot;
Verisign are breaking the http specification in RFC2616 as well as
breaking DNS.</p>
</li>
<li>
<p>Mail for some domains is now undeliverable. Mail servers use the
DNS database to determine where to send mail. Previously a bad mail
exchange record would have been mostly harmless - domains usually
have more than one mail exchange machine set up, and mail servers
would try another if the first could not be resolved. With
Verisign's unilateral change, most such names will now be resolved.
That would still be mostly harmless except that Verisign is
accepting incoming mail connections on the SMTP port of <tt class=
"literal">sitefinder.verisign.com</tt>, whose address is returned.
The SMTP server on that machine rejects all mail, but largely
ignores its input, thoroughly ignoring the SMTP standard. (Try
telnet to port 25 of <tt class=
"literal">www.verisign-are-not-team-players.com</tt>, and hit enter
a few times.)</p>
</li>
<li>
<p>Simple tools that used to test if domains were in use or running
web servers no longer work.</p>
</li>
</ul>
</div>
<p>There is more, but space and time are limited. A quick web
search (or a visit to Slashdot, <a href="http://slashdot.org/"
target="_top">http://slashdot.org/</a>) will get the latest
details.</p>
<p>There is an online petition to register disapproval with
Verisign's actions to ICANN, the authority responsible for the
appointment of Verisign and others, at <a href=
"http://www.petitiononline.com/icanndns/petition.html" target=
"_top">http://www.petitiononline.com/icanndns/petition.html</a></p>
<p>At the time of writing about 13,000 people have signed. Don't be
passive - make your voice heard. It might make a difference.
Verisign's current position is to claim (against all manner of
evidence) that their change has not had any significant ill
effects. It's necessary to make a stand against this behaviour. If
the directory services of the public Internet can be subverted for
gain by a private company, there is little hope for keeping the
Internet remotely honest.</p>
<p>I'm hoping that cybersquatting rules will be bought into play.
Maybe a $0.01 fine for each domain that Verisign are
inappropriately redirecting to their site would suffice...</p>
<p>It has long been a clich&eacute; to say that &quot;the Internet
interprets censorship as damage and routes around it&quot;. It's
pleasing to see that the Internet community has some ability to
interpret abuse of power similarly, and to reduce its effect.
Within days of Verisign's attack on the Internet's infrastructure
an update was announced for BIND, the most common DNS server on the
Net, to filter out the inappropriate A records returned by
Verisign's root nameservers. I am in two minds about whether it is
better to lobby our ISPs to install patches for their nameservers
to limit the damage Verisign can do or to meet the problem head on.
Opinions?</p>
<p>[Late breaking update: ICANN has formally requested that
Verisign restore the previous functionality of the DNS system while
an inquiry is conducted. It's possible that Verisign might do so -
but they have not yet.]</p>
</div>
<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e86" id="d0e86"></a>OS Wars</h2>
</div>
<p>I have used a fair range of different operating systems in my
time, from the unnamed OS powering my first 8-bit micro through
Acorn's amusingly named &quot;Arthur&quot; (presumably a reference to the
fact that it was Arthur, sorry, half a, operating system, a stopgap
until RISC OS was released), a Unix from a company using the now
largely disgraced name SCO, IBM's OS/2, more flavours of Windows
than I choose to admit (even to myself), Mac OS and a host of
others including RTOSes from embedded systems. My latest venture in
the OS world has been to run a system using Apple's latest
offering, Mac OS X. With Mac OS X, Apple have left behind their
legacy and moved into the 20th, sorry, 21st century with
pre-emptive multi-tasking, protected memory and many of the other
things that other &quot;grown up&quot; OSs have been offering for many years.
They continue to offer an OS heavily influenced by aesthetic
factors, and intended to be more user-friendly that the
competition. Most importantly for me, it's a Unix (or at least,
Unix-like) system that integrates smoothly with my laptop hardware
(because it's a one vendor show) and allows me to run Microsoft
Word natively. So far, so good (again).</p>
<p>There were several reasons for me to give Mac OS X a try.
Firstly, as with many programmers, I like to work with anything new
and different. Secondly, it was guaranteed to go down well with my
Mac-loving wife (who was not my wife when first I bought a machine
with Mac OS X pre-installed). Those two are not necessarily in
order of importance. Thirdly, with Mac OS X Apple appear to have
moved on from previous battles with the Free Software and Open
Source worlds a little, and now ship a software which is based on
an Open Source core, Darwin. Indeed, Darwin is essentially Mac OS X
without the pretty graphical user interface, and is freely
available - which can come in handy, as when recently I wanted to
see how to make system calls without using the supplied C
library.</p>
<p>An aside: that was part of a hobby project, implementing the
standard C++ library for myself - a fun exercise I'd recommend to
anyone who wants to get more familiar with the library. I'd also
recommend that for most purposes you use a tried and tested
implementation rather than a homegrown one. std::list, for example,
may be nice and easy to use, but in terms of implementation
difficulty it's by far the most complicated linked list
specification I've ever come across! Now where was I? Oh, yes: back
to the OS talk.</p>
<p>My first real experience with Mac OS X was with version 10.1,
and I had mixed feelings. As a Unix it's rather non-standard in
terms of directory structure, startup operation, and many other
aspects. As a system with a much hyped graphical shell, it felt
rather incomplete - things that should have been simple weren't
possible without dropping back to command line tools that were
specific to Mac OS X. One small hurdle was the fact that Mac OS X
does not, by default, permit root logins, and the option to allow
them is well hidden. Using sudo is a good idea, but sometimes I
just want to be root for a while.</p>
<p>The upgrade to Mac OS 10.2 filled in 90% of the holes I saw in
10.1. Stability issues still exist, and Apple's &quot;It just works&quot;
slogan annoys me, because I find that less true of Mac OS X than of
the other platforms on which I work and play: with Mac OS X simple
things intermittently stop working, and then start working again.
The ping utility, for example, will stop being able to resolve
names even when nslookup can - and then minutes later ping will
recover its senses. Come on Apple, the basics should &quot;just work&quot;. I
do have to reboot several times a month, a level of instability I
haven't seen since Windows NT 4. At least I got a free upgrade to
10.2 as I bought 10.1 only weeks before the launch of the later
version.</p>
<p>But now Apple are set on losing whatever loyalty I might feel
towards them. We are promised that the next release, 10.3, will
cost US$129 whether you are upgrading from a 5-year old OS or from
a 5-month old copy of Mac OS X. Should a company with a market
share smaller than 5% of the desktop be so hostile to its existing
users?</p>
<p>Maybe it's time for me to move on and try another exciting new
OS - any suggestions?</p>
</div>
</p>
<p><strong>Notes:</strong>&nbsp;</p>
<p><em>More fields may be available via dynamicdata ..</em></p>
</div>
</channel>
</rss>
