Activities

Hello,

I spend most of my time working on various code fixes and have this whole repository of free open source code, which I am sharing in the hopes that it will be useful for other people.

The thing is, I have noticed that without it being explicitly linked on some page that people actually visit, it doesn’t show up in the search results (which is a bit of a bummer in my effort to make things that are useful to other people…; I noticed GitLab has been working on it for 3 years, apparently without much success). I titled this blog “activities”, because those are my activities. I guess you don’t have any way to know I was working on stuff, if I don’t write about it right? But… I make various fixes as needed and don’t end up documenting my work to you specifically. So I was thinking maybe I could set up some automation to pull the GitLab RSS feed and share it on my LinkedIn or something.

I thought maybe putting up this little blog entry and letting you explicitly know that I’ve made these things so that they could be useful to you, would encourage you to take a look at them and see if you could use them.

I know it’s a lost cause when I ask my coworkers to look at the code I made, because… I don’t know. I’m considered “an expert” and this means that nobody dares attempt to do what I am good at. I firmly believe that if I can accomplish something so can everyone else, because we’re simply not that different. It’s depressing that nobody even attempts it, considering I’d much rather help other people be actually interested in this stuff, than be some kind of king of the hill top expert who is the only one in the company who can do all the complicated stuff.

I’m not talking specifics, because I’m kind of random-minded and I work on a lot of different things. There are some old archives of websites made entirely in XSLT because I enjoyed the challenge. My job mainly revolves around Ansible these days (this is not my work repo, I have that code under the company name, these are free equivalents I wrote in my free time), but in my downtime I’m most proficient in PHP. So most projects are about those things.

Everything is open source based, so there’s plenty of documentation all around for you to read up on how everything is supposed to fit together. Heck, I’d even be willing to provide some 1:1 support regarding how to use the stuff if anyone asked. So far, the only people using my code have been hackers, who thought of using the source code to exploit the services I have on my servers which use some of this code. Again, kind of depressing.

Ok, I think this is sufficient placeholder text for the search engines not to consider this one a fake.

LP,
Dusty

Autism

Hello,

I suppose the title is a bit of a swear word in that I don’t really appreciate it being used as a label against me.

While I suppose I’d be hard pressed trying to convince you that I am not autistic, considering this blog’s focus on tech and computer games. The truth is I have not been diagnosed with it up until recently. I think the medical system just had me under non-standard human, classification type D (as in “defective”) apparently that was enough for the government’s needs at the time. I jest, too much perhaps, but the truth is the part of my life when I was nothing but an autistic computer nerd was not fun, to say the least (remember, most of this was before the Internet). I don’t like to remember it, I suppose I’ve grown beyond it, thanks in no small part to some kind people and I’d rather be known for what they gave me, than for what I was before.

However, one thing that’s kinda been on my mind is the fact that the medical community feels so lost regarding the causes of Autism. And then there’s the conspiracy theorists. I must say I understand why people feel the way they do about it. It’s horrible to be witness to a medical condition of a loved one and having no answers you can understand. We tend to come up with our own explanations regarding reasons, but the truth is, we’re not medical professionals and the ideas we come up with are stupid and embarrassing, we just don’t realise that they are. I’ve made the same mistake regarding my own COVID complications, but thankfully then had access to someone who could explain them to me… If I can be that idiot, so can anyone else. We shouldn’t be insensitive towards people who get caught up in this.

I suppose the explanation for autism that motivated me to try and write this entry for, is probably also stupid and embarrassing, I just don’t know it yet. Or maybe it’s the answer, who knows. I am not a medical professional. I am not an anthropologist. I am a scientist by spirit, not by education. This blog is not a paper, it’s just my opinion. But, at the same time, I really wanted you — someone, to understand what I thought could be a reason for it.

I think, that autism is genetic. I think that in the distant genetic past of us humans, our large brains developed as a result of a need to handle complex social interactions of ever growing social groups. While very large groups still give us trouble, our brains can easily handle the social relationships between perhaps up to 150 people. I believe, that since the modern development of technology, some of these functions have become repurposed from handling social interactions, to handling the understanding of technology.

The selective pressures regarding the genetics that makes up our brains are thought to have ceased long ago, but I would argue they stuck around. Just like lactose tolerance is genetic and the selective pressures related to it have ensured that the majority of modern Europeans have this gene, which is a relatively recent development in evolutionary terms (in the last 10 thousand years) — so I believe has happened with the genes regulating our personality traits, which dictate how predisposed our brains are at different types of skills and interests.

Lactase persistence gene distribution

I believe that the genes that give us predispositions for being able to be skilled with technology, make us less adept at the original purpose of our large brains — social interactions. I believe there have been selective pressures that favoured the survival odds and reproductive abilities of people who’ve been predisposed to tech skills and interests. This has led to genes for this being concentrated in newer generations of humans, which has led us to collectively become even less adept at social interactions and even more adept at technology.

Just look at some of the traits that seem common in people with autism: Preference to have objects lined up or ordered, sticking to routines or repeating tasks without variation, focus on specific parts of objects, obsessive interests, fascination with moving water, fascination with numbers, fascination with animals, etc. All of these are obviously traits that allow us to interact with technology (in the last 10 thousand years, most of our technology was farming and therefore water and animal powered). These traits allowed our ancestors to develop an interest in technology that in turn allowed them to survive.

What I’m saying basically, is that autism isn’t a medical condition so much, as it is a set of traits that we’ve been selecting for. Of course I’m not saying lower functioning autism is not a debilitating condition. I just think that in the modern school of thought, we are taught to think that in modern times the genetics of everyone is basically the same and irrelevant, but I don’t think it is. I think we differ genetically and that these genetics define our predispositions for technology or social interaction. I think autism is a genetic condition bred into us by our taking advantage of technology.

LP,
Jure

NFS boot Ubuntu Linux 22.04

Hello,

I suppose that nothing is preventing me from using this blog to signal-boost my other projects.

A while ago I researched and wrote complete step-by-step instructions, on how to set up a server and the client OS to boot over NFS:
https://gitlab.com/duh-casa/RV-disks/-/blob/master/doc/NFS%20boot.md#nfs-boot-ubuntu-idea

This will work with a modern Ubuntu such as 22.04 , whereas other instructions you might have found Googling were written for Ubuntu 12.04 and barely ever updated since.

 

This is the type of thing that the NFS kernel server package is written for, but at the same time, the use-case is kind of obscure. The reason I had to prepare the procedure was that we were looking for a fast way to boot a Live Linux with a GUI, that could then be used to do the diagnostics and install — we needed this for a non-profit that recycles and repairs computers.

Obviously there are many options such as using a USB-connected live install SSD or booting from a CD, but all of these can be relatively slow on 10-year-old legacy hardware, which is what this non-profit usually deals with. What isn’t slow on 10-year-old legacy hardware, is wired network, which has been sticking to gigabit for the whole while.

I have a whole software package designed around that NFS install of Ubuntu, but I’ll cover that in another entry. I found that these to-the-point technical blogs preform best on this blog, which I suppose is understandable, people Google what they need.

 

By the way, you will notice this procedure still relies on a USB media to do the initial boot. You could use PXE and have everything be network, but importantly you do not want to use PXE to boot a modern un-customised Ubuntu kernel.

The reason is that PXE verifies data sent by having it sent back 1:1 in small chunks of I think 512 bytes or something. This makes PXE extremely latency-sensitive and just a fraction of a milisecond of travel time will add up to huge waiting times to transfer a modern 150 MB kernel and initramfs. Based on my testing, over PXE you’d have to wait 20 minutes for the boot process to even start and needless to say this was not acceptable for our purpose.

 

Regardless, I hope this comes in handy.

LP,
Jure

Is anyone reading this?

Hello,

So I’ve not been updating this blog for a long time.

Although I do have excuses, such as being hospitalised for COVID and away from the computer for several months, the main reason for this is that we live in the post-2020 time where free time simply does not exist, and also my desire to keep the posts on this blog relatively high-quality.

However, from the comments at least it feels like nobody actually reads this — as the only ones interacting are spam-bots. I get it, most people probably have a specific site or community they like to hang around with and a single personal blog has no community. With me not updating it for a long time, it’s also fallen out of favour with Google and I find myself hard-pressed to see a reason for investing any more time into the purposeless endeavour that is keeping this blog updated.

I have recently “retired” several other projects and so cleanup here feels both fitting and not a very bothersome task. The only downside is that if there is an audience to this blog, you’d loose out. So… rather than just make an assumption, I’ll leave this post up and see if anyone comes by.

LP,
Jure

Philosophy

Hello,

One of the things I enjoy superficially dabbling in is philosophy. Lately I’ve taken some time to watch some thought-provoking movies, as well as revisiting some old ones and it’s always interesting to explore the concepts presented in them. Especially considering that some people have taken inspiration from these to form philosophies they also follow in real life. The problem with these trains of thought though, are that in the end they are not useful. Anything I may have determined, even if shared with a friend will ultimately go nowhere and affect nothing. It is simply understanding by itself and for an utilitarian like myself, that is not acceptable. So, to help with that I’m making this blog in the hopes that someone will find it and read it and make use of it beyond… ideas in my head.

One of my personal favourites among movies would be Ghost in the Shell. Although I personally am not a huge anime fan, nor was I really in it for the action sequences or the porn, what is interesting about this series is it’s perspective of AI. As you know, I’m not a fan of movie’s tendencies to portray AI as evil or incapable of emotion. Considering the point that I have a vague idea of what we’d have to do to make an AI (tip: check resources on developmental psychology to understand how we humans develop intelligence), I would say we are at the state of technological development where we could start making true AIs. And therefore a fiction story like Ghost in the Shell becomes very interesting in exploring the concept of what it is that makes us… us.

Religious people might be quick to point out that at the core of each person is a soul, but I’m an atheist and I do not believe that is accurate. I do not think there is something special within us that makes us different from other living things or machines. Ghost in the Shell touches upon this by presenting the concept of a Ghost, blurring the lines between living things and machines (with cybernetics), but leaving the suspicion of the ambiguous Ghost that may or may not be present in AI.

The crushing truth about Ghost in the Shell is of course, that whether a Ghost inspires us or not, our ideas and everything we fight for in life, are ultimately not our own. We base them on things we learn from others, and therefore this begs the question: Who can be held responsible, for the consequences of ideas that are not our own? Is a hacked computer responsible for the information that was planted within it? Is a human responsible for having been deceived? Stand Alone Complex argues that we are not. In the end, we are all just nodes in the web, shuffling bits from one storage medium to the next, from the series, to my mind, to this blog, to your screen, to your mind. Our agency is an illusion, we feel compelled to act by the data made available to us.

Which brings me to the second movie with interesting philosophical themes: The Matrix. Partially based on Ghost in the Shell, this movie also explores the concept of agency. In a simulated world, all that there is to life is agency, your will to change the world around yourself. The first episode of the trilogy, which for many I imagine is the only movie you actually liked, is all about explaining to the main protagonist and therefore by extension to you, that you shouldn’t hold back and that you care capable of anything. Whether or not this actually applies to our reality is a subject of protracted debate, as: As you know, our reality isn’t actually physical in the conventional sense. All matter is just wave-forms, protuberances in the fabric of the universe — and therefore essentially data.

Regardless it would appear that a friend of mine, whom I would consider to be a bit of a mentor on life, has chosen to pick up the Neo-esque aesthetic, as well as I think some of the ideas presented there. His affinity to the Matrix philosophical content is not hard to understand, as he is someone who believes that being strictly rational and non-malevolent, has a potential to do a great amount of good in the world. To believe thinking in a certain way will affect the world, you ultimately have to believe that you can affect the world by force of will.

The human brain is optimised towards one function and that is processing social relationships. We as humans, like to pride ourselves by our intelligence, but we only focus on what is important to us: Technology and almost everything we do in life is focused around the relationships we have with other people. Even material wealth is ultimately only worth something to us, when compared to that of others. And therefore, as someone who can handle social relationships on a much more meta level than myself, my friend is someone I admire greatly. You could say my relationship to him is similar to the relationship most people have to god. When we end up in situations that appear chaotic to me, he usually has a plan and it usually involves teaching me something.

I wonder if his affinity for this aesthetic is also there to teach me something. The Matrix presents an epic story in which having a higher purpose can overcome systems of control designed to contain and maintain a society seeking to protect one’s own self-interest (even when this self-interest is selfless). In the end, reaching the desired outcome, may have you do the opposite of what you want. However what it takes is the agency to choose that outcome.

Something to think about.

LP,
Jure

The appeal of old games

Hello everyone,

As a disclaimer I must mention that I am very much a casual gamer. I’m mostly busy with work and don’t have time for games, but when I do catch a break, I like to indulge in a game or two. I don’t appreciate games being difficult, rather I enjoy them for their rewarding simulated worlds.

I think by now everyone has read that article by the author of the original Sim City game in how his game came about — that he was making  a helicopter game for which a semi-realistic map was required and he ended up having more fun with the map building than with blasting it to pieces in the helicopter game afterwards. The game was, of course, a notable commercial success considering the point that the city sim was barely considered to be a game at the time,  given it’s open-ended nature.

What this story fails to cover, somehow, is that there is a population of people who enjoy creating more than destroying and that there was afterwards a series of games, all somehow new in that they allowed the player to be creative within the simulated world.

I’m one of those people. It should probably come as no great surprise, that out of the modern games, I enjoy Factorio. However, there was a number of other games that sort of hit the sweet spot as well, even though they always had other aspects which either made them somewhat unreachable for an unskilled casual player with limited time, such as myself.

Even since I was a kid I remember enjoying old games like Star Control 2, with it’s modular starship. The graphics at the time was limited, but what they did not make up for with vibrant colors, they left to our imagination. From the the hexagonal crew pods with that little life-support bubble, to the cargo bays with landing pads and fuel tanks with windows on the side, so that you could see how much fuel was in them. Perhaps everything was covered with a neon glow and colored lights, but it made sense: It looked functional. Each module cost resources and provided a very simple stats boost, but in your mind you could see all the infrastructure and circuits that made those modules work. Place the generator next to the fuel tank, so that it would be efficient. There was no gameplay mechanic to go with that, but I could imagine. 🙂

Similarly was another game, called XCOM. It was also a difficult combat game with no cheats, so it wasn’t something I could ever get into. But looking over my older brother’s shoulder, boy did the base building look appealing. A little immersion-breaking at times, when you had a missile silo 3 floors down from the surface with other buildings on top of it, but for me — I couldn’t care less how the game played, I loved the way the little discrete base modules looked like and how you could connect them together.

There are newer XCOM games now and you will note how unappealing and plain the base building looks now, despite newer graphics and animated personnel, it’s just not the same. The magic of being able to imagine crew responding to an invasion out of the actual base you built is gone and the gameplay is forced and linear. Heck, the tutorial plays such that you can’t even choose anything — you play one way or you loose. Game makers, it seems, no longer understand what made games fun and attractive, instead focusing on the challenging, competitive play.

Back when I was a kid, exposed to games like SimCity 1 (released 1989), Star Control 2 (released 1992), XCOM original (released 1991) as well as being your typical 10 year-old kid (we didn’t get those games when they were new, we got them on second-hand hardware a few years down the line), with an aptitude for computers — and exposed to those collector card games with tanks and stats, I soaked up all those concepts like a sponge. I was good at computers and my friends were into games just like I was, so I’d spend my free time coding games. I was no artist and the development cycle for these “games” was far too short for me to be able to produce anything worth releasing outside of… well boasting about the finished game in front of friends and enjoying a few rounds of the game myself, but there was one game I made, which I remember even now, 25 years later.

Forgive the cheesy flavour text and bad spelling… I was 10 when I made it, remember?

As a cynical joke regarding my lack of artistic skill with the games, I called them Pixel Mania-s as most of my sprites were simple pixels. I made about 35 of them altogether, most of them were something AI or something water related (as an even younger kid, around age 5, I would play by a stream with the water, I guess that was another strong influence in my life), little simulations of things that were fun enough. Make a game of pong and implement two different AI players, to see how well the algorithms fare, etc.

The one you are looking at above, was Pixel Mania 30, arguably the most gamelike of them all. You’d build a starship out of nothing but modules. White storage modules, yellow lasers, blue crew pods, green reactors, cyan computers, purple cargo pods, red engines. These would come together like pixel-art, creating the shape of the ship. At the same time, a complex system of adjacency bonuses generated the ship stats and ensured that it wasn’t all that easy to create a super ship: Engines were only effective if adjacent to open space, computers directly connected to engine units increased manoeuvrability, lasers with forward-facing openings could be used as weapons, whereas lasers connected to cargo pods allowed ore to be processed mid-flight. Lasers connected to reactors got an extra power boost and well, you can imagine the rest. Pretty sure the game even had a mechanic that made conical ships faster, to avoid all ships looking purely functional like… heh… the ISS or the Borg.

What can I say? It’s an efficient design.

I must admit I kinda miss the creative freedom and simulated mechanics like that in new games. There might not be an alternative to simply revisiting that game and making it again in Javascript or something. Of course, I don’t actually have that kind of time. Maybe I’ll get started on some small part that won’t go to waste even if it’s never used.

Like this blog. 🙂

LP,
Jure

Forbidden for dogs

Hello,

I’m going to be upfront with you, I’m a dog owner, but no veterinarian or anything. I know a thing or two about how biology works and I love my doggo to death. I also do something people don’t usually do for dogs which is that I respect my doggo as a person.

Of course every time my doggo wants a share of whatever it is I am having, I look up on the web whether or not the thing is safe for dogs. And more often than not I find one of those auto-generated websites that claim that every single thing in this universe is bad for dogs. On the one hand (paw?) I get it, a lot of things are bad for dogs, including a few unexpected things. But this general holy war on giving dogs any kind of food is just straight up wrong.

 

Take for example onions. A quick google search will give you something like:

Onions contain a toxic principle known as N-propyl disulfide. This compound causes a breakdown of red blood cells, leading to anemia in dogs.

Ooookay… that sounds plenty creepy. All those sauces with onions in them are off-limites to dogs, better safe than sorry right? Wrong.

N-propyl disulfide is the thing that makes you tear up when cutting onions. Once the onions are cooked and no longer eye-watering they are perfectly safe. Let’s take a look at the toxic doses: How much of this does a dog actually have to eat in order for it to be toxic? Well my 30 kg canine friend would have to eat two whole onions raw for it to cause negative consequences.

I think if I ate two whole raw onions, I’d probably be on my way to a hospital too. I know dogs will eat anything, but whole raw onions? Really? Well keep your dogs out of your raw onions then! Many of these articles you can find on the subject are plain wrong because they don’t understand the subject they are writing about. They mix up things like raw fruit weight and toxic compound weight. A simple google search on the things they are saying can often bring you significantly closer to the truth.

And yeah, things may be different for your 2 kg chihuahua. I’m talking about dogs here.

 

Let’s take another example. The famous chocolate. People are super-duper resistant to giving dogs any chocolate whatsoever. Toxic, right? Well, actually chocolate is only 3 times as toxic for dogs as it is for humans. Made you choke on your Nutella, right?

Mostly the reason why the toxicity of chocolate is so over exaggerated is because dogs, on average, weigh less than we do and toxicity is usually per kilogram. So what might not be a problem for a 70 kg human might be a big problem for a 10 kg pup.

But you see, humans are not all 70 kg, have you ever considered that your Xmas gift of chocolate might kill your little cousin? A typical 5 yearold weighs under 20 kg, so a toxic dose for them is about 0.52 g of theobromine, which is about 40 grams (half a bar) of dark chocolate or 300 grams of milk chocolate (two bars). That amount is toxic, ever wondered about that?

The general reasonable rule, if you have a medium-sized 30kg dog like I do, is asking yourself “Would 10 times the amount give me a stomach-ache?” So for example if your dog wants to try a Jaffa cake, eating ten of those, well you’ve already done that and you’re fine, so go ahead. 10 jars of Nutella though? Might reconsider. The math behind this is that dogs are 3 times as sensitive and 1/3rd your weight, 3 times 3 is 9 which is roughly 10.

Of course that being said, chocolate is toxic and you should avoid it yourself.

Lastly let me address the last pet peeve in this category, which is articles saying fat and salt is bad for your dog. This is the ultimate double-standard. Fat and salt are exactly as harmful to humans as they are to dogs.

Of course if you have a small dog you should keep him out of your potato chips. The same “per kg” rule applies as above. One bag of potato chips might as well be 10 bags of potato chips to a small dog and, let’s be honest, 10 bags of potato chips consumed within a day would land you in the hospital just the same.

However what those “is X bad for your dog” sites say, that your dog can’t have any bit of fat because it’s bad for them, that’s plain wrong. The thing to consider with dogs and fat is that dogs, just like humans, have a set amount of emulsifier in their digestive system, called bile. A set amount of bile can digest a set amount of fat. How much bile you have depends on how much fat you usually eat (the body prefers not to waste it), but of course you can never have enough bile for a bucket of lard, because there are limits on how large your gallbladder will get per your body size. Undigested fat passes through the digestive system intact, causing stinky oily diarrhoea.

Most dogs get almost no fat in their food, because dog food (wet dog food or kibble) is mostly carbohydrates (that jelly is actually an inorganic oil derivative, sorry). If your dog has had nothing but dog food it’s entire life, every time you give it something fatty to eat he will have diarrhoea. This is an inevitable fact. However if you regularly give your dog small amounts of fat (omega-3s! recommended for fur health!), he will be accustom to it and fatty treats will cause no harm… Unless of course you give way too much.

 

Thank you for reading my rant. 🙂 For a reward, have my doggo’s puppy eyes. I promise, she’s a healthy, happy doggo, who gets lots of love and treats of all kinds.

Chocolate she doesn’t like very much because it’s bitter.

LP,
Jure

Mycorrhiza – the plant wide web

So, about an hour of extra free time today, I get to write. 🙂

If you’ve found your way to my blog using Google, odds are you already know a bit about what mycorrhiza are. You may have seen a wiki page or maybe even a commercial product. Because I am more than a little fascinated by the subject, I will try to provide you with some information about it that might otherwise be a little hard to glean from the Internet.

Mycorrhiza are symbiotic relationships between plants and fungi, which was largely unknown to us until it’s relatively recent discovery. As it turns out, most land plants take part in them and the development of mycorrhiza probably played a key role in getting plants to first colonise dry land millions of years ago.

Fungi are from the human perspective a very unique type of living organism. While to us they are familiar as their multicellular fruiting bodies, aka Mushrooms, but the main body of the fungus is usually the below-ground part which is composed of a mesh of mycelium. To us this may simply be the rather unremarkable “roots” of the fungus, but fungi are very different from both plants and animals… Fungi feed by growing through their food and digesting it on the outside of their bodies, then absorbing the nutrients. Each strand of mycellium is only a single cell thick, so the mesh is very fine, and the cellular contents within this mycellium can flow very quickly from where it is available to where it is needed.

This makes fungi a lot better at certain tasks than both plants and animals. Notably in the case of plants, they are able to extract minerals and water out of soils that are otherwise either toxic or unavailable to the plant. The relationship between plant roots and fungi is very old and both plants and mycorrhizal fungi have specialised organs that serve to interface between the two species. The plant uses these organs to get nutrients and water from the fungus, and the fungus feeds of of hexoses, a special type of sugar produced by the plants specifically for the fungus.

What is so interesting about mycorrhizal fungi however is that the mesh of mycellium, is not a branching tree-like structure like with plant roots, it is a web. The same mycorrhizal fungi can be linked with multiple different plants and the fungal mesh is perfectly capable of transporting chemicals between different plants. There has been research done that shows that tomato plants can share chemical signals through this network. There is other research done that shows that plants of different species can feed one-another through the network.

This somewhat challenges the long-standing belief that plants compete for resources in their natural environment, where only the most efficient survive. If most land plants take part of a local mycorrhizal network then in fact, the forest or the grassland is socialism. Or at least that’s what the people selling you your mycorrhizal fungus spores are trying to convince you of. That your plant will be automatically better off if well interfaced with a local network.

I’ve spoken to several scientists who are actively researching the subject and in every case they are rather frustrated with the assumptions made by the companies rushing to capitalise on the discovery of mycorrhiza. The truth is: It’s complicated. After the excitement of the initial discoveries wore off, scientists quickly found that there are as many different mycorrhizal fungi as there are plants and that all behave in different ways and many of them compete in the natural environment for their precious resource — plants. Different plants will invest different amounts of resources in the network and some fungi are selective about which plants they interface with. Bottom line, it will all require decades more of research before we can say anything for sure.

What I like to think (which is to say there is some foundation of this in the current research into mycorrhiza, but I am not  a scientist) is that in nature, there are all of these different systems and what nature ends up using is whatever works best in a particular scenario. If different fungi are competing for plants and therefore only the most successful survive, some of the time this means that perfectly socialist networks will be prevalent. And since we have observed examples of this being the case, I would say it’s safe to say this kind of system can work. The plants and the fungi are able to determine this on their own without human interference, even in a system where abuse is quite possible and is probably even advantageous in some cases. That is, there are both plants and fungi that take advantage of the network, because they can. But it seems in the grand scheme of things, networks that do not have such individuals work better and out-compete networks that do contain exploitation.

What I consider to be the truly mind-blown moment however, is that if you look at the most typical average back-yard you can see examples of all of this everywhere. Both the woodland and grassland ecosystems in fact harbour mycorrhizal networks in their soils. For trees, research shows that trees up to 14 meters away from each-other are linked, whereas in fields of grass the network probably spans the entire thing. If you have a small tree planted near a large tree, even if they are not the same species, odds are the larger tree is feeding the younger one.

LP,
Jure

Xiaomi Philips WiFi LED: bring your device closer to router

To stay consistent with my practice of giving you the solution near the top of the post: If you brought this bulb outside of mainland China there is no fixing it. Don’t waste your time and take it back to the store you brought it from and ask for a refund. Buy a different smart lamp that is properly made and actually works.

I don’t always bash crapware on my blog but when I do… Seriously if there was another way for me to warn people away from this product I would have. The manufacturer along with the rest of the distribution chain seem dead set on simply conning people into buying the remaining stock of this  bulb, because I doubt there is anything else they can do with it.

Although in most cases I would simply have built a device like this myself from parts, I have found that I no longer have the kind of time to invest myself into the project and the debugging and it would be better for me to simply buy a finished product designed for the purpose and use it. So looking up what other people usually buy I looked up my favorite online store and found the Xiaomi Philips smart bulb.

Compared to my working Eufy Lumos smart light it’s clear that the Xiaomi bulb is designed to be a generic replacement for it. However the Xiaomi bulb comes with a 40% discount and appears to be cheaply made out of plastic whereas the Eufy bulb is metal. Both bulbs get pretty hot in normal operation, however as you might understand plastic getting very hot vs metal getting hot is quite the difference.

The app provided by Xiaomi is designed to appear similar to the Eufy app, however this is where the trouble beings. Xiaomi accounts use an ID number rather than a username and not only is this impossible to memorise, the ID cannot be chosen and is simply sequential, one for each person who ever signed up for an account. The trouble is the bulb Xiaomi makes is limited in the numbers that it supports because the firmware uses a 32-bit spot for the account number. So anybody up from account number 4294967295 is unable to link their bulb to their account, which is now in the distant past with my account ID coming up as something like 9 million, and all the app says is “bring your device closer to your router”. (For the Eufy bulb I was able to simply log in with my existing Anker account and it worked flawlessly.)

Xiaomi did release an upgraded firmware (or so they claim), however seeing as how you need to link the bulb to your account to access it at all there is no way to install it. When I was fixing this I did obviously find this post, which contains an account someone made a while ago which people share and the Xiaomi representatives suggest (in broken English) linking your bulb with it temporarily to upgrade the firmware. Here the next problem follows, as it appears that the firmware they released (the description, frustratingly does not admit Xiaomi’s fault here but simply says it “makes it easier for people to link their bulbs”, asif the consumer stupidity was to blame for their shortsightedness), cannot be downloaded, the procedure always gets stuck at 40% and then times out. You also cannot trick the bulb by linking it to a mainland-China server for the upgrade (as suggested by other Xiaomi techs), because the bulb can only be linked to servers of the region where it was brought and does not show up in the app at all.

The trouble at this point is that the Xiaomi app only links to the Chinese forum (and I don’t speak Chinese). If you happened to have found their English-language forum using Google, you soon would have found that they’ve made it read-only (the new thread button does not work and the existing threads require me to be in some special group to post, which cannot be acquired seeing as how you cannot post). From what I was able to discern however, Xiaomi ran into issues with GDPR and so they apparently left their non-mainland-China servers to some outside company, which isn’t maintaining them enough to maintain working copies of the firmware and this is why the procedure doesn’t work. There’s also been some mention of a lawsuit between Philips and Xiaomi, which I have no trouble believing seeing as how the bulb is little more than a scam, at this point.

So anyway, I’m no novice computer user who wouldn’t be able to find his way around a tricky firmware update (I worked in IT for 15 years). I tried everything I could think of and there’s just nothing you can do to get a bulb in to a firmware version supporting newer accounts. I’ve spent 5 hours diagnosing all kinds of alternatives, and all I can tell you is offer you heartfelt advice to stay as far away from this company as you possibly can.

For some reason my supplier wouldn’t let me post a review for their “bestseller”. At first I couldn’t even get a refund, as they just shipped a replacement, even though I very clearly requested a refund. I got my refund after I, ahem, insisted and the post office was kind enough to return the replacement to the store free of charge, however I still feel people should be warned, so this is what my post is for. Hopefully someone can find it over on Google. Oh and feel free to leave a comment here, because I don’t think you’ll be able to leave it anywhere else.

LP,
Jure

LARES: Automation framework

Hi,

Another one of my failed projects from my past is LARES, an automation framework I designed along with two coworkers. Basically we had a team, an electronics guy, a mechanical engineer and me, the software developer. In an unfortunate example of what happens to a project when you gloss over the requirement of a manager and a marketing person, what resulted is that I wrote the software but nobody else on the team did anything else. This happened in spite of the fact that we had a customer and working prototypes.

Past regrets aside, this does mean that I now have an automation framework software I don’t have a use for. Considering the point that it would a greater failure to let it go to waste because the project didn’t work out, I converted the software to open source (and the demo hardware has been used for various other things as well):

https://gitlab.com/dustwolf/lares

I figure that most people would rather write their own framework than use an existing one, allow me to try to sell you my framework. What is an automation framework? Well, the defacto solution for automation these days is by that German S company who’s name I will not mention for copyright reasons. Their all capitals product became synonymous with automation, automating anything from industrial machinery to things like HVACs and, oh I don’t know uranium centrifuges in Iran. The problem with this brand is that it is $$$. My automation framework attempts to deliver the same kind of service for less than 10% of the price.

This is accomplished by using off the shelf components which can easily be replaced if they fail. By this I mean PCs, routers, Ethernet switches and various purpose-made IoT devices such as Arduino boards or other types of Ethernet-connected A/D or relay boards.

The framework, running on the PC is composed of a background service that runs the hardware drivers and whatever automation is required to bring the hardware to the state indicated in the internal database. The second part is the foreground that runs while the user is viewing it, and it’s role is to take user inputs and relay them into the internal database.

Screenshot

The whole thing is compartmentalised into these boxes, with engineering symbols on them. Each box represents both the background and foreground components of the corresponding hardware component, or abstract concept, depending on what you’re trying to do. This is simplifies to the process of automation to a game with the blocks of that four letter L company, the brand name of which I am not going to name either. A few sensor blocks, a few valve blocks and a regulator block or two come together to automate the process of generating clarified water, or whatever process it is that you wanted to automate.

This interface is web-based, which means it can be viewed on anything that can be connected to the network. It can be shared over the Internet, to coordinate multiple factories over long distance or whatever you want. The preferred control device, we envisioned for the framework being a cheap wireless consumer-grade tablet. It has a touchscreen so the user can just tap the screen and the tablet is portable, or could be mounted onto an arm with a charging cable. If you are working in an explosive environment, there are EX certified tablets.

I should probably mention that yes it actually works and I have previously worked in companies where we built such things for commercial clients. This was intended to be a commercial product, it just never got off the ground.

I’ve abandoned the project long ago, and as such the source code is not in a great state, being mostly in Slovenian and well partially translated. If someone on the Internet would actually like to use it I’d be motivated to at least finish the translation project.

If not, at least I presume someone has a chance to find it now and know that it has existed. Thank you.

LP,
Jure