nl There is also a DUTCH VERSION of this site



Most recent articles
What do system administrators do?
Is software ever finished?

All articles

01 Aug - 31 Aug 2006
01 Sep - 30 Sep 2006
01 Oct - 31 Oct 2006
01 Nov - 30 Nov 2006
01 Dec - 31 Dec 2006
01 Jan - 31 Jan 2007
01 Feb - 28 Feb 2007
01 Mar - 31 Mar 2007
01 Apr - 30 Apr 2007
01 May - 31 May 2007
01 Jun - 30 Jun 2007
01 Jul - 31 Jul 2007
01 Aug - 31 Aug 2007
01 Sep - 30 Sep 2007
01 Oct - 31 Oct 2007
01 Nov - 30 Nov 2007
01 Dec - 31 Dec 2007
01 Jan - 31 Jan 2008
01 Feb - 29 Feb 2008
01 Mar - 31 Mar 2008
01 Apr - 30 Apr 2008
01 May - 31 May 2008
01 Jun - 30 Jun 2008
01 Jul - 31 Jul 2008
01 Aug - 31 Aug 2008
01 Sep - 30 Sep 2008
01 Oct - 31 Oct 2008
01 Jan - 31 Jan 2009
01 Apr - 30 Apr 2009
01 Aug - 31 Aug 2009
01 Sep - 30 Sep 2009
01 Dec - 31 Dec 2009
01 Jan - 31 Jan 2010
01 Feb - 28 Feb 2010
01 Mar - 31 Mar 2010
01 Apr - 30 Apr 2010
01 Jun - 30 Jun 2010
01 Jul - 31 Jul 2010
01 Sep - 30 Sep 2010
01 Oct - 31 Oct 2010
01 Nov - 30 Nov 2010
01 Dec - 31 Dec 2010
01 Jan - 31 Jan 2011
01 Feb - 28 Feb 2011
01 Mar - 31 Mar 2011
01 Apr - 30 Apr 2011
01 May - 31 May 2011
01 Jun - 30 Jun 2011
01 Jul - 31 Jul 2011
01 Sep - 30 Sep 2011
01 Oct - 31 Oct 2011
01 Jan - 31 Jan 2012
01 Nov - 30 Nov 2012
01 Dec - 31 Dec 2012
01 Apr - 30 Apr 2013
01 May - 31 May 2013


Ruth Malan
Gaudi site
Byelex
XR Magazine
Esther Barthel's site on virtualization



Misc

 
XML: RSS Feed 
XML: Atom Feed 


What do system administrators do?

Thursday 27 December 2007


Almost every company employs system administrators. I have noticed that is it not always obvious to everyone what these system admins do all day.

Therefore I created the list below with tasks that system admins usually do in daily practice:

  • Installation and maintenance of hardware and software;
  • Daily checks of the systems;
  • Organising a fast repair of the service in case of an incident or emergency;
  • Applying changes based on RFC's;
  • Monitoring systems;
  • Creating and maintaining scripts;
  • Creating and checking daily back-ups;
  • On demand restoring of data from back-ups;
  • Performance tuning;
  • Installing patches;
  • Checking the security of systems and keeping it up-to-date;
  • Patching systems and firmware;
  • User account management;
  • Answering second-line technical questions;
  • Documenting systems and keeping documentation up-to-date;
  • Keeping informed about their professional knowledge.

So, be nice to your system administrators: they are very busy!


Is software ever finished?

Thursday 13 December 2007


Some applications (and operating systems) like Windows, Oracle or Microsoft Word seem to never reach a final state.

Microsoft Word is a word processor, which is on the market for more than 10 years now. Why is it that an application like a word processor is still improved and changed after all these years? One would assume that at a certain point in time, the application would be finished, but it’s not. The same goes for applications like Oracle's database or the Apache webserver. There are three reasons for this: Bugs, adapting and improvements.

Bugs

Some software is built on an old, and sometimes unstable basis, like Microsoft Windows. Windows has it's base in MS-DOS, a command-line based operating system without multi-user or networking capabilities. Because people want Windows Vista to still run MS-DOS application from 20 years ago, much work must be done to keep everything working in every new release of Windows. This makes software very complex and error-prone. Therefore many bugfixes are inevitable.

Because software made by commercial companies can only be sold when it is market-ready, commercial drivers set release dates for software. Even if the software is not 100% bullet-proof, or if not all features are completely tested, the software must be released. This causes bugfixing after the software is released, sometimes for a considerable amount of time.

Since the widespread adoption of the Internet, much attention is given to security. Securitybugs nowadays are a large source of bugfixes.

Adapting

Some software is dependent of other software to function. This causes software that was originally finished, to be upgraded all the time. A good example of this is the Apache webserver. One could say that a webserver can be a simple program, serving HTML pages over a TCP port. And the original Apache webserver was indeed as simple as that.

But developers from for instance PHP wanted to have Apache run PHP programs that were embedded in webpages. This caused Apache to be extended. The same happened when support for databases was needed, or secure connections, or webservices. Apache became bigger and bigger.

Improvements and new versions

For commercial software vendors, it is not attractive to finish software completely. This would dry up the revenue stream. It is much more profitable to have a new release of the software every two years. Even if this new version contains new features that few people want or need. At some point in time, upgrading software just to have some new features nobody really wants or needs is just not interesting for customers anymore. This is what is happening to Microsoft Word for example. Few people want to upgrade to a new version after Word 2000, because this products is actually really finished.

To avoid the problem of customers not upgrading to the latest software release, software vendors came up with another strategy: support. While not many people (let alone companies) want to upgrade to Windows Vista, many are forced to. Microsoft will stop selling Windows XP, it is not installed on new computers anymore and the support for it will also stop in the near future, although Windows XP is still a fine product, that works perfectly for 95% of the customers,

Drawbacks

Because of the constant "improvements" and bugfixing, many applications will never be finished. This makes software very hard to manage for programmers. It would be much easier to build software using smaller components, that will be finished and never touched again. This is the design philosophy of UNIX. UNIX consists of a fairly small kernel, with addons as small components (drivers, modules and shell-commands). The philosophy of UNIX (and later Linux) was to have small tools that do one thing, but do it very well. Commands like tar, grep and ls are finished for many years, but are still used all the time. Very few people feel tar has too little functionality or bugs.

This works also for the Windows environment. For instance, Winzip is around for many years, without improvements or bugfixing. It works and it is finished. The same goes for paint and notepad for instance.

I feel it would be a good choice for software development companies to slit-up applications and let them consist of smaller components. These components could be completed and finished, while the main application can still be improved. It works. Look at the GNU/Linux operating system for example.



More articles: See left pane.
 
About Sjaak Laan

Sjaak Laan

Sjaak Laan (1964) is married with 3 children. He lives in Drachten in The Netherlands. He works as Principal IT Architect for CGI and has more than twenty-five years of IT experience. More information can be found on his Linkedin profile.

My book

More information on ordering the book can be found here.

Some course material can be found here.


 
Contact

I can be reached through sjaak.laan [ a t ] gmail [dot] com.

Follow me on social media
Twitter LinkedIn Facebook RSS

This site states my opinion only, and not nessecarily the opinion of my employer or of the clients I work for.

The postings on this site are my opinions and do not necessarily represent CGI’s strategies, views or opinions.

 

Copyright Sjaak Laan