Category Archives: Uncategorized

EOQ Part II: The Quantity You Need the Computer To Calculate, Though You Can’t Depend On It Until You’ve Calculated and Verified it First!

In our last article, I noted how I was reminded that most of today’s so called Supply Chain and Procurement experts could not pass a basic EOQ exam question, and that the reason for that was lack of real supply chain (cost) knowledge, math, and the intricacies of inventory carrying cost that are swept under the rug in the classic EOQ formula, which, sometimes, is not at all accurate.

I say reminded because this was something I explored in depth about 17 years ago when Charles Dominick, the founder of Next Level Purchasing (now a part of Certitrek) and co-author of The Procurement Game Plan approached me about the severe inadequacy of the EOQ formula (and how it often leads to Procurement Managers ordering too little, or too much, and never truly understanding the true cost of inventory or the levers available) and asked if I could help him come up with a better equation that he could teach to his students in his (advanced) Procurement courses.

The answer was yes, we did, but then he decided that he didn’t want to use it at the time because getting it close to right was a bit more involved than he thought and, well, math. It was a bit beyond what an average student could be expected to do in a spreadsheet. That’s because an extended EOQ equation has to take into account, at a minimum:

  • actual warehouse space utilization of an item (screws don’t take up much space, but control system boxes do), and
  • the cost of capital

Moreover, while I fully agree with Mr. Mr. Koray Köse that you shouldn’t re-invent the wheel, there’s nothing wrong with strengthening the rubber, improving the tread, and reinforcing the rims — which is where we started out. We started with the classic equation and just extended it to take into account the above.

We started by determining the actual inventory cost of a single unit of an item and the cost of capital tied up in that unit since the most inaccurate part of the classic equation is the average across-the-board CCP. This gave us this equation:

  • EOQV1 = √ ( (2 * ACPO * AUU) / ((AWC * UV / UWV) + (UC*WACC)) )

where

  • ACPO = Acquisition Cost Per Order
  • AUU = Annual Usage in Units
  • UC = Unit Cost

as before, and

  • AWC = Annual Warehouse Cost (which is the FULL operating cost, including staff)
  • UV = Unit Volume
  • UWV = Usable Warehouse Volume (i.e. just because your warehouse is 100*100*10 or 100,000 cubic ft, doesn’t mean you can use it all; it will depend on your layout, since you can’t store in the aisles and the shelves themselves take up some space; in reality, less than 50% will be usable)
  • WACC = Weighted Average Cost of Capital

To gauge how good this equation is, let’s recalculate our Spacely Sprockets example.

As before, we’ll assume:

  • ACPO = 3,400
  • AUU = 5,068
  • UC = 1300, 1250, 1200, or 1175, depending on volume

And we’ll assume the following costs and dimensions (which are reasonable given the Finance CCP):

  • AWC = 4,000,000
  • UV = 1 cu ft (they are gears for industrial moon mining equipment)
  • UWV = 40,000 cu ft
  • WACC = 0.10 (10% cost of capital)This gives us:
    • EOQV1 = √ ( 34,462,400 / (100 + 0.1*UC) )

    and we calculate for each price break:

    • 1300: √ ( 34,462,400 / (100 + 130.0) ) = √ (149837) = 387
    • 1250: √ ( 34,462,400 / (100 + 125.0) ) = √ (153166) = 391
    • 1200: √ ( 34,462,400 / (100 + 120.0) ) = √ (156647) = 396
    • 1175: √ ( 34,462,400 / (100 + 117.5) ) = √ (158448) = 398

    which is a bit closer to the EOQ, but not by much, but helps us understand that when it comes to EOQ, the primary factor to consider is often going to be the cost of capital, because, whether you use all of your warehouse space or not, your warehouse costs are relatively fixed for a year, which means your inventory costs per unit are relatively fixed as well (whether it’s in for a few days or a few months), and when you’re buying, you’re ultimately trying to balance the WACC with the fixed inventory allocation (which is typically just averaged to get the total inventory cost that is used to compute the average carrying cost percentage that goes into the standard equation).

    Moreover, the cost of capital is dependent on how long the item is in inventory! This says the equation needs to be modified to take this into account:

    • EOQV2 = √ ( (2 * ACPO * AUU) / ((AWC * UV / UWV) + (UC*WACC*EDIR)) )

    where

    • EDIR = Expected Days in Inventory Ratio (the WACC is annual, if the item is only expected to be in inventory for half a year, the ration is 0.5)

    Moreover, this also allows us to build in some consideration for price breaks! Since each price break dictates a maximum number of orders per year based upon the AUU, we can simply define

    • EDIR = (MBQ)/(2*AUU)

    where

    • MBQ = minimum break quantity

    This slight revision gives us:

    • 0400@1300: √ ( 34,462,400 / (100 + (130.0 * 0.04) ) ) = √ (34,462,400 / 105.2) = √ (327589) = 572
    • 1000@1250: √ ( 34,462,400 / (100 + (125.0 * 0.10) ) ) = √ (34,462,400 / 112.5) = √ (306332) = 553
    • 2000@1200: √ ( 34,462,400 / (100 + (120.0 * 0.20) ) ) = √ (34,462,400 / 124.0) = √ (277923) = 527
    • 5000@1175: √ ( 34,462,400 / (100 + (117.5 * 0.50) ) ) = √ (34,462,400 / 158.8) = √ (217018) = 466

    Which is closer, but certainly no cigar! The fact of the matter is that the rule of thumb of (2 * ACPO * AUU) that was developed to make the formula easy to understand and calculate while still providing a curve that is relatively cost-insensitive near the optimal quantity, is not perfect. While it will often get you close, it could still be a ways off that becomes significant when costs get into the millions. If there are no price breaks that can cause significant swings, we can see it works pretty well, but when there are, it doesn’t do as well. So we need to address this too!

    Without rewriting the equation entirely, this isn’t as easy to do as our fixes so far because the equation was designed to give a good curve that balanced inventory costs with acquisition costs without requiring deep, precise modelling. Still, when we have volume breaks, we can note that our order costs will be higher at lower volumes (which means more orders) and lower at higher volumes (which means less orders) and replace that 2 with a parameter that is defined on the volume breaks.

    More specifically, we will use:

    • EOQV3 = √ ( (C * ACPO * AUU) / ((AWC * UV / UWV) + (UC*WACC*EDIR)) )

    where

    • C = 2 x AVV/XBQ
    • XBQ = maximum break quantity (= maximum order quantity for final tier)

    This final slight revision gives us:

    • 0400@1300/c=10.0: √ (172,312,400 / (100 + (130.0 * 0.04) ) ) = √ (172,312,400 / 105.2) = √ (1637950) = 1279
    • 1000@1250/c=5.00: √ ( 86,156,400 / (100 + (125.0 * 0.10) ) ) = √ ( 86,156,400 / 112.5) = √ ( 765831) = 875
    • 2000@1200/c=2.00: √ ( 34,462,400 / (100 + (120.0 * 0.20) ) ) = √ ( 34,462,400 / 124.0) = √ ( 277923) = 527
    • 5000@1175/c=2.00: √ ( 34,462,400 / (100 + (117.5 * 0.50) ) ) = √ ( 34,462,400 / 158.8) = √ ( 217018) = 466

    Which, will still not perfect, gives us an even stronger indication that the EOQ is at the first price break, because at the 0 break, we’d have to order more than we are allowed to hit our EOQ based on our high orders, but at the first price break, our EOQ is slightly less, which means we round up and use that breakpoint, which we found out in Part I is optimal.

    So, does this mean you should scrap the classic, simple formula of

    • EOQ = √ ( (2 x ACPO x AUU) / (UC x CCP) )

    and replace it with:

    • EOQV3 = √ ( (C * ACPO * AUU) / ((AWC * UV / UWV) + (UC*WACC*EDIR)) )

    The answer is no. Even though this formula works well if there are no price breaks, the point of this exercise was not to develop a better EOQ formula, but to demonstrate that classic EOQ (still used in many inventory and classic MRP/ERP systems) is broken.

    Moreover, there is no one EOQ formula because EOQ is 100% dependent on inventory levels and costs when you order, shipping times and costs when you order, and supplier and carrier breaks. It changes all the time.

    That’s why, if you want to get it right, you need a modern optimization-backed SCP system to help you dynamically calculate it in real time so you put your orders in (against your contracts) at the right time to balance cost and risk.

    What does that system look like? We addressed some of it in our prior posts on optimization here on Sourcing Innovation and will likely address it again in the future, but for now, follow @Koray Kose for insights on what a modern supply chain solution should address from a business viewpoint and @Jennifer Rouse for what it should do from a systems viewpoint.

Canada is NOT the Cause of America’s Financial Woes!

This post is designed to educate those of you (in America) who don’t know the reality (because many American news sources are only telling half of the story) as a precursor to tomorrow’s post.

1) The US administration claims to have a 100 Billion trade deficit with Canada! If you do the analysis and dive down into the trade data just one level, you see almost 170 Billion of Canadian exports consists of Energy and Oil.

1a) A significant number of American states DEPEND on Canadian electricity for a portion of their energy needs, including Maine, Massachusetts, Connecticut, Rhode Island, Vermont, New Hampshire, Washington, Oregon, Nevada, Arizona, and California. Three American states depend on Canadian energy (from Ontario in particular) for a significant portion of their energy needs and would experience brownouts/rolling black outs otherwise: New York, Michigan, and Minnesota. (That’s 14 states! Newsweek summarized the 10 states that are top importers of Canadian energy.) (Without this energy, America would have an Energy Crisis!)

1b) American utilities pay very low commercial rates for Canadian energy. While not always public (as many utilities are privately owned in America), it’s easy to calculate. For example, in 2023, the average cost per kwh (kilowatt hour) paid by a resident of Maine was 21c USD. In Nova Scotia, the average cost per kwh paid by a resident of Nova Scotia, in USD, was 23c! American utilities exist to make a profit. Since these utilities charge Americans LESS than what Canadians pay, it’s pretty obvious their discount is higher than the discounts even Canada’s commercial entities receive.

1bii) American state utilities chose this route to meet their energy needs because it was much more economical for them to buy Canadian energy, that Canada can produce cheaply in bulk with ample hydro that many American states don’t have the option of (and states that would otherwise have to resort to polluting fossil fuels near populated areas OR build nuclear power plants, and no one wants those nuclear power plants near populated areas). This strategy works out better for the average American.

1c) America buys tens of billions of dollars of unprocessed crude oil from Canadian oil sands at rates 10 to 20 basis points below the market rate, which America processes to meet its energy needs, and then resells what it doesn’t use at an annual profit of about 20 Billion a year. In other words, America gets cheaper unprocessed crude from Canada than it does from anyone else and in the world and America (not Canada) profits from it.

2) Taking the energy and oil out, you see it is actually Canada that has a 70 Billion trade deficit with the US when it comes to goods and services. So, if Canada is actually buying more products from the US than the US is buying from Canada, what is Canada actually exporting?

2A) Motor Vehicle Parts. Yes, Canada has some automotive plants in Ontario, but most of the Big Automakers use our plants to make parts (not vehicles) cheaply (because of the dollar conversion, with the Canadian dollar typically being less than 75c for an American), import those into the US, make finished vehicles sold at a high profit margin, with a number of those sold back to Canadians (because they realize they profit twice when they make the cars there, once when they import the parts cheaply and once when they export the cars back to Canada to be sold at a profit). (i.e. Canadians pay more for what Canadians make!)

2B) Agricultural Products. Grains, Oils, Seafood and Alberta Beef are big exports. Canada has three prairie provinces which have little else but wheat and grain fields, a huge amount of coast, and Alberta is well known for its beef. America has 10 times the Canadian population, needs 10 times the food, only has so many mid-west states with so much farmland area, and only a fraction of the Canadian coast. So America needs tho make up its food deficit from somewhere, and the most logical sources are its neighbours, Canada and Mexico, who can supply it more cheaply than anywhere else.

2C) Metals and Minerals. Canada has a land area that roughly equals America’s, and more undeveloped land area that it can more-or-less freely mine in. Plus, Canada’s lower labour costs help America. And oh, because America’s President signed a great deal for Americans in his first term (USMCA), like everything else on this list, America is getting a great price on these metals and minerals that it can manufacture into world leading products (with the best engineers in the world) to sell at high profit margins.

2D) If you start to put this together, Canada is not responsible for any American job losses or manufacturing declines. McKinsey and the other Big X Consulting Firms who started the outsourcing trend to China (and then neighbouring countries) in the 1980s and 1990s are! THEY convinced American corporate executives to take your jobs away, Not Canada! (Canada wanted you to stay strong in manufacturing so we could stay strong in raw material and part production.)

(McKinsey and Big X Consulting firms not only convinced American executives to take your jobs away, but they created the current China crisis. In 1990, China was a mere 1.8% of global GDP. In 2024, China is 19.45% of GDP. Canada didn’t do that, and neither did the majority of America’s trading partners (as none of them come close to the wealth and power of the USA which is the only country that, on its own, typically controls over 25% of Global GDP (despite only being 4% of the global population). [But if you are wondering who else helped make China strong, look at the big green segment of this 2021 GDP Map by Visual Capitalist.] Canada exists to provide America with raw materials and parts and support, and Canada WANTS American sectors to be strong so its sectors can be as well.)

3) The American administration’s claims of 300% to 400% tariffs on dairy are complete and utter falsehoods. While Canada does have tariffs of 298.5% for imports above-maximum butter quota and 245.5% for above-maximum cheddar cheese quota, America is currently NOT hitting its allowed zero-tariff maximum in any category of dairy product (Source: CNN. America is only coming close to the quota (above 80%) in two categories and only halfway there in two more categories. (Source: TheDeepDive). Under USMCA, America’s President negotiated the biggest increases to quota ever!

During the renegotiation of CUSMA (USMCA), the United States secured substantial tariff-free access to the Canadian dairy market. As a result, the U.S. enjoys a significant dairy trade surplus with Canada, exporting $877.5 million CAD in dairy products while importing $357.9 million CAD in return.” (Source: Dairy Farmers of Canada). You can find them on the Office of the United States Trade Representative Web Site. (Note that the Dairy Farmers of Canada believes this concession amounted to a loss of 18% in domestic production, which, simply put, means Canadian industry shrank 18% and when an industry shrinks 18%, there is usually a corresponding loss in jobs. In other words, Canadians gave up jobs and welfare for American dairy farmers!)

i.e. If you finish putting all of this together, America is making out great off of Canada as a result of USMCA. (When your President said it was the greatest deal ever for the US in his first term, he was right!) From 2019 (it’s signing) through 2024, GDP Growth totalled 13.45% when you added up the growth or contraction (during COVID) for each year, with nominal GDP being 35% higher in 2024 than 2019. In Canada, it was closer to 9.75%, with nominal GDP increasing only 29%. In comparison, from 1993 through 2018, from the signing of NAFTA until its conclusion, nominal GDP in Canada grew 293% compared to the US nominal GDP growth of 300%. This means that while Canadian growth went from being on par with America during NAFTA, it’s since declined to being only 83% or 4/5ths of American growth since USMCA. Think about that!

And while you are thinking, remember that Canada never complained once! (Why? 1. When Canadians make a deal, Canadians keep it. If Canadians make a bad deal, Canadians take responsibility for it and eat it. 2. Canadians want their allies to be strong, even if that means giving up a bit more than they should. Most Canadians realize that a strong America means a strong Canada and our often willing to go the extra mile when asked, especially if they believe, or are led to believe, America needs the help and could hurt otherwise.)

4) While Premier Ford of Ontario might be the exception, Canadians are NOT hostile. Any claims Canada is hostile is just the pot calling the kettle black. Literally all you have to do to get Canadians back at a negotiating table is just ask nicely. [And remember, Canada doesn’t like bullies. As another history lesson, guess which country among Canada and America was the first to defend freedom in World War I, by 32 months, AND World War II, by 25 months? Hint: It wasn’t America!])

Also, Dear Americans, have you taken a close look at that Big, Beautiful Bill your representatives passed? The one that is estimated to add, not subtract, 3.4 Trillion to your national debt? That’s 50% more than the entire GDP of Canada! Canada is nothing more than a rounding error in America’s financial calculations!

A Non-Procurement History Lesson and Hypothetical Inquiry on Early Modern Germany vs Modern Day USA

A lot of my American friends are celebrating the efforts of the 47th and his appointees. I’m not going to comment here on if it’s good or bad (because that depends on whether you are taking a short or long term view and whether you are a US citizen or not) and, ultimately, it’s their country and their choice whether they like it or not, but I am going remind them of a history lesson they should have received in grade school (but may not have, since many programs just cover 1939 to 1945):

A Brief History Lesson on Early Modern Germany:

* First came the eco-fascism, favoured and promoted by Nazis and Hitler in the 20s and 30s. (Medium)

* Then came the campaign against homosexuality (inc. queer, trans, etc.) that started when Hitler took power in 1933.

* Then the four-pronged policy of establishing Aryan as the master race and forcing out (and deporting) anyone they could.

* Then, after two years of violence, repression and other scare tactics against non-Aryans, we saw the Nuremberg Race Laws in 1935.

Also, starting in 1933:

* Hitler proclaims “A woman’s world is her husband, her family, her children, her house.”

* Joseph Goebbels explained “it is necessary to leave to men that which belongs to men” and the Nazi party ran zero female candidates, and Germany went from having 37 (of 577) female Members of Parliament to 0.

* School programs for girls were changed in an effort to discourage them from University studies.

* Then, less than three years later in 1936, we saw a law passed that:
– banned women from high level positions in the judicial system
– banned female doctors from practicing

* Then, in 1937, there was the decree stipulating that only men could be named to University posts!

Moreover, on March 23, 1933

The Enabling Act, whose full name was “Law to Remedy the Distress of the People and the Reich”, was passed that allowed the Reich government to issue laws without the consent of Germany’s Parliament, laying the foundation for the complete Nazification of German society. This was only 53 days after Hitler became Chancellor of Germany on January 30, 1933.

This is why you are seeing posts popping up everywhere that are saying Hitler dismantled democracy in only 53 days, because this act was the tool he needed to, piece by piece, override large parts of democracy during his tenure.

… and you know what happened next!

Now I’d like you to contrast that to what has recently been happening in:

Modern Day USA

* eco-fascism has been actively promoted for the past two decades (or so)

* the “T” has just been removed from “LGBT” (step one), no pronouns may be specified in government correspondence, and “only two genders” will be recognized (even though the wording of the executive order can effectively be interpreted to say you’re all female)

* not only has DEI been dismantled, but so have equal opportunity laws; furthermore, a Presidential appointee has stated that only “competent white men” can be in charge for “things to work”

* we have seen an increase in immigration raids and use of detention camps
(Out of curiosity, anyone remember where Anne Frank died?)

* women’s reproductive rights are being taken away in many states

Now, I want to ask you:

If the parallel continues, what do you think comes next?

Again, it’s your country and your choice, and as a strong believer in democracy, as long as you understand you’re not getting Canada, as a true Canadian, I will still happily be your neighbour and happily work with you if you want to maintain a strong CUSMA, because North America needs to stand united when you consider what is happening in certain parts of the world today!  (And what makes Canada great is we celebrate diversity and differences and believe in working together regardless of what that diversity or differences are. We might feel sorry for you, but, as good neighbours, we will work with you. Though you may have to wait until our leaders get their tantrums out of their system, eh?)

Update July 16, 2025: WatchMojo’s Parallels between 1930s Germany and 2020s USA video.

Finally, I want to make sure a few of you are aware that these (and similar) resources are at your disposal, just in case you need them soon:

Why are Big X training so many “consultants” on AI?

Especially Gen-AI? For the longest time, the doctor couldn’t understand why so many Big X consultancies were training so many “consultants” on AI, especially Gen-AI. Most of their junior “consultants” can’t even use advanced functionality in today’s analytics applications (as you need advanced degrees in mathematics, computer science, data science, and/or Operations Research to do so) or deliver significant value on traditional analytics and advisory projects relative to the price they charge (unless they are being led by a more senior person with the analytics knowledge and real-world experience). (Read our previous articles and comments on where this talent ends up [which is typically not a Big X] and where these Big X firms offer unparalleled value [and where you should be using Big X].)

But it was recently all made clear to me. These consultants, who struggle with basic projects (as reflected in the high tech failure rates they are regularly a part of as the typical first choice for a third party implementation team when the vendor does not provide them adequate training and support on the platform they are implementing), are barely up to doing the work (as they are usually straight out of school with no real world experience or deep knowledge of anything not taught in a textbook MBA program), and definitely not up to doing strategic engagements out of the gate!

However, with companies wanting to rapidly digitize across the board (which they need to, but, not all digitization requirements should have equal priority), they need strategic advice and direction, and these firms just don’t have enough senior consultants to handle all the engagements and, most importantly, do the work required to put those book-sized briefs and presentations together.

But the one thing Gen-AI can do is take in millions of pages of strategic plans and presentations, take in instructions of what is desired, then generate pages of text from bits and pieces of these historical plans and presentations for each instruction, amalgamate them all together, and produce a detailed report and presentation that they can present to the client. And do this in a few hours under the guidance of a junior analyst with a (Gen-) AI playbook! Then all the senior person has to do is a quick tweak and review!

We’re not joking! The crazy thing is, with so much free material on the internet, with a little bit of elbow grease, and some very creative prompt engineering, you can do this yourself. And someone on LinkedIn already showed you how — giving you this information for FREE in this LinkedIn article. (And should that article disappear, here’s a link to the author’s article on his site.)

So now you know. It’s not about getting you better results (which may or may not happen, every project is different), it’s to give them the ability to take on more projects that they wouldn’t otherwise have the manpower to do.

And if you really want good results, note that you can always hire a real strategic senior consultant from a specialist niche consultancy who often won’t be on multiple projects at the same time, and who can give the insights you need without wasting trees printing out book sized presentations for you. After al, relative to the value the right consultant will bring, Consultants are Cheap and, in our space, the key to Affordable RFPs!

Yes Jon, “We’re Always Right, No Questions Please” is the new Big X and Big Analyst Firm Mantra

Note the Sourcing Innovation Editorial Disclaimers and note this is a very opinionated rant!  Your mileage will vary!  (And not really about any firm in particular, although only a few firms have removed our questions and discussion points, and directly aimed at marketing/public relations, as we’re not sure the analysts or consultants behind the firms, research, or opinions would shy from an open, honest, fact-focused debate.)

This originally appeared on LinkedIn. Archiving it here for posterity (and accessibility).

Dear Jon THE REVELATOR, we need to answer your comment handling inquiry in Censorship in the Procurement World with a quadrant, because they (the Big X and Big Analyst Firms) won’t understand the discussion otherwise.

Personal Not Personal
No Claim 1. Delete 2. Ignore
Valid Claim 3. Insult, Respond 4. Debate

1. If the response has no claim and is personal, such as “You’re an @ssh0l3 and a gr!nch!“, you can delete. Flame wars are for Facebook and X, not business networking platforms.

2. If the response has no claim and is not personal, such as “Hey, I like the colour blue too!“, then you just ignore it, even if you feel it is totally irrelevant. Maybe it’ll distract from the core message or core conversation in the presence of a weaker mind, but take the high road, even if you are preying on that weaker mind as your next sucker, err, client.

3. If the response has a claim, but also has an insult, respond appropriately. e.g. if you get something like, “You’re dumber than a doorknob for not believing in our messiah, Gen-AI, because early results haven’t disproven that intelligence won’t emerge someday if we just give it more cores and more data.”, then it’s okay to respond with something like “Dear disillusioned cultist, if you look at the underlying science, i.e. the math and algorithms, you’ll see that it fundamentally doesn’t even support the capabilities being claimed now and cannot support support the emergent intelligence you so claim. P.S. Please don’t drink the punch at the X-mas party, your employer is almost bankrupt and since it doesn’t want to fold, it has to cut it’s biggest costs somehow …”

4. If the response is just a claim to the contrary with a reasonable argument, such as “your methodology is no better than anyone else’s, and may in fact be worse, as success rates as a whole have not improved and, in fact, for technologies in your hype cycle, have actually gotten worse so you shouldn’t be claiming to be able to provide visionary leadership to tech leaders“, then it’s a perfectly valid comment and question, should not be deleted, and the poster should respond with whatever evidence they have to back up their bold claims. (And if they are just two wild and crazy guys who are all in all just inept strangers in a strange land, so be it! The truth must come out!)

Basically, what we’ve done with your leadership is to just expose the truth about these Big X and Big Analyst marketing and public relation cults, who seem to all subscribe to the “??’?? ?????? ?????, ?? ????????? ??????” mantra, as I’ve had multiple comments deleted by all of them too!

It’s sad, because there are a lot of situations when you should use a Big X for big value, and even though I regularly disagree with the methods and opinions of many of the Big Analysts firms on a regular basis, that doesn’t stop me from calling out everything they publish that is good (and sometimes even thanking them for it publicly) or from calling out their senior analysts who are doing a fantastic job.

(And the comments I made, in my view, were quite humble compared to the ranting I do in opinion pieces on this blog.  As per the about and disclaimers, I target generalities and classes, not specific vendors, solutions, or people. So when I’m discussing particular vendors, solutions, or people, especially in opinion pieces, I try to be as balanced and fair as possible.  And, as per the disclaimers, if factual information is presented to me that I’m not being such, corrections will be made.)