I've been using GPT4 very intensively for the past week. I've mostly been writing frontend code and writing Python CLI utilities.

- First, there's a MAJOR difference between GPT-3.5 and GPT-4. From a branding point of view it's almost surprising that both are grouped under the name "ChatGPT". Anytime I hear someone saying "yeah I tried out ChatGPT and wasn't impressed" you can be sure they're using the free version (ie GPT-3.5)

- GPT-3.5 is great for simple scripts and data transformation, eg "rename files from this pattern to that pattern", "write a script to reformat from this CSV format to this JSON format". GPT-4 can do that as well of course but is generally overkill, it generates more slowly, and your GPT-4 requests are currently throttled so you want to keep them for higher value questions.

- GPT-4 is GREAT for frontend code (React/TypeScript/TailwindCSS). For example I had a few ideas yesterday to improve one of our pages: I wanted to add "infinite loading" (loading data progressively instead of all at once), make the search input "sticky" so they stay at the end of the page, and add a "Clear" button in the main input field that only appear when it's focused. I gave ALL THREE changes at once to GPT-4, along with the 160 lines of relevant code (15K+ characters). It came up with comprehensive steps to make all these changes, including installing some npm packages, changing codes here and there, adding custom CSS styles. And IT ALL JUST WORKED ON FIRST TRY.

- GPT-4 is also suprisingly good at design. I build pages which are tools for engineers so I don't need award winning UI, but having nice matching colors always makes things better. You can ask GPT-4 to make some display "classy", or "old school", or "make it really stand out" and it'll follow your instructions, matching the style of your webapp. Before that I was using TailwindUI, I now haven't checked it in a week.

- GPT-4 can do non-trivial code refactor. For example I was able to give it all the code for request handling, asked to make it "more concise and maintainable" and it suggested major architecture changes, then gave me back mostly working code. The last small problems I was able to either fix myself or if I was lazy i just had GPT4 fix them. The question then really becomes a tradeo-off of how much I want to think vs how much I'm willing to do mindless copy-paste between the ChatGPT interface and my IDE.

- What I find most enjoyable is that it makes it very "cheap" in terms of time and energy to try out new things. Frontend is not my speciality so for example I wasn't sure how long it'd take to add an "infinite loading" feature. Without GPT4, it wasn't a priority so i just wouldn't have added it, because it would have meant checking recommended libraries, checking their docs, finding Medium blog posts with code screenshots and behind paywall etc. Here I got a solution i could try out in a few minutes. In some cases I try things out and i realise they inccur too many changes - no worries i just bin the changes and move on with my life.

- For simple Python CLI utilities it's also been insanely useful. For example I was able to say: "any time it's making a network request, i want a cool animation to be displayed" and bam it integrated the "halo" package, worked right away. I realise that this is an "easy case" because the whole code fits in context (300 short lines).

So yeah overall, I'd definitely say it has been increasing my efficiency by a factor of 2-3x for these specific tasks. Again these tasks are relatively "easy", writing lots of code to do simple things that could reasonably easily be explained in plain words.