How to install Python of required version using PowerShell

by Dmitry Kirsanov 26. February 2023 11:46

One of the software packages I’m using, namely Stable Diffusion, requires a particular version of Python to work… Stable. Hence I made a little PowerShell script that would ensure that if there is a Python of lower version or it’s not installed, then it would be downloaded and installed automatically. Here it is: More...

Software Architects are endangered species now. But not juniors.

by Dmitry Kirsanov 16. February 2023 16:18

Artificial Intelligence (AI) has been a buzzword in the tech industry for the past decade. The advancements in AI have transformed the way we live and work, but it has also caused a lot of anxiety among developers who fear that AI may take over their jobs. However, the truth is that AI is not a threat to junior software developers, but rather… software architects. More...

Tags:

Analytics

How to remember everything during online meeting

by Dmitry Kirsanov 25. October 2021 08:01

Pandemic brought one thing that changed the way we go through our daily office lives. And that’s – endless online meetings. At some companies you may be lucky to have just one per day, personally I’ve got the worst possible experience, as far as online meetings go (or, at least, my imagination refuses to show how it could be any worse) – non-stop 9 to 5.

Yes, such experience would be a 100% fault of your employer, and it’s not what you should be going through. A day of such experience draws all energy out of you, and often you may remember only as much as there was written in your calendar and notes. But there is a light at the end of this tunnel. More...

What to do when your phone is lost or stolen

by Dmitry Kirsanov 8. April 2021 19:51

Mobile phones are siblings of old day PDAs, but store vast amount of data. With smart cards up to 1Tb, access to cloud storage, e-mails, messengers and social networks, possessing your phone could potentially have consequences far beyond the obvious financial loss.

In this post I will attempt to address the risks and provide the way to create your own, personal emergency protocol for cases of your phone being lost or stolen.

More...

Tags:

Security

Leaving Google, a comprehensive checklist

by Dmitry Kirsanov 8. February 2021 19:56

If, like many other people, you are playing with the idea of leaving all the Google services behind, and switching to better alternatives, this guide is for you. It’s relatively easy to assemble a walk-through for ditching old accounts and setting up new ones, but if you aren’t actually in process of doing it, and have your very own reasons for it, that guide won’t do much good to anyone. Hence I am doing it, going through the whole process, and documenting it as I do. I hope it will help you to migrate as well.

In short, we’ll go into full Zero-Trust mode with Google, the way they should have been treated from the start.

The Why

For the sake of leaving the argument on not-very-relevant topic behind, I’ll say that every one of us has his own reason. When speaking about the reasons to migrate from, Google is a gift that doesn’t stop giving. Security, privacy, usability, even politics – there are plenty of reasons to choose someone else.  I’ll describe my reasons simply to illustrate my case, you don’t have to have any of these problems with the company to migrate.

More...

Tags:

Other

Two Generals problem

by Dmitry Kirsanov 27. July 2020 20:00

There is a logical problem, a thought experiment for emulating the communication over an unreliable link, called “the Two Generals’ Problem”. In case if, like most people, you never heard of it, here is the definition:

Two armies, each led by a different general, are preparing to attack a fortified city. The armies are encamped near the city, each in its own valley. A third valley separates the two hills, and the only way for the two generals to communicate is by sending messengers through the valley. Unfortunately, the valley is occupied by the city's defenders and there's a chance that any given messenger sent through the valley will be captured.

While the two generals have agreed that they will attack, they haven't agreed upon a time for attack. It is required that the two generals have their armies attack the city at the same time in order to succeed, else the lone attacker army will die trying. They must thus communicate with each other to decide on a time to attack and to agree to attack at that time, and each general must know that the other general knows that they have agreed to the attack plan. Because acknowledgement of message receipt can be lost as easily as the original message, a potentially infinite series of messages is required to come to consensus.

The thought experiment involves considering how they might go about coming to consensus. In its simplest form one general is known to be the leader, decides on the time of attack, and must communicate this time to the other general. The problem is to come up with algorithms that the generals can use, including sending messages and processing received messages, that can allow them to correctly conclude:

Yes, we will both attack at the agreed-upon time.

Allowing that it is quite simple for the generals to come to an agreement on the time to attack (i.e. one successful message with a successful acknowledgement), the subtlety of the Two Generals' Problem is in the impossibility of designing algorithms for the generals to use to safely agree to the above statement.

It’s even called a “paradox” for “inability to find a logical solution” to this problem. Because the proposed solution is to send confirmation for confirmation, and messenger could disappear.

If so many people are saying, that there is no solution, then perhaps there isn’t one, right? More...

Tags:

Other

HOSTS File Editor

by Dmitry Kirsanov 4. September 2019 10:57

HOSTS file is a text file in your Windows system that contains name resolution pairs to quickly resolve domain and LAN computer names, or ensure that resolution fails and host in question would become unreachable. We use it to speed up access to intranet hosts, block advertisement and telemetry websites, and in software development – to substitute real world hosts with local copies.

I have to edit HOSTS file often and on different computers. Supply IP addresses for local servers, block connection to Facebook, disable adverts in some apps, that kind of stuff. Well edited HOSTS file makes Windows work faster and helps avoiding problems with connectivity.

One problem, though – it’s over 60Kb large in my case, and adding / removing / temporarily disabling records - takes time. Not much, but more than I’d like to spend on that task. Therefore I felt the need for a command line editor – a single-command application, that would allow to perform the full range of operations on that file and make whole editing process a fraction of a second. And here it is. More...

Fast Backup for SD Cards

by Dmitry Kirsanov 12. July 2019 08:59

If you are photographer (as in – snapping pics often) or have dashcam / drone / similar photo/video device, you may know the problem of having a one-button copy of just the files you need to where you need them.

For example, I have a directory in home NAS (Network Attached Storage), where I keep videos from car dashcam, so if I would suddenly receive a fine for speeding, I could prove that I didn’t. I don’t like bringing the dashcam  microSD card from garage, as there is a good chance I’ll forget to bring it back, and will waste time later. Ideally would be to move the card from dashcam, insert it into the phone or tablet using external card reader, and press the button to copy only the video files.

In case of photo camera, I’d like to do the same – just press the button, and let all jpg and mp4 files be moved to local drive, hence removing them from SD card.

In case of dashcam, I’d like to keep the last video file intact. The reason is – the GPS device may take awhile to refresh the time from satellites, and will not reset the time if there is at least one video file with newer timestamp.

In case of force majeure I would want to only copy files that were made during last few minutes, and that should be an option too.

Since I want to copy files from external card, I’d like that card to be automatically dismounted when done. In some cases I’d like the local copy of files to be encrypted (say, if copying to relatively public computer, or the nature of images is sensitive). And if I’m copying them to cloud drive, I may want to reduce the bandwidth to particular amount – e.g. even if the card is full, move only 5 Gb a time.

And last, but not least, since we have so many options, and they are likely to be unique per source, I’d like to save this configuration to each external card, so it would be loaded next time the card is inserted. I’d also like this configuration to be editable in normal text editor, hence let it be a JSON file.

I tried to find an app that would do this, and even asked professional photographers, but it appears that they do it manually. There is also a hardware button on some NAS that copies all files from external drive, but you can never be sure it happened, and files aren’t removed from external drive. So, once again, I had to do it myself.

More...

Tags:

Fixing yet another problem in Google Chrome

by Dmitry Kirsanov 10. June 2019 07:31

While digging into the problem with Chrome extension today, found that Chrome took around 700Mb of space for temporary files, which looked like CrashpadMetrics.pma~XXX.TMP. These files are 1Mb in size each, and there were literally over 700 of them.

Chrome creates these files to send to Google even if you disable this feature. Files aren’t sent, but created and never cleaned up.

I have a cleanup batch file on each computer, that executes every week, and it deals with drive(s) cleanup, synchronisation and stuff. I added this line:

ttl.exe "C:\Users\[my user name]\AppData\Local\Google\Chrome\User Data" /subs /days:30 /mask:*.tmp

This uses my TTL application to delete files older than 30 days. I could simply write “del crash*.tmp”, but what if there is a temporary file that’s currently being written, or might be used. Hence the TTL and generous 30 days.

The first run freed 685Mb on system drive.

Building social platform for everyone - a free speech utopia brainstorm

by Dmitry Kirsanov 15. May 2019 01:08

We have seen it often, with almost every known social network and platform built to express yourself - at some point it gets to a milestone which changes the platform to the opposite of its original vision.

"Don't be evil" becomes THE evil, the outlaw becomes the law enforcer, independent form alliances and neutral become ferocious fighters against neutrality. There are still islands of free speech, where borders are wide enough to call it unbiased, but they are doing it with serious personal risk and at significant expenses.

In this essay I'll try to analyse the history, trends and risks of self-expression platforms, and provide some food for thought for those who will attempt to build the next platform.

The most important aspect of this work is technology, second is sociology and third - economy. We'll scrape the law a bit, but the main premise will be that whatever you are doing is illegal somewhere, and if not - then content certainly will be. And so we'll use technology to obey the law when possible, and protect from it when it's not.

But first - let's look at existing platforms and their pitfalls. This will help us to list the known problems and caveats, and see how titans fell and why.  More...

Tags:

Analytics | Other | Social

Month List