What should one take into account when choosing languages and other tools for a project?
Specifically, I’m building an ecommerce site for selling custom-printed physical products. I’ll also need to write software for streamlining the process of printing, shipping, etc., and doing this well is really important in differentiating our service from competitors, so being able to add on custom-coded things easily is important. I see that there are some out-of-box solutions for this, too, but I’m uncertain about using them because I’m not sure how flexible they’d be.
PHP looks like it has the most complete and long-lived ecommerce software, including some WordPress plugins like WooCommerce that don’t require touching the code much at all (but might be too expensive, if we end up needing lots of plugins). I’m familiar with WordPress, but don’t like writing for it all that much. I also worry about being constrained by out-of-box software that can’t be made to do what I need it to.
Python was the only other language I looked at that had current and mature ecommerce frameworks. There are a lot of different options within Python, mostly based on the Django framework, and I’m not sure how to decide between them when there’s no clear winner. I know I like this general approach better, but I worry a lot about not being able to code fast enough to keep up with what the business needs. (I’m a student now, and don’t know how much time I’ll have when I start working in a few months.)
I also notice that a lot of other bootstrappers are building product sites in WordPress and apps in PHP. Is having fewer bootstrapper-friendly tools available because of software choices something I should worry about? (For example, not being able to use the WordPress-specific A/B testing plugins.)
I’d appreciate some advice on what to do in this situation, but I’m also curious what things you think about when choosing tools in general. Which factors are the most important? Are there any that I didn’t think of here?