This virtual interview is a patchwork of several emails between Kenn
Humborg, Chief Technical Officer of Blue Tree Systems, and Ken Guest.
(KG) > So what is Blue Tree in the business of? Do you have any clients
that people may be aware of?
(KH) Blue Tree Systems was founded 4 years ago by two electronic engineering
postgraduate students from NUI, Galway. We currently employ eight software
developers, mainly producing software for the transportation industry.
Our largest customer is Thermo King Corporation (manufacturers of transport
refrigeration equipment for vans, trucks, trailers, containers and bus
air conditioning systems). We have developed both shrink-wrap application
software that Thermo King sell to their customers and in-house training
and presentation tools. We are currently developing a complete
hardware/software
solution which uses a low-power radio network to provide wireless communication
links with vehicle-mounted devices (such as temperature data loggers and
the 'smart' controllers in Thermo King's refrigeration units). This system
is in field test at the moment and will be launched as product in about
2 to 3 months.
> From previous conversations, I think I know how you use Linux in
Blue Tree, one question I have to ask though is why. Is it because Linux
is the obvious choice or is it an antiWindows thing?
The first Linux machine we installed was our internet firewall. There
were a few factors affecting that decision.
First off, I was not convinced about the out-of-the-box security of
NT in such a hostile environment. I didn't know enough about NT to be confident
that I'd be able to make it secure enough.
Secondly, I wanted to run quite a few services on this box (including
mail, news, WWW cache, web server, ftp server, DNS server). I felt that
doing all this with NT would cost quite a bit (in both hardware and software),
whereas with Linux, I could use OpenSource software all the way and make
use of an older machine which was no longer any use for development.
Thirdly, I had some experience with NT through administering our NT
server boxes. Have you ever tried troubleshooting on NT? The only logging
available is usually the NT Event Log, and I've yet to find a way of doing
a "tail -f" on it!
Fourthly, I can admin my Linux firewall from home, which I can't do
with NT (or at least wouldn't be anywhere near as comfortable doing it).
> So you use Linux because NT is an untamable dog? Let me rephrase
that. It appears that NT needs comparatively advanced hardware and is resource
hungry. Whereas Linux is neither of these and is more stable to use and
actually easier to manage (both locally and remotely).
That pretty much sums it up!
The second installation is a test machine setup that allows us to select
between numerous OS and application configurations in very little time.
We needed the ability to test our software under everything from Windows
3.1 to Windows 98/NT4 with and without MSOffice and in various languages.
(Microsoft would like you to believe that developing for Windows is write-one,
run anywhere. If you ask me, there are more differences between Winows
95 and NT4 than there are between most Linux distributions!) It's
also important to be able to go back to a well-known configuration when
troubleshooting and doing QA.
So, I split a large hard drive into a small (500MB) partition for the
OS under test and installed Linux on the remainder. Two trivially simple
scripts allow us to save and restore compressed images of the small partition.
Developing this solution without Linux would have taken longer and given
me much less flexibility.
> And of course there's the old business cliche - time is money.
Absolutely.
> I've read over your email that you sent me when I asked everybody
in a commercial environment to get in touch with me and Blue Tree clearly
uses Linux a lot. Does the OpenSource versus closed development debate
affect you in anyway?
I guess it does... We _are_ a software development company after all
:-)
I'm a firm believer in Open Source for infrastructure. Open Source operating
systems, mail/web/DNS servers etc are superior in my view. I'd be worried
about using closed source software in my firewall, for example. (So that
means ssh over pcANYWHERE any day...).
With regard to our own development, it's very unlikely that we would
open-source our major products. At a minimum, we would be in breach of
NDAs if we did that. However, we are considering opening some of our libraries
and components. In fact, we have already released an Open Source COM component,
partly as an experiment and partly because I feel we need to give something
back to the community.
> What is your reasoning behind this? Is it for financial reasons
or are there other advantages to OpenSource software? What is it that makes
OpenSource products more superior?
Infrastructure is vital. You can't build solid systems on a fragile
foundation. In addition, interoperability is vital. This means infrastructure
is almost a 'natural monopoly'. Desktop OSes (and essential Internet services)
fall into the category of infrastructure. And nobody really wants to develop
for multiple platforms, so the commercial world seems to tend towards a
single-OS situation. (I'm talking about the desktop market here. Other
markets, such as servers and embedded computing, have very different
priorities.)
If we are going to have one dominant OS, it should be Open Source. Otherwise,
the industry becomes subservient to the will of one dominant company. And
we all know that's not a good thing...
So, my main reasons are not financial. I will quite happily pay for
a good product. It just happens that I've had fewer problems dealing with
Open Source software than with proprietary software. I think that the best
Open Source products are those that allow anyone to 'scratch their own
itch' and contribute features and fixes to the product, but still have
somebody overseeing the whole thing (such as Linus, or the Apache Group)
so that the architectural integrity of the product is maintained. I'm sure
all programmers out there have, at some stage, looked at a proprietary
product and said "it would be really easy to add this useful little feature..."
but were powerless to do anything about it. And the product suffers because
of this. Marketing departments seem to have completely different ideas
about what should go into software compared to what I really want.
> COM. That rings a bell - I take it you develop primarily for Windows
platforms? And that PCs running Windows can 'interact' with Linux boxen
without any problems?
All our development is for Windows. That's what our customers run. As
for Windows-to-Linux interoperability, they get on fine together. Samba
is a great tool. And the move to open protocols such as TCP/IP, DNS, SMTP,
POP and IMAP in the (once very proprietary) Windows world has been great.
And it works the other way as well. Dave Airlie's
pam_smb authentication
module allows me to direct all user authentication to our NT domain
servers.
All Linux services that require passwords, such as telnet, POP, IMAP
and FTP simply pass the supplied password to an NT server for validation.
This simplifies things for users, because they only have one password to
remember and only one place where they need to change it.
In fact, at the moment, we have a few applications that don't use the
NT domain password. Interestingly, they are all Microsoft applications
so there is no chance of being able to fix them!
> What software do you use for documentation?
It's mostly Word 95.
> Is there any reason for Word 95, is it that you need to produce
documentation for the Windows world of users or is it just an issue of
functionality?
Inertia, interoperability and functionality. Word is not a particularly
bad word processor (although it falls well short of the mark when dealing
with really large documents). For everyday correspondence and writing user
manuals, it does the job. In-house developer documentation is generally
either Word, HTML or plain text, whichever suits best.
> Given the increasing range of Office related
products that are now available for Linux, are they a viable option with
regards to producing documentation?
No. All our development in on Windows, so there is no point in having
to use Linux for other productivity tools.
> Ah. So Linux is being used pretty much for the infrastructure of
development.
Not just for development, but for any infrastructure where it makes
sense. At the moment, our main work-horse file server is running NT, and
I'm happy to leave it that way. Firstly because it works quite well (although
I'd like to compare performance to Linux/Samba running on similar hardware).
And secondly because we're using SourceSafe for source code control.
SourceSafe is basically a database, and I wouldn't feel very comfortably
running it off a Samba server.
However, because that server is so mission-critical, I don't want to
run too much more on it. So say, for example, I wanted to run an internal
news server. I could go for Notes or Exchange (which would require another
machine) or run INN on Linux. Again, I'd go for the Linux option, because
I'd be able to recycle an older machine that is no longer any good for
development or running NT.
> Can you see Blue Tree developing Linux software for clients in
the distant [near/close/whatever] future?
In the short-to-medium term, I don't think so. Our customers are very
much Windows shops (and quite slow to change). In fact, until very recently,
everything we did had to be 16-bit and run on Windows 3.1. Now we are moving
to 32-bit development, but some products still have to be 16-bit. It will
be a long time before these guys move to Linux!
> I'm intriqued by the serial port server that you run on an old
486, what exactly is involved (it just sounds rather unusual to me)?
-
Grab an old 486SX25 with 4MB of RAM, 3 ISA slots and 100MB of disk.
-
Install a Stallion EasyIO 8-port ISA serial card. Install an old ISA ethernet
card.
-
Install my portserver software (available from our
FTP site). I've now got 10 serial ports accessible from anywhere in
our network.
-
Next, I modify our in-house Windows comms library to take port names such
as "*rterm/hydra.bluetree.ie/external1" as well as old-fashioned names
such as "COM1:".
-
Now any applications using that library can transparently communicate through
those remote ports.
We develop software that downloads data from data logging devices. During
test and development, we need to be able to communicate with loggers from
different manufacturers, running different protocols and firmware revisions.
Lugging loggers, power supplies and cables from one developer's desk to
another was a real pain. Instead, they all go in one corner of one office
and anyone can communicate with them.
> Would I be correct in inferring from the majority of your answers
that you are more than just a Blue Tree employee?
My title is Chief Technical Officer, so I do pretty much everything
related to IT here. It's my responsibility to oversee the technical side
of software development (choosing developement tools and technologies)
and keep our network running as smoothly as possible, at the same time
as doing my 'normal' software and hardware development tasks!
> That sounds like more than a full time job!
Sometimes it feels like more than a full time job :-)
> And you aren't a stranger to the ILUG scene either. In fact you
gave a talk at the Intersocs conference on 'Using Linux as an Internet
Gateway'. What are your opinions on the ILUG - are there any benefits,
[in your opinion] of it being in existance?
ILUG is great. It's different things to different people.
Some are interested in the PR aspects and representing Linux and the
interests of Linux users to the public, press, business and government.
For me, it's a technical resource. It's a bit like all the comp.os.linux.*
newsgroups distilled down to one mailing list. Very few questions go
unanswered.
And I think ILUG is growing naturally with things such as the presence
at Intersocs 98 and the recent Installfests. It's finding its own roles
which is much better than the previous attempts to 'define-by-committee'
:-)
Additionally, it is invaluable for new Linux users. It's difficult for
me to look at this objectively because I'm not a beginner, but my impression
is that the mailing list is quite friendly towards beginners. It's important
that this is not lost. One of the core qualities of the Linux and Open
Source community is its generosity. It's the foundation of the 'gift culture'
that Eric Raymond describes. If that goes, everyone will suffer.
> Do you think that your use of Linux in Blue Tree gives a competitive
advantage?
Yes. The multi-boot test machine is invaluable. If you ever develop
Windows installers, you'll know how useful it is to be able to pull up
a fresh installation of, say, Windows 95 Retail Release with Office 4.3
in 3 minutes!
> If a company, without staff aware of Linux, (ie using some version
of Windows) were looking to network their machines for filesharing, printing
and email what would your recommendation be?
Something like a Cobalt Qube. They just plug it in and off they go.
I'd never be comfortable with an NT box with no monitor, but Linux handles
the task admirably.
> Would they need a full time Linux admin employee anymore than they
would need a full time admin employee for any other choice of server (be
it NetWare or some version of Windows)?
I don't think you'd need someone if you get something like a Qube. In
any case, the need for a full-time sys admin is pretty much independent
of what platform you're running. Eventually, your network grows to a point
where in becomes cheaper to hire someone than to pay a consultant every
time you want to do something.
That goes for all platforms. The thing with NT is that it looks easy.
People think "Hey, this is the same as Windows 95. I can handle this."
But just below the surface, it's a completely different beast. I maintain
that it takes as much knowledge to run NT properly as it takes to run Linux.
> But more money - both in terms of time lost due to lack of stability
and the cost of the system itself.
Actually it's hard to say... The up-front configuration with Linux tends
to take longer (and remember time == money). This is a reflection of the
work that Microsoft have put into their wizards and other user tools. However,
in the long term, Linux tends to require less care and feeding and is more
stable.
Once it's set up it just keeps on going...
Kenn Humborg can be reached at kenn@bluetree.ie.
Ken Guest
can be reached at root@linux.ie.
|