The strength of the correlation might be the only useful single variable we can have in discussions like this.
I'm starting to think that "Correlation is not causation" is a kind of slippery slope toward a world where nobody can ever prove the cause of anything. At the same time, just about everything is at least a mild carcinogen including food, the sun, air particulates, etc. But knowing that everything causes cancer isn't useful information. Knowing the strength of the correlations of each of these things is actually useful.
Establishing a correlation is only a starting point. After that there is an entire field of statistics called causal inference that is devoted to establishing causality using a variety of tools.
The strength of correlation is NOT the only useful metric and should not be mistaken for more rigorous statistical analysis regarding causality.
Problem is, doing Y only "causes" cancer after doing it nonstop for like 40 years.
What can you do today that would cause cancer tomorrow or next week? Even next year? Nothing. Yet, just about every environmental thing causes cancer over long periods of time.
Which leads to the absurd: being alive causes cancer.
It indeed is very worth being very clear about the limited data that makes the images.
It is also very cool.
..Nothing to add, simply echoing your sentiment :-)
If I create a view of a table containing JSON data (or any other kind of data), I can create columns from calculations on existing fields.
I'm guessing the advantage of generated columns is that they are real columns, not computed columns like in a view. This means that if an insert doesn't work with the new generated column an error will be generated? Is that a correct understanding ?
Is this perhaps the main advantage of this feature ?
The data creation and storage options, always computed or stored on write of dependant columns seems like a possible advantage too.
Main practical difference is that you can put index on generated column, and on view you cannot, SQLite has no materialized views. Constraint part you understood right, NOT NULL on generated column fails at insert, and note that VIRTUAL costs nothing on disk but can still be indexed, so STORED is mostly for when expression itself is expensive.
He has some great videos. I watched this one and was impressed at the calculations, the transparency and the celebration at the end when he reached supersonic speeds.
You could run C that way... but scScript is a scripting language using C-like syntax with features designed for scripting. For example, it provides dual variadic parameter/arg lists. Turns out having "in" (pass-by-val) and "out" (pass-by-ref) parameters are more pleasant (at least to me) than trying to return N values out of a function (especially since script languages run away from pointers). Perhaps it is a testament to my ignorance, but I am not aware of another language that does this.
The difficulty in designing a language is not so much implementing a compiler, but the iterative process of implementing and fine-tuning a given aesthetic... a given flavor as it were and it has to work well. Of course the other side is testing the damn thing... so my hats off to QA!
Nevertheless, I am sure good tool users could save a lot of time instead of hand implementing everything, as I would. So thumbs up to LLVM.
No (scripting) language with 2 parameter lists, the second all Var (to use the Pascal syntax). I could have included a Var keyword instead to differentiate, but a) that would complicate the variadic nature of scScript parameter lists and b) didn't quite look C-like to my eyes. (Then again I also have two Map functions in there for arrays and dicts.... so I should not claim purity.) (Yes, I stole them from LISP :-)
Then, there is the CH32v303 https://www.wch-ic.com/products/CH32V303.html, which is the lower end of the chips that support minimal floating point and USB host/client. These ones are a bit more pricey, https://www.lcsc.com/product-detail/C5456849.html at $US1.72 each. The extra price is QFP64 (64 pins, quad flat pack) and more features on the chip, USB, CAN, V4F extension giving one instruction multiply and some floating point operations.
Note that the fact that this chip uses an extension, V4F, for floating point (I think?) is part of the argument of Dmitry's piece on the RISC-V. The chip is pretty low price for a fair bit of power.
I feel like the Raspberry Pi products are inherently a special case.
They're probably produced in far greater numbers than most off-the-shelf STM32 or CH32V chips. You've got a huge ready market in hobbyist/educational products as well as the commercial products that have used it as a convenient choice.
There's that whole non-profit/educational heritage around them that likely selects for a different set of defaults and features than, say, a MCU designed specifically to be the controller for a SATA SSD or a $19 Roku clone.
They also have a small product range, as compared to the broad product matrix a lot of the more "commercial brand" MCUs come in. I know even the CH32v30x chips come in several variations multiplied by several package options (which vary enough to impact the features you can realistically use on them).
> They're probably produced in far greater numbers than most off-the-shelf STM32 or CH32V chips.
I highly doubt it. The RP2xxx lacks the built-in functionality for use in, say, a car, and it isn't cheap and fully-integrated enough for dime-a-dozen gadget application. They are great for hobbyists due to their low barrier to entry, but there really isn't a niche they serve when it comes to mass-produced electronics.
> They are great for hobbyists due to their low barrier to entry, but there really isn't a niche they serve when it comes to mass-produced electronics.
This.
Just programming a microcontroller is generally a pain, but a pain that hardware manufacturers can deal with, because they have employees with experience, who can read the long datasheets, get proper programmers and run the manufacturers software packages to program everything.
For hobbyists, you're basically limited to arduinos, esp??/??, and rpi picos, only those are guaranteed to have a lot of software support, documentation, easy availability on aliexpress etc. for cheap, and can be made to actually do some stuff in an afternoon of tinkering.
(technically it's the same with proper RPis, where they're the only SBC board (not x86 baed) that you're guaranteed will have at least some software support after 5+ years).
> technically it's the same with proper RPis, where they're the only SBC board (not x86 baed) that you're guaranteed will have at least some software support after 5+ years
This isn't quite true, though it's true at the RPi's price point. For example, Toradex (disclosure: I work for Toradex) produces the colibri-imx6 system-on-module that can be turned into an SBC with a stock carrier board. It was introduced in 2014, continues to be supported today, and will continue to be supported until 2036. But that level of long-term support and maintenance costs money, and the pricing reflects that.
This is often a gilded cage. Think about it. On one hand Great, you dont have to redesign your SBC, that would take whole ~1-2 engineering man months (small simple SBC at not bureaucratic nightmare small to middle size company, obviously man hours go thru the window at big many cook orgs). On the other hand you keep shipping SLOW AS ASS SBC to your customers while Chinese competition keeps redesigning _every year_ and offers smoother UI experience with more features for less money.
The real thing manufactures do is ensure that the SBC is available as long as they want it. My company started an embedded controller 6 years ago, at that time we got a contract from manufactures that all the parts would be available for 12 years, thus ensuring we won't have to redo that controller for 3-4 more years (and we might just renew the contracts). As a hobbyist you don't have that guarantee (except the 3 you named) it happens all too often you buy something only to discover not enough other hobbyists have the same board to give it a critical mass of people to make it work. It can still work, but you will personally have to do all the work to make it keep running which few hobbyists have the time/energy for (and often the deep technical knowledge is lacking as well)
A big part of the numbers game is on variants though. There's what, eight or ten total RP2040/2350/2354 parts to choose from? So all the volume is split between those.
Conversely, there are a lot more variations within other MCU lineups. Just looking at the WCH CH32v30x datasheet-- a single relatively low-popularity range from a single vendor, the datasheet shows 9 basic models with five different physical form factors, and there are theoretically different SKUs for different temperature ranges, etc.
And on the RP2354 you can swap one or both ARM cores for RISC-V cores at boot.
I think the CH32v303's single V4F core might be slightly more capable than the Hazard 3 cores RISC-V cores (as it has a hardware FPU), but for everything else the RP2354 is probably better (and the ARM cores do have hardware FPUs)
The "much more capable" is debatable. The RP2000 series is quite disappointing IO-wise: no timers, barely any ADC, no touch sensors, no CAN, bare minimum of USART/I2C/SPI, no I2S, no I3C, no ethernet, no USB PD...
And yeah, it has its PIO modules, but those aren't powerful enough to make up for it. They are fine as an alternative to bitbanging Neopixels, but you can't rely on some hobbyist's vibe-coded weekend PIO project which takes up all the PIO slices and 30% of one core to do application-critical communications.
I would take an RP2000 in a heartbeat for most of my hobbyist products, but for anything professional an STM32 is orders of magnitudes better, and even a CH32v303 looks like a more attractive option at first glance.
With missteps and imperial arrogance in Iran and Ukraine, perhaps the world might not be counting on the US as much militarily either?
"An army marches on its stomach"... If things at most soldiers homes aren't as good as they could easily be (financial prospects, opportunities..), maybe they don't have the same drive to fight with the same vision and discipline as they used to? I hope they will employ good vision and discipline.
reply