You are viewing a single comment's thread.

view the rest of the comments →

trentlapinski ago

Former startup CEO who sold for an exit, was one of the first people to bring responsive web design to WordPress.

Currently a VP at a cloud computing and container management and automation startup.

I'm well versed in business development, project management, web development, system architecture, and devops. Although I am more of a tinkerer big picture kind of guy, and no longer code or consider myself a programmer.

My immediate thought process from what I know so far is: is either get the fuck off Azure, or contact Microsoft and see if they're willing to sponsor Voat for ad space.

Secondly, you should be able to virtualize Voat's current setup in a Linux container (Docker) without having to really touch much of the existing code (even though you're running .NET). https://github.com/dotnet/dotnet-docker-samples

Once you get the .NET code base running in a Docker container you aren't married to Azure. All you need now is a host that supports Docker, which is pretty much every major cloud provider. Once you're running in a Linux container you can pretty much host anywhere. I would also probably de-couple the SQL database and put it in its own container so you can scale the DB separately.

To save money on cloud hosting I highly recommend OVH, as they charge about 40-50% less than Google Cloud and AWS, and have cheaper bandwidth, memory, etc. Linode, and LiquidWeb are other options to take a look at. Or if anyone else knows of a cheaper data center with high availability in multiple geolocations?

This is maybe a week or two of work for 1 highly skilled devops engineer, maybe less, and will cut the hosting costs in half pretty much overnight.

Potential solutions to look at Rancher.com, mesosphere.com, https://kubernetes.io, or even https://traefik.io which you could install at the tech stack level and use as a basic devops management platform (although I'd seriously take a look at Rancher or Mesophere first).

Once that's done you can move Voat to any major cloud provider without having to rewrite the core code right now.

Phase 2: Core code rewrite.

Obviously it should be discussed, but an open source language with a larger developer community is recommended.

I would probably go with a NoSQL based solution as well for the DB, but also needs to be discussed.

What I can recommend from a web development standpoint is essentially start the rewrite by building out a core micro-service architecture and REST API. I would then rebuild the front-end using React, or another popular Javascript framework. Then you can continue to use a container based approach by hosting the core API in 1 container, DB in another, and front-end code in another then scale and load balance each appropriately based on need.

Take a look at http://www.telescopeapp.org - hell its open source we may even be able to borrow some code or ideas.

The major challenge with a rewrite of this style is migrating the existing DB into a new DB, but its doable.

As I said, I'm not the person to program this personally, but based on my experience this is the approach I would take. I would also open source the fuck out of all of this, and I also have a few monetization ideas.

Phase 3: You could allow people to launch their own Voat websites and sell them as a service at their own custom domains. Figure out what the hosting cost is, and double the margin and sell it as a SaaS. Then use the core API to integrate everyone into a single login / account management system. This would also allow you to scale individual communities separately, and put the burden of fund raising and payments on the community organizers. Obviously you will still have free subverses, but this approach would give the large ones the ability to launch their own domains, and cover their own costs, sell their own ads, etc. Meanwhile, Voat.co itself is merely an aggregator, and universal account management system, and SaaS provider.

RiverWind ago

Thanks for chiming in, /u/trentlapinski.

I liked where you characterised Voat as an Aggregator and Universal Account Management System. I also liked how you raised one possible means of distributing Voat by having individuals (Moderators, perhaps) host Subverses which they particularly supported. (Though I don't think that would be as strong a solution as using a blockchain.) I objected to most of what else you proposed, mainly on the grounds that it did not prioritize establishing and maintaining Liberty through the use of Free Software.

trentlapinski ago

Don't get me wrong, I think whatever we do should be open sourced. I completely support a free and open Internet.

I was merely suggesting a possible business solution that would create value for large communities, give them more freedom, while also allowing Voat to cover their hosting bills. That doesn't mean I think this should be the only solution for hosting a Voat community, it would merely be a solid service to be able to offer to the community to help offset costs, and create sustainable revenue. That doesn't mean the project can't be open source, and that others could go take the code and do what they want with it.

As for blockchain, not opposed to that as well but thats a whole other engineering challenge.