Even KISS. Sometimes things just have to be complex. Of course you should aim for simplicity where possible, but I've seen people fight against better and more capable options just because they weren't as simple and thus violated the KISS "rule".
Almost every good content creator is only on YouTube.
Nah Python is weird about static types - it only defines the syntax, not the semantics.
Ditch Mypy. Pyright is much much much better.
Don't be an idiot.
Freeing home energy gear from vendor lock-in. Matter 1.4 adds some big, expensive gear to its list of device types and control powers, and not a moment too soon. Solar inverters and arrays, battery storage systems, heat pumps, and water heaters join the list.
Yeah I seriously doubt solar inverter providers will sign up to this. Here's what QCells said when I asked them about an API:
I’m sure it is possible and we’re in discussions with some providers over opening up to their requirements, but it’s not something we’d offer to individuals unfortunately.
They view control of their "virtual power plants" as a commercial asset and they don't want to give it away for free.
Don't buy a QCells solar inverter btw. I should have done more research! I believe GivEnergy are less stuck in the 80s but don't quote me on that.
I would probably recommend not trying to understand the whole field of programming initially. It's huge, you won't understand what the terms mean (e.g. OOP, functional programming, etc.) and it's not very motivational.
Instead I would pick one or two popular languages to learn and actually make something in. The no-brainers are Python and Typescript. They're hugely popular, not difficult, and let you get a lot done.
I think I would consider learning both at the same time. If not, at least don't stick with Python too long. It is immensely popular but also has a lot of brain dead design decisions. Especially a) it's reaaaally slow, you easily get a 50x speed up just by switching language, and b) the "infrastructure" around it - installing Python, adding libraries etc. is completely awful. There are attempts to fix that but they're nascent.
Above all I think a good thing to have is a realistic goal of something to make. For Typescript the obvious thing is a web site. I really like this way of making web sites - you can get started with literally 2 command - but it may be a little too much for a beginner.
For Python I would look into some kind of automation or maybe web scraping thing. It's decent at that.
Or if you have more specific project ideas you could use the most appropriate language for those, e.g. a microcontroller project you probably want to start with Arduino (C++). C++ was my first language (apart from QBasic which doesn't count). Probably not for everyone though. I was very young and had free time.
The only Git GUIs that I've ever liked:
- GitX, and its many forks. Mac only though.
- Git Extensions. Terrible name, but this is actually a standalone Git GUI and is surprisingly decent. I think it started Windows only but maybe there's a Linux port now.
- VSCode's "Git Graph" extension. It's not quite as fully featured but it integrates well into VSCode and is pretty nicely designed.
I've tried almost all the others (SmartGit, Sublime Merge, GitKraken, etc.), and didn't really like how they worked.
Ooo I've not seen this before. Looks interesting.
Anything that helps scientists and engineers move away from MATLAB is welcome.
The MATLAB language may be pretty bad but IMO that's not what makes MATLAB good. Rather it's:
-
Every signal processing / maths function is available and well documented. I don't know how well Julia does on this but I know I wouldn't want to use Python for the kinds of things I used MATLAB for (medical imaging). You don't have to faff with pip to get a hilbert transform or whatever...
-
The plotting functionality is top notch. You can easily plot millions of points and it's fast and responsive. Loads of plotting options. I just haven't found anything that comes close. Every other option I've tried (a lot) only works for small datasets.
Sure but that's not relevant to the current discussion. The point is that removing the GIL doesn't affect Numpy because Numpy is written in C.
Python is written in C too, what’s your point?
The point is that eliminating the GIL mainly benefits pure Python code. Numpy is already multithreaded.
I think you may have forgotten what we're talking about.
the new python version was less than 50 lines and was developed in an afternoon, the c++ version was closing in on 1000 lines over 6 files.
That's a bit suss too tbh. Did the C++ version use an existing library like Eigen too or did they implement everything from scratch?
FizzyOrange
0 post score0 comment score
I agree. C2 continuity does matter for aesthetics sometimes, but not for a button.