I have implemented an API for WASM modules for a game engine. I want to create tests for it to make sure that the API that the WASM scripts use are correctly implemented.

How could I build a test suite for this? Since I would have to compile the modules as well, I doubt just "cargo test" would be enough. Is there another testing tool that could be better for this?

#wasm #rust #softwaredevelopment

> A release announcement should never include the phrase, “various improvements and bugfixes.” You might as well boast that the team proudly breathed air throughout development and used the latest version of the Internet.
- https://refactoringenglish.com/chapters/release-announcements/

😄

#softwaredevelopment #techwriting

One reason I think that complex #AI software projects are never going to happen is that the code it generates has no intent behind it.

Senior software devs spend an extraordinarily large amount of time reading existing code and asking not just HOW they work, but WHY they were written that way. Reading long-maintained, complex source code is more than mere reading comprehension; it’s LITERARY CRITIQUE. You’re constantly trying to understand the thought process and motivation of whoever wrote that code, in the hopes of gaining insight into their frame of mind.

Well, AI code has no motivation, thought process, nor frame of mind. While the code it generates MIGHT work correctly (a big assumption) at the point it was extruded, there is no plausible way of maintaining that code, and at some point of complexity (sooner than you think!) maintainability becomes critical.

#softwareEngineering#softwareDevelopment

But WHY do we need to understand the motivation behind a pile of code? Because it reduces amount of COMPLEXITY we need to hold in our mind. Understanding an original author’s mindset helps to define a direction of development that will very likely yield successful results that are harmonious with existing code.

And as any senior software dev knows, complexity is the greatest enemy of engineering, and anything that helps constrain the beast increases the likelihood of producing error-free progress.

AI is great at producing code of little consequence, things so basic or throwaway that no deep understanding is needed to maintain it. To me, that constrains its practical use to generating basically SCAFFOLDING and BOILERPLATE upon which your real code is built, essentially making the (fancy and custom) GRID PAPER on which you will actually inscribe your design. Let it write your for-loops, but don’t let it write the functions it calls.

#ai#softwareEngineering#softwareDevelopment

#AI coding tools can be time-saving automation at the hands of an already-senior developer, but that’s only because it utterly relies on the motivation and depth of experience already found in the HUMAN that’s using it to shape it into something worthwhile. Like a seasoned musician toying with analog synthesizers and sequencers, finding serendipity in the semi-random stream of patterns that are suitable to be molded into actual works requires a human editor. AI itself cannot offer that wisdom.

AI will never be a replacement for expertise. It does not compensate for a lack of skill. It offers nothing to replace an understanding of the fundamental principles of the craft. It will not turn a junior engineer into a senior one.

And it will not create a complex product, at least not one that won’t crumble the moment you have to maintain it.

#softwareEngineering#softwareDevelopment

But WHY do we need to understand the motivation behind a pile of code? Because it reduces amount of COMPLEXITY we need to hold in our mind. Understanding an original author’s mindset helps to define a direction of development that will very likely yield successful results that are harmonious with existing code.

And as any senior software dev knows, complexity is the greatest enemy of engineering, and anything that helps constrain the beast increases the likelihood of producing error-free progress.

AI is great at producing code of little consequence, things so basic or throwaway that no deep understanding is needed to maintain it. To me, that constrains its practical use to generating basically SCAFFOLDING and BOILERPLATE upon which your real code is built, essentially making the (fancy and custom) GRID PAPER on which you will actually inscribe your design. Let it write your for-loops, but don’t let it write the functions it calls.

#ai#softwareEngineering#softwareDevelopment

people love to hate react, and it's fair most of the times. it takes way too much effort just to make things look decent without a mountain of tech debt.

with plain html or those meta-frameworks, it feels way more chill: you just write the content, style it up, and boom. no existential crisis over component trees or state management.

but here’s the twist: i still end up using react (usually next.js) for most projects. i feel like it scales pretty well (for 0 users) and is overall pretty fun to write.

#webdev #programming #software #softwaredevelopment

I've had no complaints with my #mastodoninstance but have to admit I've thought about moving to somewhere that has a much more generous #characterlimit than 500. 2,000 would be a much better fit for the stuff I'd like to post and threads are not great in #mastodon - can anyone suggest somewhere with larger limit and bonus points if it's #softwareDevelopment #gaming #gayming or #lgbt / #queer instance?