Main Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - Volker Dirr

General Stuff / FET 32bit support
May 04, 2020, 08:03:21 PM

i will move this topic later into the snapshot section, but i will ask now here, since it is important:
Can you please help me with testing the new 32bit version of FET, even if you use a custom version?
I updated to a newer Qt version and to a newer compiler.
The "only" test i need is a ssl test.
So a check if ssl connection is working. Especially with Windows 7 32 bit.

Please download the new 32 bit version:

Start FET and check for internet updates. So you must have checked "FET -> Settings -> Search for updates on startup".
Please restart FET if you just checked it.
Wait a few seconds. If there is no warning then all should be fine. Please let me know if all is fine or if there is a warning like "missing dll files".

Thank you
Please read the latest manual. I know there are a few TODOs in the manual, i hope i can do that soon.

General Stuff / 32bit and 64bit version of FET
January 05, 2019, 11:13:10 AM
The latest precompiled FET version for Windows use the latest Qt version.
With Qt 12.0 the old 32-bit compiler was removed. So FET is now precompiled for 64 bit only.
In fact FET itself doesn't need 64 bit. You can still compile with a 32 bit compiler.
But the new 64 bit compiler is fine. It optimize the code a bit better and so it speeds up generating a bit.

Since a few users still use a 32 Windows I decided to compile the latest FET versions with an 32 bit compiler.
I use Qt 5.9-x for this, since this is a LTS version. It will be supported one more year from now.

The official mainstream support (by Microsoft) for Windows 7 ended already on January 13, 2015. The extended support will end on January 14, 2020.
I will compile the latest FET version with Qt 5.9.x up to that date.

If you are still running Windows 7, you should think about using an other OS soon.
Maybe just check this sites:

You can get FET 32 bit versions here:
German / Deutsch / Kursplanung Oberstufe
November 09, 2018, 04:56:03 PM

ich suche Tester, die meine neue Oberstufenkursplanung testen.
Im Moment existiert nur ein Import für Kurs42, LuPO und SchILD (NRW).
Falls sie eine andere Software benutzen, würde ich dafür auch einen Importfilter schreiben. Mich bitte kontaktieren, da ich dann auch zumindest einen kurzen Beispieldatensatz benötige.

Die Software kann man hier laden:
old version removed - please get the latest version - see below

Schönen Gruß
Wenn Sie die FET Daten in TiTiTo importiert haben, dann können die Daten für SchILD exportiert werden.

Öffnen Sie als erstes TiTiTo.
Gehen Sie auf "TiTiTo -> Export -> SchILD" und machen Sie einen Doppelklick auf einen Dateinamen um die Daten zu exportieren. Wählen Sie das richtige Jahr und den Abschnitt aus.

Beim Export werden evtuell einige Daten nicht exportiert, da SchILD z.B. nicht mit Aktivitäten ohne Schüler oder mit Pausenaufsichten umgehen kann.

Beachten Sie mögliche weitere Warnungen und merken Sie sich das Exportverzeichnis.

Werfen Sie gerne einen Blick in die exportierten Datein. Sie sollten darin die Klassen, Lehrer und Kurse finden. Sie können die Daten hier notfalls auch per Hand anpassen (z.B. wenn Sie die Vertretungsreserve in FET eingegeben haben, aber SchILD damit nichts anfangen kann).

Wichtig ist, dass die Namen in FET und SchILD genau gleich geschrieben werden, da sonst SchILD die Daten nicht importieren kann.

Öffnen Sie als nächstes SchILD.
Erstellen Sie als erstes eine Sicherheitskopie, damit die einen möglicherweise fehlerhaften Import schnell rückgängig machen können.
Erstellen Sie die Sicherheitskopie unter "SchILD -> Extras -> Datensicherung".

Importieren Sie die eben erstellen Dateien.
Wählen Sie unter "SchILD -> Datenaustausch -> Schnittstelle SchILD-NRW -> Import" den korrekten Ordner aus.

SchILD sollte nun mindestes die Kurse.dat und ggf. andere Dateien anzeigen und diese Datein schon für in Import markiert haben.

Importieren Sie diese Dateien.

Im optimalen Fall werden keine Fehler angezeigt.

Evtl. werden Fehler angezeigt. In diesem Fall handelt es sich i.d.R. um unbekannte Klassen, Lehrer, Fächer oder Kurse. Sie haben wahrscheinlich entweder in FET und SchILD verschiedene Namen benutzt, oder Sie haben in SchILD noch nicht die neuen Namen eingepflegt. Bitte korrigieren Sie ihre Fehler und importieren Sie erneut.

Prüfen Sie als nächstes, ob die UV korrekt importiert wurde.

Schauen Sie sich die Daten unter "SchILD-> Reiter 'Akt. Halbjahr' -> Reiter 'Leistungsdaten'" an.
Prüfen Sie, ob die Schülern die richtigen Fächer, Lehrer und Wochenstunden haben.

Schauen Sie sich die Daten unter "SchILD -> Schulverwaltung -> Kurse" an.
Prüfen Sie, ob die richtigen Kurse angelegt sind.

Im optimalen Fall haben Sie alle Daten richtig eingespielt.
Notfalls spielen Sie die Sicherheitskope wieder ein, verbessern die Daten in FET oder in der Kurse.dat und importieren die Daten erneut.
General Stuff / Linux Mint - FET bug
June 04, 2018, 10:21:51 PM
I just got a report that guys with Linux MINT that want to use FET form the included packet manager of their distribution have got problems to open sample files and the documentation, since all files are compressed (ends with gz).
Anyone knows how to write a bug report to that guys?
Anyone noticed similar problems with an other Linux distribution?
I released a new TiTiTo version.

You can download it here:
Windows 7 or higher: -- expired -- please get latest version ---
MacOS 10.10 or higher: -- expired -- please get latest version ---
Linux: * see below (like openSuse, Ubuntu, Fedora, Raspbian, ...)

Read a short manual:

* I can compile native Linux version. Just write me an email.
If you can't wait for a native compiled version you might already test it with the windows version even under Linux! You can run it with Wine ( ) and CrossOver ( ) under Linux.

5.0.0: - use Qt 5.9.1
5.0.1: - improved html if you use "repeat names"
5.0.2: - hide teachers in get teacher for substitution dialog similar to schedule supervision
5.0.3: - new search dialog (find changed/unchanged substitution)
5.0.4: - bring forward hours ignore by default activities without students and supervision now. (can be turned on again)
5.0.5: - schedule supervision has got 2 new options (same building on both sides. same building and free)
5.0.6: - all dialogs with a timetable combobox: now the latest timetable is always preselected (instead of the first one)
5.0.7: - teachers statistic can print all activities, without supervision and supervision only
5.0.8: - fixed statistic counting if an amendment is set while the default activity is canceled

5.1.0: - display same starting time id in get teachers for substitution
5.1.1: - display same starting time id in get rooms for substitution
5.1.2: - speedup get teachers for substitution
5.1.3: - optimized print supervision table
5.1.4: - optimized id of activities if you split activities automatically
5.1.5: - inactive activities will be skipped by default if you import a timetable (can be turned on again)
5.1.6: - fixed a crash bug: printing and exporting of a timetable crashed if there are less then 10 teachers in the dataset
5.1.7: - print and export from a specific hour up to an other hour
5.1.8: - display activity id of team teaching activities in get teachers for substitution dialog
5.1.9: - display students names in get teachers for substitution

5.2.0: - skip inactive not available times while importing now
5.2.1: - detailed teachers statistics support level of detail like in substitution export
5.2.2: - detailed teachers statistics can care about (not) absent teachers
5.2.3: - warning about maybe unneeded supervisions (if you set someone absent and remove that again)
5.2.4: - activities can be renumbered while importing a timetable
5.2.5: - iCal export support supervision
5.2.6: - skip duplicate room constraints while importing a timetable
5.2.7: - changed time format from local into ISO 8601 format to increase compatibility between different operation systems
5.2.8: - absent and substitution table rescroll to the old position if an item was clicked
5.2.9: - support converting from newer SchILD version (

5.3.0: - export and print statistics matrices
5.3.1: - tidy up short cut keys (Searching: F1-F4; View: F5-F8; Detailed View: F9-F12)
5.3.2: - code clean-up (fixed cppcheck 1.80 warnings)
5.3.3: - added .icns file
5.3.4: - default home directory is now home path + "TiTiTo" (needed to avoid writing problems under MacOS)
5.3.5: - TiTiTo asks for language at first start
5.3.6: - default database is SQLite now, not memory
5.3.7: - updated translation
5.3.8: - bug fix in export matrices (If the dataset constains activities without a subject)

5.4.0: - export and print absent teachers, students and rooms
5.4.1: - it's possible to unlock planning activities after supervision planning was done. (But i highly don't recommend it!)
5.4.2: - fixed a possible crash bug while importing a timetable
5.4.3: - fixed wrong teacher names in planning activities 2 dialog
5.4.4: - statistics contain number of hours per week if you export/print a timetable
5.4.5: - fixed wrong teacher names in split activities dialog
5.4.6: - plan supervision dialog doesn't complain anymore if a "normal"/pseudo activity is taged as supervision (to improve statistics)
5.4.7: - bugfix: teacher move forward work fine again (bug was intruduced with version 5.2.7)
5.4.8: - optimised the hide teacher feature in get teachers for substitution dialog
5.4.9: - optimised students, room and subject names in get teachers for substitution dialog if the duration is greater than 1

5.5.0: - tooltip shows detailed teachers timetable of that day in get teachers for substitution dialog (move mouse over days diagram)
5.5.1: - tooltip shows detailed rooms timetable of that day in get rooms for substitution dialog (move mouse over days diagram)
5.5.2: - similar fix as with version 5.4.6 just for the print supervision dialog
5.5.3: - updated translations
5.5.4: - optional publishing at startup or combined with printing
5.5.5: - optional silent publishing
5.5.6: - fixed a crash bug in the first search dialog (if you search for a subject and database contains a supervision without a subject)
5.5.7: - improved sorting in the printed/published substitution table if there are more than 9 hours per day

5.6.0: - improved manual planning (automatic kick of conflicting activities)
5.6.1: - a new direct move behaviour in planning dialogs (without setting inactive)
5.6.2: - show inactive activities if you leave teacher/students/room activity planing dialog
5.6.3: - hide/show supervision hours in teachers, students, rooms and subjects planning views
5.6.4: - show/hide all inactive activities in teachers, students, rooms and subjects planning dialog
5.6.5: - reference to version 5.0.6: i forgot to improve the teachers statistics. this is added now.
5.6.6: - it is possible to add a new teacher (but at the end of the list only)
5.6.7: - fixed visual bug: if a user selected other sortings in a few tables sometimes cells kept empty after modification

5.7.0: - new planning dialogs with horizontal and vertical time view
5.7.1: - all planning dialogs have got coloured inactive activities
5.7.2: - more detailed information in the statistics
5.7.3: - updated translations
5.7.4: - find substitution data doesn't crash anymore if there is data of a not valid timetable. it shows a warning now.
5.7.5: - improved GPC export
5.7.6: - fixed a bug in subjects-teachers statistics matrices
5.7.7: - improved SchILD export
5.7.8: - save basic printer options settings in statistics matrices and timetable print dialog

5.8.0: - merge FET timetables
5.8.1: - improved gp-Untis import and convert (better field seperator detection)
5.8.2: - merge custom FET timetabels
5.8.3: - number of available teachers in empty slots and total number of available times per teacher are visible if you schedule supervision
5.8.4: - buildings are exported now if you export a timetable as a FET-file
5.8.5: - sorting by statistics values in get teachers for substitition work fine now (it was alphabetical; so for example "10" was before "2")
5.8.6: - both tables in the "same starting times"-dialog are sortable now
5.8.7: - source clean-ups
5.8.8: - calaculating "move forward hours" might hang in an infinite loop. (Bug was introduced with version 5.8.7)

5.9.0: - modified database structure
5.9.1: - optional caption is added to most tables
5.9.2: - schudule supervision shows available teachers in the tool tip if there are less than 25 teachers
5.9.3: - schudule supervision shows available times of teachers in the tool tip if there are less than 25 times
5.9.4: - schedule supervision shows ratio supervision vs default hours
5.9.5: - "move forward hours" are marked with "!" if there if it is an activity with students collision
5.9.6: - large comments support <br /> (new lines)
5.9.7: - updated translations

What is the first day of school around the world?
Here in Germany it is for example officially 1. August; but because summer holidays are different in several federal states of Germany it starts in fact between 1. August and mid of September.
What's about your country?

I will start a small table here and add you answers: (last updated 11.05.2018)

CountryStart time of a school year
AlgeriaEarly September
Germany1. August (in fact between 1. August and mid September)
MaroccoEarly September
Romania15. September
Get Help / FET Manual - User Guide
April 04, 2018, 04:57:48 PM
I updated the manual up to version 0.9.
Please let me know bugs, suggestions or other ideas.

Read the manual here:

I started to record videos. I hope i can do more later:
Get Help / How to install FET?
March 29, 2018, 09:01:01 PM
Sometimes guys ask me per email "How to install FET" or "How get FET with language X?"
Check out this video:

Get Help / MSVC and FET compilation problems
March 08, 2018, 08:57:06 PM
MSVC is pretty "bad". I used the new 2017 Community edition vs MinGW 5.3.0. That version is 2 years older.

Results on my computer with the same file and the same seed of course. Also running it 2*2 times and comparing if the results are the same. (Of course generated timetables are the same):

MSVC 2017: 1 minute 32 seconds
MinGw 5.3.0: 1 minute 26 seconds

So i suggest to stay at the gcc compiler. (But with fixing the compiler problem of MSVC)
General Stuff / Compiling time (with Raspberry Pi 3)
February 18, 2018, 08:15:48 PM
As you know the Pi 3 is not the fastest computer, but a very cheap computer to do timetabling. See
This computer has got 4 cores, 1GB RAM and cost only around 35€.

If you are interested in its speed, please read

If you want to compile FET  you need to install the "Qt 5 development default package" (currently version 5.7.1 is included in the Raspbian package manager).
Than just as always:
Decompress the FET source.
Open the terminal and go into the fet directory.
Run ,,qmake"
and ,,make"

Sadly the Pi is not very fast, so compiling take a lot of time.

As you know, you can speed up compiling by using more cores. But again: Sadly compiling need a lot of RAM. Compiling FET need up to 300 MB per used core.

So with a fresh install Raspbian and the default Video size of 64 MB you will run out of memory if you try to compile with all 4 cores.

You can compile with 3 cores (,,make -j3"). I suggest to close all other unneeded programs. Since a few times the needed RAM will be up to 900 MB. (But on the other hand it is also many times less than 500 MB in total; so if you know how to handle that problem you can compile with 4 cores most of the time.). It will take around 1 hour to compile with 3 cores.

If you want to do other things at the same time (like reading your mails or surfing in the internet) I suggest to compile with max 2 cores (,,make -j2"). It will take around 83 minutes to compile.

By the way running FET might need less RAM. Of course that is highly depending on your data set. Running the German example file with 33 teachers and 22 classes need around 70 MB RAM.

So happy timetabling.
General Stuff / Meltdown and Spectre
January 09, 2018, 09:04:05 PM
Anyone mesuare already the speed with and without patches for Meltdown and Spectre? I read that it depend on the OS (less on Windows 10, more with older versions), the CPU (less with inter 6000 or higher. More with older versions. And of course the used Software). So if you measure: Please tell us also OS and CPU.
I already know that the latest gcc under linux is much faster than the MinGW compiler under windows.
I wonder now if the Microsoft compiler will be faster. Maybe i misunderstood, but it look like it is free for open source projects to use "Visual Studio Community 2017"-Edition. I tried, but i failed to compile FET. Someone who can give me a small hint how to compile fet with msvs?
By the way: Dear Mac users with an parallel windows system on the hard disk: Maybe you can check if clang (under MacOS) or minGW (precompiled Windows version) is faster? Just use the same FET version, same example file and same seed to compare the speed. Please check if the generated timetable is the same (and/or if the seed is the same at the end).
Talk It Up! / Robot programming
December 14, 2017, 10:16:09 PM

i am thinking about teaching robot programming at school.
Do you have experience with that? What are the advantages and disadvantages?

Is it better to buy an already build up system like:

Or is it better to build up yourself with:

Or with one of the many arduino robot systems:

I have got experience with LEGO at my old school. It is very robust, but also very expensive and i don't like the GUI interface very much.
So i like do more "real" coding like with an arduino bot. But i fear they are not as robust (because they are pretty cheap). So maybe the already build up robots are better?
Let me know if you have experience with that. Do you have got nice hints or other suggestions?
General Stuff / Activity Planning
October 13, 2017, 10:48:53 PM
I get several question how to do the activity planning best.
First of all i recommend to do the activity planning with FET. see FET -> Advanced -> Activity Planning
If you don't do the activity planning with that, you can of course do it different, but i highly recommend to check the FET activity planning before generating; because you can avoid a lot of bugs if you check that.

I must admit that there are a few disadvantages with that dialog. In fact a "real" activity planning software will be useful. But i don't know a good other tool at the moment.
An alternative variant is using a spreadsheet like LibreOffice Calc or Excel.
Such a spreadsheet have got a few advantages if you compare with the FET activity planning. But it also has got a few disadvantages.

If you are interestedin doing the activity planning with a spreadsheet, than check the attached file. There are two variants in that file. (Sadly i can't sent you my original file, since it contains too much critical/private data; so i just wrote a small example.)
German / Deutsch / Digitaler Vertretungsplan
October 09, 2017, 03:57:32 PM
Es gibt eine schöne Beschreibung wie in einer Schule ein günstiger digitaler Vertretungsplan realisiert wurde.
Die Beschreibung bezieht sich zwar auf UNTIS, aber mit TiTiTo funktioniert es ganz genau so. (Abgesehen vom Austausch des Webbrowsers. TiTiTo arbeitet auch mit dem beiliegendem Webbrowser sehr gut zusammen, sodass ein Austausch nicht nötig ist.)
I got a bug report. Sadly i can't see a good solution without getting other (bigger) disadvantages.

If you get wrong characters while importing a CSV file, please save the CSV file with UTF8 encoding.

So if you use LibreOffice calc, please "save as", selecte "csv" fileformat, check the "Edit Filter Settings" checkbox and select "UTF8" character set.
You can also change the encoding in Excel. (I currently can't write the exact way, since i haven't got Excel at home. But it is pretty similar to LibreOffice).

If you use an editor to  write your csv file, please use an "professional" one. Not an "easy" one. Several "small" editors doesn't allow to change the encoding.
If you can't change the character set in your editor i suggest a very professional editor like "notepad++". You can save as UTF8 with that editor. see
Talk It Up! / Shortcut Name Generator
September 17, 2017, 12:13:55 PM
Maybe someone knows a tool that can care about shortcuts?

As you know i highly suggest to use shortcuts in FET (since the timetables will be too large if you don't use shortcuts).

Now i am thinking of a tools that can do this:
a) import last name and/or shortcut (optional also first name) by csv
b) enter last name and/or shortcut (optional also first name)
c) give a warning if a shortcut already exist
d) suggest a shortcut so i don't need to enter it myself
e) give a warning if a shortcut is too similar to an already existing one. (For example teacher Mr. Westwood and teacher Mrs. Westtown. Maybe you set shortcut length to 5 characters. So you might use shortcut WESTW und WESTT. But sadly this shortcuts are very similar. So it should warn if there are too many similar characters at the same position. So it is better to choose a more different shortcuts like WESTW and WTOWN)
d) print the names and shortcuts

Anybody knows such a tool?