riedquat - valueable resource for those who seek.
Home Blog Technical Reports Art Articles RapiDocs Coding Bugs Links Reviews Projects: CherBot Daimonin Gridarta

Cher's Projects

This list contains some of the projects I'm working on in my free time. To many of these projects I'm of course not the only contributor. To avoid confusion about the degree of activity and work I spent on the different projects I've added a contribution note. The contribution note is an eventually commented percentage value which reflects my own estimation of how much my contribution makes up the project compared to the contributions of others, including active user contributions like testing feedback and bug reports. If a project is based on a predecessor, like Gridarta is based on CFJavaEditor from Crossfire and Daimonin, this is of course also taken into account.

Other Project Lists

This project list, though probably providing the best overview in terms of first screenshots and links, is neither always uptodate nor complete. There are some automatic services that provide similar project lists. Please note that these automatic services also are neither always uptodate nor complete.

↗CIA Author information
CIA.vc is a service that generates project and author statistics from vcs commit messages. That means most of its information is based on Subversion or CVS commit hooks e.g. from the SourceForge repositories. CIA.vc is very uptodate but not complete because only those projects with the corresponding commit hooks are taken into account.
↗Freshmeat User Info
Freshmeat is (in this context) a software release catalogue. Some of my projects (not yet all) are announced at Freshmeat, so some info is also available there.
↗ohloh User Info
Ohloh profile for Christian Hujer Ohloh generates interesting project and author statistics similar to CIA.vc. Ohloh performs a very detailled analysis based on the repository.
↗Sourceforge Developer information
At least for the projects that are hosted at SourceForge this is very uptodate, but provides nearly no statistics.
↗GitHub Developer information
There you can see those projects which are hosted at GitHub.

Project List

AceUnit - BranchGraph - CherBot - Crossfire - Daimonin - GPU - Gridarta - JAceBenchmark - JAceUnit - JackSemmel - JackSemmelServer - JAPI - Jargl - Java2Html - JEduca - JLinkCheck / JReptator - JXFire - Karatasi - LAN Pinger - makehelp - MegaXSLT - MyMake - OPACM - riedquat - XSlides

AceUnit

(no screenie)

Ohloh Metrics

SourceForge.net Logofreshmeat.netcia.vc

URL: ↗http://aceunit.sourceforge.net/.
IRC: #aceunit.

Contribution: 100%.

AceUnit (Advanced C and Embedded Unit): a comfortable C code unit test framework. Unlike its competition (CUnit, EmbUnit, CppUnit, Check), AceUnit is JUnit 4.x style, easy, modular and flexible. AceUnit can be used in resource constraint environments, e.g. embedded software development, even the development of smart card operating systems. The footprint of AceUnit is so low that it can also be used on 8 Bit CPUs like 8051, 6502, Z80 and similar.

BranchGraph

(no screenie)

URL: ↗http://www.riedquat.de/projects/branchgraph/.

Contribution: 100%.

This upcoming project is a graphical editor for branch graphs which supports project managers, software architects and lead developers to keep track of complex branch scenarios. The idea grew in me at the beginning of 2011. At that time, I was technical lead in charge of a group of projects working all derived from the same code base. Overall, it was 5 project managers, more than 35 developers and numerous testers working on these projects. The synchronizations of 12 significant development branches had to be planned and tracked. In the end, the plan needed to be updated at least several times a week to reflect the latest builds and synchronizations between these projects. I could either keep myself busy painting and updating this in something like Visio all the time, or write a program that can be easily fed automatically.

I started using the first version of branchgraph at work on 2011-07-27. It takes me only a few seconds to add new events or branches to a graph. This is very important. Limitations in the ability to maintain the information about branches should not be a limiting factor for reasonable project complexity. Being so fast at editing the graph provides very good business value. Not only is it very cheap, even automatable, to keep such a graph uptodate in realtime. It also makes it easy and cheap to create scenarious for discussion.

CherBot

(no screenie)

Ohloh Metrics

SourceForge.net LogoSupport This Projectfreshmeat.netcia.vc

URL: ↗http://cherbot.sourceforge.net/.
IRC: #cherbot.

Contribution: 95%.

CherBot is an information bot for Daimonin which probably would also work pretty well with Angelion and to less extent with Crossfire. CherBot keeps track of which players collect which items, who's been online, determines a level ranking, provides a mail system for mailing offline players, manages clans and more.

The current size of CherBot is 10653 lines of Java source code. CherBot is currently undergoing a major redesign to shorten the source, decrease the heap footprint, support multiple protocols (planned: Daimonin, IRC, Crossfire) and database backend plus information exchange between these servers, e.g. send messages from irc to daimonin players and back.

Crossfire

Crossfire MMORPG

Ohloh Metrics

SourceForge.net Logofreshmeat.net

URL: ↗http://crossfire.real-time.com/.
IRC: #crossfire.

Contribution: 0.05%.

Crossfire is a 2D MMORPG which features hack and slay, many spells (more than 150), a huge amount of maps and an elaborate skill system. It consists of a server, archetypes (object definitions), maps and scripts, sounds, a 2D client (alternative third party clients available), a classic editor written in C and a new editor written in Java (now superceded by Gridarta).

Daimonin

Daimonin MMORPG

Ohloh Metrics

SourceForge.net Logofreshmeat.netcia.vc

URL: ↗http://www.daimonin.com/.
IRC: #daimonin.

Contribution: 2%; head of editor development since march 2005.

Daimonin is a 2D hack and slay MMORPG in the tradition of and based on Crossfire. It consists of a server, archetypes (object definitions), maps and scripts, sounds, a 2D client and an editor (now superceded by Gridarta). A future version of Daimonin that features 3D is currently under development.

Daimonin is approx. 220000 lines of source code (client, client3d, server) and 675000 lines of data (maps, objects).

GPU

GPU, a Global Processing Unit

Ohloh Metrics

SourceForge.net Logo

URL: ↗http://gpu.sourceforge.net/.

Contribution: 0.001%; little help with setting up the SF project and CVS repository.

An extensible framework for distributed computing on P2P grids. We support peaceful, free and open research and hope to build an internet supercomputer. We render movies, crawl the internet and improve a ~30 GHz cluster of Gnutella/Pastella clients.

Gridarta

Gridarta for Daimonin

Ohloh Metrics

SourceForge.net LogoSupport This Projectfreshmeat.netcia.vc

URL: ↗http://gridarta.sourceforge.net/.
IRC: #gridarta.

Contribution: 25%.

Gridarta is a level / map editor for 2D MMORPGs like Angelion, Atrinik, Crossfire and Daimonin.

The current size of Gridarta is 82264 lines of Java source code (with some redundancy of approx. 30% because of merging the crossfire editor and the daimonin editor which were based on the same root).

I also have some personal pages about Gridarta.

JAceBenchmark

(no screenie)

Contribution: 100%.

For setting up build farms or purchase decisions of developer PCs, it is important to get the best performance per price and wattage for my use case. Therefore I've set up a benchmark to measure a system's performance regarding my specific use cases. Currently, the benchmark consists of the following parts: Part one performs some primitive harddisk benchmarks with sequential and non-sequential reads. Part two performs some primitive I/O operations which don't involve peripherals and thus measures system memory throughput. Part three performs complex parallel XSLT transformations. Part three thus measures the combined performance of a system consisting of hardware, OS, Java VM, XML parser and XSLT processor. Planned: Part four performs the compilation of a Java project using Ant. Planned: Part five preforms parallel compilation of a C project using GNUmake and a configurable C compiler. Some of the benchmarks can only be performed on a complete POSIX system and will not work on Cygwin / Windows. But most of the benchmarks run pretty much anywhere where a Java SDK, GNUmake and a C compiler are available. The benchmark also includes an external, manual part, which is measuring the wattage using a Conrad Voltcraft power consumption meter.

JAceUnit

(no screenie)

Contribution: 100%.

When I had a use case for which JUnit 4.x was no longer sufficient (or at least the amount of effort and glue code was unreasonable), I tried TestNG. When I started learning about TestNG, I immediately stumbled over two problems. The first was that the Javadoc documentation of TestNG is utterly poor. The second was that TestNG, unlike JUnit, did not automatically create instances of my test classes. JAceUnit, named after my other test framework project AceUnit, is an attempt to mix the good stuff of TestNG and the good stuff of JUnit into one unified test framework.

Currently, I neither think that I will have enough time to complete this project, nor do I think that the Java world needs yet another test framework. Therefore I do not have plans releasing JAceUnit, but instead will make attempts to provide patches to JUnit and TestNG. For those patches, JAceUnit shall serve as experimental playground for situations where I want to work completely decoupled from an existing framework's api and implementation.

JackSemmel

(no screenie)

Contribution: 100%.

JackSemmel is a drag&drop XML editor specifically designed for collating parts of several XML documents into others.

JackSemmel is not released yet. You may get a pre-release on ✉inquiry by e-mail.

JackSemmelServer

(no screenie)

Contribution: 100%.

JackSemmelServer is a webserver specified on dealing with XML.

JackSemmelServer is not released yet. Parts of the JackSemmelServer code were developed in karatasi and japi.

JAPI

(no screenie)

Ohloh Metrics

SourceForge.net LogoSupport This Projectfreshmeat.netcia.vc

URL: ↗http://japi.sourceforge.net/.
IRC: #japi.

Contribution: 95%.

JAPI is a collection of Java libraries that help with various tasks like argument parsing, i18n/l10n, creating gui applications, as well as tools that demonstrate this.

Currently JAPI is approximately 43000 lines of Java Source including demo and example source code. It is undergoing a major refactoring to split it up into several modules for different purposes. The current state of the refactoring is 70% done.

Jargl

(no screenie)

Ohloh Metrics

SourceForge.net LogoSupport This Projectcia.vc

URL: ↗http://jargl.sourceforge.net/.

Contribution: 98%.

Jargl is a library for parsing command line arguments in Java. It was part of JAPI. Currently it is in the process of being extracted into a project of its own.

Java2Html

(no screenie)

URL: ↗http://www.java2html.de/.

Contribution: 3%.

Java2Html converts Java (and other) source code (complete files or snippets) to HTML, RTF, TeX and XHTML with syntax highlighting. This open source Java project consists of an extendible library along with a Java application, a Java applet and many plugins in order to integrate the library into other programs.

I've contributed XHTML 1.1 output and a few bugfixes to Java2Html.

I've tried to drag this project to SourceForge, which would have made it easy for me to contribute more. Alas there already is a project registration named java2html at SourceForge. That java2html project on SourceForge was registered in 2005-04-11 but had absolutely no activity for almost two years.

Finally, ↗Java2Html now is available at SF because Markus Gebhard has published it as part of his ↗JDemo project.

JEduca

(no screenie)

Contribution: 99%.

JEduca is a clone of ↗KEduca written in Java.

JEduca is not released yet. An old version of JEduca is part of the examples that come with JAPI.

JLinkCheck / JReptator

(no screenie)

Ohloh Metrics

SourceForge.net Logo

URL: ↗http://sourceforge.net/projects/jreptator.

Contribution: 100%: creation, admin.

JLinkCheck is a link checker for XHTML. JLinkCheck and JReptator currently are unmaintained, but I might start working on them again any time.

JXFire

(no screenie)

Ohloh Metrics

SourceForge.net Logofreshmeat.net

URL: ↗http://jxfire.ailesse.com/.
IRC: #jxfire.

Contribution: 0.001%.

JXFire is an MMORPG based on SGS. Currently I'm motivating the team and contributed two small patches for German l10n.

Karatasi

(no screenie)

Ohloh Metrics

SourceForge.net Logocia.vc

URL: ↗http://karatasi.sourceforge.net/.
IRC: #karatasi.

Contribution: 2%: Java REST Server API and some more Java code.

Flip card learning program for iPhone with a spaced learning algorithm like SuperMemo. You create your own databases and edit the cards directly on the iPhone. Supports synchronization of data with a PC through a web server, and import of Palm databases.

LAN Pinger

LAN Pinger

URL: /projects/lanpinger/.

Contribution: 100%: creation.

LAN Pinger is an Android application that scans a network for hosts and services. It is currently under development. The latest version is already capable of auto-detecting the addresses to scan and scanning on TCP port 7 (echo), TCP port 22 (ssh), TCP port 80 (http) and UDP port 53 (DNS). Currently I use it to scan and debug my home network, which already has >20 hosts.

makehelp

(no screenie)

URL: /projects/makehelp/.

Contribution: 100%: creation.

makehelp is a small perl script which provides built-in doxygen-style help in Makefiles. I use it in a lot of my projects already.

MegaXSLT

(no screenie)

Contribution: 100%: creation.

MegaXSLT is an Ant task for running XSLTs in parallel, significantly speeding up XSLTs on multiprocessor machines.

Currently MegaXSLT is 2377 lines of Java Source, including an Ant Task to run GZip compression over a fileset.

MegaXSLT is not released yet. You may get a pre-release on ✉inquiry by e-mail.

MyMake

(no screenie)

Contribution: 100%.

While I think GNUmake is one of the best make tools that has ever been written, GNUmake has a few disadvantages. The first being that GNUmake does not provide all of the parallelization capabilities that I would wish for. When having a single set of shell lines creating multiple target files, GNUmake is a bit awkward. GNUmake has portability issues when porting Makefiles between UNIX / POSIX and Windows. On Windows, GNUmake does not show its full performance potential, because on Windows, fork(), exec() doesn't exist and thus has to be simulated expensively. And finally, when running multiple Java programs from GNUmake, GNUmake starts individual VMs each time.

MyMake has a few main goals. Goal 1 is to be as compatible with GNUmake as reasonable. GNUmake is very very good, and definitely far better than its reputation. It has lots of good things, and those things I want to do the same. Goal 2 is to be implemented in Java, to be able to run Java programs within its own VM. Goal 3 is to provide a lot of typical Makefile shell commands as built-in commands, to improve portability. Goal 4 is to work around a few deficiencies with GNUmake, for example regarding parallelization, shell lines and indention.

OPACM

(no screenie)

SourceForge.net Logo

URL: ↗http://sourceforge.net/projects/opacm.

Contribution: 75%: creation, admin.

OPACM was meant to become an application for Organizational profiling and competency management. Since OPACM is somewhat left alone by its inventor and I was only the invited technical expert, this project is basically abandoned. It has never grown beyond the stage of a generic graphical JDBC client with 569 lines of Java Source.

riedquat

riedquat

URL: ↗http://www.riedquat.de/.

Contribution: 100%.

riedquat is my personal website. You can't only find this project list there, but also short introductions called RapiDocs, articles, reviews and my blog.

XSlides

(no screenie)

Ohloh Metrics

cia.vc

URL: ↗http://www.riedquat.de/projects/XSlides.

Contribution: 100%.

XSlides is an XML-based replacement for PowerPoint.

Features:

  • High degree of automation, i.e. to include numbers from databases in your presentation.
  • Terse mixed Slides / XHTML / SVG / MathML / SMIL markup language.
  • Makefile and XSLT to perform syntax highlighting on source code using ↗vim.
  • vi-like control interface - slides can be navigated with vi keystrokes like hjkl, G, gg and vi commands like :first, :last, :<number>.
  • PowerPoint-like control interface - slides can be navigated with the cursor keys. Blank screen is also supported, and F5 is "caught" to avoid unintended reloading.
  • XSLTs to create a single-file (X)HTML from a presentation.
  • The slides are presented with a normal standards-compliant web browser (i.e. Chrome, Firefox, Opera), preferably in fullscreen mode.
  • Support for Logitech Cordless Presenter. Other presenters will probably work, too.

The current version of XSlides is not released to the public yet, but I already use it for myself at my current work place. A draft of XSlides can be found at ↗GitHub.

Link Indices

ProjectWebsitesProject HostingFreshmeatCIAOhloh
AceUnit↗Website↗SourceForge↗FreshMeat↗CIA↗Ohloh
BranchGraph↗Website
CherBot↗Website↗SourceForge↗FreshMeat↗CIA↗Ohloh
Crossfire↗Website↗SourceForge↗FreshMeat↗Ohloh
Daimonin↗Website↗SourceForge↗FreshMeat↗CIA↗Ohloh
GPU↗Website↗SourceForge↗Ohloh
Gridarta↗Website↗SourceForge↗FreshMeat↗CIA↗Ohloh
JAceBenchmark↗GitHub
JAceUnit
JackSemmel
JackSemmelServer
JAPI↗Website↗SourceForge↗FreshMeat↗CIA↗Ohloh
Jargl↗Website↗SourceForge↗CIA↗Ohloh
Java2Html↗Website
JEduca
JLinkCheck / JReptator↗Website↗SourceForge↗Ohloh
JXFire↗Website↗SourceForge↗FreshMeat↗Ohloh
Karatasi↗Website↗SourceForge↗CIA↗Ohloh
LAN PingerWebsite
makehelpWebsite↗GitHub
MegaXSLT
MyMake
OPACM↗Website↗SourceForge
riedquat↗Website
XSlides↗Website↗GitHub↗CIA↗Ohloh
 . 
..: