diff --git a/README.md b/README.md index 919de435..a1d13327 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,8 @@ Verzeichnisse `layout` und `lib`) stehen unter der Creative-Commons-Lizenz Design und Logos des CCCS bleiben von obigen Regeln unberührt, alle Rechte liegen hier beim [CCCS](http://www.cccs.de/). Vor einer Verwendung ist die -schriftliche Erlaubnis des Vereinsvorstands. +schriftliche Erlaubnis des Vereinsvorstands einzuholen. + ## Übersetzen der Seite @@ -27,6 +28,7 @@ Software-Voraussetzungen: * ruby * bundler +* Zum Generieren der PDF-Flyer: inkscape Sämtliche benötigten Abhängigkeiten werden durch den Aufruf von @@ -42,4 +44,222 @@ angesehen werden. Bitte beachten: Der Webserver behandelt keine Redirect-Anweisungen, weshalb einige Links aus dem Menü nicht funktionieren. +### Troubleshooting + +#### Probleme mit nokogiri + +Aus Gründen scheint das bundle von Nokogiri mitunter Schwierigkeiten zu +machen: + + LoadError: cannot load such file -- nokogiri/nokogiri + +Lösung: Zu Nokogiri gehört eine native Bibliothek, die im falschen +Verzeichnis des gems landet. Zunächst mittels + + gem environment + +das Installationsverzeichnis der gems herausfinden. Innerhalb dieses +Verzeichnis gibt es ein Unterverzeichnis `gems/nokogiri-1.6.0/lib/nokogiri`. +Hier hineinwechslen und einen Symlink auf die Bibliothek anlegen +(alternativ hineinkopieren). + + ln -s ../../ext/nokogiri/nokogiri.so . + +#### Fehlendes sass-Mixin + +Sollte beim Übersetzen von sass-Dateien das Fehlen von Dateien +angenörgelt werden, z.B.: + + Sass::SyntaxError: File to import not found or unreadable: + bootstrap/mixins + +so fehlen mit großer Wahrscheinlichkeit die abhängigen git-Submodule. +Beim Klonen des Repositories mit `git clone --recursive ...` die +Submodule automatisch mitholen. + + +## Allgemeine Hinweise für Webseiten-Inhalte + +Die Inhalte der Webseite liegen im Verzeichnis `content`. Seiten können +direkt als html-Dateien oder in [Markdown](http://daringfireball.net/projects/markdown/syntax) +(mit der Dateiendung `.md`) geschrieben werden. Zu jeder Datei gehören +Metadatan -- diese stehen endweder als „yaml front matter“ mit +Bindestrichen abgetrennt vor dem eigentlichen Inhalt, oder in einer +separaten Datei mit der Dateiendung `.yaml`. + +Jede Seite benötigt mindestens die Angabe des Seitentyps (`kind`). Für +normale Seiten lautet dieser `page`, für Blogeinträge `article`, für +Projektseiten `project`, für Veranstaltungen oder Aktivitäten `event`. +Je nach Typ gibt es eine Reihe weiterer Metadaten-Angaben, die zum +Teil zwingend erforderlich sind (soll heißen: Wenn sie fehlen, +gibt es einen Fehler beim Generieren der Webseite). +Am einfachsten orientiert man sich an den entsprechenden bereits +existierenden Einträgen :-) + +Generell werden die URLs aus den Namen der Verzeichnisse (plus ggfs. des +Dateinamens) konstruiert. Daher bitte Verzeichnisse nach der +Veröffentlichung nicht mehr umbenennen, eventuelle Links von anderen +Seiten zeigen sonst ins Leere! + +Bezüglich Verzeichnis- und Dateinamen gilt: Eine Datei +`some/directory/some-name/index.md` und eine Datei +`some/directory/some-name.md` ergeben dieselbe URL +`some/directory/some-name/`. Es ist also nicht zwingend nötig, für jede +Seite ein separates Unterverzeichnis anzulegen. Ein Unterverzeichnis +macht dann Sinn, wenn es zur Seite zugehörige Ressourcen wie z.B. +eingebundene Bilder beheimatet. + +Mitunter möchte man zu einer Seite weitere Daten (wie z.B. Folien von +Vorträgen, Audiomitschnitte, etc.) hinterlegen. Solche „Archivdateien“ +bitte _nicht_ im git-Repo einpflegen -- diese Dateien sind meist sehr +groß und würden die Größe des Repositories rasch explodieren lassen. +Diese Dateien werden direkt auf den Webserver in ein bestimmtes +Verzeichnis geladen. + +Für Dateinamen gibt es eine Besonderheit: Dateien und Verzeichnisse, die +mit einem Underscore (`_`) beginnen, werden nicht auf der Webseite +publiziert. + + +## Howtos + +### Blogeinträge + +Sämtliche Blogeinträge befinden sich im Verzeichnis `articles`. Um einen +neuen Blogeintrag zu erzeugen, muss für diesen hier ein neues +Verzeichnis mit folgendem Namensschema angelegt werden: + + nnnn-der-url-titel-des-artikels + +Die ersten vier Stellen `nnnn` sind eine laufende Nummer der +Artikelverzeichnisse. Der Rest ergibt (zusammen mit dem Artikeldatum) +die URL des Blogartikels. Hier sollte der (verkürzte) Titel des +Blogartikels geändert werden; Leerzeichen werden durch Bindestriche +ersetzt. + +Der Inhalt des Blogartikels steht in der Datei `index.md` (für mit +Markdown verfaßte Artikel). Zwingend erforderlich sind die +Metadaten-Angaben: + +* `kind` (muss `article` sein) +* `created_at` -- das Erstellungsdatum im Format yyyy-mm-dd +* `title` -- die Überschrift + +Optional können folgende Angaben gemacht werden: + +* `subtitle` -- eine Unterüberschrift +* `author` -- der Name des Artikelautors +* `refers_to` -- Referenz auf eine Event- oder Projektseite. Dieser + Artikel erscheint dann dort ebenfalls in der Artikelübersicht. + +Ein Teil des Artikeltextes wird als Teasertext in Übersichten angezeigt. +Die Grenze wird durch eine Zeile mit der Markierung `` +markiert; sonst wird der erste Abschnitt benutzt. + + +### Veranstaltungen und Aktivitäten + +Der Ordner `events` beinhaltet Termine, die vom CCCS veranstaltet +werden. Der Ordner `activities` enthält Termine, an denen der CCCS zwar +beteiligt, aber nicht der Veranstalter ist. `events` sind typischerweise +Termine der Vortragsreihe, `activities` Veranstaltungen, an denen jemand +vom CCCS als Sprecher/Diskussionspartner/Referent/... eingeladen ist. + +Namensschema der Inhalte beider Ordner ist: + + yyyymm-kurze-beschreibung + +Also Jahr und Monat der Veranstaltung sowie ein Extrakt des +Veranstaltungstitels. Nötig sind folgende Metadaten: + +* `kind` (muss `event` sein) +* `title` -- die Überschrift +* `startdate` -- Datums- oder Zeitangabe im Format `yyyy-mm-dd` oder + `yyyy-mm-ddThh:mm:ssZ` (wichtig: Das "T" und das "Z" müssen so + stehenbleiben!) +* `enddate` oder `duration` -- Endweder ein Enddatum (Format wie + `startdate`) oder eine Zeitdauer. Bei ganztägigen Ereignissen (also + ohne Zeitangabe) muss diese im Format n`d` (also n Tage), sonst im + Format n`h` (n Stunden) oder n`m` (n Minuten) erfolgen. +* `public` -- `true` oder `false`, je nachdem, ob es sich um eine für + die Öffentlichkeit zugängliche Veranstaltung handelt (ist + typischerweise nur für Termine, zu denen wir eingeladen sind, false). + +Optional sind folgende Angaben: + +* `speakers` -- ist eine Liste, wobei jeder Eintrag mindestens die Angabe + `name` und optional den Zusatz `affiliation` besitzt. Das sieht + beispielsweise also so aus: + + speakers: + - + name: einervonuns + affiliation: CCC Stuttgart + - + name: einervonwoanders + affiliation: andereorga + - + name: jemanddrittes + +* `location` -- nochmal ein schwieriges Feld ;-) Eine Location kann eine + ganze Reihe von Angaben beinhalten: `name`, `url`, `strasse`, `plz`, + `lon` und `lat` -- oder die erneute Angabe `location`. In letzterem + Fall werden die Angaben aus der Template-Datei in + `content/_data/locations.yaml` übernommen. +* `material` -- Beinhaltet eine Liste, welche die Angaben `title` und + entweder `file` oder `link` enthält. Beispiel: + + material: + - + title: Die Folien (PDF) + file: vortrag.pdf + - + title: Quelltext auf github + link: https://github.com/... + + In ersterem Fall wird auf eine Datei auf unserem Server verwiesen. + Diese muss in einem Verzeichnis liegen, das _identisch_ zum Pfad des + Artikels ist. +* `audio` -- Ein Dateiname, dessen zugehörige Datei (wie bei `file`-Angaben im + Abschnitt `material`) im entsprechenden Datenverzeichnis auf dem + Server liegen muss. + +#### Erzeugen der Flyer + +Um zu einem Termin (beispielsweise `events/201301-fahrrad-illumination`) +den zugehörigen Flyer zu erzeugen, gibt es ein spezielles +nanoc-Kommando: + + nanoc create-flyer events/201301-fahrrad-illumination + +Dieser erzeugt im Verzeichnis des Artikels SVG- und PDF-Dateien für +Flyer und Aushang. Meistens ist das Ergebnis adäquat, manchmal muss man +nochmals etwas nacharbeiten. Ist das Ergebnis bereits ok, bitte die +SVG-Dateien wieder löschen und _nur_ die PDF-Dateien ins git-Repositroy +aufnehmen. Ansonsten die SVG-Dateien bearbeiten und _sowohl_ SVG _als +auch_ PDF-Daten committen. Da die SVG-Dateien mit einem `_` beginnen, +landen sie nicht auf dem Webserver. + +Möchte man die Dateien in einem anderen Verzeichnis erzeugen, kann man +dem obigen nanoc-Kommando einen Ausgabepfad als weiteren Parameter +anhängen. + + +### Sonstige Chaos-Termine + +Diverse weitere Termine erscheinen nur in der Kalenderübersicht und der +iCal-Datei. Diese befinden sich als Liste in der Datei +`content/_data/chaosevents.yaml`. Die einzelnen Einträge haben dieselben +Metadaten wie die oben beschriebenen Events. + + +### Stammtisch-Termine + +Auch die Stammtischtermine befinden sich in einer separaten Datei: +`content/_data/stammtisch.yaml`. Um die Termine für ein Jahr an den +typischen Terminen zu erzeugen, gibt es im Verzeichnis `scripts` das +Skript `generate-stammtisch.rb`. Als Parameter erhält es eine +Jahreszahl. Die Ausgabe kann dann mit der bestehenden +`stammtisch.yaml`-Datei zusammengeführt werden. + diff --git a/content/_data/stammtisch.yaml b/content/_data/stammtisch.yaml index 414e9cbb..89489512 100644 --- a/content/_data/stammtisch.yaml +++ b/content/_data/stammtisch.yaml @@ -1,98 +1,122 @@ --- events: -- startdate: 2013-01-01 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-01-01 18:00:00.000000000 +01:00 duration: 4h location: location: zadu -- startdate: 2013-01-16 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-01-16 18:00:00.000000000 +01:00 duration: 4h location: location: shack -- startdate: 2013-02-05 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-02-05 18:00:00.000000000 +01:00 duration: 4h location: location: zadu -- startdate: 2013-02-20 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-02-20 18:00:00.000000000 +01:00 duration: 4h location: location: shack -- startdate: 2013-03-05 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-03-05 18:00:00.000000000 +01:00 duration: 4h location: location: zadu -- startdate: 2013-03-20 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-03-20 18:00:00.000000000 +01:00 duration: 4h location: location: shack -- startdate: 2013-04-02 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-04-02 18:00:00.000000000 +02:00 duration: 4h location: location: zadu -- startdate: 2013-04-17 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-04-17 18:00:00.000000000 +02:00 duration: 4h location: location: shack -- startdate: 2013-05-07 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-05-07 18:00:00.000000000 +02:00 duration: 4h location: location: zadu -- startdate: 2013-05-22 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-05-22 18:00:00.000000000 +02:00 duration: 4h location: location: shack -- startdate: 2013-06-04 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-06-04 18:00:00.000000000 +02:00 duration: 4h location: location: zadu -- startdate: 2013-06-19 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-06-19 18:00:00.000000000 +02:00 duration: 4h location: location: shack -- startdate: 2013-07-02 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-07-02 18:00:00.000000000 +02:00 duration: 4h location: location: zadu -- startdate: 2013-07-17 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-07-17 18:00:00.000000000 +02:00 duration: 4h location: location: shack -- startdate: 2013-08-06 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-08-06 18:00:00.000000000 +02:00 duration: 4h location: location: zadu -- startdate: 2013-08-21 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-08-21 18:00:00.000000000 +02:00 duration: 4h location: location: shack -- startdate: 2013-09-03 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-09-03 18:00:00.000000000 +02:00 duration: 4h location: location: zadu -- startdate: 2013-09-18 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-09-18 18:00:00.000000000 +02:00 duration: 4h location: location: shack -- startdate: 2013-10-01 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-10-01 18:00:00.000000000 +02:00 duration: 4h location: location: zadu -- startdate: 2013-10-16 18:00:00.000000000 +02:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-10-16 18:00:00.000000000 +02:00 duration: 4h location: location: shack -- startdate: 2013-11-05 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-11-05 18:00:00.000000000 +01:00 duration: 4h location: location: zadu -- startdate: 2013-11-20 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-11-20 18:00:00.000000000 +01:00 duration: 4h location: location: shack -- startdate: 2013-12-03 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (Zadu-Bar) + startdate: 2013-12-03 18:00:00.000000000 +01:00 duration: 4h location: location: zadu -- startdate: 2013-12-18 18:00:00.000000000 +01:00 +- title: CCCS-Stammtisch (shackspace) + startdate: 2013-12-18 18:00:00.000000000 +01:00 duration: 4h location: location: shack diff --git a/content/articles/0001-der-richter-und-die-cloud/index.md b/content/articles/0001-der-richter-und-die-cloud/index.md new file mode 100644 index 00000000..5b9589f3 --- /dev/null +++ b/content/articles/0001-der-richter-und-die-cloud/index.md @@ -0,0 +1,88 @@ +--- +kind: article +created_at: 2013-07-29 +title: Der Richter und die Cloud +subtitle: "Zusammenfassung vom Vortrag: Ermittlungsrichter Sierk Hamann über seinen Streit mit Facebook" +refers_to: events/201307-der-facebook-hack +author: Skyr, Rince +--- +Beim Vortrag hatte Sierk Hamann um die „Flüchtigkeit des gesprochenen +Worts“ gebeten, weshalb es keine Audio-Aufzeichnung gab. Mitschriebe +waren aber gestattet, sogar einen Stenographen hätte er uns zugestanden +-- also haben Rince und Skyr in die Tasten ihrer Laptops gegriffen und +versucht, das wichtigste mitzunotieren. Herausgekommen ist diese +Zusammenfassung des Vortrags. + + + +Sierk Hamann ist Ermittlungsrichter in Reutlingen bei Stuttgart. In der Vortragsreihe des Chaos Computer Club Stuttgart berichtete er über seine Erfahrungen mit der Netzwelt anhand eines (inzwischen abgeschlossenen) Falles. Der Fall hatte es bundesweit unter Titeln wie „Richter beschlagnahmt Facebook-Profil“ in die Presse und Blogosphäre (mit unterschiedlich korrekten Darstellungen) geschafft (siehe z.B. [0,1]). + + +# Tathintergrund + +Im Fall ging es um ein Einbruchsdelikt: Die Familie des Hauses war im Urlaub, lediglich die Tochter blieb zu Hause. Sie wurde von einem Bekannten abends zum Essen ausgeführt; der Bekannte gab dem Haupttäter einen Hinweis, dass die Luft nun rein sei, dieser beging den eigentlichen Einbruch. + +Die Verhandlung beschäftigte sich mit dem Mittäter, dem Bekannten der Tochter. Der Haupttäter und der Mittäter hatten in diesem Fall über Facebook und deren Messaging-System kommuniziert. Bei beiden Handys (also Haupttäter und Mittäter) fand man die Facebook-App, beide fand man bei Facebook, wenn man nach ihnen suchte. Allerdings waren auf beiden Handys die SMS-Nachrichten der Tatnacht ab 23 Uhr gelöscht -- um Mitternacht wurde der Einbruch verübt. Auf die Frage, warum diese SMSe fehlten erklärten die Beschuldigten, dass der Speicher voll gewesen sei. + + +# Max Schrems zur Hilfe? + +Die Vermutung von Hamann war nun, dass die Täter auch über den Facebook-Chat miteinander kommuniziert hatten; auf den Handys war von einer entsprechenden Kommunikation zwar nichts mehr zu finden, jedoch wusste der technisch interessierte Richter von den Ergebnissen von Max Schrems und dessen Initiative „Europe versus Facebook“ [2], dass Facebook sehr großzügig bei der Datenspeicherung vorgeht und die Daten sogar um Positionsangaben der Handys anreichert. + +Analog zur Beschlagnahmung von E-Mail-Postfächern wollte er die entsprechenden Daten beschlagnahmen lassen (der Beschlagnahmebeschluss ist unter [1] verlinkt). Bei E-Mails ist dies nach seiner Aussage ein gängiges Procedere, bei deutschen E-Mail-Providern sind die Daten so innerhalb eines Tages greifbar. Wer aber war überhaupt der korrekte Ansprechpartner für sein Anliegen? + +Facebook ist in Deutschland mit einer GmbH vertreten, die in Hamburg ansässig ist. An diese richtete Hamann zunächst seinen Richterbeschluß. Anstatt einer promten Antwort erhielt er nur ein (vermutlich automatisiertes) Schreiben einer „Jana“, dass seiner Anfrage eine „Record Number“ zugeteilt worden wäre. Erst auf hartnäckiges Nachhaken hin versichterte Facebook Hamburg an Eides Statt per Brief, dass es in Deutschland keine Person gäbe, die Zugriff auf diese Art von Daten habe, da die Facebook GmbH in Deutschland nur für Marketing zuständig sei. + +Durch den Erfolg von Max Schrems ermutigt, wollte Hamann sein Glück bei der Irischen Niederlassung Facebook Dublin Ltd. versuchen, er stellte ein entsprechendes Rechtshilfeersuchen an die Irischen Behörden. Laut „Europe versus Facebook“ und den Aussagen des Irischen Datenschutzbeauftragten würden die Daten in Irland verarbeitet. Den Irischen Ermittunglsbehörden wurde im Zuge von Hamanns Ersuchen allerdings mitgeteilt, alle Daten lägen in den USA, der Richter solle ein entsprechendes Rechtshilfeersuchen an die USA stellen. Ein Rechtshilfeersuchen bezeichnete Hamann als den „Elefantenpfad“, ein Vorgang, der mindestens ein Jahr dauert und ungewissen Ausgang hat. + +Der Widerspruch zwischen den Informationen an die Ermittler und den Aussagen, die Facebook gegenüber den Datenschutzbeauftragten machte, wurde nie aufgelöst. + +Paradoxerweise wurde dem Angeklagten selbst ebenfalls die entsprechende Auskunft verwehrt: Er hatte zu seiner Entlastung ebenfalls bei Facebook die Kommunikationsdaten angefragt -- vergeblich. + + +# Randnotiz E-Mail-Beschlagnahme + +Hamann erläuterte im Zuge des Beschlagnahmungs-Bescheids den Ablauf, der nach gängiger Rechtssprechung für E-Mails angewandt wird. E-Mails werden wie Postkarten betrachtet: Während der Zustellung unterliegen sie dem Fernmeldegeheimnis; sobald sie zugestellt sind, also im Briefkasten des Empfängers liegen, können sie ohne größere Hürden beschlagnahmt werden. + +Analog zum Briefkasten wird das E-Mail-Postfach beim Provider betrachtet. Dies war zu Zeiten, als das POP-Protokoll noch vorherrschend verwendet wurde, eine gangbare Analogie. Da inzwischen viele Leute ihr Mailarchiv aus Bequemlichkeitsgründen auf einem IMAP-Server liegenlassen oder gar ihre gesamte Kommunikation über einen Webmail-Anbieter abwickeln, ist heute ein Zugriff auf eine große Menge an sensitiven Daten mit einer relativ geringen richterlichen Hürde möglich. + +Hamann merkte hierzu an, dass er als Richter angehalten ist, sämtliche möglichen Mittel zu nutzen; hier divergieren inzwsichen aber Technik und Rechtssprechung, so dass es Aufgabe des Gesetzgebers wäre, sich diesen Sachverhalt erneut anzusehen und gegebenenfalls neu zu regeln. + + +# Mögliche technische Winkelzüge für die Zukunft + +Facebook weihte im Juni 2013 ein neues Rechenzentrum in Luleå (Schweden) ein [3]. Dieses Rechenzentrum wurde von Facebook USA gebaut und wird auch von Facebook selbst betrieben. Da es sich auf europäischem Boden befindet wird es interessant, wenn Daten in dem schwedischen Rechenzentrum liegen. Für Richter eröffnet dies eine direktere Zugriffsmöglichkeit. + +Bisher völlig unbeachtet sind die Content Delivery Networks -- Server in Rechenzentren rund um den Globus, die von Diensten benutzt werden um deren Inhalte aus Gründen der Lastverteilung möglichst nah beim Kunden zu haben. Bis dato wurden solche Systeme von den Ermittlungsbehörden außer Acht gelassen; es ist eine spannende Frage, was exakt dort gespeichert wird und somit möglicherweise unter Deutscher Jurisdiktion zugreifbar ist. + + +# Erfahrungen aus diesem Fall + +Die widersprüchlichen Aussagen gegenüber den Datenschützern und den Ermittlungsbehörden sind irgendwo zwischen dreist und unverschämt. Im Interesse beider Behörden muss hier Klarheit geschaffen werden. + +Hamann sieht Probleme bei der Ermittlung im Internet, da die (inter-)nationale Rechtssprechung nicht auf cloudbasierte Daten anwendbar ist. Sobald die Daten ausserhalb von Deutschland oder gar Europa liegen, ist ein Zugriff schwer, da ein direkter Zugriff deutscher Behörden auf Server im Ausland eine Verletzung hoheitlicher Rechte wäre. +Eine (normale) Suchanfrage in einer Suchmaschine ist möglich, da diese Daten öffentlich sind. Chat-Mitschnitte und ähnliches sind es nicht, daher muss über ein Rechtshilfeersuchen (den oben erwähnten „Elefantenpfad“) angefragt werden. Da ein Richter be- und entlastende Beweise finden muss ist es für ihn bei einigen Fällen schwierig, entsprechendes Material zu bekommen. + +Soziale Netz-Anbieter speichern alles, wessen sie habhaft werden können. Geodaten sind immer gerne gesehen. Der Wunsch des Benutzers zur Löschung von Daten wird gerne ignoriert -- die Daten werden zwar als gelöscht markiert, bleiben aber weiterhin gespeichert. Der (deutsche) Gesetzgeber geht davon aus, dass dieser Wunsch respektivert wird. Damit schafft eine Firma Fakten, die klar gegen geltende (deutsche) Gesetze verstoßen - und ignoriert entsprechende Anfragen. + +Aus Sicht des Ermittlungsrichters schaden große Firmen der deutschen Rechtssprechung deutlich mehr als die von der Presse gerne hochstilisierten Rockergruppen, da sie einfach deutsches Recht ignorieren und entsprechende Anfragen aussitzen. Damit stellen sich Firmen über das Gesetz. + +Äußerst kritisch zeigte sich Hamann sowohl gegenüber den aktuellen Snowden-Enthüllungen als auch gegenüber geheimdienstlichen Methoden wie Stammdatenabfrage, Vorratsdatenspeicherung oder Online-Durchsuchung. Die deutsche Rechtssprechung sei recht präzise und eindringlich, was das Eindringen in den privaten Bereich angeht. Heimliche Ermittlungen, bei denen die Gefahr besteht, dass der Betroffene erst spät oder gar nie von ihnen erfährt, verurteilte er genauso wie die Pauschalüberwachung, welche einem Generalverdacht gegenüber dem gesamten Volk gleichkommt. Es bestünde zwar aktuell ein Defizit, wenn es zu landesübergreifenden Ermittlungen kommt, dies müsse aber so geregelt werden, dass wie bei anderen Ermittlungsmethoden mit „offenem Visier“ gearbeitet würde. Grundsätze, die bei einer Hausdurchsuchung gälten (direkte Benachrichtigung des Betroffenen, Gegenwart von Zeugen, Möglichkeit der Rechtsmittel) müßten genauso bei Ermittlungen im Internet gelten. + + +# Fazit + +Es war für uns Stuttgarter interessant, einmal die Sicht, die Möglichkeiten, aber auch die Sorgen und Nöte der „anderen Seite“ zu sehen. Der Appell, von Richter Hamann, Möglichkeiten für Ermittlungen mit „offenem Visier“ zu ermöglichen und dafür im Gegenzug auf fragliche, geheimdienstliche Methoden wie Vorratsdatenspeicherung und Online-Durchsuchung zu verzichten, stimmt nachdenklich. Seiner Aussage nach ist das „normale“ Verfahren mit Quick Freeze völlig ausreichend. + +Und der Fall selbst? Er wurde inzwischen abgeschlossen, da der Haupttäter ein Geständnis abgelegt hat. Das Verfahren gegen den Mittäter wurde eingestellt, da er inzwischen sozial integriert ist und eine Ausbildung macht. +Richter Hamann hat bis heute die angefragten Daten von Facebook nicht bekommen. + + +[0] Spiegel: [„Richter beschlagnahmt Facebook-Account“](http://www.stern.de/digital/online/internetrecht-richter-beschlagnahmt-facebook-account-1789200.html) + +[1] Internet-Law-Blog: [„Amtsgericht lässt Facebook-Account beschlagnahmen“](http://www.internet-law.de/2012/02/amtsgericht-lasst-facebook-account-beschlagnahmen.html) + +[2] Initiative [„Europe versus Facebook“](http://www.europe-v-facebook.org/) + +[3] Slashdot: [„Facebook Saves Datacenter Costs with Frigid Arctic Wind“](http://slashdot.org/topic/datacenter/facebook-saves-datacenter-costs-with-frigid-arctic-wind/) + diff --git a/content/articles/0001-first-post/index.md b/content/articles/0001-first-post/index.md deleted file mode 100644 index fa9b087f..00000000 --- a/content/articles/0001-first-post/index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -kind: article -created_at: 2013-08-18 -title: First post! -subtitle: Irgendwas muß ich ja schreiben ---- -Dies ist der erste Dummyartikel für das Blog. - -Mehr Details. Blah. - diff --git a/content/events/201301-fahrrad-illumination/index.md b/content/events/201301-fahrrad-illumination/index.md index 238940bf..44f7ba26 100644 --- a/content/events/201301-fahrrad-illumination/index.md +++ b/content/events/201301-fahrrad-illumination/index.md @@ -9,6 +9,13 @@ speakers: location: location: bib public: true +material: + - + link: http://tandem-fahren.de/Mitglieder/Framstag/LED/Vortrag/index.html + title: Präsentation + - + link: http://tandem-fahren.de/Mitglieder/Framstag/LED/ + title: Bastelanleitung --- Seit einigen Jahren ist LED-Fahrradbeleuchtung auf dem Markt, die deutlich heller und langlebiger ist, als die traditionelle Gluehlampentechnik. diff --git a/content/events/201302-sammeln-von-grossrechnern/index.md b/content/events/201302-sammeln-von-grossrechnern/index.md index 762c6cb0..ba438a43 100644 --- a/content/events/201302-sammeln-von-grossrechnern/index.md +++ b/content/events/201302-sammeln-von-grossrechnern/index.md @@ -13,6 +13,14 @@ location: location: bib details: Max-Bense-Forum (UG) public: true +material: + - + file: cray-cyber_slides.pdf + title: Folien (PDF) + - + file: cray-cyber_bilder.zip + title: "Bilder (Lizenz: cc-by)" +audio: cccs-201302.mp3 --- An zahlreichen Beispielen des Projekts [Cray-Cyber.org](http://cray-cyber.org) und der datArena zeige ich die besonderen Herausforderungen beim Sammeln von diff --git a/content/events/201303-pretty-easy-privacy-chat/index.md b/content/events/201303-pretty-easy-privacy-chat/index.md index 16857966..5c71be5f 100644 --- a/content/events/201303-pretty-easy-privacy-chat/index.md +++ b/content/events/201303-pretty-easy-privacy-chat/index.md @@ -10,6 +10,14 @@ speakers: location: location: bib public: true +material: + - + link: http://cccs.github.com/PGP-Chat/ + title: Präsentation + - + link: https://github.com/JanUlrich/PGP-Chat + title: Quelltext +audio: cccs-201303.mp3 --- Die Kommunikation über das Internet mittels Textnachrichten ist dank Facebook, WhattsApp und Co. kostenlos und kinderleicht. Eine sichere diff --git a/content/events/201304-bericht-aus-der-internet-enquete-kommission/index.md b/content/events/201304-bericht-aus-der-internet-enquete-kommission/index.md index d50645fe..f7aa188f 100644 --- a/content/events/201304-bericht-aus-der-internet-enquete-kommission/index.md +++ b/content/events/201304-bericht-aus-der-internet-enquete-kommission/index.md @@ -10,6 +10,7 @@ speakers: location: location: bib public: true +audio: cccs-201304.mp3 --- Alvar Freude berichtet über Kampfabstimmungen, Geschäftsordnungstricks, das Feilschen um einzelne Wörter und andere Tücken der Politik. Er ist diff --git a/content/events/201305-frauen-in-der-informatik/index.md b/content/events/201305-frauen-in-der-informatik/index.md index ba180dd1..1f86dde9 100644 --- a/content/events/201305-frauen-in-der-informatik/index.md +++ b/content/events/201305-frauen-in-der-informatik/index.md @@ -9,6 +9,10 @@ speakers: location: location: bib public: true +material: + - + file: 20130516_CCC_Gender.pdf + title: "Folien (PDF)" --- Seit Jahrzehnten arbeiten Frauen in der Informatik, aber ihre Arbeitsbedingungen sind nicht gleich. Die Gender-Forschung zeigt auf, diff --git a/content/events/201307-der-facebook-hack/index.md b/content/events/201307-der-facebook-hack/index.md index 91bd6a51..e09bdcc5 100644 --- a/content/events/201307-der-facebook-hack/index.md +++ b/content/events/201307-der-facebook-hack/index.md @@ -10,6 +10,13 @@ speakers: location: location: bib public: true +material: + - + file: beschlagnahme-beschluss.pdf + title: "Beschlagnahme-Beschluß (PDF)" + - + file: strafprozess-social-networks-2.0.pdf + title: '"Soziale Netzwerke" im Strafprozess - Erfahrungen und Gedanken eines Strafrichters (PDF)' --- Vortrag, Frage- und Plauderrunde mit einem echten Bedarfsträger. Ausgangspunkt des Vortrages ist ein echter Kriminalfall. diff --git a/content/events/201308-datenschutz-in-unternehmen/index.md b/content/events/201308-datenschutz-in-unternehmen/index.md index aff87798..ad40cbf6 100644 --- a/content/events/201308-datenschutz-in-unternehmen/index.md +++ b/content/events/201308-datenschutz-in-unternehmen/index.md @@ -9,6 +9,7 @@ speakers: location: location: bib public: true +audio: cccs-201308.mp3 --- Obwohl Datenschutz durchaus umfänglich gesetzlich ist, bestehen in Unternehmen und Organisationen unterschiedliche Auffassungen über die diff --git a/content/index.html b/content/index.html index 723d99d2..af3757fb 100644 --- a/content/index.html +++ b/content/index.html @@ -7,7 +7,7 @@ feed: title: 'CCCS - Neueste Artikel' -----
@@ -27,6 +27,16 @@ feed: Artikel und Notizen. Wenn Du diese automatisch beziehen möchtest, kannst Du sie per Atom-Feed abonnieren.
+ <% allUpcomingEvents = get_public_events().select { |e| e[:startdate].to_datetime > DateTime.now } + if (allUpcomingEvents.size>0) + allUpcomingEvents.sort! { |a,b| a[:startdate].to_datetime <=> b[:startdate].to_datetime } + %> + <%= render 'calendar_list', :events => allUpcomingEvents.first(10) %> + <% end %> +
+<%= render 'calendar_list', :events => upcomingEvents.first(10) %> <% end %>
diff --git a/content/styles/_customfonts.scss b/content/styles/_customfonts.scss index b8b4e16a..83ccc9f5 100644 --- a/content/styles/_customfonts.scss +++ b/content/styles/_customfonts.scss @@ -1,22 +1,56 @@ @font-face { font-family: 'TitilliumText'; - src: url('/fonts/titilliumtext22l002-webfont.eot'); - src: url('/fonts/titilliumtext22l002-webfont.eot?#iefix') format('embedded-opentype'), - url('/fonts/titilliumtext22l002-webfont.woff') format('woff'), - url('/fonts/titilliumtext22l002-webfont.ttf') format('truetype'), - url('/fonts/titilliumtext22l002-webfont.svg#TitilliumText22LLight') format('svg'); + src: url('/fonts/titillium-light-webfont.eot'); + src: url('/fonts/titillium-light-webfont.eot?#iefix') format('embedded-opentype'), + url('/fonts/titillium-light-webfont.woff') format('woff'), + url('/fonts/titillium-light-webfont.ttf') format('truetype'), + url('/fonts/titillium-light-webfont.svg#TitilliumText22LLight') format('svg'); font-weight: normal; font-style: normal; } @font-face { font-family: 'TitilliumText'; - src: url('/fonts/titilliumtext22l006-webfont.eot'); - src: url('/fonts/titilliumtext22l006-webfont.eot?#iefix') format('embedded-opentype'), - url('/fonts/titilliumtext22l006-webfont.woff') format('woff'), - url('/fonts/titilliumtext22l006-webfont.ttf') format('truetype'), - url('/fonts/titilliumtext22l006-webfont.svg#TitilliumText22LXBold') format('svg'); - font-weight: bold; + src: url('/fonts/titillium-regular-webfont.eot'); + src: url('/fonts/titillium-regular-webfont.eot?#iefix') format('embedded-opentype'), + url('/fonts/titillium-regular-webfont.woff') format('woff'), + url('/fonts/titillium-regular-webfont.ttf') format('truetype'), + url('/fonts/titillium-regular-webfont.svg#TitilliumText22Regular') format('svg'); + font-weight: 500; font-style: normal; } +@font-face { + font-family: 'TitilliumText'; + src: url('/fonts/titillium-semibold-webfont.eot'); + src: url('/fonts/titillium-semibold-webfont.eot?#iefix') format('embedded-opentype'), + url('/fonts/titillium-semibold-webfont.woff') format('woff'), + url('/fonts/titillium-semibold-webfont.ttf') format('truetype'), + url('/fonts/titillium-semibold-webfont.svg#TitilliumText22LSemibold') format('svg'); + font-weight: 600; + font-style: normal; +} + +@font-face { + font-family: 'TitilliumText'; + src: url('/fonts/titillium-bold-webfont.eot'); + src: url('/fonts/titillium-bold-webfont.eot?#iefix') format('embedded-opentype'), + url('/fonts/titillium-bold-webfont.woff') format('woff'), + url('/fonts/titillium-bold-webfont.ttf') format('truetype'), + url('/fonts/titillium-bold-webfont.svg#TitilliumText22LBold') format('svg'); + //font-weight: 700; + font-weight: bold; + font-style: normal; +} +/* +@font-face { + font-family: 'TitilliumText'; + src: url('/fonts/titillium-black-webfont.eot'); + src: url('/fonts/titillium-black-webfont.eot?#iefix') format('embedded-opentype'), + url('/fonts/titillium-black-webfont.woff') format('woff'), + url('/fonts/titillium-black-webfont.ttf') format('truetype'), + url('/fonts/titillium-black-webfont.svg#TitilliumText22LXBold') format('svg'); + font-weight: 900; + font-style: normal; +} +*/ diff --git a/content/styles/_customstyles.scss b/content/styles/_customstyles.scss index b345c330..a6cfe3f3 100644 --- a/content/styles/_customstyles.scss +++ b/content/styles/_customstyles.scss @@ -3,18 +3,28 @@ $mainPadding: 15px; body { background-image: url(/img/bg.png); background-repeat: both; + font-weight: normal; } p { margin-bottom: 5px; } +strong { + font-weight: 600; +} + +a { + font-weight: 500; +} + a:hover, a:focus { text-decoration: none; } h1,h2,h3,h4,h5,h6 { a { + font-weight: bold; color: inherit; } a:hover, a:focus { @@ -22,9 +32,9 @@ h1,h2,h3,h4,h5,h6 { } } -h1, -h2, -h3 { line-height: $baseLineHeight * 1.5; } +h1,h2,h3 { + line-height: $baseLineHeight * 1.5; +} h1 { font-size: $baseFontSize * 2; } h2 { font-size: $baseFontSize * 1.5; } diff --git a/layouts/calendar_list.erb b/layouts/calendar_list.erb new file mode 100644 index 00000000..2d5ed48c --- /dev/null +++ b/layouts/calendar_list.erb @@ -0,0 +1,24 @@ +----- +filter: erb +----- +