Is HTML a Humane Markup Language?

I agree totally. Of the four markups you presented, the only one that was readable enough that I didn’t have to refer back to the rendered version to see what was going on was the BBcode. (For a couple I’m still not sure how the first quoted section’s end is delimited). But BBcode is practically html with square brackets, so why bother?

As for developers like Martin who don’t know HTML, I’d say you should be prepared to learn. This isn’t Swahili we are talking about. Learning a markup language for a real developer should be trivial.

In fact, I’d say lack of basic HTML skills in posts might be a good way to spot the posers.

It depends what you want to do ?

HTML is fine for just formatting (That’s what it is for!) but you then have the problem of cleaning the HTML, filtering broken syntax, and your pages are not a consistent format anymore…

Wiki syntax is more than formatting it adds meaning to the text which as a side effect might format it, e.g. Tables since they are a standard format can be read and processed by the wiki as data, internal links work both ways automatically, categories/tags aggregate data automatically etc …

Perhaps you should use XML instead? [The Angle Bracket Tax] :wink:

BTW Internal links in mediawiki are [[article]] or [[article#section]] external links are not much harder [http://otherwebsite.net/Light_Weight.htm] but are deliberately avoided …

I have used freetext (http://freetextbox.com/default.aspx) for a few projects and it has worked well. I think it works for novice and advanced users.

I think one of the biggest concerns with allowing raw html is all the crazy things people can put into your website.

XSS, ugly images, ads, annoying ads, spam, and the like.

Special markup has the function of limiting what people can do.

so if someone wanted to come to your site to learn more about html they’d be screwed?

is the site intended for 1337 programmers to come and get more 1337 or are you intending on allowing beginners to come and learn too?

you’ve completely gone off the rails on this one, especially if you’re considering writing your own hybrid mark up language.

I have a function for my forums that strips out script,img,etc and everything in between the tags. I have a small warning for the user on what tags not to use.

Ironically enough, there isn’t a way to make something bold* in
(modern semantic) HTML since, as you pointed out in a previous blog
entry, HTML is the ‘model’, not the view :slight_smile:

That’s a pretty good point. Perhaps a standard style sheet could be set up, which posters could reference?

Then again, what you are supposed to be using is tags like em (emphasis), and strong (strong emphasis), and let the user’s browser do that however the user wants such things presented (boldface, underlineing, big font, yelling the word, whatever).

This is precisely why I don’t use WYSIWYG editors for HTML. They invaribly have tons of style buttons and almost no proper emlement buttons. If your development tool completely misses the point of the language, the results can’t be good.

A problem with Markdown is that it interprets a single underscore as a bold tag. A hassle if you’re trying to talk about programming or something that uses underscores.

+1 BBCode

easy to parse. easy to remember.

Stupid me, I meant to list script,img tags etc in my previous post. They got filtered.

Keep it simple! Consider the most common use, probably a short post of a few paragraphs, some bold, a link, a code section, and a list. In these cases any of the markup languages result in a much simpler and easier to understand post than would be with HTML.

Yes, with HTML you get the “I can do anything” but don’t focus on the edge cases and ignore what people will be using it for 99% of the time. I’ve been writing HTML since '95 and one place I don’t want to see it is in a forum (offhand I can’t think of any forums I frequent that actually use HTML).

At this point there may well be more people familiar with with the Wiki syntax than with HTML…

Direct HTML input is the autobahn to invalid XHTML.

http://iamacamera.org/default.aspx?section=developid=73

In ten years, we will look back with nostalgia at the days when we left comments on your site via direct HTML input – the way we fondly recall bygone years when we configured our ISDN modems and put jumpers on hard drives to designate them master/slave.

Direct HTML input is at best, quaint, but by no means a long-term viable solution to online markup entry.

@James

http://code.google.com/p/syntaxhighlighter/ this JavaScript library seems to be the best way to document code with syntax highlighting, automatic line numbering and copy and paste support. I use it in a lot of my documentation.

“As for developers like Martin who don’t know HTML, I’d say you should be prepared to learn. This isn’t Swahili we are talking about. Learning a markup language for a real developer should be trivial.”

It may be trivial, but it should also be optional. The interface should never get in the way of usability. Jeff makes that very point himself in “Reducing User Interface Friction” (a href="http://www.codinghorror.com/blog/archives/000866.html"http://www.codinghorror.com/blog/archives/000866.html/a)

"Reduced interface friction goes a long way toward explaining the popularity of services like twitter and tumbr. What’s the minimum amount of effort a user can expend to produce something? The answer could be a key competitive advantage.

That single input box on the Google homepage starts to look more and more like an optimal user experience. It might be unrealistic to reduce your application’s UI to a single text box-- but you should continually strive to reduce the friction of your user interface."

Please don’t use wikipedia as a model markup language. It’s badly defined to the extent that the only ‘compliant’ parser is mediawiki itself, which consists basically of a long series of regexes. It’s a huge shame that one of the largest consolidated sources of information on the web is all written in a language that’s extremely difficult to robustly parse.

As far as using HTML goes, it depends on your target audience. For stackoverflow, I would agree, but for more lay-person sites, HTML seems unnecessarily complicated. One forum my wife and I both post on uses a subset of HTML, and I’ve lost track of how many times I’ve had to tell my wife what the syntax for links is. “a href” is second-nature to us, but it’s not intuitive if you’re not already familiar with HTML.

I think anyone who calls himself a web developer should be proficient in HTML. Not just good or familiar with it but proficient. Take Visual Studio for example. I see too many developers squeak by working in Design Mode and when work in Design Mode breaks down (as it often does) they are lost in the sea of code in source mode. I don’t even use Design mode. I code entirely in source mode. Its a sad state in our profession when a good percentage of developers can’t “debug” HTML code. Sorry about the detour.

They all look fine for the most part except for how they handle internal and external links. There the Wiki format wins out in terms of being intuitive and easy. It’s frankly the most important bit, and I think even HTML screwed that one up – a href="" is not intuitive, it’s possibly the most non-humane way I’ve ever seen for how to do links.

“I know, let’s make the tag to link to external sites the same one as we use to make internal anchor points. And while we’re at it, let’s use a totally opaque acronym to designate the link element. Because LINK would have been too straightforward.”

Whatever markup you go for, please make sure you only offer a limited but useful set of formatting/style tags.
One of the problems with sites that have a lot of user formatted content is that they have a horrible inconsistent mix of styles, layout and structure that makes flicking through the site a constantly jarring experience.

Things I’d want when posting a question/answer/article:

  • the ability to include real source code (without having to alter it to remove HTML characters etc) AND have all my formatting/indenting preserved AND have the code automatically coloured in the post.

  • include images/diagrams (without having to host them myself on some other site).

  • link to other articles on the same site and to relevant external sites (e.g. Sun, MSDN, W3c etc).

  • attach example source files.

(My point being that none of the goals above are entirely satisfied by HTML, or most of the other simple markups)

See reddit’s comment box. Little expandable notes on how to use markdown (very handy as a reference when you forget something). And as someone mentioned near the top, the official markdown engine supports html tags. Best of both worlds.