Skip to content

The installation process doesn't fit the targeted developers #11165

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wouterj opened this issue Jun 18, 2014 · 11 comments
Closed

The installation process doesn't fit the targeted developers #11165

wouterj opened this issue Jun 18, 2014 · 11 comments
Labels
DX DX = Developer eXperience (anything that improves the experience of using Symfony)

Comments

@wouterj
Copy link
Member

wouterj commented Jun 18, 2014

I've seen #11143 , this issue talks about another part of the installation process.

As far as I can imagine, the Symfony installation process is done by 2 big target groups: Symfony Beginners and Regular Symfony Users.

It doesn't fit Beginners

Let's assume we don't know anything about Composer and Symfony. The docs tell me to download composer and run composer create-project. All fine, but then I get a lot of questions. I don't even know where those questions are talking about:

  1. "Would you like to use Symfony 3 directory structure?" What is the Symfony 3 directory structure? I can't find anything about it in the docs. The only thing I can find is a github discussion with 1k comments.
  2. "Would you like to install Acme demo bundle?" I myself always want to download as less as possible due to slow internet, so I would go for "No". That means I'm no longer able to follow the Quick Tour guide (and docs in general). People don't know that when downloading Symfony on the first try...
  3. After this it starts to ask me questions about the database, etc. Most of these are not very clear for beginners.

(some of these are stolen from @weaverryan's comments in symfony/symfony-docs#3874 , I've put them here to centralize all issues with the questions).

It doesn't fit Regular Users

Now assume you are a regular Symfony user (wouldn't be that hard for most of us :P). You always get 2 questions you just need to skip: Of course you do not want to install the AcmeDemoBundle and of course you do want to use the familiar structure (or you don't want to, but in any case your answer will always be the same).

Then there are a dozen of questions asks by the ParameterHandler. While they can be usefull for some developers, I think they aren't usefull for enough developers to say that the feature isn't usefull. To name a couple:

  • Developers using the Code First Approach, they don't want to worry about the database yet
  • Developers using Propel ORM
  • Developers using an SQLite database (only one parameter does apply to them and one they need is missing)
  • Developers using another Doctrine implementation (e.g. PHPCR ODM)

As you can see, there is too much noise which confuses beginners and annoys regular users. I think it's time to change that!

How?

I'm open for a lot of other suggestions, but I think we've reached a point where we've seen that maintaining one edition to fit all isn't the way to go. I think we need to do 4 things:

  • Completely remove the beginners stuff from the SE
  • Maintaining a seperate starters-edition or sandbox for beginners and usage in the docs
  • Support and stimulate open source projects in maintaining their own Symfony editions (like the Symfony CMF Standard Edition and Sonata Standard Edition).
  • Support the community to come up with their own editions (like the Rest Edition)
@apfelbox
Copy link
Contributor

I really like the idea about the "regular-edition" and "starter-edition".

@lavoiesl
Copy link
Contributor

Especially since the argument “We do not want to put this in symfony-standard because it is too complex/advanced, it should be in the Cookbook” comes out really often. There are a lot of symfony-standard forks out there (hell, we even have one), but they often become outdated, it would be nice to have an project to start from that would include a lot of common good practices.

@dirkluijk
Copy link

+1 for more editions! What about:

  • empty-edition: a basic version of the full-stack framework with almost nothing enabled/included
  • starter-edition (described above)
  • regular-edition (described above)

I also like the idea of having more third-party editions. Maybe it's good to build a list of all editions (also the community ones) on symfony.com, with a full description of what's included.

@apfelbox
Copy link
Contributor

@dirkluijk this list does already exist, but it is named "distributions": http://symfony.com/distributions

@dirkluijk
Copy link

@apfelbox Thanks for pointing that out. I forgot that the page already existed.

@iamdto
Copy link

iamdto commented Jun 27, 2014

I think we've reached a point where we've seen that maintaining one edition to fit all isn't the way to go.

Agree with this.

@javiereguiluz
Copy link
Member

I totally agree with this. However, I propose to close this issue because there is an issue in symfony-standard repo about improving the installer: https://github.com/symfony/symfony-standard/issues/689

@stof
Copy link
Member

stof commented Aug 18, 2014

Agree. Closing in favor of the symfony-standard discussions (it is a better place for that, as the issue happens when creating a project based on the SE more than when installing the framework itself). Please use the different issues in the SE for discussion (all linked from the issue mentionned by @javiereguiluz just above)

@stof stof closed this as completed Aug 18, 2014
@wouterj
Copy link
Member Author

wouterj commented Aug 24, 2014

Please note that this issue was on more than the installation process. The other half isn't covered by any other issue (afaik)

@weaverryan
Copy link
Member

@wouterj Are you specifically talking about the part of having more than one edition (and ideally supporting the community in creating and maintaining their own distributions)? Then yes, we need to make this happen. There is already a REST edition, but not mention of it anywhere in the official docs or during the installation/download process.

@wouterj
Copy link
Member Author

wouterj commented Aug 25, 2014

@weaverryan yes, that's where I'm talking about.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DX DX = Developer eXperience (anything that improves the experience of using Symfony)
Projects
None yet
Development

No branches or pull requests

8 participants