Help needed to package app
-
Hi everyone!
I wanted to add userTrack.net as a cloudron app, but I didn't find the time to do it.
I already have a basic Docker setup for it and also a cloud-init script or .sh setup script.
The app is a basic LAMP application.Can anyone help me with the packaging? I am willing to pay for the time it takes to do it if needed.
I wanted to do it myself but I see there are some specifics that I might get wrong (app versioning, updating, file permissions, etc.) and it would be better if someone with experience could help.
Thank you!
Cristian -
@jdaviescoates No, it is not open-source, a license has to be purchased, but for the initial installation I do provide a 7-day trial that can be used in the Cloudron image, so you just install it with one click and then can test it for 7 days and can purchase a license afterwards.
With the free trial is also how I planned on publishing a public Docker image and now also I'm trying to get it on the DigitalOcean marketplace as an app (not sure if they accept trials/premium products, but I don't see why as it just makes it easier for the user to setup that specific app on their platform).
-
@xcs Quite frankly, personally, in such conditions I would not be interested in providing such app. I mean, it's nothing personal but imho you are trying a market in which you will not be successful. At least among the Cloudron community which are people who profoundly believe in 'Free and Open Source Software', for the reason being that many make a good living using the freedom to elaborate each one its own business model, for each one its own profit. And another big reason, a very important reason, is that such business model allows to provide people with freedom to use awesome web apps without being 'binded' to SaaS and GAFAM.
Again imho, if a FOSS community as this one would start to accept such 'deals' we'd start being solicited to no end by all startups mushrooming on the planet and that would be totally defeating the very purpose of FOSS and this community and the business models built around, Cloudron developers own business model. I'd also add that adding your closed software would certainly not be a judicious choice since we provide and run the powerful Matomo server among the apps array offer on Cloudron.
Something tells me that you do not know much about FOSS communities my friends, I'd suggest you get to know more about all of this work, then maybe you could have new ideas about how you could join and participate in this market begin on the same page as the one you want to do business with. (plus, really 7 days to try an analytics software is ahem... ridiculous... don't be offended it's not my goal, just learn about this, think and learn, I'd suggest you also query the 'analytics software' market a little more, why would business people drop everything and dedicate 7 days (because this is literally what you asked them to do) to try your software which is btw at VERY HIGH PRICE for some unknown entity in any market apparently.)
My 2 cents worth, take care.
Andy -
@xcs Have you looked into many of the existing LAMP app packages? All our packaging code is opensource, so maybe you can pick an app that usertrack is similar and go from there. I tried to tag some of them - https://git.cloudron.io/explore/projects?tag=php . If you have any packaging questions, we are happy to answer them here.
I think, if you can just get the app sort of working (without worrying too much about the details), then we can help you take it from there. Generally, we take care of updating the app package as you keep releasing new versions as well.
-
@xcs said in Help needed to package app:
With the free trial is also how I planned on publishing a public Docker image and now also I'm trying to get it on the DigitalOcean marketplace as an app (not sure if they accept trials/premium products, but I don't see why as it just makes it easier for the user to setup that specific app on their platform).
When we released on DO MP (which was atleast 1.5 years ago), they were OK with freemium but not a pure trial product. Not sure if this has changed. Also, some apps like Plesk have a free version but only for DO MP (i.e that free version is not available from their site or elsewhere). So maybe that's another idea you can look into - like a domain is free on DO MP alone.
-
@micmc Thanks a lot for the feedback!
I have previously directly discussed this with someone at Cloudron about half a year ago and they were excited to have userTrack on the platform. Unfortunately I didn't find the time to package the app and now I am looking for someone with experience to help me with it, so I can do it right.
I am a bit confused by the personal attack, I have been involved in FOSS for a very long time and I even answer the question of why userTrack isn't open-source on the pricing page, the quote from there:
I have strongly considered open-sourcing userTrack but keeping it license-based allows me to work full-time on it and improve it at much faster pace than most of the open-source software. By being focused on the self-hosted aspect (instead of providing a "hosted" solution) my interests are alinged with yours: make userTrack easy to install, easy to update and highly-performant on any server.
If you consider the price of userTrack to be high you are most likely not in the target audience.
7 days to try an analytics software is ahem... ridiculous
I agree, 7 days to try an analytics platform is very little. Previously there was no trial. userTrack is self-hosted, the main pushback with self-hosted software is the thought the installation takes a long time or that the product does not work on your environment. By providing a free trial customers can try the installation process and check compatibility with their configurations without paying anything or giving any personal details.
I am not sure what deal you are referring to or why SaaS platforms are mentioned. userTrack is a self-hosted analytics platform, you install it on your own server and own all your data forever. By providing a Cloudron app it will provide users with an additional way of easily installing it, which means userTrack users are also referred to Cloudron through the installation docs.
-
@girish I did have a look (several times) over the projects but I kept having different questions and unclarities, this is why I wanted to discuss with someone that better understands the requirements for a Cloudron app.
Generally, we take care of updating the app package as you keep releasing new versions as well.
For example, in my case, userTrack has an integrated updating system that can download update files and migrate the database. Would I have to disable that for the Cloudron app, or setting the correct file permissions would be enough?
-
@girish I had a (unrelated) talk with some DO people a while ago and they indeed asked if my product had a free/lite version. I will have another chat with someone at DO tomorrow to ask if trials are acceptable, as I do already referrer userTrack users to DO and now they have to use their cloud-init script for installation, which takes a bit longer for the customer. Having an app there would help with the customer experience on DO.
maybe that's another idea you can look into - like a domain is free on DO MP alone
This is a good idea and it might work (I could also probably disable specific features in the free version). In general I try to avoid creating too many variations of the product as they become hard to maintain and also the users don't get the intended premium experience while using the product.
I will try to find time and create a basic Cloudron package for userTrack and maybe ask for feedback afterwards to see what can be improved. If it proves to be too time-consuming, maybe the forum was not the correct place to ask for packaging help, in which case maybe I should try finding help on freelancing or similar platforms instead?
Thanks a lot for all the suggestions and tips!
-
@micmc As a shorter response: Maybe there was a misunderstanding; I am not trying a new market, my goal is not to use Cloudron to reach a new market. My goal is to provide my existing and future customers an extra way of easily installing the self-hosted platform.
-
@xcs said in Help needed to package app:
For example, in my case, userTrack has an integrated updating system that can download update files and migrate the database. Would I have to disable that for the Cloudron app, or setting the correct file permissions would be enough?
Yes, we have to disable this for Cloudron app. The app containers are readonly and the app cannot "overwrite" the code. Instead, the update mechanism on Cloudron relies on a new image for each update. The old container is thrown away and a new container is created from the new image.
-
@xcs said in Help needed to package app:
@micmc Thanks a lot for the feedback!
You're welcome!
I am a bit confused by the personal attack,
It's understandable, the confusion, because there was no 'personal attack'! What I wrote was based only on the perception I had at the moment I saw this. I'd not engaged in extended research about your case lol
As you say it, it's a 'feedback'...If you consider the price of userTrack to be high you are most likely not in the target audience.
Whether I'd be a target audience or not, my opinion is based on my knowledge of the market as a marketing technology expert tactician ONLINE for almost 25 years, and I'm pretty much well aware of the business models trends used by SaaS and the like.
Ah, and this is where I compare your app to SaaS as in the exorbitant monthly fees one gets caught into to simply use your software. It might simply be because my own model would tend to FREE entrepreneurs from all the monthly fees they're caught into in monthly SaaS of all kinds to run their business. And, I don't feel 'attacked' when you say I might not be your target market, which is more than likely true.
... and if you feel you're 'attacked' when you get 'feedback' about your app and / or business model in a forum, then maybe forums are not a good place for you as a 'target audience' to talk to?
I've nothing against you nor your software, I've simply expressed my humble opinion (this is what imho means) about your app and the model you present which does not meet my model at all and is NOT open source. That's it.
Have a nice day!
Andy -
@xcs said in Help needed to package app:
@micmc As a shorter response: Maybe there was a misunderstanding; I am not trying a new market, my goal is not to use Cloudron to reach a new market. My goal is to provide my existing and future customers an extra way of easily installing the self-hosted platform.
Yep, very likely as I explained above, simply because we have two totally different vision and business models in mind.
Cheers!
Andy -
@xcs It looks like a nice app and feature ideas at first glance. I'm in the target audience and would consider paying.
I wouldn't consider anything with compiled or obfuscated code in though - and would spend 5 times the amount to have it decompiled and published just to cure the world of that bad habit and idea.
The name is unfortunate, given most users don't want or like being "tracked".
Maybe think of something more respectful to user's data like "User Analytics", "Usable Analytics" or something with a less creepy name.
I highly recommend looking at the EspoCRM, Wordpress, Matomo open-source, premium add-ons business-models.
Open-source is not free of cost for users, they pay you with their time, testing and feedback. Don't cut off that source of improvement, just get better at managing a public Git*** repo and issues, embrace the community spirit, and I'm sure you will have great success - including here.
-
@marcusquinn Thanks a lot for the comments, really useful!
I have actually received several similar suggestions regarding the userTrack name. I thought about it for a long time, but for now I have no plans of changing it. A big reason is that when people are Googling for "user tracking" they will stumble upon userTrack, which is one of the most privacy-friendly solutions for "tracking" users (self-hosted, cookieless, hashed IPs, multiple privacy settings, etc.). This is in some way similar to getting "earthIsFlat dot com" and posting on it content that proves the earth is not flat.
Another reason why I am still using the name is because it's self-hosted, so the web administrator can actually name the user-facing scripts whatever he wants.
I agree that a more user-friendly name could help, but currently the existing brand power and SEO benefits make this change unlikely to happen.
I highly recommend looking at the EspoCRM, Wordpress, Matomo open-source, premium add-ons business-models
I have considered and tried many pricing models over the years. Working on userTrack for over 9 years I have also always watched other similar platforms and their business model and always debated whether going open-source would help or kill the project. For example, Matomo is really awesome and it's open-source, but their focus is NOT on the open-source part. Being a business, their focus is to attract users to their premium offering so their open-source version drops in quality/features (some core features are only available for the cloud plans for a very high cost).
Open-source is not free of cost for users, they pay you with their time, testing and feedback
This is true, but keep in mind that paying users also pay with their time, testing and feedback too.
Don't cut off that source of improvement, just get better at managing a public Git*** repo and issues, embrace the community spirit, and I'm sure you will have great success - including here
Doing open-source well is REALLY hard. Take Matomo for example, which is a huge organization, yet their repo has thousands of open issues and tens of unmerged Pull Requests. Although this seems like good activity, in the end I feel like it also means many human-hours of effort have been wasted trying to create, analyze, accept/reject all those suggestions. All this while the user-facing progress is overall slow and the platform starts to feel outdated.
I also recommend watching
.I am not saying in any way that userTrack will never ever be open-sourced, but for my current goals with the project this is currently a no-go (working on userTrack as a shared/paid-source project for over 9 years has worked really well and most of the customers are extremely happy with the product). I want to mention that it's not about the money, it's mostly that switching userTrack to open-source would move my focus away from my envisioned end-goal for the product and self-hosting ecosystem.
I wouldn't consider anything with compiled or obfuscated code in though - and would spend 5 times the amount to have it decompiled and published
userTrack's source-code was actually entirely unobfuscated and visible up until v3 when I rewrote the entire application in TypeScript and React. Because those technologies require a building process, which means dev tools and maintaining a dev documentation, I realized that I wouldn't be able to provide a proper developer experience while focusing on improving the product. My goal now is to create an awesome product that just works, without having to fiddle with code (so the target audience also includes non-programmers).
That being said, the server side (PHP, MySQL) and tracking (JS tracker) source code of userTrack is completely visible and unobfuscated. The only obfuscated part is the JS of the interface (dashboard UI) only because changing it would require me to provide numerous extra development tools and write extensive documentation. My plan is to soon add a way to extend userTrack (eg. via plugins), so you can still customize the dashboard if you want but without having to learn and setup a complex dev environment.
Thanks again a lot for sharing your opinions, it's really useful to know how different communities have different opinions on how a product should be in order to be useful for them.