TJ's first "Kickstart" video on how to get started with nvim was what got me to actually try it, and I have never looked back since. Great interview, was very interesting.
Awesome to see TJ on my favorite developer-centric podcast! I'm curious to know how you find your guests. You always bring on people worth listening to.
Thanks. I find guests in all the ways - my contacts, people I meet at conferences, recommendations from listeners, and more. There's no fixed pattern, except, "Are they doing something interesting?" 🙂
that intro was poetic. I’ve never thought how attached I am to neovim until now. I always saw developers who I thought were amazing using it, but didn’t even understand what it was until two years into learning to program. It very difficult at first. Now, I can write the lua configuration by myself. I use arch instead of ubuntu, and I understand it. I hope this doesn’t come across like a brag. Just wanted to recognize that I have evolved as a developer, even if every day I feel like an impostor.
Quotable quote from Kris: "I was a Vim user for a long time, and the thing that ejected me out of Vim was the awefullness of VimScript. I am going to go on record saying 'I hate that language.'" Agreed wholeheartedly.
I'll be honest watching TJs and ThePrimeagens videos have made me consider switching from emacs to neovim. I fell in love with emacs because of the tuning and configuring but I never loved elisp. More attuned to imperative languages, and since I already use evil keybindings and have written lua for work I am going to give it a go.
1. Chris (Sorry if I misspelled it, my best guess), you are a great interviewer. Keep up the fantastic work. 2. TJ, you can quickly tell when someone is passionate about something because well developed thoughts pour of them, as evidenced by this interview. Love neovim btw good stuff
TJ's content is the reason I abandoned vim and went neovim and converted my config to lua. Before that I never used lua, I knew it was embedded in many games and was supposed to be fast. I thought it was bad idea for neovim to split off from vim in this way and split the plugin eco system, because ppl will want their plugins to work for both vim and neovim right? (I was very wrong apparently). Then after seeing him explaining things using lua, it started to make sense and it just seemed so much more pleasant than vimscript. Now a few years later I've written a multiple thousands of lines of lua code, split over my config and a plugin or 2 (which only I and 2 colleagues use), to aid my workflow in neovim, and can't imagine ever have done all that in vimscript. Also the lua plugin ecosystem is very active, with multiple new plugins coming out every week. And the community is very active and imo very welcoming (not everyone agrees all the time tho).
I remember seeing you give a talk on elm at some functional meetup in London! You were really engaging, happy to now discover you have a UA-cam channel 🎉
0:06 What a lovely term! I consider the people that drank or smoked since high school marinated in alcohol or cannabis, but yes, it's the same thing! Vi since 86, vim since 1992, started neovim about 2019, but truly moved from vim to neovim when Bram died.
Thank you for the podcast and wonderful content. I particularly like the interviews for specific languages. I’m curious, do you have a goto online resource to keep you updated with releases for the newer languages? I currently use google alerts set up for certain keywords and check a few Wikipedia timeline articles but I’m looking for other ideas going forward. Be well. 😊
Glad you're enjoying it! I don't have one specific source. It comes from a combination of reading around, meeting people at conferences and recommendations from friends, listeners and other guests. 🙂
@@DeveloperVoices Thanks for taking time to reply. From listening to more episodes from the podcast I figured that might be the case, but I thought I would ask anyway. I think I need to plan out a chronological binge listen of the podcast 😀 On a separate note I’m pleased to see Gleam getting traction since the stable release came out - it was through your first Gleam episode that I discovered the podcast on Spotify.
I think they did lua dirty when they removed getfenv/setfenv after 5.1. I was able to set up dynamically-scoped variables for a very specific use with getfenv/setfenv and metatables in 5.1 and while it's possible using the debug library it isn't as simple or light. My other gripes are dynamic typing and 1-based arrays. I really hope that changes for lua 6 or something.
@@vorrnth8734 if you use both a lot it soon becomes apparent that 0-based is much more convenient. for instance if you have some modulo index you have to add 1 to everything, it can get pretty annoying pretty fast.
Great interview, Kris! I do like NeoVim... I'd like to talk about Fennel (I'm neither affiliate nor team member); it's a Lisp written in Lua to transpile Lua; I use it as my only NeoVim configuration language (by using the tangerine plugin; I can do metaprogramming like I'd do with Emacs Lisp); Fennel has threading macros (from Caml, Clojure or Elixir), distinction between tables (map OR list) & active maintainers... TJ Devries is a great inspiration... Rest in peace Bram
You don't need to create and maintain your own neovim configuration to unlock the full potential of neovim. Simply use available configurations such as AstroNvim, LunarNvim, NvChad, etc.
it's true But understanding the fundamentals by building from Scratch will unlock many skills that Could be very useful. But it is always personal preference. what is best for you is the best option
For as long as I've been a programmer, I've been annoyed with the built-in / pre-defined behavior in my IDEs. I much prefer to add things when I find out that I need it, instead of being inundated with unwanted behavior. I'm not yet fully switched to nvim but I'm getting closer and every day my current IDE chooses to make a "smart" decision for me I feel the longing for the day that I can switch completely.
Hey TJ: I'd just like to interject for a moment. What you're referring to as Linux, is in fact, GNU/Linux, or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX. Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called Linux, and many of its users are not aware that it is basically the GNU system, developed by the GNU Project. There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called Linux distributions are really distributions of GNU/Linux!
Doubt TJ cares, but that was a nice summary for me that clicked. I've read this many times in different ways, but never organized in a single explanation that was, at least for me, both comprehensive and comprehensible.
Well, if you wanted a REALLY customisable editor, there's always Emacs, which is probably just as old or even older than vim. since it was started in 1976, 48 years ago. And yeah, you might have to learn elisp, but none of us was born knowing Lua either, so six of one, half a dozen of the other. Neovim has always seemed to me to be a vanity project - let's rip down the old and start over because ... reasons ? And you can come up with good reasons for anything you want to do, and sell it to anyone, but objectively, does it really make the world a better place? Or does it just create yet another standard like XKCD said? Having said that, I've been using vi/vim since 1983, so I understand both the joy and frustration of this editor. Whatever
Neovim? No thanks, because I need to work on my project and not screw around with settings and plugins which break on every update. I use vscodium with vim emulation and few plugins I need, o am just as fast and productive. Tried vim with plugins, neovim with plugins - all waste of time. Tried helix, liked it a lot because it’s self contained - however it doesn’t support VHDL and systemverilog properly unfortunately. And it has few non forgiving bugs, as if you can’t clear the created jump points etc.
more like vscopium I'm joking but it is a good idea to use a vim-like key binding even if you don't use an actual vim imo. I use intellij at work and still use a plugin for vim keybinds and modes. I like neovim but it's true that the user does have to do a ton more and a lot of stuff isn't mature. Using a mature editor with vim keybindings is a good tradeoff.
TJ's first "Kickstart" video on how to get started with nvim was what got me to actually try it, and I have never looked back since. Great interview, was very interesting.
Same! Just wanted to write the exact same comment until i saw this one.
+1
Awesome to see TJ on my favorite developer-centric podcast! I'm curious to know how you find your guests. You always bring on people worth listening to.
Thanks. I find guests in all the ways - my contacts, people I meet at conferences, recommendations from listeners, and more. There's no fixed pattern, except, "Are they doing something interesting?" 🙂
@@DeveloperVoices Then I will have to do something interesting 😄
@@CryptoDrewStreamsI look forward to hearing about it. 😁
that intro was poetic. I’ve never thought how attached I am to neovim until now. I always saw developers who I thought were amazing using it, but didn’t even understand what it was until two years into learning to program. It very difficult at first. Now, I can write the lua configuration by myself. I use arch instead of ubuntu, and I understand it. I hope this doesn’t come across like a brag. Just wanted to recognize that I have evolved as a developer, even if every day I feel like an impostor.
Love to see TJ on the channel!
Tee jay mentioned, LETSGO
😂
Mentioned deeznuts!!
Two people I like to see in one place! Nice!
I am not super invested in this topic per se, but the conversation was so great I could have listened for hours.
Hey Kris, just wanted to say thank you for the podcast!
You're welcome! 😊
Love the show and the way you listen and engage with your guests!
Quotable quote from Kris: "I was a Vim user for a long time, and the thing that ejected me out of Vim was the awefullness of VimScript. I am going to go on record saying 'I hate that language.'" Agreed wholeheartedly.
Barely two minutes in and I'm loving this already.
Love Tj, so much passion
Just started the video, but the first thing that comes to mind is Emacs. Hope you'll do an episode on Emacs too!
I watched the stream where he started listing requirements for the telescope. Inspired me to create plugins.
neovim: "the humble editor you just can't quit"
I'm glad someone picked up on that. 😉
Huge convo on rewriting old code and how important it is to figure out the core behaviour of whatever your tryna revive
Eyyyy its telescopic johnson🎉
Superb discussion! Thank you very much.
I'll be honest watching TJs and ThePrimeagens videos have made me consider switching from emacs to neovim. I fell in love with emacs because of the tuning and configuring but I never loved elisp. More attuned to imperative languages, and since I already use evil keybindings and have written lua for work I am going to give it a go.
1. Chris (Sorry if I misspelled it, my best guess), you are a great interviewer. Keep up the fantastic work.
2. TJ, you can quickly tell when someone is passionate about something because well developed thoughts pour of them, as evidenced by this interview. Love neovim btw
good stuff
Thanks, will do!
(And it's Kris, for the record. 🙂)
TJ's content is the reason I abandoned vim and went neovim and converted my config to lua.
Before that I never used lua, I knew it was embedded in many games and was supposed to be fast. I thought it was bad idea for neovim to split off from vim in this way and split the plugin eco system, because ppl will want their plugins to work for both vim and neovim right? (I was very wrong apparently).
Then after seeing him explaining things using lua, it started to make sense and it just seemed so much more pleasant than vimscript.
Now a few years later I've written a multiple thousands of lines of lua code, split over my config and a plugin or 2 (which only I and 2 colleagues use), to aid my workflow in neovim, and can't imagine ever have done all that in vimscript.
Also the lua plugin ecosystem is very active, with multiple new plugins coming out every week. And the community is very active and imo very welcoming (not everyone agrees all the time tho).
im glad to hear there's no panning of the voices in this
Oh that's interesting. You dislike the panning? Noted. 👍
Thanks for this absolutely great interview 💛!
I remember seeing you give a talk on elm at some functional meetup in London! You were really engaging, happy to now discover you have a UA-cam channel 🎉
0:06 What a lovely term! I consider the people that drank or smoked since high school marinated in alcohol or cannabis, but yes, it's the same thing!
Vi since 86, vim since 1992, started neovim about 2019, but truly moved from vim to neovim when Bram died.
Great interview.
Love Teej. love NeoVim, and love this podcast.
Awesome talk
props both of you! love to see dj popping up round here
TEEEEEEEEJ So freakin excited for this one
Amazing intro, congrats
Fantastic video, you ask really insightful questions ❤
I am new here, really enjoyed TJ discussion!
Thank you for the podcast and wonderful content. I particularly like the interviews for specific languages. I’m curious, do you have a goto online resource to keep you updated with releases for the newer languages? I currently use google alerts set up for certain keywords and check a few Wikipedia timeline articles but I’m looking for other ideas going forward. Be well. 😊
Glad you're enjoying it!
I don't have one specific source. It comes from a combination of reading around, meeting people at conferences and recommendations from friends, listeners and other guests. 🙂
@@DeveloperVoices Thanks for taking time to reply. From listening to more episodes from the podcast I figured that might be the case, but I thought I would ask anyway. I think I need to plan out a chronological binge listen of the podcast 😀 On a separate note I’m pleased to see Gleam getting traction since the stable release came out - it was through your first Gleam episode that I discovered the podcast on Spotify.
for those that like Lua, let me tell you something, it is pretty similar to Basic, loop constructs like the repeat until come from basic.
💚 Neovim! 🧡
I think they did lua dirty when they removed getfenv/setfenv after 5.1. I was able to set up dynamically-scoped variables for a very specific use with getfenv/setfenv and metatables in 5.1 and while it's possible using the debug library it isn't as simple or light.
My other gripes are dynamic typing and 1-based arrays. I really hope that changes for lua 6 or something.
What's wrong with using indexes instead of offsets?
@@vorrnth8734 if you use both a lot it soon becomes apparent that 0-based is much more convenient. for instance if you have some modulo index you have to add 1 to everything, it can get pretty annoying pretty fast.
Such a great talk!
Thanks!
Very nice introduction. I like it.
wait what, stumbled on this randomly... and we have met at cube comps!
Small world huh? See you at the next one. 🥳
Great interview, Kris! I do like NeoVim... I'd like to talk about Fennel (I'm neither affiliate nor team member); it's a Lisp written in Lua to transpile Lua; I use it as my only NeoVim configuration language (by using the tangerine plugin; I can do metaprogramming like I'd do with Emacs Lisp); Fennel has threading macros (from Caml, Clojure or Elixir), distinction between tables (map OR list) & active maintainers... TJ Devries is a great inspiration... Rest in peace Bram
Holly ****, I'm subbed to both you!
great questions.
TJ! TJ! TJ! TJ! TJ!
You don't need to create and maintain your own neovim configuration to unlock the full potential of neovim. Simply use available configurations such as AstroNvim, LunarNvim, NvChad, etc.
it's true But understanding the fundamentals by building from Scratch will unlock many skills that Could be very useful. But it is always personal preference. what is best for you is the best option
For as long as I've been a programmer, I've been annoyed with the built-in / pre-defined behavior in my IDEs. I much prefer to add things when I find out that I need it, instead of being inundated with unwanted behavior. I'm not yet fully switched to nvim but I'm getting closer and every day my current IDE chooses to make a "smart" decision for me I feel the longing for the day that I can switch completely.
TJ == Legend!
Nice video, can we have some code demonstration in the next interview, I think it will be much enjoyable to watch. Just a little bit coding demo :)
Yes indeed. I'm aiming to record one next week. :-)
Comments on Zed editor? I am really interested in that!
Yeah, me too. I'm currently speaking to the Zed team to get someone on the show. Look out for a dedicated episode...some time in May? 🙂
What about Helix interview?
Ooh, good idea. Added to my list. 👍
Is there an audio version of this podcast episode
Yes, absolutely! You can find links to all the major platforms from here: pod.link/developer-voices
@@DeveloperVoices subscribed on overcast, thanks!
5:52 Sadly, I feel, having to work with a lot of differnet software, that usually isn't the case.
Yeah. Agile was supposed to get us closer to that kind of feedback loop....I'm not sure how often it happens in practice...
4 tj. always.
Let's raid TJ
Hey TJ: I'd just like to interject for a moment. What you're referring to as Linux, is in fact, GNU/Linux, or as I've recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called Linux, and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.
There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called Linux distributions are really distributions of GNU/Linux!
Doubt TJ cares, but that was a nice summary for me that clicked. I've read this many times in different ways, but never organized in a single explanation that was, at least for me, both comprehensive and comprehensible.
@Blaisem it's a copypasta
I'm Lua JIT, too Lua JIT to quit!
I dont get it honestly, i like jetbrains just drag around a few files to refactor without doing anything, im just to lazy 😂
I didn't know this was a cult until I saw these comments. Sheesh!
It's not a cult, it's a club. Come join us!
the teeej
0:48 simple answer spend an ungodly amount of time crafting each tool and plugin in nvim
no you didn't... interview with Teej!!!
You don’t want a Pee ED. That’s baddddddddd 50:09
M-x neoevil
Well, if you wanted a REALLY customisable editor, there's always Emacs, which is probably just as old or even older than vim. since it was started in 1976, 48 years ago.
And yeah, you might have to learn elisp, but none of us was born knowing Lua either, so six of one, half a dozen of the other.
Neovim has always seemed to me to be a vanity project - let's rip down the old and start over because ... reasons ?
And you can come up with good reasons for anything you want to do, and sell it to anyone, but objectively, does it really make the world a better place? Or does it just create yet another standard like XKCD said?
Having said that, I've been using vi/vim since 1983, so I understand both the joy and frustration of this editor.
Whatever
I can't be impressed by neovim because I use emacs btw
didn't know tj's grandma is also into vim
Harsh! 😂
Neovim? No thanks, because I need to work on my project and not screw around with settings and plugins which break on every update. I use vscodium with vim emulation and few plugins I need, o am just as fast and productive. Tried vim with plugins, neovim with plugins - all waste of time. Tried helix, liked it a lot because it’s self contained - however it doesn’t support VHDL and systemverilog properly unfortunately. And it has few non forgiving bugs, as if you can’t clear the created jump points etc.
Happy you found a workflow that works! Must have been frustrating
more like vscopium
I'm joking but it is a good idea to use a vim-like key binding even if you don't use an actual vim imo. I use intellij at work and still use a plugin for vim keybinds and modes.
I like neovim but it's true that the user does have to do a ton more and a lot of stuff isn't mature. Using a mature editor with vim keybindings is a good tradeoff.
You can turn away from the light, but you'll always know nvim is the one true king
@@SR-ti6jj sorry I don’t bother to respond to mentally ill people