It is perfectly possible to do development on a laptop with 8 GiB of RAM - I've done that for years on end now. However, you must assume that you will be working within an IDE such as Visual Studio. These kind of applications thrive on screen space. A laptop often has too little of that, so it is much better to work on a larger, secondary screen. Probably best is to have a laptop with a good (USB-3) docking station, preferably with dual display port output.
The laptop you're pointing out has a glossy screen, which could tire you out (although having young eyes does help I suppose). The resolution is high, but beware that there are a surprising number of development related applications that are not build for high resolution screens out there. You'll have to stare at the screen quite a bit.
Quite often you won't be programming huge applications. I did once buy a desktop with a lot of memory simply to be able to compile the OpenJDK after making some changes to it, so there are exceptions if you plan to change existing products. More often though, memory is required for the tooling itself. For instance, if you have a GUI toolbox then that may take quite a bit of memory and CPU power. This laptop does seem to have a spare slot for more memory though.
128 GiB of SSD - which seems to be the default for the Surface Laptop 2 - is absolutely tiny. If you're planning to develop using multiple languages then you must install multiple runtimes and IDE's. That will mean you'll quickly run out of space. I've just bought a 1 TB drive because I'm continuously out of space on my 256 GiB SSD. Of course you want an SSD rather than spinning rust for development. Compiling consists of handling hundreds / thousands of tiny files, something that SSDs excel in (and external drives and hard disks absolutely suck at).
If you are planning on using virtualization then this kind of memory / laptop is definitely not right for the purpose.
Personally, I'd skip the stylish Surface laptop and go for a cheaper workhorse ThinkPad or Dell laptop instead. I'd recommend trying to get 512 GB of SSD and 16 GB of memory. A quad core CPU should be fine though. For programming a touch screen is next to useless (unless you develop applications that require one of course), so get a good touch pad for on the go and a mouse and external key board for your home setup.
You can share the screens with the PC (generally they have multiple inputs) but you'll probably swear quite a few times when you use the wrong keyboard and / or mouse if you do. Having dual screens is really helpful, but you can of course do without. You should prefer matte-screens for development, but I'm not sure if that mixes well with your video editing as matte screens do take some color / brightness away.