To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.admin.generalOpen lugnet.admin.general in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Administrative / General / 13060
13059  |  13061
Subject: 
Re: LUGNET's code [was: Random thought of the day]
Newsgroups: 
lugnet.admin.general
Date: 
Tue, 19 Jul 2005 03:10:24 GMT
Viewed: 
3555 times
  
On Tue, Jul 19, 2005 at 02:34:09AM +0000, Suz wrote:
LUGNET was built as a community project, and so grew in an organic
way. Features were added as needed, and per the requests of users.
Thus some code may have been written after some other which ideally
would have anticipated it. Todd hoped to go back and clean things up,
while also documenting the code so he could release the whole bit for
free. Unfortunately, he (AFAIK) didn't even include comments in there.
So, for guys even as smart as DaveE and DanB, they must poke around a
bit to determine how Todd went about this or that.

The code does take some getting used to.  Reading Todd's code was
sometimes really amazing - you'd see he was planning for things you know
he had no idea he will need one day.  And whenever solving a new problem,
there were always many hooks to adapt the solution to future needs.

Unfortunately, since there isn't any real documentation, every time we
were trying to debug a problem, or code a new feature, we had to
literally trace through the code to see what happens where.

One of the main goals I always wanted to achieve for LUGNET was entering
all the code in a repository (CVS or SVN) so that changes will be easy
to track, a development server could be built for testing, and to allow
multiple coders to work at the same time.  Sadly, for many reasons, I
never got a chance to actually do that.

Another issue is the custom technique Todd used for embedding Perl in
HTML. He wasn't happy with how others were doing it at the time, so
devised his own thing. PML(?) It's really cool, but not documented
either.

PML is odd - it doesn't take much to learn it, but it does make
debugging problems VERY difficult.

Oh. And no CSS or templates either. And "membership-land" and
"newsposting-land" are not connected how one'd hope.

Right - but I always thought those things were solvable, at least to
some extent.

The way I see it, to really get the code to a place where it can be
worked on effectively, we need to do the following:

- Code repository
- Dev/test server
- Migrate from PML to a modern templating system (Mason would probably
  be easiest, Template Toolkit might work too)
- Migrate the code to a more modular approach - not necessarily objects,
  but a more organized setup.
- Migrate from the custom database that Todd wrote (which IS pretty
  cool) to a relational one, such as MySQL or Postgres.

fyi: <http://www.mediacollege.com/internet/perl/perl-vs-php.html>

I think writing something as complex as LUGNET in a language such as PHP
would be a terribly idea.  I know I'm extremely biased towards Perl, but
I really do believe that this project is too large for PHP.

--
Dan Boger
dan@peeron.com



Message is in Reply To:
  LUGNET's code [was: Random thought of the day]
 
(...) yes. this touches on what I meant. And let me say, NNTP and the e-mail lists are extremely important to me. Todd was teaching himself Perl as he created LUGNET. This is what I'd call "personal project driven learning." Anyone who's done this (...) (19 years ago, 19-Jul-05, to lugnet.admin.general, FTX)

47 Messages in This Thread:























Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR