Concurrency and speed aside, Go is just simple to pick up and easy to build working applications with minimum dependencies. This makes it a perfect Swiss Army Knife for many situations, even if it’s not an individual or a team’s core technical competence.
As a friend of mine said once, “Go is 21st Century pseudo-code that actually works”.
Cheers for the awesome blog! It's rare to see one these days, which is dedicated to a niche topic like automotive UX design and is not trying to sell you consulting services (like mine, lol).
Plausible is a gulp of fresh air in the sea of products and services that try to sell one's identity in exchange for a free service. I have started using it for one of my sites, then recently migrated another, and planning to do the same with the rest of my projects.
Moreover, Plausible being an open-source product, it gives anyone a chance to contribute to it and make it even better. As soon as I realised that it was written in Elixir/Phoenix, I just couldn't wait but find ways to help. Although my contributions to the project have been small until now, the guys were really kind and addressed the changes I pointed out almost immediately.
I was curious what sort of Javasript wizardy was used to accomplish this. It appears to be lots of deleted code. Still, good for the contributor! Here is the PR https://github.com/plausible/analytics/pull/68/files
Hard to trace because we have a code change and file renames in the same merge. I don't like that. Renames and white-space changes should be their own commits.
I agree with what you’ve said. I’ll even join you in praising plausible, well done!
However I still wonder about the TCO of self hosting.
For big companies TCO is a number on a spreadsheet. For a technical person it includes total amount of minutes per year net above a hosted solution. The concerns I have about this are:
1). I think it’s extremely easy to underestimate this metric. It’s not just the download or set up or configuration (although if those parts go wrong it could turn from minutes into hours)
It’s also the fact that it’s going to have more downtime that you have to fix. You’re going to have to stay current on updates and relevant security issues. You’re going to have to run it somewhere which although light weight takes up some resource. That doesn’t mean the software is not as good. It just means a hosted service has people (supposedly) managing all that crap.
2). Say the TCO is not deceptively low and it really isn’t very much time extra per year. Now let’s decide how much of your time is worth giving up that could be spent on critical path or uniquely value add functionality to your own product or service that could make you more successful? Seriously, what’s the amount of time you’re willing to give up per year on that?
I don’t know the exact right answer to number two. All of this is a trade-off right? Not just the TCO but also the control someone else has over you, and the openness and utility of open source.
But it’s a concern. If for no other reason than it’s not obvious when a new product comes along.
Every minute we have is opportunity cost. The only thing we get to choose is which bucket to put it in.
I dont quite understand your concern here, If you value your time why not just use their paid services?
What are your expected PV per month? Out of all the hosted analytics out there, plausible is one of the most affordable solution, with a very low entry level price.
The OP seem to be talking more about the benefits of self hosting, Hence that line of reasoning.
Secondly, I was specifically not critical of plausible in fact I was positive toward them.
The issue in general is that the trade off is subtle and not obvious, and I think a fair number of people think it’s an easy decision one way or another but it’s often not.
Isn't the whole premise "Self-Hosted"? There are lots of organizations that still don't use online services and prefer things to be in house and in their own data center.
There are people who jump off a bridge too not sure what your point is.
Also I was specifically not talking about larger organization level decisions as much as smaller start ups or individuals who have to make the decision.
The premise is even after this many years experience we all have with SaaS versus self hosted it’s still not an obvious decision. It seems like some people can be dismisses of it as an easy decision but the devil is in the details and the specifics of the situation.
It occurs to me that even with a self-hosted solution, project maintainers could benefit from having a broader corpus of sample data from various use cases.
One of the complaints about European armaments in the middle ages was that the guys making the plate also made the arrowheads and crossbow bolts so there was never the same arms race you had in Japan, as a common counterexample.
I think it would be cool to see a tool like this one, along with a data anonymizer, playing cat and mouse trying to scrub data versus inferring PID from it. I think that might entice more white hat security folks to investigate this problem space and it feels like we could use more of that sort of attention on this domain.
As someone who has discovered Elixir after years of working with various tech stacks, I can say that there is enough goodness in it for everyone. Having more technically diverse people in the community will help us better understand and work with the best behind it - Erlang.
This is more of a general inquiry at this point. I love both Go and graphics programming. At some point I thought, I might actually write a short book combining both topics. As we all know, Go is much more than just a language for writing Web services, yet most materials teach only this side of it. I thought that by using Go to teach a different context (e.g. computer graphics), I might give it a different spin and bring in some fresh minds into the community.
What do you think? Will this be something useful for the general Go community? Feel free to share feedback as well as resources (e.g. libraries, tutorials, etc) which you want to see featured there.
As a friend of mine said once, “Go is 21st Century pseudo-code that actually works”.