I'm not a coder, vlastimil, so can't go the code my own way - not sure I'd want to try that anyway, reinventing the wheel (or wheels) and all that. I see your point about spam but I think the usual methods are okay for me. Maybe that's something for me to worry about when it happens and the spam is out of control.
housetier, thanks, I'll keep in mind about outside services. Currently, this Drupal adventure is more of a personal project and may never result in a live site. I just want to see how Drupal compares to what I've been trying to do with Joomla/Fabrik. If it appears that Drupal really would have been the better cms to use, then I'll make the effort to learn as much as I can about it. If it looks like I'm going to get just as much stress from Drupal then I'll not bother with it. I'm not a coder and don't understand good database structure. I'm hoping using Drupal means I don't have to learn lots of coding and mysql too - if that's the case, I may as well stick with Fabrik and start learning how to customise it.
I'll look into the Apress Pro books. That sounds like a good place to start.
Maybe I should ask a question about Drupal before dipping my toe in...
I need "members" to a site to be able to enter about 20 items into a form. The items will either be hidden or visible to the member depending on their role. Each member does this by logging into the front-end of the site and is presented with a form specific to their role. The majority of this data is then searchable, by anyone, on the front-end of the site - some of the data will not be available to the public.
Now, to me, that all sounds perfectly reasonable to expect something like Joomla and Fabrik to do. AND it does. But it does it in a terrible way. I want to be able to control the size of photos and data displayed in specific layouts - this is where it all falls apart. It simply means having to look for custom coding solutions - which I don't want.
So, my understanding is that Drupal is the perfect machine for the above task. That's it's raison d'être - exact and minute control over every element going into the system and then coming back out.
If it can't do that without getting my hands dirty with coding, etc. then it's not for me. I'm expecting all the work to be done with ready made modules, people will have solved all the common problems already, the modules will just need setting up.
Am I right?