Scripting Contest

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
catdog2
Beiträge: 5347
Registriert: 24.06.2006 16:50:03
Lizenz eigener Beiträge: MIT Lizenz

Re: Scripting Contest

Beitrag von catdog2 » 09.12.2015 13:52:47

Insofern - IMHO: Das kann github auch alles, da brauch ich keine eigene Software für.
Naja selber hosten ist halt ein Wert für sich, gerade für nichtöffentliches oder wenn man sich nicht abhängig machen will.
Unix is user-friendly; it's just picky about who its friends are.

Benutzeravatar
heisenberg
Beiträge: 1347
Registriert: 04.06.2015 01:17:27

Re: Scripting Contest

Beitrag von heisenberg » 09.12.2015 21:00:47

catdog2 hat geschrieben: Naja selber hosten ist halt ein Wert für sich, gerade für nichtöffentliches oder wenn man sich nicht abhängig machen will.
Ja, da gebe ich Dir Recht. Gerade bei privaten Daten ist Eigenhosting sehr sinnvoll. Ansonsten ist man damit auch flexibler, wenn man noch irgendetwas anpassen will.

Was die Anforderung hier betrifft, so sehe ich da keine sensiblen privaten Daten, die es zu schützen gilt. Meinetwegen kann da die ganze Welt Commit-Rechte haben. Was die Abhängigkeit betrifft: IMO ist ein git-Repo umzuziehen wirklich kein Hexenwerk.

Wie dem auch sei, wenn jemand ein gitlab oder etwas ähnliches irgendwo aufsetzen will, dann ist auch super.

Benutzeravatar
catdog2
Beiträge: 5347
Registriert: 24.06.2006 16:50:03
Lizenz eigener Beiträge: MIT Lizenz

Re: Scripting Contest

Beitrag von catdog2 » 09.12.2015 23:45:18

Was die Anforderung hier betrifft, so sehe ich da keine sensiblen privaten Daten, die es zu schützen gilt.
Jup sag ich ja auch. Man könnte evtl sogar zu gitlab gehen, dann hat man wenigstens einen Anbieter, der auf zum größten Teil auf freie Software setzt.,
Meinetwegen kann da die ganze Welt Commit-Rechte haben. Was die Abhängigkeit betrifft: IMO ist ein git-Repo umzuziehen wirklich kein Hexenwerk.
Kommt drauf an was man nutzt. Wenn man nur das repo hin schiebt ist das problemlos. Wenn man noch das drumherum benutzt (Issue Tracker, …) hat man wieder Vendor Lockin.
Unix is user-friendly; it's just picky about who its friends are.

eggy
Beiträge: 1508
Registriert: 10.05.2008 11:23:50

Re: Scripting Contest

Beitrag von eggy » 10.12.2015 05:47:18

Abgesehn von "die machen irgendwann auch zu", ist das Problem, dass ich bei github sehe: man darf nur einen Account haben: d.h. Deine df-de-Aktiviäten wären zu allem anderen was Du so machst gelinkt. Mag ich nicht.

Da es nur um kleine in ein paar Tagen zu schaffende Aufgaben geht, mag ich die Idee mit dem Wiki. Da gibts schließlich ja auch ne Historie. Und daher hier mein Vorschlag für den nächsten SC:

a) lese die SC-Wiki Seite aus, erstelle eine Liste aller Projekte und Autoren die auf entspechen Unterseiten liegen (alles was im Unterbereich liegt, auf der Liste_der_SC_Beiträge steht, oder mit SC_ anfängt etc - kommt drauf an wie das nachher im Wiki einsortiert ist)
b) überführe die Projekte in ein lokales Gitrepo. commitmessages sollten entsprechend gesetzt sein
b*) beachte Daten, Änderungsnotiz, Autoren, git name/mail koennte man auf account@df.de setzen etc; setze Tags auf akzeptierte Lösungen
c) sei sparsam was die Verbindungen zum Server betrifft, falls bereits ein lokales Repo da ist, zieh nur Änderungen.
d) erstelle ein tar.gz - entsprechend benannt - zb Zeitstempel des letzten Commits
e) erstelle eine Readme, sie soll Auskunft über die Projekte, die Autoren, die Akzeptiere Lösung enthalten
f*) werte die Readme aus, welcher SC war bisher am "beliebtesten" (hatte die meisten Autoren etc)

b* und f* wären Zusatzaufgaben, falls jemand Langeweile hat ;)

Schwierigkeiten:
Anfänger: a, d
Fortgeschritten: b, d, d
mehr Fortgeschritten: c

Zeitrahmen ne Woche, falls jemand sagt, dass er Spass an c hat, ihm eine Woche aber nicht reicht, einmal um eine weitere Woche verlängern?

eggy
Beiträge: 1508
Registriert: 10.05.2008 11:23:50

Re: Scripting Contest

Beitrag von eggy » 10.12.2015 07:16:40


Benutzeravatar
heisenberg
Beiträge: 1347
Registriert: 04.06.2015 01:17:27

Re: Scripting Contest

Beitrag von heisenberg » 12.12.2015 18:06:59

Ich habe die Seite mal ein kleines bisschen unter Verwendung von Mediawiki-Vorlagen verändert.

Template DebianforumBeitrag

Code: Alles auswählen

{{DebianforumBeitrag|$Beitragsnummer}}
Das erzeugt einen Link zum Forenbeitrag mit passender Beschriftung.

Beispiel

Code: Alles auswählen

{{DebianforumBeitrag|1069775}}
Ausgabe
Beitrag #1069775

Template SC_Link

Dieses Template zeigt einen Link zum erstellen einer Scripting Content Aufgabenseite an, die mit Vorlagentext gefüllt wird.

Code: Alles auswählen

{{SC_Link|Neue Überschrift}}
Beispiel

Code: Alles auswählen

{{SC_Link|Buchstaben ersetzen}}
Ausgabe

Buchstaben ersetzen anlegen

Das ganze ist nicht perfekt. Wenn die Seite dann angelegt ist, am besten dieses Template ersetzen durch einen Mediawiki-Link:

Code: Alles auswählen

[Buchstaben ersetzen]

Benutzeravatar
heisenberg
Beiträge: 1347
Registriert: 04.06.2015 01:17:27

Re: Scripting Contest

Beitrag von heisenberg » 13.12.2015 16:32:28

Ich habe mal weiter etwas am Wiki gearbeitet.

Insgesamt ist Mediawiki ok. Was blöd ist, ist die Verwendung von NoPaste(Man kann den Code nach einstellen nicht mehr verändern) oder das einstellen des Codes in Mediawiki selbst(git geht einfach viel schneller).

Benutzeravatar
Phineas
Beiträge: 238
Registriert: 20.06.2012 20:26:19

Re: Scripting Contest

Beitrag von Phineas » 27.12.2015 10:53:55

r4pt0r hat geschrieben:Na dann würde ich fürn Anfang mal den Dezimal/Binär-Umwandler vorschlagen.
Gerade zufällig gebraucht für eine reine Bash-Umgebung (ohne bc und die üblichen Verdächtigen):

Code: Alles auswählen

d=256; b=; while ((d)); do b=$((d%2))$b; d=$((d/2)); done; echo $b

Desilluminati
Beiträge: 1
Registriert: 07.02.2016 19:23:10

Re: Scripting Contest

Beitrag von Desilluminati » 08.02.2016 15:02:44

Hallo allerseits,
Zum Thema Zeichenersetzung per bash, kann ich noch eine auf die bash optimierte (nutzt mehr von deren Extras) Version beisteuern.
Diese Version ist ca. 50-100% schneller als die bereits verbesserte Version. Kürzer ist sie auch, leicher verständlich wahrscheinlich nicht.)

Code: Alles auswählen

#!/bin/bash

function storys {
   local -A map=(
      [A]=4 [a]=4
      [B]=8 [b]=8
      [E]=3 [e]=3
      [G]=6 [g]=6
   )
   local -i i n q=0
   local line c s
   while read line; do
      s=''
      n=${#line}
      for ((i=0; i < n; ++i)); do
         c=${line:i:1}
         [[ $c = '"' ]] && ((q^=1))
         ((q)) && s+=$c || s+=${map[$c]:-$c}
      done
      echo -E "$s"
   done
}

Benutzeravatar
ohnex
Beiträge: 367
Registriert: 31.01.2010 22:35:36

Re: Scripting Contest

Beitrag von ohnex » 05.05.2016 13:24:32

hi


leider ist es hier still geworden, schade.

@heisenberg der Link ist tot
heisenberg hat geschrieben:Ich habe mal einen Entwurf zum Thema:

Entwurf: Scripting Contest HOWTO

Lasst uns das hier ausdiskutieren und anschliessend können wir unsere Ergebnisse zunächst auf der Seite dort festhalten. Jeder hat dort
Bearbeitungsrechte.

ciao

Benutzeravatar
heisenberg
Beiträge: 1347
Registriert: 04.06.2015 01:17:27

Re: Scripting Contest

Beitrag von heisenberg » 10.05.2016 20:24:52

Da habe ich ja Glück gehabt, dass ich meinen privaten VServer gerade noch rechtzeitig 3 Monate bevor der nächste Besucher meine Webseite findet jetzt gefixt habe.

inne
Beiträge: 2120
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Scripting Contest

Beitrag von inne » 17.05.2016 13:56:28

Neue Idee/Vorschlag, weil ichs gerade selbst geskriptet habe. Einen RainbowTable-Generator (RTGen).

Dem Skript wird eine Menge zu verwendender Zeichen übergeben z.B. "01" und die Länge z.B. 3. Jetzt soll das Skript alle möglichen Zeichenkombinationen ausgeben... Also:

1
0
10
01
11
00
100
010
110
001
101
011
111
000

Sollte doch stimmen?
Zeichen, Zeichenanzahl und Länge müssen beliebig sein und d. Länge darf auch "unendlich" sein!
Pluspunkte bekommt wer eine Mindestlänge implementiert.

Zusatzaufgabe, die aber jemand lösen müsste ist eine Kontrolle der Ausgabe. Stimmt die Zeilenanzahl/Anz. d. Kombinationen (Potenz) und sind keine doppelt usw.
(=_=)

Have mercy!

Benutzeravatar
TRex
Moderator
Beiträge: 6060
Registriert: 23.11.2006 12:23:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: KA

Re: Scripting Contest

Beitrag von TRex » 17.05.2016 18:35:14

In python wäre das integriert. Fast zu einfach, um es als Lösung zu akzeptieren ;)
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!

inne
Beiträge: 2120
Registriert: 25.06.2013 15:45:12
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Scripting Contest

Beitrag von inne » 17.05.2016 18:43:25

Ich habs in Perl. Bin schon total auf andere Lösungen gespannt. Gerade weils bei den anderen Aufgaben, ganz andere Lösungsansätze gab, als ich u.a. hatte.

PS: Aber wartet bis zum So. mit dem zeigen der Lösungen.
(=_=)

Have mercy!

Benutzeravatar
heisenberg
Beiträge: 1347
Registriert: 04.06.2015 01:17:27

Re: Scripting Contest

Beitrag von heisenberg » 17.05.2016 23:04:19

Pluspunkte bekommt wer eine Mindestlänge implementiert.
Was meinst Du damit? Ich verstehe die Schwierigkeit dabei nicht.
Zusatzaufgabe, die aber jemand lösen müsste ist eine Kontrolle der Ausgabe. Stimmt die Zeilenanzahl/Anz. d. Kombinationen (Potenz) und sind keine doppelt usw.
D. h. das Ausgabeformat sollte fest definiert sein. Dann kann man das Testscript auch über die Lösungen drüberlaufen lassen:

Code: Alles auswählen

1. Zeile: Zeichenvorrat
2. Zeile: Länge
3. bis letzte Zeile: Alle gefundenen Kombinationen
Beispiel:

Code: Alles auswählen

ab
2
a
b
ab
ba
aa
bb
Ebenso wäre es gut, wenn das Programm die Parameter von der Kommandozeile akzeptiert, dann kann man das testen aller Skripte automatisieren. :)

Parameter 1: Zeichenvorrat
Parameter 2: Länge

Beispiel:

Code: Alles auswählen

./prog.hs "ab" 2

Antworten