| Revision History | ||
|---|---|---|
| Revision 0.16 | 10.08.2006 | Revised by: CK |
| RPMs for GTK 2, MySQL Administrator, MySQL Query Browser, Dia, GIMP, gtkhtml | ||
| Revision 0.15 | 07.07.2006 | Revised by: CK |
| RPMs for Code::Blocks | ||
| Revision 0.14 | 13.03.2006 | Revised by: CK |
| Corrected typos, links. Added new Index. Added sections: Disclaimer, Formats, License, Conventions | ||
| Revision 0.13 | 25.08.2005 | Revised by: CK |
| wxGTK RPM packages | ||
| Revision 0.12 | 23.05.2005 | Revised by: CK |
| Graphviz RPMs | ||
| Revision 0.11 | 06.04.2005 | Revised by: CK |
| Section on RPMs | ||
| Revision 0.10 | 02.11.2004 | Revised by: CK |
| New versions of the PHP and PEAR manual modules for PHP-Nuke | ||
| Revision 0.09 | 28.07.2004 | Revised by: CK |
| Alternative URLs for other continents in Meteosat block for PHP-Nuke | ||
| Revision 0.08 | 25.06.2004 | Revised by: CK |
| NukeAutumn theme for PHP-Nuke | ||
| Revision 0.07 | 08.06.2004 | Revised by: CK |
| PHP manual module for PHP-Nuke, rdf-nuke.php script for newsfeeds of PHP-Nuke Forums | ||
| Revision 0.06 | 19.02.2004 | Revised by: CK |
| New version 2.0 of PHP-Nuke book, initial public presentation of LyX-to-X project and my Jade installation notes | ||
| Revision 0.05 | 01.12.2003 | Revised by: CK |
| Added info on Moon and Sun PHP-Nuke and Virus Info blocks | ||
| Revision 0.04 | 25.08.2003 | Revised by: CK |
| PHP-Nuke stuff put in a separate chapter. | ||
| Revision 0.03 | 15.07.2003 | Revised by: CK |
| GNU/Linux Tools Summary | ||
| Revision 0.02 | 02.06.2003 | Revised by: CK |
| CSS, image captions, text update, footer, index. | ||
This is a summary of my work.
In Section 1 you can find links to the various formats of this document.
In Section 2 you can read a tabular overview of my SAP R/2 and R/3 projects, which span a spectrum of various modules like RK/P, CO, PS, FI, MM, SD, IS-RE.
In Section 3 I present my LyX-to-X project, describing my method of document processing with LyX and SGML. Further you can read my Jade installation notes, a collection of Linux Tips and Tricks, a GNU/Linux Tools Summary and a document on how to use AMANDA to do correct incremental backups of vfat filesystems. You can also find a section with links to my binary and source RPM packages of interesting software for LINUX.
In Section 4 I present a book on the management and programming of PHP-Nuke; some PHPNuke blocks: for Meteosat images, for the daily User Friendly comic strip, for Web Radio and one for dynamic menu blocks using the Treemenu class; the rdf-nuke.php script that creates highly customizable newsfeeds from PHP-Nuke Forums; the NukeAutumn theme for PHP-Nuke; and the manual modules: PHP manual as a PHP-Nuke module and PEAR Manual module for PHP-Nuke.
In Section 5 I briefly discuss my Master's Thesis on neural networks and learning rules. It's about Hebb, Delta, Greville, Perceptron, Ho-Kashyap, Relaxation and Linear Programming learning rules for linear association and/or separation.
In Section 6 you can find hard links to some computer graphics papers of mine, discussing hidden line algorithms, visibility and offset curves.
This is a summary document. It is divided in chapters that hold references to individual documents describing some work of mine. If you are interested in some specific area, go to the appropriate chapter and follow the links there.
No liability for the contents of this documents can be accepted. Use the concepts, examples and other content at your own risk. As this is work in progress, there may be errors and inaccuracies, that may of course be damaging to your system. Proceed with caution, and although this is highly unlikely, the author does not take any responsibility for that.
All copyrights are held by their respective owners, unless specifically noted otherwise. Use of a term in this document should not be regarded as affecting the validity of any trademark or service mark.
Naming of particular products or brands should not be seen as endorsements.
For the sake of completeness, and for the case that you are interested in some other formats of this summary document, here they are:
HTML (HyperText Markup Language), many HTML files (one for every section), for viewing with any browser
HTML (HyperText Markup Language), one big HTML file
![]() |
RTF: Page numbers |
|---|---|
|
In order to get correct page numbers in Microsoft Word, type the following after opening the document:
In Word Viewer 97, you must instead do:
See The OpenJade RTF backend for more details. |
![]() |
IMPORTANT: Downloads for offline reading! |
|---|---|
|
If you want to download the HTML or RTF formats for offline reading, you will need to download the images as well - PNG for HTML and BMP for RTF, including the callouts! To save you the hassle, I have compiled the following zipped tar archives for offline reading: |
TAR.GZ (Compressed TAR Archive), many HTML files with images
TAR.GZ (Compressed TAR Archive), one big HTML file with images
A tarball containing all the above is also available:
The newest versions of all the documents presented here contain some major improvements over older ones:
New professional look through CSS.
New footer icons. If you click on them, they will validate the current page for HTML and CSS respectively.
HTML code that validates as HTML 4.01 transitional.
Admonitions are little pictures used to emphasize something of importance to the reader. The four types used are:
![]() |
Note |
|---|---|
|
Using a hammer to put together your computer is bad. |
![]() |
Tip |
|---|---|
|
Do not hit your thumb with the hammer, it hurts! |
![]() |
Important |
|---|---|
|
Watch where you're swinging that hammer! |
![]() |
Caution |
|---|---|
|
Hitting your thumb with a hammer may lead to an unwanted trip to the hospital! |
![]() |
Warning |
|---|---|
|
Do not, under any circumstances, admit that you hit your own thumb with a hammer. The ridicule you will face is astounding! |
keys Access keys enable navigation through the document, without relying on a mouse. The following keys have been given special meaning in this document:
Previous page.
Next page.
Home of the document (Table of Contents).
Up (takes you one level up the section hierarchy).
If you also happen to be reading the document from its original location, then the following access keys can also be used:
Start (takes you to the author's start page).
The current (“This”) page, without the Sitemenu on the left.
The current page in a frameset, where the left frame contains a Menu.
To use the access keys, you have to simultaneously press a modifier key, which may vary from browser to browser. For example in NN6+/Mozilla, the modifier key is ALT, so you
have to use ALT-N to go to the next page, and ALT-P to come back. In other browsers such as IE6, the access
keys just give focus to the associated link, so the sequence becomes ALT-N Enter . Try it, you'll like it! ![]()
I am a freelancer, an IT Consultant specialized in SAP R/3 and R/2. I have worked on numerous database and SAP related projects. For this area, the term ERP (Enterprise Resource Planning) has been established. The following documents describe some aspects of my ERP work:
Some texts from my ongoing project " Sleepless Chris" belong here. For example:
document processing with LyX and SGML: describes my LyX-to-X project, a collection of sed, awk and shell scripts and DSSSL stylesheets that let you write in LyX, then publish in HTML, PDF, PS, RTF and TXT formats automatically. But that's not all: the scripts enable the use of Mathematics, bibliographic databases and automatic Index generation procedures, transparently for the user, all controlled from one source and one click of a button. If you ever wondered how the documents on this website are made, this 200 page guide will tell you all the gory details. Moreover, now you can grab your free copy of the LyX-to-X scripts and start producing professionally formatted documents yourself!
Jade installation notes: describes my first steps, back in 2001, in creating a document processing system with Jade and SGML on Linux. It is this frustrating experience that gave birth to the collection of scripts that comprise my LyX-to-X project above.
Linux Tips and Tricks: A loose collection of subjects that have more or less to do with Linux.
GNU/Linux Tools Summary: A work in progress, by Gareth Anderson, to become a HOWTO of the Linux Documentation Project. I host the official, “ bleeding edge” version and I help with the conversion to DocBook SGML (and other formats) from the LyX sources as described in document processing with LyX and SGML.
My self-compiled RPM packages, see Section 3.1.
I compile binary and source RPM packages for the software I need and don't have on my SuSE Linux system - either because the available version from SuSE is too old, or because there is no package available at all. Of course one can use the usual 3-line mantra:
./configure make make install |
to install a package from source, but having a RPM package helps keep track of the files installed on a system, as well as their dependencies.
I offer binary and source RPMs for the following software, as well as any dependent packages:
LyX, a LaTeX and DocBook editor.
GNU MP library (GMP), a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers.
Octave, a high-level language, primarily intended for numerical computations.
Yacas, (Yet Another Computer Algebra System), a small and highly flexible general-purpose computer algebra system and programming language.
po4a, (po for anything) project goal is to ease translations (and more interestingly, the maintenance of translations) using gettext tools on areas where they were not expected like documentation.
poedit, a cross-platform gettext catalogs (.po files) editor.
Anjuta, a versatile Integrated Development Environment (IDE) for C++ and C++ on GNU/Linux.
Graphviz, an open source graph visualization software. See How to use Graphviz to generate complex graphs for a tutorial.
wxWidgets (wxGTK), a single, easy-to-use API for writing GUI applications on multiple platforms.
Code::Blocks, a free C++ IDE, built specifically to meet the most demanding needs of its users.
GTK+ 2 (package gtk2), a multi-platform toolkit for creating graphical user interfaces. Offering a complete set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites.
MySQL Administrator, a powerful visual administration console that enables you to easily administer your MySQL environment and gain significantly better visibility into how your databases are operating.
MySQL Query Browser, a visual tool for creating, executing, and optimizing SQL queries for your MySQL Database Server. The MySQL Query Browser gives you a complete set of drag-and-drop tools to visually build, analyze and manage your queries.
gtkhtml, a HTML rendering/editing library designed to be easily embedded into applications that require lightweight HTML functionality. Many programs that use GTK+, like the MySQL Query Browser, need the gtkhtml2 package.
Dia, is inspired by the commercial Windows program 'Visio', though more geared towards informal diagrams for casual use. It can be used to draw many different kinds of diagrams. It currently has special objects to help draw entity relationship diagrams, UML diagrams, flowcharts, network diagrams, and many other diagrams.
The GIMP, (GNU Image Manipulation Program) is a powerful image composition and editing program, which can be extremely useful for creating logos and other graphics for Web pages. The GIMP has many of the tools and filters you would expect to find in similar commercial offerings, and some interesting extras as well. The GIMP provides a large image manipulation toolbox, including channel operations and layers, effects, sub-pixel imaging and anti-aliasing, and conversions, all with multi-level undo.
Use the command
rpm -Uhv xxx.rpm |
to install the binary RPMs. I used the build package of SuSE to compile my own source RPMs from source, as described for example in Compiling SuSE Source Packages. Note that up to and including version 9.0, SuSE uses the usedforbuild string on a comment line of the spec file to list all needed files for a successful compilation of the package.
The packages are build for SuSE 9.0. To rebuild a package for your own version of (SuSE) Linux, use the source RPMs and the build and/or rpmbuild commands, as described in How to compile an older version for a newer system in RPM.
Here is some work from my involvement in PHP-Nuke:
PHP-Nuke: Management and Programming. This is a book on PHP-Nuke that I have written together with Claudio Erba of spaghettibrain. It started as a translation of Claudio's original work in italian (see this PHP-Nuke book translation thread at nukeforums). Meanwhile, I added a whole lot of material to it - and Claudio upgraded his part too, so that, taken together, you now have the most complete guide to PHP-Nuke (more than 500 pages!) at your disposal! Also available as a PHP-Nuke Module! See the Formats section for a list of all available formats.
This document is also an official HOWTO of the Linux Documentation Project.
Translators to other languages wanted! Contact me at my PHP-Nuke Forum if you are interested in translating it. Be prepared for some hard work. :-)
User Friendly Comic Block for PHP-Nuke. This PHP-Nuke block will display the daily comic from the well-known User Friendly site. Read the source code of the UserFriendly Comic Block for PHP-Nuke online.
Meteosat Block for PHP-Nuke. This PHP-Nuke block will display the most recent images of the World and Europe taken by Meteosat. Read the source code of the Meteosat Block for PHP-Nuke online. It now contains URL examples for Meteosat images of other parts of the world as well: North and Central America, South America, East Asia, Central Asia, Afrika and Australia.
Web Radio Block for PHP-Nuke. This PHP-Nuke block will display some links to web radio stations as well as an embedded RealPlayer console. Clicking on a link will play that station's music in a separate RealPlayer window. Pressing the Play button of the embedded console will play the music of the first link. Of course, you may change this behaviour ;-). Read the source code of the Web Radio Block for PHP-Nuke online.
Treemenu block for PHP-Nuke: in this document I describe the adaptation of Treemenu (a dynamic menu written as a PHP class) to PHP-Nuke for the creation of a dynamic menu block. The administrator needs only edit a plain text file (sitemap.txt) to reflect the required tree structure. The (sub)tree nodes expand and collapse through user interaction very intuitively. You can read the docs online here and download the Treemenu block code.
Moon & Sun block for PHP-Nuke. This PHP-Nuke block will display the current images of the moon and sun, taken by the U.S. Naval Observatory and the NASA Goddard Space Flight Center . Read the source code of the Moon and Sun Block for PHP-Nuke online.
Virus Info block for PHP-Nuke. This PHP-Nuke block will display the current top viruses and worms, powered by Trend Micro. It is a nice educative example of how you can include Javascript code in a PHP-Nuke block. Read the source code of the Virus Info Block for PHP-Nuke online.
I have also left the caching code intact, but commented. If you have CacheLite installed, you can uncomment it and cache the block's contents with it - another nice educative exercise! Of course, the block will work fine without caching too. For more information on caching with PHP-Nuke, see How to accelerate PHP-Nuke.
PHP Manual module for PHP-Nuke. New version available. Contains the PHP Manual as of Oct. 13th, 2004. The whole PHP manual as a PHP-Nuke module, ready to be used on your PHP-Nuke site! Complete with all links! No use of iframes is made, so this module is browser-independent. Full customization control provided through CSS for thorough adaptation to your personal theme. A must-have for every technically-oriented PHP-Nuke site.
PEAR Manual module for PHP-Nuke: First public release available. Contains the PEAR Manual as of Oct. 3rd, 2004. The whole PEAR manual as a PHP-Nuke module, ready to be used on your PHP-Nuke site! Complete with all links! No use of iframes is made, so this module is browser-independent. Full customization control provided through CSS for thorough adaptation to your personal theme. A must-have for every technically-oriented PHP-Nuke site.
rdf-nuke.php. I have glued the famous rdf.php for phpBB and backendforums.php of nukecops together to create an RSS newsfeed of any combination of PHP-Nuke Forums on a site. Upload the rdf-nuke.php file to your PHP-Nuke root directory and enjoy the all-round syndication of any and all forums on your site in any combination and variation: from one single forum to three in a bundle - you define how long should be the description of the latest posts syndicated, the number of news items, and can even specify that the forum name or post date be included in the title of each news item!
NukeAutumn theme for PHP-Nuke. I have created a theme, NukeAutumn, that is identical to the NukeNews theme, but incorporates the "falling leaves" effect of the Javascript discussed in How to use Javascript in the body of the PHP-Nuke page. You only need to extract the archive in the PHP-Nuke root directory (i.e. where also config.php is in). It will automatically create a folder themes/NukeAutumn with all necessary files in it. To see the Autumn effect, just choose NukeAutumn as your theme.
I hold a degree in pure mathematics from the University of Thessaloniki, Greece, a diploma and a M.Sc. in industrial mathematics from the University of Kaiserslautern, Germany. Here is some mathematics work of mine:
Master's Thesis (Section 5.1).
My Master's thesis (called “ diploma work” in german) at Kaiserslautern dealt with the mathematical aspects of some neural networks, the exact title being “ Neural learning rules for linear association and separation”. After giving a formal mathematical definition of neural networks, I consider the linear association problem and some so-called “ learning rules” for its solution:
I show that the Greville algorithm has the same general form as the Delta rule but does not have its limitations regarding orthogonality (Hebb) or linear independence (Delta) of the input vectors and infinite repetition of the learning process (in fact, it converges to a solution after a finite number of steps, so that the input vectors need only presented once to the network).
Continuing from linear association to linear separation, I consider
I give a generalized convergence proof for the Perceptron learning rule. I present corrected proofs of the relaxation and Ho-Kashyap rules and touch on a solution by linear programming. As you can read in a 1997 paper by Prof. G. Labonté, the scientific community did not seem to realize that the relaxation method can be used in the context of neural networks. In my 1992 Master's thesis, I devote a whole chapter (5.2, pp.30-37) to the treatment of the relaxation method for the linear separation problem which is fundamental to neural networks (you can transform a non-linear separation problem to a linear one, using an aproppriate non-linear transformation of the input space).
Finally all methods are investigated theoretically as well as practically regarding their asymptotic time behaviour.
If you are interested in a printed copy of my Master's thesis (in german) and the source code (FORTRAN), you can buy it online: Master's thesis on Neural Networks. The following table contains the key data:
I have done some work on computer graphics that should go here. During my studies at Kaiserslautern , I developed some hidden-line algorithms, which I published in the following two research papers:
C. Karakas, “ Hidden-line algorithm based on range searching”, Comput.-Aided Des. vol. 23 no.10 (1991) pp.684-691
C. Karakas, “ Applications of visibility on the computation of offset curve patterns”, Comput. & Graphics vol. 16 no. 2 (1992) pp. 159-165
I have a faible for visualization, so I added graphics to the Mortgage Calculator of David Tufts, at the bottom of the page, the first one displaying the remaining balance, the second showing the interplay of monthly paid interest vs. monthly paid principal, both on a month/money coordinate system. You can see the source code here. It's a nice example of dynamic web graphics using PHP and the PHPlot Library.
| Last updated Thu Aug 10 18:39:34 CEST 2006 | Permalink: http://www.karakas-online.de/myWork/myWork.html | All contents © 2003-2005 Chris Karakas |