Zwartberg News

Contact us
Karoo Project
ZWARTBERG Research & Development

Zwartberg Research & Development News

Tuesday May 3rd, 2011

Sorry about the silence, I have been working on the code for a SECURITY tracking device, specially designed for perhaps highly placed individuals when they travel into politically unstable places like some African countries, so that they can be tracked in the instant by security support teams, even where there is no GSM coverage. More...

Monday March 29th, 2010

A new community-service free bulletin board for information about GREEN alternatives has been created using the Karoo Project:

Monday February 1st, 2010

The Karoo Project has gained a widget set, to make it even easier to create web applications.

Following are some live examples:

Hello Hello


Hello Hello

ID Section 1 Section 2
number A B C D A B C D

123 Another value
Yet another read-only value

The "source code" for these widgets is very simple, e.g. to create the pulldown currency list in the above example:

<div id="currency_list">
  <div style="visibility: hidden;">
    <div><img src="images/ZAR.png" style="width:100px;height:35px;border:0px;" alt="ZAR"/></div>
    <div><img src="images/USD.png" style="width:100px;height:35px;border:0px;" alt="USD"/></div>
    <div><img src="images/EUR.png" style="width:100px;height:35px;border:0px;" alt="EUR"/></div>
    <div><img src="images/GBP.png" style="width:100px;height:35px;border:0px;" alt="GBP"/></div>
  <!-- widget list selected:0; action:listAction;-->
<!-- widget menuitem action:menuAction; -->

This widget set is also open source (LGPL) and you are free to use it. Please read more here.

Thursday November 12th 2009

A new version of the "surf" application allows you to create a dynamic website via "conduit", without writing a single line of code. Just an XML configuation file, and the XHTML page.

Surf is a rock which is also a web server.

Conduit is a mechanism for creating dynamic web content directly from a database. This works in conjunction with "cave", which provides access to the PostgreSQL relational database.

Cave provides access to database services, which are defined in an XML configuration file. The Surf conduit can reference these services and create dynamic web content. E.g. Following is a simple database service definition for cave:

<database name="KarooDB" username="bmodra" password=""
 connect_timeout="1" connection-pool-size="3"/>
<service name="list-stock" id="list-stock">
    select owner,type,value,count,id from
    stock where owner=<parameter name=
    "owner" type="quoted-string"/>;

Following is the corresponding html:

    <tr id="test">
      <!-- conduit rock-name:cave; service-id:list-stock; -->
      <td><!-- column owner --></td>
      <td><!-- column type --></td>
      <td><!-- column value --></td>
      <td><!-- column count --></td>
      <td><!-- column id --></td>

... which when served by surf, will produce something like this:

owner type value count id
bmodra pc 599900 1 1
bmodra keyboard 10000 2 3
bmodra desk 70300 1 6
bmodra screen 120000 1 2

This is a very simplistic example, but the creation of rich html is no more complex than it is to create a rich website, and the dynamic content can be added by the correct placement of the conduit comments, as in the example above.

This system allows the service behind the scene to be a super computer.... and its just as simple as shown in this example, with not one line of code being written. Its all xml and xhtml.


The Karoo Project     Installing the Surf web browser


Other Links:

Lazy Lizard

Large services (like an internet banking system for example), which can grow and grow and grow, to absorb the load as time goes on... and which don't suffer so much from unexplained periods of being offline, or "freezing up".

The Karoo Project

Zwartberg Reseach & Development is a registered trading name of Open Source Software Consulting CC.
Phone:+27235411462, fax:+27235411379, mobile:+27796977082,, P.O. Box 2, Prince Albert, 6930, South Africa.