-
Code Corner: Missing Number
Problem Source: Codility Given an array A of length n filled with integers find the smallest missing positive number. Example: [4,8,1,3,2] => 5 [1,2] =>3 Restrictions n ranges from 1 .. 100,000 Values of A range from -1,000,000 to 1,000,000 My Solution As usual, I decided to first take a brute force approach. As a…
-
Code Corner: Long Factorials
Long Factorials Calculating the factorials is one of the most basic algorithms out there. It’s so basic it’s actually used to teach a harder concept, recursion. I’m explaining this so that I can get away with using the 2-minute explanation of both concepts. Let me know if you’d be interested in a deeper dive. Recursion…
-
Code Corner: Permutation Check
The problem: We are doing a permutation check. Given a list A with n elements and the task is to determine if A is a permutation of natural numbers from 1 to n. For example [4,2,3,1] is a permutation since all element of the list are in the list [1..n] where n=4. [4,1,2] is not…
-
Hacking My Password Manager
I keep all of my passwords in a password manager. My password manager of choice is Keepass. I used because it’s open-source, free and doesn’t require me to be locked into a cloud-based server. If I require syncing across devices then I can use Google Drive or iCloud services I’m already using. This means the…
-
Remote Work is here
Remote work is here. Developers have known for ages that all you need to work is a laptop and internet, now thanks to COVID everyone else does too. I’ve worked remotely for the better part of three years now, starting back in 2017 when I was doing consulting in the UAE. I went there physically…
-
Jenkins update
So a few weeks ago I started a project to install Jenkins and set up CI/CD on my projects. Well just after I started that project I had a series of big life changes that put that on hold for a few weeks. I left my old job and have been reorganising my life, getting…
-
Setting up Jenkins
This is part 1 of my CI/CD experiment. In this post, I’ll be focusing on getting Jenkins up and running. This build was supposed to take me 15 to 30 minutes but I kept running into issues that needed fixing that ballooned that time to a few hours. I haven’t mentioned them here but I’ve…
-
Setting up my own CI/CD
So I’m a fan of automation because I don’t like repeating stuff and I’m lazy. One of the things I learned at my job is to automate CI/CD. I had a little time during the weekend and I decided to actually implement my own CI/CD setup and decided that since I’m going to do it…
-
Development Log
During my work career I’ve learnt to keep a diary of the things I do. It helps to document all the new things you encounter during your day, that way when you meet similar problems down the line you won’t have to start the research process all over again. Currently, I keep all that data…