From Fedora Project Wiki
(Feature has been announced on devel-announce mailing list on 2013-01-28)
Line 26: Line 26:


<!-- CHANGE THE "FedoraVersion" TEMPLATES ABOVE TO PLAIN NUMBERS WHEN YOU COMPLETE YOUR PAGE. -->
<!-- CHANGE THE "FedoraVersion" TEMPLATES ABOVE TO PLAIN NUMBERS WHEN YOU COMPLETE YOUR PAGE. -->
== Detailed Description ==
== Detailed Description ==
This feature aims on setting up development environment for various languages. Target groups include beginning developers but also experienced developers not used to GNU/Linux as well as experienced Linux developers not used to Fedora.
This feature aims on setting up development environment for various languages. Target groups include beginning developers but also experienced developers not used to GNU/Linux as well as experienced Linux developers not used to Fedora.
Line 33: Line 32:


There are other optional activities like vim/eclipse/emacs/... plugins, integration of rpm build tools, .... These optional parts are not goal for F19 but they will be integrated in time.
There are other optional activities like vim/eclipse/emacs/... plugins, integration of rpm build tools, .... These optional parts are not goal for F19 but they will be integrated in time.


Languages:  
Languages:  
Line 91: Line 89:
* See [[Talk:Features/DevelopersAssistant]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
* See [[Talk:Features/DevelopersAssistant]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->


[[Category:FeatureReadyForWrangler]]
[[Category:FeatureAnnounced]]


<!-- When your feature page is completed and ready for review -->
<!-- When your feature page is completed and ready for review -->

Revision as of 11:22, 28 January 2013


Features/DevelopersAssistant

Summary

Perform a series of various changes to improve developer experience on Fedora.

Owner

  • Email: <jzeleny@redhat.com>
  • Email: <mmaslano@redhat.com>

(Please add yourself if you are responsible for some part of it).

Current status

  • Targeted release: Fedora 19
  • Last updated: 2013-1-23
  • Percentage of completion: 2%

Detailed Description

This feature aims on setting up development environment for various languages. Target groups include beginning developers but also experienced developers not used to GNU/Linux as well as experienced Linux developers not used to Fedora.

This feature will cover a basic set of tasks which will prepare Fedora for later additions. The first part of the feature is a review of comps groups which would lead to better granularity of package sets necessary for development in different languages. Another part is about providing tool or tools for simple start of a project in terms of creating project template based on different languages and/or frameworks which the project should use.

There are other optional activities like vim/eclipse/emacs/... plugins, integration of rpm build tools, .... These optional parts are not goal for F19 but they will be integrated in time.

Languages:

  • C (phracek)
  • Ruby (vondruch)
  • Python (bkabrda)
  • Perl (mmaslano)
  • PHP (rcollet)
  • Java (msrb)
  • Javascript

Benefit to Fedora

Make the development on Fedora easier for beginners.

Scope

  • Adding new (leaf) packages, which will contain setup scripts.
  • Comps: a review of existing development-related package groups will take place
    • cleanup of some groups will be necessary
    • new groups might be created to meet the demand for per-language tool and library sets

How To Test

Try to install package containing setup for your favourite language.

User Experience

Entry barrier for development on Linux should be lower. Inexperienced users will be able to setup their development faster.

Dependencies

None at the moment, none expected. We intend to build on top of current state of Fedora.

Contingency Plan

Do not ship the result if not ready. Since the feature is not required for anything else in the system, there will be no complications if not shipped. Changes in comps groups will be consulted before pushed and if necessary, changes can be simply reverted.

Documentation

Blog posts will be released to make some publicity. Man pages will be primary source of documentation for the functionality. The documentation will be developed along with the functionality.

Release Notes

Developers Assistant feature will provide packages containing skeletons, settings, which will provide help to developers. Also new or improved yum groups are part of this feature.

Comments and Discussion