Time has passed quickly since the first official release of Okteta, the KDE 4 hex editor, and the release of the second version, 0.2, is again just two more month away. The scope of new features has been frozen some time ago. Now the codebase is getting some cleanup, which means removing bugs left and adding more unit tests. Update: Yes, bugs like that previously visible (after one night of sleep) in the picture below, the source code encoder always taking data starting at offset 0, not the selection. Fixed.
Adding unit tests afterward might look strange for people used to test-driven development. But I have found that I often want to simply sketch a possible solution directly in code and see if it works out from a structuring POV. Only then I see the time usefully spent for the hardening of a code module’s interface with unit tests. Is this called use-driven development? So far this hasn’t bitten me too much, at least I cannot remember nightlong searches for little, but complicated bugs. And bugs.kde.org still reports zero bugs for Okteta (Yes, I have heard people are using it🙂 ). Perhaps because I favor light classes with simple functions, separated by concern. But this pays in a large number of classes, just see the endless logs of a complete Okteta compile, which make me always wonder if I overengineer😉 Makes it easy to loose the overview. Needs to be matched with another technique, as someone teached me, which is reduceable design. I still feel I have the overview. But do others?
The new, additional view modus Rows is of course also supported by the format “View in Plain Text” of the “Export”/”Copy as” commands, in the WYSIWYG-style of Okteta. See yourself and compare with the selection in the screenshot above:
0000:0090 | CC D1 13 00 CC D1 13 00 | Ì Ñ . . Ì Ñ . . 0000:00A0 | CC D1 13 00 B0 27 00 00 84 54 00 00 06 00 00 00 | Ì Ñ . . ° ' . . . T . . . . . . 0000:00B0 | 00 10 00 00 02 00 00 00 7C ED 13 00 7C ED 13 00 | . . . . . . . . | í . . | í . . 0000:00C0 | 7C | |
Let’s see if I find the time next year to finally add to 0.3 what I really wanted to do with Okteta🙂