Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

LAMP: I think, therefore maybe I am.

by punch_card_don (Curate)
on Mar 21, 2007 at 12:50 UTC ( #605834=perlmeditation: print w/replies, xml ) Need Help??

Meritorious Monks,

Am I a LAMP programmer?

Linux, Apache, Mysql, Perl.....

90% of my work for years now has been:

  • have a hosting account set up on a *nix box running Apache
  • design and create a Mysql database to house the project's data
  • the data is in a text file, so write a Perl script to parse the file and populate the db
  • write a browser-based user interface in HTML, CSS and Javascript (may be combined into some DHTML for menus); make basic buttons and backgrounds myself, use graphic artist for more involved design
  • write Perl cgi-scripts for the interace buttons or forms to call
  • the Perl uses DBI to query/insert/whatever the Mysql database
  • using a templating tool, Perl dynamically outputs results, either in a report or as more UI pages directing user to further refined queries
  • other optional output formats generated by Perl scripts: as Excel spreadsheet using WriteExcel, as RTF for printing
  • report may be output as a datastream to a client-side VBA application for auto-generation of Microsoft documents (Word, Excel, PPT) - all VBA also of my creation.

I'm not the server admin - just a user.

So - am I?


Forget that fear of gravity,
Get a little savagery in your life.

Replies are listed 'Best First'.
Re: LAMP: I think, therefore maybe I am.
by talexb (Canon) on Mar 21, 2007 at 18:19 UTC

    LAMP is usually an abbreviation for four things, Linux, Apache, MySQL and Perl.

    I used to call myself a LAMP developer until I started learning about Linux Systems Administration. There's a lot of stuff there. I'm now quite comfortable logging in to a server as root, configuring and restarting services, installing RPMs (assuming I can find the damned things), using a VPN, configuring routing, diagnosing network problems, watching a server using top, ps axf and my favourite, xload.

    I still don't know much about setting up RAID, LVMs, NIS, NFS, Samba, or CUPS. I dream of re-compiling the kernel, and occasionally I run insmod to load NIST and shudder. The SysAdmin builds a LiveCD for a satellite office to run and I just shake my head. I know a few tricks like running ldconfig and using lsof, but I still have a lot to learn.

    I'm getting better with Apache: I know what pretty well everything in httpd.conf does, have written some mod_rewrite rules and modified an existing reverse proxy configuration. I've migrated my web application from 1.3 to 2.0 to 2.2; I have a decent handle on Apache.

    I've used both MySQL and PostgreSQL -- I prefer PostgreSQL just because the configuration and setup is a little more straightforward, but I've created database schemas for both and tried my hand at the insanely complicated challenge of optimizing queries using Explain Analyze. Pretty comfortable with that.

    So, finally to Perl. I've been a member of Perlmonks for over five years, and was fiddling with the language for a couple of years before that.

    I've got a good handle on the syntax, but I'm still learning about all of the things that are available on CPAN. I try to do testing, but I am a late adopter. I'm definitely comfortable with the language, but I'm not really at the guru level yet.

    So, to the point! From your description, it sounds like there's not much Linux or Apache configuration, but plenty of MySQL and Perl (as well the various presentation bits like HTML, CSS and Javascript). That's simple to fix -- get a used machine and install Linux on it, then have a go at building a web application with a database backing.

    You might learn a lot. :)

    Alex / talexb / Toronto

    "Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds

      That's simple to fix -- get a used machine and install Linux on it, then have a go at building a web application with a database backing.

      Or use a virtual machine instead. Nowadays such software is easy to get and if you have about 1GB of RAM it works quite fine.

Re: LAMP: I think, therefore maybe I am.
by 5mi11er (Deacon) on Mar 21, 2007 at 16:05 UTC
    Yes, I'd say so. Not being a server admin, simply puts extra constraints on games you could play with file permissions. And it adds the benefit of removing a whole lot of work that you might otherwise be forced to deal with rather than working on your project.

    What is it that makes you think not being an admin reduces your expertise with LAMP?


      My question is way before "does not being an admin reduce my LAMP expertise"..

      It's more: "I've been doing this stuff very matter of factly in my little corner all these years, and came across a mention of LAMP, read the description, and thought it sounded like me - but before I go around claiming to be a LAMP expert, I'll check to see if I've not missed some arcane detail that disqualifies me so I don't look like a total idiot when I put LAMP on my resumé."

      Forget that fear of gravity,
      Get a little savagery in your life.

        Well I would consider you a LAMP developer ... but it seems to me the PHP folks have somehow weaseled their way into controlling the mindset about what P is.

        LAMP, and other derivations on the theme, describe an environment in which lots of useful stuff can be put together. Saying one is a "LAMP expert" is ambiguous because that could mean several different things.

        It could say the person knows how to install a LAMP environment on disparate OSes, it could mean it is the prefered environment of an architect who doesn't actually do much heavy lifting, it could mean the person can tune the environment to run really well with huge databases with lots of throughput. It could mean you're a one man shop that has had to configure and design the architecture, and code, and design/build the web pages (which sounds like your boat).

        Like most buzz words, it's pretty hollow until you understand the exact memes and context that are intended.


        I wouldn't worry too much about it. The point is that you're developing for the LAMP platform.

        OK, so your expertise is mostly in the 'p' and 'm' parts, but as long as you're not advertising yourself as a Linux sysadmin or an Apache specialist, I'd say that's ok.

        Bearing in mind that most recruitment agencies don't have the slightest idea what any of this means anyway... and if you're in an interview with an actual employer then you'll be able to discuss exactly where your experience lies.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://605834]
Approved by kyle
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2018-08-21 14:20 GMT
Find Nodes?
    Voting Booth?
    Asked to put a square peg in a round hole, I would:

    Results (200 votes). Check out past polls.