diff --git a/bin/publish.py b/bin/publish.py index 3cfa5a3..997f265 100644 --- a/bin/publish.py +++ b/bin/publish.py @@ -354,9 +354,15 @@ class Publisher: pageFile = file(pageFileName) pageContent = pageFile.read() pageFile.close() - # Extract the page title - i, j = pageContent.find(''), pageContent.find('') - pageTitle = pageContent[i+7:j] + # Extract the page title (excepted for the main page, we don't + # need this title, to save space. + pageTitle = '' + if pageName != 'index.html': + i, j = pageContent.find(''), \ + pageContent.find('') + pageTitle = '%s' % pageContent[i+7:j] # Extract the body tag content from the page pageContent = self.pageBody.search(pageContent).group(1) pageFile = open(pageFileName, 'w') @@ -489,7 +495,7 @@ class Publisher: self.uploadOnPypi(tarball) if self.askQuestion('Publish on appyframework.org?', default='no'): AppySite().publish() - if self.askQuestion('Delete locally generated site ?', default='yes'): + if self.askQuestion('Delete locally generated site ?', default='no'): FolderDeleter.delete(self.genFolder) # ------------------------------------------------------------------------------ diff --git a/doc/AppyManifesto.odt b/doc/AppyManifesto.odt new file mode 100644 index 0000000..6930749 Binary files /dev/null and b/doc/AppyManifesto.odt differ diff --git a/doc/appy.css b/doc/appy.css new file mode 120000 index 0000000..1c2b021 --- /dev/null +++ b/doc/appy.css @@ -0,0 +1 @@ +../gen/ui/appy.css \ No newline at end of file diff --git a/doc/gen.html b/doc/gen.html index 85eceed..f96524b 100644 --- a/doc/gen.html +++ b/doc/gen.html @@ -12,32 +12,6 @@

gen generates code that will run on Plone 2.5. Soon, the code will also be compatible with the latest Plone version. In my point of view, Plone 2.5 has reached the maximum level of complexity a Python developer may tolerate. Plone 2.5 heavily relies on Zope 2. While Plone 3 still runs on Zope 2, it has become heavily based on Zope 3 through the use of the "Five" product (=Zope 2 + Zope 3), that allows to use Zope 3 functionalities within Zope 2. Some people began to be angry about how complex certain tasks (like creating a portlet) became with Plone 3 (consult this, for instance.) In order to fight against this trend, we decided to create a new code generator (a kind of concurrent to ArchGenXML so) that already makes sense for Plone 2.5 and will be more and more relevant for the current and future Plone versions, as the Plone community took the debatable decision to move to Zope 3.

-

Before starting, let's get bored by some (counter-)principles that underlie gen

- -

If you have strict deadlines, skip this.

- -

Getting started with gen

Read only this if you want to run a "Hello world" gen application on your machine. This section is dedicated to Joel, a tremedous application and framework tester that ignores the essence of his gift.

diff --git a/doc/img/gen.png b/doc/img/gen.png new file mode 100644 index 0000000..e6616ce Binary files /dev/null and b/doc/img/gen.png differ diff --git a/doc/img/pod.png b/doc/img/pod.png new file mode 100644 index 0000000..52e6480 Binary files /dev/null and b/doc/img/pod.png differ diff --git a/doc/img/star.png b/doc/img/star.png new file mode 100644 index 0000000..2e1b02f Binary files /dev/null and b/doc/img/star.png differ diff --git a/doc/index.html b/doc/index.html index 8d37cec..2cb9f0d 100644 --- a/doc/index.html +++ b/doc/index.html @@ -4,24 +4,55 @@ -

Appy (Applications in python) is a bunch of tools distributed under the GPL license for developing applications in the Python programming language. The framework features two main modules: gen and pod.

- -

Developers, too, have the right to (h)appyness !

- -

Developers are often guys that live on another planet. Some think this is because software development is so exciting that everything else is poorly considered. At Null-IT software, we are deeply convinced that most developers do not enjoy themselves. They spend their lives together with complex problems that never go away from their minds. Nobody understands them. Their family? Their managers? Their clients? Their friends? No. Nobody. Nobody is able to imagine how huge and complex their tasks are. Consequently, what they do is underestimated. Worst: they can't communicate. Don't believe this is due to some intrinseque geek attitude. Their geekness results from the global incapacity to apprehend the very nature of their abilities. So they are forced to work harder while experiencing the true impossibility to share their permanent software experience. Of course, it may lead to social disasters.

- -

By publishing this high-level, easy-to-use software construction kit, itself based on the tremendously productivity-boosting Python programming language, our crazy hope is to empower developers in such a way that they can leave more often their software prison and spend more time to discover real life.

- -

But (h)appyness has a price. Appy developers themselves accepted to pay. They have dealed their social life for one of the highest forms of social denial (sorry we can't reveal their working conditions), hoping their sacrifice will free the users of their work. So if one day you meet one of them, please be gentle and patient. But they will probably not discuss with you.

- -

The null-IT principle

- -

Our action is guided by the following principle:

- -

Information Technology (IT) should be as transparent and invisible as possible.

- -

While this may seem obvious, this principle is largely ridiculed by a great number of widespread technologies. I will mention here JEE and XSL-FO which were taken as counter-examples while developing pod. In the Python world, Zope 3, by trying to mimick the ridiculous JEE component-model where code is viciously chopped into undersized chunks interconnected by obscure XML declarations, falls unfortunately into this category as well. This is a pity seeing Zope guys trying to abandon the elegant, simple, powerful (in a word: Pythonic) design of Zope 2. But don't be scared! Many people think that Zope 2 will last for many years... Null-IT, with others, is working hard to fight against the generalized Balkanization attitude that undermine IT innovation. If you believe there is still place for hope, you came at the right site. It is time to discover gen!

- -

The Appy framework needs Python 2.4 or higher.

+ + + + + + +
+
+ Get started
+
+ User guide
+
+ Reference guide +
+ gen - Create web apps without knowing anything about web technologies. Just pure Python.

+ You are a small team? A one-man-show? You are bored with technicals details preventing you + from being creative and productive? You think conceptual but prefer coding over drawing? You want to do more + with less effort? You consider code as an art? You know that beauty comes with simplicity? + gen is made for you.

+ + Some people say I will kill my business by publishing my secret weapon. + What more soothing suicide could I dream than Appy's wide adoption? +
Gaëtan Delannay, risk manager.
+
+
+ + + + + + +
+ + Get started
+
+ User guide
+
+ Reference guide +
+ pod - Create dynamic documents in .pdf, .doc, .odt or .rtf in a few minutes.

+ Producing dynamic reports can be SO simple. Use Libre/OpenOffice to create a document template, write some Python + expressions in it, launch pod and you're done. pod (Python Open Document) + wants to be as smaller as possible. Use your word processor as much as you can. Then switch to + pod only for the tricky things.

+ + During the dark ages of software development, creating a single page of report with JEE and XSL-FO + could took up to 2 weeks. Since Gaëtan made pod, the same task can be done in ten minutes. +
Damien Hubaux, paradigm-shift detector.
+
+
diff --git a/doc/principles.html b/doc/principles.html new file mode 100644 index 0000000..e57d5a2 --- /dev/null +++ b/doc/principles.html @@ -0,0 +1,53 @@ + + + Principles behind Appy + + + +

Developers, too, have the right to (h)appyness !

+ +

Developers are often guys that live on another planet. Some think this is because software development is so exciting that everything else is poorly considered. We are deeply convinced that most developers do not enjoy themselves. They spend their lives together with complex problems that never go away from their minds. Nobody understands them. Their family? Their managers? Their clients? Their friends? No. Nobody. Nobody is able to imagine how huge and complex their tasks are. Consequently, what they do is underestimated. Worst: they can't communicate. Don't believe this is due to some intrinseque geek attitude. Their geekness results from the global incapacity to apprehend the very nature of their abilities. So they are forced to work harder while experiencing the true impossibility to share their permanent software experience. Of course, it may lead to social disasters.


+ +

By publishing this high-level, easy-to-use Python-based software construction kit, our crazy hope is to empower developers in such a way that they can leave more often their software prison and spend more time to discover real life.


+ +

But (h)appyness has a price. Appy developers themselves accepted to pay. They have dealed their social life for one of the highest forms of social denial (we can't reveal their working conditions), hoping their sacrifice will free the users of their work. If, one day, you meet one of them, please be gentle and patient. But they will probably not discuss with you.


+ +

The null-IT principle

+ +

Our action is guided by the following principle.

+ +

Information Technology (IT) should be as transparent and invisible as possible.

+ +

While this may seem obvious, this principle is largely ridiculed by a great number of widespread technologies. I will mention here JEE and XSL-FO which were taken as counter-examples while developing pod. In the Python world, Zope 3, now renamed BlueBream, by trying to mimick the JEE component-model where code is viciously chopped into undersized chunks interconnected by obscure XML declarations, falls into this category as well. It is time to fight against the generalized Balkanization attitude that undermine IT innovation!


+ +

Some (counter-)principles that underlie gen

+ +

gen is the largest part of Appy and allows to build web apps. The idea is to generate, from a set of simple Python classes, a complete web app, from the web user interface to the database. Integration with appy.pod allows to generate documents from the web app. gen currently generates web apps for the Zope web application server. We had the following ideas in mind while developing it.


+ + + + diff --git a/doc/template.html b/doc/template.html index 836d928..28c77c6 100644 --- a/doc/template.html +++ b/doc/template.html @@ -12,23 +12,33 @@ - + - - + {{ title }} - diff --git a/gen/ui/appy.css b/gen/ui/appy.css index 0c6a315..f12bf9b 100644 --- a/gen/ui/appy.css +++ b/gen/ui/appy.css @@ -1,11 +1,11 @@ body { font: 75% Helvetica,Arial,sans-serif; background-color: #EAEAEA; margin-top: 18px} pre { font: 100% Helvetica,Arial,sans-serif; margin: 0} -h1 { font-size: 14pt; margin-bottom:4px;} -h2 { font-size: 13pt; margin-bottom:4px; font-style: italic; - font-weight: normal; background-color: #d7dee4} -h3 { font-size: 12pt; margin-bottom:4px; font-weight: bold;} -h4 { font-size: 11pt; margin-bottom:4px;} +h1 { font-size: 14pt; margin:6px 0 6px 0} +h2 { font-size: 13pt; margin:6px 0 6px 0; font-style: italic; + font-weight: normal} +h3 { font-size: 12pt; margin:4px 0 4px 0; font-weight: bold;} +h4 { font-size: 11pt; margin:4px 0 4px 0} h5 { font-size: 10pt; margin:0; font-style: italic; font-weight: normal; background-color: #d7dee4} h6 { font-size: 9pt; margin:0; font-weight: bold;} @@ -135,3 +135,5 @@ img { border: 0; vertical-align: middle} border-style: solid none; border-width: 1px medium; color: #333333; line-height: 120%; padding: 10px; margin: 10px 0 10px 0} +.homeTable { background-color: #f2f5f8; border-top: 2px solid grey} +.homeTable td { padding: 10px 5px 10px 10px}
- - + - + -
+
+ +
+ Appy (Applications in python) is a + GPL framework for creating + Python web apps.
+ But faster. A LOT faster!
+ Grasp its technical principles & + psychological effects or download the Appy manifesto. + +
+
- Home – - Doc – - Download – - Forum – - To do – - Contact + Download    + Forum
+ To do    + Contact
+ News
+
@@ -54,11 +64,10 @@
{{ title }}
{{ content }} + {{ content }}