News for hackers. Stuff that matters.
Re:Ask HN: Big software teams, how do you manage your comput... by contingencies on Monday August 01, 2016 @11:06PM (#12207613)
What part of git + commit-based CI/CD processes doesn't scale?
Re:Ask HN: Big software teams, how do you manage your comput... by abrookewood on Tuesday August 02, 2016 @12:02AM (#12207775)
Git isn't going to manage the licences for commercial software and your operating system updates ...
Re:Ask HN: Big software teams, how do you manage your comput... by jdubz_ on Tuesday August 02, 2016 @12:16PM (#12211007)
This. I think people were too quick to judge the OP as an idiot. He's not talking about your applications. He's talking about physical developer hardware. The laptop sitting in front of you.
Re:Ask HN: Big software teams, how do you manage your comput... by contingencies on Tuesday August 02, 2016 @10:35PM (#12215179)
Nobody called the OP an idiot.

The consensus is that physical developer hardware is best managed by developers.

The 'problem' of managing 'large numbers' of 'commercial software licenses' is not a problem with automation; unfortunately it goes against the grain of developers managing their own hardware.

It seems the real problem in the OP's organization is management unwilling to delegate and constantly searching for centralized solutions to trivial 'problems'.

Re:Ask HN: Big software teams, how do you manage your comput... by cheez on Monday August 01, 2016 @11:14PM (#12207632)
So what you're saying is each machine would be a build slave? Interesting idea.
Re:Ask HN: Big software teams, how do you manage your comput... by contingencies on Monday August 01, 2016 @11:27PM (#12207676)
Nope.

Normally in a centralized system you would hook up CI/CD processes to dedicated infrastructure, so that when developers commit to your RCS/VCS server (github, gitlab, whatever else), builds and tests are automatically run.

This infrastructure may be a dedicated system, a cluster, or outsourced infrastructure (real or virtual).

Because git (or any other RCS/VCS) is a well defined formal interface between the developer and the rest of the development-related business processes (automated or otherwise), it means individual machines can just be user managed, which developers tend to prefer.

It's worth mentioning that there is a school of thought that builds or tests that take longer than a few seconds on a developer's machine are undesirable from a workflow optimization perspective and may be indicative of a non continuous delivery (CD) capable codebase, with probable features such as knowledge silos ("only that guy knows"), undeployability, low quality, lack of project visibility, infrastructure tie-in and late defect discovery.

Re:Ask HN: Big software teams, how do you manage your comput... by RealityVoid on Tuesday August 02, 2016 @04:30AM (#12208518)
While a few seconds is unrealistically fast, if you ask me, I did notice that long testings duration is very detrimental to the quality and testability of a code base.

If you have to wait 1h for testing feedback it kills the development inertia.

And so do slow development tools, compiling something for 2 h and then getting negative feedback is not cool, and yet this is something I've seen happen at my current job and it drives me insane.

Re:Ask HN: Big software teams, how do you manage your comput... by contingencies on Tuesday August 02, 2016 @10:52AM (#12210363)
compiling something for 2 h and then getting negative feedback is not cool, and yet this is something I've seen happen at my current job and it drives me insane.

You could consider an on-demand cloud-based compile farm, or incremental builds with snapshots.