I live in the terminal and opening files with vim is the primary way I interact with them.
> Do you not just open the project once at the start of the day and then continue working?
I mean I do this too
> projects which take minimum 40 minutes to build
This sounds problematic and a whole different category of problems.
Don't you have partial compiles? Parallel compiling? Upgrade your machine?
But it's not just startup time. I use less RAM, less CPU resources, jumping through tags is instant, working through the debugger is instant, opening new files is instant, fuzzy searching my system is instant. It sounds like the program you're working on and your editor are fighting for resources and I've never faced that problem with vim
>>Don't you have partial compiles? Parallel compiling?
We do. Without it it it takes over 3 hours for a full project build. Normally if I change one line of code and hit "run" it takes ~10-15 minutes for the app to start, depending on which file I changed.
>>Upgrade your machine?
It's a 64 core/128 thread core Threadripper workstation with 256GB of ram, so not many upgrade options from that.
It's a huge C++ project, heavily templated, that's kinda normal. My previous 2 projects were also like this.
Lol this isn't unique nor out of the norm - most big C++ projects are like this, and certainly every one in my industry(video games), unless you're trying to make an argument that C++ is somehow not commonly used. I even worked on a small indie game in C++ and it took 5 minutes minimum to compile.
C++ is common, but game programming definitely isn't the norm.
And 5 min is very different from 40 mins. Don't pretend a factor of 8 isn't insignificant
I've also worked on systems which are entirely written with template metaprogramming. This is definitely not the norm. Though that code was highly focused on optimization, as we were writing for HPC environments (extremely heterogeneous hardware). Sure, a full compile could take quite some time but doing a full compile, or even compiling a decent portion, when developing would be insane. A partial compile of a few minutes usually meant my time was better spent mucking about with the cmake and build files because incremental testing sped up development and your PRs aren't going to be merged quickly if they take an hour to verify if they even compile.
>>C++ is common, but game programming definitely isn't the norm.
I mean, last time I checked there are hundreds of thousands of programmers working in this industry, and video games are a bigger industry than movies. What's not the norm about it, exactly? I imagine there's more programmers out there making video games than making accounting software, for example.
>>And 5 min is very different from 40 mins. Don't pretend a factor of 8 isn't insignificant
I'm sorry, I'm confused. Did I ever imply otherwise? Maybe let me say it again, clearer - so far I worked at 2 big AAA studios, on 5 big AAA franchises, in 4 different engines. All 5 of those had those multi-hour compilation times unless you used something like Incredibuild or Fastbuild, and every single one of them had a startup of around 10+ minutes if you made any change to the code at all, just for VS to finish compilation and linking. I also worked at a small indie studio, with its own C++ engine, we had maybe...200 files max? That project took 5 minutes to build. Don't know where you got the idea that I'm saying factor of 8 is insignificant.
>> your PRs aren't going to be merged quickly if they take an hour to verify if they even compile.
Hmm at the current project the time from me submitting a change to it actually being accepted is ~6 hours. On my previous projects I think the fastest I've seen has been around an hour for a very very quick preflight. But then all the tests also have to pass which takes a lot of time.
>>ure, a full compile could take quite some time but doing a full compile, or even compiling a decent portion, when developing would be insane.
Right, but you have to do this at least once when you get latest, normally in the morning I grab latest and have to build around ~9000 files. If I make a change in the gameplay code it might have to recompile ~200-300 files because of the dependencies on all the associated systems.
I live in the terminal and opening files with vim is the primary way I interact with them.
I mean I do this too This sounds problematic and a whole different category of problems.Don't you have partial compiles? Parallel compiling? Upgrade your machine?
But it's not just startup time. I use less RAM, less CPU resources, jumping through tags is instant, working through the debugger is instant, opening new files is instant, fuzzy searching my system is instant. It sounds like the program you're working on and your editor are fighting for resources and I've never faced that problem with vim