heftyAD is intented to be a huge, elegant, fun and transparent algorithm demystifier. Its aim is to help people understand or explain how algorithms work in a very simple and easy way. For more information, feel free to visit
- any of these french forums: OpenClassrooms | ZesteDeSavoir | Developpez.com
- or the project web site (currently unavailable)
- or even YouTube.
Basically, you can translate heftyAD's user interface to several languages. You can also create a model (array, matrix, graph, maze, automaton, ...), customize its items (text/value, brush, pen, font, opacity, shape, ...), create an algorithm and apply it to a model via unique and amazingly well animated simulations. That said, algorithms may not require a model to proceed. For instance a maze generation algorithm doesn't require any model, as opposed to an array sorting algorithm which, of course, requires a model (an array) prior to execution.
Here are a few screenshots highlighting the above-mentioned features.
The previous screenshot shows a self-explanatory algorithm. Such algorithms can be created in C++ or JavaScript, using the API provided by/for heftyAD. They can thereafter be executed from within simulations. A simulation involves an algorithm (and possibly a model). The previous example denotes a simple sorting algorithm being applied to a certain model (an array in our case). Simulations are based on animations and are intented to help people easily explain and/or understand how algorithms work. heftyAD also allows users to control simulations: pause, restart and stop.
Information about how to contribute will be shared later.
In the meantime, you can compile heftyAD source code and give feedbacks if you got any. Moreover, for the translation feature to work,
- copy heftyAD qm files to the heftyAD-translations directory located at the application directory, the one which contains the executable (as generated by QtCreator, if you use this IDE). Make sure you copy the qm files to the right directory (debug or release).
heftyAD also shares information on Trello: each implemented feature is marked [DONE]. I'll try to keep this track up to date.
I have been working on heftyAD since march/april 2015. By the end of august the same year, I released a first version for the Windows OS only. You can download it here free of charge, even if you don't own a Dropbox account. That first version provides you with some nice features:
- creation of graphs and automata, you have some built-in examples
- a step-by-step version of the Dijkstra pathfinding algorithm, letting you control (pause, advance, ...) the simulation
- automatic backups, so you can resume your work after an unexpected shutdown (from the Task Manager for instance)
- a translation feature, but not every text in the gui is translated (since I did not have enough time)
- ...
But despite all these features, I restarted the project from scratch at the end of the year (december 2015). Indeed even if the first version works, I wrote/designed it while I was learning Qt and C++. So the source code was quite ugly and wasn't meant to be shared. Moreover, the software suffered from several imperfections:
- it doesn't provide the multi-open feature (many instances of the software should be launched)
- only one algorithm is provided and the user can't create his/her own algorithms
- no way to curve the edges within a graph
- no undo/redo is implemented
- ...
Put in a few words the next version is 100 times better and filters the above-mentioned imperfections.










