Showing posts with label dogfooding. Show all posts
Showing posts with label dogfooding. Show all posts

Enterprise plan directory structure

Mike's Notes

Pipi 9 is still highly experimental. I have been very busy over the last month working on the second deployment of Pipi 9 to production.

  • The first (dogfooding) is Ajabbi.com.
  • The second (pilot) is for a national disability rights organisation in NZ.

The second has been very slow, mainly because it involved the migration of an existing website to a new one, which required careful consideration of the organisation's needs, including using 4 languages (English, Maori, NZ Sign Language, AAC), catering for screens-formats (mobile, desktop, braille, screenreaders, kiosk, TV), and personalised profiles to meet accessibility needs. There have been six months of extensive experimentation and user testing using a manually created 1,100-page static website prototype. Last week, the successful import of existing content into a CMS database was completed. The job now is to connect Pipi 9 to this database to automate future production of all website content.

These notes are about the draft default directory structure for that website. All other 26 existing websites have now been migrated to use the same default structure.

Update 30/03/2026

Putting the data centre into production has resulted in some changes.

Data directory for databases external to Pipi
  1. data/
  2. <Database Type>/ eg "pg"
  3. <Database Version No>/ eg "18"

Pipi directory

  1. pipi/
  2. <Account type>/ eg "e"
  3. <Account Name>/ eg "ajabbi"
Work directory for backups, etc
  1. work/

Update 04/04/2026

Pipi Robot added to description.

Update 06/04/2026

<major version><edition><account type>/ added to all configurations to standardise and simplify setups.

Update 11/04/2026

Pipi Nest is used as the name for the root config.

Update 15/04/2026

<account name(s)> AND <instance name(s)> both present.

Resources

References

  • Reference

Repository

  • Home > Ajabbi Research > Library >
  • Home > Handbook > 

Last Updated

23/04/2026

Enterprise plan directory structure

By: Mike Peters
On a Sandy Beach: 18/08/2025

Mike is the inventor and architect of Pipi and the founder of Ajabbi.

This is the current default directory configuration for enterprise plan customer accounts. It should also work for the digital twins in the Pipi 9 data centre.

The account administrator can edit the configuration file to easily change the location of these key directories for a particular cloud host.

  • AWS
  • Azure
  • GCP
  • IBM
  • Oracle
  • etc. 

On a public-facing website, all of this would be obfuscated using UUIDs, hidden keys, etc.

Pipi Robot

The hidden robot contains most of the complex systems and functions and acts as the super-administrator, thereby simplifying enterprise applications.

Configuration File

/9ae/ (Pipi Nest)

  • pipi_nest_probe.cfm
  • data/
    • couchbase/
    • db2/
    • derby/
    • h2/
    • hsqldb/
    • informix/
    • mariadb/
    • msaccess/
      • 32/
      • 64/
    • mssql/
    • mysql/
    • oracle/
    • pg/
      • 18/
    • sqllite/
    • sybase/
    • virtuoso/
  • pipi/
    • Application.cfc (1) - Nest settings
    • pipi_nest.cfm
    • ajabbi/ (Account Name)
      • Application.cfc (2) - Account settings
      • pipi_account.cfm
      • com/
      • dat/
      • lib/
      • log/
      • plu/
      • tmp/
      • www/
        • learn.ajabbi.com/
          • Application.cfc (4) - Website settings
        • wiki.ajabbi.com/
          • Application.cfc (4) - Website settings
    • dis-01/ (Instance)
    • ...
    • dis-04/ (Instance)
      • Application.cfc (2) - Account settings
      • pipi_account.cfm
      • pip/
        • Application.cfc (3) - Version settings
        • pipi_version.,cfm
        • i18n/
        • log/
        • pipi_<pipi version>.txt
        • sys/
        • temp/
        • template/
          • _include/
          • _layout/
            • _log/
      • www/
        • mission-control/
          • Application.cfc (4) - Website settings
  • work/
    • backup/
    • install/
    • project/

    Descriptions


    Directory Example Description
    <major version><edition><account type> 9ae/ Pipi Nest:
    Major version = 9
    Edition = a (Pipi Application)
    Account type = e (Enterprise).
    <account name> ajabbi/ User account codename (lowercase, unique ASCII).
    com com/ Open-source code packages from GitHub.
    dat dat/ Customer data.
    lib lib/ Code libraries.
    log log/ Logs.
    plu plu/ Open-source plugins.
    tmp tmp/ Temporary files.
    www www/ All websites.
    <website> wiki.ajabbi.com/ A website (domain name).
    <instance name> dis-01/ Pipi instance name (retired deity, lowercase, unique ASCII).

    Thinking about the next steps ahead

    Mike's Notes

    I had the regular meeting on Sunday night, which helped bounce ideas around. I would like to know what people think of what I have written. Just contact me for a chat.

    Resources

    References

    • Reference

    Repository

    • Home > Ajabbi Research > Library >
    • Home > Handbook > 

    Last Updated

    09/07/2025

    Thinking about the next steps ahead

    By: Mike Peters
    On a Sandy Beach: 01/07/2025

    Mike is the inventor and architect of Pipi and the founder of Ajabbi.

    Ajabbi uses Pipi 9 to run on, known as "dogfooding". Steady progress is being made with Pipi 9, and the first customer website, which is now well underway.

    The customer's website required several reusable modules and utilises these engines and more.

    • Website Engine
    • Reference Engine
    • i18n Engine
    • Reference Engine

    Documentation of these modules and engines is now required for developers and administrators.

    Next Project

    It was now time to determine a plan for the next project.

    There are three options;

    • Finish the developer documentation
    • Complete the user workspace roadmap
    • Build a simple SaaS application

    I will go into some detail about each option.

    Finish the developer documentation.

    No developer will be able to build anything with Pipi unless they have some documentation on how it works. 5% is documented.

    Complete the user workspace roadmap.

    This will enable users to log in and use the available features, but they will still require instructions in the form of documentation.

    Build a simple SaaS application.

    The Movie Industry SaaS application is straightforward and utilises a compact ontology. Its ontology is over 1,000 times smaller than SNOMED, so it's an easy place to start. It would be a way to test the Ontology API and Boro engines. It builds some more reusable modules. It also provides a helpful tool that people can use for their work.

    This would generate more learning opportunities for me, as I do this work by the seat of my pants.

    Discussion

    The advantage of building a simple SaaS application is that it requires a user workspace and some relevant documentation. 

    Being product-led, would only schedule work on any necessary background systems and documentation. It also makes things more manageable as Pipi slowly scales.

    Over time, more modules will be completed, more engines will be documented, and the user workspace will expand.

    Show and tell

    Embedding short YouTube video recordings demonstrating workspace usage could be incorporated into training and contextual help documentation.

    A longer, prerecorded technical demonstration video, accompanied by slides and a PDF white paper, could then be shared with the Ontolog Forum to solicit critical feedback. I suspect they would be curious about a novel use of Ontology technology as part of constraints in State Space.

    Updated Pipi 9 to 10 plan

    Mike's Notes

    Notes on a successful meeting on Tuesday morning with Luis and Cristobal from Ortus Solutions. This is the living plan.

    Resources

    • Resource

    References

    • Reference

    Repository

    • Home > Ajabbi Research > Library >
    • Home > Handbook > 

    Last Updated

    20/06/2025

    Updated Pipi 9 to 10 plan

    By: Mike Peters
    On a Sandy Beach: 20/06/2025

    Mike is the inventor and architect of Pipi and the founder of Ajabbi.

    I had an excellent remote meeting on Tuesday at 7am with Luis Majano and Cristobal Escobar from Ortus Solutions. It was to discuss

    • The migration of Pipi to run on the BoxLang platform
    • Support plans
    • Sponsorship

    Details

    • Pipi 9
      • Going into production now
      • Not designed to run on BoxLang, but 90% can be run in compatibility mode.
      • Written in CFML code
      • Expected to take 12 months
      • For enterprise critical infrastructure in any human language or writing system.
      • Ajabbi
        • runs on Pipi (dogfooding)
        • Has a first customer
        • Bootstrapping
        • Growing community
        • Hybrid closed-source/open-source
        • Not-for-profit foundation to be created

    • Pipi 10
      • Will be built by Pipi 9
      • Expected to take 12months +
      • Designed to run on Boxlang
      • Can generate the bx code
      • Written in CFML code
      • Use Boxlang to enable customers to use Python, Go, PHP, CFML, Java, and Ruby.
      • Ajabbi
        • Paid dedicated support by Ortus
        • Sponsorship of the Ortus open-source
        • Open-source Pipi community on GitHub
    • Migration
      • BoxLang is very new
      • Ortus has a crack team that has built BoxLang, Command Box, WireBox, etc over the decades.
      • Pipi 9 and Pipi 10 will run alongside each other till Pipi 10 can take over. Production will remain continuous.
      • Mike has spent 20,000 hours as the architect on Pipi since 1997 (Pipi 1). Necessary to plan migration to be efficient.
      • Mike is to do a crash course in Ortus "box" products.
      • Pipi 10 takes autonomous control of BoxLang via? (Several techniques are possible.)
      • Further meetings with Ortus