News for hackers. Stuff that matters.
Re:Tracking developer build times to decide if the M3 MacBoo... by jiggawatts on Friday December 29, 2023 @04:55PM (#38810700)
Re:Tracking developer build times to decide if the M3 MacBoo... by mdbauman on Friday December 29, 2023 @05:05PM (#38810814)
This xkcd seems relevant also: https://xkcd.com/303/

One thing that jumps out at me is the assumption that compile time implies wasted time. The linked Martin Fowler article provides justification for this, saying that longer feedback loops provide an opportunity to get distracted or leave a flow state while ex. checking email or getting coffee. The thing is, you don't have to go work on a completely unrelated task. The code is still in front of you and you can still be thinking about it, realizing there's yet another corner case you need to write a test for. Maybe you're not getting instant gratification, but surely a 2-minute compile time doesn't imply 2 whole minutes of wasted time.

Re:Tracking developer build times to decide if the M3 MacBoo... by norir on Friday December 29, 2023 @07:19PM (#38811749)
I get what you are saying but I still think fast compilation is essential to a pleasant dev experience. Regardless of how fast the compiler is, there will always be time when we are just sitting there thinking, not typing. But when I am implementing, I want to verify that my changes work as quickly as possible and there is really no upside to waiting around for two minutes.
Re:Tracking developer build times to decide if the M3 MacBoo... by perrygeo on Friday December 29, 2023 @07:16PM (#38811736)
Yes! Pauses allow you to reflect on your expectations of what you're actually compiling. As you sit in anticipation, you reflect on how your recent changes will manifest and how you might QA test it. You design new edge cases to add to the test suite. You sketch alternatives in your notebook. You realize oh compilation will surely fail on x because I forgot to add y to module z. You realize your logs, metrics, tests and error handling might need to be tweaked to unearth answers to the questions that you just now formulated. This reflection time is perhaps the most productive time a programmer will spend in their day. Calling it "wasted" reflects a poor understanding of the software development process.
Re:Tracking developer build times to decide if the M3 MacBoo... by chiefalchemist on Friday December 29, 2023 @05:51PM (#38811166)
Spot on. The mind often needs time and space to breathe, especially after it's been focused and bearing down on something. We're humans, not machines. Creativity (i.e., problem solving) needs to be nurtured. It can't be force fed.

More time working doesn't translate to being more effective and more productive. If that were the case then why are a disproportionate percentage of my "Oh shit! I know what to do to solve that..." in the shower, on my morning run, etc.?

Re:Tracking developer build times to decide if the M3 MacBoo... by majikandy on Friday December 29, 2023 @06:07PM (#38811299)
I love those moments. Your brain has worked on it in the background like a ‘bombe’ machine cracking the day’s enigma code. And suddenly “ding… the days code is in!”
Re:Tracking developer build times to decide if the M3 MacBoo... by chiefalchemist on Saturday December 30, 2023 @11:04AM (#38816251)
You might like the book "Your Brain on Work" by Dr David Rock. In fact, I'm due for a re- read.

https://davidrock.net/about/

Re:Tracking developer build times to decide if the M3 MacBoo... by seadan83 on Saturday December 30, 2023 @12:59PM (#38817148)
I agree to some extent. Though, I don't think it has to be a trade-off though. After a sub-5 second compile time, I go over to get a coffee to ponder the results of the compile rather than imagine what those results might be. Taking time to think is not mutually exclusive to a highly responsive dev process.
Re:Tracking developer build times to decide if the M3 MacBoo... by newaccount74 on Saturday December 30, 2023 @12:06AM (#38812931)
If you can figure out something useful to do during a two minute window, I envy you.

I really struggle with task switching, and two minutes is the danger zone. Just enough time to get distracted, by something else; too little time to start meaningful work on anything else...

Hour long compiles are okay, I plan them, and have something else to do while they are building.

30 second compiles are annoying, but don't affect my productivity much (except when doing minor tweaks to UI or copywriting).

2-10 minute compiles are the worst.

Re:Tracking developer build times to decide if the M3 MacBoo... by behnamoh on Friday December 29, 2023 @08:54PM (#38812221)
I disagree though. If a task is boring and repetitive, I just won't ever do it. So the comparison for people like me is:

    "spend X time to automate this task vs not do the task at all". 
Whereas the xkcd is like (n = frequency that you do the task):

    "Spend X time to automate this task that takes Y×n time normally and get it down to Z×n time, vs spend Y×n time to do the task"
Re:Tracking developer build times to decide if the M3 MacBoo... by faeriechangling on Sunday December 31, 2023 @05:14AM (#38822978)
Even where a task being automated is likely to be done, automation can mean it’s done more reliably or quickly. Automation is generally needed to advance to greater and greater levels of complexity, time-efficient or not.

Also not all minutes have equal value, spending a few hours to save 5 minutes in an emergency with automation can be well worth it.