Using VS Code Remote Development with Dell XPS 13
April 16, 2020
Configuring my XPS 13 as the perfect environment for Visual Studio Code Remote SSH!
Windows is alright for a few things in my life. Most of my time spent on my desktop is for gaming which while there is great strides made in the area of Linux gaming as of late, it is not gone far enough for me to go all in. When I think about it, beyond games and certain applications that just will not run in Linux, that is about as far as I go with Windows. When it comes to writing code and what have you, I have always been doing it in some form of Linux environment. Initially just in virtual machines on top of Windows, to eventually dual booting my desktop and then finally daily driving a Ubuntu laptop in college for final year. I eventually kept this up by upgrading from that laptop to the Dell XPS 13 Developer Edition in 2019.
I do not want to turn this into a laptop review, but I must say I do love this laptop. There is just an insane amount of power in here in this little, 13-inch form factor. Granted in work I’ve slowly been consumed by my MacBook Pro and while I nearly considered a personal purchase of one, just looking at the specs side by side in comparison with price at the time, I could not justify it. It will be around a year of using this laptop soon and having needed to daily drive it for a period being away from home, I can recommend it. But when I am at home, the idea of going on the laptop when I have my desktop with its comfortable mechanical keyboard and external mouse, what do I do then?
This is where the family of Remote SSH extensions in Visual Studio Code come in to play. If you have not heard of Remote SSH before, I do recommend looking it up. The basic idea is that rather than you work from your local machine, you can work from a remote server that you have SSH access to. It is a neat idea and certainly opens some opportunities. I previously had this configured on an AWS T3.Small instance and it worked beautifully, being able to go from my Windows desktop to this Linux environment and any other local machine I had configured. Inevitably there is some issues with it and I felt I wasn’t getting the most bang for buck out of my XPS 13 if I was just doing everything from a remote box. Also, I’ve yet to try doing Java development in VS Code and I do not feel I will. The love for IntelliJ is quite strong and my limited research into it came up with nothing as regards an equivalent Remote SSH feature.
So, what I ended up doing, was configuring the ability for me to SSH directly in to the XPS 13 from my Windows desktop. It is relatively simple in Ubuntu; you’re just adding the packages that would normally be in Ubuntu Server but taken out of Ubuntu Desktop (if they’re not there already). Then, it was just a matter of configuring ufw so that it would only allow SSH from the private IP address of my Windows desktop. After that, it was just a case of getting VS Code set up and I was done! I was able to retire the T3.Small instance quite easily since everything was backed by Git. Plus, since my code was now on the laptop, wherever I went as regards a personal trip, meant that everything I was working on was local and independent of network connectivity and firewall rule changes. It’s great to be able to do things from my desk, but if I need to, I can always get the laptop out and open a dedicated IDE from it if needs be.
The system is not perfect. Even over my local network, I can still get some noticeable input lag on the terminal for example. Using Remote SSH was just something that I decided to do to maintain a sense of a similar workflow from before. But nowadays I am starting to consider maybe I should just buy a small KVM switch or a dock for the laptop and work from it like that. It would eliminate the working over the network and say if there was a KVM, there wouldn’t be any extra peripherals needed. But for now, there is no need to spend extra money on such a configuration since for the most part, it just works!
Thank you!
You could of consumed content on any website, but you went ahead and consumed my content, so I'm very grateful! If you liked this, then you might like this other piece of content I worked on.
How I consolidated my cloud computing footprintPhotographer
I've no real claim to fame when it comes to good photos, so it's why the header photo for this post was shot by Dries Augustyns . You can find some more photos from them on Unsplash. Unsplash is a great place to source photos for your website, presentation and more! But it wouldn't be anything without the photographers who put in the work.
Find Them On UnsplashSupport what I do
I write for the love and passion I have for technology. Just reading and sharing my articles is more than enough. But if you want to offer more direct support, then you can support the running costs of my website by donating via Stripe. Only do so if you feel I have truly delivered value, but as I said, your readership is more than enough already. Thank you :)
Support My Work