Re: BlackBox guide for Dummies: Proposition

From: [at]} <Bob>
Date: Wed, 21 Jan 2004 12:41:02 +0000

----boundary-LibPST-iamunique-1439749230_-_-
Content-type: text/plain

Hi Bart,

> Let me know if this is a good idea, plus any general ideas about the
> contents (approach etc.) you'd like to propose at this stage.

this is a good idea, I think, but may be difficult to carry out.

A useful approach might be to decide on some 'model problems'
covering different domains, and lead the reader through the
development process using BB.
http://www-2.cs.cmu.edu/~Compose/html/ModProb/

We could perhaps choose something like the well-known University
Library Problem, or the Japanese Sake Warehouse Problem, and show how
to develop such a system using BB. This would cover small but fairly
realistic business software problems and demonstrate well the
separation between layers: storage/persistence, 'business logic' and
user interface. It should be feasible to produce at least 2 each of
the storage & UI layers to show how they can be mixed and matched
easily.

For instance, we should be able to write an SQL storage layer and a
conventional flat-file layer which are easily interoperable &
interchangeable; we should also be able to write a GUI layer and, say,
a 'command line' layer which are interchangeable with each other and
also interoperable with the different persistence layers. For my own
education I have been working on some experiments along these lines,
although they are not at the moment in a form I would display in public,
nor have I written any documentation.

It would also be nice to write an interchangeable browser-based UI,
but I have not done anything like that in BB. This would be something
that operates as a servlet, unpacks the string from the browser,
calls the business logic, then formats the output as XML or HTML and
gives it back to the browser.

Something like that would cover over 90% of business software
developments, in my experience. It fails to exploit many of the
important features of Blackbox, so it would leave many parts of the
framework unexplained. However, there are some features which
end-users like very much and expect in a modern GUI, but which BB does
not provide as standard. The screamingly obvious one to me is iconic
toolbars. So it might be useful to develop such a thing and use that as
a guide to the particular parts of BB that it explores.

Of course, BB is for many other domains, but a similar approach to those
domains might be productive: choose a manageably small, but realistic
and well-known, model problem, and document a development project using
Blackbox.

If we went ahead with a documentation project then we would need to
decide who our audience was. I work in commercial data-processing,
where nobody, and I mean nobody, has heard of Oberon or its
derivatives. Yet, properly handled, BB could have a big market there
because of its simplicity and ease-of-use. Most people working in
business IT development do not want to read about the kind of
problems that are of interest to computer scientists and physicists,
they want to be able to write EPOS, order-entry, property management
and such-like systems. If BB is ever to go head-to-head with stuff
like Java in that world then it needs realistic examples and
instructions in how to develop business software.

-- 
Regards,
 Bob
p.s. I hate '...for Dummies'! Let us flatter our readers rather than
insult them. The Intelligent Programmer's Guide to Blackbox.
I also note that computer books are useful in inverse proportion to
their size. '...for Dummies' books are usually very thick indeed.
--------------------------------------------
To unsubscribe from this mailing list, send a message containing the word "unsubscribe" to:
   blackbox-request{([at]})nowhere.xyTo get a list of valid e-mail commands and instructions on their usage, send a message containing the word "help" to the above address.
Send any problem reports or questions related to this email list to the list owner at
   owner-blackbox{([at]})nowhere.xyCurrent posting policy:
a) To post you should use the same address by which you are subscribed to the mailing list. That way, the list server will recognize you as subscriber and forward your posting immediately, without creating any overhead.
b) If, for some reason, you cannot post from the address, by which you are subscribed, your message will be moderated to avoid spam. Please understand that moderation will often cause some delay, in particular over weekends or holydays.
----boundary-LibPST-iamunique-1439749230_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEhpIEJhcnQsXHBhcg0KXHBhcg0KPiBMZXQgbWUg
a25vdyBpZiB0aGlzIGlzIGEgZ29vZCBpZGVhLCBwbHVzIGFueSBnZW5lcmFsIGlkZWFzIGFib3V0
IHRoZVxwYXINCj4gY29udGVudHMgKGFwcHJvYWNoIGV0Yy4pIHlvdSdkIGxpa2UgdG8gcHJvcG9z
ZSBhdCB0aGlzIHN0YWdlLlxwYXINClxwYXINCnRoaXMgaXMgYSBnb29kIGlkZWEsIEkgdGhpbmss
IGJ1dCBtYXkgYmUgZGlmZmljdWx0IHRvIGNhcnJ5IG91dC5ccGFyDQpccGFyDQpBIHVzZWZ1bCBh
cHByb2FjaCBtaWdodCBiZSB0byBkZWNpZGUgb24gc29tZSAnbW9kZWwgcHJvYmxlbXMnXHBhcg0K
Y292ZXJpbmcgZGlmZmVyZW50IGRvbWFpbnMsIGFuZCBsZWFkIHRoZSByZWFkZXIgdGhyb3VnaCB0
aGVccGFyDQpkZXZlbG9wbWVudCBwcm9jZXNzIHVzaW5nIEJCLlxwYXINCmh0dHA6Ly93d3ctMi5j
cy5jbXUuZWR1L35Db21wb3NlL2h0bWwvTW9kUHJvYi9ccGFyDQpccGFyDQpXZSBjb3VsZCBwZXJo
YXBzIGNob29zZSBzb21ldGhpbmcgbGlrZSB0aGUgd2VsbC1rbm93biBVbml2ZXJzaXR5XHBhcg0K
TGlicmFyeSBQcm9ibGVtLCBvciB0aGUgSmFwYW5lc2UgU2FrZSBXYXJlaG91c2UgUHJvYmxlbSwg
YW5kIHNob3cgaG93XHBhcg0KdG8gZGV2ZWxvcCBzdWNoIGEgc3lzdGVtIHVzaW5nIEJCLiBUaGlz
IHdvdWxkIGNvdmVyIHNtYWxsIGJ1dCBmYWlybHlccGFyDQpyZWFsaXN0aWMgYnVzaW5lc3Mgc29m
dHdhcmUgcHJvYmxlbXMgYW5kIGRlbW9uc3RyYXRlIHdlbGwgdGhlXHBhcg0Kc2VwYXJhdGlvbiBi
ZXR3ZWVuIGxheWVyczogc3RvcmFnZS9wZXJzaXN0ZW5jZSwgJ2J1c2luZXNzIGxvZ2ljJyBhbmRc
cGFyDQp1c2VyIGludGVyZmFjZS4gSXQgc2hvdWxkIGJlIGZlYXNpYmxlIHRvIHByb2R1Y2UgYXQg
bGVhc3QgMiBlYWNoIG9mXHBhcg0KdGhlIHN0b3JhZ2UgJiBVSSBsYXllcnMgdG8gc2hvdyBob3cg
dGhleSBjYW4gYmUgbWl4ZWQgYW5kIG1hdGNoZWRccGFyDQplYXNpbHkuXHBhcg0KXHBhcg0KRm9y
IGluc3RhbmNlLCB3ZSBzaG91bGQgYmUgYWJsZSB0byB3cml0ZSBhbiBTUUwgc3RvcmFnZSBsYXll
ciBhbmQgYVxwYXINCmNvbnZlbnRpb25hbCBmbGF0LWZpbGUgbGF5ZXIgd2hpY2ggYXJlIGVhc2ls
eSBpbnRlcm9wZXJhYmxlICZccGFyDQppbnRlcmNoYW5nZWFibGU7IHdlIHNob3VsZCBhbHNvIGJl
IGFibGUgdG8gd3JpdGUgYSBHVUkgbGF5ZXIgYW5kLCBzYXksXHBhcg0KYSAnY29tbWFuZCBsaW5l
JyBsYXllciB3aGljaCBhcmUgaW50ZXJjaGFuZ2VhYmxlIHdpdGggZWFjaCBvdGhlciBhbmRccGFy
DQphbHNvIGludGVyb3BlcmFibGUgd2l0aCB0aGUgZGlmZmVyZW50IHBlcnNpc3RlbmNlIGxheWVy
cy4gRm9yIG15IG93blxwYXINCmVkdWNhdGlvbiBJIGhhdmUgYmVlbiB3b3JraW5nIG9uIHNvbWUg
ZXhwZXJpbWVudHMgYWxvbmcgdGhlc2UgbGluZXMsXHBhcg0KYWx0aG91Z2ggdGhleSBhcmUgbm90
IGF0IHRoZSBtb21lbnQgaW4gYSBmb3JtIEkgd291bGQgZGlzcGxheSBpbiBwdWJsaWMsXHBhcg0K
bm9yIGhhdmUgSSB3cml0dGVuIGFueSBkb2N1bWVudGF0aW9uLlxwYXINClxwYXINCkl0IHdvdWxk
IGFsc28gYmUgbmljZSB0byB3cml0ZSBhbiBpbnRlcmNoYW5nZWFibGUgYnJvd3Nlci1iYXNlZCBV
SSxccGFyDQpidXQgSSBoYXZlIG5vdCBkb25lIGFueXRoaW5nIGxpa2UgdGhhdCBpbiBCQi4gVGhp
cyB3b3VsZCBiZSBzb21ldGhpbmdccGFyDQp0aGF0IG9wZXJhdGVzIGFzIGEgc2VydmxldCwgdW5w
YWNrcyB0aGUgc3RyaW5nIGZyb20gdGhlIGJyb3dzZXIsXHBhcg0KY2FsbHMgdGhlIGJ1c2luZXNz
IGxvZ2ljLCB0aGVuIGZvcm1hdHMgdGhlIG91dHB1dCBhcyBYTUwgb3IgSFRNTCBhbmRccGFyDQpn
aXZlcyBpdCBiYWNrIHRvIHRoZSBicm93c2VyLlxwYXINClxwYXINClNvbWV0aGluZyBsaWtlIHRo
YXQgd291bGQgY292ZXIgb3ZlciA5MCUgb2YgYnVzaW5lc3Mgc29mdHdhcmVccGFyDQpkZXZlbG9w
bWVudHMsIGluIG15IGV4cGVyaWVuY2UuIEl0IGZhaWxzIHRvIGV4cGxvaXQgbWFueSBvZiB0aGVc
cGFyDQppbXBvcnRhbnQgZmVhdHVyZXMgb2YgQmxhY2tib3gsIHNvIGl0IHdvdWxkIGxlYXZlIG1h
bnkgcGFydHMgb2YgdGhlXHBhcg0KZnJhbWV3b3JrIHVuZXhwbGFpbmVkLiBIb3dldmVyLCB0aGVy
ZSBhcmUgc29tZSBmZWF0dXJlcyB3aGljaFxwYXINCmVuZC11c2VycyBsaWtlIHZlcnkgbXVjaCBh
bmQgZXhwZWN0IGluIGEgbW9kZXJuIEdVSSwgYnV0IHdoaWNoIEJCIGRvZXNccGFyDQpub3QgcHJv
dmlkZSBhcyBzdGFuZGFyZC4gVGhlIHNjcmVhbWluZ2x5IG9idmlvdXMgb25lIHRvIG1lIGlzIGlj
b25pY1xwYXINCnRvb2xiYXJzLiBTbyBpdCBtaWdodCBiZSB1c2VmdWwgdG8gZGV2ZWxvcCBzdWNo
IGEgdGhpbmcgYW5kIHVzZSB0aGF0IGFzXHBhcg0KYSBndWlkZSB0byB0aGUgcGFydGljdWxhciBw
YXJ0cyBvZiBCQiB0aGF0IGl0IGV4cGxvcmVzLlxwYXINClxwYXINCk9mIGNvdXJzZSwgQkIgaXMg
Zm9yIG1hbnkgb3RoZXIgZG9tYWlucywgYnV0IGEgc2ltaWxhciBhcHByb2FjaCB0byB0aG9zZVxw
YXINCmRvbWFpbnMgbWlnaHQgYmUgcHJvZHVjdGl2ZTogY2hvb3NlIGEgbWFuYWdlYWJseSBzbWFs
bCwgYnV0IHJlYWxpc3RpY1xwYXINCmFuZCB3ZWxsLWtub3duLCBtb2RlbCBwcm9ibGVtLCBhbmQg
ZG9jdW1lbnQgYSBkZXZlbG9wbWVudCBwcm9qZWN0IHVzaW5nXHBhcg0KQmxhY2tib3guXHBhcg0K
XHBhcg0KSWYgd2Ugd2VudCBhaGVhZCB3aXRoIGEgZG9jdW1lbnRhdGlvbiBwcm9qZWN0IHRoZW4g
d2Ugd291bGQgbmVlZCB0b1xwYXINCmRlY2lkZSB3aG8gb3VyIGF1ZGllbmNlIHdhcy4gSSB3b3Jr
IGluIGNvbW1lcmNpYWwgZGF0YS1wcm9jZXNzaW5nLFxwYXINCndoZXJlIG5vYm9keSwgYW5kIEkg
bWVhbiBub2JvZHksIGhhcyBoZWFyZCBvZiBPYmVyb24gb3IgaXRzXHBhcg0KZGVyaXZhdGl2ZXMu
IFlldCwgcHJvcGVybHkgaGFuZGxlZCwgQkIgY291bGQgaGF2ZSBhIGJpZyBtYXJrZXQgdGhlcmVc
cGFyDQpiZWNhdXNlIG9mIGl0cyBzaW1wbGljaXR5IGFuZCBlYXNlLW9mLXVzZS4gTW9zdCBwZW9w
bGUgd29ya2luZyBpblxwYXINCmJ1c2luZXNzIElUIGRldmVsb3BtZW50IGRvIG5vdCB3YW50IHRv
IHJlYWQgYWJvdXQgdGhlIGtpbmQgb2ZccGFyDQpwcm9ibGVtcyB0aGF0IGFyZSBvZiBpbnRlcmVz
dCB0byBjb21wdXRlciBzY2llbnRpc3RzIGFuZCBwaHlzaWNpc3RzLFxwYXINCnRoZXkgd2FudCB0
byBiZSBhYmxlIHRvIHdyaXRlIEVQT1MsIG9yZGVyLWVudHJ5LCBwcm9wZXJ0eSBtYW5hZ2VtZW50
XHBhcg0KYW5kIHN1Y2gtbGlrZSBzeXN0ZW1zLiBJZiBCQiBpcyBldmVyIHRvIGdvIGhlYWQtdG8t
aGVhZCB3aXRoIHN0dWZmXHBhcg0KbGlrZSBKYXZhIGluIHRoYXQgd29ybGQgdGhlbiBpdCBuZWVk
cyByZWFsaXN0aWMgZXhhbXBsZXMgYW5kXHBhcg0KaW5zdHJ1Y3Rpb25zIGluIGhvdyB0byBkZXZl
bG9wIGJ1c2luZXNzIHNvZnR3YXJlLlxwYXINClxwYXINCi0tIFxwYXINClJlZ2FyZHMsXHBhcg0K
IEJvYlxwYXINClxwYXINCnAucy4gSSBoYXRlICcuLi5mb3IgRHVtbWllcychIExldCB1cyBmbGF0
dGVyIG91ciByZWFkZXJzIHJhdGhlciB0aGFuXHBhcg0KaW5zdWx0IHRoZW0uIFRoZSBJbnRlbGxp
Z2VudCBQcm9ncmFtbWVyJ3MgR3VpZGUgdG8gQmxhY2tib3guXHBhcg0KXHBhcg0KSSBhbHNvIG5v
dGUgdGhhdCBjb21wdXRlciBib29rcyBhcmUgdXNlZnVsIGluIGludmVyc2UgcHJvcG9ydGlvbiB0
b1xwYXINCnRoZWlyIHNpemUuICcuLi5mb3IgRHVtbWllcycgYm9va3MgYXJlIHVzdWFsbHkgdmVy
eSB0aGljayBpbmRlZWQuXHBhcg0KXHBhcg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS1ccGFyDQpccGFyDQpUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMgbWFpbGlu
ZyBsaXN0LCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5nIHRoZSB3b3JkICJ1bnN1YnNjcmliZSIg
dG86XHBhcg0KICAgYmxhY2tib3gtcmVxdWVzdEBvYmVyb24uY2hccGFyDQpccGFyDQpUbyBnZXQg
YSBsaXN0IG9mIHZhbGlkIGUtbWFpbCBjb21tYW5kcyBhbmQgaW5zdHJ1Y3Rpb25zIG9uIHRoZWly
IHVzYWdlLCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5nIHRoZSB3b3JkICJoZWxwIiB0byB0aGUg
YWJvdmUgYWRkcmVzcy5ccGFyDQpccGFyDQpTZW5kIGFueSBwcm9ibGVtIHJlcG9ydHMgb3IgcXVl
c3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbWFpbCBsaXN0IHRvIHRoZSBsaXN0IG93bmVyIGF0XHBh
cg0KICAgb3duZXItYmxhY2tib3hAb2Jlcm9uLmNoXHBhcg0KXHBhcg0KQ3VycmVudCBwb3N0aW5n
IHBvbGljeTpccGFyDQpccGFyDQphKSBUbyBwb3N0IHlvdSBzaG91bGQgdXNlIHRoZSBzYW1lIGFk
ZHJlc3MgYnkgd2hpY2ggeW91IGFyZSBzdWJzY3JpYmVkIHRvIHRoZSBtYWlsaW5nIGxpc3QuIFRo
YXQgd2F5LCB0aGUgbGlzdCBzZXJ2ZXIgd2lsbCByZWNvZ25pemUgeW91IGFzIHN1YnNjcmliZXIg
YW5kIGZvcndhcmQgeW91ciBwb3N0aW5nIGltbWVkaWF0ZWx5LCB3aXRob3V0IGNyZWF0aW5nIGFu
eSBvdmVyaGVhZC5ccGFyDQpccGFyDQpiKSBJZiwgZm9yIHNvbWUgcmVhc29uLCB5b3UgY2Fubm90
IHBvc3QgZnJvbSB0aGUgYWRkcmVzcywgYnkgd2hpY2ggeW91IGFyZSBzdWJzY3JpYmVkLCB5b3Vy
IG1lc3NhZ2Ugd2lsbCBiZSBtb2RlcmF0ZWQgdG8gYXZvaWQgc3BhbS4gUGxlYXNlIHVuZGVyc3Rh
bmQgdGhhdCBtb2RlcmF0aW9uIHdpbGwgb2Z0ZW4gY2F1c2Ugc29tZSBkZWxheSwgaW4gcGFydGlj
dWxhciBvdmVyIHdlZWtlbmRzIG9yIGhvbHlkYXlzfX0AYXQgaW4gQkIuIFQ=
----boundary-LibPST-iamunique-1439749230_-_---
Received on Wed Jan 21 2004 - 13:41:02 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:28:59 UTC