Hacker News new | ask | show | jobs
by Atotalnoob 823 days ago
Perhaps I wasn’t clear in my post. Templates to me means distributing them in a usable fashion, and all templates should be able to be used via invoking some binary and providing inputs/flags.

Similar to helm.

Right now, we are using dotnet new templates, which is .net’a way of creating new apps, yeoman for npm, etc.

No copying and pasting. Copying and pasting isn’t DRY and is currently ramped at my org, since we didn’t have any shared templates

3 comments

What’s the deal with templates? I make new projects infrequently. Templates save me little time. I spend far more time struggling to fix broken code, fitting existing code to new requirements, etc
Templates to me means distributing them in a usable fashion, and all templates should be able to be used via invoking some binary and providing inputs/flags.

I am wondering why nobody talks about using version control tools for templates. Git lacks the ability to replace variables and handle flags, but it allows to rebase a small micro service on top of the latest version of the template.

These are version controlled. We use semver and they are released using the languages package manager :)
And how do you update a project started with template x version 1.2.3 to template 1.3.4?
How often do developers have to make the same changes to their dotnet new templates? How often will they have to make changes as a result of the central team making an update to the central template that breaks their setup?

When somebody needs to use an escape hatch, how painful are you gonna make it to keep that escape hatch running?

So essentially in dotnet, when you create a new project, you run

Dotnet new templateName

Dotnet runs that template and out comes dotnet code.

That is what we have built and we consume internal libraries we created in order to keep people updated with changes.

But at the end of the day, it’s just dotnet code, don’t like what or how we did something? Go ahead and change it. It’s just regular code.

It’s similar to running “helm create {name}” or npm run create-react-app, but developed internally.

https://github.com/dotnet/templating/wiki/Available-template...