• thesmokingman
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    2
    ·
    2 months ago

    While I’m all for opening up codebases after release and seeking contributions from constituents, the landing page has some terrible ideas.

    Similar applications don’t have to be programmed from scratch every time.

    Unless there are very solid guidelines that offer a lot of flexibility to do the opposite and code things from scratch every now and then, you get very pervasive legacy antipatterns. I have struggled to effect positive software change as an SRE at massive enterprises because of this idea. Conway’s Law does a good job describing how this stratifies code. I have also spent more than year trying to get disparate acquisitions on the same tech stack with ballooning requirements as everyone tries to get their interests in. I left that one without any real movement.

    Major projects can share expertise and costs.

    This goes against lean principles that see the best outcomes and exponentially increases the waterfall slog most government projects are. The more stakeholders the more scope creep. Your platform team can be shared; you don’t want your stream-aligned teams to get stuck in this mire. They need to be delivering the minimum viable solution for their project.

    Assuming the software is just released with an open license and the public can contribute, hell yeah. I have contributed to so many projects that I actively use in my day job and there’s plenty of shitty government software I’d love to poke at. The two things I called out require a serious amount of executive buy-in for developer tools and experience which turns into a project itself. In the private world most companies chicken out when they realize they’ve got serious cost centers just making development easier, even if their product is serious software development. I worked for a major US consultancy that talked this big game and dropped everyone the second they were on the bench. In the public sector? Fuck. It’s hard enough to get people to understand attack surfaces much less the improvements a smooth DevX with a great pipeline can provide.