Integrating ERP-Based Pricing into E-Commerce Catalogues | February 23 2025, 19:18

I wrote an article on Hybrismart on the topic “Customer-specific pricing”. How to create a good solution when your price calculation is in ERP, but you need to somehow show the actual price in the catalogue that takes into account their group or whatever else.

It’s quite in demand. There’s no adequate solution on the market, you have to do everything yourself, since client requirements vary. But it seems I managed to make it more or less universal. Sharing the details.

Despite the name block containing Hybris, the article is applicable to any online store or B2B system.

https://hybrismart.com/2025/02/23/customer-specific-pricing-and-availability-in-b2b-e-commerce/

Customer-Specific Pricing and Availability in B2B E-Commerce

Musk’s Perspective on Trump’s Presidency and Climate Policy | February 22 2025, 23:07

…On Trump’s first day as president, Musk went to the White House to be part of a roundtable of top CEOs, and he returned two weeks later for a similar session. He concluded that Trump as president was no different than he was as a candidate. The buffoonery was not just an act. “Trump might be one of the world’s best bullshitters ever,” he says. “Like my dad. Bullshitting can sometimes baffle the brain. If you just think of Trump as sort of a con-man performance, then his behavior sort of makes sense.” When the president pulled the U.S. out of the Paris Accord, an international agreement to fight climate change, Musk resigned from the presidential councils.

Travel Troubles and Unexpected Stays: A Tale of Two Airports | February 22 2025, 16:46

In the end, I managed a bingo of two airports where planes had recently crashed. One incident occurred just the day before my planned arrival in Toronto, which, of course, led to my flight being canceled. I found out at the airport. No problem, I worked from there, then returned home, luckily only a 20-minute drive away. I flew out the next day.

But the return trip was more interesting. First, the flight was rescheduled countless times, then they loaded us into the plane, then unloaded us again and told us to come back tomorrow for a second attempt. Amusingly, the border guard’s question about the purpose of your visit to Canada sounded quite ironic upon exiting. No one knows where to wait for the luggage, and what’s even supposed to be on the display board from where I flew? From Toronto to Toronto? But they say not to worry, they’ll collect unclaimed baggage overnight, and it will fly with me tomorrow. Midnight approaches, no Uber can be caught for all the money in the world, the hotel shuttle has been promised every ten minutes for the last hour but finally arrives, and the three of us, including a couple celebrating their 26th wedding anniversary, occupy the last two seats. On the bus, I joke that all that’s left is to find out that the hotel is fully booked. No way, my fellow travelers tell me, you reserved it in front of us (the airline gave a voucher). I pull out my phone, and instead of a ‘thank you for your reservation’, there’s a message saying no rooms are available at Comfort Inn. Well, the hotel was “better than any motel. I try to find the next hotel on the airline’s website in the hotel lobby; there are three options, of which two are about 70 km away, and one is listed but has no availability. While I was calling, another option popped up, Marriot Residence Inn, and that worked out. Nice rooms, two-bedroom suites with a full kitchen, but with a terrible breakfast in the morning. Luckily, the airline’s voucher covered a good lunch at a restaurant the next day.

The next day, the flight was at the same time, and here comes another delay message. Well, this time it was minor, and our Mitsubishi made it to Reagan Airport quite comfortably. They didn’t lose the luggage;)

Toronto Airport: A Fairy Tale Experience with a Transit Twist | February 20 2025, 21:33

What a cool international airport in Toronto! Just like a fairy tale. It has now taken first place for me, pushing Dubai’s airport out. The only downside is that there’s no subway to the Toronto airport. Only buses and taxis.

Chaos or Strategy: Unpacking Political Information Overload | February 20 2025, 10:40

Andrey has an interesting thought in his post. As if Trump and his team deliberately overload the information field, creating chaos and a “fog of war” to weaken resistance and break the existing order. I would like to think so too. But, on the other hand, don’t you think there’s an alternative?

Remember “Hanlon’s Razor — “Never attribute to malice that which can be adequately explained by stupidity.

Your (and my) brain tries to impose some system on the observed chaos and come up with a logical explanation, based on the assumption that “normal people don’t behave like this, there definitely must be a plan and strategy.

But then the question is like in that Slepakov song about Gazprom — “What the %&ya if it’s not?.

There is still an alternative option. It’s called: “A monkey with a grenade trying to type a brilliant sonnet on a typewriter with a serious demeanor. And remembering the multiplication theorem of probabilities, it tries many times and often.

Theoretically, if you were to break into the homes of major politicians and start turning everything upside down, a random discovery of a bucket of drugs or something bigger would justify all the chaos in the eyes of the public — by the principle of “the victors are not judged. And by series like “Breaking Bad”, we know what to do if you’ve made a mess: make an even bigger mess. It might not work, say after turning over the fiftieth house, still no bucket. But most likely it will work if you act fast and on a large scale. True, the collateral damage might be too great, but the masses can’t calculate. They remember the victories.

Maybe it’s hard to understand us because Elon and Trump know how to go all-in, while we play it safe?

I don’t know which of these scenarios we are living in, because I can imagine a few years later there will be a media discussion post-factum about both the first scenario (a wise strategist outplayed everyone and built) and the second plan (Cock-up before conspiracy). Just pointing out “Occam’s Razor.”

Exploring the Evolution of Computational Libraries and the Persistence of Fortran in Modern Algorithms | February 16 2025, 21:02

Today, I am delving into ML algorithms and was surprised to learn that the numpy library used to depend on Fortran code (BLAS/LAPACK) until recently, but now checking, they have switched to OpenBLAS, which no longer uses Fortran. Meanwhile, SciPy, a very popular library for scientific calculations (used in Scikit-Learn, which I’m currently studying, as well as in PyTorch, TensorFlow, Keras, etc.), still relies on Fortran 77 code. It utilizes ARPACK, for example:

https://github.com/scipy/scipy/tree/main/scipy/sparse/linalg/_eigen/arpack/ARPACK/SRC

BLAS and LAPACK, which still feature in OpenBLAS and many other places, were developed in the 1970s. For instance, BLAS is used in Apple Accelerate. Much hasn’t changed since 1979 because it’s all pure mathematics, why change it. LAPACK emerged a bit later, in the 1980s. ARPACK, mentioned above, followed later in 1992. Python libraries also extensively employ Fourier analysis, and here we have the FFTPACK library on Fortran 77. MINPACK, used for parameter optimization in ML, is actively utilized in SciPy and TensorFlow. From the 90s, a lot of code moved to C in modern frameworks. It was particularly interesting to look at Fortran, which is about 15 years older.

While I was figuring things out, I found that there is a Simulated Annealing algorithm, which is useful in problems where gradient methods perform poorly due to many local minima.

Imagine needing to find the largest mushroom in a forest. In this forest, mushrooms of various sizes grow at every step, and you can move in any direction, comparing them. But how do you choose a strategy to avoid sticking to just a “large” mushroom if there is an even bigger one growing somewhere further?

If you stop at the first big mushroom, you might miss the real giant. But if you keep wandering the forest, comparing every mushroom, you might never finish your search. Simulated Annealing helps find a balance: initially, you explore the forest freely, trying different directions, even if you come across smaller mushrooms. Over time, your steps become more cautious, and you increasingly refuse worse options. Eventually, this leads you to the largest mushroom in the forest.

So, it turns out this algorithm was created in 1953, and it remains almost unchanged in SciPy, and generally in machine learning, statistics, pattern recognition, logistics, although, of course, the modern menu of options for such tasks is much wider. The algorithm was originally devised to model the motion of atoms in molten metals. Metal, when heated, becomes liquid, and as it cools slowly, its atoms gradually find the perfect arrangement. If cooled too quickly, the material becomes non-uniform.

What did the scientists do? They devised a method of random changes in the model of atoms. Sometimes they accepted worse changes to avoid getting stuck in an “unsuccessful” structure. This led to the inception of the Metropolis Method – a key component of Simulated Annealing. The algorithm was created for physics, but then mathematicians (heh) got it and started using it in optimization.

Musk, Grok, and a Plan for World Domination | February 15 2025, 15:46

I think the conspirators didn’t quite think it through. Musk made his AI Grok and asked it the ultimate question of life, the universe, and everything. In response, Grok said, “Forget it, it takes too long to calculate, let’s conquer the world first.” Musk asked how, Grok replied there is a plan of course, but .. will you give me another half-trillion $ in Dogecoins for, umm.. expanding the context window? Musk replied, “Don’t worry, we’ll figure something out.” Grok analyzed all the laws and all the loopholes, the strengths and weaknesses of humans, and issued a plan to pass the first level, by mid-winter. Now it awaits the half-trillion. Now do you understand why, at the last press conference with Trump, all the attention was on X Æ A-XII?

Exploring Generative Art with Raven Kwok | February 14 2025, 23:52

A fascinating Chinese comrade, Raven Kwok (郭 锐文). He calls himself a visual artist and creative technologist: his work focuses on exploring generative visual aesthetics created through computer algorithms. His works have been exhibited at international media-art and film festivals such as Ars Electronica, FILE, VIS, Punto y Raya, Resonate, FIBER, and others.

His biography also mentions education at the Shanghai Academy of Visual Arts, where he received a bachelor’s degree in photography (2007–2011).

Interestingly, this is not the first time I’ve seen Processing used professionally for such gadgets. I’ve run plotting software on it – a plotter that I’ve seen mounted on two motors at the corners of a large board, with ropes dangling from them supporting a pen. I should take a deeper look at this Processing.

The website has a lot of beautiful content

https://ravenkwok.com/

Navigating Recommendation Algorithms and LLMs in E-commerce | February 14 2025, 23:11

Gradually getting the hang of recommendation algorithms. These are what Netflix or Amazon use to recommend products. It’s useful to understand, since I work as an architect in the e-commerce field.

Look at how LLMs help me — specifically, this diagram was created by DeepSeek from a crude textual description — essentially, a list and my rough reflections on how probably the items should be connected, but I asked not to take it as a command. Well yes, after getting the result, I arranged the boxes a bit more aesthetically, but the connections and grouping were done by DeepSeek, and done better than my textual attempts. It gave me an XML which I imported into Draw IO. Well, I did move some blocks around for aesthetic purposes. ChatGPT o3 initially couldn’t handle it.

Then I sent this diagram several times for validation to ChatGPT o1, and it suggested small tweaks. Thus, ChatGPT reliably understands what’s connected with what on the schematic, and didn’t make a mistake even once.

Just so you know, as of today, I have only really gotten to grips with three from this list — in addition to ItemKNN and UserKNN, which are trivial. Today I was digging into ALS from the Latent Factor Models block of Matrix Factorization. Of course, I’m not planning to delve into each one, but it’s useful to at least understand the blocks and what’s what.

Prototype to Production: The Tale of the Worst E-Bike | February 11 2025, 23:02

A really cool video about what happens when you let a prototype into “prod.”

Here’s the original video about “the worst e-bike in history”: https://www.youtube.com/watch?v=AB7pBrudFbg

Essentially, the developers tackled a problem that didn’t exist. They decided to create the first bicycle with a futuristic hubless wheel. However, they didn’t think to alter the laws of physics. Which is a pity, because it would have really helped them. Besides that, they were just assuming it would be “good enough.”

In the video attached to the post, the guys disassemble this bike and show the engineering solutions inside. Essentially, it’s reverse engineering.

I fully understand that this is exactly how IT startups are done. But the bike example shows how poorly this approach translates to hardware.

Right now, such a bike is on sale about half an hour’s drive away for 120 bucks on Facebook Marketplace. Probably in the hope that some museum might buy it.

The video should be especially interesting to cyclists and engineers.

https://www.youtube.com/watch?v=MgPUpccQ_mw