Speaking as a novi (novi === newbie), without a dog in the matter (except that I'd like scaladoc to support runnable @example [even as compiled to javascript] and I'd like it to do what Swing knew it needed, namely, a way to express "slices" of a fat interface [for pedagogic purposes, at least]):
I noticed somewhere the recommendation for the * aligned at the second star of /**. I assumed it was another Martinism, like "+ (no space intervening) for string concat (though in fact he abjures the new scaladoc alignment).
My contribution to the conversation: as an adopter, it actually helps me to have mnemonic cues that I'm "not in Kansas anymore."
When I switched from C to Java, switching from K&R braces (where vi's ]] works) reminded me what I was up to. My method braces are also line-ending, and it seems somehow pathetic when I see them on the next line.
Similarly, in adopting Scala, I follow Martinisms such as "+ religiously because it tells my brain which language my fingers are typing (where typing means "striking keys on a keyboard", and not what a typechecker does).
This issue is especially acute when coding as a novi in both Java and Scala. Just switching from "Foo foo" to "def foo: Foo" (while trivial) results in a certain number of "argh"-edit-recompile moments each day.
My reaction to the "new scaladoc convention": Isn't that odd, but look, it makes perfect sense, because the indentation aligns with that other Scala convention, :se tabstop=2. (I.e., the stars align with my method code.)
It's worth noting that four-space indentation looks legacy to me now.
Recall that in C, tabs were useful because they would print (on paper, which one never uses these days) at ts=8, but at ts=4 on a CRT. In these latter days, ts=2 (albeit tabs converted to spaces). This is a powerful cue (to the brain, or whatever subsystems thereof) that we are coding in Scala and not in legacy languages.
In this spirit,
/** This method does something * that will blow your mind
*/
def foo: Foo = {
something()
mindBlowing // aligns with doc stars
}
is cognitively useful. Just as one likes to write a one-liner function if possible, one writes a one-liner doc comment (for the same reason, brevity) but later expands it by hitting <return> and writing more words.
I was raised to ensure my C code was "self-documenting." I would propose that Scala's putative "dearth of documentation" is really a search for the sweet spot of self-documentaton, with many one-liners and occasional multi-liners. Long docs are probably really @examples.
The old song goes, "Everything's up-to-date in Kansas City," so maybe one doesn't want a cue that one isn't in Kansas anymore.