It’s been a while since I posted, well pretty much anything, so here is a small status update for you! In case you were wondering why was there a quite noticeable stop in the flow of posts, well, the reasons are rather simple: I’ve been busy learning C++ in these past couple of months and I’m happy to say that I’ve made some pretty good progress. I still have (quite) a lot to learn, but now at least I have something worth of sharing. Nothing fancy, nothing perfect, but at least now, it really starts to look like some pretty serious code (from noob perspective). To celebrate this milestone, I set up a github account, where everyone can see some code. My account can be found on github.com
The first code I share with you contains some classes that could one day be useful for a librarian program, hence the name of the repository Librarian (snapshot above). Probably the most interesting part of the whole thing is the Isbn class, which, as its name suggests, handles ISBN numbers. As it turned out, handling ISBN numbers is a pretty interesting thing to do, as there are many requirements for an ISBN number to be considered valid. Character count, group count, special character, checksum, etc. I really enjoyed coding this, as it taught me quite a lot about classes and error handling. Unfortunately, the very first tries are lost, as I did not follow changes with git from the very beginning, and as such, a very interesting transition from bad to better error info propagation is now completely lost. My first try used the not very good (actually pretty bad) info propagation through function return values, and only later did I implement exceptions, which really are life saviours. Propagating error information through function returns got really hard to handle and confusing even in this small code, so it could’ve been nice if I could show the difference between the two methods, but this opportunity is now gone. Well, maybe next time.
Anyway, thanks for reading, and of course, any future code worth of sharing will also be found on github so make sure to visit my account regularly (not too regularly though, as learning and writing interesting code in the same time is a really slow process).