SoluCheck is my very first real "Program" - it has an installer, a GUI, and is extraordinarily user friendly. It's created entirely in MATLAB®, and uses MATLAB®'s GUI elements.
SoluCheck was started from a desire to be lazy. For CS 1371 (A class which I now TA for), we have to create code that will, theoretically, solve a given problem for any starting conditions. These starting conditions are given as inputs to MATLAB® functions, or as external files (i.e., text files, image files, etc.).
Originally a command-line utility, it consisted of one function - Solver - that took in a function name (as a string), a "number of iterations" (how many times solver would test the function), and a variable number of arguments - arguments that specify the starting argument and the "step size" for that argument. Basically, solver would increment the argument by its step size each successive iteration. This was clunky, to say the least, and for a large number of arguments, would quickly go out of hand with number of arguments. Indeed, the first solver didn't even work!
Still a command-line utility, this time the solver at least worked... but only for numbers. Characters caused the solver to straight up die, and error checking? Look who's asking for the moon.
Now this time, there was no real "hot new thing" - it was just bug fixes. It was becoming clear at this point that a GUI would be almost a requirement - the argument entry was becoming nightmarish!
This is it. The beginning of SoluCheck, SoluWare (The "parent company" responsible for SoluCheck - I had my head in the clouds). The world's first (and still only!) GUI that will programmatically check homework for a variety of test cases. Mind you, there are still some problems. The business logic and presentation logic are still combined - not good for any product, and there are still a variety of arguments not testable. But it's a start.
Now, SoluCheck is at the forefront of MATLAB® function testing. Almost a testing framework, but made for programmers just getting used to MATLAB®, but useful for experienced Programmers as well.
SoluCheck has a multitude of features that help the average MATLAB® programmer test and debug code. Features include:
As noted above, SoluCheck has a variety of advanced options, detailed below: