What would be good to learn if I want to do small to mid scale freelance webdev work?
I used to do Wordpress development and the short of it is, it wasn't profitable enough to be sustainable for me. These days, web development is more of a side gig for me and I'm no longer using Wordpress. I don't necessarily need to make a full-time income with it and I'm certainly not looking for high pressure, high stakes projects, but I was wondering where the best opportunities are for freelancers these days and what would be best skills/technologies to learn for those sorts of jobs?
Also, as a more specific side question, are things like Hugo and Jekyll much in demand these days as far as freelance goes?
I have a GitHub action that builds and deploys the site on every commit. No database, no running server, just html/css/js. If you're curious about the setup or have any questions trying to do the same, lemme know!
If you’re looking for one thing to help be productive, it’s probably Rails. If you just want to knock something out fast and aren’t really interested in web tech itself, Rails provides the fastest “time to usable website” of any framework I have personally used.
It’s not my favorite bit of web tech by any means (I really like Elixir/Phoenix and Clojure, and Rust is my bread and butter today) but I also don’t dislike it. I used rails in the past for rapid prototyping and it is pretty impressive just how fast you can get a working product with minimal learning.
Is one of the other framework's you've used Django, and if so, how do they compare? I've never used Rails, but as far as I know, it's a similar concept, with batteries included and MVC architecture.
If there isn't anything else that makes it better, I would personally recommend something like Django just because it's Python, which isn't going anywhere anytime soon. If you are having issues with Python, the answer is pobably a google away, and if you want to do something other than webdev, it's more likely to be in Python (AI/ML, data science, etc. mainly), including if you want to integrate something into a website. As far as I'm aware, Ruby's pretty much only been used with Rails, and both are waning in popularity - as you say, you yourself have moved away.
That being said, I don't know Rails so that's all conjecture. If you tell me it's got something Django doesn't that makes it easier to use, I'll take that back.
I actually worked with Django for years. At one point I was a technical reviewer for the book Two Scoops of Django.
Today I basically refuse to go back to Python (and by extension Django). I am not a fan of the Python community, and I am not a fan of the “configuration over convention” philosophy that Python tends to take.
My experience is that Rails apps are infinitely easier to jump into and understand because convention is enforced at the framework level, and this seems to have influenced the Ruby community in very positive ways. I always seemed to find constructive, useful answers faster from the Ruby community than I ever did from the Python community.
The worse dev job I ever had was doing contracting for Django apps. Every single Django app that was brought to us was configured, architected, organized, and deployed in completely different ways and it made just getting to the actual business logic far too difficult.
Between Ruby/Rails and Python/Django it’s Ruby/Rails all the way.
If you're willing to do maintenance, get a resller hosting account and sign people up for hosting on it. Or just get cheap hosting somewhere. Something that would be maintained for you (e.g. shared hosting). Then it also becomes a source of [mostly] passive income.
Then you would be able to do whatever type of sites you want. Like others have said, static sites of some sort. Learn a common templating engine and javascript so you can work with a bundler like Webpack that will do some automation for you.