Mozilla2:Improving Development Environment: Difference between revisions

→‎Overview: and sometimes you cannot spell "forest" b/c of the trees...
(→‎Overview: and sometimes you cannot spell "forest" b/c of the trees...)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Overview ==
== Overview ==
Sometimes when you work on a project for too long, you cannot see the forrest for the trees. It seems like the good people, who have been working on Mozilla for so long, cannot see how esoteric the requirements for building an extension are. This could lead to a situation where Mozilla is losing potential developers based on bad first impressions. Because when you first experience XUL development, you must first experience the requirements to set up an app before you can even do "Hello World".  
Sometimes when you work on a project for too long, you cannot see the forest for the trees. It seems like the good people, who have been working on Mozilla for so long, cannot see how esoteric the requirements for building anything are. This could lead to a situation where Mozilla is losing potential developers based on bad first impressions. Because when you first experience XUL development, you must first experience the requirements to set up an app before you can even do "Hello World".  


The purpose of this page is to bring together related claims from new XUL developpers who have a fresh perspective. The final aim is to ease the work complexity of new XUL developpers, and to make mozilla/firefox a great development environment, '''out of the box'''.
The purpose of this page is to bring together related claims from new XUL developers who have a fresh perspective. The final aim is to ease the work complexity of new XUL developers, and to make mozilla/firefox a great development environment, '''out of the box'''.


In this area, you may either point other developpers to a solution  
In this area, you may either point other developers to a solution  
you found, or ask for an improvement. You can link to a specific page /  
you found, or ask for an improvement. You can link to a specific page /  
newgroup thread to start a constructive discussion.
newgroup thread to start a constructive discussion.
Line 30: Line 30:
=== No simple option ===
=== No simple option ===


*<b>Description</b>
====Description====
Currently, the requirements for setting up the project are very elaborate.  
Currently, the requirements for setting up the project are very elaborate.  
There are too many boiler-plate items on the check list that have to be successfully completed.  
There are too many boiler-plate items on the check list that have to be successfully completed.  
All of which can be assumed (see Ruby on Rails philosophy) but are potential blockers for new developers who silently pass up XUL because it looked like a lot of unnecessary pain.
All of which can be assumed (see Ruby on Rails philosophy) but are potential blockers for new developers who silently pass up XUL because it looked like a lot of unnecessary pain.


*<b>Impact</b>
====Impact====
XUL Runner apps. Mozilla/Firefox extensions.
XUL Runner apps. Mozilla/Firefox extensions.


*<b>Solutions, workarounds</b>
====Solutions, workarounds====
None  
None  


*<b>Improvements</b>
====Improvements====
Why can't it be as simple as passing a jar file to xulrunner/firefox bin  
Why can't it be as simple as passing a jar file to xulrunner/firefox bin  
on the command-line - the same way you pass a jar file to java bin.
on the command-line - the same way you pass a jar file to java bin.
Line 47: Line 47:
=== Privileges / Security barrier ===  
=== Privileges / Security barrier ===  


*<b>Description</b>
====Description====
When one's developping a XUL app, he will soon face privilege issues.
When one's developping a XUL app, he will soon face privilege issues.
actually, many access to deep Mozilla functionnalities (as interacting with XPCOM)
actually, many access to deep Mozilla functionnalities (as interacting with XPCOM)
Line 65: Line 65:
as we already have for XUL extenstions.
as we already have for XUL extenstions.


*<b>Impact</b>
====Impact====
Remote applications.
Remote applications.
Thx...


*<b>Links</b>
====Links====
This point is already being discussed [[XUL:Remove_Privilege| here]]
This point is already being discussed [[XUL:Remove_Privilege| here]]


 
== dev extension proposal and DEV MODE ==
=== The developer mode ===
 
==== dev extension proposal ====
Once mature, a KISS (keep it simple stupid) ''dev starter kit'' could be bundled with FF to tempt potential developers into "giving it a go". It could be accessed from the tools menu under "create my own extension".
Once mature, a KISS (keep it simple stupid) ''dev starter kit'' could be bundled with FF to tempt potential developers into "giving it a go". It could be accessed from the tools menu under "create my own extension".
* javascript on sidebar, setsome flags, no xul cache
* Easily set important DEV MODE flags. ie, no xul cache
* auto generate a skeleton extension based on a choice of templates
* auto generate a skeleton extension based on a choice of templates
* click a "publish" button to produce an XPI along with a basic HTML page including a link to it.
* click a "publish" button to produce an XPI along with a basic HTML page including a link to it.
99

edits