[CentOS] which programming language for server-side admin tasks

Sun Jun 14 19:19:19 UTC 2009
Les Mikesell <lesmikesell at gmail.com>

Rudi Ahlers wrote:
> On Sun, Jun 14, 2009 at 8:31 PM, Les Mikesell <lesmikesell at gmail.com> wrote:
> 
>> Rudi Ahlers wrote:
>>> Hi,
>>>
>>> I would like to spend some time learning a new coding language, but
>>> specifically for server side admin stuff, i.e. setting up users /
>> databases
>>> / FTP accounts / virtual domains on Apache, etc.
>>>
>>> I already know PHP, but realize it's not quite suited for this kind of
>>> admin, and I suppose I need to look @ PERL / Python / C++ / Ruby? /
>> others?
>>> Can someone give me some pointers on this?
>>>
>>> I basically need to write a control panel, with web access for admins to
>>> manage servers, similar to what cPanel / WebMin / Plesk / etc does right
>>> now, but something more customized for our needs.
>> I can't help thinking that you are just about to repeat all the security
>> mistakes those other tools have spent years correcting and that you'd be
>> much better off using one of the existing tools or making minor mods.
>>
>> Having said that, it's really about time for someone to tackle this in
>> java - perhaps with most of the details in a backend LDAP database.
>>
>> --
>>   Les Mikesell
>>    lesmikesell at gmail.com
>> _______________________________________________
>>
> 
> Hi Les, while I understand where you're coming from, I don't quite agree
> with you. A programming language doesn't make security mistakes, the coder
> does :) 

I didn't mean the language is going to cause the problem.  I meant that 
coding mistakes are inevitable when you start from scratch and take 
years to find and fix - a headstart those other frameworks already have.

> What I'm looking for, is which programming language will be best,
> i.e. fastest. My OS of choice would be CentOS, but even then that won't make
> a difference either.

That's all almost irrelevant. Unless you make horrible coding mistakes, 
nothing you do within the programming language will take significant 
time compared to reading/writing the config files and database activity.

> I can do most of this in PHP, but I do think PHP is a bit slow for this,
> being a scripting language, and not a compiled language.

Measure what's really happening.

> LDAP can / would but be one component of the whole thing, and I'm not very
> fond of JAVA, since it's rather slow. Ideally I need something which could
> interact with the OS layer directly

Java is only slow when you have to start a new JVM.  I'd expect this to 
be run under tomcat or similar web container where the JVM would always 
be running.  Again, measure a few things to get the idea.  A tomcat app 
is easy enough to test - there are a few packaged ones to get the idea. 
  As far as talking to the OS goes, all languages have ways to do that. 
  Perl is probably the closest-to-native for most things - and has 
modules  with embedded C-library access for anything else you might 
need.  But java has built-in remote execution if you want to make this 
work on more than one machine.

-- 
   Les Mikesell
    lesmikesell at gmail.com