sidetracked with a module. used for practice, and to get more familiar with xoops module architecture total time spent: 6 hours (including spit shine). Not too bad, but found some rough spots in documentation making effective blocks was very hard, especially since the single best reference was hsalazar's how to hack a block.
Difficulty? Options for the block. They are not handled by config options, but instead part of the BLOCKS array in the $modversion array. Additionally, they are pipe-delimited, and seperated into an array before being passed to the module function. Language settings will use MB and are located in blocks.php, not modinfo.php. If your module consists primarily of blocks, then 99% of your language things will be in the blocks.php file. In conclusion, the blocks subdirectory functions VERY independently of the main module directory.
of additional note, you need to make things such as xoopsUser, xoopsModule, etc as global in your block's function. This is because the blocks do not inherit the scope of the module, and therefore do not have direct access to these objects. This can simply be remedied by stating: global $xoopsUser or replace $xoopsUser with whatever object class you need available.
templating with smarty went okay. I am thinking of designing with a wysiwyg, and then fine tuning / tweaking with hand based html code.
For reference, completed module (SymantecAlert) is located here.
In response to "NetProject: 01/05":