switchon@lavalamp.biz
+27(0) 83 419 4851 / +27(0) 21 036 1165
Application & software development
Get A Quote

    • Home
    • Services
      • Application & software development
      • Outsourced software development
      • Project based resourcing
      • Digital marketing & consulting
      • Graphic design & consulting
      • UI / UX design & consulting
      • Recruitment services
      • Lease an expert
    • About
      • How we work
      • NBConsult Group
      • Partners
      • Lightbox Digital
    • Blog
    • Join us
    • Contact

    • Home
    • Services
      • Application & software development
      • Outsourced software development
      • Project based resourcing
      • Digital marketing & consulting
      • Graphic design & consulting
      • UI / UX design & consulting
      • Recruitment services
      • Lease an expert
    • About
      • How we work
      • NBConsult Group
      • Partners
      • Lightbox Digital
    • Blog
    • Join us
    • Contact

    • Home
    • Services
      • Application & software development
      • Outsourced software development
      • Project based resourcing
      • Digital marketing & consulting
      • Graphic design & consulting
      • UI / UX design & consulting
      • Recruitment services
      • Lease an expert
    • About
      • How we work
      • NBConsult Group
      • Partners
      • Lightbox Digital
    • Blog
    • Join us
    • Contact

    • Home
    • Services
      • Application & software development
      • Outsourced software development
      • Project based resourcing
      • Digital marketing & consulting
      • Graphic design & consulting
      • UI / UX design & consulting
      • Recruitment services
      • Lease an expert
    • About
      • How we work
      • NBConsult Group
      • Partners
      • Lightbox Digital
    • Blog
    • Join us
    • Contact
    distributed ledger technology
    What Is Distributed Ledger Technology?
    Aug 12, 2021
    dbeaver
    How To Connect Your Forge Remote Database In DBeaver
    Aug 30, 2021

    Vim & Vim Adventures

    vim adventures
    vim adventures

    As a software developer/engineer you'll likely spend a lot of your time in the command line. Whether you're in a secure shell on a virtual machine, or cruising around your local filesystem you'll generally have access to Vim. But what is Vim? Vim is a text editor, that's it. It's akin to notepad on your Windows box, or TextEditor for Mac OS. Vim however doesn't come with a GUI, which is why I started off this blog post talking about being in the command line. Vim allows you to open and edit text files from within your terminal. Additionally, Vim is nearly ubiquitous. This means you'll be able to use it pretty much regardless of the OS on the box you're perusing.

    Vim was designed with the maxim that most people spend their time editing text, and not actually writing new text. As a software engineer I can attest to this being a fact, and not just the Vim team's opinion. Vim's solution to this? Not letting you use the mouse. While you're typing you're almost certainly using both of your hands to manipulate the keyboard. If you have to use the mouse those are precious seconds wasted just moving your hand off the keyboard to the mouse. Not even counting the time it takes your eyeballs to rove  around the screen trying to locate the graphical element you'd like to click on with your mouse. This is combatted to some extent by providing shortcut keys, like ctrl + c or ctrl + v.

    In Vim there are multiple modes that the text editor can be in. Such as "visual", "insert", or "normal". Each mode allows you to perform different tasks, and will alter the key-bind functionality slightly. In insert mode for example your key-bindings just put characters on a screen, while normally almost every key will have some other kind of functionality. "dd" for example will delete your current line, "u" will undo your last action, and "i" will take you to "insert" mode. You can traverse the text using the arrow keys, but that requires moving your hand slightly, thus losing precious seconds of editing time. A Vim guru will use the "h", "j", "k", and "l" keys to perform this task instead.

    This makes Vim a very powerful tool, albeit one that is not particularly easy to master. Enter Vim Adventures, a fantastic little RPGesque game in which you traverse the world as a Shadowy Cursor. In your adventures you'll sequentially learn different key bindings to help the NPCs you encounter along your path. Overcoming obstacles, finding keys and treasures, and also speed-running through certain sections. I've played all the free content on Vim Adventures which was extremely valuable, and also very enjoyable. You only get access to a couple of levels, but I guarantee you that even that little taste will go a long way in increasing your Vim mastery. Everything past level 4 or so requires some form of license. There is a company license available, and you best believe I will be speaking to the head honchos at LLL to grant us access.

    Contact us


      Related posts:

      laravel livewireLaravel Livewire laravel envoyer and forgeProvisioning A New Digital Ocean Server With Laravel Forge, And Deploying Code With Laravel Envoyer how to setup git-ftp for windowsHow To Setup Git-ftp For Windows dynamic doughnut graph using laravel vue componentDynamic Doughnut Graph Using Laravel Vue Component
      Share
      96
      Nicholas Driver
      Nicholas Driver
      Nicholas is a chemistry graduate who has worked previously as a project manager, managing director, and caregiver, but not as a chemist. After moving into software engineering in 2018 he has worked on big data, business intelligence, and various full-stack projects in a variety of different languages, platforms and frameworks.

      Leave a Reply Cancel reply

      Your email address will not be published. Required fields are marked *

      Lava Lamp Lab


      Like technology, a lava lamp constantly changes form, producing new conditions with every passing moment



      lava lamp lab facebook   lava lamp lab twitter   lava lamp lab linkedin   lava lamp lab instgram

      Services


      Application & software development

      Outsourced software development

      Project based resourcing

      Digital marketing & consulting

      Graphic design & consulting

      UI / UX design & consulting

      Contact Us


      +27(0) 83 419 4851

      +27(0) 21 036 1165


      switchon@lavalamp.biz


      Unit 1 Monaco Square,
      14 Church Street,
      Durbanville,
      Cape Town, 7550

      NBConsult Group


      nbconsult
      nbconnect msp
      nbclearning
      river broadband
      designer needed
      © 2023 Lava Lamp Lab (Pty) Ltd | All Rights Reserved | Privacy Policy
      Contact us now

        Application & software development

          Outsourced software development

            Project based resourcing

              Digital marketing & consulting

                Graphic design & consulting

                  UI/UX design & consulting

                    Lease an expert

                      Recruitment services

                        We are using cookies to give you the best experience on our website.

                        You can find out more about which cookies we are using or switch them off in settings.

                        Lava Lamp Lab
                        Powered by  GDPR Cookie Compliance
                        Privacy Overview

                        This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

                        Strictly Necessary Cookies

                        Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.

                        If you disable this cookie, we will not be able to save your preferences. This means that every time you visit this website you will need to enable or disable cookies again.

                        3rd Party Cookies

                        This website uses Google Analytics to collect anonymous information such as the number of visitors to the site, and the most popular pages.

                        Keeping this cookie enabled helps us to improve our website.

                        Please enable Strictly Necessary Cookies first so that we can save your preferences!

                        Cookie Policy

                        More information about our Cookie Policy