<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Seb Smith: Writing</title><description>Posts by Seb Smith on AI-assisted development and building software.</description><link>https://sebsmith.dev</link><language>en-gb</language><item><title>It&apos;s fine not to keep up with the latest AI models</title><link>https://sebsmith.dev/posts/its-fine-not-to-keep-up-with-the-latest-ai-models</link><guid isPermaLink="true">https://sebsmith.dev/posts/its-fine-not-to-keep-up-with-the-latest-ai-models</guid><description>A short reflection on model-chasing, shiny object syndrome, and why it is fine to settle into the AI tools that already work for you.</description><pubDate>Sun, 31 Aug 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;The last couple years since the GPT-3.5 release has been pretty ridiculous. As someone who suffers quite bad from &lt;a href=&quot;https://en.wikipedia.org/wiki/Shiny_object_syndrome&quot;&gt;Shiny object syndrome&lt;/a&gt;, the current AI landscape leads me to constantly trying the new models in the hope to maximize quality and output and stay ahead of the curve. I really convince myself that the hype I read on X must be founded, when in reality it’s not. Tech twitter (or is it Tech X now? 🤷🏻‍♂️) does seem to be a bit of an echo chamber, every single Grok release is the best model in the world and all the other models are cooked. But really they just on par with all the other if not slightly worse.&lt;/p&gt;
&lt;p&gt;Which honestly is the same for all the models that are released these days, every time there is a GPT-3.5 release. I see hype that AGI has been achieved and this model is all you’ll need now, it’s better than all the other models before it and everyone should be using it now but it’s just never the case. I’ve pretty much been disappointed with every model release since Sonnet 4. Is it just me or does it feel like the models are stagnating a bit, each model is incrementally better (or in some cases they seem worse).&lt;/p&gt;
&lt;p&gt;This leads me to circle back to my shiny object syndrome, while I am aware it’s a thing and I want to play with the new shiny models, I need to remind myself that it’s fine not to try them all. I find it’s better to learn how to manipulate the model you enjoy working with the most and then just stick with that model. Each model has it’s little nuances and you learn how to prompt what you want out of it and the little quirks you only get from using that same model over and over again. I’ve been using Sonnet 4 since release, I dabble here and there with other models like Gemini, GPT 5 and Grok but I pretty much always find myself gravitating back towards Sonnet 4 and no particular reason other than I find I trust the output more than the others. So I think your time is better spent becoming in tune with a specific model rather than trying all the different ones the internet have found better.&lt;/p&gt;
&lt;p&gt;That being said, I think it’s good to give the new models at least a bit of a try as there may actually be a decent improvement but don’t just get hung up on it. Just sit down, do the work and don’t waste too much time and energy trying to keep up. With each new model release it seems that the dream of AGI is getting further and further away. But who knows, the next model might be the holy grail that really is leagues above the rest… 😉&lt;/p&gt;
&lt;p&gt;Let me know your thoughts!
&lt;a href=&quot;https://x.com/SebSmith1&quot;&gt;X&lt;/a&gt;
&lt;a href=&quot;mailto:seb@sebsmith.dev&quot;&gt;Email&lt;/a&gt;
&lt;a href=&quot;https://www.linkedin.com/in/seb-smith-34a20a1a6/&quot;&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;
</content:encoded><author>seb@sebsmith.dev (Seb Smith)</author></item><item><title>The Vibe Coding Movement</title><link>https://sebsmith.dev/posts/the-vibe-coding-movement</link><guid isPermaLink="true">https://sebsmith.dev/posts/the-vibe-coding-movement</guid><description>Thoughts on the vibe coding movement, AI product builders, and where generated prototypes still need engineering judgement.</description><pubDate>Thu, 17 Jul 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Ever since &lt;a href=&quot;https://x.com/karpathy&quot;&gt;Andrej Karpathy&lt;/a&gt; coined the term “Vibe Coding” in &lt;a href=&quot;https://x.com/karpathy/status/1886192184808149383&quot;&gt;his viral post on X&lt;/a&gt;, there’s been a lot of hype around the term and rightly so, it’s an interesting concept. Around the same time AI coding tools like &lt;a href=&quot;https://lovable.dev/&quot;&gt;Lovable&lt;/a&gt;, &lt;a href=&quot;https://bolt.new&quot;&gt;Bolt&lt;/a&gt;, &lt;a href=&quot;https://replit.com/&quot;&gt;Replit&lt;/a&gt; and &lt;a href=&quot;https://v0.dev/&quot;&gt;v0&lt;/a&gt; really started to gain popularity. Mirroring the same promises of the no-code tools of old, these platforms really do help none technical people dabble in programming and creating digital products but how far does that really get you?&lt;/p&gt;
&lt;p&gt;When Karpathy first coined the term, I was already kind of playing around with Vibe Coding. I built the beta of my fly fishing companion app, &lt;a href=&quot;https://castcompanion.app&quot;&gt;Cast Companion&lt;/a&gt;, over the span of 2 evenings after work by pretty much writing 0 lines of code and prompting it into existence. I was astonished how you could create a prototype without writing a single line of code, this was Vibe Coding in it’s truest sense following Karpathy’s definition:&lt;/p&gt;
&lt;p&gt;“There’s a new kind of coding I call “vibe coding”, where you fully give in to the vibes, embrace exponentials, and forget that the code even exists.” - Andrej Karpathy&lt;/p&gt;
&lt;p&gt;I have a few issues with the current use of the term, everyone is using the term when it applies to any sort of AI assisted programming and it’s hard to tell at what point a programmer is driving or whether the AI is driving. The term is so ambiguous that if it’s used in a professional setting, I am not sure whether to be concerned that the code produced has even been reviewed or whether it’s just been “vibed” into existence. As an industry we should probably be a bit more explicit and deliberate when using these terms, especially in a professional setting.&lt;/p&gt;
&lt;p&gt;There’s no denying the power of these tools though, for shipping prototypes and proof of concepts there’s really no better time. The issue comes when there’s software being shipped into the world that’s not been built with even just a little bit of knowledge on security. It feels like there is going to be a wave of vulnerabilities and hacks shipped into the world where the product builder will not be sure how to fix them.&lt;/p&gt;
&lt;p&gt;If you are a founder or solo builder in that position, this is exactly the kind of thing I look for in a &lt;a href=&quot;/services/app-review&quot;&gt;production-readiness review for AI-built prototypes&lt;/a&gt;: what is safe to keep, what is fragile, and what needs fixing before real users depend on it.&lt;/p&gt;
&lt;p&gt;What I had noticed when building my products heavily using AI was that while it felt nice to prompt features into existence and they seemed to work, if I had a bug to fix it was a nightmare manually going in and fixing it or refactoring. Often types get duplicated, logic gets duplicated, there’s an inline function added to an action when there’s the same function declared further up the file. While LLMs and AI tools are getting better, there’s no denying the tech debt they create when leaning too far into the vibes can be quite serious. They often give the illusion that you’re being fast and productive but more often than not, if you just engaged in a flow state and wrote the code yourself you’d do it faster and with more overall context of what you’re building.&lt;/p&gt;
&lt;p&gt;This blog seems to be me coming across as hating on AI, this couldn’t be further from the truth. I use it daily to help code, brainstorm, look things up and just allow me to do my job and live my life more informed and better but it’s good to reflect on the short comings of these tools and where they could head if we just lean into the learned incompetence and vibes.&lt;/p&gt;
&lt;p&gt;If you have any thoughts on Vibe Coding, AI assisted development or just AI/software in general I’d be happy to chat, just drop me an email at &lt;a href=&quot;mailto:seb@sebsmith.dev&quot;&gt;seb@sebsmith.dev&lt;/a&gt;&lt;/p&gt;
</content:encoded><author>seb@sebsmith.dev (Seb Smith)</author></item><item><title>Why I rebuilt my portfolio site in Ruby on Rails</title><link>https://sebsmith.dev/posts/why-i-rebuilt-my-portfolio-site-in-ruby-on-rails</link><guid isPermaLink="true">https://sebsmith.dev/posts/why-i-rebuilt-my-portfolio-site-in-ruby-on-rails</guid><description>Why I rebuilt my portfolio in Ruby on Rails, what I enjoyed about the framework, and why simple tools can be refreshing.</description><pubDate>Sat, 14 Jun 2025 19:01:55 GMT</pubDate><content:encoded>&lt;p&gt;After following DHH for the last few years and watching his &lt;a href=&quot;https://www.youtube.com/watch?v=-cEn_83zRFw&quot;&gt;opening keynote&lt;/a&gt; for Rails World 2024, I found his views refreshing and nice in the world of modern web dev where complexity seems to be the standard. A bit of background, I graduated a bootcamp back in 2020 and have exclusively written in JavaScript and TypeScript the entire time, having pretty much been thrown right in with React, the React way was (and still mostly is) all I’ve ever known. I am now mostly working in React Native codebases professionally although I am dabbling more in “backend” as I’ve kind of found I don’t enjoy building the UIs as fun anymore. This might be partly to do with just how overly complex the whole front end world is. Is it really necessary for my app with 0 users to have fully optimised images and also make sure it’s built in such a way that if there was a spike in users I wouldn’t incur any costs. I found the pricing on Vercel a little overwhelming and while I do rate Vercel and these other cloud providers, for making deploying web apps a breeze, it’s just overkill when my apps don’t have enough traffic for “Fluid Compute” and all the other fancy infrastructure optimisations and features.&lt;/p&gt;
&lt;p&gt;So given React is all I’ve known and I found DHH’s view’s on web dev pretty much spot on and something I wanted to try and also push myself out my comfort zone and learn something new, I felt it was time to pick up Rails. I know some people reading this might ask “Why Rails?”. The Rails ethos is Developer Happiness and getting from Hello World to IPO in an efficient manner. I had thought about maybe using something like Elixir (&lt;a href=&quot;https://www.phoenixframework.org/&quot;&gt;Phoenix&lt;/a&gt;) but Ruby is supposed to have a fairly easy learning curve and is very mature, clearly can withstand scale given it’s used at Shopify and GitHub and my good friend &lt;a href=&quot;https://www.liambateman.net/&quot;&gt;Liam&lt;/a&gt; had recently started using it and recommended it. I liked the idea of just getting a ~£5 VPS somewhere and hosting it, taking more control of it and trying to break out of the learned helplessness that I seemed to be falling for. The timing of this post is quite well given I am writing this the day after &lt;a href=&quot;https://blog.cloudflare.com/cloudflare-service-outage-june-12-2025/&quot;&gt;Cloudflare suffers a massive outage&lt;/a&gt; pretty much killing half the internet. Taking control, or even just being comfortable to take control when the time arises felt like a good (and fun) move for me to do now.
So a couple of weekends ago, I decided to watch the getting started video for Rails and just rewrite my portfolio site in Rails. Given I already had the HTML ready, it’s really not a big piece of work, so I added in a couple of extra bits of functionality my previous portfolio didn’t have. Such as the CMS dashboard from which I write the posts in and just upload them, instead of my old way of just writing them in a markdown note taking app. So I followed the getting started video and was instantly pretty surprised with how quick you can get moving with it, this isn’t going to be a step by step guide of what I did, more just an overview. So after I generated the project I made a start getting my head around the project structure, configs etc and given I already knew about MVC it didn’t take long to get moving. My experience using all the built in tools for managing the DB was good, I enjoyed how simple the CLI was and how little you needed to do to actually get moving. It very much felt like a batteries included framework thats been refined over many year to be nice to work with.&lt;/p&gt;
&lt;p&gt;Within an hour or so, I’d pretty much ported over my views, built out the data structure for the blog posts and added basic authentication for the CMS. I was pleased and understood how quick it actually all was, another couple of hours messing around with Digital Ocean and getting my head around the deployment process, setting up DNS and the site was hosted. Kamal is a really nice piece of kit, it’s nice to just have a baked in config for deploying to any server you want. I did debate deploying it to my Raspberry Pi that I’ve had sitting around for a couple of years but I opted against that for this project but I imagine I will probably get bored and give it a bash.&lt;/p&gt;
&lt;p&gt;Overall, I enjoyed the experience of using rails! My next web side project will be attempted in Rails, this portfolio is just way to small for me to actually gather any real impression and not really a Rails review but more to rant about my reasonings. As someone who’s only ever used JS/TS and done things in the React way, I **need **to try new things if I’ve any hope to have opinions on how things should be done and I recommend any other developer who’s only ever really used one tool and only knows how to deploy sites by clicking a button should do.&lt;/p&gt;
&lt;p&gt;Thanks for listening to my ramblings and if you want to chat web dev, mobile dev, tech or just life in general, hit me up!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:seb@sebsmith.dev&quot;&gt;Email&lt;/a&gt;
&lt;a href=&quot;https://x.com/SebSmith1&quot;&gt;X&lt;/a&gt;
&lt;a href=&quot;https://www.linkedin.com/in/seb-smith-34a20a1a6/&quot;&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;
</content:encoded><author>seb@sebsmith.dev (Seb Smith)</author></item><item><title>My Journey with AI-Assisted Programming</title><link>https://sebsmith.dev/posts/my-journey-with-ai-assisted-programming</link><guid isPermaLink="true">https://sebsmith.dev/posts/my-journey-with-ai-assisted-programming</guid><description>My experience using AI pair programmers since GitHub Copilot, from early autocomplete to agentic tools like Cursor and Claude Code.</description><pubDate>Mon, 02 Jun 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;I have been using AI to assist with coding since 2021 when &lt;a href=&quot;https://github.blog/news-insights/product-news/introducing-github-copilot-ai-pair-programmer/?utm_source=chatgpt.com&quot;&gt;GitHub Copilot was released&lt;/a&gt;. Since then I’ve used some sort of AI pair programmer and this blog post contains my thoughts on what I’ve experienced these last few years.&lt;/p&gt;
&lt;p&gt;A bit of background, I’ve chopped and changed editors a few times; VS Code, Webstorm, Rider, Zed, Neovim (my most fun to use by far). Then along came Cursor, I didn’t try Cursor when the initial hype came, I left it for quite a while, monitoring what was going on but I honestly couldn’t be bothered trying it. I was using Neovim exclusively at the time and really didn’t want to leave, until you’ve got proficient with Neovim and really given it a good go, you can’t really explain what it’s like to use but it is a real pleasure. When you start a coding session in Neovim, it’s like instant flow state as soon as you start. So given how I felt about Neovim, why did I try Cursor… Hype.&lt;/p&gt;
&lt;p&gt;I saw what people were saying about it. I needed to try it myself to see what all the hype was about. I enjoyed it at first and when I gave it a try on &lt;a href=&quot;https://serveasyapp.com&quot;&gt;Serveasy&lt;/a&gt; to help me build some features I wasn’t really that interested in, I was hooked. I saw the real power of letting the Cursor agent (Composer at the time) loose, armed with the Sonnet 3.5 model, build out some nice CRUD features. Nothing crazy but it took away a lot of the brunt work that would’ve just been mundane for me to write.&lt;/p&gt;
&lt;p&gt;Given I have ADHD Cursor really played into my tendency for low effort wins and shipping fast. Prompting, waiting a minute or two and getting a feature built that I was procrastinating was addicting. I very quickly found myself living inside Cursor as my full time editor even being prescribed as our main editor at work. There was no denying that you can churn out code and features fast but what about the quality?&lt;/p&gt;
&lt;p&gt;This is where I started encountering issues, when you let the Cursor Agent loose with models like Anthropic’s Claude 3.5 Sonnet, over engineering became a big issue. If you let it take too much free reign or didn’t monitor it closely, it would very quickly go wild and generate a load of slop. I am not really a fan of reviewing code so when you let agents go wild, all you are doing is just reviewing AI code without fully absorbing the context why each line was written and the AI a lot of the time is just adding code that just doesn’t really make sense (you should see some of the styles classes it makes when creating a React Native component 🤢). More often than not I found myself being lazy and asking the LLM to do something trivial, then it would seem to just not get it no matter how much I tweaked the prompt and was clear in my intentions. Then 20 minutes has passed and it’s still not achieved what I wanted all while generating slop, for me to then throw it all out and write it myself in 5 minutes.&lt;/p&gt;
&lt;p&gt;That is also why I think AI-built apps need a deliberate human checkpoint before launch. If you have a generated prototype that looks convincing but you are not sure what condition it is really in, I offer &lt;a href=&quot;/services/app-review&quot;&gt;production-readiness reviews for AI-built prototypes&lt;/a&gt; to separate useful foundations from risky code.&lt;/p&gt;
&lt;p&gt;After a good few months of these tools, I started to notice something that was quite clear, I was mentally getting lazy and it felt like my skills were atrophying. Not just in the coding world but when it came to planning and just general problems that may require some thinking. While this is great most of the time, to have an LLM you can bounce ideas off, sometimes it’s just pure laziness which I am aware of but struggle to shake. Why would I sit and think about it for 5 minutes when I could just prompt an LLM and get a shallow answer that I don’t even really absorb? 😅 This leads into my last real gripe and where it comes back to Neovim…&lt;/p&gt;
&lt;p&gt;It became almost impossible (for me) to get into a flow state when using an AI assisted editor. The flow state that I get into when you open Neovim was something I find myself craving but it now seems harder to achieve than ever. Every time I hit some friction where I need to build a screen or just hit a bit of a wall where I have to think through a solution, I want to use Cursor to achieve it because it may be quicker and it may achieve it with minimal technical debt (but it’s unlikely) and every time you open the little chat window and start prompting then you have to wait for the response, all flow is completely killed. It takes away the mental load of writing the code, even though thats the fun bit, so I can just sit there drinking my coffee and watching it add, edit and tinker with files which on the surface looks ok. Then I am disconnected from the code, I can read it all I want and I do understand whats going on but I am missing that connection to actually having written it myself and knowing exactly what each line of the code does. Now I’ve got whole functions and I can see where they are called and why but there’s something missing now, theres some magic that is getting left out of being in a flow state and writing your own code.&lt;/p&gt;
&lt;p&gt;Going forward I will be actively trying to stop myself being lazy and being more stringent with what I get the LLM to do and what I write. I have no doubt as the models get better, the code and technical debt will improve from what they are like now and the world of programming is changing. These are just some of the pain points I’ve found with it this far and I will be interested to read this back in a years time and see where things are at. There is no putting this genie back in the bottle though and the AI train is moving, so I will be keeping my finger on the pulse and walking the line between keeping the fun and maximising productivity. Whether thats using Neovim for the bits of programming that require more manual labour and then just getting Cursor to generate the boring boilerplate, I am not sure yet but I am excited to keep exploring to really find what works for me (any suggestions are welcomed). &lt;a href=&quot;https://world.hey.com/dhh/coding-should-be-a-vibe-50908f49&quot;&gt;Coding should be a vibe&lt;/a&gt; and we should be skeptical handing over the keys to the fun part of our jobs to LLMs.&lt;/p&gt;
&lt;p&gt;Thanks for reading this ramble, feel free to connect with me on &lt;a href=&quot;https://www.linkedin.com/in/seb-smith-34a20a1a6/&quot;&gt;LinkedIn&lt;/a&gt;, follow me on &lt;a href=&quot;https://x.com/SebSmith1&quot;&gt;X&lt;/a&gt; or just reach out via &lt;a href=&quot;mailto:seb@sebsmith.dev&quot;&gt;email&lt;/a&gt; if you found it interesting and experienced the same sort of thing&lt;/p&gt;
</content:encoded><author>seb@sebsmith.dev (Seb Smith)</author></item><item><title>My Journey from VS Code to Neovim and Back (Kind of)</title><link>https://sebsmith.dev/posts/my-journey-from-vs-code-to-neovim-and-back-kind-of</link><guid isPermaLink="true">https://sebsmith.dev/posts/my-journey-from-vs-code-to-neovim-and-back-kind-of</guid><description>A practical account of moving from VS Code to Neovim, what made it fun, where it got difficult, and why I still keep both around.</description><pubDate>Wed, 10 Jul 2024 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;At the end of 2023, I decided to switch from VS Code to Neovim. I had been using VS Code for a few years and was getting a bit bored of it. I wanted to try something new and had heard a lot of good things about Neovim (mainly from &lt;a href=&quot;https://www.youtube.com/@ThePrimeTimeagen&quot;&gt;ThePrimeagen&lt;/a&gt;, of course). I had also been using Vim keybindings in VS Code for a while and thought it would be cool to try out the real thing.&lt;/p&gt;
&lt;h2 id=&quot;my-motivation&quot;&gt;My Motivation&lt;/h2&gt;
&lt;p&gt;I didn’t really have any issues with VS Code. I had just been watching &lt;a href=&quot;https://www.youtube.com/@ThePrimeTimeagen&quot;&gt;Prime&lt;/a&gt; and thought it looked pretty fun, the way and speed he navigates through his code. I had used VS Code for many years, with occasional use of WebStorm and Rider from JetBrains, so I thought I’d open my mind and try something that seemed alien to me.&lt;/p&gt;
&lt;h2 id=&quot;the-switch&quot;&gt;The Switch&lt;/h2&gt;
&lt;p&gt;I started by watching some videos on learning Vim and thought the best thing to do was to just use Vim motions inside VS Code. I did this for a week or two and became relatively good at using the basic motions. Once they became more natural, I really could see the benefit. At the very least, I’d recommend people learn the motions and just use them inside their preferred text editor.&lt;/p&gt;
&lt;p&gt;I then decided to take the plunge and install Neovim. I installed it and started using it as my main text editor. I decided to just use a starter config (&lt;a href=&quot;https://github.com/nvim-lua/kickstart.nvim&quot;&gt;Kickstart&lt;/a&gt;) and then add to it as I went along. I started to add some plugins and configure them to my liking, but this wasn’t plain sailing…&lt;/p&gt;
&lt;h2 id=&quot;the-problems&quot;&gt;The Problems&lt;/h2&gt;
&lt;p&gt;I was really enjoying the process of tinkering with my config, but it wasn’t as easy as just looking through the VS Code marketplace and installing a plugin. It took some conscious learning around my plugin manager &lt;a href=&quot;https://github.com/folke/lazy.nvim&quot;&gt;Lazy&lt;/a&gt; and when something didn’t work, it required reading docs 🫨 and working out what had gone wrong. This did add to the fun of it, but when I just wanted to get on with some work, it was a bit of a pain. Once you get your head around installing plugins, though, it is straightforward enough and can be just as quick as installing them on VS Code.&lt;/p&gt;
&lt;h2 id=&quot;the-fun-begins&quot;&gt;The Fun Begins&lt;/h2&gt;
&lt;p&gt;A week or two into using Neovim exclusively at work, my config was starting to get refined, and I was starting to remember more and more motions. Then the real fun started. I was flying between buffers, jumping lines, recording macros to do repetitive tasks. It felt awesome and very quick. Don’t get me wrong, before I’d gotten the hang of it, it really wasn’t efficient. I would be searching for the best way to do a simple task and Googling what certain keys did (I still do this). It’s hard to explain to someone who has never used Neovim, but achieving a flow state when Neovim is your editor is much easier. I think because you have to have more intent with your work, you start thinking more about the problem and what code you actually want to write.&lt;/p&gt;
&lt;p&gt;I find VS Code much harder to maintain that flow state. As soon as I have to think, “What’s the keybinding for switching open tabs?” or use the cursor to navigate the file tree, the flow state breaks, and my focus is taken away from the problem for a split second. Before you say, “But Seb, you can configure VS Code keybinds,” I know you can. I have tweaked some keybinds to suit, but it doesn’t seem to lend itself nicely to it. There have been a few times where I’ve lost keybind settings randomly and not really sure why. I also have multiple accounts and machines I use to sign in to and use VS Code, where I have to manually port keybind changes to each account.&lt;/p&gt;
&lt;h2 id=&quot;the-knock-on-effect&quot;&gt;The Knock-On Effect&lt;/h2&gt;
&lt;p&gt;Because of this issue, I found myself not really liking the whole signing in to an editor and settings auto-syncing that much. It was nice sometimes to just log into an editor on a new device, and the editor would be the same as on your main machine. However, I found myself wanting to just pull my config from GitHub. This, in turn, led me to look into storing dotfiles on GitHub because it was just a pain having different configs on different machines.&lt;/p&gt;
&lt;p&gt;Using Neovim also led me to start understanding my terminal better. It led me to learn a few more terminal commands and also understand the limitations terminals have when it comes to image and text rendering. I have tried a couple of terminal emulators on my travels, but I ended up sticking with &lt;a href=&quot;https://wezfurlong.org/wezterm/index.html&quot;&gt;Wezterm&lt;/a&gt;, and I would probably say this is my most used app on my computer, even when I am not maining Neovim.&lt;/p&gt;
&lt;p&gt;It also made me want to never use a mouse, I saw the true speed in pretty much navigating everything via the keyboard. I now almost always switch apps, browser tabs and navigate my computer via the keyboard.&lt;/p&gt;
&lt;h2 id=&quot;the-issues&quot;&gt;The Issues&lt;/h2&gt;
&lt;p&gt;I did have a few issues with Neovim; it wasn’t all sunshine and rainbows. My first main hiccup that frustrated me was viewing images. I primarily work with front-end technologies, and my full-time job involves working with React Native to build mobile apps. Viewing images is kind of essential, and especially on a greenfield project, I will need to add images to the project and look at them quite a lot. I never really found a nice simple solution to this. I did try a couple of plugins, but it just felt like a janky experience trying to get it to work. Most of the time, I just opened “Finder” and dealt with the images in there (not very hacker man of me, I know 😢).&lt;/p&gt;
&lt;p&gt;The second and most major issue came when I started working on a .NET project. It was a website that used .NET, and I found a couple of plugins to try and help work with it. It was mostly okay on the “back-end” side of things, but when it came to working with the Razor (cshtml) files, it was a bit of a nightmare. I found that Treesitter didn’t work properly in these files, so I wouldn’t get the syntax highlighting I wanted. Also, the LSP wouldn’t work right, and I couldn’t jump to definitions or anything like that. There may be a solution out there for it, but I just never really found one, so I mostly went back to using VS Code for that project and my work projects. However, I do find using VS Code much less fun than Neovim. It just feels a bit “soulless.”&lt;/p&gt;
&lt;h2 id=&quot;summary&quot;&gt;Summary&lt;/h2&gt;
&lt;p&gt;Do I think I was more productive using Neovim? Hmm, I personally think I felt more productive, and I definitely had more fun. I wasn’t as productive during the initial phases of learning, though, and it does take a time investment to get your head around the new workflow.&lt;/p&gt;
&lt;p&gt;Will I go back to using Neovim? Yes, I mean, I am using it to write this article now. I still use it for all my personal projects, and I still use it for my work projects that don’t involve .NET. I think I will always have it installed on my machine, and I will always use it for something. I think I will be looking more into &lt;a href=&quot;https://zed.dev/&quot;&gt;Zed&lt;/a&gt; over the next few months as that starts maturing, just to see if it can compete with VS Code for ease of use.&lt;/p&gt;
&lt;p&gt;If you are on the fence about trying Neovim, I would say give it a go. It’s a fun experience, and you may find you like it more than your current editor. I would say give it a good month or two before you decide if you like it or not; it does take a bit of time to get used to. At the very least, though, I’d say use a Vim plugin in your current editor and start learning the Vim motions because you really will start navigating through a file faster.&lt;/p&gt;
&lt;h2 id=&quot;thanks-for-reading-&quot;&gt;Thanks for reading! 🚀&lt;/h2&gt;
</content:encoded><author>seb@sebsmith.dev (Seb Smith)</author></item><item><title>About Me</title><link>https://sebsmith.dev/posts/about-me</link><guid isPermaLink="true">https://sebsmith.dev/posts/about-me</guid><description>Hi, I&apos;m Seb Smith, a dedicated software developer with a unique journey that led me into the world of coding.</description><pubDate>Sun, 07 Jul 2024 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Hi, I’m Seb Smith, a dedicated software developer with a unique journey that led me into the world of coding. My story explains the challenges I’ve faced, the skills I’ve acquired, and the tough road I’ve been on to end up where I am.&lt;/p&gt;
&lt;h2 id=&quot;the-beginning-a-battle-with-cancer&quot;&gt;The Beginning: A Battle with Cancer&lt;/h2&gt;
&lt;p&gt;In 2016, my life took an unexpected turn when I was diagnosed with Hodgkin’s lymphoma. What followed was a challenging period marked by intensive treatments, including a stem cell transplant in 2018. Unfortunately, the transplant didn’t yield the desired results, and I found myself back in the hospital, for 6 months, for a specialized treatment known as a CD34 top-up. This period of my life was incredibly tough, as I spent six months in the hospital fighting for my health.&lt;/p&gt;
&lt;h2 id=&quot;a-change-of-direction-from-bicycles-to-software-development&quot;&gt;A Change of Direction: From Bicycles to Software Development&lt;/h2&gt;
&lt;p&gt;After my recovery, I initially returned to my roots in bicycle mechanics, a trade I had trained in after school. However, I soon realized I needed a change. My interest in computer games and the experience of building my own PC sparked a new passion: software development.&lt;/p&gt;
&lt;h2 id=&quot;training-and-transition-northcoders-and-beyond&quot;&gt;Training and Transition: Northcoders and Beyond&lt;/h2&gt;
&lt;p&gt;In 2020, during the height of the pandemic, I decided to formalize my new interest by training at Northcoders, a reputable coding bootcamp. This intensive program provided me with the skills and knowledge I needed to transition into the tech industry.&lt;/p&gt;
&lt;h2 id=&quot;professional-journey-from-manchester-to-york&quot;&gt;Professional Journey: From Manchester to York&lt;/h2&gt;
&lt;p&gt;My first role was at Silverchip, a dynamic software development agency where I worked from 2020 to 2023. During my time there, I contributed to numerous web and mobile app projects, including an online banking app that I am particularly proud of.&lt;/p&gt;
&lt;p&gt;In 2023, I moved to The Distance, a company where I continue to hone my skills and build exclusively mobile apps for a diverse range of clients. In addition to my professional work, I also engage in developing in-house websites and personal side projects, constantly pushing the boundaries of my creativity and technical expertise.&lt;/p&gt;
&lt;h2 id=&quot;looking-forward&quot;&gt;Looking Forward&lt;/h2&gt;
&lt;p&gt;The path I’ve taken to become a software developer is shaped by my dedication to my craft. I’m passionate about solving complex problems and committed to delivering quality in every project I undertake. As I advance in my career, I’m excited to develop innovative solutions and work on projects that truly make a difference.&lt;/p&gt;
&lt;p&gt;Thank you for taking the time to learn about my journey. If you’re interested in chatting about software development, tech, or anything else, feel free to&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:seb@sebsmith.dev&quot;&gt;Contact me&lt;/a&gt; or &lt;a href=&quot;https://www.linkedin.com/in/seb-smith-34a20a1a6/&quot;&gt;connect with me on LinkedIn&lt;/a&gt;&lt;/p&gt;
</content:encoded><author>seb@sebsmith.dev (Seb Smith)</author></item></channel></rss>