Opreto Blog

Mastering Time: My Journey with AI Scheduling Tools

Mastering Time: My Journey with AI Scheduling Tools

3 minute read

Managing your time is hard, but it’s the cornerstone of personal and professional success. Without a structured approach to time management, it’s easy to become overwhelmed by tasks and commitments. This overwhelming feeling often increases stress, reduces productivity, and causes the dreaded overload-induced task dropping. It’s common to find yourself highly organized in one aspect of your life, such as your business. In contrast, your personal life suffers from neglect, or vice versa. The real magic in time management lies in managing all your time in one place, harmonizing personal and professional commitments to effectively achieve personal and professional goals. There are plenty of resources from which to learn how to manage your time. Yet, most of them focus on systems that require a lot of manual intervention, which I have always found annoying. The idea of time blocking always worked for me, but the overhead was extreme. I have been experimenting with AI schedulers for th...

Common Sense Password Policies

Common Sense Password Policies

3 minute read

When you overcomplicate security, you compromise user experience. When you compromise the user experience, your users have to fight back. When your users fight back, they compromise security. D’oh! We recently purchased a new car, which came with a free 3-month trial for a WiFi hotspot provisioned from an included cellular data plan. I connect to the hotspot and am then taken to an AT&T Captive portal to create an account. I’m already painfully aware that I’m likely about to subscribe to a lifetime of spam emails from AT&T, as well as consent to sending them a bunch of personal information and telemetry data about my driving habits, but as usual, I’m considering, once again, selling my privacy in the name of convenience. After entering my personal info, it’s time to provide a password for my account. No problem! I fire up my password manager, and ask it to generate a new secure password that will be used only for this service. I paste the password into the form, and voila...

Fully Remote Work All The Time

Fully Remote Work All The Time

3 minute read

Fully Remote Work, All the Time! The upsides outnumber the downsides. If you can get away with it, you should. If there is any way that you can restructure your company and/or your line of business to accomodate fully remote work, you should employ it. You should get as far from limitations like WhErE yOu ArE rIgHt NoW as quickly as you can. If you don’t work in a business that can make that transition to fully remote right now, you should seriously consider changing your vocation and getting the hell out of your industry. Because the Robots Are Coming. Pundits may pund that Only Human Hands Are Capable of Handling Certain Tasks, but I’m convinced that isn’t true. We are directly on the trajectory towards full automation of everything; where our screens end there will be drones to complete the work. Increasingly sophisticated drones with increasingly better fingers and eyes, and stronger limbs. Star Trek may have foretold the cell phone, but Star Wars foretold the Droid Economy w...

The Plight of the Power User

The Plight of the Power User

2 minute read

The 1980s. A simpler time, when hair was big, music was loud, and computer interfaces were… well, let’s just say they weren’t exactly what you’d call user friendly. Unless, of course, you were one of the chosen few. The elite. The engineers and the proto-geeks. For some of us born at the cusp of the digital dawn, the call to wield that power was irresistible. In those days, computers were still sufficiently arcane that conjuring buxom women, hacking land yacht races, and triggering global thermonuclear war were all plausibly within the domain of the initiated teen. Their UIs—BASIC on a home computer, the UNIX shell on a terminal at the local university—was about as welcoming as a secret society’s handshake. They were cryptic, esoteric, and utterly fascinating. Designed by engineers for engineers, these interfaces were a test. Pass, and you were in the club. Fail, and well, maybe a typewriter was more your speed. And so we, the early adopters, the tinkerers, the ones already predis...

To Olympus: Replatforming on the Cloud

To Olympus: Replatforming on the Cloud

2 minute read

There is a particular synergy that springs from engaging an agile software development agency as an integrated software partner, and having them platform your software into the cloud. The sum of the two is truly greater than its parts. When launched together, the entire tech saga becomes truly epic for your business; you are freed to focus on your business, and we carry you up on our back. Do not fret, good citizen, we’re here to help. If you’re building software in the cloud for clients, like we do, you must conduct yourself as a hero. Although the path to the summit is well trodden by now (decades after the concept of the cloud was first popularized) it is still necessary for some chosen few of us to carry and guide, as some of you have not yet reached the cloud on your own. There are a thousand possible reasons for that, but every obstacle can be defeated with the right team and technology. As agile developers, we clear every engineering challenge from the critical path for you...

8-bit Makes a Better Programmer

8-bit Makes a Better Programmer

3 minute read

In the realm of modern programming, with its high-level languages and sophisticated development environments, the art of programming an 8-bit microcomputer might seem like a quaint, if not obsolete, pursuit. However, diving into the world of assembly language programming on such a system isn’t just a nostalgic trip down memory lane; it’s a journey that offers invaluable insights and a deeper appreciation for the inner workings of computers. Modern software development would be almost unrecognizable to the microcomputer programmer of forty years ago. At a basic level, the languages and concepts wouldn’t be too foreign: we still write if statements and for loops, and object-oriented programming was already in vogue by 1984. But modern applications are internet-centric, use GUIs and 3D graphics, rely on distributed version control and CI/CD to get built, depend on various runtimes and interpreters, and above all, sit so high in an immensely complex hierarchy of abstractions that it’s ...

Threat Categories, Attack Patterns, and Countermeasures: Safeguarding Against Cyber Vulnerabilities

Threat Categories, Attack Patterns, and Countermeasures: Safeguarding Against Cyber Vulnerabilities

2 minute read

Recently, our community in Windsor, Ontario, Canada, experienced a harrowing cyber attack on our healthcare system. The electronic systems that the hospital system relied on suddenly became useless, forcing workers back to the rudimentary pen-and-paper methods. This sudden regression in technology not only disrupted healthcare operations but also painted a stark picture of our vulnerabilities in the digital age. This incident was more than just an inconvenience; it was a dramatic step backward, highlighting the urgent need for resilient cybersecurity measures to protect our most critical services and data. Understanding these threats involves more than just preventing attacks. It’s about knowing different types of risks and patterns attackers use, like phishing - deceptive emails or messages aiming to steal sensitive information, and ransomware - malicious software that locks out users from their systems until a ransom is paid. Being aware of these tactics is crucial in developing ...

I Went to a Remote Cabin to Hunt Deer and All I Found Was Agile

I Went to a Remote Cabin to Hunt Deer and All I Found Was Agile

5 minute read

I was stunned to realize my father in law, a man in his 70s, is a practitioner of Agile. I found this out at Deer Camp, the remote off-the-grid cabin in the thick woods of the Upper Peninsula of Michigan, where the men of my wife’s family gather every year to hunt deer. I went there with the expectation of a digital cleansing of some kind, I think, or some grand hermitage away from civilization. But instead I found reinforcement for everything we do in my high tech job @Opreto, and realized during my time there that our hunting cabin uses good Agile practices. It seems clear to me now that something I thought of as modern is actually quite old, and that an “agile team” approach to deer hunting is as natural as an agile approach to software development, although there are arguably fewer websites disclaiming this fact to hunters than those proliferating on blogs about software development. This realization felt like a bit of a shock when it first occurred, but really it is part of th...

You're validating email addresses all wrong!

You’re validating email addresses all wrong!

7 minute read

Ever tried entering your email address, only to receive a “Please enter a valid email address” error? Frustrating, right? There’s a lot more to email validation than just spotting an ‘@’ and a ‘.com’. Dive into the world of RFCs where email addresses are not just strings, but a complex interplay of rules and standards. From the subtle nuances of RFC 5321 and 5322 to the curious world of quoted strings and dot-atoms, we’re tackling the real challenge of validating emails. Because let’s face it, nobody wants to be told their perfectly good email is “invalid” – especially not by a machine. Imagine you’re tasked with building a form to collect email addresses for a client. Simple enough, right? At first glance, it appears trivial, but the real challenge lies beneath the surface: ensuring the validity of these email addresses. This goes beyond the basic checks for an ‘@’ symbol or a domain suffix. It delves into the intricacies of what constitutes a valid email address according to est...

Escape from Agile

Escape from Agile

2 minute read

I discovered Erich Fromm’s Escape from Freedom a couple years ago, via the Philosophize This! podcast. In this work, Fromm dissects the human psyche’s intricate dance with freedom and authority. His thesis pivots around a paradoxical tendency in human behaviour: the flight from the liberating yet daunting responsibility that freedom entails, seeking refuge in authoritarian structures. While Fromm was reacting to the rise of fascism in Europe at the height of World War II, having fled Nazi Germany himself, it occurs to me that some of his observations are relevant to a matter more mundane: the resistance we often encounter to fully embracing Agile principles. Fromm posits that individuals often gravitate towards authoritarianism to escape the burdens of freedom—making choices, and shouldering responsibility for those choices. Agile, with its ethos of flexibility, adaptive planning, and shared responsibilities, deviates sharply from the more rigid, hierarchical structures of traditi...