I would be super lenient with him using AI for a pet project.
My guess is that he over promised on his project and promoted it too heavily but now the community is asking at least for a glimpse and there’s none.
He can make it eventually. But he will need to be honest with himself and stop making excuses or promotional videos to achieve it
I am an experienced software engineer and I feel I can offer a reasonable assessment of using AI in the embedded space. I use AI to generate code during work and in personal projects where appropriate.
In the embedded space, most of the professionally developed code is in proprietary systems, and the majority of the open-source projects are built and maintained by hobbyists and others without professional experience. The majority of the code accessible to me is not what I would consider high-quality, though there are exceptions. This is what AI is trained on.
I use AI to generate the grunt work of my job but it always requires me to correct (or throw out) what it produces. In the embedded space, what it produces is garbage, IMHO. I then have to remind myself to stop being lazy and write the code myself, though AI is the new Google so I find myself chatting with it to get information instead, and recognizing the hallucinations when they occur, and occur they do.
I cannot see anything good coming out of an inexperienced developer who thinks they can “vibe” code a solution in the embedded space.
I’ve programmed most of the code myself, but mapping keycodes and stuff, was done by github copilot in my editor, as mapping keycodes would take too long by doing them one by one manually using like some table online. Things similar to that are the only things I automated using AI.
At my day job they are pushing using AI for programming but I find things such as VS Code’s GitHub Copilot ‘autocomplete’ to be more obstructive (in that it provides undesirable suggestions and breaks my flow) than anything, to the point that I eventually just turned it off.
Many developers of FLOSS projects such as myself are professional programmers, who work on (often proprietary) software for their day job, and also work on FLOSS outside of work.
However, just because you are employed as a programmer does not mean that the software you produce is high-quality.
My view of things is that if you can truly program effectively using AI, you must be good enough to program the same thing without AI, as you must be able to fix the garbage code and hallucinations the AI generates, which requires knowing what the correct code is in the first place.
This limits the practical use of AI to things like mass generation of boilerplate and test cases and like, where AI is used for the sake of automation rather than for the sake of “vibe coding”.
What I do is use GNU Emacs’s macros to automate mass transformations of one format of text to another format of text without relying on AI or like. If that is not sufficient, I write a script in, say, Python or shell to do it for me.
I could possibly use a similar method, because yeah, AI has made mistakes in the past. And by mistakes I mean like it blurting out random things.
VS Code Github Copilot wasn’t too bad until a few weeks ago, then it has become really annoying! My esc key is taking the brunt of my frustrations.
I did not intend to imply that. I am one of those programmers. All I was saying that I found a difference in quality between “non-embedded” FLOSS and “embedded” FLOSS, not that FLOSS overall was not of high quality. It is high quality overall.
I did not indent to imply that either.
Absolutely! This is the same point I am making. AI is a time-saving tool. It cannot replace a developer, as some in the media seem to suggest.
I could not agree more. It is a time-saving tool.
That is what separates the chaff from the wheat in devs.
I agree with your statement on using AI as a tool rather than letting it do all of the work. I have a habbit of never commenting on my code so i tend to let copilot / chatgpt comment it for me when needed. On programs that i use it i clearly state in the comments typically under INSCCOIN [date] it’ll say something like “THIS CODE WAS COMMENTED BY COPILOT”
I’m all for using AI in projects like this, especially if your new to it. God knows i’ve asked it plenty of questions. However, using it for an application like this is absurd & it would get “lost” in its own code. I think OP would be better off making this a community project vs self / AI owned. Theres a few people in this form alone (including myself) who are intrested in creating something on the lines of what he’s proposing.
I personally think that this is a very advanced project that he’s doing alone. Every “Devlog” he’s released has showed nothing but MM-Basic so far with no real proof of progress / programming, I get it, you dont want to share you code till its done, been there done that. However, OP needs to realize that without proper documentation / devlogs NO ONE will make applications, games or repos for his OS.
I think he is a dreamer at this point, has some fantastic ideas but doesnt know how to execute them but he’s scared to be taken advantage of (hence not wanting open source). Without the community’s help on this project it’ll never leave its current stage of planning.
Future ideas for development:
- DItch the Pimoroni and stick with the Pico 2w at most
- Make the wireless version of the OS optional / own .uf2 Instead of writing an OS around the pico’s wireless features, write the OS around the Pico then add wireless “modules” to the OS that are optional.
- For ram issues i suggest looking into possible swaps with the SD card, at most 512kb - 1mb seeing the read and write speeds are significantly hindered by the Pico’s abilities. Or instead of the SD Card, make a swap on the flash of the Pico seeing Pico’s have 2 - 4mb of flash.
Sorry for any difficulties reading this, I did talk to text.
the thing is I don’t want a non-wireless version as I am trying to make the main thing of the OS to be that you go futher away from you laptop/PC as the PicoCalc could become more capable. And to achive that, not only would I need very efficient software and programs, but I would also need a better board, which isn’t overkill, but is reasonable, so here come’s the Pimoroni. Also for the ram issues, apparently if you access flash too many times, it wears down, and gets worse and worse, which requires frequent hardware replacement.
Without making it open-source, I do need quick help.
I need help regarding CMake and Pico SDK, when I try build using CMake, it comes up with an error saying that I need to clone the Pico SDK first, which I have, and the error still comes up.
PS C:\Users\...\AstralixiOS> cmake -G "MinGW Makefiles" C:/Users/.../AstralixiOS/pico-sdk/
CMake Warning:
Ignoring extra path from command line:
"C:/Users/.../AstralixiOS/pico-sdk/"
CMake Error: The source directory "C:/Users/.../AstralixiOS/pico-sdk" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
I might have found a fix to this! Will make updates asap.
PS C:\Users\...\AstralixiOS> cmake -G "MinGW Makefiles" C:/Users/.../AstralixiOS/pico-sdk/
CMake Error: The source "C:/Users/.../AstralixiOS/pico-sdk/CMakeLists.txt" does not match the source "C:/Users/.../AstralixiOS/CMakeLists.txt" used to generate cache. Re-run cmake with a different source directory.
Then as far as I’m concerned this is more of a personal project than community.
The bottom line is, if this is going to be a personal project and not an open source community project, there is nothing anyone can do to help him until there is a functioning OS, even if its just an alpha or beta release and a tool chain to work with. I am willing to give him the benefit of the doubt, I am even willing to write programs, but there is really no reason to discuss it until I actually have something to work with.
The thing is that Astrox keeps talking about wanting people to write software for their OS without providing any real evidence that this OS actually exists, much the less documentation and code to test with. At this point it is vaporware as far as I am concerned, and I certainly would not write software to work with something where there is no hard evidence of its being real. It would be one thing if Astrox here had a known track record of actually putting out software, but at least as far as I am concerned Astrox has no such record.
I couldn’t have said this better. My thoughts exactly.
I’m planning on releasing alpha version on the 20th, but maybe a slight delay could happen, but who knows?