python, flask, mysql and pyodbc

So imagine you've been assigned with some work and someone decided to make it so that you're going to develop with some not well designed popular infrastructure, and this is exactly what I did for the previous school assignment that I had.

The only component that isn't required is flask, but since I'm still unfamiliar with GUI programming, I've decided to use flask because I had some experience with it.

Anyways, the point of this is to say that I didn't have a good experience developing with these tools for various reasons.


Imho the biggest problem with python isn't with it's speed, but with the way the language has been structured. Despite people claiming how easy of a language it is for beginners, people forgot that it's data structure and syntax is among the most unique. It wouldn't be a problem if you're writing simple, like really simple programs with python that acts as scripts, since like most languages, you would have the ability to ignore it's more obscure parts, and it happens with many OOP languages. But what makes python stands out is that, libraries would sometimes forces you to use those obscure features, most notibally the different types of data structure, and the way for loops works in python. More time is spent on searching for the right way to use a different way of writing the program rather than simply putting the logic into the program, and it's pretty annoying and time consuming as it adds up, just because it decided to be the odd one out in terms of terminology and design.


Flask isn't bad, however, it isn't really good enough to be considered good either, it does it's job as it should and that's kinda it. The biggest problem is that there are multiple approaches to do the same thing that cannot be simply digested as different algorithms, but rather a completely different process that probably has different set of intentions in mind, which doesn't really align well with it being described as a simple web framework.


It starts off as more of a me problem than a MySQL problem, since I'm an arch user, if I search for MySQL with yay (or pacman, if there's no reason to use an AUR manager/you think there are better alternatives than yay), the first result would be MariaDB, which is a community fork of MySQL because apparently MySQL is getting bad with it's code, and it's likely something your school didn't teach you about while they're claiming MySQL being the most powerful database system when the new kids mostly talks about PostgreSQL and MongoDB nowadays.

So after I read it I decided to install it, and when I tried to put the SQL my groupmate made for MySQL it worked flawlessly, the process was also pretty quick, as it should be. But eventually I'll have to implement it with odbc and I don't want my rigid tutor to give it a low score just because I clearly didn't use "MySQL", so I tried uninstalling it and install the actual MySQL from the AUR that needs to be compiled, which shows how obscure it is, at least in the arch world.

So now the problem actually lies on systemd out of all things, because with all the process and ports used, and that mariadb shares the same symlink as MySQL's, it took me a while to figure out how to make it work. But after that, I realised how slow MySQL is compared to mariadb, and there are lots of processes that gets more obscure when I'm testing in the SQL environment.


I still don't quite get how it works, all I know is that it finds a small file as a connector to the SQL, which does sound good, until the samples shown online doesn't work if the SQL user doesn't have a password, for some reason, and that there are actually multiple implementations of odbc, and it's also somehow hard to simply find the path of the location of the driver, which shows how little people actually uses it nowadays.


It's just a rant of mine with my experience of making a program with these tools, it could very well be me just being bad, and I should've started doing the assignment sooner anyways. Though if you somehow find this relatable, then I guess I'm glad to have someone that suffers the way I do.

Ok that last line was a joke I'm sorry


RSS Feed
Telegram: @H_Karp