The code block tries to guess the language. I tried to implement it such that you could force it into a particular language by typing the language name on the same line after the backticks...
\`\`\`python
^ Like that. But, it's not working at the moment. So, really, it looks at the code your provide and guesses. It's usually pretty accurate.

It's syntax highlighting, so if something is a color other than black it's usually a reserved word or special construct in whatever language you're working in. So, for HTML..
```
<a href="
http://openstudy.com
" target="_blank">OpenStudy</a>
```
The actual tag is red. The strings for the parameters are green. Etc. If something looks the wrong color when you're coding it, you missed something. Most coding text editors use this to help make code more readable. Same goes for Scala.
```
val someVal : Option[String] = None
val anotherVal : Option[String] = None
for {
awesome <- someVal
booyan <- anotherVal
} yield {
awesome + booyan
}
```
It highlights None, for, and yield. In all honesty, the should be highlighting val, Option, and String as well - but they're not for some reason.

Yeah, persisting your reply to the database is asynchronous from the point of view of your browser. So, that still happens. For some reason some of the synchronous portions are gumming up the works. Shadowfiend noticed the same thing a few days ago. We haven't had the chance to look into it yet.