 One of the questions that I sometimes get from new to Linux users is Hey DT, why do you spend so much time making videos about things like Vim and Emacs and tiling window managers all of these programs that are difficult to use difficult to learn there They're hard pieces of software right there. They're not your normie kinds of pieces of software Why don't you do more videos about playing text editors like g-edit or desktop environments like Genome Why do you spend so much time pushing all of this more advanced kind of software and that is a good question? I understand why people ask me that question and I do have some reasons why I spend so much time Promoting things like Vim and Emacs and tiling window managers. So let's discuss that a bit reason number one Why I push things like Vim and Emacs and tiling window managers is I'm not promoting those programs necessarily it's not like I'm invested if you use Vim or if you use Emacs or if you use Cutal or Xmonad or the awesome window manager or whatever it happens to be I don't care personally about the software you use you make your choices on the software you use Everyone makes their own decisions on that but I do want to expose people To freedom and when I'm talking about freedom, of course, I'm talking about free software free as in freedom The ideals of the free software movement to be able to do with your software Whatever you want to do and of course typically we're thinking about licensing in this regard But there's more to freedom in my mind than just licensing. I want to expose people to the ultimate Configurable and extensible pieces of software out there the the pieces of software that you can extend and you can shape And you can create it and you can mold it into whatever you want it to be and that's kind of what you can do with Vim It's definitely what you can do with Emacs and many of the tiling window managers So that's especially the ones I really focus on on this channel things like Xmonad, Cutal, the awesome window manager Even DWM through the patching, you know, you can really turn those things into practically anything you can imagine And that's the beauty of these extensible programs It's not the programs and themselves that I'm promoting. I just want people to be exposed to Yeah, if you've never been exposed to these extensible kinds of programs, it is truly It's liberating getting back to the whole freedom thing It liberates your mind a little bit what you can do with some of these pieces of software is something You've never been exposed to with any pieces of proprietary software So those of you that are primarily living in the windows world and the Mac world, you know You've never you've never seen what you can do with truly extensible pieces of software even like Linux and you know A lot of your standard shell commands and things like that. You can extend these things in such powerful ways That's why I make these videos pushing some of the especially the ultra nerdy stuff Ultimately, I just want people to understand what their software could be now whether you want to make it into that Again, that's up to you. I if you want to put in that work Or maybe you don't and I'm cool with that I just want people to know that this stuff is out there and that these things are Possible the other reason I want to expose people to things like VIM and emacs and x-mode add and DWM and things like that It's because to truly configure these things you have to do a little programming You have to do a little scripting in various languages VIM you know standard VIM you use VIM script now with neo VIM you're using Lua and of course and emacs You're using emacs lisp and x-mode add you're using Haskell and Qtile. You're using Python and DWM you'll use the C programming language and Because you want to extend your software to make it do what you want to do You'll have to learn a little bit of programming. You don't have to learn how to program You just need to know how to move some pieces around Typically it's copy and paste you go look at it something in Google right you do a Google search for what you want to do in that particular piece Of software you'll find a stack exchange post about it And you'll post it in that config and maybe if it's a compiled language You'll have to do a quick compilation of your your new program and boom you've got it and you I'm not a programmer I'm not a developer. I don't you know, I've never worked in that line of work I've never considered myself a programmer I know a little bit of some of these languages that I have to work in mainly because I configure my software That's the only reason I know any Haskell you guys have seen me You know do some Haskell programming the only reason I know Haskell the only reason I know Haskell is because I've been an x-mode add user for about 15 years That's the only reason, you know, I guess I've never earned a paycheck from Haskell I've never been a part of any kind of development team even like an open-source project or anything I've never made a single commit to anything like that using Haskell, right? So I just want to show people that you don't have to be a nerd to do this, right? I'm just a normal guy Yes, I've used Linux and I've used some of these tools for a number of years and because of that Of course, I've picked up some things along the way, but it's not like I'm some super smart guy, right? It's not like you can't do exactly all of the stuff. You see me do on video and there is a Another reason I also push things like Vim and Emacs and Tiling window managers, you know I want you guys to understand how extensible these programs are and I want it to be liberating for you I also Because you are gonna have to configure these things and a programming language along the way You might actually like programming and scripting you may eventually want to get into software development Especially free and open source software development So in a lot of ways when I introduce you to tools like Emacs for example and you start having to write Emacs list code You're you're making all of these custom packages for yourself inside Emacs You know along the way something might click in your head and you might all of a sudden decide one day You know what this Emacs thing, you know at first it was just a cool thing to it was a fun project to configure But now it's kind of been my gateway drug into becoming a software developer And I hope some of you guys get into software development because you use some of these programs that maybe you've seen me use on the Channel and to me it seems like a natural progression. That's kind of How these things start you don't know what you're passionate about until one day You know you're you're playing with some new stuff and then it's like hey I really like this like, you know playing with my X-mone ad config if I you know look at my X-mone ad a tiling window manager config here, you know, that's the window manager. I'm in today, right? I've got my random shell color scripts that launch every time I launch a new terminal Which is a custom program where I collected all of these terminal color shell scripts There's about 60 of them I've collected and I pretty much made them into a shell program a bash script that I wrote Where I can get a random shell color script every time I launch a terminal Which was really neat for me because I do so much displaying tiling window manager So I often want to show Tiling window manager layouts and things like that and the easiest way to do that is opening a bunch of terminals But if I open a bunch of terminals, what if I'm moving windows around? Well, if I move windows around and they're all the same terminal the same empty terminal you can't tell anything is moving So the shell color scripts was actually a real-world problem That actually solved a problem for me because it helped me better demonstrate stuff on camera It's not like I did that because I I think it's pretty or yeah I like having these things in my terminal although I do that was just a real-world problem that that I wanted to solve And again, that's liberating another real-world problem if I do superp h here I've got a list of all of my DM scripts. So DM scripts is another one of my Packages so if you go to my get lab at get lab comm slash DWT one you will find a DM scripts Repository it's a collection of about 30 D menu scripts that I've written well most of them I've written some of them were contributed by the community So I may it's free and open source software people have Pushed things to the project people have helped me improve some of the scripts I've written So we've got a lot of stuff here and I've got a lot of hotkeys to open up some of the D menu scripts I use all the time for example if I do superp b for background I've got this D menu a script that I wrote for quickly changing my wallpaper, right? So I could do a random wallpaper and if I like it I'll just hit yes to keep it Or I could have chose no I don't like it and it would have immediately chose another random wallpaper If I do superp b to get that back I could do set and it opens sx I v my image viewer and it lists all the wallpapers and a particular directory that I have set And I could just go pick a wallpaper. Maybe this is the one I want I hit m on the keyboard to mark it and then super shift c to close the window and Now this Einstein wallpaper is my wallpaper and and again that was just something I wanted It was a simple little program to solve a problem. I wanted I wanted an easy way to set wallpaper from D menu So I wrote the script and you can actually go watch some of my older videos where I wrote some of these DM scripts On camera like I came up with an idea of a real-world problem I wanted to solve and we just scripted it in bash right here on camera So go check out some of my playlists involving DM scripts I've also got some videos demonstrating shell color scripts some other stuff. I've done recently You guys know I use doom emacs. So, you know standard doom emacs here and what I've done is, you know, I like to doom emacs so much I wanted to make my neo vm config look like doom emacs So if I launch neo vm, you know, you got like a Dashboard kind of like you would in doom emacs right here in neo vm I set a lot of the standard doom emacs key bindings to do Similar things here in neo vm. For example space ff is find file and doom emacs space ff Kind of finds a file for me here in neo vm I could quickly search through the files that you know, whatever file I want to open And I did a video about that recently for those of you that like to do web development I'm not a web dev. It really doesn't interest me. But you know a while back I made a website, right? I made distro.tube. This is a website a 21,000 page website that I wrote using org mode And the main reason it's 21,000 pages is because I've got this section linux man pages where I Collected the 21,000 man pages or so that were on my very bloated Orco linux system that's got so much stuff installed, right? I took all of the man pages And then I converted them using a script a custom script that I wrote I converted them from man page format over To an org format and then through the magic of emacs and the org export functionality within emacs Then I exported all of those 21,000 org pages to html static html pages. So, you know, I've got The a's we can search through my man pages alphabetically. There is the list of the a packages, right? A whole bunch of stuff here. We want to take a look at one of the man pages. There is the man page, right? So, and again, I'm not a web dev. This was just Something I did kind of as a passion project. Maybe just to see if I could actually do it I was just interested to see if you could actually write a large static website using nothing but org mode in emacs And again, I want to reiterate I'm not a programmer, right? I've got no degrees as far as computer science or anything like that I went to college to study music, you know, that's what my degrees are and I have absolutely no professional training at all anything involving computers Software programming, I've never worked with computers in a professional setting at a job I've never used linux at a job and that's why I make these videos I make these videos about these nerdy topics that people imagine are difficult, you know There's these negative stereotypes with things like vim and emacs and xmonad and dwm and All of these programs that require people to put in some work to extend them to customize them to configure them And I want to show people that it's not difficult at all that some of what people perceive About these programs is really Not accurate So I strongly urge everyone to go check out some of these fantastic pieces of free and open source software, especially These open source programs that are extremely customizable and extensible Because these are the kinds of programs that truly Are liberating they're a path to freedom and in some ways they will change Everything that you think you knew about computing about software and in some cases even life in general Now before I go I need to thank a few special people I need to thank the producers of this episode brine gabe james matt maxum mimit michael paul royal west Why you bald homie alex armor dragon chuck commander angry diokai george lee marstrum methos Nate urion alexander paul piece archon vador polytech realities for less red profit roland steven tools deviler and willy These guys they're my highest tiered patrons over on patreon without these guys This ran about why I make these videos on nerdy pieces of software This video wouldn't have been possible without these guys The show's also brought to you by each and every one of these fine ladies and gentlemen all these Dangers seeing on the screen right now. These are online supporters over on patreon. I don't have any corporate sponsors I'm sponsored by the community if you like my work I want to see more videos about free and open source software subscribe to distro tube over on patreon. All right guys peace I make videos about vim and emacs to save people from the horrors of nano