Human Authored Certification for Books. How about software?

I came across an article that pointed me to the Authors Guild website and this page about a new initiative called the Human Authored Certification.

It got me thinking whether there should be (or maybe already exists) a similar effort for developers and their software.

So, here’s some questions, if you have an opinion on the subject:

  1. Should we have a new Xojo forum category for AI-related topics?

  2. Does a similar certification exist for software products? Officially, or unofficially?

  3. Would having such a certification mark, label or categorization help promote the integrity of your product? In other words, would advertising that you used AI during development help your sales?

  4. Do you currently use AI to help write your projects? If so, how?

  5. How do you feel about the AI buzz that is flooding the technology industry?

Here’s a repost of a meme that I thought sums up my questions quite well :face_with_monocle:

1 Like

I’ll go first.

  1. Yes!
  2. Don’t know.
  3. Personally, I doubt it.
  4. No. I’ve never intentionally used Siri (first thing I disable, when installing macOS) and have no plans to deliberately install any AI tools or apps. Though I concede some search services are using Siri or other AI-like functionality in the background.
  5. Not good.

Note: Like for authors, the book certification does allow for AI assistance for spelling or grammar checking. I think the same could be a provision for software development when it comes to little things like using Google or Bing language translation for text labels in the UI (localization).

1 Like

No because there aren’t any AI models trained specifically on Xojo, so most of what they can produce needs human attention. We should not encourage the use of AI with Xojo because of that.

I am tired of people asking AI, getting garbage, and then expecting skilled humans to fix it for them.

I agree with the microblog screenshot you shared. I feel advertising you used AI would probably hurt your sales.

I use AI as a super charged search engine. I do not ever ask it to write code, but it does help filter out garbage that other search engines provide (like quora). I only ask it to search for things I can verify once I understand better.

It annoys the hell out of me, because the amount of enamorment associated with AI is directly equal to skill level and the amount of effort someone puts into their work. People who don’t understand why the result they were given was bad are wildly exhausting because they’ll defend it without understanding a damn thing.

Edit: You know what… maybe an AI category would be good… so I can put it on mute.

6 Likes

Well said Tim! Very well said. :trophy:

You beat me to it. That’s what I was secretly thinking all along :wink:

2 Likes

I’m in agreement with the assessment by @Tim_Parnell. Someday AI may get to the point where it’s more than anecdotally useful for Xojo, but we’re certainly not there yet and it just creates more problems than it solves at this point. Including making me roll my eyes hard at what it outputs – which I worry will eventually cause my eyes to get stuck facing different directions.

I’d prefer to not see the AI topics, responses, etc, especially when they’re just “I asked [AI] and here’s what it said!” followed by a conglomeration of code from other languages that clearly won’t function.

5 Likes

StackOverflow (used to, I think they backpedaled on it?) have a rule that users cannot post AI generated answers or code. I would love to see a policy like that enforced here.

It’s completely undermining (and quite a bit disheartening) when someone asks a question, and along the thread someone goes “Here’s what I’ve just copy and pasted from AI”.

If the original asker wanted AI garbage, they’d ask AI. They’re asking us, humans.

If all someone has is copy + paste from a plagiarism machine that doesn’t help. At all. I’d love to see those posts removed.

5 Likes

What a highly serendipitous post. I didn’t know one could mute a category (it’s a bit hidden but I found it). As a result I’ve managed to mute all sorts of categories I have no interest in. So thanks for that.

3 Likes

Well maybe I’m begging for some pain by posting this, but I’ll provide an opposing view. I also apologize in advance for the novella. If you want TLDR and answers to the questions, skip towards the bottom and before the quote.

Let’s start off on some background. I wasn’t too keen on AI myself maybe a year or so ago and seldom used it. Then I figured I’d give it a go and started using it for finding hex colors, more generalized non-coding related questions, etc. Along the way, someone here mentioned that ChatGPT does a decent job with Xojo. Around this time they rolled out the Mac client so that you can get to it via a hotkey so I figured I’d give it a shot for code and I’m glad I did.

Speaking specifically about ChatGPT as that’s what I’m using, it’s pretty decent and sometimes excellent for Xojo code. The way I’ve explained it to folks, is that it’s similar to having an intern. You can often given them a task and they’ll get 80% of the way there. Their solution won’t be perfect, but they’ll have enough of a foundation to build upon that they just saved you a ton of time even if you need to wrap up the final 20%. ChatGPT for coding is exactly the same. More often than not, the code and solutions it provides are directionally correct, but it’ll need some work to bring it over the line. Anything super complex or that requires deep debugging, will absolutely require human intervention. In its current state, it can be immensely powerful for those who know what they’re doing. But if you’re a first time coder and know nothing about code, the correct way to do something, etc. then woe is you as AI will often lead you off into the weeds and you won’t even know it!

Here’s two real-world examples. I was having a bug in my network protocol stack where some index or count was clearly off. After spending an hour or more with ChatGPT, I kept running in circles. But this was more of an exercise to see if it could figure things out and what its functional boundaries might be. After closing the conversation and diving into the code myself, I figured things out within 5 maybe 10 minutes.

And then there’s the contrary situation. In my current app, I wasn’t storing the bounds for my various app windows and hence they were always being presented in the same spot within the display. I’ve done code to grab and store these bounds in preferences a zillion times myself in prior apps in Xojo, Real Studio, REALbasic, Objective-C and Swift. Maybe a 15 minute job that’s not hard at all. In under a few seconds, ChatGPT was able to create Xojo methods to store and retrieve window bounds to my app’s preferences. As a result I saved at least 10 minutes of time if not 14.

Just like everyone else here, I too have pondered the social and career implications of AI. I can absolutely see other’s viewpoints here and in many regards I agree. But alas I’m old enough to have lived through various inflection points within computing to have some inklings for where things go, but also have enough runway I still need to traverse before retirement to also make the implications meaningful to my own career and longevity. I remember when there was a move from centralized (mainframe, mini, etc.) to decentralized (PCs), limited networking (dialup, maybe some LocalTalk, etc.) to the Internet and of course now from non-AI to AI. I’ve seen all of this played out several times in my lifetime and there’s always folks that for various reasons don’t or won’t adopt the new technologies that are part of the here and now. In almost all cases, the new technology wins and the humans holding out lose. So although at first blush I wasn’t going to adopt AI and also saw it as a threat, the cat is out of the bag and our world will forever be changed. I can personally choose to adopt it, similar to say switching to Photoshop and digital photo processes or stay in the world of film, darkrooms, chemical processes, etc. It’s not that the old ways aren’t useful or we’ll never return to them (e.g. current retro or nostalgia trends), but to be a technologist one must continue moving forward regardless of how one feels about the new direction.

The other aspect that ChatGPT is awesome at, that has been touched on in this thread, is anything to do with marketing, customer related text/copy, etc. I’ll very often create a first draft of an ad, webpage, etc. and then have ChatGPT clean it up and be my copy editor. In this scenario, as I’m not a full-time marketer but instead a technologist, I’m the 80% and ChatGPT polishes things to get me to a much better 100%. Of course it’s not perfect and some tweaks might be needed, but I can’t tell you how many tens if not hundreds of hours of time it saves in just this one area.

Then there’s the argument for copyright and whether or not it’s ripping folks off. We’ll see how this plays out long term in society as well as in the courts. But the way I see it, it’s no different than an ambitious human. None of us create something in a vacuum and instead stand on the shoulders of those that have come before us. We all learn, tweak and expand upon the body of work that humans have created up to this moment in time. I’m not advocating plagiarism or ripping folks off, but just look at Stack Overflow, this forum or anywhere else where folks are sharing code, tips, tricks and methods to get something done. Anyone out there can read this data and directly use these solutions or build upon it themselves. ChatGPT and other AI platforms simply do this in volume and at scale. Frankly the path was already laid down by the search engines that came before it. If we as a society really wanted something different, then crawling everyone’s webpages should have been opt-in rather than the current model of opt-out.

Now do I believe AI is a panacea and will solve the world’s problems? Time will tell. Do I personally think the whole industry is hyped, yes absolutely and similarly to any new technology that has come before it. Here’s a great article from Baldur Bjarnason that speaks to the high level of how AI works, it’s limitations and why using it for programming can be a bad idea. So needless to say, I’m not a 100% AI advocate and am still skeptical, but in my own real-world use cases, I’m seeing great value.

So yes, I agree with many of you, but as a solo indie developer, who’s competing in the market with others who are likely already actively using AI, I’ve chosen to use it to level the playing field, save myself time/money and for it to act as a $20 a month intern. On so many things it’s also become a better search engine than a real search engine and saves me the time and effort in clicking through a ton of search result links.

Here’s a great example from a few months ago:

“What are some other good 80’s movies similar to those from John Hughes and movies like Say Anything, Broadcast News and Stand By Me?”

Try it for yourself. I’m sure you’ll find some interesting movies you’ve maybe forgotten as well as some new ones you’ve never heard about nor seen.

To more directly answer your original questions @Scott_C

  1. Yes, please!
  2. Not that I’m aware of nor do I think it matters. AI is quickly infiltrating most if not all of the major IDEs so this separation between code by humans and code by AI will soon be very gray and a gradient.
  3. I don’t think that software consumers generally think about things in this way. Instead I think the resulting actions are more important factors such as getting new features out more quickly, fixing more bugs, etc. How you do this, whether AI or not, I don’t think matters in their eyes.
  4. Yes, see above.
  5. See above towards the end.

Per the microblog image, I think this depends. There’s definitely a market for some things to be hand crafted and directly attributed to a human. Think coffee, wine, food, etc. But for other thing such as cars, having robotic welders is mostly a win as this keeps mass produced car prices down otherwise we’d all be stuck with $150K Italian exotics that are mostly crafted by hand.

To Tim’s point on posting AI answers, I of course am guilty of this. But in the few cases when I’ve done it, it’s mostly to give another perspective as it seems there’s so many around here that don’t use AI nor can see its capabilities. Of course, I’ll refrain from doing so in the future, unless if we happen to get a new AI subforum.

As a final point to all of this, I just spent nearly an hour crafting my reply to this thread so why not compare to ChatGPT. Here is what it says to this entire thread including reference links and within a response time of about 5 seconds:

The discussion on the Xojo Programming Forum raises concerns about the integration of AI in software development, with participants expressing skepticism about AI-generated code and its current applicability to Xojo. However, it’s important to consider the significant advantages that AI brings to the software development process:

  1. Enhanced Productivity and Efficiency

AI-powered tools, such as GitHub Copilot, have been shown to increase developer productivity by automating repetitive coding tasks and providing intelligent code suggestions. A study analyzing GitHub Copilot’s impact found that users accepted nearly 30% of the suggested code, leading to notable productivity gains. These tools assist developers in focusing on more complex aspects of software design and problem-solving.

  1. Improved Code Quality

AI assists in identifying potential bugs and suggesting improvements during the coding process. By leveraging machine learning algorithms, AI can analyze code patterns and detect anomalies that might be overlooked by human developers, thereby enhancing code reliability and maintainability.

  1. Accelerated Learning and Skill Development

For less experienced developers, AI can serve as a valuable learning tool. By providing code examples and explanations, AI aids in understanding new programming languages and frameworks, thereby accelerating the learning curve and fostering skill development.

  1. Rapid Prototyping and Innovation

AI enables rapid prototyping by quickly generating code snippets and automating parts of the development process. This acceleration allows developers to experiment with new ideas and iterate on designs more efficiently, fostering innovation and reducing time-to-market for new applications.

  1. Addressing Talent Shortages

The demand for software developers often exceeds supply. AI tools can help bridge this gap by augmenting the capabilities of existing teams, allowing them to handle larger projects and more complex tasks without a proportional increase in personnel.

While the concerns about AI-generated code quality and the current limitations in specific programming environments like Xojo are valid, the broader perspective highlights that AI integration in software development offers substantial benefits. By embracing AI tools, developers can enhance productivity, improve code quality, and drive innovation, ultimately leading to more efficient and effective software development processes.

2 Likes

Patrick, you have a gift for sales. You made some good counter-points here, thank you.

Admittedly, for us to be programming on such a great tool as Xojo, it is because we stand on the shoulder of the giants who came before us. From Steve Jobs all the way back to Ada Lovelace (poor choice of names? :face_with_peeking_eye:)

In other words, software technology is what it is today, because of great new innovations upon other innovations (many controversial) that have all contributed to the abstracted layer we can work on and enjoy in Xojo.

AI will undoubtedly become another of these layers. I’m not saying we shouldn’t allow it, but at least at this point in time and history - we can still make a choice about it.

I also admit to a personal bias. Two of them, actually.

  1. I was once a writer. And if there is any industry that AI is guaranteed to disrupt (which it’s already doing…) it is the profession of writing articles, blogs, manuals, technical literature and fiction. Writers know this too, thus the whole human certification thing. These professionals are suffering already, not to mention their readership…

  2. I’m in my 60’s now and not in the best of health. One aspect of that means I struggle with chronic brain-fog everyday. So in order to keep myself from sliding into a numb state, I need to exercise brain-retraining to keep myself sharp(-ish). That means learning something new on a recurring basis. And I mean learning by doing and working the problem until I fully (mostly) understand it, and potentially solve it. If I hand off that job (or just a part of it) to something else like an AI tool, well, I fear I may ultimately lose out.

But, with all that said, Patrick, you do a helluva job selling AI as being something to consider. So I might just try it out, potentially for some of those tedious repetitious tasks that hurt my brain more than it helps.

1 Like

Thank you for the kind words. :slightly_smiling_face:

Well one thing I neglected to mention is that at least in my experience, I’m not seeing AI creating something entirely new or from scratch. As the article by Baldur points out, AI isn’t particularly creative and instead needs humans to produce the data/content that it then sort of remixes and reuses to get to its results. Is it going to invent the next new widget from scratch? No. But can it take the existing data set and find some new or novel things that we humans aren’t doing today? Yes, maybe.

In essence, for boilerplate or everyday common tasks it’s great.

Here’s another unusual real-world use case. While trying to find a marketing name/term for something in my software, I had it give me 10-20 possible options after describing the feature. These items themselves weren’t exactly what I was looking for but sparked something in my own mind. Within moments I found just the perfect term that was far better than anything it recommended. Maybe it was just rubber ducky marketing, but regardless this one breakthrough far surpassed the $20 I spent during the month, never mind the numerous other instances of value I received over the same period.

I think this is the societal rub with the whole thing and I’m not really sure there’s any easy answers. Just like with almost all new technology and automation, people will be displaced and will have to adapt. Similar to the Gutenberg Press when it arrived that put (people) scribes out of business or the robotic welders I previously mentioned…there’s a human cost. Frankly, you could say that much if not most of what we’re doing here in Xojo is displacing humans as it’s automating things that were jobs folks once had (e.g. think of the barcode intersects, Point of Sale systems, any kind of counting, etc.). All of this involved real life humans at some point prior to the 80s and computers arriving on the scene. Another example of an intersect is with Tesla and their EV Semi-trucks that will one day likely displace all the real truck drivers that have been around for generations.

I’m not saying that it’s our job to grease the skids for the new technology that’s arriving, but in the same token do any one of us want to be our grandparents or great grandparents that lived through the boom of the Internet and yet knew nothing about it, nor could interact with society in a more modern way?

I’m not intending to be rooting for AI here, because I’m actually really skeptical but have seen the real-world use cases where it’s successful. But, I could see AI being awesome for your own use case. It sounds like you need to keep your mind active and moving and AI could easily automate some of the more mundane or boilerplate, while freeing up time for you to work on some of the more interesting and difficult tasks that require humanity to solve. If you’re like me, you probably have a laundry list of cool projects you’d like to get to one day but never have enough time to make it happen. What if AI were to shave off 20% of the time/effort to get your current project done, which means you can move onto the next interesting project and therefore make better progress on your list? Not saying this is the answer for you, but that’s the proposition that’s on the table with AI.

I can’t say exactly what the state of things are for ChatGPT on the free plan these days, but I lived off that for quite sometime and it mostly just used the older data models. At some point they added a delay of couple of hours if you asked too many questions, so I moved over to the $20 per month plan. Long story short, it’s easy to try for free and see if it fits your workflow and use cases.

3 Likes

Well put, Patrick.

My laundry list is quite long and time is getting shorter, not longer. Yours is a strong argument.

When I was younger, I could do a good 10 hours or more a day of billable/working hours writing code and trouble-shooting. These days I’m lucky to do three, or even just one. The rest of the time I’m either resting, napping, thinking or dithering.

Somehow I still gotta pay for retirement…

2 Likes

Smugness about not using AI is like the smugness about not using plugins. It’s still my app and my code.

I’m adding support for POP which is quite different to IMAP. So I asked ChatGPT a lot of questions. What is the equivalent of this and that? But I still need to think on how to fit everything into my existing API.

There was a guy recently asking about SQL joins. This would have been done much easier in ChatGPT: “I have 2 tables, what is a join, how do I make one”. A recent discussion on how to notarise an app would have been much harder to get right in ChatGPT because the target is a moving one. And ChatGPT is not a good idea who those who lack critical thinking capabilities.

ChatGPT is not a cure-all. But I can now develop software faster. My users don’t care which software/language/method I use to develop my software.

5 Likes

Smugness <> opinion, so I apologize Beatrix, if I did not express my opinion clearly enough.

As @Patrick_Salo pointed out, today’s AI is not strong in the creativity department (not without human prompts), but I’m not sure the general population knows that.

In the Authors Guild initiative I linked to earlier, they said “The Human Authored initiative isn’t about rejecting technology — it’s about creating transparency”.

My posting here was to, more or less, ask the question of whether software developers should do the same?

What I’m talking about is how the “hype” behind AI is diluting public perception on how software is made now and in the future. That perception is already strangling the indy/self-publishing book markets because people have become wise to the risk of buying something that is loaded with AI drivel. So people are generally only buying well-known, established authors, and leaving the rest to starve.

To help clarify my point (hopefully): how about when a person in the near-future wants to download an app or use a website. Most of these people are not tech-savvy (but have heard confusing or contradictory things about AI) - how do they to trust if the app or website they chose is reliable, if we potentially don’t soon provide something like an AI disclaimer (transparency)?

I think a similar, parallel case has already been made with data privacy. Look how the data sharing/buying/selling between corporations has led us to GDPR? And we’ve still a long way to go to fix those problems. Unfortunately, the horse has long since left the barn…

My brain is officially mush now (I’m starting to babble), so I’ll sign off now.

Again, my apologies for not making a better point. Thank you all for your patience.

1 Like

This is a great callout @Beatrix_Willius and something I completely forgot to mention. ChatGPT is awesome in doing general research and R&D.

Your use case is a great example too! Why surf through various webpages that might detail some of the POP behavior when you can just get an aggregate right from AI. And on top of this, as I’m sure you probably did as well, if you have any specific questions along the way, ChatGPT can easily provide very relevant answers. Heck, as one even goes down a rabbit hole such as this, it can suggest what parts of the Xojo frameworks to use, methods, events, etc. or even simply create some basic foundational code that one can then build upon.

As you and I have both mentioned, this greatly accelerates the development process. Although human interactions and the forums are great, there’s nothing quite like having an AI assistant that can provide instant answers and doesn’t care one iota about how smart or stupid a question might be. Additionally, there’s zero patience needed by it, to expand upon it’s answers or even detail how it achieved a certain conclusion.

1 Like

There is no need to apologize. Having these discussions is important.

Normie users don’t have any idea how we develop software. Most probably think that we push some buttons and then everything is done. I always see that in forum posts when something about Apple is discussed. They don’t get at all why we developers loathe Apple so much these days.

The question is: what is the value of your software? What is your moat? If all you have is AI then you can be copied easily. I know emails inside and out. What I have done can’t be copied in a month.

2 Likes

Maybe it’s just my own inclinations, but for things from the humanities, I think there’s great value in calling out and marketing non-AI produced content/crafts. Will AI create some interesting things now or into the future? Absolutely, but for me I still want to support real people who create things to sustain themselves and their families.

This is a great question! I don’t know if it’s entirely the same, because at this moment in my own experience, AI isn’t powerful enough to create a cohesive end to end software product that someone might want to buy. This of course will change in the future so maybe marketing things as human created will have value, but as mentioned, AI will be creeping in relatively soon, and at the very least, as helper in the process.

My gut feeling though is that customers likely won’t care. Either the app/software product does what it needs to do or it doesn’t. The actual creation process likely won’t come into play much especially when you look at how the market responds to how hardware products are made and recycled, foods grown organically or not, etc.

Maybe I’m off base here, but I think this is no different than any other artisanal product produced within society. It starts with building relationships with your customers, having them understand that you’re real human and not AI and building trust with you and the products you sell. There’s a reason why certain niche or even local products fly off the shelves versus say BigCo produced ones. There’s lots of folks out there that want to know the people behind their products they purchase.

1 Like

Thank you, I believe the same :blush:

Excellent point!

no need for extra category.
Amazon ask for Books if they are made with AI,
i guess a simular tag for auto generated Software will come too,
i not want a AI label beside software, using AI is like Google Search for Source Code Examples.
i not use AI for programming, i prefer reading the manual of the framework and thinking myself.
currently i am involved in AI projects to help staff with documentation.

the time will come and there is a copyright law if you use AI source code,
and you all will pay a usage license. or a disclosure and adhortatory letter industry scents booty.

We will need to rethink copyright for sure. But also for sure I will not pay a usage license. You might want to check your autocorrect. I have no clue what “adhortatory letter industry scents booty” is.

1 Like

I’m all for leaning in to things that make development easier. I provide such solutions. I just don’t see AI as doing that yet for Xojo. I believe it will get to that point, but right now what it outputs does require knowledge of the language.

I’m not blind to its potential usefulness, nor standing on my proverbial porch yelling at the AI to keep off of my lawn. I want it to be useful and not create more work for me or others, which is what it does currently. I keep trying different models as they come out to see if they’ll be helpful and always walk away with the same “yeah, that’s not it”.

You can’t, in practically all cases I’ve seen from my own testing of LLMs and here on the forums, just ask for a solution to even a basic problem from AI then throw the result in to a Xojo project and move on. I’ve seen everything from framework function calls that don’t exist, incorrect/missing operators or parens, and non-obvious errors that will be hard to track down later. What this means is that those who don’t have the knowledge to recognize or troubleshoot these issues end up either blaming Xojo or relying on others to fix the code rather than learning the language.

This, in my mind, is the crux of the problem on a wider scale as well. We’re sacrificing skill and knowledge for ease of use to a system that doesn’t truly understand the goal. Once it does, if it does, then all bets are off. For the time being it’s just an interesting curiosity that regurgitates whatever it has seen before. It can’t reason.

4 Likes