Click here to Skip to main content
15,867,141 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
Hello!
I was recently asked to develop a Client Relationship Management Software.
Unfortunately, I know NOTHING about it's development or how to go about it. Time is not a constraint and I am willing to write it - I know C, C++, Java, HTML.

Being a quick learner, I am willing to even learn a new language (if need be).

I read that PHP is extensively used. But nothing detailed as to how to go about building the s/w.
Can you please help direct me in the correct direction or provide a good link that describes the same ?

Any help is welcome!
Thanks in advance!

P.S. I need to develop it in such a way that the software can be viewed from different locations. Thus, the database should be shared by all locations. For this, do I use an integrated database or should I use a CMS like Drupal ?

P.P.S. I'm sorry for some stupid questions, but i'm a noob ...
Posted
Updated 9-Apr-13 1:18am
v4
Comments
Zoltán Zörgő 9-Apr-13 9:43am    
Please see my comment.

1 solution

Do you really want to/need to develop it for yourself? Haven't you considered installing a closed or open-source implementation, like the ones here (Top 9 Open Source CRM Systems), or others you can fint with google?
If you can't use any of these, you could however get inspiration, so I suggest you try them.

PS: there are two different approaches here:
1) several on-premise installations with their own database; and with the databases synchronized over network
2) one single installation that is exposed to the internet or over vpn
The approach to have different installations accessing the same database is not a good one.

I am a big PHP fan, but I suggest you consider ASP.NET MVC with C# too (see these for example: http://sourceforge.net/projects/basiccrm/[^], http://crm.codeplex.com/[^]). But you could use Java also (look here: http://java-source.net/open-source/erp-crm[^]).

The question is not stupid, but the topic is too large, and the specification you gave is not to detailed. A CRM can be really complex, so you will have to define (for yourself) a detailed specification, and choose between the platforms based on that and the technical and financial environment you have to align into.

My opinion:
I would choose asp.net mvc in our enterprise environment - even if there are many java and also php applications on place-, because we have a Windows based infrastructure and .net gives me a lot of tools to access and use those infrastructure elements, and because asp.net mvc is a framework that leads yo towards a sustainable, maintainable and cost-effective, standard-oriented web based development.
I would never consider a thick client for such a task. If you are interested, I can explain why.
 
Share this answer
 
v2
Comments
Zoltán Zörgő 9-Apr-13 9:06am    
[From OP:]
Thanks for that AMAZINGLY fast response Zoltán ! :D
I'm sorry for being vague - yes, I need to go for the first option wherein there will be multiple databases that are integrated /synchronized over the network.

I am decently versed with working in C# ... so that's a plus towards ASP.NET .. but is it better than PHP in the current scenario?

What do you mean by a "thick client" ?? And I would definitely be interested in hearing your views sir :)

I do not have a problem working in most of the platforms you suggested either. However, since this is my first project on the topic, I believe it shall be foolhardy NOT to follow what is generally used. Are you sure that ASP.NET is better than PHP or Java for the same?

P.S. I know it's vast ... but that's exactly the reason why I want to try it on my own - because others kept discouraging me from the same ..
Zoltán Zörgő 9-Apr-13 9:32am    
1) Yes ASP.NET MVC with c# is much better than PHP. Why? Because it provides you much advanced tools. The framework itself and Visuals Studio as well. You will be able to build your application much quicker, and you will be able to write better code easier. C# is higher level in OO than PHP. An ASP.NET application has a more complicated and advanced life cycle than a php application. You have better (unique) support to access Microsoft infrastructure elements. And there are some other... you will see
2) A thick client is a "windows gui" application for example
3) Why not Java? Well that could become a "better car" kind of topic, but I think that homogeneous environments are better than heterogeneous. Microsoft tools are better dealing with Microsoft infrastructure than others. C# is made of the best practices and best tools from many OO languages. As a result it is easier to code than with Java and it has several constructs coming from other platforms, and it is evolving!

Before any other, please visit this page: Intro to ASP.NET MVC 4, and at least read it, but even better do the demos. And see for yourself.

Please note, I have been talking about ASP.NET MVC, and not Web Forms. That is something else - very beloved by many, but if you come from PHP, JSP, Python, Ruby, and others, you will find it wired. I think Web Forms is not a thing for the future.
fjdiewornncalwe 9-Apr-13 9:11am    
Gets my 5.
Zoltán Zörgő 9-Apr-13 9:33am    
Thank you.
vsdaking 9-Apr-13 14:44pm    
You made a believer outta me Sir! :)

p.s. Sir, I had one doubt ... the database .. after reading a little, I have come to understand that we require an integrated database - that all versions of the prog. should have their individual DB which gets updated in REAL TIME when any change is made elsewhere as well. Am i right in assuming that .. or should I look to a single database which is shared by all versions of the application ? In either of the case, could you please also provide a link to a guide for the same?

thanks for helping out!

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900