Monday, January 9, 2023

Why I Don't Regret Starting This Stupid Blog

From time to time I ask myself is it really worth it? The blog. Who reads it? Well, today I got the ultimate answer: I DO. My post from almost three years ago has just saved my OS, my data and my sanity. So, keep writing your blogs, and NEVER EVER switch your BIOS to defaults if you notebook was made to be Windows-friendly. Windows will never be a friend to a Linux user.

The post in question: https://tatjandr.blogspot.com/2020/03/fix-invisible-drive-for-linux-installer.html 

PS: Even my failing touchpad, who started all this, seemed to behave better for a minute

Monday, October 31, 2022

ISTQB is a bad bad thing

ISTQB is a bad, bad thing. Reeeeeally bad thing. And here is why.


First of all, they certify something there are more than one opinion about. Something that has different approaches. Something that is poorly measurable since it depends on efficiency of decision making process. And decades of IQ testing and similar attempts to measure and control human brain and psyche proved it spectacularly inefficient.

Whatever you can read in ISTQB material is just an opinion and a book would suffice to share it. Unfortunately, royalties that only one or even several books can bring is nothing compared with certification system would bring. Basically, you bypass market competition by forcing people into buying books and paying for exams, and you do it by pressuring their employers into pressuring their employees.

Friday, September 9, 2022

IT suffers from its own popularity

IT suffers from its own popularity. People go to IT not only because they love it or know how to do it, but because they need money, a reputation and a little bit of power. Because of this, a significant part of decisions are made out of greed, vanity and for the sake of a line in a resume. And an attempt to change priorities in favor of the interests of the project often leads to a conflict. The problem is equally common among both management and engineers, although it manifests itself in each group in its own way

2022-09-09

Monday, September 13, 2021

General Purpose Randomizer

I've decided to introduce some noise into the fingerprints collected on me by various unnecessarily curious services and people, so I've written a simple randomizer for selecting a string from a list of strings. The idea was to remove patterns from server selection process when using vpn. Not sure it'll work for obfuscation, but it is a functioning piece of code. Life will prove the rest.

Known to be working with Ubuntu+bash+ExpressVPN

#!/bin/bash
vpnservers=$(expressvpn list all | cut -d" " -f 1 | tr "\n" " ")
list=${vpnservers}

# using just a big value for length
# syntax ${parameter:offset:length}

vpnservers=${list:12:1500}
printf "Available vpn servers:\n${vpnservers}\n"

read -a arrayofservers <<< ${vpnservers}

length=${#arrayofservers[@]}
printf "Actual array length:\n$length \n\n"

randomvalue=$((1 + $RANDOM % ${length-1}))
printf "Your random value:\n$randomvalue \n\n"

printf "Your server id:\n${arrayofservers[randomvalue]} \n"



Thursday, December 17, 2020

Requirements for Requirements

This text is not exactly mine. It is a very high-level abstract of what a book Requirements Engineering by Elizabeth Hull, Ken Jackson, Jeremy Dick, 2005 has to say on the subject of requirements for requirements.

So, how can we understand that your requirements are ok, or not ok? If they are another source of quality risks? To answer these questions, I've prepared some sets of criteria that we can use for assessment:
 

Sunday, March 29, 2020

Fix Invisible Drive for Linux Installer on Windows Notebook (ASUS VivoBook S14)

As it turns out it is not unusual to try to install Linux on a Windows notebook and notice that your installer (such as Unetbootin, for instance) can not locate any hard drive. The easiest way to fix it is to switch to legacy mode (Internet claims that legacy mode should be supported under any circumstances), but it is not always easy to find.

I got myself a new ASUS VivoBook S14 and there were no legacy option (it was in place on my old ACER Aspire V). I had to google around, try switching things on and off, and here is what changed things to the better:

-- get into BIOS menu (F2);
-- switch  to Advanced;
-- open SATA Configuration;
-- permanently switch it to AHCI.

This will make your hard drive visible and goodbye Windows.

My configuration:
ASUS VivoBook S14
Ubuntu 19.10 on Unetbootin USB stick
Temporary enabled boot with USB

Wednesday, February 26, 2020

Docker commands vs Docker life cycle - Basic level

Earlier I noticed that there's one problem with Docker support documentation. Unfortunately, while it is possible to find out the very basic scenarios in its Get Started section, you need to dig through the Internet for hours to find information about use cases. Use cases is an answer to the question "What are we trying to do here, anyway?".

So, I started to collect this information for myself and pair it with command sets. Below you can find a use case for setting up a docker image and performing some basic commands on it. I shall extend this collection later, if I'm lucky.

Tuesday, July 23, 2019

Troubleshooting Citrix Client for Linux and Fixing Mike Support

Sometimes you find yourself in one of those situations when nobody seems to have an easy solution, so you have to find one for yourself. For instance, you may need to connect to your VDI, and start your Skype meeting only to find that your microphone is disabled (in Skype, in Control Panel > Device manager).

And the answer is
to add AllowAudioInput=True
to the section [WFClient]
of wfclient.ini file
of your Citrix client configuration

So, here is how to fix it in slightly more detail:

Monday, July 15, 2019

Test Plan structure proven by several projects

Some time ago I wrote about the importance of using standards as a time saver. Since then I had a chance to apply this approach to several projects where I participated as a test expert.

So, below you can find a structure that helps to collect in one place all info you need to know about the state of test in a project. (I usually build a test plan as a single entry point for all the questions related to test by means of Atlassian Confluence, but I guess any other knowledge sharing system will do).

Also, I can guarantee that if you are able (have enough info, that is) to fill all the sections of my version of a test plan, then you do have your test process under control. So it can function as a checklist and and answer to a question where to start.

My version of a test plan consists of eight sections with subsections. Subsections may vary for each particular project, but I recommend sticking with the top-level ones.

IMPORTANT: Don't duplicate info, don't add info just to fill in sections, it is important that test plan is not just a formal piece of paper.

Saturday, June 29, 2019

Bash - Another thing for the lazy: umount by name

Hi, just another script. You won't believe how many errors you can get before this simple thing works. Sometimes I wonder if my brain does it just for kicks, to see what funny message we can get this time. Or maybe it is too lazy to bother with heuristics and just goes over all the imaginable options. Surprisingly, the second thing feels like an easier one.

Or maybe it does both: 

#!/bin/bash

if [ -z $1 ]
  then printf "\nPlease provide drive name (label)\n\n"
    exit
fi

drivelabel = $1

cat /etc/mtab | grep ${drivelabel} | cut -d " " -f1 | xargs umount