What kind of device do you want to control?
For most purposes, you can rig up the data pins as outputs from the computer, and status pins as inputs from the controlled device (if you want any feedback from it).
If it's just a question of turning relays on and off, then you can just set the appropriate bits on the data lines. To control serial devices, the serial port is the better option; it can be set to emit just about any kind of data frame.
I've just skimmed through it; ppdev doesn't look that scary to me. You need to call ioctl() several times, passing it the file descriptor from the /dev/parport0 file. Call ioctl with PPCLAIM (to get the port) then PPEXCL (to get an exclusive lock).
You can set the control lines with
Code:
ctrl = PARPORT_CONTROL_STROBE | PARPORT_CONTROL_AUTOFD | PARPORT_CONTROL_INIT | PARPORT_CONTROL_SELECT;
ioctl(fd,PPWCONTROL,ctrl);
You can use write() to write a byte to the port, and ioctl(fd,PPRSTATUS,pChar); to get the status bit values in *pChar;
Then call ioctl with PPRELEASE when you're finished.