3 ms·
This is interesting. While I'm going preface most of these tools with having not used them to their full extent, to me, they still seem to solve very real world
by deathanatos 8y ago
This is interesting. While I'm going preface most of these tools with having not used them to their full extent, to me, they still seem to solve very real world problems:
Kubernetes: I've actually not used kubernetes yet; I do hope to, sometime in the future. I do see the value in managing distributing the images/code required for a job to the machine that will eventually execute it, and distributing jobs automatically, as opposed to by hand. I've worked with a system similar to Kubernetes, and having used it, I understand the appeal and miss it greatly. Docker images (which I understand Kubernetes to use) also greatly simplify my life as a developer; generally, the actual VM my stuff is deployed to is significantly out of date (e.g., it's CentOS or Ubuntu) and this allows me to, e.g., get a very recent version of Python 3. It greatly pushes one toward (IMO) not having snowflake (unique, hand-crafted, but can't lose them) machines.
Node: I don't use Node server side; I mostly use npm for managing fetching client-side dependencies. Otherwise, this would be either committing them directly (I dislike mixing third-party and first-party code; it encourages ad-hoc fixes/changes, and doesn't get updated regularly) or a bash script to fetch them (more painful to maintain in the long run than npm, IMO). It also fetches indirect dependencies, so I don't need to figure out that this project requires that dependency, etc. Also, Babel is a godsend of a tool for dealing with browsers that haven't implemented the latest ECMAScript features. In particular, JavaScript modules are wonderful compared to life without.
React: I've not used full react; I've actually not used it at all for lack of time. I would like to use it, as building up UI elements via the DOM APIs is downright painful. Having not used JSX at all, I can completely understand why someone would invent JSX.
Terraform: We didn't use this for a while. AWS resources where managed by hand; nobody would know why something was in a particular configuration, and configurations between production and non-production environments would be different, with no clear rationale as the why. TF at least allows comments and a history of changes (when version controlled), and the language helps keeps things consistent where they should be.
- meesterdude 8y agoFor every one of of the things there is a simpler approach that not only works, but is more robust and will better serve smaller projects. It's not that they don't solve problems, but that there are different perspectives of the problem space entirely - often exceeding simply technical justifications and taking a larger look at it. If you've got a kubernetes problem, go for it. But there is a lot of value in simplicity too.