As I am growing in the world of software development, it's becoming more and more clear that the experience is completely different for everyone. Sounds like it should be common sense, right?
That's just not quite true...
The only way that you'll be able to use just HTML and CSS to create a career doing freelance development would be to specialize in it. While there is nothing wrong with that in general, it will shut a lot of potentially lucrative doors for you.
That's just not quite true...
now command line tool, it only took a few hours to figure out. Hours, not days. You can also hook these up with Github Integrations so that your site will rebuild on subsequent code pushes. Check it out, now your doing CI/CD like a true DevOps engineer 😉
My favorite way to deploy my sites is through DigitalOcean. DigitalOcean provides a VPS service that is incredibly easy to get rolling. VPS solutions differ from JAMstack by building a completely private server instance within a cloud server(for DO, this is called a "droplet"). This means that you are not limited in the technology and softwares you want running on your servers!
For $5/mo, DO will partition you a Linux server instance, running whatever distribution you want, on a single virtual core, with 25GB SSD space and 1GB RAM. Pretty impressive, for the amount of versatility you receive - you can access the new server by simply running
ssh <your-droplet-ip> in your command line, and boom, you're in! And when I say you're in, I mean you have now remotely accessed your private server, and are now free to install whatever softwares and technologies you'd like! How cool is that?!
DO's pricing plans run up from there, but I still haven't found a need to go over their $10/mo plan for anything I've needed. If you'd like to give DigitalOcean a shot, you can use this link to get $100 free credits! Tell me you can't figure out how to use it with that deal, you won't even have any skin in the game!
DigitalOcean has a slightly steeper learning curve, as you will be using a Linux system via the command line. There are many resources for doing this online, and I will also be writing an article detailing how to set up your first droplet soon!
There's always more to learn - after you have your application running on whatever medium you choose, it's then time to take charge of your domains, set up SSL, and set up reverse proxies and load balancers. I know this all seems like a lot, but don't despair. If I can do it, you can definitely do it! One of the biggest skills a developer can have is the ability to search the web for answers to your questions, so when you get stuck, whip out the old Google and start researching!
Another hint I can give is keep notes the first time you work through anything you haven't done before. This will make it easy to reference later for steps to duplicate, and/or figuring out better ways to do things.
Basically, don't stunt yourself by just being satisfied learning one, or two, or even a few, different things. Continue to challenge yourself, continue to move forward, and learn something new every day. After awhile, you'll be able to decide what you really don't want to work on, and outsource just those little pieces. This approach will maximize the revenue that you'll be able to keep in your pocket for each project, rather than having to shell out for things that you never took the time to learn how to do.
Do you have any thoughts or opinions on this topic? I'd love it if you shared them in the comments - I'm sure I'll be able to learn something from you, too! If you're interested in the work I do, or maybe want to hire me for an upcoming project, jump on over to my website and use the contact form there!
Hope everyone's having a great day! Get out there and learn something new!