From 493201b1af428af6af6c1151256116a096e88f8a Mon Sep 17 00:00:00 2001 From: Chris Beeley Date: Thu, 24 Sep 2026 12:00:44 +0100 Subject: [PATCH] Vibe coding talk added --- .../2026-09-24_vibe_coding/index.qmd | 117 ++++++++++++++++++ presentations/2026-09-24_vibe_coding/uv.png | Bin 0 -> 37905 bytes 2 files changed, 117 insertions(+) create mode 100644 presentations/2026-09-24_vibe_coding/index.qmd create mode 100644 presentations/2026-09-24_vibe_coding/uv.png diff --git a/presentations/2026-09-24_vibe_coding/index.qmd b/presentations/2026-09-24_vibe_coding/index.qmd new file mode 100644 index 00000000..7b37e4be --- /dev/null +++ b/presentations/2026-09-24_vibe_coding/index.qmd @@ -0,0 +1,117 @@ +--- +title: Vibe coding for fun and profit +subtitle: Or How I learned to stop worrying and love the clankers +author: Chris Beeley +date: 2026-09-24 +date-format: "MMM D, YYYY" +format: + revealjs: + theme: [default, ../su_presentation.scss] + transition: none + scrollable: true + chalkboard: + buttons: false + preview-links: auto + slide-number: false + auto-animate: true +--- + +## What is vibe coding *not* + +* Vibe coding is not using AI as part of a software development workflow +* Software engineers and data scientists use a lot, a little, or no AI in their work +* The important difference is they design, read, and check the code + +## What is vibe coding? + +* Writing code in natural language +* Karpathy [described it](https://en.wikipedia.org/wiki/Vibe_coding) "fully give in to the vibes, embrace exponentials, and forget that the code even exists" + +## My experience with vibe coding + +* I've never used AI to write code at work because it wasn't good enough at that time +* But I have started to use it for a couple of things for myself +* I started with what I would call "vibe-lite coding" +* It was so successful that I went full vibe for the next project + +## Vibe-lite coding + +* I have elevated skin cancer risk so I'm obsessed with the UV index +* I don't trust the clouds! +* So I built this with my own two brain cells + +Graph showing UV index per hour + +## Next steps + +* It's pretty ugly and hard to read so I fed the whole thing into AI +* I asked me to help me see the individual time points as well as tidy up the scale +* I also asked it to add a date +* Now it's much easier to read + +## What's the scoreline people vs clankers? + +* I did the groundwork here + * Set up the API call and drew the graph +* AI helped with a daily refresh of the graph (team effort) +* The formatting and adding a date to the page was all clanker +* I did the copying and pasting into the RStudio window, and I did all the git commits + +## Could anybody do this? + +* I'm not really sure +* I did a lot of faffing around with environment variables, APIs, and deployments +* I'd love to go back to the beginning of this project and see if the AI could do it with no help +* Do tell me what you think at the end + +## Real vibe coding + +* Inspired, I tried real vibe coding +* Let's have a look at the end product first + +## The tools of real vibe coding + +* Agentic AI +* You type in a little box to the right and the agent changes the code +* Let's have a look at that now + +## People vs clankers scoreline again + +* I didn't write any of the code for this one +* I did set up the GitHub repository and using Git is vital IMO +* I pressed a few buttons to deploy it onto GitHub +* I did manually record all the sound and fix all the filenames +* And let's go back and look at the AI and the mistake it made after prompting + +## A note on *real* vibe coding + +* Doing it properly requires multiple agents +* You get the AI to write a plan, then you approve the plan +* Bots to write, bots to review, bots to test, bots to deploy +* I haven't done this and don't need to for my stupid stuff +* But that's what you need to get the best results + +## Vibe codez 4 life + +* I need stupid web apps in my life +* I know lots of people are doing this all over the world now +* Give it a try + +## Caveats + +* I do (slightly) know what I'm doing +* I know what's possible +* I can fix silly problems more easily myself than I can explain them to an AI + +## Go on Chris, talk about work at the end + +* Nobody wants a vibe coded OpenPlan +* On the whole I think it's managers, not devs, pushing AI tools +* But I have an open mind about how vibe coding could be used at work more + +## How it might be used + +* I know some in my team are interested in using it e.g. to try a different technology + * "Robot, convert this Shiny to JavaScript" +* And I do wonder if vibe coding could help non technical people throw something on a screen for a conversation +* But I don't know, interested in opinions diff --git a/presentations/2026-09-24_vibe_coding/uv.png b/presentations/2026-09-24_vibe_coding/uv.png new file mode 100644 index 0000000000000000000000000000000000000000..b94329072c610c8461945aabdf632b5b7cdf6e00 GIT binary patch literal 37905 zcmZs@2{@H+*EWu1%1lD$nPi@l*+#|^J45DqNM@--GLJ| z4Tenrb?NuM-}fEI|2aIz^Hlb|@B6yfwbr@L^ITWlIU^k^3RVgN0s<=CGnn%P1Vo+$ z1cY^DB=9#~W}4IRKZO40bu%p_39hbU;Cu1gQr~ArK zjrZ(@t6pRZTc_C>ez92*Hr|ublDm5->{V&@YDHhkwqUFdC+o!@TyQzMLJ|w?z;{Os z{3nfvx%A+#Bu;G+9Q+?@5>NCG!if#6@MmL+yV1$aye-z1rn|x*teMKk zwI}Vur%TVLd#h}r!#gXQPq#=pjDV~2=h$DPV%~>Mzgt6PcC&U_OXFtFWpw`NJ1=H_ zB&KO~DjTV^uMH83vGq(UD*&! zp8ozlt;RKTVObp>-AU?2)5IAS?So~wmGy7cTkVo!V`GJ)B+Yr@E$G=(euh8Bo@f5= zrTou7ci`~?oai@jj1B*N!k0Pie?O@hnU(O0!T6fPb8QSGO<#a@%z#H!i$i#kJLQ*H zA$|#SUL5OLGQxxwBDm`t+w1uyC1hDyS?3t}w+b*AY%;u)0XGdY^QRZm($ey-tbB7D zEMx!j$}546SDWvJXV-H&<3Mz6*=$;(pjvhY0fTq%(@&JU_HgX{U3ivx`ij_(?)#+N z#JFCeLvlQLx&I#2)Uo|V;^d@5sdX(=JPrctoySWJW5!b3dX9J;m!KeNDxW$QJNx?K zjt(syR>b9VY)NZhAbTnw_lXlnSXfx%_CE)*XBSQEZj7~gReg=V^6e_A2H7V(_Q>U` z;{d^6KxMUKFlRSXe0dj1wqcSx$`M zxJE{!vdML!)I40w`t|twhdWbxYBUuPBc&iK>mf@=D3grQs&FeCZLDCG9$iz6_6j^0Ct0#2`!R@Jx^1(lVIEiEmu1)|4R&MsE`*w{8ccaA{I*r(;FnO#f#(V^FYCmx3U)E!z1qU2Cw zHoPy_VkrML68q!=H)|4)xHyf?Gx@bE(muSnuy_ccEQpNkB5ru6_4|9L#p-wb46#S7&Dv zS{YdS#gQr+&d^QnXsYAUeSPOK1-*V|B6s+N>AG4RBpHt$&42WW7~YtYb~0PsZI!=d zoMAhX*VY%~u8iF{#(p}exn|~Jf}~^Xcu0LyjBC&aH93zxDt7M( zQ^H|hon*{lnYHf#)@)+xwrcCCnVg87osjkyRss?0SD3@^i+09hc!Y$6)Pxu{DqOlH zuKsii`PD5SJe4Hxv$r+lxVN+AHvEDg?Jg!bH%wI^EFAkG9?fB&wOa~FqL!6pW1-t8GfrNNh7e3-Kh1>RV7i%2+|d&kxM<0^AoOjX9eW|l8DxJeC8}TM zX_qe#o&_&p&Or3KY=3RCpO+3xWY|xCloUn2e~ z2ygbxXsW9dT8SOIT({-&X07%3=KPaqtD94|3#zM`m9MX3;OTv~m#Q4Qvt`vn3h^UL zMwcXcBGoQjVDj_#Pf1Td+IQsqcD{yeJ3|Jw>=bll-I`udsItH3s(A_WE)#V_#sk<-M@b}7b|*J zbN6>hFTT3efTF+1@cv|3?Q-Ki+feeDrf}FeO&%{N3-8%97Ti{ezh`qzSkg6_@VIfe zaYw_Kh7Wx6;>~8c-mS&Cms?xUsx*9F35%<5`Vbwv$L=^J4Z%NlV}o6+ZquREyqqY3 z>15-ZtG~E9rFKHYqNuO$S;vSO#A+7^iHb(T>NG`DN!m9Ohy0x@4&LA0I0zXCv!>KzsTSG z`o{XE?wYL1-sEXF1qG#Rt6`X|V|2z>-Lgp%T5gq=iYje=zw7q(wJe0K+~v_&*jJ_< z&u7L0XB#8W2}MGPmf+*jw?h04z4AJ46FhNP#_b~k#B(!bbnZ?mQKlnK7OfRMDhan$ z_n0qNZJ+fYiEYmjku{gz+q4ZGPDt=(P4wNk-O#MV*>bat-JXzOZhSkHkKe{%g~9l0 zvx8*tTN?}y-S6eE$01(}l29_=+!zbvEY9)Mb6^<3v#sycCfc9pCJs^Iq-IkffZKjj z_L@Sxen;v@SJokm3~pU|Q>KNWF^C-HtK(`es`E&DX@6E7k(% zKQ+K*;~*t*KCAmHa-qyBZmz#rb1*Qn$=>|wXVu+B)vMT+Eomv&3r~(}kfmj0;2=+) zw5&XH>CqD*iU4aJ7Z-sKiVLEUSTI~|gSPefNw%NZtIx7O-WI45&ytznBcJSzX%*mn zM*Et;NjO@NgDu%Bh2i7gsLAT|-;Hn+@s^=*d38EPK8w~^I^I>-*cw>uD5QmIs0aD@ zdE*ULDORV?#rji^vaXgiEdt7M?x$W6ydsqTRa^L>^$W|V1UDh)qfJr$yHCH|se_&^ zY-cUD#UbvJrPl6s`~utjYid|k!H2;_u<)uBM~)B@bl;b6o5>BMHtbLSqLUFb{7k)o zQ}&B%YtZLM{%);u9LqcWwj=4Rr7RA;5>8JJ#S?RF@ zf@K6Z?Ihe@uLw=D#}9aD@zLvsK52Z6kB5+DQ}7{(AfakJBL3#)_2n8;8s*>TcXA|x5vL-U(xdQU90z~pyf#k zFD+Zg3UCuc6z3QT5{2J%-)4dRZY~=1Y1>6n>PxW@#jOUrpCd(Fy7ZUiE@p*(S_-;% z>Rvi?DLDZ>rjm@)dxv_a(km(AP#LMuN?u&Gdl#ls;WL$WtklJ;WZcig_V-k^(mN85 z=NGv{f-l;>1&duZLRB@Aw6nAGy~+>}CodyKmelo<1w}tUKdwkMW8+@q`u@4rYC1(W z>doCfy;_o_6>TFU>d$4?2`V@KLNXqIT>P*Rr76IVWZWXt8z*$>AvsQLY|~Lhi9AgT z)9RN|cwi(HkKkKxfzDJf>^;HUkXw+}GK3ZOudv8#=%(VI-bmLaBLo-8ky^C* zH)3GO-7AuG`8Ac?>`gvRw(~Ch^l@;nY=0s@rP+1=FRGTf{ygKs11fIf_=JQL{Fx<2 zSh`a8Y?7EJbR&;ViX9e*$`P7GSR%)#ksPvO=_f5>z<7Wa!qxIDBUtFh%&jt<71*e) z0(!L|kT;=vFdU!RW02)H@9gTr*xPeQyp(Yw_LRF%6%`d#w~TY)w>` zV8-y#Z<+bO>`NEzgl5I<+nZAySHII4JXB&?`2188vdTgCo@FnXlz z(ofyCd80d5m9sWzsd1>>F(oU@{e4X?##XRW zY(uvW!&5Z1r|_bXP14?9i`S7(b!KU>qoq17*Zg~~UovbjYuhy}NY|pX=sO#~a;`MCOt{>2smtPu|f|Z19 z?l)AyrjbvJ3QhgkZ2)=4ZJyn0%Et&Gz>JS9a$mjnHhAOf70K)Ci_LqnXcb&@Z$ty= zwI6zJFC;7+j)wv!N@|foM;+rk87JrfInlh_;qbvKy1M!Y3Z=xMZcD_m+L*AY4_Y@@lk4_sKI zUnVx#TF-jW{-xzaQ0=L~c}`f+a5aMd;{>LV&r#axntjr`bqP1kuxB1+p<*Sz-<`1|$)hKI5EjfMK?V;Lk0u?L*WO-VLLDYC5uun+2^S;` zrUY(Y-a}|_Zm-nezWVEjuR@woHvn^-Uh#sW5(mwzOT)LIm7)POFAovoWbuQE{iuO4 zBjd4S1)4F`s1ZbWb7|xi)#a-DBUfn)g@KhYodW`3WGPeShT{Cdlb8<=PD68)=Ko0~ zj_$eg=6Hm{pHC*e^{s)nfqt$a&@7tIMo1q!Z1 z=&Ks%UMD9eQkGiP&~I<7wB6y>gtmvJ1j`FMl8pFci7~IieK{)VpWi{d90$Ky2A}jj z_@r?BEj6y2?)^m*D0use3@u8O4>LFAL%X2amdp-sI1J*X$)!TFNjt64DW)kUBr$fD zvtNb^m&B}QYKcP?u95ogNbH_v&}iD{GS7GLyrN0fS%5HQ8})pk@01e3lIj;zUv;!SNy6g+6m-PwW5`l689iH* z*pt>Ro?al1Xh8S{SP`a#EWf%$<9BQ~g{w+wHPkYkfx^J>q+nj&f_>>Q*&K)V3ahL~ z+Pc@38Y`&SMWQK3<1jv5l5OL^`_Hy*u1)zik_(RS{OZx+qCKmzn;gvIXEp;itW)=WOVRj1tFf_ZUII^8iqRAr%pk(#n`Tr+uMy zE&vA&J!Bq@+Z@WP06-_;MhK~ec^;PW>1seKhvxSS%?w9!tm|r${}%j0zGGW5N*5$F z9Es3)!ZLp6)IZ*uqypsL;lqcEs9fIIh&N6=7v>a7qi3?a zsm{e2nza@Zet!Py#TT6tPVKabY^Uf)s=Q+c7oun<&#KRYV-Rx zpyMY4@x>3XQ4oBrz2faM(3c6{bn+xhloBpo%!!<;9QWnDqX!pcr(e-x=58sA(CzYS zUw8`Ze^zOY`0wwzh--i5`7h9&zb1u0K6-uSEeai9$gyfztWdne`++pf+)W_mc6p(8 zEc|hp>njA%S^ew7X^TUj_<$Ye(+vhXq8zA4rJdEL_75Lif|5$IpPRvhH9M5&0Xq!M zzXGBpfJozEq>wb1CIob`vF-aK%XJcUA8EoS&x4jMom^a`?0E4c{}H~w?*VoIFpC=N zv9Nu1&1g!=X%#2gEJ-#+co$Ya4TopP>Q#xt37|m(0EcJh43C@jmY)A@2t|L;%AX1~ z*VN(JrlL$uJ6pfjM!f4M>b931;r3XcyYl1ep%Zd)avBF{)dsg13tV013l(wpQBiqj zN}PRDbf%maD_VN_Z^04224nGvNEeakCU&yWhD(0$xa+&ta;(6)GXoaH-S$u#bq_Q3 z(nyuKV$fpj-tKlmULJwm{UoT^*hpBw^!w#RzawZ=-VNG@C8hA{2!ur%h_F#Re#kjR zMiRk%%8w61*c2O8>0j1znqd&>XE zIAVW*g1G%UaDfK^4ae;mV4nCLX!J4DxC0!6m>Ymjw7lAhkf?fzKc4;cm|+G#AfZ7v`#Kqs z*YCm)Wh(gcK-(C7;@KPeCl{VVgYB|vWJ(Uzq}Ld948Y_-#n3;i-&0(!+rA84XBk;( zKG29Hx~Xtw_{m#PM4vYoZGF2QD?$ihW3~i@7sUser~CzyPyJvX4d^$7aCW}%G&+Tk z96%^kYJjXC1KII-jZ{7$pLyxyeD-*Z`Ny$Zn6M7APj&ly*AbJ3&;lUO%=Bkh;fe}u zh{%#L)F<}PAggrmCjrbhd;zET4zT)OswA_&{K(w~E zw*!iRn?mpC7&9%F9=2WpMuQC6DMT)#@RziENAT(C#bYUF__hj6HJKZR8>5bt+c%Mv z+Pr1O<0qSFR3pD$o*_E)?<< zc4ToB%{KR9_b_CHkY<2(@5+`vBL6jj0ipSGLd~VD>45R!v&*j+#1LN&SxU6R6LS

oiy`l~&?ldbOuh@Feb2(SjmupKl?* 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%0D*3_m3sZVpCq=eS|tnDYQ*0KfV$b@pvy=oe*!2; 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 literal 0 HcmV?d00001