None of us (apart from a few exceptions) start off as photographers. We usually have another profession and photography is a hobby at first. Knowing how to use your other skills in your photography business can help you stand out or at least save you some money.
The Computer Kid
For as long as I can remember I’ve been into computers and technology. I broke computers so I could fix them; learned some coding, some server management; and so on. I guess I’m (or was) what you can call a Jack of All Trades in IT. That means I was never an expert on almost any part of it, but do I know a little bit of everything. The good side of it is that I know how to ask the questions. So I believe there’s nothing much I cannot do, because if I don’t know how to do something, I can do some quick research and get things rolling.
Why does that matter?
Well, I run lots of photography websites (including this blog) as part of my business, plus other websites I built for friends and others not related to the photography industry, at all.
In 2003 I built a website for classifieds, much like what you might know as Gumtree, but focused on my hometown in Brazil. The site had lots of different versions throughout the years and the current one was written in 2011. I did some coding on it here and there after that but just for bug fixes or new features and whatnot, so it’s obvious how old the code is.
For that reason, this website needs to run in a very old system environment, and I cannot run my modern websites there. It was last hosted in a server I rented in Dallas with Limestone Networks, after being with Slicehost that was sold to Rackspace and so on. Limestone Networks is, by the way, the best hosting company I’ve worked with. The cost to run this server was U$89 (eighty nine US dollars) per month. It was ok when the website was making any money, but with Facebook launching Marketplace, revenue started to decline rapidly and eventually the website was barely paying for itself.
On the other side of the spectrum, my other websites were running on VentraIP, a very good Australian hosting company. Problem is, being CPanel (a control panel that makes it easier to run websites without needing access to the whole server), costs kept going up.
So at the start of the covid-19 pandemic I was looking at a A$250/month cost.
With no work in sight, that had to change.
Building something from nothing
It was then time for me to look at alternatives to save at least part of that money. That Brazilian website needs a custom build server so no cheap hosting server will be able to cope with it. All the other websites need a decent performance server so the cheap alternatives will not do for those either.
Building my own solution was my only choice. Still, these things need to be connected to a reliable Internet connection.
- Costs can be very low;
- Full control;
- I build it for my needs.
- It’s a lot of work, very time consuming;
- If not done well, can have lots of security issues;
- I have to stay on top of patches, fix problems as they occur, etc;
- Reliable Internet can be expensive.
A LOT of research has to go into something like this. See, my problem was not building a server to run websites, that’s easy. My problem was to run TWO separate servers with a single IP address, with different domain names pointing to each server.
Oh, yes, a dedicated static IP address is needed. Again, if every domain name was pointing to a single server, I could easily use free or cheap Dynamic IP DNS services, like No-IP or DynDNS.
Researching the costs
After researching dynamic IP solutions it was pretty clear to me that wouldn’t do the job. So I contacted my Internet Provider and they had a “small business” option, which would give me the same speeds I already had but with a dedicated static IP for $20/months extra. That still leaves me with a $230/month saving.
I also need hardware. Building a reliable server with good performance can also be very expensive. Depending on the OS you choose, that can be another cost.
The servers OS are Linux, as that what I always used for my web servers. The Brazilian website needs to run on a very old version of Debian and it’s very difficult to get something that old – and the old packages I need – running. For my other websites I like to go with Ubuntu. These are free open source systems so there’s not cost there. But I also don’t want two physical servers so my plan was to run them as Virtual Machines on a Windows environment.
I could easily do that with Windows 10, but for reliability and security if I could run Windows Server, that would be much better.
Looking for the most affordable option
Now that I had a pretty good idea of what I wanted to do and how, it was time for me to reach out to friends from my days in IT and see if I could get my hands in some old but good hardware, as well as licenses not needed anymore.
Companies are always recycling equipment so, why not?
I got my hands on some pretty new desktop hardware with some server grade stuff inside, plus a licence for Windows Server. A HP Desktop computer with a Core i5 processor, 16GB of RAM, a 200GB SSD to run the OS plus a 600GB server grade fast HDD. Now all I needed was some more storage, and I happened to have an extra 4TB external drive for backups, and another external 240GB SSD I could use for parts of one of the server that needed more storage. But I needed more, so I purchased another external 1TB SSD so I can host my educational videos here as well. Oh! Let’s not forget the UPS, in case the power goes down.
So considering I got most of the hardware for free and had part of the other stuff I needed, I only had to spend $154 for the 1TB SSD and $89 for a small UPS.
Hardware and licensed software sorted.
Time to build
Luckily my friend got the Windows Server up and running for me already. That saved me some time and he’s an expert on that, so that was great!
Building the first Virtual Machine was quite easy, Ubuntu 18 being so current and easy to install and setup. The second VM was harder. Way harder. Finding the version of Debian I needed was easy, getting it up and running also easy, but there are very few repositories still around to get everything I needed installed there so there was a lot of manual work and hacking to get it to work. I have done this before, with the current server running from Limestone’s datacentre, but still, not easy.
Eventually I got that done and running and it was time to get some subdomains pointing to my brand new dedicated IP address. For that of course, I had to send all the traffic getting to my router, to one of the two servers. I decided the main server would be the Ubuntu one, for security reasons. It servers as a good firewall to the other server considering how old that other system is.
All traffic getting into Ubuntu, there is where I distribute the connections to different websites. Any modern website stays right there, so no problem, but I need to send the traffic going to the Brazilian website, to the other server.
That was another very hard feat to accomplish, so before doing that, I started migrating all the websites that would stay on the first server. This way, I could close my VentraIP account and start saving money straight away.
Then once that was done and the Brazilian website, which is massive, was already mirroring the one from Limestone Networks, I could take my time getting the traffic pass-through to work.
The hardest bits of sending traffic from one server to another were logging and SSL Certificates, but I found the solutions I needed for that as well.
From the time I got the hardware to the time I completed the migration of all websites, I worked around the clock to make it happen.
The whole job took two weeks to complete.
Right after completion, I started to regret a little bit. The NBN in my area became extremely unreliable and that meant my websites were down a lot and there was nothing I could do. But that eventually fixed itself.
Servers have been running smoothly, I have more resources than I need for the moment and everything is easily upgradable and, if I need some day, I can move the two servers to new hardware.
For the months after, I work on them here and there, always making sure systems are up to date as possible. To avoid being on them all the time, I built my own monitoring system I can access from anywhere. In fact, I repurposed an old iPhone 4S as a little monitor on my living room, so I can easily see if something is wrong (quite a few numbers there and if any number gets bigger than it should be, they turn red). And of course lots of email and SMS alerts if anything is down or behaving the wrong way. I also decided to cap the upload speeds from these servers to 16Mbps as there’s no need for more speed than that and let’s not forget I still need to be able to use my home Internet!
So that’s it. Although it wasn’t an easy job, I managed to use my other skills to save my photography business $230/month! I wasn’t exactly busy so why not? Now I have full control over my websites, can have as many as I want and do whatever I want with them.
Of course, this is one of MY stories of how I used other skills to do something for my photography and I would not advise anyone without the knowledge to go out and try something like this. From time to time I get hackers attacking my servers, which to me is good fun (fighting them that is) but it can be very stressful to anyone who doesn’t enjoy a bit of that!