Posts

Showing posts from 2022

On Complaints, Fair Trials, and Justice

Image
Disclaimer: This post deals with pseudo-legal matters, and while I have attempted to keep it within more of a philosophical realm, I am not a lawyer, and all statements below are my own personal opinion and should not be taken as legal facts or precedence. This is not legal advice merely opinion, if you are seeking legal advice - please seek a qualified lawyer in your area. The statements below only represent myself and are unrelated to any organization, association, or workplace to which I am involved or otherwise employed. Oh Politics !  it is not something I enjoy hearing or talking about, and as I general rule I try to stay at least at arms length about it. This is not to say I do not believe in voting - I do, it is simply to say that many matters I find discussed do not seem to have much personal relevance in my daily life. It becomes different though, when you feel like you know the people involved. Far removed from knowing Prime Ministers, or similar heads of state, it is eas

Why (I think?) programmers like Agile

Image
Ever wait in a line for your morning coffee? - or to get on the popular ride at an amusement park? or simple be stuck in traffic ? If you're like most people you probably can begin to feel frustrated just at thinking about the idea, let alone when it really occurs. People hate lines, people hate waiting. In software development we have a similar 'wait pattern', the ' hurry up and wait phenomenon ' If you have every been involved in a programming project with other team members and a project manager, it may goes something like this. a) You are 'suddenly' thrust into a new software development project, somehow all of the requirements gathering is already done, and everyone is waiting on you to do your part. (You are the bottleneck somehow holding everyone up) b) The project manager follows up with you each day to find out 'are you done yet?', how much do you have left?, when do you think it will be ready? ..sometimes it feels like this follow-up is hou

Peer Reviews, Science & Relationships

Image
I read an interesting comment on a forum the other day about feedback on a 'PR' (Pull Request). For those that are unfamiliar, in some version control systems (eg :GIT), when multiple people are working on a project, individuals submit request to merge their latest updates with that of the 'main' branch. This is called 'Pull Request'. Other developers and those leading the project can review the request, add comments and either approve or reject the update into the software update. The idea, in principle, is simple -> Does this pull request improve the application in some way? Perhaps it makes something faster, or easier to understand (more intuitive) , perhaps it adds a missing feature, or fixes an annoying bug. Those reviewing the request, can add their feedback to your work with the intent of building something 'more then the sum of it's parts' (aka synergy). But what happens when the feedback received is simply a matter of personal opinion (su

Welcome to the Fediverse (goodbye twitter, facebook - hello mastodon & friendica)

Image
    At the time of writing this entry actress Marina Sirtis (probably best known for her roll as Deanna Troi on Star Trek TNG) has left Twitter. One of the things that made Twitter an amazing tool, were people like Marina - Famous people who would actually reach out and talk directly to fans, unlike some others, who just seem to use it for blatant marketing  purposes - but that is a different rant altogether. She is one of many actors in the Science Fiction genre who was very active on twitter Regardless of your feelings about Elon Musk, or Twitter, or Facebook, or any of the large social media companies.  This entry is to remind everyone, you do not have to be 'stuck' on one particular platform, when their is an entire Fediverse to choose from! What is the Fediverse? Star Trek fans such as myself are already familiar with the concept of the Federation. The United Federation of Planets  is a fictional organization of numerous planetary sovereignties. Each planet has its own c

The Solution to most problems in the world

Image
 You can't have your cake and eat it too ! Today is Sept 30th. Last year Canada marked this as the National Day for Truth and Reconciliation  or orange shirt day ,. This post is inspired by a speaker I heard this morning on the radio. They were talking about the difference between a 'rules follower', and a 'relationship follower'. Basically, that rather then being worried of whether or not you are 'breaking the rules' offending people, it is better instead to focus instead on how can you improve your relationship with others (eg: Indigenous people). It's much more complicated then just the 'do's and don'ts'. It is not anything the same as 'table manners'. As a society, we pretty much suck. This is not to say we do not improve over time, but simply meant to point out that fundamentally we all are responsible for a) Rushing to the 'quick fix' over the long term 'hard work' b) Complaining that it is up to others (eg:

Software Engineering, Agile, Code Reuse, & Refactoring

Image
 An ounce of prevention is worth a pound of cure... Fundamentally, people want to their best quality work that produces useful outputs to society, t he fundamental canon's for  Engineers allows for no less But in real life, we all face a common problem - do we sacrifice on our best quality work, and cut corners to save time and cost on the project ? - Are you okay with a bridge that needs replaced every 2-3 years instead of what that lasts 40 years? - How about a dish washer that has a 1-5 chance of catching fire ? For some reason, I have observed, in the software industry, 'cutting corners' seems to be more acceptable, and the philosophy seems to be "push the code out to production as fast as possible - and we will worry about fixing the bugs later" - just get some 'minimal' thing  that "works". Let's look at an specific example - Suppose you have been asked to develop a piece of software that tracks the assets in your office. Specifically

The Custodian and the Princple of Least Privilege

Image
It can be frustrating, when you suddenly loose permissions to something you have been doing for years only to find out you are now 'not allowed' to do it, and when you ask why you are told about the " Principle of Least Privilege "  - utter nonsense? or good information security practice? Simply put, a person should have only sufficient the minimum sufficient access necessary to do his/her job, and no more.  Similarly, a software program should only have the minimum access to data necessary to fulfill its function and no more.  The principle of least privilege works hand-in-hand with the tenant of separation of duties  and the concept of ' Need to Know '  Consider the case of a custodian , let's call him Dave. Dave is responsible for cleaning the classrooms and office's inside a public school system. In order for Dave to do his job successfully, he needs access to all of the classrooms and offices. He likely has a keychain of many keys. (which always s

The Programmer's Dilemma

Client: This program isn't working the way I need it - I need a program that will do 'X' for me   Programmer: Okay, that's a tall order it will take some time to do. Client : Oh, I didn't realize, how long do you think it will take?   Programmer: Umm, depends, but I'm guessing about 3 weeks. Client:   No that simply won't work -   my reports are due next week, I need it by Monday. I'll just put another 3 programmers on it with you, that will make things 3  times faster, so you should have no problem getting it done by Monday! Programmer: Scratches his head - muttering  "umm,  that's not going to work" - Sound Familiar? Their seems to be a mistaken belief (held by a fair number of people), that any project or process can be made faster simply by adding more resources to it. This is the law of outrageous oversimplification. Brooke's Law coined by Fred Brooks in 1975- Specifically - "adding manpower  to a late software project makes

Despite of how it looks - I'm not part of a coup d'etat

Image
  Blake Miner recently wrote an interesting blog entry called " The Infinite Version of You" . It is an interesting though experiment based on a concept known as "Theory of Mind" . In a nutshell, the people that others interact with in their minds have a version of "YOU", not the real you but the "YOU" they believe they "know".  Similarly, the people you interact with are not really them but simply a 'copy' of them you have made in your own mind, based on your experiences. This has some personal relevance to me, specifically as a young child, when I was between the ages of 9-11 my dad was diagnosed with a type of Schizophrenia. My dad believed that 'GOD' was taking to him and had given him special abilities, for example, the ability to move objects with his mind. What I came to realize though this experience (and through others following) was that the 'Dad' I knew was only a part of the picture. A bunch of pieces

The days before the internet

Image
 I was reminded the other day, that their existed a time before the 'internet' and 'world wide web'.  Before web browsers, and information being at everyone's fingertips, before sites like ' Psychology Today' information was often spread in Journals, periodic paper documents, that you could subscribe to or read at your local Library. In fact many scientific publications still publish in Journals today, and most you can access either for free, or with a paid subscription..you guessed it online! As I was cleaning up some old files I came across 2 articles in a series called 'Plain Talk' written by Louis E. Kopolow during the winter of 1977/78 for the U.S. Department of Health, Education, and Welfare (DEHW). The articles are entitled "Plain Talk about..Handling Stress" and 'Plain Talk about...The Art of Relaxation" , and you can find copies of them on archive.org. So just a friendly reminder - People did write things before we had bl

It's impossible to be "anti-agile" ?

Image
 Agile is a specific approach to project management often seen within software development. It tends to promote itself over the classic "waterfall approach" using different terminologies such as 'iteration', 'sprints', 'user stories'. In fact the only reason that the non-agile approach is called "waterfall" is because it was adopted as Agile gained momentum to distinguish from the 'traditional' in much the same way we had no need for the word "analog" until the term "digital" was coined. A Traditional drawing of a project broken into stages where one stage is 'dependent' upon the other does in fact look like a waterfall. It is important to note that any set of tasks which are dependent upon one another when drawn will also look like a waterfall. Agile is not 'against' dependent events as these are a reality of any project. Rather the potential problems that may arise from 'forcing' work into

Mind control is real! - you are effected every day (but you just don't know it)

Image
/   When you think about 'mind control'. You may envision people wearing tin foil hats , or about government experiments trying to take over your mind. Or perhaps hypnotists trying to get you to  assassinate a political figure Some of these are purely fictional or conspiracy theories, but you maybe surprised to know that real life 'mind control' does exist, and is used very often in society -  just not necessarily in the way you think. In psychology circles we have the term 'cognitive dissonance'. When we are faced with contradictory  information our brain becomes uncomfortable in this state and  'rushes' to resolve the apparent conflict. A simple example that many people may be able to relate, consider the action of eating a hamburger . If you are like me you love hamburgers, but if you stop to think about it, that hamburger (the meat) came from a cow, a pretty innocent animal just going about it's life which then came to an unfortunate, and early

Measurements & Decision Making

Image
 Disclaimer: I am not a medical expert, these thoughts and opinions are my own. You accept full responsibility for any 'advice' you take from this blog entry.  TLDR;  - Overall improvement by analysis of TRENDS - Make a change, note the TREND, not the individual measurement! Your blood glucose (sugar) is probably not as 'good' or 'bad' as you think! I have had Type 1 diabetes for over 25 years. When I started, 'test strips' were something you applied your blood sample and then compared to a label on the bottle to get your 'blood sugar value'. Not unlike the way pool 'PH' testers work today. Later the first 'glucose machines' came out, and cost like $500.00. The strip went into the machine and it gave you a numerical number of your blood sugars. (These machines are almost always free today, with the purchase of a box of 100 strips) Today we have continuous glucose monitors (GCM) (ie: DexCom) and Flash Glucose Monitors (ie: Freeest