94 changed files with 265 additions and 716 deletions
+11 -8
View File
@@ -9,7 +9,7 @@ stages:
lint:
stage: lint_build_test
image:
image:
name: docker/compose:1.24.1
entrypoint:
- /bin/sh
@@ -28,7 +28,7 @@ lint:
build:
stage: lint_build_test
image:
name: klakegg/hugo:0.78.1-ext-alpine@sha256:7c2d3702546b5aaddf7f960d138715f12ba4b94906d9dfcc2d4a5a4e8c4cb760
name: klakegg/hugo:0.55.6-ext-alpine
entrypoint:
- /bin/sh
- "-c"
@@ -37,14 +37,14 @@ build:
artifacts:
paths:
- public
expire_in: 1 week
expire_in: 3 months
only:
- production
test:
stage: lint_build_test
image:
name: klakegg/hugo:0.78.1-ext-alpine@sha256:7c2d3702546b5aaddf7f960d138715f12ba4b94906d9dfcc2d4a5a4e8c4cb760
name: klakegg/hugo:0.55.6-ext-alpine
entrypoint:
- /bin/sh
- "-c"
@@ -56,11 +56,11 @@ test:
artifacts:
paths:
- public
expire_in: 3 days
expire_in: 1 month
firebase-deploy:
stage: deploy
image: andreysenov/firebase-tools
dependencies:
dependencies:
- build
script:
- firebase deploy --only hosting
@@ -79,9 +79,12 @@ docker-build:
DOCKER_HOST: "tcp://docker:2375/"
DOCKER_DRIVER: overlay2
GIT_SUBMODULE_STRATEGY: none
when: manual
only:
changes:
- docker-compose.yml
- linting/**/*
before_script:
- echo $CI_JOB_TOKEN | docker login -u gitlab-ci-token --password-stdin $CI_REGISTRY
script:
- docker-compose build
- docker-compose push
- docker-compose push
+1 -1
View File
@@ -9,5 +9,5 @@ build:
docker-compose run sass-lint
hugo
serve:
serve:
hugo server &
+1 -1
View File
@@ -1,3 +1,3 @@
# Pátek.cz
Source code for the official Pátek website.
Source code for the official Pátek website.
+1 -1
View File
@@ -2,4 +2,4 @@
title: "unknown"
avatar: "https://example.com/images/avatar.png"
fullname: "Jan Novák"
---
---
+1 -1
View File
@@ -4,4 +4,4 @@ date: {{ .Date }}
draft: false
authors: [ "unknown" ]
tags: []
---
---
+1 -5
View File
@@ -4,8 +4,4 @@ date: {{ .Date }}
draft: false
authors: [ "unknown" ]
when: {{ .Date }}
slides:
- data: <url>
recordings:
- data: <url>
---
---
+1 -15
View File
@@ -12,24 +12,10 @@
"languageName": "English"
}
},
"params": {
"onlineOnly": {
"active": true,
"link": "/blog/covidbreak-part2",
"displayText":"Online mode"
}
},
"taxonomies": {
"tag": "tags",
"project": "projects",
"author": "authors"
},
"pygmentsCodeFences": true,
"markup": {
"goldmark": {
"renderer": {
"unsafe": true
}
}
}
"pygmentsCodeFences": true
}
+1 -1
View File
@@ -4,4 +4,4 @@ date: 2019-09-08T11:10:15+02:00
draft: false
authors: [ "Greenscreener" ]
---
Pátek je kroužek a skupina studentů, kteří se zajímají nejen o informatiku, ale také fyziku, elektrotechniku, radioamatérství, matematiku, biologii a vše, co je zajímavé.
Pátek je kroužek a skupina studentů, kteří se zajímají nejen o informatiku, ale také fyziku, elektrotechniku, radioamatérství, matematiku, biologii a vše, co je zajímavé.
+6 -11
View File
@@ -4,37 +4,32 @@ date: 2019-07-12T14:54:15+02:00
draft: false
authors: [ "Greenscreener" ]
buttonColor: "#1CA620"
menu:
main:
menu:
main:
weight: 19
landing:
weight: 1
---
Zatímco pátek je pátý den v týdnu, Pátek je kroužek a skupina studentů, kteří se zajímají nejen o informatiku, ale také fyziku, elektrotechniku, radioamatérství, matematiku, biologii a vše co je zajímavé. Stejně jako se [pátečníci](https://cs.wikipedia.org/wiki/P%C3%A1te%C4%8Dn%C3%ADci) Karla Čapka scházeli v jeho vile každé páteční odpoledne, tak se také my scházíme každé páteční odpoledne v jedné či více učebnách brandýského gymnázia poté, co všichni příčetní studenti odejdou domů. Velkou část těchto schůzek trávíme diskusemi o absurdních tématech (např. teorie myšlenky, antimyšlenky a jejich vzájemné anihilace), hádáním se o kontroverzních názorech (např. proč je GNU/Linux bezkonkurenčně lepší oproti ostatním operačním systémům) či prací na čemkoliv co, zrovna daný člen nestíhá. Děláme ale také mnoho *bohulibějších* činností:
Zatímco pátek je pátý den v týdnu, Pátek je kroužek a skupina studentů, kteří se zajímají nejen o informatiku, ale také fyziku, elektrotechniku, radioamatérství, matematiku, biologii a vše co je zajímavé. Stejně jako se [pátečníci](https://cs.wikipedia.org/wiki/P%C3%A1te%C4%8Dn%C3%ADci) Karla Čapka scházeli v jeho vile každé páteční odpoledne, tak se také my scházíme každé páteční odpoledne v jedné či více učebnách brandýského gymnázia poté, co všichni příčetní studenti odejdou domů. Velkou část těchto schůzek trávíme diskusemi o absurdních tématech (např. teorie myšlenky, antimyšlenky a jejich vzájemné anihilace), hádáním se o kontroverzních názorech (např. proč je Linux bezkonkurenčně lepší oproti ostatním operačním systémům) či prací na čemkoliv co, zrovna daný člen nestíhá. Děláme ale také mnoho *bohulibějších* činností:
### Přednášky PátekTalks
Dle známého českého přísloví *„Kdo umí, umí, kdo neumí, učí.“* si členové, kteří vědí něco, co ostatní neví, připravují jednou za čas přednášky o tématech, která jim připadají zajímavá. Vzhledem k tomu, že většina starších členů Pátku jsou skalní informatici, se většina přednášek ubírá tímto směrem, avšak kdo má odvahu, může se jim postavit se svým tématem.
Dle známého českého přísloví *„Kdo umí, umí, kdo neumí, učí.“* si členové, kteří vědí něco, co ostatní neví, připravují jednou za čas přednášky o tématech, která jim připadají zajímavá. Vzhledem k tomu, že většina starších členů Pátku jsou skalní informatici, se většina přednášek ubírá tímto směrem, avšak kdo má odvahu, může se jim postavit se svým tématem.
### Projekty
Pátkaři jsou tvořivá sebranka, rádi bastlíme, kutíme a vyrábíme. Učíme se tím novým dovednostem a mrháme časem, který bychom jinak strávili něčím užitečnějším. Jedním z důvodů pro vznik těchto stránek byla naše touha podělit se o zkušenosti, nabyté v rámci těchto projektů, s ostatními Pátečníky, ale také s *normálními* lidmi. Když se tedy budete dostatečně snažit, možná zde najdete nějaké zajímavé informace o proběhlých i probíhajících projektech.
### Výlety
Když se naskytne možnost, rádi vyjíždíme na mnohé výlety za vědou, např. za přednáškovou akcí [100vědců akademie věd ČR](http://100vedcu.cz). Další výlety [zde](/tags/vylet).
Když se naskytne možnost, rádi vyjíždíme na mnohé výlety za vědou, např. za přednáškovou akcí [100vědců akademie věd ČR](https://100vedcu.cz). Další výlety [zde](/tags/vylet).
### PátekPrint
Gymnázium získalo minulý rok 3D tiskárnu Prusa Reprap i3 Mk3, kterou mají na starosti čtyři členové Pátku. Na Pátcích se proto téměř neustále tiskne a jakýkoli Pátkař má možnost si za pomoci zkušenějších členů cokoliv vymodelovat a následně vytisknout. Většinou ale tiskneme blbinky, co si lidi najdou na [thingiversu](https://thingiverse.com).
### Programování
Jak už bylo zmíněno výše, velká část Pátečníků jsou informatici, kteří tráví svůj volný čas civěním do monitorů svých počítačů na barevná písmenka, která nedávají smysl. Kromě vyhrocených debat o nesmyslech také tvoří [stránky&nbsp;gymnázia](https://gbl.cz) a [tyto&nbsp;stránky](/). Weby to ale nekončí, jedním z momentálně pozastavených projektů je Gomber - openSource implementace BomberMana napsaná v Go, na které se učíme základy tohoto krásného programovacího jazyka.
Jak už bylo zmíněno výše, velká část Pátečníků jsou informatici, kteří tráví svůj volný čas civěním do monitorů svých počítačů na barevná písmenka, která nedávají smysl. Kromě vyhrocených debat o nesmyslech také tvoří [stránky&nbsp;gymnázia](https://gbl.cz) a [tyto&nbsp;stránky](/). Weby to ale nekončí, jedním z momentálně pozastavených projektů je Gomber - openSource implementace BomberMana napsaná v Go, na které se učíme základy tohoto krásného programovacího jazyka.
### PátekSpace
Někteří by naše uskupení dokonce nazvali malý [hackerspace](https://cs.wikipedia.org/wiki/Hackerspace). Jednou z hlavních výhod hackerspaců je dostupnost nástrojů, které jednotliví členové nemohou mít doma. Zatím máme pouze 3D tiskárnu a pár šroubováků, ale po předchozí dohodě si občas půjčujeme některé laboratorní vybavení gymnázia (samozřejmě pod dohledem učitele 😉). Postupem času ale plánujeme získat více nástrojů, které budou k dispozici všem členům.
### Spřátelené spolky
Pokud se vám Pátek líbí, líbit se vám budou i tyto bohumilé spolky s podobným zaměřením a posláním se kterými se Pátek kamarádí:
- [Microlab](https://microlab.space/) - neformální studentský hackerspace na Katedře informačních technologií Pedf UK
<br />
<br />
<br />
+9 -14
View File
@@ -4,37 +4,32 @@ date: 2019-07-12T14:54:32+02:00
draft: false
authors: [ "Greenscreener" ]
buttonColor: "#1CA620"
menu:
main:
menu:
main:
weight: 19
landing:
weight: 1
---
While "pátek" is the name of the fifth day of the week in Czech, Pátek is a group of students interested not only in IT and programming but also physics, electrical engineering, amateur radio, math, biology and anything interesting in general. Like [the Friday Men](https://en.wikipedia.org/wiki/Friday_Men) met in Karel Čapek's house every Friday afternoon, we meet every Friday afternoon in one or more classrooms in the grammar school in Brandýs nad Labem after all the sane students have gone home. A big part of these meetings is spent with discussions about absurd topics (e.g. the theory of thought, anti-thought and their mutual annihilation), arguing about controversial topics (e.g. why GNU/Linux is unbeatably better than all other OSes) and people tend to work on stuff they procrastinated to the last moments. We also do some *useful* stuff:
While "pátek" is the name of the fifth day of the week in Czech, Pátek is a group of students interested not only in IT and programming but also physics, electrical engineering, amateur radio, math, biology and anything interesting in general. Like [the Friday Men](https://en.wikipedia.org/wiki/Friday_Men) met in Karel Čapek's house every Friday afternoon, we meet every Friday afternoon in one or more classrooms in the grammar school in Brandýs nad Labem after all the sane students have gone home. A big part of these meetings is spent with discussions about absurd topics (e.g. the theory of thought, anti-thought and their mutual annihilation), arguing about controversial topics (e.g. why Linux is unbeatably better than all other OSes) and people tend to work on stuff they procrastinated to the last moments. We also do some *useful* stuff:
### PátekTalks
In the spirit of a known Czech saying, that can be roughly translated to *"Who is good at something does it, who is bad at something teaches it."* students, who know something the others don't, prepare talks about topics they consider interesting. Because most members are conservative computer scientists, most these talks follow this direction, but if there is anyone brave enough, they can stand up to them with their topics.
In the spirit of a known Czech saying, that can be roughly translated to *"Who is good at something does it, who is bad at something teaches it."* students, who know something the others don't, prepare talks about topics they consider interesting. Because most members are conservative computer scientists, most these talks follow this direction, but if there is anyone brave enough, they can stand up to them with their topics.
### Projects
Members of Pátek are a creative bunch, we like to make stuff, bodge stuff and generally mess around. We learn new things and waste time that could be used for much more valuable activities. One of the reasons we had for creating this website was our desire to share our experiences with these projects with other members as well as with unsuspecting members of the public. If you try hard enough, you might even find some interesting information about ongoing and past projects.
Members of Pátek are a creative bunch, we like to make stuff, bodge stuff and generally mess around. We learn new things and waste time that could be used for much more valuable activities. One of the reasons we had for creating this website was our desire to share our experiences with these projects with other members as well as with unsuspecting members of the public. If you try hard enough, you might even find some interesting information about ongoing and past projects.
### Trips
When there is a chance, we like to go on many trips, for instance to [100vědců](http://100vedcu.cz/).
When there is a chance, we like to go on many trips, for instance to [100vědců](https://100vedcu.cz/).
### PátekPrint
Our grammar school acquired a Prusa RepRap i3 Mk3 3D printer, which is now managed by four members of Pátek. For that reason, we print almost constantly during our meetings and every member can, with the help of more experienced members, design and then print anything. Most people, however, choose to just download a shitty model from [thingiverse](https://thingiverse.com) and print that.
Our grammar school acquired a Prusa RepRap i3 Mk3 3D printer, which is now managed by four members of Pátek. For that reason, we print almost constantly during our meetings and every member can, with the help of more experienced members, design and then print anything. Most people, however, choose to just download a shitty model from [thingiverse](https://thingiverse.com) and print that.
### Programming
As was mentioned before, a big part of our group are programmers, who spend their time staring at the displays of their computers, observing and writing colourful letters that don't make any sense. Besides heated debates about balderdash, they maintain [the grammar school's website](https://gbl.cz) and [this one](/). It doesn't end there though, one of the currently suspended projects is Gomber - an openSource implementation of BoberMan written in Go, with which we discover the basics of this beautiful programming language.
As was mentioned before, a big part of our group are programmers, who spend their time staring at the displays of their computers, observing and writing colourful letters that don't make any sense. Besides heated debates about balderdash, they maintain [the grammar school's website](https://gbl.cz) and [this one](/). It doesn't end there though, one of the currently suspended projects is Gomber - an openSource implementation of BoberMan written in Go, with which we discover the basics of this beautiful programming language.
### PátekSpace
One could call our little group a [hackerspace](https://en.wikipedia.org/wiki/Hackerspace). One of the main advantages of a hackerspace is the availability of tools which would otherwise not be feasible to have at home. Currently, we just have the 3D printer and some screwdrivers, but after prior arrangement, we sometimes borrow some of the lab kit that our school owns (obviously under the surveillance of a teacher 😉). In the future, we would like to gather more tools to make available to all members.
### Our partner groups
If you like Pátek, you will like these groups and clubs as well. They all share our values, are Pátek's friends and you're highly encouraged to check them out:
- [Microlab](https://microlab.space/) - informal student hackerspace by the Department of Information Technology, Faculty of Education, CUNI
<br />
<br />
<br />
@@ -43,4 +38,4 @@ But most importantly, we are a bunch of friends doing what we enjoy. I hope that
Representing all members of Pátek,
[Greenscreener](/authors/greenscreener)
[Greenscreener](./authors/greenscreener)
+1 -1
View File
@@ -3,6 +3,6 @@ title: "Greenscreener"
avatar: "https://greenscreener.tk/images/GSLOGO.svg"
fullname: "Jan Černohorský"
---
Ahoj, jsem Greenscreener, vlastním jménem Jan Černohorský, jsem dlouholetý člen Pátku a také člen výkonné rady Pátek z. s. Jsem jedním z autorů těchto stránek a také [gbl.cz](https://gbl.cz). Jsem nadšený linuxák a většinu svého volného času trávím tvorbou webových aplikací. Ke svému vlastnímu znechucení stále nejlépe ovládám JavaScript, ale píšu i v Pythonu, bashi a podobných. Hrozně se mi líbí Go, ale ještě jsem neměl dostatek trpělivosti na to, abych se ho pořádně naučil. Rád si hraju s Arduinem a elektronikou, často ve škole 3D tisknu. Občas dokonce něco vyrobím v Blenderu.
Ahoj, jsem Greenscreener, vlastním jménem Jan Černohorský, jsem dlouholetý člen Pátku a také člen výkonné rady Pátek z. s. Jsem jedním z autorů těchto stránek a také [gbl.cz](https://gbl.cz). Jsem nadšený linuxák a většinu svého volného času trávím tvorbou webových aplikací. Ke svému vlastnímu znechucení stále nejlépe ovládám JavaScript, ale píšu i v Pythonu, bashi a podobných. Hrozně se mi líbí Go, ale ještě jsem neměl dostatek trpělivosti na to, abych se ho pořádně naučíl. Rád si hraju s Arduinem a elektronikou, často ve škole 3D tisknu. Občas dokonce něco vyrobím v Blenderu.
Najdete mě na [Twitteru](https://twitter.com/GrnScrnr), [GitHubu](https://github.com/Greenscreener), [Telegramu](https://t.me/grnscrnr) a více informací o mně najdete na mých webových stránkách [greenscreener.tk](https://greenscreener.tk).
+2 -2
View File
@@ -3,6 +3,6 @@ title: "Greenscreener"
avatar: "https://greenscreener.tk/images/GSLOGO.svg"
fullname: "Jan Černohorský"
---
Hi, I'm Greenscreener or Jan Černohorský, if you prefer my real name. I'm a long-time member of Pátek and a member of the executive board of Pátek z. s. I am one of the authors of this website and also gbl.cz. I am a keen user of linux and I spend most of my time making web stuff. To my own disgust, the language I'm best at is still JavaScript, but I also write in Python, bash and similar. I really like Go, but I haven't found the time yet to sit down and properly learn it. I like playing with Arduino and other electronics, I often do some 3D printing at school. Sometimes I even make stuff in Blender.
Hi, I'm Greenscreener or Jan Černohorský, if you prefer my real name. I'm a long-time member of Pátek and a member of the executive board of Pátek z. s. I am one of the authors of this website and also gbl.cz. I am a keen user of linux and I spend most of my time making web stuff. To my own disgust, the language I'm best at is still JavaScript, but I also write in Python, bash and similar. I really like Go, but I haven't found the time yet to sit down and properly learn it. I like playing with Arduino and other electronics, I often do some 3D printing at school. Sometimes I even make stuff in Blender.
You can find me on [Twitter](https://twitter.com/GrnScrnr), [GitHub](https://github.com/Greenscreener), [Telegram](https://t.me/grnscrnr) and find out more about me on my website [greenscreener.tk](https://greenscreener.tk).
You can find me on [Twitter](https://twitter.com/GrnScrnr), [GitHub](https://github.com/Greenscreener), [Telegram](https://t.me/grnscrnr) and find out more about me on my website [greenscreener.tk](https://greenscreener.tk).
-9
View File
@@ -1,9 +0,0 @@
---
title: "Vojta"
fullname: "Vojta Káně"
---
Jeden ze zakládajících členů Pátku nadšený pro vše informatické i zcela normální.
Dnes již bohužel na GBL nestuduju, přesto se snažím udržet v centru dění. A taky rád do všeho kecám.
Více o mně na [mém webu](https://vkane.cz).
-7
View File
@@ -1,7 +0,0 @@
---
title: "Vojta"
fullname: "Vojta Káně"
---
I am one of the founding members of Pátek, currently retired event though I try to be in contact with the community as much as possible.
More can be found in the [Czech version]({{< relref path="." lang="cs" >}}) or on [my website](https://vkane.cz).
+3 -4
View File
@@ -2,11 +2,10 @@
title: "Blog"
buttonColor: "#FFDC00"
buttonTextColor: "black"
menu:
main:
menu:
main:
weight: 3
landing:
weight: 2
---
V blogu najdete všechny články, které se nám nevešly do ostatních sekcí, zápisy z Pátků, oznámení, výlety, návody, vykecávání se o tom, na čem zrovna pracujeme a mnoho dalšího.
V blogu najdete všechny články, které se nám nevešly do ostatních sekcí, zápisy z Pátků, oznámení, výlety, návody, vykecávání se o tom, na čem zrovna pracujeme a mnoho dalšího.
+3 -3
View File
@@ -2,10 +2,10 @@
title: "Blog"
buttonColor: "#FFDC00"
buttonTextColor: "black"
menu:
main:
menu:
main:
weight: 3
landing:
weight: 2
---
The blog contains all the articles we couldn't fit into other sections including what happened during recent Páteks, announcements, trips, guides, articles about our projects and much more.
The blog contains all the articles we couldn't fit into other sections including what happened during recent Páteks, announcements, trips, guides, articles about our projects and much more.
+13 -13
View File
@@ -5,49 +5,49 @@ draft: false
authors: [ "Greenscreener" ]
tags: []
---
Od pátku do soboty se minulý týden konal AT&T Hackaton 2019 v pavilonu E brněnského výstaviště. Na akci jsme samozřejmě vyjeli, i když jsme se domnívali, že nemáme moc velkou šanci. Do moravské metropole jsme dojeli už ve čtvrtek k večeru a strávili jsme večer poznáváním místní kultury. Snažili jsme se přijít na to, co že to na oněm hackatonu budeme stavět, ale nic nás nenapadlo.
Od pátku do soboty se minulý týden konal AT&T Hackaton 2019 v pavilonu E brněnského výstaviště. Na akci jsme samozřejmě vyjeli, i když jsme se domnívali, že nemáme moc velkou šanci. Do moravské metropole jsme dojeli už ve čtvrtek k večeru a strávili jsme večer poznáváním místní kultury. Snažili jsme se přijít na to, co že to na oněm hackatonu budeme stavět, ale nic nás nenapadlo.
Po spánku o dost kratším, než by bylo vhodné, jsme vyrazili směrem k výstavišti. Před budovou už stál kamion „Fablab experience“, pojízdná dílna brněnského hackerspacu Fablab, který má na palubě mimo jiné elektronový mikroskop, laserovou řezačku, 3D tiskárny, plotter a mnoho dalšího. Po registraci jsme se usadili ke stolu na samém konci místnosti a pokračovali jsme v tom, co jsme dělali hned od začátku. Snažili jsme se přijít na to, co že to budeme sakra stavět.
Po spánku o dost kratším, než by bylo vhodné, jsme vyrazili směrem k výstavišti. Před budovou už stál kamion „Fablab experience“, pojízdná dílna brněnského hackerspacu Fablab, který má na palubě mimo jiné elektronový mikroskop, laserovou řezačku, 3D tiskárny, plotter a mnoho dalšího. Po registraci jsme se usadili ke stolu na samém konci místnosti a pokračovali jsme v tom, co jsme dělali hned od začátku. Snažili jsme se přijít na to, co že to budeme sakra stavět.
{{< blogPhoto src="fablab-experience.jpg" alt="FabLab experience" >}}
Také jsme postupně navazovali kontakty s organizátory, prvním byl Michal Hrušecký, jeden z autorů Turrisu, který si všiml, že jsme si na akci přivezli vlastní Omnii. A samozřejmě to zveřejnil i na Twitter:
{{< tweet 1197796476728086530 >}}
{{< tweet 1197796476728086530 >}}
Proběhlo několik prezentací od předních českých odborníků v oboru hardwaru i softwaru a my jsme stále neměli nejmenší tušení, v čem spočívá naše „million dollar idea“. A tak jsme dále konverzovali, poslouchali přednášky, navštěvovali raut plný luxusního jídla, když v tom odbila dvanáctá hodina a soutěž začala.
Proběhlo několik prezentací od předních českých odborníků v oboru hardwaru i softwaru a my jsme stále neměli nejmenší tušení, v čem spočívá naše „million dollar idea“. A tak jsme dále konverzovali, poslouchali přednášky, navštěvovali raut plný luxusního jídla, když v tom odbila dvanáctá hodina a soutěž začala.
Od začátku soutěže panovala, k našemu vlastnímu překvapení, jaksi nesoutěžní atmosféra. Nezdálo se, že by soutěžící přijeli vyhrát za každých okolností, organizátoři a mentoři si s každým rádi povídali, chodili okolo stolů soutěžících a ptali se, jestli nemohou nějak pomoci, radili, když si někdo nevěděl s něčím rady. To neplatilo pouze pro mentory, jakožto soutěžící jsme si také rádi pomáhali.
Od začátku soutěže panovala, k našemu vlastnímu překvapení, jaksi nesoutěžní atmosféra. Nezdálo se, že by soutěžící přijeli vyhrát za každých okolností, organizátoři a mentoři si s každým rádi povídali, chodili okolo stolů soutěžících a ptali se, jestli nemohou nějak pomoci, radili, když si někdo nevěděl s něčím rady. To neplatilo pouze pro mentory, jakožto soutěžící jsme si také rádi pomáhali.
{{< blogPhoto src="atthack-contest.jpg" alt="Probíhající soutěž" >}}
Všechny součástky, které jsme si mohli přát, byly na místě také dostupné k zapůjčení. Když jsme přišli s požadavkem na DMX konektor a světlo, na chvíli vyvalil oči, ale pak prohlásil, že „má jedno doma a až brácha dojede domů, tak mu ho přiveze.“
Všechny součástky, které jsme si mohli přát, byly na místě také dostupné k zapůjčení. Když jsme přišli s požadavkem na DMX konektor a světlo, na chvíli vyvalil oči, ale pak prohlásil, že „má jedno doma a až brácha dojede domů, tak mu ho přiveze.“
To ale trochu předbíhám. První dvě hodiny soutěže jsme trávili čas konverzací mezi sebou, ale také s mentory, abychom konečně vymysleli nějaký kloudný nápad. Po asi třech hodinách konečně vyplavala na povrch první známka smysluplného plánu.
Všechna zvuková a osvětlovací technika je drahá, proprietární a velmi obtížná na ovládání a i k malé akci je potřeba několik velkých pultů, které dokáží ovládat pouze profesionálové, ale z vlastní zkušenosti víme, že se správným nástrojem to zvládne ovládat i laik. Rozhodli jsme se vyrobit zařízení, do kterého může uživatel zapojit všechny kabely do zvuku, promítání, světel a na mobilu si otevře jednoduchou aplikaci, ze které bude možné vše ovládat.
Všechna zvuková a osvětlovací technika je drahá, proprietární a velmi obtížná na ovládání a i k malé akci je potřeba několik velkých pultů, které dokáží ovládat pouze profesionálové, ale z vlastní zkušenosti víme, že se správným nástrojem to zvládne ovládat i laik. Rozhodli jsme se vyrobit zařízení, do kterého může uživatel zapojit všechny kabely do zvuku, promítání, světel a na mobilu si otevře jednoduchou aplikaci, ze které bude možné vše ovládat.
To ale nebylo vše. Součástí naší aplikace byla možnost vytvoření „scénáře“, který vypadá stejně, jako jakýkoliv divadelní nebo filmový scénář, s tím rozdílem, že obsahuje tlačítka, která obsahují akce jako „přehraj video“, „přehraj zvuk“ nebo „rozsviť světlo“. Po kliknutí se akce sama vykoná. Proto k ovládání stačí pouze sledovat, co se děje na pódiu a klikat na správná tlačítka, když přijde jejich čas.
Tak jsme si rozdělili práci a začali jsme makat, neboť jsme věděli, že máme ještě hodně práce před sebou. Šimon se ponořil hlavou napřed do webové aplikace ve Vue, Vojta dělal na backendu v Go, Kyslík s Adamem vyráběli krabičku a design a já jsem se vrtal v Arduinu na ovládání DMX.
Od té doby jsme zuřivě pracovali až do 12:00 následujícího dne. Samozřejmě jsme si dělali přestávky na návštěvu rautu, sdílení memes s organizátory na Discordu nebo také několik koleček okolo nočního výstaviště.
Od té doby jsme zuřivě pracovali až do 12:00 následujícího dne. Samozřejmě jsme si dělali přestávky na návštěvu rautu, sdílení memes s organizátory na Discordu nebo také několik koleček okolo nočního výstaviště.
Po skončení 24hodinového maratonu jsme ale museli náš projekt odprezentovat. Celá soutěž včetně této prezentace probíhala v angličtině, což jsme ale hravě zvládli. Prezentace, která musela obsahovat živou demonstraci, proběhla téměř hladce, až na chvíli, kdy si porota vyžádala předvedení jedné z funkcí. Po kliknutí na tlačítko místo kýžené akce zmizela polovina uživatelského rozhraní aplikace, což naštěstí přijala porota s pochopením.
Po skončení 24hodinového maratonu jsme ale museli náš projekt odprezentovat. Celá soutěž včetně této prezentace probíhala v angličtině, což jsme ale hravě zvládli. Prezentace, která musela obsahovat živou demonstraci, proběhla téměř hladce, až na chvíli, kdy si porota vyžádala předvedení jedné z funkcí. Po kliknutí na tlačítko místo kýžené akce zmizela polovina uživatelského rozhraní aplikace, což naštěstí přijala porota s pochopením.
{{< blogPhoto src="atthack-presentation.jpg" alt="Prezentace produktu" >}}
Poté nastal čas vyčkávání. Ten jsme strávili užíváním si úžasné atmosféry, konverzací s mentory, konzumací delikates z rautu, hraním videoher na konzolích v relax zóně a někteří také spánkem.
Poté nastal čas vyčkávání. Ten jsme strávili užíváním si úžasné atmosféry, konverzací s mentory, konzumací delikates z rautu, hraním videoher na konzolích v relax zóně a někteří také spánkem.
S blížícím se vyhlášením se začal vzduch plnit očekáváním. Během prezentací nám došlo, že možná budeme mít šanci nebýt poslední a že se nám podařilo vytvořit docela ucházející produkt. Kyslík to okomentoval: „Hlavně ať nejsme čtvrtý, to by naštvalo nejvíc.“
S blížícím se vyhlášením se začal vzduch plnit očekáváním. Během prezentací nám došlo, že možná budeme mít šanci nebýt poslední a že se nám podařilo vytvořit docela ucházející produkt. Kyslík to okomentoval: „Hlavně ať nejsme čtvrtý, to by naštvalo nejvíc.“
Moderátor měl skutečně smysl pro napětí a podařilo se mu vyhlášení prvních tří míst protáhnout tak, že jsme měli pocit, že trvá hodiny. Bylo vyhlášeno třetí místo, druhé místo a najednou jsme slyšeli: „And in the first place, the project nicknamed 'Show Controller', from team Pátek!“
Nemohli jsme tomu uvěřit, ale skutečně to tak bylo. Vyhráli jsme.
Nemohli jsme tomu uvěřit, ale skutečně to tak bylo. Vyhráli jsme.
{{< blogPhoto src="atthack-win.jpg" alt="Vítězný tým s diplomem" >}}
Poté už nás čekalo pouze rozloučení s mentory, úklid a dlouhá cesta směrem k domovu.
Poté už nás čekalo pouze rozloučení s mentory, úklid a dlouhá cesta směrem k domovu.
Děkujeme moc všem mentorům, organizátorům a ostatním soutěžícím za skvělou akci.
+1 -1
View File
@@ -2,7 +2,7 @@
title: "COVID19: Pátky online i tisk ochranných štítů"
date: 2020-05-04T14:19:45+02:00
draft: false
authors: [ "vojta001" ]
authors: [ "Vojta" ]
tags: []
---
Globální pandemie nemoci COVID19 způsobeně virem SARS-CoV-2 a z ní vyplývající opatření se dotkla i naší činnosti. Uzavření škol nás připravilo o místo ke scházení a následná omezení roznesla na kopytech i případné, nepříliš moudré, úvahy o využití jiných prostor. Touha po společné činnosti však neochabla a tak jsme vyměnili důvěrně známý video-sálek za online prostředí, konkrétně aplikaci [Jitsi Meet](https://jitsi.org/jitsi-meet) běžící na infrastruktuře sdružení [vpsFree](https://vpsfree.cz), a povídací část Pátku běží vesele dál.
-16
View File
@@ -1,16 +0,0 @@
---
title: "COVID část druhá"
date: 2020-10-06T21:59:34+02:00
draft: false
authors: [ "vojta001", "Greenscreener" ]
tags: [ ]
---
Po neuvěřitelném zahájení školního roku plném nových skvělých lidí, workshopu 3D tisku, návštěvy jednoho z našich nejstarších členů, či [rychloprojektu generování Morseovky Arduinem](https://gitlab.com/patek-devs/2020-08-18-morse-arduino) přichází tvrdý střet s realitou.
Protože se epidemiologická situace opět stává nepříznivou, naši středoškolští členové jsou na distanční výuce a byla by jen otázka času, než by na Pátek přišel někdo pozitivní, nezbývá našim svědomím, než s velkým zármutkem **přerušit naše milovaná setkání ve fyzickém světě až do odvolání**. Tedy už ani **<time datetime="2020-10-09">Pátek 9. 10.</time> prezenčně nebude**. Doufáme, že budeme moct toto drastické opatření co nejdříve odvolat, ale prozatím jej prosím přijměte s pochopením. **Distanční program samozřejmě bude**, ale bude přístupný nejen lidem, kteří se viru nebojí, ale i těm, kteří jsou opatrnější, třeba protože žijí v jednom domě s prarodiči.
Teď přeci jen něco z pozitivnějšího soudku. Chtěli bychom ještě jednou vyzvednout [Páteční Streamované Přednášky]({{< relref "/tags/psp" >}}) z <time datetime="2020-05">května tohoto roku</time> a ještě jednou poděkovat všem přednášejícím, kteří se na nich podíleli. Určitě v nich budeme pokračovat; máme ještě nějaká témata v zásobě z minula a další se vymýšlejí včetně různých odvážnějších konceptů jako distanční HW bastlení a mnoho dalšího. A doufáme, že my všichni (tedy i **vy**) **vymyslíme další skvělé varianty distančních aktivit**, ať už **vzdělávacích**, **seznamovacích**, nebo prostě jen **zábavných** a **hracích**, protože o tom všem Pátek je a všechny nápady **rádi podpoříme**.
Co si tedy odnést závěrem? **Pátek nekončí**, ba naopak **je v plné síle a vy můžete být při tom**. Též **<time datetime="2020-10-09">Pátek 9. 10.</time> není zrušen, jen bude distančně**; podrobnosti zveřejníme obratem.
**Pátku zdar!**
-12
View File
@@ -1,12 +0,0 @@
---
title: "Začátek školního roku 2020/21"
date: 2020-09-07T10:52:07+02:00
draft: false
authors: [ "vojta001" ]
tags: [ ]
---
Září s sebou, tak jako každý rok, přineslo nejen o něco chladnější počasí, ale i začátek školního roku, tedy alespoň toho středoškolského.
Pátek nezahálí a již rozjíždí svou činnost po prázdninovém útlumu. První setkání, <time datetime="2020-09-04">4. 9.</time>, bylo spíše technicky údržbového rázu, avšak hned ten další, <time datetime="2020-09-11">11. 9.</time>, bude velký. Přivítáme nováčky, povíme si, co se povedlo i čeho bychom chtěli dosáhnout tento rok. Navíc bude i o něco organizovanější program než obvykle, zaexperimentujeme, zahackujeme, pobastlíme a hlavně se budeme dobře bavit.
Pokud byste měli o Pátek zájem a ještě nikdy jste na něm nebyli, vězte, že není třeba se nikam hlásit, nic platit ani nic podepisovat, prostě přijďte v pátek během odpoledne do místnosti zvané video sálek a hned se vás někdo ujme. Máte-li přesto dotazy, rádi je zodpovíme na [patek@gbl.cz](mailto:patek@gbl.cz).
+1 -1
View File
@@ -5,4 +5,4 @@ draft: false
authors: [ "Greenscreener" ]
tags: [ "vylet" ]
---
Jako každý rok se 5. a 6. října konají na fakultě informačních technologií ČVUT v Praze LinuxDays - největší česká linuxácká konference. Už poněkolikáté jedeme v malé skupince poslouchat přednášky nejlepších z nejlepších v české komunitě linuxáků.
Jako každý rok se 5. a 6. října konají na fakultě informačních technologií ČVUT v Praze LinuxDays - největší česká linuxácká konference. Už poněkolikáté jedeme v malé skupince poslouchat přednášky nejlepších z nejlepších v české komunitě linuxáků.
+2 -2
View File
@@ -5,8 +5,8 @@ draft: false
authors: [ "Greenscreener" ]
tags: [ "schuze" ]
---
První Pátek tohoto školního roku byl skutečně nabitý a plný nefalšovaného Pátečního ducha. Na začátku jsme byli šokováni počtem nových členů, kteří nás přišli navštívit. Po krátkém projevu, který proběhl v úterý o velké přestávce v učebně primy, se nám na Pátku objevilo **deset** nových tváří, nadšených pro vše, co jsme jim ukázali. Vojta měl na začátku přednášku o 3D tiskárně, která sklidila nemalý úspěch a vyvolala neutuchající nadšení. Dalším šokem, který nás čekal, byla kopírka, kterou našel jeden z členů zahozenou po cestě ze školy. Je sice funkční, ale velmi často se v ní zasekává papír, proto je otázkou, jestli pro ni najdeme využití, nebo jestli bude rozebrána a přetvořena na něco jiného. Poté, co se trochu uklidnila atmosféra, proběhly přednášky o [Kybersoutěži a PátekCTF]({{< relref "/talks/patekctf1" >}}) a o [projektové dokumentaci]({{< relref "/talks/projectdocs" >}}). Nakonec jsme rozebrali pár starých elektrospotřebičů a poslední členové se rozešli domů.
První Pátek tohoto školního roku byl skutečně nabitý a plný nefalšovaného Pátečního ducha. Na začátku jsme byli šokováni počtem nových členů, kteří nás přišli navštívit. Po krátkém projevu, který proběhl v úterý o velké přestávce v učebně primy, se nám na Pátku objevilo **deset** nových tváří, nadšených pro vše, co jsme jim ukázali. Vojta měl na začátku přednášku o 3D tiskárně, která sklidila nemalý úspěch a vyvolala neutuchající nadšení. Dalším šokem, který nás čekal, byla kopírka, kterou našel jeden z členů zahozenou po cestě ze školy. Je sice funkční, ale velmi často se v ní zasekává papír, proto je otázkou, jestli pro ni najdeme využití, nebo jestli bude rozebrána a přetvořena na něco jiného. Poté, co se trochu uklidnila atmosféra, proběhly přednášky o [Kybersoutěži a PátekCTF](/talks/patekctf1) a o [projektové dokumentaci](/talks/projectdocs). Nakonec jsme rozebrali pár starých elektrospotřebičů a poslední členové se rozešli domů.
Děkuji všem za účast a těším se na další takové Pátky,
GS
GS
-14
View File
@@ -1,14 +0,0 @@
---
title: "PF 2021"
date: 2020-12-27T12:09:17+01:00
draft: false
authors: [ "vojta001" ]
tags: [ ]
---
Rok 2020 byl zatím asi nejbláznivějším v dějinách Pátku. Ovlivnil nejen Pátek jako celek a jeho pravidelné schůzky, ale i každého z nás naši pohodu, naše časové dispozice, naše vzdělávání.
Nic z toho na nás však nezanechalo šrámy. Nepolevili jsme ani ve scházení, ani v podílení na informatickém stavu školy, ani v nadšení, speciálně do akcí, jako hackatony a jiné kutilské počiny. Spousta musela proběhnout jinak, **ale proběhla**, a to nejen v kruhu klasiků, ale i nových tváří školního roku 2020/2021 a dokonce i naopak dávných příznivců dnes pohlcených vysokými školami. A aby toho nebylo málo, navázali jsme přátelství s Microlabem, což nám vyneslo skvěle přednášky a velký potenciál do budoucna.
**Velký dík vám všem**, kdo jste se podíleli a účastnili. Přeji nám všem, ať je rok 2021 co nejblíže normálu a co nejplnější osobního kontaktu. Jsem si však jistý, že ať už přinese cokoli, hravě se s tím vypořádáme!
Vojta
+9 -13
View File
@@ -3,28 +3,24 @@ title: "První Páteční Sled Přenášek"
date: 2020-05-14T21:37:00+02:00
draft: false
authors: [ "Greenscreener" ]
tags: [ "psp" ]
tags: []
---
[Záznam livestreamu na YouTube](https://www.youtube.com/watch?v=wkN9iwk0dSQ)
Ahoj všichni Pátečníci, příznivci Pátku, náhodní kolemjdoucí nebo (daleko pravděpodobněji) lidé, kterým jsme tento odkaz nacpali násilím.
Ahoj všichni Pátečníci, příznivci Pátku, náhodní kolemjdoucí nebo (daleko pravděpodobněji) lidé, kterým jsme tento odkaz nacpali násilím.
Inspirováni například KSPčkovými Krátkými Streamovanými Přednáškami jsme se rozhodli v rámci Pátku a PátekTalks zorganizovat vlastní takovou akci.
První Páteční Sled Přednášek se bude konat **v pondělí, 18. 5. 2020 od 14:00**. O programu zatím hlasujeme na [Pátečním Telegramu](https://t.me/patekvpatek), až bude odhlasováno a naplánováno, program se objeví také zde. Přednášky by měly trvat **60 - 90 min**, po nich následuje volné diskusní odpoledne, kdo bude mít čas, naskytne se mu příležitost pořádně si Pátečnicky pokecat.
První Páteční Sled Přednášek se bude konat **v pondělí, 18. 5. 2020 od 14:00**. O programu zatím hlasujeme na [Pátečním Telegramu](https://t.me/patekvpatek), až bude odhlasováno a naplánováno, program se objeví také zde. Přednášky by měly trvat **60 - 90 min**, po nich následuje volné diskusní odpoledne, kdo bude mít čas, naskytne se mu příležitost pořádně si Pátečnicky pokecat.
Potkáme se ~~jako obvykle na [Jitsi](https://meet.vpsfree.cz/Pátek)~~ **AKTUALIZOVÁNO 18. 5.: Setkáme se přímo na serveru Jitsi místo VPSFree [zde](https://meet.jit.si/P%C3%A1tek)**. Pokud nám to technika dovolí, pokusíme se zhotovit záznam, který zveřejníme zde.
Potkáme se jako obvykle na [Jitsi](https://meet.vpsfree.cz/Pátek). Pokud nám to technika dovolí, pokusíme se zhotovit záznam, který zveřejníme zde.
Pokud chcete dostávat informace o nadcházejících přednáškách emailem, přihlašte se [zde](https://forms.gle/SJpUP9XvicqN8ZBo6). Kromě těchto adres budeme také rozesílat informace do obvyklých komunikačních kanálů Pátku.
Pokud chcete dostávat informace o nadcházejících přednáškách emailem, přihlašte se [zde](https://forms.gle/SJpUP9XvicqN8ZBo6). Kromě těchto adres budeme také rozesílat informace do obvyklých komunikačních kanálů Pátku.
**Aktualizováno 16. 5. - Program:**
14:00 - **Saša Fišera** - Termit a směsi jemu podobné ([záznam](https://www.youtube.com/watch?v=_aeF4AqAjqQ))
14:00 - **Saša Fišera** - Termit a směsi jemu podobné
~14:30 - **Franta Kmječ** - Rychlost programů (základy programování, díl první) ([záznam](https://www.youtube.com/watch?v=qjoYp42F08k))
~14:30 - **Franta Kmječ** - Rychlost programů (základy programování, díl první)
~15:00 - **Šimon Šustek** - OpenPGP: každý je certifikační autorita ([záznam](https://www.youtube.com/watch?v=TSiyKBtUSLI))
~15:30 - začátek dotazů a volného tlachání
~15:00 - **Šimon Šustek** - OpenPGP: každý je certifikační autorita
~15:30 - začátek dotazů a volného tlachání
-27
View File
@@ -1,27 +0,0 @@
---
title: "Páteční Sled Přednášek (25. 5. 2020)"
date: 2020-05-24T22:10:32+02:00
draft: false
authors: [ "Greenscreener" ]
tags: [ "psp" ]
---
{{< button href="https://meet.jit.si/P%C3%A1tek" text="Připojit se k přednášce" >}}
<br>
[Livestream na YouTube](https://www.youtube.com/watch?v=wHAd9gOFr7k)
Ahoj všichni, opět chystáme na pondělí další Páteční Sled Přednášek. Bude se opět odehrávat **v pondělí 25. 5. 2020 od 14:00**, přednášky už máme odhlasované a opět by měly vyjít na **60 - 90 minut**. Znovu se potkáme na [Jitsi](https://meet.jit.si/Pátek) a dostupný bude také [livestream na YouTube](https://youtu.be/wHAd9gOFr7k).
Pokud jste tak ještě neučili a chcete, máte možnost se přihlásit k odběru novinek o těchto akcích [zde](https://forms.gle/SJpUP9XvicqN8ZBo6).
Teď už ale k tomu co nás bude čekat, **program** bude následující:
14:00 - **Franta Kmječ** - Datové struktury (základy programování, díl druhý)
~14:30 - **Vojta Káně** - Otevřenost, FOSS a decentralizace s praktickou ukázkou
~15:00 - **Lenka Kopfová** - Teorie her
~15:30 - začátek volné diskuse
-30
View File
@@ -1,30 +0,0 @@
---
title: "Páteční Sled Přednášek III (16. 10. 2020)"
date: 2020-10-14T20:27:00+02:00
draft: false
authors: [ "Kyslík" ]
tags: [ "psp" ]
---
{{< button href="https://meet.jit.si/P%C3%A1tek" text="Připojit se k přednášce" >}}
<br>
[Livestream na YouTube](https://youtu.be/rEPahyUnng4)
Nazdar Pátečníci,
opět přecházíme na online formu Pátků a s ní opět přicházejí Páteční Sledy Přednášek. Tentokrát bude probíhat opravdu v **pátek** a to **16. 10. 2020**. Samotné přednášky budou opět probíhat na [Jitsi](https://meet.jit.si/Pátek) a budeme je streamovat na [YouTube](https://youtu.be/rEPahyUnng4), kde bude následně i záznam.
Co však není obvyklé je, že dva přednášející, konkrétně **Petr Velička** a **Emil Miler**, jsou hosté z [microlabu](https://microlab.space/), což je podobný spolek Pátku na [PedF UK](https://pedf.cuni.cz/PEDF-1.html). Tímto jim moc děkujeme.
Nyní však již k programu:
***Přednáška Petra a Emila je odložena na příští, respektive popříští týden a dnešní program je obstarán Honzou Černohorským a Vojtou.***
15:00 - **Vojta Káně** - [Pohled pod pokličku patek.cz]({{< relref "/talks/patek_cz-internals" >}})
15:30 - **Petr Velička** - [lfs-musl-clang]({{< relref "/talks/lfs" >}})
16:00 - **Emil Miler (Nixi)** - [>install gentoo]({{< relref "/talks/install-gentoo" >}}) (pokud stihne dorazit)
Pokud jste tak ještě neučili a chcete, máte možnost se přihlásit k odběru novinek o těchto akcích [zde](https://forms.gle/SJpUP9XvicqN8ZBo6).
@@ -5,18 +5,18 @@ draft: false
authors: [ "Greenscreener" ]
tags: [ "schuze" ]
---
Na Pátku 04.10.2019 jsme byli znovu přítomni v hojném počtu.
Na Pátku 04.10.2019 jsme byli znovu přítomni v hojném počtu.
Nejmladší členové z primy programovali roboty Edison pomocí programovacího
[prostředí](https://meetedison.com/robot-programming-software/edscratch/),
které je podobné jazyku [scratch](https://scratch.mit.edu). Za všudypřítomného
pípání se všude po místnosti pohybovaly malé oranžové kostičky, tancující dle
přednastavených programů, sledující čáru nebo narážející do všeho, co jim stálo
v cestě.
[prostředí](https://meetedison.com/robot-programming-software/edscratch/),
které je podobné jazyku [scratch](https://scratch.mit.edu). Za všudypřítomného
pípání se všude po místnosti pohybovaly malé oranžové kostičky, tancující dle
přednastavených programů, sledující čáru nebo narážející do všeho, co jim stálo
v cestě.
Jako obvykle přišel [Petr Kospach](/authors/ok1ven), konzultoval se studenty
sexty jejich seminární práce, pomáhal s opravou teslova transformátoru a
jako obvykle předával své mnohé zkušenosti.
jako obvykle předával své mnohé zkušenosti.
Jeden z našich týmů začal pilně pracovat na svém robotu na
[Robosoutěž](https://robosoutez.fel.cvut.cz). Letošní úloha je překonat
@@ -28,4 +28,3 @@ tématem bylo například použití rekurze v implementaci faktoriálu a Fibonac
posloupnosti.
Založili jsme také Pátečnický [twitter](https://twitter.com/patekvpatek).
+3 -3
View File
@@ -1,10 +1,10 @@
---
title: "Projekty"
buttonColor: "#0F87D7"
menu:
main:
menu:
main:
weight: 16
landing:
weight: 3
---
Pátkaři jsou tvořivá sebranka, rádi bastlíme, kutíme a vyrábíme. Učíme se tím novým dovednostem a mrháme časem, který bychom jinak strávili něčím užitečnějším. Jedním z důvodů pro vznik těchto stránek byla naše touha podělit se o zkušenosti nabyté v rámci těchto projektů s ostatními Pátečníky, ale také s *normálními* lidmi. Když se tedy budete dostatečně snažit, možná zde najdete nějaké zajímavé informace o proběhlých a probíhajících projektech.
Pátkaři jsou tvořivá sebranka, rádi bastlíme, kutíme a vyrábíme. Učíme se tím novým dovednostem a mrháme časem, který bychom jinak strávili něčím užitečnějším. Jedním z důvodů pro vznik těchto stránek byla naše touha podělit se o zkušenosti nabyté v rámci těchto projektů s ostatními Pátečníky, ale také s *normálními* lidmi. Když se tedy budete dostatečně snažit, možná zde najdete nějaké zajímavé informace o proběhlých a probíhajících projektech.
+3 -4
View File
@@ -1,11 +1,10 @@
---
title: "Projects"
buttonColor: "#0F87D7"
menu:
main:
menu:
main:
weight: 16
landing:
weight: 3
---
Members of Pátek are a creative bunch, we like to make stuff, bodge stuff and generally mess around. We learn new things and waste time that could be used for much more valuable activities. One of the reasons we had for creating this website was our desire to share our experiences with these projects with other members as well as with unsuspecting members of the public. If you try hard enough, you might even find some interesting information about ongoing and past projects.
Members of Pátek are a creative bunch, we like to make stuff, bodge stuff and generally mess around. We learn new things and waste time that could be used for much more valuable activities. One of the reasons we had for creating this website was our desire to share our experiences with these projects with other members as well as with unsuspecting members of the public. If you try hard enough, you might even find some interesting information about ongoing and past projects.
-4
View File
@@ -5,7 +5,3 @@ authors: [ "Greenscreener", "sijisu" ]
leader: [ "sijisu" ]
---
Chtěli jsme jet na MakerFaire, ale neměli jsme co prezentovat. Tak jsme za měsíc postavili urychlovač částic.
Repozitář s tím, co z toho vzniklo, najdete zde: [https://gitlab.com/patek-devs/2019-mfp/particle-accelerator](https://gitlab.com/patek-devs/2019-mfp/particle-accelerator)
Pokud vidíte tento text, znamená to, že se ještě nikdo nepřiměl k podrobnému popsání realizace projektu. Pokud si myslíte, že to je škoda, a chcete vědět více informací, můžete prozatím vyjádřit svůj hněv na [patek@gbl.cz](mailto:patek@gbl.cz), popřípadě s napětím vyčkávat až se k tomu pátečníci dokopou.
+1 -1
View File
@@ -4,7 +4,7 @@ date: 2019-09-08T12:54:22+02:00
draft: false
authors: [ "Greenscreener" ]
buttonColor: "#33007f"
menu:
menu:
main:
weight: 10
landing:
+2 -2
View File
@@ -4,11 +4,11 @@ date: 2019-09-08T12:54:30+02:00
draft: false
authors: [ "Greenscreener" ]
buttonColor: "#33007f"
menu:
menu:
main:
weight: 10
landing:
weight: 6
title: "<patek-logo title='Space' subtitle='Pátek'>Space</patek-logo>"
---
One could call our little group a [hackerspace](https://en.wikipedia.org/wiki/Hackerspace). One of the main advantages of a hackerspace is the availability of tools which would otherwise not be feasible to have at home. Currently, we just have the 3D printer and some screwdrivers, but after prior arrangement, we sometimes borrow some of the lab kit that our school owns (obviously under the surveillance of a teacher 😉). In the future, we would like to gather more tools to make available to all members.
One could call our little group a [hackerspace](https://en.wikipedia.org/wiki/Hackerspace). One of the main advantages of a hackerspace is the availability of tools which would otherwise not be feasible to have at home. Currently, we just have the 3D printer and some screwdrivers, but after prior arrangement, we sometimes borrow some of the lab kit that our school owns (obviously under the surveillance of a teacher 😉). In the future, we would like to gather more tools to make available to all members.
+1 -1
View File
@@ -5,4 +5,4 @@ draft: false
authors: ["Kyslík"]
when: 2019-09-06T15:00:00+02:00
---
Projektová dokumentace je klíčovým prostředkem pro komunikaci nejen vývojářů s uživateli, avšak i mezi jednotlivými vývojáři, či v rámci jednho projektu. Proto jsme se nejdříve zaměřili na rozdělení jednotlivých typů dokumentace (interní, externí). Následovala krátká ukázka povedených a nepovedených dokumentací, jež byla provázena povídáním o správném psaní dokumentací a zakončeno prostorem pro dokumentaci.
Projektová dokumentace je klíčovým prostředkem pro komunikaci nejen vývojářů s uživateli, avšak i mezi jednotlivými vývojáři, či v rámci jednho projektu. Proto jsme se nejdříve zaměřili na rozdělení jednotlivých typů dokumentace (interní, externí). Následovala krátká ukázka povedených a nepovedených dokumentací, jež byla provázena povídáním o správném psaní dokumentací a zakončeno prostorem pro dokumentaci.
+5 -10
View File
@@ -5,20 +5,15 @@ draft: false
authors: [ "Greenscreener" ]
buttonColor: "red"
navColor: "red"
menu:
main:
menu:
main:
weight: 8
landing:
weight: 4
title: "<patek-logo title='Talks' subtitle='Pátek'>Talks</patek-logo>"
cascade:
outputs:
- HTML
- RSS
- Calendar
---
Dle známého českého přísloví *„Kdo umí, umí, kdo neumí, učí.“* si členové, kteří vědí něco, co ostatní neví, připravují jednou za čas přednášky o tématech, která jim připadají zajímavá. Vzhledem k tomu, že většina starších členů Pátku jsou skalní informatici, se většina přednášek ubírá tímto směrem, avšak kdo má odvahu, může se jim postavit se svým tématem.
Dle známého českého přísloví *„Kdo umí, umí, kdo neumí, učí.“* si členové, kteří vědí něco, co ostatní neví, připravují jednou za čas přednášky o tématech, která jim připadají zajímavá. Vzhledem k tomu, že většina starších členů Pátku jsou skalní informatici, se většina přednášek ubírá tímto směrem, avšak kdo má odvahu, může se jim postavit se svým tématem.
Samozřejmě budeme moc rádi, pokud se k nám s přednášením přidá i někdo zajímavý, kdo není členem našeho uskupení.
Samozřejmě budeme moc rádi, pokud se k nám s přednášením přidá i někdo zajímavý, kdo není členem našeho uskupení.
Na této stránce budeme zveřejňovat data plánovaných přednášek, jejich krátké popisy a následně také slidy, pokud to přednášející umožní.
Na této stránce budeme zveřejňovat data plánovaných přednášek, jejich krátké popisy a následně také slidy, pokud to přednášející umožní.
+6 -10
View File
@@ -3,22 +3,18 @@ title: "Talks"
date: 2019-08-06T09:43:00+02:00
draft: false
authors: [ "unknown" ]
when: 2019-08-06T09:43:00+02:00
buttonColor: "red"
navColor: "red"
menu:
main:
menu:
main:
weight: 8
landing:
weight: 4
title: "<patek-logo title='Talks' subtitle='Pátek'>Talks</patek-logo>"
cascade:
outputs:
- HTML
- RSS
- Calendar
---
In the spirit of a known Czech saying, that can be roughly translated to *"Who is good at something does it, who is bad at something teaches it."* students, who know something the others don't, prepare talks about topics they consider interesting. Because most members are conservative computer scientists, most these talks follow this direction, but if there is anyone brave enough, they can stand up to them with their topics.
In the spirit of a known Czech saying, that can be roughly translated to *"Who is good at something does it, who is bad at something teaches it."* students, who know something the others don't, prepare talks about topics they consider interesting. Because most members are conservative computer scientists, most these talks follow this direction, but if there is anyone brave enough, they can stand up to them with their topics.
Obviously, we would be delighted, if anyone outside our little group joined us with their talk.
Obviously, we would be delighted, if anyone outside our little group joined us with their talk.
This page contains write-ups for most of the talks we do. Some are only available in [Czech]({{< relref path="." lang="cs" >}}).
This page contains write-ups for most of the talks we do. Some are only available in [Czech](/talks).
@@ -1,12 +0,0 @@
---
title: "Rychlost programů: úvod do asymptotické složitosti"
date: 2020-05-19T14:53:45+02:00
draft: false
authors: [ "Franta" ]
when: 2020-05-18T14:30:00+02:00
slides:
- data: https://docs.google.com/presentation/d/1zJK37UjmgbKOJKhY0ZsHLlB5nX7MemSf-7O20cQI7GY
recordings:
- data: https://www.youtube.com/watch?v=qjoYp42F08k
---
Půlhodinový neformální úvod do toho, jak přemýšlet nejen nad rychlostí programů, ale hlavně teoretických algoritmů.
-14
View File
@@ -1,14 +0,0 @@
---
title: "Openness, the user freedoms, and the business"
date: 2020-09-07T14:13:37+02:00
draft: false
authors: [ "vojta001" ]
when: 2020-05-25T15:45:00+02:00
slides:
- type: resource
data: presentation.pdf
recordings:
- data: https://www.youtube.com/watch?v=-4XEerftX-o
---
Tentokrát se jednalo spíše o společné zamyšlení a výzvu, než o klasickou informativní přednášku. Mluvil jsem o tom, co vlastně všechno může být otevřené a hlavně, k čemu je to vlastně dobré. Taky jsme se zamysleli, jak můžou otevřenost uchopit vývojáři, aby naplnili naše uživatelské svobody a stále ještě vydělali nějaké peníze. Nechyběla ani ukázka, jak snadné je dnes přispět do open source software a že to nemusí dělat jen akademici. Každý, byť sebemenčí, kousek se počítá.
Binary file not shown.
-12
View File
@@ -1,12 +0,0 @@
---
title: "Teorie her"
date: 2020-05-25T18:30:19+02:00
draft: false
authors: [ "Lenka" ]
when: 2020-05-25T15:00:00+02:00
slides:
- data: https://www.overleaf.com/read/hrzhqscrbrjf
recordings:
- data: https://www.youtube.com/watch?v=DdY-cXTfw9s
---
Pověděli jsme si něco o teorii her, což je prostě oblast matiky, která se zabývá (překvapivě) hrami a různými strategiemi. Ty se se snaží nějak porovnávat podle toho, jak jsou přínosné. Na začátku jsme si jednu takovou velmi velmi jednoduchou hru zahráli, následně jsme si pověděli něco o ryzích a smíšených strategiích. Taky jsme probrali, co je to Nashovo ekvilibrium a ukázali si ho na pár příkladech - např. známé hry typu vězňovo dilema nebo bitva pohlaví.
+6 -6
View File
@@ -2,14 +2,14 @@
title: "Git"
date: 2020-04-14T10:53:44+02:00
draft: false
authors: [ "Greenscreener", "vojta001" ]
authors: [ "Greenscreener", "Vojta" ]
when: 2020-04-15T17:00:00+02:00
slides:
- data: http://talks.grnscrnr.tk/git
recordings:
- data: https://www.youtube.com/watch?v=rlSiRVewDu0
---
Git je nejrozšířenější VCS současnosti. Co to vlastně je? Jak se používá? Během této přednášky chceme představit git úplným začátečníkům, představit základní, ale i složitější koncepty práce s ním a jak (ne)zbořit celý repozitář jedním příkazem.
Git je nejrozšířenější VCS současnosti. Co to vlastně je? Jak se používá? Během této přednášky chceme představit git úplným začátečníkům, představit základní, ale i složitější koncepty práce s ním a jak (ne)zbořit celý repozitář jedním příkazem.
Přednáška by měla proběhnout online na [Jitsi](https://meet.vpsfree.cz/P%C3%A1tek).
[Slidy](http://talks.grnscrnr.tk/git)
[Částečný záznam](https://youtu.be/rlSiRVewDu0)
-16
View File
@@ -1,16 +0,0 @@
---
title: ">install gentoo"
date: 2020-10-15
draft: false
authors: [ "nixi" ]
when: 2020-10-23T16:00:00+02:00
---
Ve světě unixových operačních systémů existuje spousta možností, hlavně co se týče Linuxových distribucí (Yes Richard, [I know](https://pastebin.com/raw/jtRBT5F1) and I [don't care](https://pastebin.com/raw/QD4q7r5P)). Mezi nejoblíbenější distribuce patří Arch Linux, rádoby *minimalistická* hračka těch, kteří rádi machrují na lidi s Ubuntu, ale sami nemají na to, aby si nakonfigurovali svůj kernel a nainstalovali Gentoo.
[Gentoo](https://gentoo.org/) je jedna z mála takzvaných *source-based* distribucí, jejichž principem je, že software se neinstaluje v binární podobě, nýbrž že veškerý software se kompiluje ze zdrojového kódu přímo pro dané zařízení. Uživatel má možnost přesně nastavit, s jakými možnostmi a optimalizacemi bude každý kus softwaru v systému fungovat. Celý systém je pak optimalizovaný přímo na daný procesor a pro daného uživatele. Firefox bez PulseAudia? No problem! Gentoo je zároveň jméno pro nejrychleji plavajícího tučňáka na světe, což je metafora pro rychlý optimalizovaný systém :)
V přednášce představím samotnou distribuci, její principy, Portage, Genkernel a vysvětlím, jak probíhá základní konfigurace pomocí flagů a klíčových slov. Takže `doas emerge -avuND @world` a [get ready to compile](https://invidious.tube/watch?v=VjGSMUep6_4).
![Papa Francesco](papa-francesco.jpg)
Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

+1 -1
View File
@@ -2,7 +2,7 @@
title: "Úvod do UNIXu"
date: 2019-10-25T08:30:00+02:00
draft: false
authors: [ "vojta001" ]
authors: ["Vojta"]
when: 2019-10-11T14:00:00+02:00
---
Talk o UNIXu, POSIXu a Linuxu, o tom, co mají společného, co který termín vlastně znamená a taky, že to je jedno, protože v praxi se spolu často zaměňují.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

-19
View File
@@ -1,19 +0,0 @@
N = int(input()) # N nepotřebujeme, ale přesto ho musíme načíst
P = input() # příkazy
# výchozí souřadnice želvy
x = 0
y = 0
# projdeme všechny příkazy a aktuální si vždy pojmenujeme p
for p in P:
if p == "S": # pokud je příkaz S
y += 1 # aktualizujeme příslušnou souřadnici
elif p == "J": # jinak pokud (proto elif) je příkaz J
y -= 1
elif p == "V":
x += 1
elif p == "Z":
x -= 1
print(str(x) + " " + str(y)) # vypíšeme finální souřadnice oddělené mezerou
-25
View File
@@ -1,25 +0,0 @@
---
title: "Úvod do programování v Pythonu a KSP-Z"
date: 2020-09-27T21:21:17+02:00
draft: false
authors: [ "vojta001" ]
when: 2020-09-25T14:30:00+02:00
slides:
- type: resource
data: 20200925_175815.jpg
desc: Tabule s vysvětlením Pythonu
- type: resource
data: 20200925_175828.jpg
desc: Tabule s pseudokódem k 29-Z1-1
- type: resource
data: 29-Z1-1.py
desc: Komentovaný zdrojový kód
---
Tento Pátek Talk proběhl spíše formou interaktivního workshopu, nežli frontální přednášky.
Popovídali jsme si nejprve, jak počítače fungují uvnitř a jak se programují. Přes přehled programovacích jazyků a jejich vlastností jsme se dostali až k Pythonu, na němž jsme prozkoumali syntaxi, základní datové typy i nejčastější řídící konstrukty. Pro zájem došlo i na rychlé porovnání s C, ale bohužel nezbyl čas toho využít.
Poté následovalo samotné řešení. Vybral jsem úlohu ze začátečnické kategorie [Korespondenčního Semináře z Programování](https://ksp.mff.cuni.cz) (KSP), který pořádá [Matematicko-fyzikální fakulta Univezity Karlovy](https://mff.cuni.cz), konkrétně _[29-Z1-1 Kevinova želva](https://ksp.mff.cuni.cz/z/ulohy/29/zadani1.html#task1)_. Úloha je již dávno po termínu odevzdání, díky tomu nevadilo, že jsme na její řešení přišli společně a nakonec ji i „nanečisto“ odevzdali. Nejprve jsme si společnými silami rozmysleli algoritmus na papíře v tzv. pseudokódu a poté implementovali.
Pro zájemce přikládám fotky tabule i můj zdrojový kód, ale obávám se, že pomůžou jen těm, kteří se zůčastnili úvodního povídání.
-11
View File
@@ -1,11 +0,0 @@
---
title: "Linux From Scratch"
date: 2020-04-15
draft: false
authors: [ "petrvel" ]
when: 2020-10-16T17:00:00+02:00
---
Linux From Scratch -- říká Vám něco název této knihy?
Pokud ne, na této přednášce budete mít příležitost poznat svět Linuxu ještě více do podrobna a dozvíte se o tom, jak si sestavit vlastní Linuxovou distibuci doslova od začátku, tzn. nezakládající se na žádné jiné existující distribuci. Můžete se těšit na hodně kompilování, ale nesmíte zapomenout ani na čtení dokumentace, jejíž rozsah několikrát přesahuje rozsah Vojny a míru.
+2 -2
View File
@@ -4,5 +4,5 @@ date: 2020-02-23T12:07:53+01:00
draft: false
authors: [ "HonzaSixta" ]
when: 2020-02-21T14:00:00+01:00
---
Osciloskop je jedním ze základních nástrojů elektrotechnika, který má mnoho využití. Co to je osciloskop, jak funguje, co se s ním dá dělat a mnoho dalšího nám včetně praktických ukázek přišel zodpovědět člen [týmu eForce](https://eforce.cvut.cz) a bývalý student gymnázia Honza Sixta.
---
Osciloskop je jedním ze základních nástrojů elektrotechnika, který má mnoho využití. Co to je osciloskop, jak funguje, co se s ním dá dělat a mnoho dalšího nám včetně praktických ukázek přišel zodpovědět člen [týmu eForce](https://eforce.cvut.cz) a bývalý student gymnázia Honza Sixta.
+2 -2
View File
@@ -5,6 +5,6 @@ draft: false
authors: [ "sijisu", "Greenscreener" ]
when: 2019-09-06T15:15:00+02:00
---
Kybersoutěž je česká soutěž v kyberbezpečnosti a „hackování“, pořádaná mnoha českými úřady, které se zabývají touto problematikou. Oba jsme se této soutěže účastnili a [Šimon](/authors/sijisu) je dokonce členem národního týmu. V tomto Talku jsme mluvili o naší účasti v této soutěži, nabádali jsme ostatní Pátkaře k účasti a také jsme vyprávěli o našich zkušenostech s kyberbezpečností.
Kybersoutěž je česká soutěž v kyberbezpečnosti a „hackování“, pořádaná mnoha českými úřady, které se zabývají touto problematikou. Oba jsme se této soutěže účastnili a [Šimon](/authors/sijisu) je dokonce členem národního týmu. V tomto Talku jsme mluvili o naší účasti v této soutěži, nabádali jsme ostatní Pátkaře k účasti a také jsme vyprávěli o našich zkušenostech s kyberbezpečností.
Dalším tématem bylo PátekCTF, malá „hackerská“ soutěž, kterou [Šimon](/authors/sijisu) zorganizoval pro Pátečníky. Obsahovala několik jednoduchých úloh, na kterých si mohli Pátkaři vyzkoušet, jak obvykle podobné soutěže fungují. V přednášce jsme prošli všechny úlohy a jejich příkladové řešení.
Dalším tématem bylo PátekCTF, malá „hackerská“ soutěž, kterou [Šimon](/authors/sijisu) zorganizoval pro Pátečníky. Obsahovala několik jednoduchých úloh, na kterých si mohli Pátkaři vyzkoušet, jak obvykle podobné soutěže fungují. V přednášce jsme prošli všechny úlohy a jejich příkladové řešení.
-13
View File
@@ -1,13 +0,0 @@
---
title: "Pohled pod pokličku patek.cz"
date: 2020-10-14T17:21:50+02:00
draft: false
authors: [ "vojta001" ]
when: 2020-10-16T15:00:00+02:00
---
[patek.cz]({{< relref "/" >}}) je klasická webovka obsahující základní informace o svém provozovateli a blog. Nebo ne?
Statické generování stránek (SSG) nabírá na popularitě, přesto se dnes jedná spíše o raritu. Jak to děláme my a co nám to přináší? A hodí se to na vše?
Zájemcům, kteří výše uvedené již znají, představím projekt [Hugo](https://gohugo.io) a ukážu, co a kde se v na první pohled zmatené složkové struktuře skrývá. Také vysvětlím jazyk [HTML šablon](https://golang.org/pkg/html/template) z jazyka [Go](https://golang.org), který Hugo použivá.
-12
View File
@@ -1,12 +0,0 @@
---
title: "OpenPGP: každý je certifikační autorita"
date: 2020-05-18T16:29:43+02:00
draft: false
authors: [ "Sijisu" ]
when: 2020-05-18T15:00:00+02:00
slides:
- data: https://present.sijisu.eu/personal/openpgp
recordings:
- data: https://www.youtube.com/watch?v=TSiyKBtUSLI
---
V půlhodině nám Šimon shrnul základy kryptografie, především rozdíl mezi symmetrickými a asymmetrickými šiframi, a ukázal, jak se s tím vypořádává OpenPGP, otevřená alternativa Pretty Good Privacy Phila Zimmermanna.
-12
View File
@@ -1,12 +0,0 @@
---
title: "Termit a směsi jemu podobné"
date: 2020-05-21T11:47:19+02:00
draft: false
authors: [ "Saša" ]
when: 2020-05-18T14:00:00+02:00
slides:
- data: https://docs.google.com/presentation/d/1n9N2aTcueDRrwlLDfBMyL-XJUKrppYX9BiR2eRaMaIA
recordings:
- data: https://www.youtube.com/watch?v=_aeF4AqAjqQ
---
Se Sašou jsme zjistili, co jako termit vlastně označujeme, jak jej vyrobit i k čemu to je nakonec dobré. Nechybělo ani poučení o bezpečnosti a demonstrace jednoho termitu naživo.
+1 -2
View File
@@ -11,7 +11,7 @@ services:
xo-html-lint:
image: registry.gitlab.com/patek-devs/patek.cz/xo-lint
command: \*.html --plugin=html --extension=html
volumes:
volumes:
- ./:/src:ro
sass-lint:
build: linting/sass
@@ -20,4 +20,3 @@ services:
volumes:
- ./themes/patek/assets/css:/src:ro
- ./linting/sass/sass-lint.yml:/sass-lint.yml:ro
-29
View File
@@ -5,35 +5,6 @@
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"headers": [
{
"source": "@(js|css)/*.@(js|css)",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=2628000"
}
]
},
{
"source": "img/**",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=86400"
}
]
},
{
"regex": "^/(?:[^i]|i[^m]|im[^g])[^/]*/.*[.](?:jpg|jpeg|png|webp)$",
"headers": [
{
"key": "Cache-Control",
"value": "max-age=2628000"
}
]
}
]
}
}
+1 -1
View File
@@ -5,4 +5,4 @@ other = "<p>Tyto webové stránky byly vytvořeny s láskou členy Pátku. </p><
other = "Není-li uvedeno jinak, je obsah na této stránce k dispozici pod licencí <a href=\"https://creativecommons.org/licenses/by/4.0/\" rel=\"license\">CC-BY-4.0</a>."
[sponsors]
other = "Sponzoři a podporovatelé"
other = "Sponzoři a podporovatelé"
+1 -1
View File
@@ -5,4 +5,4 @@ other = "<p>This website was made with love by the members of Pátek. </p><p><a
other = "Unless otherwise noted, the content on this website is available under <a href=\"https://creativecommons.org/licenses/by/4.0/\" rel=\"license\">CC-BY-4.0</a> license."
[sponsors]
other = "Sponsors and supporters"
other = "Sponsors and supporters"
-3
View File
@@ -11,9 +11,6 @@
<div class="column is-narrow">
<p class="title"><a href="mailto:patek@gbl.cz" target="_blank"><i class="fas fa-at"></i></a></p>
</div>
<div class="column is-narrow">
<p class="title"><a href="https://www.youtube.com/channel/UCGoBlkJleXZ2dPcYQ5G1mHQ" target="_blank"><i class="fab fa-youtube"></i></a></p>
</div>
</div>
<br>
<p>Copyright &copy; {{ now.Year }} Pátek</p>
-1
View File
@@ -12,4 +12,3 @@ RUN rm -fr /root/.npm /node_modules
WORKDIR /src
ENTRYPOINT ["/usr/local/bin/sass-lint"]
+35 -54
View File
@@ -1,7 +1,6 @@
// Bulma customization
$primary: #0b2a37;
$link-light: #2EA1FF;
// /Bulma customization
@@ -24,6 +23,37 @@ a {
}
}
/*#home-navbar {
&:not(.is-fixed-top) {
patek-logo {
font-size: 0;
}
}
&.is-fixed-top {
patek-logo {
font-size: unset;
}
}
patek-logo {
transition: font-size 0.2s;
}
}
.is-fixed-top .navbar {
left: 0;
position: fixed;
right: 0;
z-index: 30;
top: 0;
}
.is-fixed-top .menu-placeholder {
height: 52px;
visibility: hidden;
}
.home-content, .home-content h1, .home-content h2, .home-content h3 {
background-color: $primary;
color: $primary-invert !important;
font-family: 'Fira Code';
}*/
#landing {
background-color: $primary;
color: $primary-invert;
@@ -117,7 +147,7 @@ a {
color: $primary-invert;
}
a {
color: $link-light;
color: #73A0E7;
&:hover {
color: white;
}
@@ -126,7 +156,7 @@ a {
a {
color: white;
&:hover {
color: $link-light;
color: #73A0E7;
}
}
}
@@ -186,9 +216,9 @@ h2 a {
background-color: $black-ter;
color: white;
a {
color: $link-light;
color: $link;
&:hover {
color: white !important;
color: lighten($link, 30) !important;
}
}
}
@@ -198,22 +228,9 @@ h2 a {
.container > .pageHeader > h2.pageTitle.title > a {
color: white;
}
strong, b {
color: white;
}
button svg path {
fill: white;
}
.pagination-link {
color: white;
&.is-current {
color: black;
background-color: $link-light;
}
}
.has-text-grey {
color: $grey-light !important;
}
}
#content {
@@ -302,46 +319,10 @@ h2 a {
max-height: 30rem;
}
}
.has-margin-bottom-1em {
margin-bottom: 1em;
}
patek-logo {
// Fallback in case CustomElements or JS aren't available.
font-family: 'Fira Code', monospace;
font-weight: bold;
}
.has-text-grey {
// To make the color constrast enought with white to pass the WCAG AA requirements
color: #737373 !important;
}
.rel-alternate-buttons {
display: flex;
flex-direction: row-reverse;
align-items: center;
a {
margin-left: .3rem;
}
i {
font-size: 1.3rem;
}
}
// /Custom styles
.patek-logo-top {
position: relative;
}
.patek-logo-top .online-notice {
white-space: nowrap;
position: absolute;
display: inline-block;
font-size: 2rem;
padding: 0px 5px;
border-radius: 3px;
background-color: red;
font-family: 'Fira Code', monospace;
transform: rotate(-27deg) translate(-190px, -50px);
}
+10 -24
View File
@@ -1,27 +1,13 @@
function restoreDarkmode() {
const elem = document.getElementById("content");
if (elem && document.cookie.includes("dark-mode=true")) {
elem.classList.add("dark-mode");
}
}
function toggleDarkmode() {
const elem = document.getElementById("content");
if (elem) {
const state = elem.classList.toggle("dark-mode");
if (state) {
// 31536000 = 1 year; not setting max-age would make it session bound
document.cookie = "dark-mode=true; path=/; max-age=31536000; secure; samesite=strict";
} else {
// Delete the cookie by immediately expiring it
document.cookie = "dark-mode=; path=/; max-age=0; secure; samesite=strict";
document.addEventListener("DOMContentLoaded", () => {
if (window.location.search.indexOf("darkmode=false") > -1) {
document.cookie = "darkmode=false; path=/";
if (document.getElementById("content") !== null) {
document.getElementById("content").classList.remove("dark-mode");
}
} else if (window.location.search.indexOf("darkmode=true") > -1 || document.cookie.indexOf("darkmode=true") > -1) {
document.cookie = "darkmode=true; path=/";
if (document.getElementById("content") !== null) {
document.getElementById("content").classList.add("dark-mode");
}
}
}
document.addEventListener("DOMContentLoaded", restoreDarkmode);
document.addEventListener("DOMContentLoaded", () => {
for (const toggler of document.getElementsByClassName("dark-mode-toggler")) {
toggler.addEventListener("click", toggleDarkmode);
}
});
+1 -1
View File
@@ -1,4 +1,4 @@
{
"cs": "cs_CZ",
"en": "en_GB"
}
}
+1 -11
View File
@@ -32,21 +32,11 @@ other = "Datum přednášky"
[talks-paginator-heading]
other = "Nadcházející a proběhlé Talky"
[talks-slides]
one = "Prezentace"
few = "Prezentace"
other = "Prezentace"
[talks-recording]
one = "Záznam"
few = "Záznamy"
other = "Záznamy"
[tags]
other = "Tagy"
[posts_with_tag]
other = "Příspěvky s tagem"
other = "Přízpěvky s tagem"
[logo-alt]
other = "Logo Pátku"
+1 -8
View File
@@ -27,13 +27,6 @@ other = "Speaker"
[talks-paginator-heading]
other = "Upcoming and past Talks"
[talks-slides]
other = "Slides"
[talks-recording]
one = "Recording"
other = "Recordings"
[tags]
other = "Tags"
@@ -41,4 +34,4 @@ other = "Tags"
other = "Posts with tag"
[logo-alt]
other = "Logo of Pátek"
other = "Logo of Pátek"
+1 -1
View File
@@ -7,4 +7,4 @@
<br>
<patek-logo class="logo404" title="404">404</patek-logo>
</div>
{{ end }}
{{ end }}
+1 -1
View File
@@ -1,5 +1,5 @@
<!DOCTYPE html>
<html lang="{{ .Language.Lang }}">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
+1 -1
View File
@@ -1,4 +1,4 @@
{{ define "main" }}
{{ partial "pageHeader.html" . }}
{{ partial "list.html" .}}
{{ end }}
{{ end }}
+1 -1
View File
@@ -3,4 +3,4 @@
<div class="content">
{{ .Content }}
</div>
{{ end }}
{{ end }}
+1 -1
View File
@@ -1,4 +1,4 @@
{{ define "main" }}
{{ partial "pageHeader.html" . }}
{{ partial "blogList.html" . }}
{{ end }}
{{ end }}
+1 -1
View File
@@ -6,4 +6,4 @@
{{ if ne .Params.projects nil }}
<h3 class="title">{{ T "part_of_project" (len .Params.projects) }}: {{ range .Params.projects }}{{ with $.Site.GetPage (printf "projects/%s" .) }}<a class="separateWithCommas" href="{{ .Permalink }}">{{ .Title }}</a>{{ end }}{{ end }}</h3>
{{ end }}
{{ end }}
{{ end }}
+59 -6
View File
@@ -1,15 +1,34 @@
{{ define "title" }} Pátek {{ end }}
{{ define "body" }}
<!--
<div class="hero is-primary">
<div class="hero-body">
<div class="container">
<a href="{{ .Site.Home.Permalink }}">
<patek-logo class="big-logo"></patek-logo>
</a>
</div>
</div>
</div>
<div id="home-navbar">
{{ partial "menu.html" . }}
</div>
<div id="content" class="home-content">
<div class="section">
<div class="container">
<div class="content">
{{ .Content }}
</div>
</div>
</div>
</div>
{{ partial "footer.html" . }}
{{ partial "js.html" "js/home.js"}}
-->
<div id="landing">
<div class="patek-logo-top">
<patek-logo>Pátek</patek-logo>
{{ if .Site.Params.onlineOnly.active }}
<div class="online-notice">
<a href="{{ .Site.Params.onlineOnly.link }}">{{ .Site.Params.onlineOnly.displayText }}</a>
</div>
{{ end }}
</div>
<div class="intro container">
<section class="section">
@@ -32,6 +51,40 @@
</a>
</div>
{{ end }}
<!--
<div class="column is-6">
<div class="big-button">
<div class="front">
<h1><patek-logo title="Talks" subtitle="Pátek"></patek-logo></h1>
</div>
<div class="back">
{{ (.Site.GetPage "about").Summary | truncate 250 }}
</div>
</div>
</div>
<div class="column is-6">
<div class="big-button">
<div class="front">
<h1>O nás</h1>
</div>
<div class="back">
{{ (.Site.GetPage "about").Summary | truncate 250 }}
</div>
</div>
</div>
<div class="column is-6">
<div class="big-button">
<div class="front">
<h1>O nás</h1>
</div>
<div class="back">
{{ (.Site.GetPage "about").Summary | truncate 250 }}
</div>
</div>
</div>
-->
</section>
</div>
+2 -10
View File
@@ -1,14 +1,6 @@
{{ $baseUrl := .Site.BaseURL }}
{{ $paginator := .Paginate (.Pages.ByPublishDate.Reverse) }}
<div class="level is-mobile">
<div class="level-left">
{{ partial "paginator-buttons.html" $paginator }}
</div>
<div class="level-right">
<div class="rel-alternate-buttons">
<a class="button is-link" rel="alternate" href="{{ (.OutputFormats.Get "RSS").Permalink }}"><span class="icon is-medium"><i class="fas fa-2x fa-rss"></i></span></a>
</div>
</div>
</div>
{{ partial "paginator-buttons.html" $paginator }}
{{ range $paginator.Pages }}
<div class="box">
<div class="pageHeaderContainer">
@@ -1,9 +1,10 @@
<div class="pageHeader">
<h2 class="title pageTitle"><a href="{{ .Permalink }}">{{ .Title }}</a></h2>
<p class="has-text-grey">{{- T "published" -}}:&nbsp;<time datetime="{{ .PublishDate.Format "2006-01-02T15:04:05.000-0700" }}">{{ .PublishDate.Format "02.01.2006 15:04" }}</time></p>
<p class="has-text-grey">{{- T "published" -}}:&nbsp;<time>{{ .PublishDate.Format "02.01.2006 15:04" }}</time></p>
<p class="has-text-grey">
{{- T "author" -}}: {{ range .Params.authors }}{{ with $.Site.GetPage (printf "authors/%s" .) }}<a class="separateWithCommas" href="{{ .Permalink }}">{{ .Title }}</a>{{ end }}{{ end }}
</p>
{{ $baseUrl := .Site.BaseURL }}
{{ if .Params.tags }}
<p class="has-text-grey">
{{- T "tags" -}}: {{ range .Params.tags }}{{ with $.Site.GetPage (printf "tags/%s" .) }}<a class="separateWithCommas" href="{{ .Permalink }}">{{ .Title }}</a>{{ end }}{{ end }}
+1 -1
View File
@@ -2,4 +2,4 @@
<div class="content">
{{ partial "footerContent.html" . }}
</div>
</footer>
</footer>
+1 -1
View File
@@ -1,3 +1,3 @@
<div class="is-fixed-top">
{{ partial "menu.html" . }}
</div>
</div>
@@ -1,18 +0,0 @@
{{- /* Note this file has CRLF line endings as required by the specs */ -}}
{{- /* replace does not support piping */ -}}
{{- $escaped := replace (replace (replace (replace . "\\" "\\\\") "\n" "\\n") "," "\\,") ";" "\\;" -}}
{{- $escapedLen := strings.RuneCount $escaped -}}
{{- $lineLen := 60 -}}
{{- $parts := (div $escapedLen $lineLen) -}}
{{- if (not (modBool $escapedLen $lineLen)) -}}
{{- $parts = (add $parts 1) -}}
{{- end -}}
{{- /* print the string by parts of at most 75 chars as required by the specs */ -}}
{{- range (seq (sub $parts 0)) -}}
{{- if (eq . 1) -}}
{{- substr $escaped (mul (sub . 1) $lineLen) $lineLen -}}
{{- else }}{{- /* the leading whitespace is important here */}}
{{ substr $escaped (mul (sub . 1) $lineLen) $lineLen -}}
{{- end -}}
{{- end -}}
@@ -1,23 +0,0 @@
{{- range $i, $_ := .content -}}
{{- $type := (default "link" .type) -}}
{{- $desc := .desc -}}
{{- if (eq (len $.content) 1) -}}
{{- $desc = (default $.text $desc) -}}
{{- else -}}
{{- if (and (not (isset . "desc")) (not (eq $type "text"))) -}}{{- errorf "Missing description for content %s" .data -}}{{- end -}}
{{- end -}}
{{- if (and (or (gt (len $.content) 1) (eq $type "text")) (eq $i 0)) -}}{{- $.text -}}:&nbsp{{- end -}}
{{- if (gt $i 0) -}}, {{ end -}}
{{- if (eq $type "link") -}}
<a href="{{ .data }}" target="_blank" rel="noopener">{{ $desc }}</a>
{{- else if (eq $type "text") -}}
{{- .data -}}
{{- else if (eq $type "resource") -}}
{{- $resource := $.resources.GetMatch .data -}}
<a href="{{ $resource.RelPermalink }}">{{ $desc }}</a>
{{- else -}}
{{- errorf "Unknown content type %s" $type -}}
{{- end -}}
{{- end -}}
+2 -10
View File
@@ -1,14 +1,6 @@
{{ $baseUrl := .Site.BaseURL }}
{{ $paginator := .Paginate (.Pages.ByPublishDate.Reverse) }}
<div class="level">
<div class="level-left">
{{ partial "paginator-buttons.html" $paginator }}
</div>
<div class="level-right">
<div class="rel-alternate-buttons">
<a class="button is-link" rel="alternate" href="{{ (.OutputFormats.Get "RSS").Permalink }}"><span class="icon is-medium"><i class="fas fa-2x fa-rss"></i></span></a>
</div>
</div>
</div>
{{ partial "paginator-buttons.html" $paginator }}
{{ range $paginator.Pages }}
<div class="box">
<div class="pageHeaderContainer">
-4
View File
@@ -37,10 +37,6 @@
{{ end }}
</div>
<div class="navbar-end">
<a rel="alternate" href="{{ (.Site.Home.OutputFormats.Get "RSS").Permalink }}" class="navbar-item"><span class="icon"><i class="fas fa-lg fa-rss"></i></span></a>
<a href="#" class="navbar-item dark-mode-toggler" role="button" aria-label="Toggle dark mode">
<i class="fas fa-moon" aria-hidden="true" title="Toggle dark mode"></i>
</a>
<div class="navbar-item has-dropdown is-hoverable">
<span class="navbar-link">{{ .Site.Language.LanguageName }}</span>
<div class="navbar-dropdown">
@@ -1,3 +1,3 @@
<div class="pageHeader">
<h2 class="title pageTitle"><a href="{{ .Permalink }}">{{ .Title }}</a></h2>
</div>
</div>
@@ -1,26 +1,28 @@
{{ $paginator := . }}
{{ if gt $paginator.TotalPages 1 }}
<nav class="pagination" role="navigation" aria-label="pagination">
<ul class="pagination-list">
<li>
<a class="pagination-link" href="{{ $paginator.First.URL }}">«</a>
</li>
{{ if $paginator.HasPrev }}
<div class="has-margin-bottom-1em">
<nav class="pagination" role="navigation" aria-label="pagination">
<ul class="pagination-list">
<li>
<a class="pagination-link" href="{{ $paginator.Prev.URL }}">{{ $paginator.Prev.PageNumber }}</a>
<a class="pagination-link" href="{{ $paginator.First.URL }}">«</a>
</li>
{{ end }}
<li>
<a class="pagination-link is-current">{{ $paginator.PageNumber }}</a>
</li>
{{ if $paginator.HasNext }}
{{ if $paginator.HasPrev }}
<li>
<a class="pagination-link" href="{{ $paginator.Prev.URL }}">{{ $paginator.Prev.PageNumber }}</a>
</li>
{{ end }}
<li>
<a class="pagination-link" href="{{ $paginator.Next.URL}}">{{ $paginator.Next.PageNumber }}</a>
<a class="pagination-link is-current">{{ $paginator.PageNumber }}</a>
</li>
{{ end }}
<li>
<a class="pagination-link" href="{{ $paginator.Last.URL }}">»</a>
</li>
</ul>
</nav>
{{ if $paginator.HasNext }}
<li>
<a class="pagination-link" href="{{ $paginator.Next.URL}}">{{ $paginator.Next.PageNumber }}</a>
</li>
{{ end }}
<li>
<a class="pagination-link" href="{{ $paginator.Last.URL }}">»</a>
</li>
</ul>
</nav>
</div>
{{ end }}
@@ -6,4 +6,4 @@
<p class="has-text-grey">
{{- T "member" (len .Params.authors) -}}: {{ range .Params.authors }}{{ with $.Site.GetPage (printf "authors/%s" .) }}<a class="separateWithCommas" href="{{ .Permalink }}">{{ .Title }}</a>{{ end }}{{ end }}
</p>
</div>
</div>
@@ -1,14 +0,0 @@
{{- /* Note this file has CRLF line endings as required by the specs */ -}}
BEGIN:VEVENT
UID:{{ partial "icalEscape.ics" .Permalink }}
CREATED:{{ dateFormat "20060102T150405Z" .Date.UTC }}
DTSTAMP:{{ dateFormat "20060102T150405Z" (now).UTC }}
SUMMARY:{{ .Title | plainify | partial "icalEscape.ics" }}
DESCRIPTION:{{ printf "%s %s" (.Content | plainify | truncate 200) .Permalink | partial "icalEscape.ics" }}
DTSTART:{{ dateFormat "20060102T150405Z" (time .Params.When).UTC }}
DTEND:{{ $length := 30 -}}
{{- with .Params.Length -}}
{{ $length = (int .) }}
{{- end -}}
{{- dateFormat "20060102T150405Z" (time (add (time .Params.When).Unix (mul $length 60))).UTC }}
END:VEVENT
@@ -1,10 +1,8 @@
<div class="pageHeader">
<h2 class="title pageTitle"><a href="{{ .Permalink }}">{{ .Title }}</a></h2>
<p class="has-text-grey">{{- T "published" -}}:&nbsp;<time datetime="{{ .PublishDate.Format "2006-01-02T15:04:05.000-0700" }}">{{ .PublishDate.Format "02.01.2006 15:04" }}</time></p>
<p class="">{{- T "talks-when" -}}:&nbsp;<time datetime="{{ dateFormat "2006-01-02T15:04:05.000-0700" .Params.when }}">{{ dateFormat "02.01.2006 15:04" .Params.when }}</time> <a rel="alternate" href="{{ (.OutputFormats.Get "Calendar").Permalink | safeURL }}"><span class="icon"><i class="fas fa-calendar-alt"></i></span></a></p>
<p class="has-text-grey-light">{{- T "published" -}}:&nbsp;<time>{{ .PublishDate.Format "02.01.2006 15:04" }}</time></p>
<p class="">{{- T "talks-when" -}}:&nbsp;<time>{{ dateFormat "02.01.2006 15:04" .Params.when }}</time></p>
<p class="">
{{- T "presenter" -}}: {{ range .Params.authors }}{{ with $.Site.GetPage (printf "authors/%s" .) }}<a class="separateWithCommas" href="{{ .Permalink }}">{{ .Title }}</a>{{ end }}{{ end }}
</p>
{{- with .Params.slides -}}<p>{{ partial "linkedContent" (dict "text" (T "talks-slides" (len .)) "content" . "resources" $.Page.Resources) }}</p>{{- end -}}
{{- with .Params.recordings -}}<p>{{ partial "linkedContent" (dict "text" (T "talks-recording" (len .)) "content" . "resources" $.Page.Resources) }}</p>{{- end -}}
</div>
+2 -16
View File
@@ -11,7 +11,6 @@ where possible named params are:
* src - path to the image in page bundle
* alt - textual description of the image, the <img> alt attribute
* caption (optional) - the caption displayed under the image, defaults to `alt`. Set to false to disable caption rendering
* format (optional) - the format of the images, defaults to `jpg`, available formats here: https://gohugo.io/content-management/image-processing/#target-format
*/ -}}
{{- $imageName := false -}}
@@ -32,29 +31,16 @@ where possible named params are:
{{- $sizes := slice (slice 640 360 50) (slice 1280 720 50) (slice 1920 1080 50) -}}
{{- $srcset := slice -}}
{{- $largest := false -}}
{{- $format := (.Get "format") -}}
{{- range $sizes -}}
{{- if (or (gt $img.Width (index . 0)) (gt $img.Height (index . 1))) -}}
{{- $resized := false }}
{{- if or (eq $format false) (eq $format "jpg") }}
{{- $resized = $img.Fit (printf "%dx%d q%d" (index . 0) (index . 1) (index . 2)) -}}
{{- else -}}
{{- $resized = $img.Fit (printf "%dx%d %s" (index . 0) (index . 1) $format) -}}
{{- end -}}
{{- $resized := $img.Fit (printf "%dx%d q%d" (index . 0) (index . 1) (index . 2)) -}}
{{- $srcset = $srcset | append (printf "%s %dw" $resized.RelPermalink (index . 0)) -}}
{{- $largest = $resized -}}
{{- end -}}
{{- end -}}
{{- if (lt (len $srcset) (len $sizes)) -}}
{{- $compressed := false }}
{{- if or (eq $format false) (eq $format "jpg") }}
{{- $compressed = $img.Fit (printf "%dx%d q90" $img.Width $img.Height) -}}
{{- else -}}
{{- $compressed = $img.Fit (printf "%dx%d %s" $img.Width $img.Height $format) -}}
{{- end -}}
{{- $compressed := $img.Fit (printf "%dx%d q90" $img.Width $img.Height) -}}
{{- $srcset = $srcset | append (printf "%s %dw" $compressed.RelPermalink $compressed.Width) -}}
{{- $largest = $compressed -}}
{{- end -}}
@@ -1 +0,0 @@
<a href="{{ .Get "href" }}" class="button is-primary">{{ .Get "text" }}</a>
+2 -11
View File
@@ -4,18 +4,9 @@
{{ .Content }}
</div>
<h3 class="title">{{ T "talks-paginator-heading" }}:</h3>
{{ $baseUrl := .Site.BaseURL }}
{{ $paginator := .Paginate ((.Pages.ByParam "when").Reverse) }}
<div class="level is-mobile">
<div class="level-left">
{{ partial "paginator-buttons.html" $paginator }}
</div>
<div class="level-right">
<div class="rel-alternate-buttons">
<a class="button is-link" rel="alternate" href="{{ (.OutputFormats.Get "Calendar").Permalink | safeURL }}"><span class="icon is-medium"><i class="fas fa-2x fa-calendar-alt"></i></span></a>
<a class="button is-link" rel="alternate" href="{{ (.OutputFormats.Get "RSS").Permalink }}"><span class="icon is-medium"><i class="fas fa-2x fa-rss"></i></span></a>
</div>
</div>
</div>
{{ partial "paginator-buttons.html" $paginator }}
{{ range $paginator.Pages }}
<div class="box">
<div class="pageHeaderContainer">
-9
View File
@@ -1,9 +0,0 @@
{{- /* Note this file has CRLF line endings as required by the specs */ -}}
BEGIN:VCALENDAR
VERSION:2.0
PRODID:gohugo
CALSCALE:GREGORIAN
{{ range .RegularPages -}}
{{ partial "talkIcal.ics" . -}}
{{- end -}}
END:VCALENDAR
+1 -1
View File
@@ -3,4 +3,4 @@
{{ partial "talksPageHeader.html" . }}
</div>
<div class="content"> {{ .Content }} </div>
{{ end }}
{{ end }}
-7
View File
@@ -1,7 +0,0 @@
{{- /* Note this file has CRLF line endings as required by the specs */ -}}
BEGIN:VCALENDAR
VERSION:2.0
PRODID:gohugo
CALSCALE:GREGORIAN
{{ partial "talkIcal.ics" . -}}
END:VCALENDAR
+1 -1
View File
@@ -25,4 +25,4 @@
</div>
</div>
{{ partial "list.html" . }}
{{ end }}
{{ end }}
+1 -1
View File
@@ -6,4 +6,4 @@
</div>
{{ end}}
{{ partial "list.html" . }}
{{ end }}
{{ end }}
+1 -1
View File
@@ -4,4 +4,4 @@
</div>
{{ partial "blogList.html" . }}
{{ end }}
{{ define "title" }}{{ T "posts_with_tag" }} "{{ .Title }}" | {{ .Site.Title }}{{ end }}
{{ define "title" }}{{ T "posts_with_tag" }} "{{ .Title }}" | {{ .Site.Title }}{{ end }}