The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
The question is: Have you made yourself dependent on the results of that 15 minute build to go on with your next task?
If you deliver a submodule that is syntactically correct, passes basic (read: fast) module tests, and honors all external interfaces, chances are that the best you can do is to go on to the next bug fix or functional extension, without waiting for the system build to tell you that everything is OK.
What is "serious" project? The place where you drop billion classes and believe it will work?
Man, I made "serios projects" like security system for access control (fingerprints, face recognition, NFC cards, locks, zones, etc). There was enough code, but hell... none of my projects compiled above 3 seconds! Maybe because I used C# ?
Pity C++ boys... they use ugly language with ugly ideas in compiler and have to wait minutes on elementary projects.
In this context 'serious' was there to pull OP's leg...
The big project itself made of nearly 200 separate projects, and while on my local machine I may compile a handful the most (several seconds) the background build compiles all of them to create a homogenous build that at the end deployed to a test server...
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
This is one of the reasons every time I quit smoking its coding that gets me started again.
Especially now that I don't have to worry about build times anymore because my machine is so fast, but I have to upload megabytes of firmware code via serial UART at only 921600 baud every time i make a change or two. That gives me just long enough of doing nothing that a smoke break is perfect.
Nag - Nag, Quit. My wife's mother at 72, her sister at 46!! COPD. Ugly.
( Note, I have been told that ridiculous doses of B vitamins make nicotine taste awful. )
( Who was it that took up tending a plant in his pipe? )
My first autopsy was a 64 year old fellow with Black Lung
My second autopsy was a 48 year old who had been smoking since age 15
If I showed you a photo of both these fellows you could not tell much difference
But I guarantee you who smoke or vape would quit
My build times are about 30 sec on a Windows 7 64 bit 64 bytes or RAM i7 Xeon 3.2 processor
but I only use Visual Basic Net with SQLite Data Base
If you have a proper IDE and build system, and not the least: a well designed project structure, you modify and develop your submodule with incremental compilation and linking of that submodule.
Absolute rule: You never commit any code that is not syntactically correct or violate coding rules (lint style, or whatever you use for static code analysis). If your system is well structured, and your tools are good, you might spend the time having another sip of coffee, not much more.
Good rule: The commit process includes running basic module tests - a subset that runs through all relevant functions of a 'normal' code run, although not with the full set of all corner case inputs.
So you commit your code, knowing that on the build servers, it will not cause any syntactic errors, and no logical errors for the standard usage cases - at least not at the module level.
What do you do? You go on to the next issue to be handled. The next bug to be fixed, or next extension to be implemented. If it turns out that the complete project build causes errors that are not of an integration kind, then you certainly should have a look at your tool setup. That shouldn't happen.
Even for lots of integration issues, usually a lot could have been detected pre-commit. Details depend a lot on IDE/build tool details. And, of course on discipline within the development team, e.g. regarding header files, if you use such a language. Treating interface definitions as immutable. Things like that.
I am not talking about common practice. More like an ideal. But 'best practices' working habits can get you quite close.
Greetings and Kind Regards May I please inquire how you spend your time while your project is building? As for myself I twiddle my thumbs or watch a portion of a Star Trek episode or stream music or merely surf Cheerios
Bastard Programmer from Hell
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
Why don't you spend that time writing a document for management? Rather than compiling locally It might be cost effective for your employer sets up a build server. That way you can continue coding while your project builds on a remote server.
I am a lone programmer working from home and do not have the knowledge to set up a build server but thank you for the suggestion but as my builds are in the five minute range I am not sure it is needed in my situation Thank goodness I do not have to write documentation for management
That depends on what project & what platform. The stuff I work on in Delphi or C++ builds fast. With precompiled headers for C++ anyway. Without them, I might just as well go back to my company's DOS-based product which I also maintain. I got this witty comic printed & glued to the side of the monitor attached to that DOS-based system https://xkcd.com/303
solve a problem in another project (eg if there's an issue or just something I want to implement in one of my personal projects)
check up on Twitter
You could also use the time to listen to a section of an audio book (eg from Audible) - I tend to use my Audible book time during commutes & garden work.
The trick is being able to find something that you can switch to for that time which doesn't run over or dramatically pull you out of the focus you need to complete your current task. If possible, as mentioned elsewhere, move on to the next task.
If you say that getting the money
is the most important thing
You will spend your life
completely wasting your time
You will be doing things
you don't like doing
In order to go on living
That is, to go on doing things
you don't like doing
"build time"?? emm... are you building on PC XT or use punched cards? )
I use C# in VS2019, my "build time" barely exceeds 2-3 seconds. What I do during that priceless time? Oh, I can breath 1-2 times.
I'm absolutely serious and I still have no idea HOW you can build smth for minutes.
My rule: ONE current project + referenced DLLs. If I improve two projects - OK, both of 'em include in solution. But even in that case all compilation is quite quick to do smth else.