Does a GPT future need software engineers?

Does a GPT future need software engineers?

Bryan and Adam and the Oxide Friends take on GPT and its implications for software engineering. Many aspiring programmers are concerned that the future of the profession is in jeopardy. Spoiler: the Oxide Friends see a bright future for human/GPT collaboration in software engineering.

We've been hosting a live show weekly on Mondays at 5p for about an hour, and recording them all; here is the recording from March 20th, 2023.

In addition to Bryan Cantrill and Adam Leventhal, speakers on MM DD included Josh Clulow, Keith Adams, Ashley Williams, and others. (Did we miss your name and/or get it wrong? Drop a PR!)

Live chat from the show (lightly edited):

  • ahl: John Carmack's tweet
  • ahl: ...and the discussion
  • Wizord: https://twitter.com/balajis/status/1636797265317867520 (the $1M bet on BTC, I take)
  • dataphract: "prompt engineering" as in "social engineering" rather than "civil engineering"
  • Grevian: I was surprised at how challenging getting good prompts could be, even if I wouldn't quite label it engineering
  • TronDD: https://www.aiweirdness.com/search-or-fabrication/
  • MattCampbell: I tested ChatGPT in an area where I have domain expertise, and it got it very wrong.
  • TronDD: Also interesting https://www.youtube.com/watch?v=jPhJbKBuNnA
  • Wizord: the question is, when will it be in competition with people?
  • Wizord: copilot also can review code and find bugs if you ask it in a right way
  • ag_dubs: i suspect that a new job will be building tools that help make training sets better and i strongly suspect that will be a programming job. ai will need tools and data and content and there's just a whole bunch of jobs to build tools for AI instead of people
  • Wizord: re "reading manual and writing DTrace scripts" I think it's possible, if done with a large enough token window.
  • Wizord: (there are already examples of GPT debugging code, although trivial ones)
  • flaviusb: The chat here is really interesting to me, as it seems to miss the point of the thing. ChatGPT does not and can not ever 'actually work' - and whether it works is kind of irrelevant. Like, the Jaquard Looms and Numerical Control for machining did not 'work', but that didn't stop the roll out.
  • Columbus: Maybe it has read the dtrace manual 😉
  • JustinAzoff: I work with a "long tail" language, and chatgpt sure is good at generating code that LOOKS like it might work, but is usually completely wrong
  • clairegiordano: Some definite fans of DTrace on this show
  • ag_dubs: a thing i want to chat about is how GPT can affect the "pace" of software development
  • sudomateo: I also think it's a lot less than 100% of engineers that engage in code review.
  • Wizord: yes, I've had some good experience with using copilot for code review
  • ag_dubs: chatgpt is good at things that are already established... its not good at new things, or things that were just published
  • Wizord: very few people I know use it for the purpose of comments/docs. just pure codegen/boilerplayes
  • chadbrewbaker: "How would you write a process tree with dtrace?" (ChatGPT4)
#!/usr/sbin/dtrace -s BEGIN { printf(""%5s %5s %5s %s\n"", ""PID"", ""PPID"", ""UID"", ""COMMAND""); } proc:::exec-success { printf(""%5d %5d %5d %s\n"", pid, ppid, uid, execname); }
  • TronDD: That's interesting as expensive, specialized code analysis tools have been varying level of terrible for a long time
  • JustinAzoff: I did an experiment before where I asked it to write me some php to insert a record into a database. so of course it generated code with sql injection
  • chiefnoah: It's ability seems to scale with how many times someone has done the exact thing you're trying to do before
  • JustinAzoff: but then I asked if sql injection was bad, which it explained that it was. then I asked if the code it wrote me was vulnerable to sql injection. it then explained it was
  • Columbus: It misses empirical verification; forming a hypothesis, testing it, and learning from the result. There have been some attempts to implement this by feeding back e.g. command output into the prompt
  • JustinAzoff: so then the crazy part, I asked if sql injection was bad, why did it give me code that was vulnerable to sql injection. It the went on to say that the first thing it gave me was just for example purposes
  • JustinAzoff: so no wonder people get into "prompt engineering" since it's clear that you need to do things like ask for code that does something, and is secure, high performance, does not have buffer overflows or sql injection vulns
  • MattCampbell: In my test case ("Write a Win32 UI Automation provider in C++"), all it did was produce plausible-sounding crap
  • ag_dubs: pattern matching over very very large data sets
  • clairegiordano: Bryan just said this and I wanted to write it down, re GPT-3: "the degree that it changes its answers when you tell GPT-3 to think like someone else"
  • JustinAzoff: or even just, "do that, but better"
  • ag_dubs: i think a lot of the awe of gpt is recognizing how simple our own strategies are instead of how complex the AI's strategy is
  • chadbrewbaker: "How would Bryan Cantrill re-write this script?" (ChatGPT4)
#!/usr/sbin/dtrace -s #pragma D option quiet dtrace:::BEGIN { printf(""%5s %5s %5s %s\n"", ""PID"", ""PPID"", ""UID"", ""COMMAND""); self->indent = 0; } sched:::off-cpu { self->indent = 0; } proc:::exec-success { this->curpid = pid; this->curppid = ppid; this->curuid = uid; this->indent = self->indent; } proc:::exec-success /execname != ""dtrace""/ { printf(""%*s"", this->indent * 2, """"); printf(""%5d %5d %5d %s\n"", this->curpid, this->curppid, this->curuid, execname); } proc:::exec-success, sched:::on-cpu /this->curpid == pid/ { self->indent++; }
  • antranigv: that's pretty hit on!
  • chiefnoah: Yup. Most people are not doing things that haven't been done before. A significant portion of software is just building blocks of libraries
  • Wizord: intelligence is compression, in some sense.
  • dataphract: "critique the epoll API as though you are Bryan Cantrill"
  • ag_dubs: a brain would be much stranger!!
  • Wizord: the ability to reduce a large dataset to a coherent set of rules
  • antranigv: "Explain the issues of epoll, write as if it's a Bryan ...

Denne episoden er hentet fra en åpen RSS-feed og er ikke publisert av Podme. Den kan derfor inneholde annonser.

Episoder(181)

The Hardest Kind of Unsafe Rust

The Hardest Kind of Unsafe Rust

We love Rust for how much the compiler helps enforce safety. But sometimes it's up to us to uphold the complex--and often unclear--expectations of what constitutes safety on our own. Oxide colleague, ...

13 Jun 1h 28min

This Old Repo: LLMs and the Restoration of BattleTris

This Old Repo: LLMs and the Restoration of BattleTris

Bryan and Adam discuss the process of restoring a software project--BattleTris--untouched and unbuilt in over 20 years! How did LLMs help restore code Bryan started in the mid-1990s and what does that...

9 Jun 1h 18min

Rooting for the Home Team with Paul Freedman and Bryan Carmel

Rooting for the Home Team with Paul Freedman and Bryan Carmel

Two years ago we introduced listeners to the Oakland Ballers, the startup returning baseball to the city of Oakland. Bryan and Adam were joined again by Paul Freedman and Bryan Carmel to discuss the B...

27 Mai 1h 2min

The Tale of Reverso

The Tale of Reverso

Oxide ships a rack scale system--how to test the manufacturing of the backplane and switches? Previously we've been using a collection of sacrificial servers, but this was unwieldy, expensive, and uns...

16 Mai 1h 6min

AI in Computer Science Education

AI in Computer Science Education

AI is an existential topic for all aspects of education--for none more so than Computer Science. Bryan and Adam were joined by Kathi Fisler and Shriram Krishnamurthi, professors of Computer Science at...

10 Mai 1h 29min

Mechanical Engineering at Oxide [chapter images]

Mechanical Engineering at Oxide [chapter images]

Bryan and Adam were joined by members of the Oxide mechanical engineering team to talk the mechanical challenges of building a rack-scale computer, and--in particular--of scaling manufacturing from ju...

7 Mai 1h 24min

Are LLMs Insufficently Lazy?

Are LLMs Insufficently Lazy?

Brogrammer Garry Tan has been boasting about "writing" tens of thousands of lines of code each day as the paragon of productivity. Is this really the right way to think about building systems? Bryan a...

3 Mai 1h 31min

Building a Quorum of Trust in the Oxide Rack

Building a Quorum of Trust in the Oxide Rack

The Oxide rack contains within it a distributed system that needs to trust itself. But how is this trust built? Bryan and Adam were joined by colleagues Andrew and Finch to explore how Trust Quorum wa...

4 Apr 1h 26min

Populært innen Teknologi

lydartikler-fra-aftenposten
romkapsel
teknisk-sett
energi-og-klima
elektropodden
nasjonal-sikkerhetsmyndighet-nsm
teknologi-og-mennesker
shifter
tomprat-med-gunnar-tjomlid
fornybaren
kunstig-intelligens-med-morten-goodwin
smart-forklart
handlevogna
rss-polypod
rss-bouvet-bobler
pedagogisk-intelligens
rss-digitaliseringspadden
rss-ki-praten
rss-heis
rss-ai-forklart