I recently spent some time getting a client up and running on rails so that he could run the (very simple) project I had built over the previous couple of weeks.
It really brought home to me how many different things needed to be up and running and working together.
Each of them take a chunk of domain knowledge.
This is running on MacOS - for this particular app. Here were some of the systems/apps he had to get running
- Install Postgres (after we gave up trying to get mySql running on his machine)
- Rails (!)
- Foreman (to run rails, redis, active jobs)
and rails 6 adds Yarn, Webpacker (Node???)
and that’s before you throw in things like Turbolinks, ActionCable, etc
I started using rails about 12 years ago and have used it for support projects on and off. I spent almost a whole year working on a rails project about a year ago.
This is definitely a secondary realm for me - but it isn’t an unfamiliar one.
Nonetheless, I frequently find myself lost in the sheer scope of things I need to know about. Adding Yarn and Webpacker has been a step too far for me (so far). It’s just another set of large complex, powerful tools.
It would be great if they just sat working magically in the background without me having to know much (or anything) about them - but that doesn’t seem to be the case.
When I tried to upgrade to Rails 6, it felt like I was supposed to already know about yarn, webpacker - what they do and how to use them. I don’t.
I realise this isn’t very focussed, and I know that all these tools are there for good reasons, but I thought it might be helpful to throw in the perspective of someone who uses Rails quite a lot - but who isn’t immersed in web code. There is a lot of stuff which seems to demand knowledge from me.