I think it depends on what you're using it for. If it is a simple kubernetes config then the model doesn't matter too much. Contract that with writing the scenario for a backtest for an algo that trades on a venue: it is not the same complexity and the basic models are terrible. I've had it tell me that it has added tests to find that they're just stubs!
Opus seems to be getting there, but on more complex tasks the others are a complete waste of time.
> If it is a simple kubernetes config then the model doesn't matter too much
I guess at least this person https://www.tomshardware.com/tech-industry/artificial-intell... might disagree. I think already to know what Kubernetes even is requires quite a bit of knowledge. Using a tool that manipulate its configuration files IN PRODUCTION without risking data loss is another ball game entirely.
I think that hearing other points of view is important.
I see time and time again that posts insinuate that there's no other point of view, and I think that highlighting one perspective is enough to show that this (as in the article) isn't some mathematically perfect piece of advice.
I think that for the average developer this might be true. I think that for excellent developers, they spend a lot of time thinking about the edge cases and ensuring that the system/code is supportable. i.e. it explains what the problems are so that issue can be resolved quickly; the code is written in a style that provides protection from other parts of the system failing; and so on. This isn't done on average code and I don't see AI doing this at all.
I thought that new models were typically released in October. Have I misremembered or is this an unusual timing vs previous years? If so, I wonder why the earlier release?
I think at this point Apple will just release new versions of laptops whenever new CPU revisions and yields allow. M5 Pro wasn't ready for October so delayed until now.
I did it today. It took me thirty minutes to fix the networking because I couldn't get Little Snitch to uninstall since it didn't seem to be compatible. Basically I had to reboot in recovery mode to disable security features (csr) to uninstall Little Snitch (via systemextensionsctl). This is the worst update I've ever gone through on Mac, and I started using a Macintosh SE.
In the past, MacOS has automatically made a folder of incompatible software that it leaves on the desktop. Little Snitch seems like something that could have been tested.
As far as I know Little Snitch uses a user-space Network Extension, which uses a public API added by Apple to the OS specifically to help devs move out of kernel space.
It is a commonly used extension, which was restricted so that I could no longe remove it.
What's more odd is that supposedly I was running the latest version.
Considering that new speakers don't use SoundTouch, I wonder too. I hope that they keep the app running for a while. This kit is expensive and it can't have a short life time!
Your point was thought provoking.
In problem solving the "what" and the "how" are orthogonal since the method doesn't dictate the goal. However, if it takes a long time to do something (how: working slowly eg. because you're coding on a very slow, old machine) it tends to predict that there's less accomplished (what). That suggests that this isn't 'fully' orthogonal.
Someone else raised a good point that if we're working on the wrong thing, it doesn't matter how fast we are. However, I think a more subtle interpretation is more helpful here. I think that we need to be clearer about the consequences of the outcomes: what's the value add. The way I often reason about that is whether the outcome is 'Long-term greedy' or whether the outcome is going to make us a million dollars now. I find the latter really helpful, because if we're going to make a million dollars now but it costs us 100K in tech debt, then (provided there's not a better use of the resources) that is likely a good cost-benefit outcome.
IMHO, these strong type systems are just not worth it for most tasks.
As an example, I currently mostly write GUI applications for mobile and desktop as a solo dev. 90% of my time is spent on figuring out API calls and arranging layouts. Most of the data I deal with are strings with their own validation and formatting rules that are complicated and at the same time usually need to be permissive. Even at the backend all the data is in the end converted to strings and integers when it is put into a database. Over-the-wire serialization also discards with most typing (although I prefer protocol buffers to alleviate this problem a bit).
Strong typing can be used in between those steps but the added complexity from data conversions introduces additional sources of error, so in the end the advantages are mostly nullified.
> Most of the data I deal with are strings with their own validation and formatting rules that are complicated and at the same time usually need to be permissive
this is exactly where a good type system helps: you have an unvalidated string and a validated string which you make incompatible at the type level, thus eliminating a whole class of possible mistakes. same with object ids, etc.
I would argue that the barrier to entry is on par with python for a person with no experience, but you need much more time with Haskell to become proficient in it. In python, on the other hand, you can learn the basics and these will get you pretty far
Looking at the article headings these don't feel like computer science, and rather how to approach coding problems. This is useful, but not Computer Science. I think that we should refer to this as Programming Engineering or Software Engineering.
It is important to call these distinctions out in my mind because the Computer Science is often the concepts or foundations, whereas the Software Engineering is about how to convert those concepts and use them in a situation such that the concepts are well implemented, tested, and will stand the tests of time (including changing it). They're different skills and concepts.
I think that's a valid point. The naming came from the fact that the (my) students reading this are in a degree program called "Computer Science". But I do thing that's worth a mention in the guide. Cheers!
One thing to check is whether any security/monitoring software might be causing issues. Since there are so many files in git repos, it can put a lot of load on that type of software.
reply