[GeolLLibre] Re: idées en vrac
- From: Pierre Chevalier Géologue <pierrechevaliergeol@xxxxxxx>
- To: geolllibre@xxxxxxxxxx
- Date: Mon, 18 Apr 2016 12:58:43 +0200
Salut,
Le 15/04/2016 10:47, Jean-François Moyen a écrit :
Bonjour à tous,
Suite à une longue discussion à bâtons rompus
Tu veux dire à troncs d'arbres défoncés, plutôt, non?
For the sake of everyone's comprehension in the list, I will reply in
English (French-readable, hopefully). Because we are now aiming towards
something much more global, and English is nowadays more fashionable
than (French or German or Spanish or Russian or ...), worldwide.
Si vous voulez, je pourrai faire en 2 langues, ça ne me dérange guère.
Mon clavier s'usera un peu plus vite, je m'en fiche et lui aussi.
hier avec Pierre, quelques idées à partager sur la liste, un peu
en vrac :
1) pour que geol-libre vive, il faut proposer des outils que les "vrais
gens" (les géologues) vont utiliser et apprécier. Un peu de même façon
que os-geo existe parce qu'ils ont un (plusieurs en fait) outils qui
marchent pour de bon, et qu'on peut utiliser en production.
Yes, I agree. But it is worth noting that these tools, usable by
"normal" people, have had a long way before being usable, especially the
end-user graphical interfaces. A long way means all steps of development.
What I mean is that the work must be done step-by-step: starting by the
GUI is a mistake: first, the idea, then implement the basic data bricks,
start with a small core, ensure that it actually works, and then comes
the interface. After come iterations with more implementations, bug
fixes, add features, GUI improvements, skins, plugins, etc.
Another idea that came to us the day before-before yesterday was that
developing and packaging and distributing a desktop application can be a
hassle, but developing a "web-based" application (which is fashionable,
but that's far to be the point) is much easier, at least in some ways.
It is easier in the sense that I (in the role of the server's
administrator) master absolutely everything: all packages, dependencies,
etc. If I go through, say, CGI scripts to implement an application, it
will never depend on the client (the non-geek geologist) side computer
setup, provided that he uses a reasonably recent web browser. I can use
any combination of language(s), any number of back servers (n-tiers or
not), use any kind of database or nothing at all (all-in-memory, and
keep on buying more RAM): the user will never know/notice.
Yes but... y'all tell me that geologists work in the field, without any
Internet connection very often. I know: this first step (web
application) would be a sort of first draft, a proof of concept to
validate a basic idea, for instance, and to get end users' opinions.
After that, once the concept is validated, a full-blown graphical user
interface can be developed aiming at the desktop (understand: autonomous
application, to be run on your laptop, in the middle of the
jungle/desert/tundra).
2) les "vrais gens", à 90%, ne sont pas des programmateurs ni des
informaticiens. Je veux dire par là que non seulement ils ne sont pas
capables de coder une application ou un plugin, fût-il minuscule, mais
aussi qu'ils n'ont pas la culture de "bidouille". Modifier un fichier de
config est la limite supérieure de ce que la majeure partie des
géologues peut accepter de faire.
It depends on the generation, also: geologists (from the real world,
real users) aged around 60 or 70 who dared to use computers have
intensely used command-line interfaces, and efficiently, in the past, on
a daily basis. And (to the surprise of some younger guys), it did work,
and a whole lot of work was actually done, quickly, automagically, on
extremely limited machines (if we compare them to today's computers).
So these fellows would not be afraid of typing command lines, pipelining
commands, scripting, etc.
We can observe this, not only among the geologists, but in the whole
population, in the Linux User Groups (LUGs): very often, the older
people are the fastest ones to adopt GNU/Linux.
But I agree, we should not aim *only* at old farts (sorry, no offense
intended, as you had guessed;))...
Par conséquent, dire qu'on a "implémenté" un format de BDD géologique
(postgeol, désolé Pierre) parce que les tables et les scripts existent
et que "yaka" les intégrer dans son propre serveur postgres ... ne
marche pas.
Well, yes, but if someone (from this geeky list) just tried once, and
asked a few questions, then we could well have advanced on this matter
(read: wake up guys!). I know, it is a little bit of a hassle, but on
the other hand, everything runs just fine on my setup, I have
implemented a couple of servers which ran/run smoothly in the real
world, and I cannot guess what will or will not work on such or such
platform and/or software combination.
I can setup a few VMs or containers to try some combinations, but,
frankly, I have many other things to do.
Another fellow here told me that he partly succeeded at implementing
postgeol (it was bdexplo, at the time) on a Raspberry Pi: the testimony
should be written right here, on this list (and if possible in English
please), so that we can be constructive, as a community.
Il faut offrir une solution qui permette à Mr Tout-le-monde
de déployer sur sa machine en trois clics, et qui donne accès aux
fonctions souhaitées de façon simple (GUI dans l'idéal, mais à la
rigueur c'est pas crucial; en tout cas une solution intégrée et pas un
truc où il faut utiliser un éditeur de texte, un fichier de config,
trois programmes externes et un serveur de BDD pour arriver à faire
quelque chose).
At the very moment, I think that what could be offered is a simple file
with the whole database system as an sqlite. But this will not be a
true postgeol instance, since sqlite does not offer all the features of
PostgreSQL (a bit like comparing a formula 1 with a bicycle: both do the
same job, but in a relatively different manner).
What could also be done would be a docker containing the postgeol, ready
to use, with all necessary dependencies and little tweaks, all bundled
into a single container. I'm not (yet) familiar with docker, so if
someone is able and willing to make such a thing, you're welcome!
Ca ne veut pas dire que ce n'est pas utile ou intéressant, mais c'est ce
qui se passe sous le capot et ce n'est pas ce que les gens veulent voir...
This counts among the reasons why I did this conference in Paris: I'm
opening geolllibre towards computer scientists, DBAs, programmers, etc.
To try to gather some energies and some biodiversity.
En fait c'est un peu le problème général de la communauté libre (*troll
detected*): à part quelques projets "flagship" comme QGis typiquement,
énormément d'outils ne sont pas directement utilisables par quelqu'un
qui n'est pas capable de les programmer (ou de comprendre le
fonctionnement interne pour le moins). Évidemment, le travail gratifiant
c'est de développer les fonctionnalités "core", pas de s'embêter à le
packager dans un installateur qui sera capable de s'adapter à tout les
cas de figure, depuis un macOs ancestral à un windows 7 d'entreprise
avec une politique de droits parano, à une debian huilée comme une
montre suisse...
Yes: non solum the core functionalities are more "noble" to code, as you
say, sed etiam *it can be a pain in the neck to do a graphical user
interface*, and it takes very often *much, much more efforts* than to
code a core function. Plus, it can induce a whole lot more bugs, for a
number of reasons.
[
Concerning this point, Red is offering astonishingly promising stuff. I
still must test that thoroughly, but I can see a bright light not so far
away, which will enlighten GUI development greatly.
(always remember that we are still in the stone age of computing...)
]
mais du point de vue de l'utilisateur naïf c'est la
différence entre un programme qu'on utilise (click, click, ok, accepter,
démarrer le programme, oh ! Ca marche !) et un qui ne fera qu'encombrer
le disque dur ("comment ça il faut aussi que j'installe postGreSQL, et
postGIS, et un outil qui me permette de taper des requêtes, c'est quoi ?
Access ? Ah oui mais il faut que je configure une source de données
machine, keskecé encore que ça ? Oh et puis zut, je retourne chez
Oasis/GoCad/Surfer/ce que vous voudrez....").
Yes, well, it is true in some platforms (big <troll> ahead) but in some
other ones, a simple "apt install package" or "yum install package" will
seamlessy install everything needed, without even clicking and accepting
this or that. Plus, it won't slow your machine down and/or leave some
unused .dlls behind, once you throw the application away.</troll>
Nowadays, I frequent less and less people who are in the windows
ecosystem, so I'm not objective on this matter.
Et à propos, la communauté des "vrais" utilisateurs utilise windows à
80%, mac à 15%, linux à 5% (chiffres (c) estimation au doigt mouillé,
2016).
Thanks for the BIG troll! ;o)
If you allow me, I will rebounce on it... later, trolls have already
been fed enough for today...
3) Vue la pénibilité du travail de diffusion/packaging/etc., le plus
raisonnable semble être de s'appuyer sur des outils qui existent déjà,
et de proposer des extensions. Typiquement des plugins QGIS ou (*gasp*)
des macros excel -- en tout cas des choses basées sur des outils
répandus, connus de tout le monde et suffisament matures pour qu'on
puisse leur faire confiance pour marcher dans (à peu près) toutes les
configurations.
Yes, agreed a thousand times at least (not so much on the maquereau, as
you may have guessed). QGIS plugin seems to be the way to go, in my
humble opinion; to start with, at least. Another thread needs to be
pulled out.
4) Les besoins des gens sont en fait très variables, et je pense que pas
deux personnes n'arriveront à se mettre d'accord sur ce que devrait
contenir un logiciel "pour géologue". Pierre, implicitement et en tant
que "explorateur", pense à des choses basées sur sondages/modélisation
3D/enveloppes minéralisées. Mais un géochimiste, un télédetectionniste,
sans parler des académiques aux centres d'intérêts exotiques, vont sans
doute penser à des outils différents et avoir des besoins différents. Si
je regarde par exemple ce qu'il y a sur ma machine (je suis un peu
éclectique dans mes centres d'intérêts :-) ) je trouve
- Excel (ben oui), postGreSQL, postGIS
- Un certain nombre de feuilles de calcul excel spécialisées (calculs
thermo-barométriques ou formules structurales)
- QGIS
- Un lot d'utilitaires tournant autour du SIG, par exemple pour gérer
les GPS, convertir des geotiffs en format lisible par mon Garmin (G-raster)
- Google Earth, GeoMapApp....
- R/GCDkit
- une série de scripts R maison et mal finis pour faire des krigeage et
des transfo de Fourier
- Deux ou trois trucs de stéréogrammes
- Surfer
- Oasis Montaj (le viewer)
- Un vieux bidule écrit pour des win préhistoriques qui fait des
analyses en transformée de Fourier (parce que je n'ai que le viewer !)
- Plusieurs logiciels de modélisation thermodynamique (thermocalc,
perple_x, theriak-domino) et des programmes associées (pyWerami)
- Des tas de scripts R pour faire des calculs de modèles pétro/géoch
plus ou moins compliqués
- Plusieurs programmes d'analyse numérique de données géochimiques
(C-space)
- Les programmes de Mark Jessel de modélisation gravi ou thermique
... et j'en oublie sûrement ! Plus important, d'autres personnes ont
probablement un mix très différent du mien (par exemple chez moi il n'y
a rien sur des sondages ou de la modélisation 3D).
La conclusion, c'est qu'un outil utile pour certaines personnes sera
totalement inintéressant pour d'autres.
Yes, this is true, but on the other hand, *all* these tools could be:
- rewritten (if they are proprietary softwares) or re-implemented
in a better way (open source, at least, and maybe better),
or
- adapted (if they are open-source softwares),
to match a common denominator, that is, a basic vocabulary that
all applications will share. In other words, a data model.
The target being: get an all-in-one tool, which would fit all geologists
(I'm dreaming big, I know, but I don't think it is that complicated,
indeed; it needs to start from simple, to then implement more
complicated/specialized things, NOT the other way).
4b) Il me semble aussi que vu le nombre d'outils spécialisés, l'effort
principal devrait peut être porter sur les données et leur stockage :
définir des formats communs, utilisables par tout ce beau monde.
Oh yes (big soupir). This was said on this list, a few times.
Dieu merci il y a OGR/GDAL.
Yes, and GeoSciML also exists, thank X.
5) Mais même comme ça, ce qu'on entend par "données" (et donc la façon
dont on va les stocker et les traiter, sans même parler des formats)
dépend énormément selon les gens. Dans la liste ci-dessus, on voit que
j'ai des données :
- spatiales ou spatialisées
-- des rasters/images (scan de carte geol ou topo)
-- des rasters/grilles (MNT, carte gravi, carte géochimique
interpolée [kriegeage ou analogue])
-- des polygons, polylignes (cartes géol) [d'ailleurs le format
pgone + pline n'est pas très approprié, des "coverage" avec frontières +
centroides marchent beaucoup mieux, c'est d'ailleurs le format GRASS :
très accessible depuis QGIS de nos jours mais pas du tout exportable...]
-- des données ponctuelles
- non spatiales, même si elles peuvent être connectées à un point (par
exemple une analyse chimique est connectée à un échantillon):
-- des photos
-- des mesures structurales
-- des analyses roches totales
- ... voire non spatiales, à une échelle encore plus petite : par
exemple si je fais des analyses micro-sonde sur une lame mince, je peux
avoir 200 points sur une lame (et aussi une carte chimique, qui est un
raster), le tout pas directement connecté à des vraies coordonnées
spatiales [au mieux l'échantillon est orienté et je sais à peu près d'où
il vient, à qq mètres ou centimètre près]. Ou pire encore si je broie
une roche pour en extraire et en dater des zircons, j'ai plein de
données qui ont perdu tout cadre spatial.
Well, concerning your last point (crushed sample): yes and no: you can
still bind these data to the place where you took your sample, can't
you? It would certainly be a point (grab/single sample), or a polyline
(channel sample) or a surface (chip sample). But maybe I missed something.
What I retain, after digesting your arguments a bit, is that we may also
have to limit ourselves to a reasonable space dimension. For instance,
in mapping, one meter seems to be reasonable; although the decimeter can
be useful for detailed face mapping. Centimeter is the reasonable best
accuracy needed along drill holes. Going under the millimetre seems to
be beyond all reason, in my humble opinion. Unless someone disagrees?
In the same way of thinking, I think that we should just address simple
use cases, to start with. Later, while things will grow, will come the
time to implement 3D mapping from oriented thin sections, or other
planets' geology. That's beyond the point, for now.
- Déconnectées de la réalité du terrain : un modèle thermo par exemple
va ressortir une grille de propriétés (composition des minéraux) dans
l'espace PT. Ou une donne expérimentale faite sur une roche synthétique.
Well, are synthetic rocks what a geologist deals with??? (dunno, I
never had...)
- Ou un enregistrement dans le temps (signal sismique, monitoring de
glissement, monitoring d'émissions de gaz d'un volcan.... ou encore du
signal mesuré sur un spectro !!).
Bref, c'est quoi une donnée géologique pour vous ?
Big Question!
I will *just begin* to try to answer this question, from a very basic
field geologist's point of view.
To me, a geological data is:
(I'm mapping)
- an observation that I do in the field (a point xyz with attributes),
which can be an outcrop or not;
- a picture (attached or not to an observation);
- a paper map that I scribble and colorize (to be scanned
and georeferenced);
- a contact that I follow in the field, or see in the landscape,
or guess from my nosemeter, or see from air photo interpretation:
this will be a polyline, with attributes like ('followed',
'landscape', 'guessed', 'teledection', etc.);
- an area that I colorize on my map: a polygon, bound by the
contact mentioned above, with a 'label', like in Arc/Info
for instance;
- a structural measurement, attached to an observation point;
- a sample taken from a place, usually an observation point
(can also be brought by a nice neighbor from a distant place)
- an analysis made on that sample (a whole report, a spreadsheet
with data, a set of data (json structure, for instance)
- a cross-section drawn in the field (the best ones!), to
be scanned and georeferenced in 3D;
- the idea of a big fault, or a contact, or... whatever geological
underground feature that I guess from chevrons and/or from many
guesses, that I express by using gestures: this is a 3D surface,
can be implemented as a mesh, or as a surface with control points
(as in the "Éditeur de Coupes", or Geomodeller, I think it is
called now);
(I'm doing some drill holes)
- the machine comes, I not the company's name, the driller's nickname
(they rarely have real names), the machine's characteristics,
- it begins drilling where I told it to do: that was the project
to do the hole. Unfortunately, the peg indicating the hole
location has been wrecked, and the real hole location differs.
All this is a record in a table which will contain all drill holes,
with all data like coordinates, starting time, etc.
I won't enter into any more details, as this would take too much
time
- I collect samples (record in a table)
- I describe cuttings and/or core (record in a table)
- I send samples to a lab, and get results back (geotechnical
data, chemical assays, thin sections, etc.) => cf. above
etc.
(I said that I would *only* start...)
As we also discussed the day before-before yesterday, many of these
questions have been asked, and answered, lately, or decades ago.
GDM had (has?) a quite elegant way to address almost all the issues that
you mentioned, with:
- .b2d files (equivalent of a spreadsheet: two-dimensional file)
=> to represent:
- point data (outcrop, village center), or a correlation
matrix between this and that, or
- ... anything that you
can stuff into a spreadsheet, basically. No formulas,
but you can apply calculations, columnwise.
- .hed .ind .bsd files are merely two .b2d files bound by an index
=> to represent:
- drill holes (.hed contains head (collar) data, .bsd contains
down-hole runs data (whatever: radiometry, imagery, samples,
descriptions...)
- polylines (.hed contains first points of every line, .bsd
contains the trace, with attributes which may vary along the
polyline (very interesting for mapping: this cannot be
addressed by using the standard GIS formats, unless you break
out the geometries into many spaghettis.
- polygons (same as polyline, the endpoint reaches the starting
point)
- .grd files store grid data: a starting point, steps (cell size)
in all desired coordinates (x, y, z), and attributes, where
you can stuff all you want/need.
All these data can be represented in 3D space, using an orthonormal xyz
coordinate system.
This set of basic tools can cover a surprisingly wide range of
geological objects, from hydrogeology to mining through geotechnics,
oil&gas, mapping, geochemistry. In some disciplines, it is much better
suited than others: for instance, in mapping, it has been outpaced by
the development of GIS tools (although some features are really
interesting and are lacking from usual GIS uses).
I think that the only thing which is not covered by the GDM data
filetypes is solids. But I could be wrong.
Sinon, je peux peut être m'arranger pour passer un jour au FOSS4G à
Paris au mois de Mai, pour rencontrer des gens, si il y a des choses qui
bougent ?
Hopefully yes!
À+
Pierre
--
____________________________________________________________________________
Pierre Chevalier
PChGEI: Pierre Chevalier Géologue Et Informaticien
Partenaire DALIBO
Mesté Duran
32100 Condom
Tél+fax : 09 75 27 45 62
06 37 80 33 64
Émail : pierrechevaliergeolCHEZfree.fr
icq# : 10432285
jabber: pierre.chevalier1967@xxxxxxxxx
http://pierremariechevalier.free.fr/pierre_chevalier_geologue
____________________________________________________________________________
Liste de diffusion geolllibre
Pour s'inscrire :
mailto:geolllibre-request@xxxxxxxxxx?subject=subscribe
Pour se desinscrire :
mailto:geolllibre-request@xxxxxxxxxx?subject=unsubscribe
Other related posts: