What technologies should I use?

Hi guys,

I’m looking to start a project and I was hoping someone
could help me with what sort of technology mix would be best to achieve what I’m
after. I guess my priorities are:

· Ease and cost of development

· Ease and cost of maintainability

· Speed of the application itself & how well
it works

The app is a business directory software that lets users
search based on their geographical location and very specific business
services. For example, not just bakers nearby, but bakers who do cupcakes with
personal messages on top. Want searcher to be able to sort by distance, rating,
price, etc. I want to use Google Maps in the app for results listings and to
calculate locations and distances etc.

For the businesses, their business will only appear in the
results if they have a paid their fee, so will tie into a billing system, with
subscription periods and expiry if unpaid. I want them to have a backend where
they can select all the services they offer from a list of pre-defined options,
set all their contact info, add photos etc. All this information on the backend
will affect what search results their business shows up for. I also want them
to have a public facing profile page which will take all the info they enter on
the backend and present it nicely. Possibly also want to have a calendar plugin
option for businesses that take appointments, and allow users to make appointments
through the search and business profile pages and show up on the calendar.

Want registered users to be able to leave reviews, save
favourite businesses.

Want a messaging system so users can send messages to
businesses.

I would also like to develop apps for iOS, Windows phone and
Android for this.

I myself am a front-end dev fluent in HTML, CSS &
Javascript although I’ve never used a JS framework like Angular or anything.
But I don’t want my skills to influence what I should use, I want the best
tools for the job. I want to develop this or have it developed rather than an
OTS solution, as I know I’ll want lots of specific customisations as I go.

So what would you recommend for languages to build this
system in? What frameworks if any? What platform should it be hosted on? Any
other relevant information?

Thanks a lot, your help is appreciated.

This is exactly what you shouldn’t do, chasing the elusive ‘best tool for the job’. The best tool is the one you know already. What techs do you know server side? If you don’t know any, try learning one, if you don’t know which, try to build a very small app (following basic tutorials) in asp.net (c#), php, ruby and find out which is more comfortable for you. At least with C# and php you can leverage the C syntax that you aready know from js.

For android apps you’ll need to learn Java (the one for android), for iOS objective-C while for windows phone you can use C#. I strongly recommend though you start with only one client (web) and maybe one mobile app and this means you should find a mobile programmer.

I get the feeling you want to do a LOT, but you lack the technical expertise and you need to take it slowly. Also google is your friend for frameworks, hosting etc. Everyone has their favourites which might not be your favourite. For example, I’m a .net guy, I do C# , I host on Azure and I think it’s the best stack. Other people will scream in horror and will vow that php/ruby is the holy grail.

3 Likes

The best tool is the one you know already.

This is definitely true.

Unless of course you don’t know any; then, as @praetor says, pick one and learn it.

Thanks for the advice guys, very helpful.

Given what you’ve said I’d be leaning to PHP, just because it was on my ‘to learn’ list. For the mobile apps I plan to outsource their development.

My questions therefore are just things like:

If I build the backend in PHP, will the mobile apps be able to talk to the PHP backend and perform searches in the same way as the web app?

Will PHP be slow?

Does Laravel provide the search function I need in my app? Or PHP natively? (Sorry I know next to nothing about PHP)

Thanks again guys!!

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.