Examples: Difference between revisions

From ym2149.org
Jump to navigationJump to search
No edit summary
No edit summary
 
Line 21: Line 21:
** Groovy in general, which claims to be a Pythonic Java but does not come across as Pythonic
** Groovy in general, which claims to be a Pythonic Java but does not come across as Pythonic
* Helm, a glorified templating tool that fails to be DRY for trivial tasks and gets in the way when you try to do something non-trivial
* Helm, a glorified templating tool that fails to be DRY for trivial tasks and gets in the way when you try to do something non-trivial
* Terraform has the right idea of being declarative but is otherwise nothing special
** state can get out of sync with reality, causing deployments to appear to succeed while reality still out of sync with codebase
** diff plugin easily confused by duplicate templates
* Terraform has the right idea of being declarative but is otherwise unsophisticated
** hacks needed to work around one plan and apply per config


[[Category:Programming]]
[[Category:Programming]]
[[Category:Wisdom]]
[[Category:Wisdom]]

Latest revision as of 11:17, 19 April 2024

Bad consensus

  • A majority can agree and still be wrong
  • Checked exceptions, unpopular because of a blog post
    • Now the compiler can tell you what params your function takes and what it returns, but not how it can fail
  • Markdown, popular despite having significant trailing whitespace
    • It happened to exist at the right time
  • Continuous integration builds that can't be reproduced locally, or on anything other than one specific CI service or imperfect clone
    • Jenkinsfile, github actions
  • Procurement based on a tool getting you up and running in 5 minutes, when that's a negligible part of the total cost of the project even if it's 2 weeks
  • Logging turned down to a trickle, which makes incidents near impossible to investigate

Triumphs of marketing

  • Create or exaggerate a problem, solve it just well enough to ensure vendor lock-in, collect support money
  • IntelliJ IDEA, which claims to beat Eclipse
    • In some ways it does, thus developers never see the benefits of Eclipse's remarkable built-in compiler
  • Gradle, which claims to be a better Maven
    • In practice it solves none of Maven's problems while creating some of its own
    • Groovy in general, which claims to be a Pythonic Java but does not come across as Pythonic
  • Helm, a glorified templating tool that fails to be DRY for trivial tasks and gets in the way when you try to do something non-trivial
    • state can get out of sync with reality, causing deployments to appear to succeed while reality still out of sync with codebase
    • diff plugin easily confused by duplicate templates
  • Terraform has the right idea of being declarative but is otherwise unsophisticated
    • hacks needed to work around one plan and apply per config