[Hplusroadmap] SKDB class structures, and a proposal for standardization teams
Bryan Bishop
kanzure at gmail.com
Sat May 24 10:11:22 CDT 2008
I sent this over to the openvirgle group and figure it'd also do some
good here. I welcome anybody yelling at my ideas for the metadata file.
At some point we'll need to do a brief outline of metadataing standards
policies or something. So, shogunx suggests copying IETF and IRTF from
ISOC.
Internet Research Task Force
http://irtf.org/
^ copy these guys for standardization (or: establish contact)
Internet Engineering Task Force
http://ietf.org/
Internet Society (".. for the future of the internet.")
http://isoc.org/
So I figure a standardization team or quality assessment team would be
nice, especially if based off of debian's quality assessment teams and
project maintainers [on the deb side of things]. But at the moment the
people who would be on that team would be the only ones writing code
and packages anyway. Call it a bootstrapping problem.
- Bryan
/me needs to get back to fenn's email on CD3WD.
---------- Forwarded Message ----------
Subject: Re: Project proposal
Date: Saturday 24 May 2008
From: Bryan Bishop <kanzure at gmail.com>
To: openvirgle at googlegroups.com
On Saturday 24 May 2008, Paul D. Fernhout wrote:
> Bryan Bishop wrote:
> > No, that's not what we said at all.
>
> Again, who is the "we"?
The guys in #hplusroadmap, which at the moment consists of: fenn, nsh,
ybit, kanzure, krebs, shogunx, biopunk, Vedestin, kramer3d, phreedom.
I'm missing a few guys at the moment, but that's probably because they
are slackers and doing something irrelevant like sleeping :-).
> > The only thing that needs to be done
> > to get it started is writing out python and classes. It's not a
> > waiting thing. Just sit down with the python documentation and hack
> > out some classes to represent the processes that we want to add
> > into the system. I see no such thing on this wiki page :-(.
>
> I once came into a project as a consultant that had a dozen people
> coding GUIs with that philosophy. What a mess, Everything different.
> Stuff incomplete. Inconsistencies. Bugs. Lots of time spent trying to
> understand what all that did. Eventually, we :-) replaced all that
> with a common architecture and higher level specifications for
> building GUIs. That new code has run for many years with hardly any
> problems and processed a lot of information.
Nah, I'm all for common architectures.
> Again, it would be helpful to give an example of a *complete* class
> that shows what you mean. Otherwise, this is about as helpful as
Again ...
http://heybryan.org/mediawiki/index.php/2008-05-12
class metadata:
name = "Default project name"
pgpKey = "3940914afdafdja0r391"
hashSum = "90149940141" # This is of the dot skdb file in general, yes?
maintainerEmailAddy = "Bryan Bishop <kanzure at gmail.com>"
reqFiles # Required files for a default installation.
configScript = path/to/config/script/within-the/.skdb-file/config.py
# To help with over-rides, the config-script is still included.
Three things that make this 'incomplete':
#1: 'reqFiles' needs to be of type list. This is due to my lack of
python knowledge.
#2: It'd be a good idea to discuss the efficacy of this format.
#3: The actual Py-YAML hooks. These are not hard.
http://pyyaml.org/wiki/PyYAMLDocumentation
Example:
class Hero:
... def __init__(self, name, hp, sp):
... self.name = name
... self.hp = hp
... self.sp = sp
... def __repr__(self):
... return "%s(name=%r, hp=%r, sp=%r)" % (
... self.__class__.__name__, self.name, self.hp, self.sp)
In this case we can do something like:
class metadata:
name = "Default project name"
pgpKey = "3940914afdafdja0r391"
hashSum = "90149940141" # This is of the dot skdb file in general, yes?
maintainerEmailAddy = "Bryan Bishop <kanzure at gmail.com>"
reqFiles # Required files for a default installation.
configScript = path/to/config/script/within-the/.skdb-file/config.py
# To help with over-rides, the config-script is still included.
def __init__(name, pgpKey, hashSum, maintainerEmailAddy, reqFiles,
configScript):
self.name = name
self.pgpKey = pgpKey
self.hashSum = hashSum
self.maintainerEmailAddy = maintainerEmailAddy
self.reqFiles = reqFiles
self.configScript = configScript
def __repr__(self):
return "%s(name=%r, pgpKey=%r, hashSum=%r, maintainerEmailAddy=%r,
reqFiles=%r, configScript=%r)" % (self.__class__.__name__, self.name,
self.pgpKey, self.hashSum, self.maintainerEmailAddy, self.reqFiles,
self.configScript)
It'd be a good idea to check the %r's there, I'm pretty sure I'm not
using the correct variable replacement symbols/tokens, for example
specifying a list with %r is probably very very wrong.
> saying "write it down on paper". Which may be what is done (using
> paper), but write what?
It's the classes and metadata, remember? It's so that we can then
proceed to eventually something like this: class BunsenBurner variables
size, metal composition requirements (this is probably of a type that
is elsewhere specified in the database; but at first, it can be a
placeholder), maybe propane versus octane versus pure alcohol and so
on. Also, the reason why the 'reqFiles' variable is up there in the
root metadata class specification is so that you can dump files into
the .skdb file (there's a dot there, it's to be pronounced) and mention
them, even if they're just 'natural language' stuffs.
> And using what notation?
http://yaml.org/
http://python.org/
> And to what ends?
Automated manufacturing, semanticized knowledge databases, etc. etc.
> And how does it all interrelate? All issues that are begun to be
> addressed when you give an example. These are just a few examples of
To be fair, I did post examples a few weeks ago.
> the "hard questions" I mentioned in another post. If you're going to
> intimidate Mike into wandering off, at least let's get something out
> of it, please. :-(
For what it's worth, I have+had no intentions of intimidating Mike.
- Bryan
________________________________________
http://heybryan.org/
-------------------------------------------------------
________________________________________
http://heybryan.org/
More information about the Hplusroadmap
mailing list