How to stop eating bad food

Seriously, I can’t stop you from eating bad food, and there is no magic trick either, but I sure can help you with this one trick that really works.

If you want to stop eating something, or at least eat less of it, let’s say potato chips for example, just don’t buy any! So when you’ll get hungry at home, you won’t have any lying around and you’ll eat something else. It doesn’t make it any easier the rest of the time, but if you’re eating at home or eating food that comes from your home 80% of the time, we can say that 80% of the time you won’t be eating chips, which is probably already better than what you’re currently doing.

It doesn’t mean to eat less, but to eat better food, instead of buying chips, buy more vegetables/fruits/nuts or even meat if you want. Even if it doesn’t taste as good, when you’ll actually be craving for something, there’s a chance you’ll be too lazy to go to the convenience store and you’ll manage to eat what you already have instead of going out.

It really works, I do it, if I buy chips, I think about eating them as long as there are some left in the bag, but when I don’t have any, I eat anything else that I have and I manage to survive anyway. I still eat them sometimes, because life is not only about suffering, right? But I reduce access to it as much as possible so I can have more control over what I eat.

I used the potato chips as an example, but it should work with pretty much everything else, if you don’t have easy access to a particular type of food, you have a lot less chances of eating it.

The return of KromycKs

After another break, I am finally back at drawing comics. But this time, I have actually made a few changes that will hopefully allow me to have a consistent upload schedule.

As I already said many times in the blog posts of the old KromycKs website (I didn’t bother bringing those back on the new website because the content was only relevant to the moment they were posted), for quite a while now, I have been quite irritated by the whole process of drawing comics. The way I was doing it seemed rather inefficient and the results were never really up to my expectations. So it isn’t that I don’t have inspiration or desire to draw them anymore, it is just that it ends up being a pain in the a$$ to do.

So now that I finally got the motivation to start drawing comics again, I needed to make some changes to be able to enjoy it. Here is what the changes are:

Use the right tool for the job. Over the years, I’ve used a few methods and softwares for drawing my comics, I started with stick figures in black and white and quickly switched to more detailed drawings in color. I made some of them with vector graphics while some others were made in raster graphics (pixel-based drawing). What I recently found out, is that nothing prevents me from using multiple tools on the same drawing, by using the appropriate one for each type of job. What it means, is that instead of struggling to draw everything in a single software (characters, texts, bubbles, borders, etc), I could make each individual part with the one that is more suited to the job.

Do what you are good at. As I became more accustomed to the tools I was using, I always wanted to do a little more each time. In my case, a little more meant adding more details and drawing better shapes and characters. But I am not good at “details”, I’m more of the “big picture” type. So because the attention to detail is not natural for me, I ended up spending so much time getting everything perfect that I started hating the comic before finishing it. What is also particularly interesting about this is that I have always felt that my drawings were bland, even if I spent a great time “polishing” them. Then I remembered, when I used to play pool (billards), if I took too long to aim, I would generally miss the shot. My best shots were the ones where I didn’t took time to think, I just did it. This is the minset that I want to apply to my comics now, at least from the drawing perspective, do what feels right without overthinking it. This will make comics that contain many imperfections but will hopefully result in drawings that are more pure, more true to myself.

Have a good delivery. So as I said in the last paragraph, I want to think less about drawing and just do it. But I don’t want to apply that to the actual delivery of the “message” or “punchline” of my comics. The reason why is quite simple, finding ideas can be done at any moment of the day while doing anything else. And while I think about comics, I’m not thinking about the end of the world, so it’s a win-win situation. Also, thinking about the best way of presenting the comic is something that I enjoy doing, so I don’t consider it a nuisance. Ok, so the jokes won’t change much, but there will still be a change, and this change is closely related to the previous point. Because drawing is the most time consuming and annoying part for me, the choosing of the best delivery will depend on the complexity of what has to be drawn. So until I get really good at drawing, or more patient in general, I will find comic ideas that won’t require drawing complex scenes.

Recycle. This one goes hand in hand with the delivery. As you may have already noticed, most of the recent comics I made used the same image at least 3 times. This is something that I will try to prioritize in the upcoming comics, because it saves me time. So recycling panels and focusing a little more on dialogues. It doesn’t mean that I will completely stop making visual jokes though, because I still enjoy it, it only means that it won’t be the main focus.

As for the schedule, I want to keep the same as before which is to publish a new comic every week, around monday or tuesday evening. I still have many other projects, like writing articles, making music, working at my real-life job, so I can’t commit to more than that at the moment.

About the new website

LeKrocK has a new website, and it isn’t only about the looks.

For me, this new website is a turning point in my artist’s “career”, because I didn’t code it myself. It may not seem like a big deal but as a former programmer, when it comes to anything IT related, I like to do things by myself. So coding the website was a necessity for me. But the problem is that I am not doing it as a job anymore because I hated it, so I’m not that up-to-date with the latest tools and methods as I used to be, especially concerning security and design. I still have no trouble getting around writing Python scripts and coding some C++ but only to my own standards. This becomes a problem when building a website, because everything changes so quickly that you constantly have to adapt to those changes. Not that I have anything against learning and bettering ourselves and our techniques, but it’s just that this particular subject is not my cup of tea. I like coding desktop applications rather than coding for every existing web browser.

So what made me switch from a self-made PHP website to a WordPress one? Security is a big factor in this decision. For the same reason I decided to pay for a hosting service instead of hosting the website on my own home server. I don’t have enough knowledge on the matter to provide a safe environment for the users. I know the basics about password hashing, SQL-injection, GET/POST methods, HTTPS, firewalls, etc. But what about everything else that I don’t know about that are standard in the industry? Some people make a living out of learning and applying those concepts while I would have to spend a great amount of my free time learning about them only to clumsily apply them on my own website and server. Such time that I wouldn’t have to perfect my craft. So I decided to trust that these people will do a better job than I would, which I’m sure they do. I am well aware that WordPress is widely used on the internet, which makes it an easy target for malicious people, although I consider that it still is light-years ahead of what I could possibly make by myself alone.

An other factor in my decision, as I mentioned above, is that I can spend less time managing and more time creating. Coding and testing a website (or any kind of computer program) is a long task. Diving back into your code six months later to make an update can also be quite long and fastidious. Adding a new feature can also be long, depending on the complexity of the said feature, especially if it involves understanding the old code and changing it in addition to actually creating the new feature. And testing it all once done will also take some time. So now, all this coding and testing time can be invested in drawing more, writing more and making more music.

A factor that will make the most difference for the actual users, is that the website will provide the basic features of any modern website: the ability add comments, filtering options, a good looking design, efficient navigation, etc. Such things that I decided on not providing for the old website just to save time.

The last reason is that, to save time, I also didn’t add any admin features, which means that every time I wanted to upload something to the website, I had to interact directly with the server’s filesystem and the website’s database, which is not the most efficient workflow.

So here it is, the new website, that will hopefully make your experience and mine a lot better than it was.

Tk Grid Form Resize

Most of the places that explain how Tk’s grid works will tell you the following:

(The examples are made with Python but should work with any language that supports Tk.)

Use “columnconfigure” and “rowconfigure” with a “weight” of at least 1 on each column and row inside the frame. So for a 2×2 grid:

myFrame.columnconfigure(0, weight=1)
myFrame.columnconfigure(1, weight=1)
myFrame.rowconfigure(0, weight=1)
myFrame.rowconfigure(1, weight=1)

Use the “sticky” option for every widget that needs to stick to at least one side of its container. So let’s say we put a button into each cell created above and make them stick to all four sides of their cell:

myButton1.grid(column=0, row=0, sticky=(N,S,E,W))
myButton2.grid(column=1, row=0, sticky=(N,S,E,W))
myButton3.grid(column=0, row=1, sticky=(N,S,E,W))
myButton4.grid(column=1, row=1, sticky=(N,S,E,W))

But even after doing this, which can take quite some time on large interfaces, it still doesn’t seem to work. The missing element, which no one seems to tell, is that the “root” container also has to be set to a weight greater than 0 with “columnconfigure” and “rowconfigure”. In this case we just need to do it for the cell (0,0) because the frame takes care of all other divisions of the window. So as it is suggested in various places, you probably have something like this in your main file:

root = Tk()
root.title("My application")

Which means that “root”, too, has to be configured by adding:

root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)

And now, your widgets should stick to what you set them to.
Here’s the full code of the example:

#!/usr/bin/python

from tkinter import *
from tkinter import ttk

root = Tk()
root.title("My application")
root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)

frame = ttk.Frame(root)
frame.columnconfigure(0, weight=1)
frame.columnconfigure(1, weight=1)
frame.rowconfigure(0, weight=1)
frame.rowconfigure(1, weight=1)
frame.grid(column=0, row=0, sticky=(N,S,E,W))

button1 = ttk.Button(frame, text="Button1", command=lambda: print("Button1"))
button2 = ttk.Button(frame, text="Button2", command=lambda: print("Button2"))
button3 = ttk.Button(frame, text="Button3", command=lambda: print("Button3"))
button4 = ttk.Button(frame, text="Button4", command=lambda: print("Button4"))
button1.grid(column=0, row=0, sticky=(N,S,E,W))
button2.grid(column=1, row=0, sticky=(N,S,E,W))
button3.grid(column=0, row=1, sticky=(N,S,E,W))
button4.grid(column=1, row=1, sticky=(N,S,E,W))

root.mainloop()

Access Databases

I don’t know how it’s possible that someone at Microsoft decided that Access was still relevant in 2018. I can understand that at some point in the past, it could have been useful in some cases. But now that IT has evolved to what it is now, how can such aberration still exist?

Ok, I studied computer science a few years ago and worked in the field for a few years, so I consider that I have a respectable amount of knowledge and experience in IT, yet I still have a hard time doing the basic things with this software. I believe that Microsoft has great engineers that know a lot more about computers and programming than I’ll probably ever know, so how can something like Access even exist?

A little while ago, I had to get back into Access do to a few tasks that I would describe as “basic”, without getting into details about what I did exactly, let’s say that I had to build a database, and build forms and reports that made the data usable by the common mortal. And I almost failed at it! I would probably have done a better and faster job coding the whole thing in C# and SQL.

In the past, I also had to work with older versions, to as far as Access 97, and frankly, I don’t think anything changed in those 20 years, it just seems like the same software with a more modern user interface (mostly the top ribbon, the rest is just the same old gray color). The same old features and ways of doing things, without much improvement in overall usability.

I can understand that there is definitely a market for something in-between Excel and SQL Server, but why does it have to be this. If I can find my way into Excel and SQL Server, why would it be hard for me to understand how Access works? And I’ve never heard of any fellow coder having a favorable or even neutral opinion about that software, we all hate it.

There must be a reason, I guess it’s because it is a piece of s**t of a software. In general, as IT specialists, we can get around in pretty much any software, no matter if we have used it before or not. Because most applications follow similar guidelines when it comes to the features they provide. But Access seems to get away with doing its own thing and not caring about the rest. (not sure why I’m thinking of Internet Explorer at the moment…)

Maybe it still lives nowadays just to allow companies that are stuck with it to continue using their tools without investing in a real database server? But if it is so, why not scrap Access and do a user-friendly version of SQL Server and SQL Server Management Studio? Like some kind of standalone application that manages its own local server (if they haven’t already done it) that can live on a standard PC/workstation and be passed around, just like Access, but with the features and predictability of a real SQL server. Or just make a front-end for SQLite, which does a pretty good job at managing server-less databases.

I don’t expect any business owner or any non-IT worker to learn SQL, but if a software provided a user-friendly way of using databases like Access does while also having a real SQL engine under the hood, wouldn’t it be nice for all of us poor coders that will inevitably have to help those people at one time or another?

Happiness is a state of mind

Like a lot of people, I used to think that happiness was a destination, that someday, after working a lot on it, I would reach it. But I now think that it is more of a state of mind than anything else. The difference between those two is pretty subtile, because even if happiness is a state of mind, you will need to work on it for some time before reaching it. Society wants us to think that happiness will be reached at the end of our life after working our asses off for like 50 years and being all worn out if not already dead. I prefer to think that happiness can be reached in a matter of a few years (maybe less) no matter how old we are. It will require that you make big changes in your life, and the time it will take for you to become happy will mostly depend on how long it takes to make those changes. You would probably also need to not be satisfied by being average or else you won’t really care about bettering yourself anyway.

For me, the need for change towards happiness and an overall better life was first triggered by the lost of a girlfriend and later by the loss of a job I hated. So I finally had to face the fact that my life really sucked to decide that I was worth more.

I’ll talk a little bit about my own experience here as a guy on his way to happiness, I’m not there yet, but I can already see that I’m heading in the right direction. A few years ago, I was working as a website programmer, living an ordinary boring life. At some point I had a girlfriend, who left me for a bunch of reasons that are out of the scope of this article, and now that I think about it, my lifestyle was so miserable that there’s no wonder why I was being such an asshole to her. I remember how I used to say to her every morning how much I hated my job (and just working in general). At that time, I was always thinking about earning more money even if I was already earning more than I really needed. My life was basically only revolving around work and money. When my girlfriend left, I finally realized that I was missing something, so I began working on myself to become a better person. But I was still working a job I hated and couldn’t get away from it by myself. About a year later, I was still working that same job, when my boss asked me to have a talk with him to finally hear him say that I was fired. Ok, most people don’t take it really well when they get fired, but for me, it was so much of a release that I literally had difficulties holding my face from smiling in front of my (now former) boss. That is where I really began “living” for real.

From the moment I was free, there was still some work to do, as much as losing that awful job was nice, I wasn’t ready to be happy yet.

I think that there is two sides to happiness, there are things that lower it, and things that increase it. So the solution is pretty simple, eliminate as much as possible of what lowers your happiness, and add as much as you can of what increases it. Simple in theory, hard and long to actually apply, but still workable.

So if you want to be happier, you need to let go of the things that prevent you from reaching it. So maybe it’s your soul-sucking job that takes all of your energy, maybe it’s a bad relationship or bad friends, maybe the place where you’re living keeps you from doing what you really want. It will be hard, but it will be worth it. As an example, I used to work as a programmer, but I found out that it was ruining my life, so I decided to stop doing it. I obviously make less money because I’m not specialized in any other field, but I feel way better about myself now. Sometimes I think about how I could go back to this old way of living and earn much more money to buy more things, but right after I also remember how I felt trapped in a routine leading to nowhere and I know I made the right choice. What I’m personally trying to do is to cut out everything that isn’t essential so I have more time for the fun part. It means to do some sacrifices, I decided to stop working full time, so I find seasonal, temporary and/or part time jobs so I have more free time than the standard (at least here in Quebec) 2 weeks in summer and 2 weeks in winter. But on the downside I need to have an older car (and less fashionable) (I still think that I need a car but I could also decide to get rid of it to become less reliant on money), I have to take better care of what I have so I won’t waste/break what I own so I don’t need to buy more things. I have to live with roommates to make the rent cheaper. I also try to buy food that doesn’t cost too much but this one is hard because I also like weight training which kinds of requires that I eat good food (which is expensive by definition). Some of these things can be annoying, but they allow me the live an overall better and happier life.

The other thing you have to do is to start doing what you like (or more of it), it seems easy but it isn’t that much for most of us, we still have to work, eat, sleep and do tons of others things before even thinking of having fun. I’m passionate about music, and I hardly play more than 30 minutes a week on my bass guitar. I need to make place for it in my life. Like I often say, “you don’t need to have the time, you have to take the time”, in others words, if you wait for the day you’ll have free time to do something, you’ll never do it, so just take the time you need and do what you really want with it. My happiness level is directly proportional to how much I have been working on things that I’m passionate about in the last few days. For instance, in the last three weeks before when I started writing this article, the first one was depressing because I had a really busy work week. I didn’t have much time to do anything else other than working and I was feeling down. The other two weeks I was on vacation, so I did some weight training, wrote a few things, played music and did other fun things, and I also was in a much better mood.

You probably have already heard somewhere that happiness is living the present moment, not the past or the future. And I’m also convinced that it is true, but what it doesn’t say is that if you live the ordinary life, you won’t be able to do it because the present will be awful. If you’re not already a happy person, you’ll have to change your life to make the present enjoyable. It’s up to you to find what lowers and what increases your happiness, once it’s done, you’ll need to grow some balls and make the necessary changes. Another thing worth saying is that if you really go towards a better life, most people won’t be able to understand what you do, so if you are the kind of person that needs to “fit in” and be accepted, happiness is probably not for you.

I really like the next phrase and I think it sums up most of the article: “If you want something you’ve never had, you’ve got to do something you’ve never done.”. Of course if you’re not satisfied with your life now, there’s got to be things to add and/or to remove or else you’ll keep the same boring routine that you hate.