Lieber Zuschauer, dieser Untertitel wurde automatisch generiert von YouTube und dementsprechend (sehr) fehlerhaft. Wenn du kannst, hilf uns bitte gute Untertitel zu erstellen: https://c3subtitles.de/talk/2826 Danke!
hi willkommen zurück
jetzt geht es um Tabellenkalkulation mit
Kobol hogu 456 ist aktiv in den
Wikimedia Projekten und interessiert an
programmieren insbesonders in der
Programmiersprache Kobol und in anderen
visuellen Programmiersprachen und am
Erstellen von Berechnungen
Tabellenkalkulationsprogramm dieser Talk
ist eine
Kombination dieser dieser Vorlieben es
wird ein experimentelles
Tabellenkalkulationsprogramm gezeigt
welches in coboy geschrieben ist und
eine textbasierte Benutzeroberfläche
definiert in der Cobo Screen section
verwendet ja viel Spaß beim
Talk herzlich willkommen du zum Vortrag
Tabellenkalkulation in KOB mein Name
ist 456 und ich möchte euch heute im
Namen diese Präsentation zeigen wie ich
ein
Tabellenkalkulationsprogramm das sich
gerade noch in einem experimentellen
Status befindet und noch nicht besonders
viel Information hat in Kobold erstellt
habe und im ersten Teil der Präsentation
will ich euch bisschen was zu den
Hintergründe zu kobolt auch zu
tabellenkalkulationzählen kurz eingehen
auf den Aufbau wie das Programm
aufgebaut ist und dann geht es dem
zweiten Teil um
die Vorstellung des
Programms nun kommen wir als als erstes
zur Übersicht was euch so in der
Präsentation erwartet also Zst wöchte
ich mich kurz noch mal vorstellen und
dann möchte ich etwas erzählen über KOB
und
auch
benkalkulationsprogramme aufgebaut sind
und danach dann noch auf das Programm
eingeben und das euch einschließend dann
auch
zeigen also ich
bin unter dem Pseudonym hogy 456 seit
Anfang 2015 in den Wikimedia Projekten
aktiv dazu gehört unter anderem die
Wikipedia ist das bekannteste Wikimedia
back gibt auch noch andere Wikidata was
eine freie Datenbank ist oder auch jetzt
ein neues Wikimedia Projekt namens
wikifunctions in dem es darum geht
Funktionen in verschiedenen
Programmiersprachen zu
sammeln die dann innerhalb der Wikimedia
proekte aber auch von anderen Personen
verwendet werden können um bestimmte
Dinge zu
berechnen und schon jetzt seit ein paar
Jahr interessiere ich mich für
programmieren mit Programmiersprachen
deren Syntax gewisse Ähnlichkeiten zu
natürlichen Sprache
hat und ich habe ich auch innerhalb der
letzten
Jahre viel mit dem Übersetzen von
Programmiersprachen beschäftigt also ich
habe mich da beschäftigt wie kann man
wenn ein Programme eine bestimmten
Programmiersprache hat es regelbasierten
eine andere Programmiersprache
übertragen das also soweit zu meinen
Aktivitäten die wikimediab und jetzt
will ich also beginnen euch ein bisschen
etwas zu Kobold zu erzählen denn ich
habe ja dieses Programm
in KOB geschrieben Kobo ist eine
Programmiersprache der Syntax gewisse
Ähnlichkeiten mit der englischen Sprache
hat und es ist auch eine relativ alte
Programmiersprache Coy würde der 1950er
Jahre entwickelt und wird seitdem auch
weiterentwickeln es gab jetzt auch
dieses Jahr wieder als im Jahr 20123
einen neuen
Standard mit
gewissen
Neuerungen und koboll hat als eine
Besonderheit dass zumindest in den
meisten Versionen von Kobol teilweise
ist es nicht unbedingt
erforderlich dass eine Anweisung mit
einem Punkt endet das heißt also wenn
man da etwas schreibt so ein Kommando
ist
wirklich von der Aufbau her
gewisserweise ähnlich zu einem Satz den
man in der englischen Sprache auch so
schreiben
kann und was man auch in KOB machen kann
man kann viele
Zeichen die z.B dafür verwendet werden
um zwei Zahlen zu aderen also das Plus
kann man durch einen Text ersetzen durch
dem Fall durch das Wort add und genauso
geht es auch mit vielen anderen Zeichen
dass man die eben durch ein Text
ersetzen kann das macht es also ein
bisschen flexibler in
koboy Dinge zu schreiben da hat man
relativ viele Möglichkeiten in vielen
fenwohl man sagen muss insgesamt die
Syntax umfasst im
Standard gar nicht so viele verschiedene
Anweisungen s e eine relativ
überschaubare Anweisungen die man mal
lernen muss um dann auch Programme zu
schreiben aber trotzdem ist das
Programme schreiben z. aus meiner Sicht
ohne eine Vorlage nicht so einfach den
Kobel hat als eine
Besonderheit einen Programmaufbau der
aus verschiedenen Abschnitten besteht
also man muss bevor man ein
[Musik]
Programm fertig stellen kann muss man
also auch noch die Variablen definieren
man zeichtt also nicht einfach die
den Anweisungen nacheinander niederzus
schreiben sondern muss eben auch
zusätzlich noch die Variable bestimmten
Abschnitt definieren auch
später werde ich eine solche Abschnitt
zeigen die sogenannte Screen section die
etwas Besonderes ist aber da werde ich
dann später noch genau drauf eingehen
also man hat da eben verschiedene
Abschnitte in Kobo in denen man
bestimmte
Informationen
definiert und nur da ich ja KOB ein
Tabellenkalkulationsprogramm geschrieben
habe will ich euch bisser was erzählen
zu
Tabellenkalkulation
also Tabellenkalkulation ist ein sehr
verbreitetes Konzept aus meiner Sicht
und wird von vielen Menschen verwendet
und es geht bei
Tabellenkalkulation darum dass man eine
Tabelle hat die besteht aus Zeilen und
Spalten und der kleinste adressierbare
Einheiten ein Tabelle das ist eine Zelle
das ist da jeder Schnittpunkt aus einer
Zeile Spalte ist eine
Zelle und es ist ein
Tabellenkalkulationsprogramm möglich mit
Hilfe von
Funktionen Dinge zu berechnen Funktionen
sind in viele verschiedene Sprachen
übersetzt das heißt also z. WN man eine
Sprache spricht die von relativ vielen
Menschen gesprochen wird ist es relativ
wahrscheinlich dass
man dies in dieser Sprache
tabellenkalkulationsfunktionen verwenden
kann die in der eigenen Sprache
geschrieben sind also z beispielsweise
Deutsch hat das da gibt es genug
sprecheer dass es auch entsprechend
tabellenkalkulationsfunktionen in
Deutsch übersetzt
sind und im Bereich Tabellenkalkulation
gibt es auch einen Standard sogenannte
open Document Format das ist jetzt nicht
der einzige Standard aber
inzwischen gibt es eine relative
Verbreitung dieses Standards und zumind
die wichtigsten Funktionen werden von
den wichtigen Tabellen
Kalkulationsprogrammen unterstützt das
heißt also diese Standard möglich ist
dass man wenn man einem Programm eine
Datei erstellt hat dass diese dann auch
von anderen Dateien gelesen bzw auch
wieder gespeichert werden kann im
gleichen Format s dass damit also eine
Interoperabilität ermöglicht wird durch
diesen
Standard und eben die Besonderheit an
Tabellenkalkulation ist dass es aus
meiner Sicht z. damit relativ einfach
ist
Berechnungen vorzunehmen und man kann
auch so Funktionen dadurch dass man
mehrere Funktionen ineinander
verschachteln kann auch relativ
komplizierte Dinge
machen und eben auch die die Möglichkeit
komplizierte Dinge zu schreiben ist auch
dadurch möglich dass man eben dann
wiederum etwas in eine Zelle berechnen
kann und dann kann man sich wieder auf
das Ergebnis der Berechnung in einer
anderen Zelle
beziehen und hier möchte jetzt also ein
bisschen was zu erzählen dazu was so für
Zeichen
in
tabellenkalkulationsfunktionen vorkommen
das ist wichtig wenn man ein
Tabellenkalkulationsprogramm Sel
beschreiben will so wie ich das jetzt
gemacht habe muss man erst einmal
verstehen was ist überhaupt der Aufbau
einer Tabellenkalkulation um die dann
die entsprechend relevanten Teile
zerlegen zu können die dann
wiederum
nacheinander abgearbeitet werden
können und eben da gibt es zuerst einm
die operanten also
damit Zeichen mit denen man etwas direkt
berechnen kann z.B den Pluszeichen kann
man addieren minus also kann zwei Zahlen
vinander abzieh dann mal das nächste das
Malzeichen der das geht also zu multip
ziehen dann das geteiltzeichen zum
dividieren dann das fünfte Zeichen das
ist ein das so ein dachsymbol hat
gewisse igke Dach das wird nicht so
häufig verwendet D kann man
exponentieren also man kann die Zahl mit
sich selbst multiplizieren und dann gibt
es noch das unzeichen das dient zum
verketten von
textwerten dann kann man in
tabellenkalkulations Funktionen ja auch
schon vordefinierte Funktionen schreiben
und dafür gibt es
eben
das die Klammern also Klammer eine runde
Klammer auf sag das ist der Beginn einer
Funktion vor der Klammer steht dann also
der
Funktionsname und innerhalb einer
Funktion wenn diese aus mehreren
Argumenten besteht dann wird es z.B
deutschen mit einem Strichpunkt getrennt
aber das Trennzeichen
was zum Trennen von funktionsargumenten
verwendet wird variiert je nach
Sprache und es gibt dementsprechend auch
Sprachen in denen das Komma
als als Trennzeichen verwendet wird was
es wiederum bisschen komplizierte macht
tabellenkalkulationsfunktionen einfach
auszutauschen und das ist also ein
bisschen etwas komplizierteres deshalb
ich zum sagen kann ich weiß nicht ob
gener Dokumentformat der F Z die Dateien
die ich die unter Libre Office erstellt
wurden bisher angeschaut hab da war es
dann so dass dann noch mal eine
spezielle Notation innerhalb des
dokumentsformat für
die Funktionen verwendet wurde und nicht
die Funktion nicht so verwendet wurde
wie sie sichtbar sind dann was wichtig
ist wenn man Zellen kopieren will unter
Umständen kann es wichtig sein eben die
Fixierung mit dem
Dollarzeichen mit Hilfe der Fixierung
mit dem Dollarzeichen ist es möglich
dass man verhindern kann wenn man die
Zelle kopiert dass sich je nachdem ob
man das vor dem Spalt vor der Zeile
notiert das und dann W die Zeile kopiert
das sich dann der Spaltenname oder
Zeilennummer
verändert dann was auch immer wieder
vorkommt und was man immer wieder
brauchen kann das ein Tex steh das man
einen Text
vorgibt und dafür gibt es das
Anführungszeichen das steht am Anfang
und am Ende eines Textes und ich z. z
meine bisherigen Erfahrung nach ist es
schwierig wenn innerhalb eines Textes
auch
ein Hochkomma oder halt
Anführungszeichen vorkommen soll dann
ist es erforderlich dass man das doch
eine Verkettung
löst ja dann das
nächste ist das Doppelpunkt der
Doppelpunkt diet als ein
trendnzeichen bei Zellbereichen also
wenn man in
einem
Zellbezug beispielsweise wenn man in
einem such wenn etwas suchen will es
gibt gewisse Suchfunktion mit dem kann
man ein Bereich suchen um den Bereich
anzugeben zu können gibt zwei
tellelladressen ein und dazwischen steht
eben ein Doppelpunkt als
Trennzeichen das also soweit zu den
tabellenkalkulationsfunktionen und nun
möchte ich ein bisschen mehr darauf
eingehen was ich denn hier eigentlich so
gemacht habe mit dem
Tabellenkalkulationsprogramm sich selbe
geschrieben habe also ich habe ein
Tabellenkalkulationsprogramm mit einer
texpaierten Benutzeroberfläche
geschrieben und die Zellen in dem
tabellenkalkul tions Programm die können
deutschsprachige Funktionen
enthalten und man hat die Möglichkeit am
Beginn beim Aufruf des Programms die
plattgröße flexibel zu wähen aber dieses
Feature wird bisher nur teilweise
unterstützt das muss ich noch mehr
ausbauen also das ist bish wird nur
abgefragt aber noch
nicht weitergehend danach berücksichtigt
und eben eine Besonderheit an Kobol ist
eben die sogenannte Screen section diese
wird von dem Programm das ich verwende
mit unterstützt ich verwende die Open
KOB it mit GNU
KOB und in der Screen section ist es
möglich eine textbasierte
benutzoberfläche zu definier dazu muss
man angeben an welcheer
Stelle angegeben über die Zeilen und
Spaltennummer des Bildschirms sich ein
bestimmte
Eingabe befinden soll man muss auch
angeben was für Zeichen man in der
Eingabe eingeben
möchte und hier habe ich mal so ein
kleines Beispiel also man sagt hier gut
man will in der Zeile 5 in der Spalte
25 einen Wert mit der Länge von 1
eingeben dann der erste Teil zu input
option W 1 das ist St Variable die
verwendet wird um den Wert anzuzeigen
also wenn so ein Bildschirm aufruft dann
hat man die Möglichkeit in dem Feld
schon einen default value zu hinterlegen
und dieses das kann man eben über dies
dies Feld input option W ein in dem Fall
heißt es hier machen und dann
anschließend daran gibt man dann also an
in welches Feld der Inhalt dann
geschrieben werden soll und diesen falls
das eben das Feld input option
1 und das X1 also P X1 das gibt an dass
es sich ob eine alpanumerisches Zeichen
also Zahlen Buchstaben handeln soll und
das eine Länge von 1
hat gut nun
komme ich also als nächstes dazu wie
habe ich was habe ich so zu dem passe
wie der Passe aufgebaut ist ich habe
eben im
passe doch relativ viel Zeit damit
verbracht und ich würde trotzdem sagen
er ist jetzt nicht so gut der Pass aber
z. für das was ich gemacht habe reicht
es mir z weit also vom Prinzip geht es
darum da geht durch und schaut erst
mal ob es sich bei den Zeichen um
Zeichen handelt die als Zeichen an sich
schon für
tabellenkalkulationsfunktionen zur
Definition verwendet werden und dann
werden diese Zeichen sofand sie sich
nicht gerade innerhalb einer
Zeichenkette befinden und die Zahl der
Hochkommas zu dem Zeitpunkt oder
anführungszeiche diesem Zeitpunkt eben
ungerade ist also dass es sich gerade
innerhalb einer Zeichenkette befindet
dann wird das Zeichen
berücksichtigt genau das ist also der
erste Schritt dass dann das Zeichen
berücksichtigt
wird und dann wenn man weiß welche
Zeichen berücksichtigt werden dann kann
man noch dazwischen da weiß man auch
dazwischen
die
Zeichen und dann kann man nicht immer
auch die
zwischenliegenden ichen noch mal prüfen
die werden dann jeweils sol lang bis
wieder das nächste relevante Zeichen
kommt zu einer Variable zusammengefasst
und dann wird die gesamte variable
sobald das nächste dranzeichen kommt
wiederum geprüft mit einer Liste
verglichen ob es sich hierbei um eine
ein Funktionsnamen beispielsweise
handelt und bisher erfolgt auch nur die
Prüfung von funktionsnahmen theoretisch
wäre es möglich auch schon andere
Prüfungen wie beispielsweise ob es sich
um eine Zelladresse hatel direkt in
einem Durchgang mit alles abzuprüfen
aber das wird aktuell nicht gemacht weil
es doch kompliziert ist schon ich dann
mich auch schon auf die wichtigsten
Dinge konzentrieren wollte ich jetzt
den Unterstützung für das Abfragen von
ziladressen als zu einem späteren
Zeitpunkt hinzugefügt
habe und dann das auch noch etwas
Wichtiges eben die Suche wenn als die
Suche keine Ergebnisse geben hat also
wenn es sich bei der Variable nicht um
ein Trennzeichen in operanten oder auch
ein Funktionsnamen handelt dann GT das
also als ein Platz halt ist es also
bekannt gut da handelt es sich jetzt um
eine Variable nicht etwas was schon
vorher definiert
ist und so ist es dann möglich eine
Vorlage zu
generieren aus der Funktion die gerade
untersucht wird dann am Ende wenn dann
das letzte relevante Zeichen kommt dann
eben das bzw der String allgemein vorbei
ist also die maximale zeichzahl reicht
dann kann man sagen gut okay jetzt ist
das soweit vorbei und dann kann man eben
prüfen gibt es schon eine Vorlage die
gleich lautet wie den Text den man hier
hat und wenn das der Fall dann wird
entsprechendes Programm das schon für
die Vorlage definiert wird aufgerufen
und bisher ist es noch nicht möglich für
Fälle in denen das Programm noch nicht
vordefiniert wurde dann
das trotzdem auszuführen da bin ich dran
das will ich auch noch machen aber erst
zu einem späteren Zeitpunkt also dass
ich den nur noch für gewisse wichtige
Funktionen schon Vorlagen habe und
anderes will ich dann eben durch
Abarbeiten der einzelnen
Schritte
machen genau und nun habe ich also
bisschen etwas erzählt dazu wieso das
Programm funktioniert und ich freue mich
dass Sie mir jetzt
soweit zugehört habt und jetzt als
nächstes kommt dann die Live
Demo
das war jetzt nun also die Live Demo und
nun folgend auf die Live Demo noch ein
paar weit fürüen die Infos also wenn ihr
den quellteexich anschauen wollt den
findet ihr hier un diesem Link
und ich bin über wikimil in den
Wikimedia Projekten erreichbar
vielleicht werde ich auch die eine oder
andere Veranstaltung im nächsten Jahr
oder den folgenden Jahren besuchen die
in Zusammenhang mit
dem CCC
steht und
ich freue mich dass ihr es soweit
angeschaut habt und jetzt anschließend
gibt es noch ein Q&A wo auch auch die
Möglichkeit hab Fragen zu stellen und
vielleicht dann auch noch einen
anschließenden informellen
Talk das also
soweit zu meiner Präsentation und damit
möchte mich also bei euch für die eure
Aufmerksamkeit bedanken und ich freue
mich dass ihr diesen Vortrag geschaut
habt und freue mich auch wenn es andere
Personen etwas zu
Cowboy präsentieren das find ich auch
immer wieder schön wenn ich auch von
anderen Personen Präsentationen zu
cobboy se und D möchte ich mich an
dieser Stelle auch noch bedanken das hat
mir durch aus geholfen we ich sonst so
an Präsentationen zu coboy so gefunden
habe auch auf
media.ccc.de gibt es ein paar Vorträge
zu Kobold das mal noch an diese
Stelle hallo willkommen zurück wir haben
jetzt Hog 456 direkt mit dabei um euch
ein paar Fragen zu
beantworten Hog hörst du mich noch ja
ich höre dich noch
das Video was woh sich beendet hat aber
ich noch genau sehr gut wie viele
Spalten und Zeilen hat den der der
Screen in der Screen section
eigentlich also der Screen der
screenscken hat
30 Zeilen und 120 spalten aber so wie da
jetzt die Aufnahme gesehen hat in der
Live dememo da war war nicht alle
Spalten zu sehen al da waren ungefähr
105 bis 107 ich weiß nicht ganz genau
Spalten davon zu sehen also es war nicht
die gesamte bildschirbreite die ich da
aufgenommen habe weiß nicht rechteckigen
Form konnte ich Hal nicht so aufnehmen
aber genau
120 Spalten und 30 Zeilen aber das
variiert also es man kann das Definieren
jetzt in der Version wie ich es habe
habe ich es noch nicht hinbekommen aber
GZ gibt es die Möglichkeit es
zu definieren das heißt der Bildschirm
hatte eigentlich mehr Zeilen und Spalten
als du aufgenommen hast oder ist das
aufgrund von dem also wie wieso wieso
waren waren der Aufnahme nicht alle alle
Spalten drin war das einfach bloß wegen
wegen dem bildschirmverhältnis weil das
ansonsten nicht hingepas genau das war
wegen dem Bildschirm Verhältnis richtig
genau da hatte ich Schwierigkeiten das
dann so hinzubekommen es wäre
wahrscheinlich schon g gangen aber ich
wusste Hal nicht wie direkt das heißt
der der Default ist dann ein ein anderes
Verhältnis gegenüber dem was moderne
Bildschirme sind
genau gut zu wissen ähm hast du denn
Erfahrung gemacht mit der Verwendung von
Funktionstasten zur Navigation auf dem
Bildschirm nein da habe ich noch nicht
habe ich noch nicht hinbekommen ich
wollte es mal ausprobieren aber es hat
dann nicht funktioniert aber ja ich habe
ich Interesse jetzt mal zu verwenden ja
wenn ich weiß wie es geht
ja ja
ähm ich schaue gerade mal ob wir noch
weitere Fragen haben ich sehe gerade auf
den ersten Blick keine we würde ich kurz
noch mal eine Minute warten um Leuten
die Gelegenheit zu geben bzw Mal
überhaupt sagen wo ihr dann Fragen
stellen könnt m ihr könnt auf Mastodon
mit dem Hash Chance
23 Fragen jederzeit stellen die kommen
bei uns an wir haben ein Public Viewing
im Aquarium der Link dazu findet sich im
infobamer auf Youtube @f Chance ist
läuft unser Stream auch dort haben wir
Livechat das gleiche gilt für Twitch wir
haben auf Twitch unter
twitchtv/firechance ebenfalls einen
Stream mit
Livechat genau und wir wir freuen uns
über Fragen dort
ähm ich sehe leider immer noch keine
keine Fragen deshalb würde ich mich
gerade bei dir noch mal bedanken hü für
deinen tollen Talk
ähm ich finde das faszinierend wenn wenn
Leute
Programmiersprachen und Paradigmen
die nicht mehr nicht mehr überall
eingesetzt werden dann trotzdem
wiederbeleben um damit coole Sachen zu
machen
genau ja s ich auch danke hat mich
gefreut dass ich vortragen durfte und
noch einen schönen Nachmittag danke dir
auch