Python
4-space indent.
Scala
Basics: 2-space indent, class and package names as per Java, type annotations should follow "value: Type" rather than "value : Type". Mostly follow Java, Ruby and IMHO common sense.
My personal preferences
- 2 or 4 space indents. Not particularly bothered about tabs-vs-spaces, I just want my editor to do the right thing and not make me think about it.
- Braces, if present, in One True Brace Style. Or K&R. Definitely not GNU - that's some mad crazy shit.
- I find that upper-casing the first character of method names as the .NET library does is weird. Ruby style (send_email) or Java style (sendEmail) is preferable, but obviously, if you are in .NET-land, do as the locals do.
- Vertical alignment doesn't matter. Indent run-on method calls and blocks etc. but don't spend a lot of time tabbing away to make stuff line up.
- I like Scala's way of doing type declaration ("foo: String") over how C/Java does it ("String foo").
- No to Systems Hungarian Notation. It may have been useful way back when. In any language in common use today, it's not necessary. If your type system is not fit for the purpose you are attempting to put it to, the solution is to get a better type system, not to paper over the shortcomings of the type system using variable naming.
- As for Apps Hungarian: no. Use a wrapper object instead. Or something more like Ruby's "taint" methods.