UI Editor With Preview

28. June, 2011

One of the big problems with WYSIWYG editors is that they don’t really cut it. They look good in the beginning but as your experience grows, the editor tends to get in your way of getting things done.

Stackoverflow used an interesting solution: There is a wiki markup editor and a preview which is updated as you type. So you get the best of both worlds: You can see your intention and the result at the same time.

Riena is now following along the same path: They created a preview which updates when you save your UI code. That way, you can quickly see the effect of your changes without stumbling over tedious property editors all the time.

Jazoon 2011, Day 1 – An exercise in simplicity – Dierk König

26. June, 2011

An exercise in simplicity – Dierk König

In his soft-spoken way, Dierk reminded us once again of an ancient art that is always on the brink of extinction: Simplicity.

Do you remember the Peter Principle? Here is the software developer version:

Given a new technology, a software developer will quickly drive it up just above that level of complexity that he is barely unable to handle – Dierk König

That together with Brian Kernighan‘s

Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.

should give you pause when your ego demands the more “clever” solution next time. Alas, we don’t always have time to find the more simple solution. On top of that

Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it.

And to make matters worse, complexity sells better.

– Edsger Wybe Dijkstra

Thank you.

Notes from the talk:

Simple != easy.

If it needs an explanation, it’s probably not simple.

Just because you understand it doesn’t make it simple. Convention is only simple if everyone knows it.

Example for simple code: https://github.com/Dierk/MittieWiki It’s a simple wiki software. If you feel MediaWiki isn’t powerful enough for you, look elsewhere. If you think MediaWiki overwhelms you, have a look. The code has a complexity of 0. Test coverage is 100% for both lines and branch coverage.

Googling Stack Traces

4. June, 2011

How often did you run into a problem, googled for it and eventually found a solution because someone else had had the same problem?

In this process, the key issue is to find a good query for Google.

Wouldn’t it be nice if your computer would support you here?

It wouldn’t even be hard to implement: When an error happens, programming languages have context, say, a stack trace. Some programs like the H2 database and Maven already use something like that: Every error message contains a URL where you can find additional information.

So what we would need is a wiki for stack traces.

And a plug-in for our favorite IDE to find similar stack traces in this wiki.

Kudos go to Marcel Bruch for the idea.

Wiki-like editors/notebooks

7. October, 2010

A list of wiki-like editors/notebooks/etc:

Powerful Wiki Engine for Eclipse

1. September, 2009

I’m toying with the idea to write a powerful wiki engine for Eclipse. What I have in mind should

  • Allow multiple markups (because all markups suck, so there is no point to prefer one over the other)
  • Should offer a side-by-side editor (source and preview because WYSIWYG is impossible to get right)
  • Should support automatic links (just like in the Java editor)

Right now, I’m not sure whether I should start with Mylin WikiText or Xtext.

Both look promising. WikiText support multiple markups. I just don’t like the two-page editor (where you have to flip pages to see what you’re doing). Also, I’m not sure how flexible the whole framework is.

Xtext would allow for much more complex markups but I’ll probably have to start with a more basic framework.

Links: Extending RIM with Xtext

Jazoon, Day 2: XWiki

24. June, 2009

I’m a huge fan of wikis. Not necessarily MediaWiki (holy ugly, Batman, the syntax!). I dig MoinMoin. I just heard the talk by Vincent Massol about next generation wikis. Okay, I can hear you moan under the load of buzzwords but give me a moment. XWiki looks really promising.

Wikis basically allow to publish mostly unstructured data. I say “mostly” because wikis give them some structure but not (too) much: You can organize it in pages and put it into context (by linking between the pages). Often, this is enough. But recently, MediaWiki has started to add support for structured data. See that infobox in the top left corner? But that’s just half-hearted.

XWiki takes this one step further. XWiki, as I understand it, is a framework of loosely coupled components which allow you to create a wiki. The default one is pretty good, too, so most of the time, you won’t even get into this. The cool part about XWiki is that you can define a class inside of it. Let me repeat: You can create a page (like a normal text page) that XWiki will treat as a class definition. So this class gets versioned, etc. You can then add attributes as you like.

After that, you can create instances of this class. The instances are again wiki pages. You can even use more than a single instance on a page, for example, you can have several tag instances and a single person instance. Instances are versioned, too. Of course they are, this is a wiki!

Now you need to display that data. You can use Velocity or Groovy for that. And guess what, the view is … a wiki page. So your designers can create a beautiful look for your the boring raw data. With versions and comments and everything. While some other guys are adding data to the system.

In “normal” wiki pages, you can reference these instances and render them using such a template. The same is true for editors. With a few lines of code, you can create overview pages: All instances of a class or all instances with or without a certain property or you can use Groovy to do whatever you can think of.

Now imagine this: You have an existing database where your marketing guys can, say, plan the next campaign. They can use all the wiki features to collect ideas, filter and verify them, to come up with a really good plan. Some of that data needs to go into a corporate database. In former wikis, you’d have to use an external application, switch back and forth, curse a lot when they get out of sync.

With XWiki, you can finally annotate data in your corporate database with a wiki page, with all the power of a wiki and you can even display the data set in the wiki and edit it there. Granted, the data set won’t be versioned unless your corporate database allows that but it’s simple to do the versioning in the data access layer (for example, you can save all modifications in a log database).

Suddenly, possibilities open up.

Wikianswers vs. StackOverflow

23. February, 2009

I’ve mentioned StackOverflow a few times. If you have a question related to software development, that’s the place to go. But there is no place to ask other questions.

Well, five days ago, wikianswers started and … there is still no place to ask other questions. I do not doubt that Jimmy Whales knows what he’s doing but for some reason, he didn’t notice Web 2.0. Yes, wikianswers looks nice (well, the top of the page does; let’s not go into the rest, especially the search results and such).

Obviously, this site runs on top of the MediaWiki software. While the guys on StackOverflow pulled every string to make it as simple as possible to ask and answer a question, I feel that the workflow on wikianswers drains a lot of my enthusiasm even before I get to answer a question.

Good luck, Jimmy! We really need a place to ask questions.

%d bloggers like this: