Oct 22 2018

The Midas principle

Category: MiscellaneousIuliana @ 22:11

A few years ago I was working in a company that had an application used for quite a critical purpose all over the world, but that had the ugliest code I’ve ever seen. Nonetheless, the application was a necessity, as it was and probably still is the only one on the market that performed that specific function, and not using it meant that you had to hire hundreds of economists to make and validate the computations the application did automatically. The specifications for the applications were provided by a validation entity, that also defined when the said computations and validations should be completed and going over that deadline made your entity eligible for some serious fines. Yes, I am talking about a banking application. Anyway, the code was bad, because when the deadline is not negotiable, the new specifications deviate from pre-defined patterns and data to test the changes is almost missing, or anonymized so that sensitive details are hidden, but that makes it no longer relevant for your tests, you are put into the position of writing crappy code. Because maybe you started with good code, but when you are required to do changes to fix something that needs to be delivered in a few hours, so the client does not get fined, sometimes you have no choice.

The code being so bad, it was the ideal company to work for if you liked doing improvements. There were a few managers that over the years realized that the technical debt will probably be the reason why the company will go bankrupt and there were some managers – like my direct manager and my mentor – that dared to take some risks and take some heat to try to reduce the technical debt. This is where I come in the picture. In 2014 I was on the run from a heartbreak and on run towards a career. And boy, I was given the opportunity to do so! Anyway I pioneered quite a few changes in that company, took the risks and took the heat together with my mentor and not all my work was exemplary, but I did the best I could with the resources I was given and within the context I was provided.

One of the things that I did was to present to a group of 100 developers or even more, I think, how to properly think your solutions and your code in the difficult position we all were. Because technical debt is demoralizing for people that like their job. And I had to be optimistic and assume people were doing that job because they liked it at some point. So, I started with motivational quotes, book recommendations, basic common sense about how to work in a team, but I needed something new because all the things I mentioned could be found in any presentation about clean code and competent solutions.

While struggling to find something relevant to our company and to our code, it hit me. Our development style so far has been like fixing and adding new features to an airplane while it was flying with all our customers in it. And the quickest method to develop in this case was copy-paste. We even had managers that believed it so. Problem is, that sometimes people were copying code that was crappy and thus propagating crap; new hires, people less experienced and in the heat of the moment even experienced developers were doing it. Obviously, we were not in the position to ever get rid of this behaviour, but what we could do was to improve our code when working on bugs, as to turn it into code worthy of being copied. Because copy-pasted good code, is still good code, even if the Don’t Repeat Yourselves principle has to suffer.

So I named it The Midas principle: every time you develop something, you leave your mark, you transform it. When your work is shared with your colleagues, your style of working gets propagated. If your work is gold, that is what gets propagated. So, when you are working on an existing functionality, turn it into gold.

Sure, this is 90% similar to Robert C. Martin’s Boy Scout Rule: “Always leave the code behind in a better state than you found it.”, but I like Greek mythology more, and I just love the legend of King Midas.

So there you have it, something older than a boy scout rule to compare your development style to.

Stay safe, stay happy and propagate gold!

Tags: , ,


Oct 21 2018

Moving to UK

Category: MiscellaneousIuliana @ 23:50

So, you’ve had enough of your country and finally decided to leave it. If the country of your choice is UK, this blog entry might help a little, because I am going to tell you how I did it.
Continue reading “Moving to UK”

Tags: , ,


Oct 18 2018

Tinder HowTo

Category: English posts,MiscellaneousIuliana @ 22:24

After moving to this country and waiting for a little time to get used to it (lies, I actually just needed to finish the book, get some sleep and make sure this company still wants me after three months) somehow I found again the bravery to install Tinder. This is the fourth time I install this damn application and if my past is any sign of my future, it will not be the last time I do this. Sure, there are other ways, there are quite a few dating sites in the UK, but most of them require a subscription to allow exchanges of messages between parties. And I’m not that desperate to pay to meet someone. At least not yet, who knows what the future holds?

In Romania I did not have much luck with Tinder, because Romanian men are either traditionalists or dickheads, or both. Ok, ok… not all of them. But the good ones are all taken or they have moved out of the country. Or they might be gay. (sic!) In the spirit of political correctness, I will be waiting a few more years until I will write a post about those experiences. Because it is better to look at them more maturely, and those guys probably will be mature enough to have a laugh about it as well. Hopefully.

I decided to install Tinder and try to meet some people here, because … mostly because I don’t know anyone here and just having a beer alone in a bar does not do the trick, because British people are very polite and respectful. So much that if they see you drinking alone, they assume you want it that way. After scanning a lot of men pictures over the years, I think I should give a few tips to men trying to … whatever on Tinder.
Continue reading “Tinder HowTo”

Tags: , ,


Oct 18 2018

Back in action

Category: MiscellaneousIuliana @ 2:52

Every time AWS disappoints me I realise how much this blog means to me. This blog started in 2006 as a joke. I was finishing the faculty and me and my partner at the tim, Rpx,w ere kinda sick of the university forum anyway, so we started this blog. He had the knowledge, together we had the resources and I had the passion for writing. He used to write as well in the past, but then he got hired at M$ and he was a little restricted regarding what he was allowed to write and how. So he gave it up. When this blog has started it was hosted on a server under our desks and the domain was rpx.kicks-ass.net.  It was moved to an Azure machine when he started his job at M$ and when he quit that job, I moved the blog to an AWS machine and gave it a new name because he hadn’t written for a long time also, so it wasn’t his anymore.

Our relationship ended, but we remained what we always were, best friends and even if a new study suggests that people who remain friends with their exes are psychopaths, well… at least now it is confirmed for us, after so many years of suspicions for the people knowing us both. :)  This blog has been our project for a long time, and although I am the only one providing content, he continues to help maintain it from time to time and contributing with AWS and moral support for me when AWS drives me nuts.

It’s been a long time since this blog was down for so long. The last time this happened was because of a hacking attempt, that got me into a paranoid mode and I basically messed up the AWS machine configurations and Apache rights trying to secure the blog. I secured it alright. :))  This time… it probably was something similar. A Chinese hacker or a hacker behind a Chinese proxy was doing a lot of requests trying to find a backdoor and turned my Apache server into a memory hungry monster. There is no excuse for me using Apache with the default settings though.

When I noticed that my blog kept dying, first I restarted the AWS instance a few times, then I configured Apache properly. But last night I found myself unable to access the blog. The Apache server was up, the database was up, but in the browser, I was unable to see anything. Nothing. Nada. Niente. Nichts! So I panicked. I did a curl while being logged on the machine through ssh and got a lot of HTML content. So the blog was up, but inaccessible to the real world. Why? I had no idea. But I had a suspicion. AWS has something called Security Groups  that can be used to define rules regarding who has access where. Also, the instance hosting my blog is managed by something called a Load Balancer, that sane people with a lot of traffic on their blogs, use it to balance the load of requests between to identical instances. But not having that many readers and only one instance, I just use it to secure the blog and make sure it can only be accessed via HTTPS. And this balancer is managed by a Virtual Private Cloud and that has its own rules as well. Anyway, long story short, following Amazon tutorials and advice on their forum, I’ve played with them and locked my self out of the instance via SSH as well. And that is when the real panic started. Yesterday I went to bed at 3 am, after trying to find a solution.
Continue reading “Back in action”


Oct 16 2018

Technical issues

Category: TechnicalIuliana @ 15:07

A few days ago the blog started having hiccups again. And since I’ve lost most of my morning trying out Apache settings and then monitoring it and making sure it stays up. I’ve read the documentation, I’ve consulted stackoverflow and it makes sense why my configurations were wrong, but I cannot understand for the life of me why had the blog been working like this for almost 2 years.

To keep it short, my Apache was configured like this:
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
</IfModule>

<IfModule worker.c>
StartServers 8
MaxClients 256
MinSpareThreads 10
MaxSpareThreads 50
ThreadsPerChild 10
MaxRequestsPerChild 4000
</IfModule>

Not sure if these settings are default, or where have I got them from, but apparently these settings are a little too generous for an AWS micro machine. Because, yes, this is the machine this blog is being hosted on.This means, in case you had doubts: 10 GB HDD and 1 GB or RAM, that MySQL and Apache are fighting over. And apaprently lately Apache is winning.
Anyway, I’ve toned down the following values.
<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
ServerLimit 14
MaxClients 14
MaxRequestsPerChild 500
</IfModule>

<IfModule worker.c>
StartServers 5
MaxClients 14
MinSpareThreads 10
MaxSpareThreads 50
ThreadsPerChild 10
MaxRequestsPerChild 500
</IfModule>

And the blog has been up all morning. Let’s hope I’ve fixed it, otherwise, I might be forced to upgrade. And I really do not want to do that. I mean, this blog is just a personal project that allows me to practice typing and expressing my ideas in a way other people (maybe!?) can understand. It does not make money, so I’m reluctant to spend too much on keeping it up.  I’ll get into details in a future post, about the costs, advantages, and disadvantages of hosting a site on a virtual machine.

I don’t have many readers, but to the ones that read me, I am really sorry for the blog being down and please bear with it being a little bit slow until I find a solution.

Tags: , ,


Oct 16 2018

Too little, too late

Category: MiscellaneousIuliana @ 1:58

I’ve been raised romano-catholic. One of the quirks of this religion is that it drills into your head that you have to marry a virgin and stand by your man in sickness and in health, until death do you part. I know all wedding vows go like that, but romano-catholics take this very seriously. They do not recognize divorces, in their minds, if you married somebody you are stuck with them for life, no matter how huge an asshole they become. Because of this education indoctrination, my personal life has hit a few bumps in the road. I mean, by 18 I was already an atheist, but getting the shitty idea of “the one and the only” out of my head took a while. But, this blog entry is not really about that.

Last week I discovered Daniel Sloss, and aside the fact that I was barely containing my laughter while at work, some ideas he talked about raised my interest enough to look at his shows on Netflix. In case you do not know who the kid is, he is a British comedian, that started his career quite early and was making a lot of money before he was even allowed to drink legally. His most recent show,  Jigsaw is a cold and raw view of relationships and the dark places the human mind goes when shit hits the fan. Because of how real and personal he gets in this show, he inspired people to ask themselves some difficult questions and  apparently quite a few relationships and marriages have been victims of it: 8500+ break-ups, 37 canceled engagements and 46 divorces. And yes, he keeps count.

The guy reminds me of George Carlin, because his comedy is not really comedy, is the verbal manifestation of a grounded, logical  person’s repression faced with the ridiculous things in this crazy world that we all live in. I was listening to him and laughing, but at some point I stopped, because it was not funny anymore. He was dropping a swear word or a funny comment here and there, to keep it light, but the overall tone was a morose one.

Unfortunately for me Jigsaw came a little too late. I regret that this kid did not have this brilliant idea about 6 or 7 years ago. It would have spared me a lot of headaches and a harrowing heartbreak. Because at the time I was struggling to keep alive a relationship with somebody that probably wished me dead, because that was the easiest way to end it. And I must confess, although I did not wished him dead, I did kill him a lot of times in my nightmares in the most spine-chilling ways.

I am not a stranger when it comes to jigsaw puzzles. Most of my life I’ve felt like a piece of puzzle forced in the wrong place, because I’ve been trying desperately to match expectations that weren’t mine. It took me a long time to muster the grit to say “fuck this!” and try to live my life in a different way and see if it matches. And here I am, a few years later after just throwing it all out the window twice and moving to a rainy island sandwiched between the Nordic and the Celtic sea.  I no longer feel like a piece of jgsaw puzzle, and I am finally building my own. If the jigsaw puzzle is not centered on a partner, that how should I go about solving this? The solution is simple.

I have a career that happens to be one on my passions as well. I also have a passion for music and travelling. I have to solve my jigsaw puzzle by putting my career and my passions in the center. And I guess I’ll just have to get out of my confort zone – in my case, out of the freaking house :)), and meet people. Because among those 7.5 billion people there shoud be one that I have proper chemistry with and that understands and accepts my way of life and priorities. And because I am a grounded, logical person, I will understand and accept his and we’ll just have to slowly gravitate around each other and adjust slowly to one another. Because no matter how hectic, how challenging having a career is, for the person worth your time, you will find time. I’m not sure everything will go flowlessly, but as an adult I will do the adult thing and try my best.

And if among those 7.5 billion people there isn’t anyone for me, at least I lived my life to the fullest and did not have time to think about the fact that we might actually, never really meet.

Stay safe, stay happy!

Tags: , ,


Oct 11 2018

Back to my old shenanigans

Category: MiscellaneousIuliana @ 1:53

Some time ago when finances became stable, I started fulfilling some of my childhood dreams. Might seem ridiculous, but as an adult, I’ve felt quite frustrated that I did not know how to ride a bike or swim. So as soon the opportunity showed itself, I started “fixing” those frustrations one by one. There is the TODO list on this blog of course, but there are more small things that I never got to do that feel so fulfilling when I get to do them. I learnt to swim when I was 27, learn to ride a bike when I was 28 and about the same time I got my driving license. The first two were denied to me because of lack of money and lack of opportunity when I was a child. The third – is one of those things I never even dared to dream about because well, I never expected to own a car. You have no idea how good it felt the first time I went to work on my bike. You have no idea how awesome it feels to swim confidently in the sea after yearning for the experience for so long. And my vacation during which I drove 2000 miles across US, is still the best one so far.

Anyway, my biggest passion is music. Unfortunately, because my parents never thought I was worth the investment, my only experience with music was the 18 years of the church choir. I used to be a soprano then, no idea if I still am. I now own a piano and a guitar and plan to learn to play them both by the time I am dead. Because I cannot create music myself, I am an avid music consumer. For me, music is rarely background noise. I like to analyze the sounds, identify the instruments, change in rhythm, voice inflections. I get lost in good music. And yes, when I reproduce I get creative too.

My tastes in music vary, the only two genres that I don’t really enjoy are Latino and Oriental. Otherwise, I have favorite singers and bands, based on the in instruments they have, voices or the lyrics they sing. For example, Darren Hayes is one of my favorite singers because of the perfect combination between meaningful lyrics and beautiful music. I love all his songs and probably know the lyrics by heart for each of them, and yes probably I could sing them as well. I like B.B. King, Santana and John Mayer, because of the wonders they can do with a guitar. I love Nat King Cole, Frank Sinatra, Nina Simone, Ella Fitzgerald, Seth MacFarlane because of the jazz/blues sound, multiple instruments, very diverse voice inflections. I love Akua Naru for the voice and meaningful lyrics. And I love Rock music because it is the music that sets me free. Rock music is to music, as Linux is to operating systems. There are so many styles that I couldn’t list them all. But the one I love the most is alternative. I fell in love with this genre because, a long, long time ago, in a country far far away in East Europe, where good media could only be procured by not so legitimate ways, I found a list of MP3s sets named Alternative Collection. There were hundreds of them, and while I was a student I had them all written to CDs and listened to them a lot. There were a lot of American and Canadian bands, the rest of the world didn’t even know existed, but they were amazing.

The last Rock experience that I had was in 2015, when I went to Wacken with my dearest friends. Nothing compares to that, but the concert from two days ago reminded me how good for the psyche is a proper headbanging and scream singing. Well, proper and responsible adult headbanging, that does not leave you with destroyed neck muscles for two days, because as an adult I still have to work the job that provided the resources used to purchase the ticket. :D

Three Days Grace, Glasgow, 2018

This is the first concert I went to since moving to Scotland, and the taste for this kind of experience is back. Expect some more entries about concerts form now on. And if you are curious how they sond live, I prepared a little mash-up for now. I don’t really like to take pictures at concerts or record too much, because I really want to enjoy the moment, to get lost in the music, sing out loud and dance. Enjoy!

Stay safe, stay happy!

Tags: , ,