Spread the love

Everyone has been playing around with the new GPT. Some have had fabulous experiences, some have not. I’ve found the style of questions to ask which allow for me to start experimenting in new ways with my personal projects.

I went through several iterations to start NaNoE.V3, or web, and I lost motivation for getting far in the projects. That begged the question, what do I feel like doing for a change of scenery? With multiple applications moving away from the standard Window Forms style, I felt like attempting an interesting challenge.

Ask an interesting question to start a challenge!

The plan: simple. Ask for a technology that I don’t use in my projects, so far, and see what I can make in 2, to 3, days. As can be seen from the screenshot below, I am slowly experimenting with what I can use to make NaNoE.V3. Yeah, my own novel writing software. The goal is simple, in understandable steps:

  1. Get an application using web technologies for forms as a starting base.
  2. Bring in all the existing NaNoE.V2 features, with the same file structure.
  3. Find improvements to add in, build an Android app to also continue editing novels made through NaNoE.V2, or V3

I am currently still in step 1, for simple reasons. I’ve been enjoying the experimentation through GPT4 to do something different. The interaction I’ve built so far is a little buggy for my liking. The idea is to start with the simple notion of “what would I want to do for the next feature.”

The simple notion.

Then, after just step through the process of adding in features which I feel like adding.

Choosing steps you feel like.

The idea is rather simple. Ask questions as if it is a legitimate query to someone who knows everything there is to know on a topic. Ask in a way that has a few simple specifics which can lead to the correct working answer, such as pointing out the sqlite3 question is the same as the project in previous questions, then it will work out the right answer for you. Tutorial > Node/SensorJS > Sqlite3 > The latest question.

Short, easy to understand, you don’t need to read through hundreds of results from a search in our usual search engines. The responses are a combination of those results, but they can lead to new ideas that work better you didn’t think of before. As an important note, I had to reword questions several times through the process to specify which versions of libraries I was using.

As a note, I regularly receive multiple answers which were for an older version of the libs, but don’t work in the newest versions. This is what would happen if you asked someone who only worked in C# 7 in the past a question relating to C# 11. It isn’t incorrect, it just can’t assume you want the latest versions of things unless you hint at it.

There’s no point fighting GPT, rather, it feels comfy it apologises when you specify more information since you can tell an answer isn’t as accurate as it first assumed.

This comes to the point today, I’m going through arbitary experimentation to build a new version of NaNoE for myself. I’m siding towards continuing to experiment at this stage, since I’ve got a simple problem to solve:

Inconsitencies.

You can see here; open, not loaded; open, loaded; open, second time loaded; open, second time unloaded. I might have missed something in the logic for the timing for loading the content, but you can see in the console it definitely succeeded. Do I perhaps have to make delays higher than the fractions of seconds?

    var outRows = null;
    dbHistory.all('SELECT * FROM history', (err, rows) => {
        // console.log(err);
        // console.log(rows);
        if (err) {
            console.log(err.message);
        }
        else {
            outRows = rows;
        }
    });

    setTimeout(() => {
        if (outRows !== null) {
            if (outRows.length > 0) {
                dbHistory.each("SELECT * FROM history ORDER BY id DESC", (err, row) => {
                    if (err) {
                        console.log('Error: couldn\'t get rows');
                    }
                    else {
                        pastNovels.push(...[row]);
                    }
                });
            }
        }
    }, 100);

    setTimeout(() => {
        if (pastNovels.length > 1) {
            pastNovels.shift();
        }
        console.log(pastNovels);

        // Load the index.html file
        win.loadFile('index.html');
    }, 200);

    setTimeout(() => {
        win.webContents.send('page-content', GetNovelListView());
    }, 300);

I initially want to just make a method to load an existing NaNoE novel and work on it. With a simple structure to maintain a list of your last opened novels. Perhaps with a date, one day. At this point I’m stuck since it doesn’t consistently load the sqlite3 data. I can’t quite work out the questions to use through GPT for a solution, yet.

The Outcome

I’m not near a state to show off the new NaNoE.V3 yet, but this week I’m just here to share this can work out well for research in new solutions when you’re unsure what you feel like.

NaNoE.V3, on GitHub, is in experimental status, it was built through questions to serve as my own tutorial into SensorJS. Whatever I felt like doing from this public holiday, Friday, until today, for the project has slowly seem improvements and implementation, as I slowly learn more. I recommend you try it out and see if you can find interesting ideas you can also experiment with, and learn more about.

You can take a look through the main sources I’ve been using so far. On OpenAI Chat, and Bing AI; which I primarily use so far. I can’t go into more detail due to confidentiality clauses in contract, and agreements.