Pets are more fun than cattle... No images? Click here The Power of Having a ServerI just recently got some new folks on to beambloggers.com and if you want more folks in the Elixir and Erlang space to follow that's a pretty good source. If you blog about that stuff occasionally, join why don't you. A teaser for something that'll likely turn into blog posts when I tear some writing time out of my schedule: lawik/noted Actually, if you are good with visuals and either good with or want to learn Tailwind CSS and want to collaborate on a small project, get in touch. Business is at peak capacity right now. Can't complain. Our 9 month baby is crawling, super delightful. The cold is letting up a bit, my office toilet was fixed yesterday. Everything is pretty much trending in a good direction. I absolutely tortured my old computerA few hundred years ago I had a computer running a Celeron 300A. After it left active duty as a daily driver it was eventually put on server duty. I dubbed it Howard because I thought that sounded old. And it was old and slow. But I had my own server and I could do anything with it. It set the standard practice for me to basically always have a home server to play with. Today Howard would be obliterated if they as much as glanced at a Raspberry Pi 4. I used that server for way too long. Many developers I talk to have an interest in learning servers, deployment, operations or in general Linux. This would have been dubbed server admin once. If this is part of your ambition I think it makes sense to either set up a Raspbian on a Pi 4 that you can run stuff on or usually better if you have a salary, just pay a host like Linode for a normal Linux VPS. Have a server. Set it up with some stuff you need. Maybe run your personal website off of it. Whether you do LAMP stack, Java or Elixir you can run stuff on this slice of computer you rent and it can do things for you. There is no one perfect place to get started with learning servers. You just have to dive in. I find it helpful to have a specific goal in mind. I'd keep my first goal simple. "I want to be able to SSH into the server and edit my static website." Cool. It is achievable. You need to set up a web server such as Nginx. You can extend that a lot if you like with locking down the firewall a bit (learn some iptables setup), setting up password-less sudo perhaps, disable root account SSH and suddenly you have performed the typical tasks done to many production servers. Having a server you manage and screw around with is a good way to learn. There are guaranteed to exist guides for most normal things you might want to do with setting up services, databases, running specific self-hosted software, doing Docker things. And you are responsible for this one and if you screw up it probably only matters to you. And you get continuous access and exposure to a Linux shell. There's a certain amount of friction in getting started. I think it was both worse and better when I got started. I knew I was in for something rough because I printed manuals and burned CDs before installing Slackware for the first time. And then I spent hours at war with drivers. Everything was a bit of a struggle which meant lots of exposure to doing all sorts of things because otherwise nothing worked. When I got a working setup I'd been arms deep in it for an hour or two. With a VPS you have none of this. A blessing and a curse. You basically just have to face that prompt. An empty open questions about what you want to do. So bring an intent, no matter how small or simple. Without your intent the server does nothing. You put everything in motion. It is an act of creation. You can start small. There is so much you can learn. It has to start somewhere. But make that silicon get to work. So bring an idea of what you want to do. Keep the first steps simple. But get yourself a server and get going. It was a lot of fun for me. All in all this is probably one of the most sought-after technical skills I have built. Even in today's world of managed clouds this skillset has only become more useful, not less. Also, you can do so much for so cheap without the big platforms' special services. On this note though. I've considered writing some course material for this type of thing, if you think it would be useful to you or you know people to whom it would be useful, please let me know. I'm pretty sure there is some interest because the desire keeps coming up and I simply don't know where to send people. Would you or people you know be willing to pay a small amount for a clear guide on how to set up a decent server for production, get started with web serving, application hosting and some database setup? Please reply or email lars@underjord.io with any thoughts. I'm also on Twitter as @lawik. Thank you for your attention, I appreciate it. - Lars Wikman |