Ask HN: Does using PHP hurt adoption of my project?
My company has cleared me to refactor & open-source (MIT) an AngularJS+D3+PHP dashboard tool I wrote (similar to Chart.io, but intended for integration with existing admins/backends).
My fear is, despite the PHP backend simply being a connector for various data sources, the audience for this project would be apprehensive towards contribution or usage because of PHP's stigma.
I can fairly easily convert the backend code to use Node instead, but would only want to do so if it helped get more eyes on the project and improved chances that others could help me with contributions.
13 comments
[ 3.7 ms ] story [ 48.3 ms ] threadTo your point, it still isn't that much to reimplement, since the architecture would be quite similar for each backend.
Do you (or your company) want to be running a project and getting patches and contributions back? Who is the target audience?
In the last year or so I've open-sourced a project I did for a state agency (done in Java) - every single request I get from people about the code is "is it in php? can i install it like wordpress or moodle?"
PHP is going to give you a huge pool of potential users and contributors simply because of its reach. Whether that's who you're aiming at or not is a different question.
Since we're using AngularJS+D3+Symfony specifically, I figured others could at least learn the same way I did by seeing a real application using these technologies rather than the usual example apps.
The target audience consists of users like me, which need a simple live dashboard to see high-level metrics and tell (1) if anything may be wrong and (2) if performance is improved for a custom application using MySQL, Postgres or MongoDB.
It's not meant to be a BI solution like QlikView (which the company uses internally and is awful), but something light, embeddable, and doesn't require `for..each`ing custom SQL queries and mapping it to D3 just to make sure the last deployment didn't break anything.
I'm very surprised that users wanted something in PHP or as installable as Wordpress. The installable part is pretty simple, and most configuration is done on the client-side. I just wasn't sure if a Node backend would be more accessible to this audience.
"The target audience consists of users like me" and "we're using AngularJS+D3+Symfony specifically" = you're not really an average developer - certainly not an average PHP developer, and certainly not an end user who might want a dashboard.
Personally, I'd say keep it with PHP for now. If it gets users and grows, so be it. If not, and you have time to branch out in to other tech based on real business needs, branch out at that point.
Don't change the language of your project just because of popularity. Use node, python, ruby only if the end result will be a significantly better then the current is. When I say significantly I mean compared to the time you will spend to convert it.
In terms, of end users, those that will actually use the dashboard. They don't care what language you use.
PHP is not beautiful or elegant, but it gets the job done.
I'm confident your mind can be changed on that. Mine has :) (WordPress vs. Symfony is a good example "normal" PHP to "elegant" PHP code)
I've never heard anyone argue that Java is elegant.
Personally, I'd love to see a Node version as I'm currently writing a (sort-of) CMS using node.js and angularjs, I've been looking for something to help with graphs on my dashboard and there's not much out there at the moment.