Re: @base
This is a definite thing in most databases:
You can declare a field in SQL Server as "bit NULL" allowing values 0, 1 and NULL
https://modern-sql.com/concept/three-valued-logic
22 publicly visible posts • joined 9 Sep 2021
It's got mis-selling written all over it.
Overstated claims of range - says 300 miles on full charge but it is unfeasible to use this, since you should not charge it above 80% or let it drop below 20%
The non-disclosed liability caused by the dangerous batteries - think about what precautions they must take within the battery factories to keep the cells apart compared to jamming together into a sled intended to travel along public roads at 80mph. Can you imagine a fire in a battery factory?
The environmental claims - amount of raw materials extracted and difficulty of recycling.
All of our current solar wind and nuclear electricity is already used - adding extra demand to the grid for charging EVs will not cause a solar panel or wind turbine to magically appear. The extra demand will be satisfied by nat-gas surely?
I bet some lawyers are already dusting-off their dieselgate documents and doing a Ctrl+H diesel -> electric...
Grandparent is excellent and informative post.
So many of these whizz-bang products were invented because the people who make them don't know how to use a relational database properly.
How does this feature set sound:
- The same data, sliced, diced, sorted, denormalised in multiple different ways on disk
- Immediate update of all of these slices upon insert/update/delete of source data; no need to rebuild from zero
- Store each slice of data on a different storage array if you wish
- Bulk amendment of multiple records will only recalculate changed results
And... I'm describing SQL Server indexed views, partitions and the MERGE statement, features which have been there for many many years.
Admittedly these were restricted to the Enterprise Edition a while back, but that's gone now and you can do this on any version, even Express.
Easy!
Cut down the Cali forests. Claim a "CO2 Emissions Avoided" grant because they would have otherwise burnt at some point.
Then ...
Export to the UK
Stuff the trees into Drax
Claim another "CO2 Emissions Avoided" grant because you're burning Biomass not Coal.
Then...
Plant a new forest in California, claim a "CO2 Sequestration" grant because your new trees are absorbing it.
I'm sure there's a flaw in this plan somewhere...
A big part of the problem is that the average ordinary Joe doesn't understand what the implications of accepting or rejecting these different "flavours" of cookie will be.
And, to avoid being patronising here, they shouldn't have to.
When you plug your toaster into the socket, you don't need to check a box to confirm that there is 240V AC 50Hz in the wires; and if you didn't specifically opt out you'll get 100000V on the line.
We in IT are still in the wild west era, like electricity was 100+ years ago. We need to develop our own equivalents to fuses, circuit breakers and overload protection, so anyone can use the internet without a "shock".
But when all the incentives point in the other way, so having live wires poking out everywhere means you make a shed load more money, it's going to be a long time before we get there.
... because before you know it, someone in the lunch queue at work will say (in a rather embarrassed manner) we've got this "thing", which Bob did before he left, and we don't think it's working right, and we're getting audited on it next week and we can't prove why half the numbers suddenly don't add up and can you take a look?
turning into the next year's dev project.
In seriousness though, as long as you are fully aware of the limitations of this kind of tool, they are great for getting non-technical people to flesh out what they actually need, rather than what they think they want.
But - it's that awareness of the limitations which is the killer. Try explaining it like "would you live in a house built out of lego?"
Great progress has been made in CPU performance through caching and precomputation. Having your most frequently-used code and data close to hand is the key to good performance.
The further down the Physical -> VM -> Container -> Serverless rabbit hole you go, the less state you get to keep with you, and you end up with every client request being a total cold start on a different server. Maybe the disks are in Outer Mongolia too. Remember CGI?
When we see .NET 6 optimisation effort being expended on "cold start" scenarios, you do wonder why?
Everyone wants to believe they are building the next Amazon and need to scale to billions of requests a second tomorrow when they are serving 10 requests a minute today. I'll give you a hint - this RARELY happens, and if it does you'll have a LOT of money to throw at the problem.
To quote Knuth:
“The real problem is that programmers have spent far too much time worrying about efficiency in the wrong places and at the wrong times; premature optimization is the root of all evil (or at least most of it) in programming.”
You've nailed it, that will be why.
Probably too complex for ordinary users to have a separate "email password" and "phone password".
What happens if someone tries to brute-force your account through the phone keypad method? 3 digits x (choice of 0,1,2,3,4,5,6,7,8,9) = 1000 tries. Those odds don't seem too bad?
We keep hearing the mantra "The software IS the business".
So once you go down the road of "I'll take a standard SAP implementation please", then you're no different to your competitors.
You'll end up with the same costs, same inefficiencies and provide the same service level as everyone else.
Reduced to being a commodity provider with commodity-level margins.
Oh wait a moment, we're talking about universities here - I guess no-one cares about the costs/inefficiencies (since it's govt. money) and certainly no-one cares about the service level.
Trebles all round then!
A similar system to tally sticks:
https://www.nationalarchives.gov.uk/museum/item.asp?item_id=6
They were used to record government debts - the amount would be marked on a stick and then broken down the middle. One half was kept by the bank, the other by the borrower. The debt could be paid back by reuniting the two parts; and it would be impossible to fake the exact shape of the split!
Looks like someone hasn't been reading their XKCD:
Typical sales / management hyperbole:
"Our system will do everything that all those other systems do, and better than they do, even though all we've done is put a thin shim layer over the top with a nice logo!"
I think I freaked my mum out when she heard noises at 6:00am, it was just my 7-year old self who was desperate to find out whether SIN and COS would let me PLOT a circle on my birthday present ZX81.
We only had one telly so that was my only opportunity...
I could probably key that program out on an emulator without reference to the single-key commands, even now. J = load, A = new etc.
40-odd years later still nerding away; it's not a job it's just a hobby someone pays you for!
One "enterprise-level" customer of mine would slam their global printer configuration down to your PC as soon as you connected to their VPN. Being a lowly contractor I didn't have permission to print to any of them, and I had no desire to send random printouts to unsuspecting users in an office 500 miles away (oh the mischief I could have caused...)
I was having seemingly random freezes in Excel, I'd open it, start using it, and soon enough it would freeze for 30 seconds before returning as if nothing had happened. Initially I thought Microsoft had discovered a way to get cell A3 addicted to Spice.
Turns out the fault was triggered the first time Ctrl+B was pressed to make a cell bold.
This causes Excel to load a new set of font metrics. The fonts are somehow linked to the printer driver (a hangover from the pre-TrueType days perhaps). So it needed to initialise the printer (via a VPN and a blocked firewall) to measure how wide a bold "A" should be.
I soon learned to reset my local printer choice every time I connected to their VPN...