So you want to be a Sugar developer, getting started is pretty simple, you’ll need a development environment that includes a web server, a database, PHP, and Elasticsearch. Additionally, I recommend using an Integrated Development Environment, IDE, such as PhpStorm. Sugar is developed and tested using Apache (Web Server) and MySQL (Database).
Deployment Options
Sugar can be deployed in a number of different ways. As part of your license, Sugar Cloud is included and this is the correct deployment option for 99% of the time. The other 1% where Sugar Cloud is not optimal is for some compliance reasons such as Government, HIPAA, PCI, or corporate privacy (ahem, Apple, Inc.). If you have one of these reasons to not use Sugar Cloud; hopefully your partner is either hosting Sugar for you or they are helping you maintain your Sugar infrastructure.
If you are deploying to Sugar Cloud, then your development environment will need to be made up of Apache and MySQL. There is another webserver option, IIS, along with database options such as MSSQL, Oracle, or DB2. In my opinion, unless you have a specific requirement for these other environments, I would not recommend these environments for development. The latest information on supported platforms can be found on the Supported Platforms page.
Personally, I use a combination of tools; I use some items from Homebrew and some from SugarDockerized, you can learn all of the details on how I set up my development environment on macOS. BTW, SugarDockerized is from Enrico Simonetti who works for SugarCRM.
SugarCRM vs Sugar
It can be confusing to know which term to utilize when but it is pretty straightforward. SugarCRM is the name of the company. Sugar is the name of the products such as Sugar Enterprise, Sugar Sell, Sugar Market, Sugar Connect, etc. Be sure to keep this in mind so everyone knows if you are referencing the company, SugarCRM, or a product.