This is my personal experience. Others may have different recommendations.
I think this is too small these days to run a web browser, Slack, VS Code and a couple of somewhat heavy Julia sessions. So probably not less than 16 GB?
-i5 vs i7 core?
I don’t know if this is the most important metric these days. Look at benchmarks of specific processors. There are many competing factors here, e.g. number of cores, cache sizes, clock speed, energy consumption, price, AVX instruction support, etc. A slower processor with lower energy consumption and more cores might give you a better experience than a super fast one that heats up your laptop and depletes your battery in a couple of hours. But I am no expert here. Others may have better advice.
-is 512GB SSD enough?
Depends on how much hoarding you do, how many programs you have at any one time, how big these programs are, how much data you deal with, how many backups you keep, etc. So this is very person-dependent.
Get one with thunderbolt so that you can attach external gpu ( or simply use a cloud platform). Laptops with good gpu and large amounts of VRAM are expensive and you’ll be stuck to training small networks on a tiny 6GB laptop card. I encountered this issue where training a Yolo network I needed 10GB or VRAM for a relatively small batch size. A cheap used 12GB Titan X connected via thunderbolt did the job.
16GB or RAM is ok.
Some sort of SSD for storage.
In terma of CPU, don’t bother that much. Thin and light machines are usually thermal and power limited. I guess today you can find an 4-6 core I5 or some amd part for good price.
My honest advice? Don’t stress about the Ubuntu. I am working on my persona laptop which is a high end model an dual boots Windows 10 and the latest Fedora.
Regarding the laptop I have had several models for work and personal over the last three or four years. My biggest mistake was a work laptop - Microsoft surface with detachable touchscreen tablet, two GPUs - one in the tablet, one in the base unit. Sorry to say it was a boat anchor.
I would go for a light laptop any time, with a reasonable sized screen. Remember you WANT to take it around with you. So the Ultrabook form factor for me.
I would heavily advise USB-C connectors - and check that is a Thunderbolt port.
You will normally be working with an ext-ernal monitor and keyboard so USB-C is a godsend here.
You can work with a ‘dongle’ from Amazon - Ugreen is a good make. so leave your monitor plugged in and your normal USB keyboard. When you get home just plug in.
My home working setup at the moment is a Dell Latitude, what we call an Engineering model with 32 gigs of RAM. Remember you cant upgrade RAM on most models so go big.
I have a Dell Thunderbolt dock on the desk, which supplies power and has two monitors connected to it. Mechanical keyboard and mouse. I have a little USB hub on the Thunderbolt dock for easy connection of webcams, headsets etc.
You could consider using GPU instances on a cloud service too
I’ve thought about this as well and think, for my purposes anyway, I’d be happier with the smallest/cheapest form factor and kicking serious tasks to the cloud with Julia Run. I figure this saves me the upfront cost and I estimate compute costs to decrease in the future so I get to benefit from technology advances. Not sure if this is good for your use, but definitely something to consider.