[VOT] Need some info from people who do contract work on a regular basis

2001-08-13 Thread jbodnar

Please excuse this very off-topic post but I know that several people on this
list do regular Perl contract work and I could use some advise from a few of
them at the moment.

I've bcc'd the list so hopefully that will prevent any replies from going back
to the list, but just to be sure, if you do reply, please be sure to send it
only to me. If you'd like the answers to my question just drop me a message and
I'll send you a summary.

Now, on to the meat and potatoes.

I've been working on a project for a client for the past 7.5 months. The
project entails building a web site that is similar to TurboTax online except
this site deals with estate planning (Wills, Trusts, Power of Attorney docs,
etc.). You could also think of it as a web-based version of Quicken Family
Lawyer. (The client is not Intuit, though, unfortunately.)

I was told that I needed to build a system where users would register for the
site and enter some basic biographical and familial information. They then
would have access to a suite of wizards that would ask them questions whose
answers would provide the data for specific estate planning forms. After
completing the wizard, the user would be shown a completed document in PDF
format that could be printed or saved. The user could later go back and edit
the information they entered and change the document as needed.

I was given 20 or so Word documents that were templates for all the estate
planning documents. To me the project was quite easy. Turn the word documents
into some sort of intermediate format (HTML) with blanks for the data (I used
abiword), fill in the blanks when the document was requested and then use a
html2pdf program to create the resulting pdf file. Of course, there was also
some database work for registering users, displaying the wizards, storing
answers, etc.

We bid the project as 160 hours (80 for programming, 80 for site design
(including a flash animation)) at $125/hour for a total of $20K.

I quickly finished the the word-html-pdf portion of the contract. When I
showed the client how things worked I was told that that was not how things
needed to work. The client told me that the structure and the content of each
document would change depending on the users answers. For example, if the user
only had 3 children, a table listing child information would only contain three
rows instead of the 5 rows that the blank template had. Or, whole sections of
the document might be removed based on a users answer.

Now this was a whole other beast than what I had originally bid on but my
company needed the money and there wasn't any other contracts for me to work on
so we agreed to do the project as she was now describing it without changing
the contract or charging her any additional amount.

So, over the next few months, I began converting the word documents into XML
documents with my own tags, wrote an XML processing engine that converted the
XML documents into PDFs (using PDFLib), including the handling of conditional
and looping tags and created a library for writing HTML wizards.

Over the last 7 months the client has constantly complained about the project
not being done in the two months she was promised (though she's not being
billed for the additional 5 months I've been working on it). Now, she's telling
me that the project manager who she first spoke to about this project (who is
no longer working here) told her the project would include credit card
validation and processing for registering members and a la carte purchasing of
individual documents.

She owes $4600 on completion of the project and I plan on completing what I
consider the remainder of the project (none of the e-commerce stuff) and asking
for her final payment.

Now, here's the kicker. The contract that the project manager wrote for this
job is about as vague as you can get. It basically says we're going to build
her a web site and she's going to pay us $20K. So, if either one of us decides
to take the other to court, I don't think anybody would have a leg to stand on
based on the contract.

So, what I'm looking for from anybody who does Perl contract work (or any web
contract work for that matter) is a quick dirty bid for what you would have
charged to do this project.

In summary, here's what you're bidding on:

A database back-ended registration system.
Conversion of Word docs to some some of templating system with formatting
identifiers, looping constructs, conditional constructs (based on user supplied
data).
Web-based wizards for data acquisition and storage in a database.
An engine to parse the templates, fill in the blanks with the user-supplied
data and render the templates as PDF files.

Thanks for any and all help you can provide,

Jason Bodnar


-- 
Jason Bodnar
[EMAIL PROTECTED]
Gocho Networks

Flanders:
Homer, affordable tract housing made us neighbors, but you made us
friends.

Homer:  To Ned Flanders, the richest left-handed man in town.

   When Flanders 

ANNOUNCE: Apache-AuthenCache-0.04.tar.gz

2001-02-01 Thread jbodnar

Special thanks to Christian Gilmore who did a partial rewrite to switch the
cache to IPC::Cache, clean up code, and remove the logging of passwords.

-FW: [EMAIL PROTECTED]-

Date: Thu, 1 Feb 2001 22:11:05 +0100
From: PAUSE [EMAIL PROTECTED]
To: Jason Bodnar [EMAIL PROTECTED], [EMAIL PROTECTED]
Subject: CPAN Upload: J/JB/JBODNAR/Apache-AuthenCache-0.04.tar.gz

The uploaded file

Apache-AuthenCache-0.04.tar.gz

has entered CPAN as

  file: $CPAN/authors/id/J/JB/JBODNAR/Apache-AuthenCache-0.04.tar.gz
  size: 4385 bytes
   md5: 2984cc8c6aedf033701275bca0f393ca

No action is required on your part
Request entered by: JBODNAR (Jason Bodnar)
Request entered on: Thu, 01 Feb 2001 21:10:14 GMT
Request completed:  Thu, 01 Feb 2001 21:11:05 GMT

Virtually Yours,
Id: paused,v 1.72 2000/12/26 15:12:53 k Exp k 

--End of forwarded message-

-- 
Jason Bodnar
[EMAIL PROTECTED]
Gocho Networks

Marge, this ticket doesn't just give me a seat.  It also gives me the 
right -- no, the duty -- to make a complete ass of myself.

-- Homer Simpson
   Dancin' Homer




RE: Help needed with MAP expression

2000-12-07 Thread jbodnar

It takes a reference to an array, and checks to see if each element of the
arry only contains one or more "."s or digits, if it does it calls the td()
function with parameters, returning the result, if not, it returns the element.

I think.

On 07-Dec-2000 bari wrote:
 Hi there,
 Can any one help me what this MAP function does...
 
  map(/^[\.\d]+$/ ? td({-align='right'}, $_) : td($_), @$_)
 
 I am really confused by this one... your help would be appreciated..
 
   Thank You,
 
 - Bari
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]

-- 
Jason Bodnar
[EMAIL PROTECTED]
Gocho Networks

It could be one of these chemicals here that makes him so smart.  Lisa,
maybe you should try some of this.

-- Homer Simpson
   Bart the Genius


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




WANTED: mod_perl consulting work

2000-11-30 Thread jbodnar

While my new company is busy acquiring investment money so we can develop or
real product I'm looking for some short term mod_perl consulting work to help
fund the company. Preferably the work will be telecommuting or in the Austin, TX
area.

A brief synopsis of my qualifications:

5 years of Perl programming
3 years of mod_perl programming
3 years of Embperl programming
Authored three Apache/mod_perl modules (Apache::AuthenCache,
 Apache::DBILogConfig, Apache::ProxyStuff)

Lead web developer at www.Austin360.com (1996-1998)
Senior Engineer/Team Lead at Tivoli Systems (1998-2000)
Senior Engineer/Researcher at TeamLinux (2000)

So, if you need any Perl/mod_perl/Embperl development work drop me a line and
will work something out.

Thanks.

-- 
Jason Bodnar
[EMAIL PROTECTED]
Gocho Networks

Homer:  I don't want you to see me sitting on my worthless butt.

Bart:   We've seen it, Dad.

   Homer at the Bat


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




RE: Remote Hosting

2000-09-26 Thread jbodnar

Take a look at Apache::ProxyStuff. It may do exactly what you want and if it
doesn't it'll give you some ideas on how to do what you want.

On 26-Sep-2000 Allen Wilson wrote:
 Does anyone have an idea of how to set up a remote host request. I am
 attempting
 to set up a web system where the user makes a request and it is process from
 one
 server to another. The remote server will return a file that will be
 formatted
 in a web page. 
 
 I already have the formatting done...it is the connection and requesting from
 the remote server giving me the problem. I tried to run the remote shell
 (remsh
 ) but that failed.
 
 Any ideas would be appreciate.
 
 Allen

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

If there was any justice, my face would be on a bunch of crappy merchandise!

-- Homer Simpson
   Flaming Moe's




RE: canned footers

2000-08-16 Thread jbodnar

It may not be exactly what you're looking for but try looking at
Apache::Sandwich or Apache::ProxyStuff

On 16-Aug-2000 Alex Menendez wrote:
 hello, all
 
 I am trying to write a module that generates a canned footer for all
 html and cgi pages on my site.
 the html part is pretty easy and I have already implemented it. However,
 I am currently having trouble adding it
 to standalone cgi scripts that are not parsed by the server. I have
 tried a number of variations with mod_perl subrequests but none of them
 seem to work right. I also thought about reading the scripts contents in
 the module and using eval. However, that seems a little cumbersome.
 
 Have any of you implemented such thing before? Any ideas?
 
 -amen

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

It's okay, Marge.  I've learned my lesson.  A mountain of sugar is too
much for one man.  It's clear now why God portions it out in those 
tiny packets, and why he lives on a plantation in Hawaii.

-- Homer Simpson
   Lisa's Rival




Re: canned footers

2000-08-16 Thread jbodnar

Take a look at Apache::ProxyStuff. It requires you set another server (can be
virtual) but it doesn't care about methods or content type.

On 16-Aug-2000 Alex Menendez wrote:
 Your right. this works great for html! Unfortunately, however,  Apache
 sandwich really does not work for me because it only deals with GET
 requests and it can not deal with cgi requests directly. I would need to
 alter my cgi's in order to use sandwich. I am looking for a mod_perl
 solution  that will add footers to unaltered stand alone cgis.
 
 any other ideas out there?
 
 thanx,
 -amen
 
 "Bruce W. Hoylman" wrote:
 
 Have you looked at Apache::Sandwich from CPAN?  It is easy to implement
 and I have used it for awhile now to add confidentiality headers and
 footers to pages in a small to medium site.

 cpan m /Apache::Sandwich/
 Module id = Apache::Sandwich
 CPAN_USERID  VKHERA (Vivek Khera [EMAIL PROTECTED])
 CPAN_VERSION 2.04
 CPAN_FILEV/VK/VKHERA/Apache-Sandwich-2.04.tar.gz
 MANPAGE  Apache::Sandwich - Layered document (sandwich) maker
 INST_FILE/opt/gnu/lib/perl5/site_perl/5.005/Apache/Sandwich.pm
 INST_VERSION 2.04

 It could most certainly be use as a basis for your needs and
 requirements.

 Peace.

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Marge:  We're just going to have to cut down on luxuries.

Homer:  Well, you know, we're always buying Maggie vaccinations for
diseases she doesn't even have.

   Lisa's Pony




Re: canned footers

2000-08-16 Thread jbodnar


On 16-Aug-2000 Vivek Khera wrote:
 "BWH" == Bruce W Hoylman [EMAIL PROTECTED] writes:
 
 BWH Have you looked at Apache::Sandwich from CPAN?  It is easy to implement
 BWH and I have used it for awhile now to add confidentiality headers and
 BWH footers to pages in a small to medium site.
 
 The only real trick is that you are responsible for the resulting
 "sandwich" to be valid HTML.  Apache::Sandwich does not insert
 headers/footers in the right place within a complete HTML document.
 It just pastes text files together.

Apache::ProxyStuff puts the headers and footers where they belong in the HTML
document so you can use existing content and even modify the BODY attributes to
meet your needs.

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

I'm tired of being a wanna-be league bowler, I wanna be a league bowler!

-- Homer Simpson
   Team Homer




RE: Adding an entry into .htpasswd

2000-08-14 Thread jbodnar

CPAN is your friend:

http://search.cpan.org/doc/KMELTZ/Apache-Htpasswd-1.3/Htpasswd.pm

On 14-Aug-2000 Shuba Simha wrote:
 Can anybody tell  me if there is any way to add an entry into ".htpasswd"
 from a perl script, without getting prompted for the password? Meaning..I
 have the password in a variable(say $new_pass),   want to change the
 password of a particular user from old_pass to $new_pass. How can this be
 done through the script, without getting the prompt to "Type new password"?
 
 Any help ASAP is very much appreciated.
 Thanks..
 Shuba
 
 
 
 
 

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Rock 'n' Roll had become stagnant.  `Achy Breaky Heart' was seven years
away.  Something had to fill the void, and that something was barbershop.

-- Homer Simpson
   Homer's Barbershop Quartet




RE: Expect Problem

2000-08-02 Thread jbodnar

You've got the wrong mailing list. This list is for the discussion of the
mod_perl Apache module. You probably want to contact the module author or try
comp.lang.perl.misc or comp.lang.perl.modules or comp.lang.perl.moderated. Or
maybe even www.perlmonks.org.

On 02-Aug-2000 [EMAIL PROTECTED] wrote:
 I'm using the Expect module to perform some shell commands to automate some
 processing, but for some reason I'm not able to perform an "rm" function as
 I would from a shell prompt. All I want to do is to delete all of the files
 in the directory without a prompt or without using a recursive option. The
 command I would like to execute would be like the following shell command
 for a remove of all files starting with I*, i*, x*, y*, etc. The command
 that I would normally use would be rm /directory/[Iixy]* and this works. I
 have the same code included in my script, yet the "rm" doesn't seem to want
 to execute. Note that the before buffer contains the copy and the "rm".
 
 The files get copied without any problem and I can substitute the rm with
 another command and it seems to execute. Why is "rm" any different?
 
 Any suggestions, comments or other would be greatly appreciated.
 
 
 
 Sample Code:
 print "\n Start of the copy process $TFTPCopy -- $BackupDirectory \n\n";
 $command-debug(2); unless ($InvalidSwitch){  # Copy the files
 $CopyMembers=$TFTPCopy."[Iixyz]*";
 print $command "cp $CopyMembers $BackupDirectory\n";
 unless  ($command-expect(undef,"")){   # Copy failed
 
  print " ** \"\"  copy failed   \n";
  print " BACKUP FAILED\n ";
  die "FATAL Error  $TFTPServer";
  }
 }
 print "\n Delete All $CopyMembers in the $TFTPCopy directory \n ";
 print " execute the command rm $CopyMembers \r\n\r";
 unless ($InvalidSwitch){ # Copy the files
 print  $command "rm $CopyMembers\n";  # Set the enable
 unless  ($command-expect(undef,"")){   # Copy failed
$PrintMsg1= "** Delete of members failed  \n";
  $PrintMsg2= "Delete of the files in the $TFTPCopy Failed \n";
   PrintFailure();  # Print Failure Routine
die "FATAL Error  $TFTPServer";
  PrintFailure();  # Print Failure Routine
  }
 }
 PrintFailure();   # Print Failure Routine
 }
 
 "Killed after the delete \n";} # End of the CopyToBackup
 
 
 Diagnostic Display :
 
 shvop701shvop701 Start of the copy process /home/tftpuser/ --
 /tmp/tftpbackup Beginning expect from spawn id(5).
 Accumulator: 'shvop701'
 Expect timeout time: unlimited seconds.
 expect: Pty=spawn id(5), time=965236546, loop_time=undef
 Matched pattern 1 ('')!
  Before match string: 'shvop701'
  Match string: ''
  After match string: ''
 Returning from expect successfully.
 Accumulator: ''
  Delete All /home/tftpuser/[Iixyz]* in the /home/tftpuser/ directory
 execute the command rm /home/tftpuser/[Iixyz]*
 Beginning expect from spawn id(5).
 Accumulator: ''
 Expect timeout time: unlimited seconds.
 expect: Pty=spawn id(5), time=965236546, loop_time=undef
 expect: handle spawn id(5) ready.
 expect: read 44 byte(s) from spawn id(5).
 cp /home/tftpuser/[Iixyz]* /tmp/tftpbackup
 expect: handle spawn id(5) ready.
 expect: read 28 byte(s) from spawn id(5).
 rm /home/tftpuser/[Iixyz]*
 expect: handle spawn id(5) ready.
 expect: read 11 byte(s) from spawn id(5).
 shvop701Matched pattern 1 ('')!
  Before match string: 'cp /home/tftpuser/[Iixyz]* /tmp/tftpbackup\r\nrm
 /home/tftpuser/[Iixyz]*\r\nshvop701'
  Match string: ''
  After match string: ''
 Returning from expect successfully.
 Accumulator: ''
 
 
 **
 ++   FAILURE of EXPECT  +  **
 Values of the match()
 
 Before(cp /home/tftpuser/[Iixyz]* /tmp/tftpbackup
 rm /home/tftpuser/[Iixyz]*
 shvop701)
 
 After()  **
 
 Killed before the delete

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Marge: Wow, you can't find this stuff anywhere.  Seals and Crofts, Pablo
   Cruise, Air Supply, oh, Loggins and Oates...and it's free!
 Lisa: I've never heard of these bands, Mom, what kind of music do they 
   play?
 Bart: Crap rock?
Marge: [thinking] No...
Homer: Wuss rock?
Marge: That's it!

Viva Ned Flanders




RE: [OT] Abstract-Database Class

2000-07-28 Thread jbodnar

Look at Michael Schwern's Class::DBI on CPAN.

On 28-Jul-2000 Michael Nachbaur wrote:
 Warn priority="low"
   warning class="Off Topic"/
   warning class="Long"/
 /Warn
 
 I'm not exactly sure where to send this, but here it goes:
 Has anyone completed/started an abstract database class at all?  I've written
 some for very specific applications, but I want a more general-purpose tool. 
 I'm about to start development on one, but wanted to get feedback from the
 world-at-large to see what features you would want first (or if anyone has
 already started one).
 
 The classes I've created/used before, are like:
 my $order = new Order( oid = '1234567' );
 $order-fetch();
 foreach my $order_line ( $order-Lines ) {
   print $order_line-Description, $order_line-Price;
 }
 
 I'd like to interact with a database, update data, save data, etc.  without
 having to actually call any SQL code.  And, if I modify my database schema,
 I'd like the classes to automatically adapt.
 
 The way I've done this before, is create a series of classes with AUTOLOAD
 subs in them which intercept the name of the method being called, and then
 updating that specific field in the record.
 
 How I"d like to implement it would be to define an XML file with represents
 the way my data is structured in the database.  This way, the objects can
 determine when to cache data, and when to commit its values to the database
 for maximum efficiency.  An example could be:
 schema name="mp3_site" database="DB0" database_vendor="Oracle"
 database_version="8.1.5" username="nachbaur" password="you_wish"
 table name="artist" primary_key="id"
 field name="name" type="varchar" size="256" options="not null" 
 /table
 table name="album" primary_key="id"
 field name="parent_id" references="artist" options="not null"/ 
 field name="name" type="varchar" size="256"  options="not null"/ 
 field name="image" type="varchar" size="4000" / 
 /table
 table name="track" primary_key="id"
 field name="parent_id" references="album" options="not null"/ 
 field name="name" type="varchar" size="256"  options="not null"/ 
 field name="filename" type="varchar" size="4000"/ 
 field name="filesize" type="integer"/ 
 /table
 /schema
 
 Now, obviously thats not that perfect of an example (but I"m in a hurry,
 'cause I need to go get some coffee), but it illustrates that the class could
 import that XML file, which defines the way it should interpret data.  So, it
 could fetch a particular record, and depending on how you tell it to operate,
 it could suck down all the data that the inital record refers to, or could
 retrieve it as-needed.
 
 It may not operate as efficiently as possible by default, but would give much
 more flexibility to the programmer.  I know that when I'm lazy, I don't want
 to bind all my values, and make sure I'm using optimized SQL statements
 (explain plan, and that sorta thing).  With this, I could "pre-define" SQL
 statements in this XML file that are pre-optimized, and I can just say:
 $db-run('do_really_scarry_join', %options);
 
 Sory for the long message.  Would anyone like a module like this, or would I
 be just wasting my time? Anyone already have something like this?  Any
 feedback would be appreciated (except flames and spam).
 
 --man
 Michael A. Nachbaur (KE6WIA)
 mike(at)nachbaur(dot)com
 http://www.nachbaur.com
 "Only two things are infinite, the universe and human stupidity, and I'm not
 sure about the former." - Albert Einstein

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Oh, well, of course, everything looks bad if you remember it.

-- Homer Simpson
   El Viaje Misterioso de Nuestro Homer




RE: [is it time for something other than html?] RE: Templating s

2000-07-27 Thread jbodnar

 I could go off about why HTML sucks for dynamic page caching. If there was
 somehow a way to cache say the template, leaving only the same dynamic
 portion uncached, it would certainly help things along quite a bit. If
 anyone knows of a good way of doing this I would certainly be interested
 in hearing it. 

There is. Use HTML::Embperl.

I've been using it for several years now. I build objects for accessing any
data I need and then do simple things in my templates like:

H2[+ $forum-title +]/H2

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

If it'll make you feel any better, I've learned that life is one crushing
defeat after another until you just wish Flanders was dead.

-- Homer Simpson
   Homer and Apu




RE: [is it time for something other than html?] RE: Templating s

2000-07-27 Thread jbodnar

On 27-Jul-2000 Jauder Ho wrote:
 
 No. The problem is that you cannot cache the subsequent page that is
 generated because of the dynamic component. The template is always going
 to remain the same (interface changes should be rare for a stable web
 site), but the content (say news headlines or personalized component) is
 going to be dynamic. It is not reasonable to expect to cache that entire
 page. So what I am saying is that using HTML for such purposes is
 fundamentally broken unless we can figure out to tag a region of an html
 file as non-cachable i.e. dynamic. 

All the HTML is chached. Are you saying you want to cache everything including
the output of dynamic components? If so, then just stick squid in front of your
server.
 
 And as I replied to another reply about this, embedding code in a HTML
 file strikes me as an inelegant solution plus it leads to all sorts of
 problems such as html "designers" that delete tags for whatever reason. I
 know that the correct solution is to lart them but we can't always do that
 no matter how much we would like to :).

If you've got designers deleting tags then you need to educate them or fire
them. You cannot be flexible on that issue. Also, embedding code in HTML is no
different then putting arbitrary tags that some of the "templating" solutions
use. 

My last job was with Tivoli Systems and I used HTML::Embperl with great success
in several applications including ones that involved "designers" going in and
modifying pages with embedded perl code.

 On Thu, 27 Jul 2000 [EMAIL PROTECTED] wrote:
 
  I could go off about why HTML sucks for dynamic page caching. If there was
  somehow a way to cache say the template, leaving only the same dynamic
  portion uncached, it would certainly help things along quite a bit. If
  anyone knows of a good way of doing this I would certainly be interested
  in hearing it. 
 
 There is. Use HTML::Embperl.
 
 I've been using it for several years now. I build objects for accessing any
 data I need and then do simple things in my templates like:
 
 H2[+ $forum-title +]/H2
 
 -- 
 Jason Bodnar + [EMAIL PROTECTED] + Team Linux
 
 If it'll make you feel any better, I've learned that life is one crushing
 defeat after another until you just wish Flanders was dead.
 
 -- Homer Simpson
Homer and Apu
 
 

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Yeah, Moe, that team sure did suck last night!  They just plain
sucked!  I've seen teams suck before, but they were the suckiest bunch 
of sucks that ever sucked!

-- Homer Simpson
   Team Homer




Re: [is it time for something other than html?] RE: Templating s

2000-07-27 Thread jbodnar

On 27-Jul-2000 Jauder Ho wrote:
 
 
 The template may be kept in memory but it needs to be reparsed to insert
 real values, no? What I would like to see is a way to say the template is
 static (header/footer) and does not need to be reparse/regenerated each
 time and comparitively small portion of the page be dynamic. This way, you
 can also store the html on the front end web server or akamize it and
 concentrate on having the app servers provide only the actual data. 

The template does not have to reparsed every time. At least with Embperl, the
cached p-code is re-executed but that's it.

If you want to store headers and footers on a seperate machine and wrap them
around dynamic content take a look at my Apache::ProxyStuff module. It doesn't
cache the headers and footers but that feature would be quite easy to add.
 
 --Jauder
 
 PS. I guess now that I think more about it, we can accomplish this with
 frames but that's a whole other story :)
 
 On Thu, 27 Jul 2000, Perrin Harkins wrote:
 
 On Thu, 27 Jul 2000, Jauder Ho wrote:
  If there was somehow a way to cache say the template, leaving only the
  same dynamic portion uncached, it would certainly help things along
  quite a bit. If anyone knows of a good way of doing this I would
  certainly be interested in hearing it.
 
 I believe every single one of the solutions discussed caches templates,
 most of them as compiled perl code.
 - Perrin
 
 

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Weaseling out of things is important to learn.  It's what separates us
from the animals.  Except the weasel.

-- Homer Simpson
   Boy-Scoutz n the Hood




Re: Templating System

2000-07-27 Thread jbodnar

On 27-Jul-2000 Joshua Chamas wrote:
 I agree with your thoughts completely.  One of the reasons why 
 I built Apache::ASP was that ASP is a widely used standard,
 albeit one that Microsoft developed.  I wanted to be able to 
 leverage the mindshare of ASP scripters  from a templating
 standpoint, and this is part of the reason why I didn't 
 run with Embperl in the first place.  

That doesn't make sense. Granted, Embperl isn't any kind of standard, but any
Perl programmer should be able to pickup Embperl in a day or so and Perl is
pretty much THE standard for CGI-based web development.

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Woman:  Your son was trespassing on my property and destroyed a very
valuable stone gargoyle, and -- Are you wearing a grocery bag?

Homer:  I have misplaced my pants.

   Bart After Dark




Re: mod_eprl or PHP

2000-07-26 Thread jbodnar

PHP does not require mod_perl. They are completely seperate (and often do not
like each other when loaded as DSOs).

On 26-Jul-2000 Erich L. Markert wrote:
 This is also comparing apples and oranges since PHP requires mod_perl...
 
 A better comparison would be HTMLEmbperl vs. PHP
 
 Or mod_perl vs. java server pages, ASP, etc...

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Oooh ... maca-ma-damia nuts.

-- Homer Simpson
   Bart's Dog Gets an F




RE: Newbie Installation Problem

2000-07-25 Thread jbodnar

On 25-Jul-2000 Adelaide Yip wrote:
 ModPerl 1.24 configures fine on Redhat 6.2, but sometimes during it's
 installation I receive this error ...
 Warning: You do not have permissions to install into
 /usr/lib/perl5/site_perl/5.005/i386-linux at
 /usr/lib/perl5/5.00503/ExtUtils/Install.pm line 61.
 mkdir /usr/lib/perl5/site_perl/5.005/i386-linux/auto/Apache/include:
 Permission denied at /usr/lib/perl5/5.00503/ExtUtils/Install.pm line 114
 make: *** [pure_site_install] Error 2 

The error says it all. You don't have permissions to install into the standard
perl lib directory. You probably need to be root.

If you want to install somewhere other than the standard lib directory than you
need to add: PREFIX=/tmp/foo/bar to your ./configure command.

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Homer:  I keep hearing this horrible irregular thumping noise.

Pump Jockey:
It's your heart.  And I think it's on its last thump.

Homer:  Whew, I was afraid it was my transmission.

   Homer's Triple Bypass




RE: Perl as DSO...whats wrong with it, specifically?

2000-07-25 Thread jbodnar

I run mod_perl as a DSO without a problem. Just don't try to mix it with php as
a DSO.

On 25-Jul-2000 Michael Nachbaur wrote:
 I'm working with IBM (sorry!  Its not my choice!) to try to get mod_perl
 compiled into their custom version of Apache, and their techs want to know
 why I can't run mod_perl as a DSO.  So, I need to know, whats specifically
 wrong with it?  Like, what are the repurcussions of it?  This is going to be
 run under a lot of load as well.
 
 Thanks for your feedback in advance.
 
 --man
 Michael A. Nachbaur (KE6WIA)
 mnachba(at)rei(dot)com
 mike(at)nachbaur(dot)com
 http://www.nachbaur.com
 "Only two things are infinite, the universe and human stupidity, and I'm not
 sure about the former." - Albert Einstein

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Uh, so.  Let's have a conversation.  Uh, I think we'll find that we have
very little in common.

-- Homer Simpson
   The Last Temptation of Homer




RE: Newbie Installation Problem

2000-07-25 Thread jbodnar

The permissions problems don't appear to be with the ExtUtils directory. It's
trying to mkdir /usr/lib/perl5/site_perl/5.005/i386-linux/auto/Apache/include.
Somewhere among those directories you don't have permission.

And, I misspoke before about PREFIX. First, PREFIX doesn't do everything
correctly. You need to use 'LIB=/tmp/foo/bar INSTALLMAN3DIR=/tmp/foo/bar/man'.
Second, PREFIX, LIB or whatever for mod_perl needs to be added to 'perl
Makefile.PL' as so:

perl Makefile.PL whatever mod_perl/apache options you're setting
LIB=/tmp/foo/bar INSTALLMAN3DIR=/tmp/foo/bar/man

On 25-Jul-2000 Adelaide Yip wrote:
 I tried doing PREFIX=/usr (I'm using Redhat layout), but still the same
 error. 
 I also checked the permissions and I did have write permissions to
 /usr/lib/perl5/5.00503/ExtUtils/ .  Thing is, I installed with no problems
 yesterday using the same method as today and now it suddenly has an error.
 
 Anyways, thanks for your time Jason.
 
 Adelaide =)
 
 
 
 On Tue, 25 Jul 2000, you wrote:
 On 25-Jul-2000 Adelaide Yip wrote:
  ModPerl 1.24 configures fine on Redhat 6.2, but sometimes during it's
  installation I receive this error ...
  Warning: You do not have permissions to install into
  /usr/lib/perl5/site_perl/5.005/i386-linux at
  /usr/lib/perl5/5.00503/ExtUtils/Install.pm line 61.
  mkdir /usr/lib/perl5/site_perl/5.005/i386-linux/auto/Apache/include:
  Permission denied at /usr/lib/perl5/5.00503/ExtUtils/Install.pm line 114
  make: *** [pure_site_install] Error 2 
 
 The error says it all. You don't have permissions to install into the
 standard
 perl lib directory. You probably need to be root.
 
 If you want to install somewhere other than the standard lib directory than
 you
 need to add: PREFIX=/tmp/foo/bar to your ./configure command.
 
 -- 
 Jason Bodnar + [EMAIL PROTECTED] + Team Linux
 
 Homer:  I keep hearing this horrible irregular thumping noise.
 
 Pump Jockey:
 It's your heart.  And I think it's on its last thump.
 
 Homer:  Whew, I was afraid it was my transmission.
 
Homer's Triple Bypass

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Homer:  Ooh, look at this one!  The Hammer of Thor!  (Reading)  "It
will send your pins to ... Valhalla?"  Lisa?

Lisa:   Valhalla is where vikings go when they die.

Homer:  Ooh, that's some ball.

   The Telltale Head




RE: ORA conference

2000-07-14 Thread jbodnar

Well, perhaps we should organize an informal mod_perl BOF (Beer's Our Friend)
Sunday night? Can anybody remember and recommend a bar or pub from last year?

On 14-Jul-2000 Ahrendt, Robert wrote:
  I know you all don't know me but if you do find someting to do on sun.
 night (I.E. grab a beer or something). Let me know I should be in town
 around 10pm and have never been to Monterey so I don't know what's up.
 
 -Original Message-
 From: Jeffrey W. Baker
 To: Vivek Khera
 Cc: [EMAIL PROTECTED]
 Sent: 7/14/00 10:52 AM
 Subject: Re: ORA conference
 
 On Fri, 14 Jul 2000, Vivek Khera wrote:
 
  "MS" == Matt Sergeant [EMAIL PROTECTED] writes:
 
 
 MS Does anyone know if all the events will be in the program, or
 should I
 MS start making entries in my palm pilot?
 
 I started to do that, then realized that I don't have a palm pilot and
 was actually writing on my palm.  Most annoying, but effective, I
 guess.
 
 Anyone comeing to town Sunday?  I gotta find something to do Sunday
 night...
 
 I'm coming down on Sunday.  I'll be motorcycling, if anyone wants to
 join
 me for a ride from SF to Monterey.
 
 Cheers,
 Jeffrey

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Yeah.  Wait a minute.  It's the guy from TV.  My kid's 
hero...Cruddy...Crummy...Krusty the Clown!

-- Homer Simpson
   Krusty Gets Busted




RE: ORA conference

2000-07-14 Thread jbodnar

I think there was also a very cool British pub a few blocks from the conference
...

On 14-Jul-2000 Biggs, Jody wrote:
 and once more, you guys probably don't know me, but...
 
 I remember there were a couple places out near the end of the pier - can't
 remember any names though...  Place at the very end had a separate bar area,
 though it was really mainly a restaurant - the one I recall not as far down
 looked like it was a true bar/pub kind of place...
 
 I should be getting in around 8PM with three others from my company
 
  - Jody Biggs
 
 
 
 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
 Sent: Friday, July 14, 2000 11:46 AM
 To: Ahrendt, Robert
 Cc: [EMAIL PROTECTED]; Vivek Khera; Jeffrey W. Baker
 Subject: RE: ORA conference
 
 
 Well, perhaps we should organize an informal mod_perl BOF (Beer's Our
 Friend)
 Sunday night? Can anybody remember and recommend a bar or pub from last
 year?
 
 On 14-Jul-2000 Ahrendt, Robert wrote:
  I know you all don't know me but if you do find someting to do on sun.
 night (I.E. grab a beer or something). Let me know I should be in town
 around 10pm and have never been to Monterey so I don't know what's up.
 
 -Original Message-
 From: Jeffrey W. Baker
 To: Vivek Khera
 Cc: [EMAIL PROTECTED]
 Sent: 7/14/00 10:52 AM
 Subject: Re: ORA conference
 
 On Fri, 14 Jul 2000, Vivek Khera wrote:
 
  "MS" == Matt Sergeant [EMAIL PROTECTED] writes:
 
 
 MS Does anyone know if all the events will be in the program, or
 should I
 MS start making entries in my palm pilot?
 
 I started to do that, then realized that I don't have a palm pilot and
 was actually writing on my palm.  Most annoying, but effective, I
 guess.
 
 Anyone comeing to town Sunday?  I gotta find something to do Sunday
 night...
 
 I'm coming down on Sunday.  I'll be motorcycling, if anyone wants to
 join
 me for a ride from SF to Monterey.
 
 Cheers,
 Jeffrey
 
 -- 
 Jason Bodnar + [EMAIL PROTECTED] + Team Linux
 
 Yeah.  Wait a minute.  It's the guy from TV.  My kid's 
 hero...Cruddy...Crummy...Krusty the Clown!
 
 -- Homer Simpson
Krusty Gets Busted

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Time to fertilize the lawn.  A couple of 500-pound bags should do it!

-- Homer Simpson
   Homer vs. Patty and Selma




RE: Idea of an apache module

2000-07-12 Thread jbodnar

Yes. It's Apache::Registry.

On 12-Jul-2000 Luis Henrique Cassis Fagundes wrote:
   Hi,
   Recently I started to have problems in developing my CGIs because in my
 new job most of the servers run Netscape instead of Apache. The
 administrator told me that the reason is that Netscape has a better
 performance than Apache 1.3. I'm now developing a module that caches in
 disk dynamic generated pages, and an interface to delete parts of this
 cache when something is modified.
   Does anyone know if something like this has already been developed?
   Thanks.
 
   []s
   Luis

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

Marge, you're my wife and I love you very much.  But you're living in a
world of makebelieve.  With flowers and bells and leprechauns.  And magic
frogs with funny little hats...

-- Homer Simpson
   Blood Feud




RE: Idea of an apache module

2000-07-12 Thread jbodnar

Sorry. I was attempting to answer what I thought was his real question. He
mentioned performance of CGI scripts and so Apache::Registry would be the ideal
choice. I don't think he wants to rewrite his CGIs so the template packages
won't work for him.

On 12-Jul-2000 Vivek Khera wrote:
 "j" == jbodnar  [EMAIL PROTECTED] writes:
 
 j Yes. It's Apache::Registry.
 
 No.  Registry does not cache the generated pages.  Try any of the
 standard "template" packages like Mason or AxKit.

-- 
Jason Bodnar + [EMAIL PROTECTED] + Team Linux

It says it's for dogs, but she can't read.

-- Homer Simpson
   Simpson's Roasting on an Open Fire




RE: Coldfusion vs. apache/mod_perl

2000-07-05 Thread jbodnar

I just left a company that used either mod_perl or coldfusion for our intranet
development. I never did any coldfusion development but I did have to deal with
maintaing the coldfusion server and apps. 

coldfusion crashed several times in the three or four months I was involved
with it. We never could determine what the problem was. 

coldfusion (like Apache/mod_perl) eats memory. Our coldfusion processes usually
used a total of 200MB of memory.

coldfusion does not play well on unix (at least solaris). Allaire's site
recommended changing some kernel parameters to get the best performance out of
cold fusion. That was something we weren't willing to do on a box that had much
more than CF running on it.

To my knowledge, CF does not give you the power to mess with the web servers
API like mod_perl does. You may or may not need this ability.

IMHO, mod_perl applications easily out-performed our CF apps.

One plus for coldfusion, there seems to be more CF developers out there (at
least in Austin, TX) but that may be a sign that very few people are using CF.

My opinion: stick to mod_perl, it won't let you down.

On 05-Jul-2000 Bas wrote:
 Hi all,
 
 this is probably gonna be a longish one. It's about coldfusion vs. the
 combination of apache/mod_perl, I'm hoping to find some people on the list
 who have some experience with both, and who maybe faced a similar question.
 I've been searching the Net for a few days now to find opinions, but espec.
 in comparison to the apache/mod_perl combo, I couldn't find that much.
 
 Some intro: I work for a content syndication company; basically, we receive
 tons of different newsfeeds, we classify the content, both manually as well
 as automatically (based on fulltext and metadata queries), we add some extra
 content if it's not in the incoming data (for instance, we create a smaller
 version of a news story so it reads better on a WAP device), then we have
 quite a bit of distribution options: we do HTML, plain text, XML, using
 transports such as FTP, e-mail, HTTP Post, as well as host the news which
 customers can include dynamically in their website.
 
 The parts that involve website development are currently done exclusively
 using apache and mod_perl, this makes up about 35% of our overall system.
 
 Now, it seems that Allaire's product, Spectra, does offer us a solution to
 (parts of) our problems. I'm not sure yet exactly what problem it solves, we
 still have to establish that, but let's assume it does. Spectra is a product
 built using Allaire's ColdFusion. That means that if we have to add
 functionality to Spectra, we'll be using coldfusion to develop that.
 
 To assess coldfusion, I installed the eval version on one of our Linux boxes
 to explore it.
 
 Here are some of my observations:
 
 1- "Code inside HTML"
 
 coldfusion's like PHP or ASP in that you embed most of your code inside HTML
 pages. 
 
 I don't like it; I prefer to use some templating system that allows our HTML
 wizards to edit HTML, and our perl wizards to code perl.
 
 But let's not start that discussion: we've seen it before ;)
 
 
 2- Feature comparison
 
 If I compary the features available in the coldfusion appserver with the
 available options for mod_perl, I don't see a lot of extra's:
 
 - session management
 
 We do that using our own Web::Session implementation (very much like
 Apache::Session). It can do that either using cookies or stick the session
 id in the URL. coldfusion seems to require cookies.
 
 
 - database connection pooling
 
 We use Apache::DBI;
 
 
 - Scheduled tasks
 
 We use cron;
 
 
 - Sending mail from within the appserver
 
 Tons of CPAN modules can do this. Great MIME stuff there too;
 
 
 - Retrieve web page and stick into local file
 
 This is a built-in feature of the appserver. lwp-mirror can do this just
 fine.
 
 
 - coldfusion can use COM (or is that ActiveX?)
 
 Apparently, there are a lot of those thingies to stick into coldfusion and
 use that from within your code.
 
 We run HP-UX; those won't work for us.
 
 
 - coldfusion can be clustered (apparently automagically)
 
 So far I haven't had the need to do this; our HP box with 4 processors never
 gets a load above 0.2.
 
 I assume with Apache running on a few boxes, some load-balancing hardware in
 front of those, and some URL rewriting and/or smarter session management,
 clustering could be accomplished as well. I doubt we need this though. If we
 do high volume content serving, I'll convert the dynamic content to static
 html or xml, ftp them over to a box running a non-mod_perl Apache and serve
 'm from there. I never measured this too well, I think it did something like
 400 reqs/second on Intel hardware running Linux.
 
 
 3- Complexity of layers (or would those be called 'tiers'?)
 
 With mod_perl, I have to make sure Apache runs (Ok; I need to get the stuff
 compiled too. I can do that. By now ;)), so far, I haven't seen Apache go
 down ever. With coldfusion, aside from Apache, I have to make