Hello y’all! Yet another month has passed. November was quite full of good things in my opinion. It’s been quite a long month so I’ll probably skip some parts because I simply don’t remember. So, first of all and most importantly, I moved! I moved out of The Student Hotel and all the problems that I had with it to my own studio. I really enjoy the place and the location. I might not have a view from the 10th floor as I had before, but I still have a view from the 4th. We’re almost half-way our second quarter of university and there’s things to do every day. It’s been very very very busy. I don’t think I can even compare to my Bachelor’s. I managed to work 50% of the time during my Bachelor’s, but I’m struggling with 25% with my Master’s. It’s much more intensive in my opinion.
I recently moved from the place where I was staying at to my own studio. In addition, since I was building a computer, I wanted to be able to access remotely to its capabitities, as well as any other device I have at home. Thus, I thought: let’s set up a VPN! The problem arised when I went to the configuration of my router and saw that my WAN IP was in the format 172.xxx.xxx.xxx. I immediately knew that that was a private IP. On my ignorance, I decided to search why I didn’t have an actual public IP. Well, apparently there’s a thing called Carrier Grade NATs (CGNATs) which are gigantic NATs that Internet providers decided to create in order to band aid the shortage of IPv4s in many places. So I thought, once again, “let’s see if I have an IPv6”. I open test-ipv6.com and for my surprise (or not) I see a score of 0 out of 10.
Well… I moved recently and was thinking about setting up a VPN with my new fancy router. But I discovered something: the ISP put behind a giant NAT. Didn’t even know that Carrier Grade NATs were a thing and it never happened to me back in Portugal. Suggestions? I want a simple way to access the network remotely: just for the machines, not for the Internet.
After two months of classes and two weeks of exams, the first quarter of my Master’s is finally complete. I can say that 1/8th of my degree is complete. With a new quarter comes new courses. It’s been just a week but there is one specific topic that I found quite intriguing: geometric algorithms, specifically sweep line algorithms. Before getting deeper into the subject, what are geometric algorithms? Well, they are used to solve geometric problems! Now you may be thinking “why is he stating the obvious?”. Since geometric problems usually deal with an enormous amount of diverse data, the computational complexity is very important. A difference between the running time of a bad algorithm compared to an efficient one can be in the order of days, or even months and years. To illustrate this, I’m going to use a variant of the sweep line algorithm. Traditionally, the algorithm is sued to find intersections aong line segments in a plane but there are many variations.
Thanks for noticing the typos. I have considered org-mode for Emacs but I didn’t have time, nor patience to go around it and try it as I should. For now I kept using Hugo and publishing some notes here. I might try in the future.
For quite some time, I have been setting up systems to backup my data of my computer, as well as fetching data from services, such as Trakt, Last.fm or GoodReads. There’s always one kind of service that has been on the back of my mind for a while to backup, but I’ve never got the time, nor the will to do so: email! Email is fundamental nowadays and it is the basis of Internet communication. Almost all online services require an email, and even though we use it virtually every day for the most varied services and uses, it is not the easiest thing to backup. Fortunately, I recently came across this post by Diane where they explain how they are backing up their emails using getemail. First of all, start by installing getmail. In my case, since I use macOS, I will just use the pre-built brew package. For other platforms (since it uses Python), I recommend taking a look at their website.
Here we are again, one more month has passed. Today - or tomorrow because I’m writing this yesetday - is the first day of November! So here comes another “Recently” post. Even though October was packed with joyfullness, happiness, adventures and some stress, this post will be rather short. The autumn has set and the streets are finally getting filled with reds, oranges, yellows and browns. Different trees, different colors. It’s actually very different than what I am used to in Portugal. There we don’t have many reds or oranges: it’s mainly yellows and browns. Lonely leaf I had the opportunity to go for a bike ride for a few kilometers in the south of Eindhoven and the sights were absolutely incredible: sun, then a little bit of rain, clear sky, pine trees, forest paths… For someone that lived all his life on a place were vegetation is rather scarse, this is really pretty for me.
Hello 👋 Today’s newsletter is a bit different (and smaller) than most. I have been quite busy during the past week and this week as well. Starting tomorrow, I’m having three three hour exams this week that count 100% towards my final grade. I don’t even know if this should be allowed. Besides that, I’m also trying to find a place to move in during November. The place where I am at has a variety of issues, and the fact that they use hotel contracts and not regular rental contracts puts us, students, in vulnerable positions. Nevertheless, I am here to discuss personal websites and why do I think everyone should have one! Right now, if I ask you (or virtually anyone else) if they have a Facebook, Twitter, Instagram, (insert some other social network here) account, they will most likely reply “yes”. However, if you ask them if they have their own website, they probably won’t.
“Test, test, test” is a well known sentence right now due to the current circumstances. However, it does not apply only to Covid-19 or other diseases. Testing is one word that all of us have dreamt - or had nightmares - about in the past. It is also one crucial part and step in the Software Engineering and Development process, as it allows to verify and ensure that a certain system behaves as expected. At least, for known cases! As such, all kinds of systems should be able to be easily tested, regardless of what they do. Nevertheless, both you and I know that that is not the case. There are certain systems that are much easy to test than others, in many orders of magnitude. For example, a library that converts between different times formats is much easier to test than an app to upload and download files. Furthermore, any system that involves peer-to-peer communication or any other kind of distribution gets much harder to test!
After a scare - or a hard cold I must say which I’m still going through - I just received my Covid test back. Negative, fortunately! Now, gotta tell my body to kill this horrible cold that haunted me the past few days. Much better already though! Very relieved 😌