Modular Architecture

One of the things I heare over and over from the FLEx Dev team is that the code base for FLEx is really complex. Not having years of experience in coding in my background, I laugh and think if it is really complex then why have we not tried a rewrite to keep the codebase alive. There are lots of reasons to do a rewrite including making the maintenance of the code base more maintainable. If the codebase actually gets too complex then it seems to me that our whole enterprise of linguistics is in danger. These arguments are not new thoughts in the IT and digital project managment world. It is just an acknowledgement that these factors are real and apply here as well.

That said, if we could imagine a new FLEx how would it be different? What would we do different from the start? I think modularity would be important. To that end I have started a list of modules that I would think would be a useful way to load divide the coding. I imagine that the core would need to be more like Gephi, where the core DEV team may chose to engage from time to time in the development of a module or plugin, but their core focus and responsibility is to primarily keep the core API available to the add-on modules and their maintainers. Now, in the Drupal project there has been years of discussion about how an idea gets added to core before it is actually added to core. The same kind of discussion happens in the WordPress community. However, here we have a mammoth set of fields in the database and still need more as we look to add more features.

If I were to develop a FLEx replacement I would use a Plugin type architecture, and a very specific code documentation schema.

Here is how I would even divide current core development into a plugin architecture. So what modules might could possibly exist? - in no particular order:

Animals, Nature, and Natural things Module

This plugin would supersede the “scientific name” field. It would hook into the entry and sense level and would be responsible for adding linked data to the lexeme from the biological and geological sciences. It would have two CC0 licensed pictures, which can be included in the dictionary and links to the appropriate resources on that species or element or geological feature.

Language Learning Module

  • Lists

  • Pairing with other tools

Semantic Domain Module

  • Add Ron Moe Semantic Domain List and attempt to match English based words already in the dictionary

  • Add Intercontenental Dictionary numbers

  • Add Comparative Austronesian Dictionary numbers

Digital Publishing Module

  • Webonary Export

  • Dictionary View Export

  • Pathway Export

  • Export a body Chart

  • Export a

Media Management Module

  • Allows users to import images, audio, and video from several sources.

  • It looks at the embedded metadata and presents that to the user, it copies relevant metadata to various predefined fields to make information available to other processes (plugins and APIs)

Construction Grammar Module

Define constructions one sees in the grammar, allow the parser to find other examples in the corpus of these constructions.

  • This would include the part of speech and associated fields

Role and Reference Grammar Module

Tense analysis

Discourse Analysis

Notes Module

  • Simply adds a variety of notes to the entry and sense

Project Management Tools

  • User Identities and Identity Management

  • Project Management lists

  • Pre Formatted views for establishing Process and workflows.

  • Role Management

Import Wikipedia text for reversal dictionary

  • This plugin would query using wikidata or wiktionary API to look and see if there is a lexicography entry and then parse that entry according to the needs of the FLEx based entry.

Orthography and Phonology Module

results matching ""

    No results matching ""