I think that folks here might be interested in my current tech project. Since I am still a contractor, I am taking a voluntary break from full-time client work to build my own software, with the hope of turning something into an income stream.
Some of you may recall that I was building a recruitment search engine. I very much believe that idea still has legs, but I wonder if I bit off more than I could chew, so the idea is postponed a bit while I build something rather simpler. I am minded presently to build something in three months, rather than committing to something that could take substantially longer.
My current project was inspired by one of the most common difficulties I see on Stack Overflow - beginner programmers trying to develop and deploy simple email-based forms on a LAMP server. That ought to be the easiest thing in the world, but email is a bit of a “black box” - you use a program to send an email, and then try to debug it. Did the
mail() function get called? Were the parameters correct? What PHP system did it talk to to hand off the mail? Sendmail? SMTP? What special idiosyncrasies does your terrible consumer-grade host suffer from when it comes to sending email? Has it got caught in a spam trap? etc.
So, I am building a little system to help with that. It presents a web-based wizard-style interface to take a bunch of details, and then deploys a working and tested email form on the user’s server. You can even sign up for a completely free LAMP host these days, so I’m using one of those as a test bed.
My system works by allowing the user to deploy a sequence of test scripts to check the system meets the minimum server requirements, what email sending protocol to use, and then finally deploy a real app and send a test message to it. My intention is for the base system to always be free, and then to charge for add-ons.
The basic system will allow users to send an email to an admin address, and another email to the user, customisable in a text-based designer. The deployed form will have a number of fields, and optionally a CAPTCHA device. Upon clicking a button it will call the freshly deployed script via AJAX to send the email(s). It’ll add a rate-limiter too, to stop spammers having a field-day.
My intention is that once users are happy with their basic system, they can use it as a base to hack upon further if they wish.
So, that’s the free stuff. I’ll run that for free for a few months and open a dialogue with users to see what they want. I think people would pay £5 for a MailChimp/CRM integration, and the same for a WordPress plugin. A “pro” account for WordPress designers, so they can log into my system and it remembers all their client’s deployment details/choices, might also be worth looking at.
I am as yet undecided if my best pricing model is low-cost, high-volume, or whether I should be choosier about by customers and work on a higher-price model.
I’m a good way through the project, and it’s fun to build. I’m using a micro-services architecture, everything is split into Docker containers, and I’m using cool new stuff like Traefik. It’s just managed with Docker Compose for now, but I guess I will move to Swarm or Kubernetes once I have worked out what my deployment needs are. The front page is a SPA (jQuery, tell me off now) and mostly uses Web Sockets to communicate. I’ve not used WS before, but I love it. Pushing data to a web app, supported across desktop and mobile!
I wish I knew how to get user feedback without actually building stuff - I am rather envious of the cool kids in San Francisco who put up a holding page, somehow attract an email list of several hundred people based on nothing more than vapourware, and then build the damn thing in a week! So this post is partly my expressing interest in critical feedback.
Is there a market for people paying for automated deployments? Would beginners struggling to build stuff rather struggle on and learn, and suffer the security consequences? Would the culture of everything-for-free trip me up, and people would only use the free tier? Would people trust my system with their server credentials? Any thoughts welcome.