Jak učit téma Informační systémy v nové informatice - třeba pomocí hvězdiček
Tý jo, to zní složitě. Ale není, stačí jen počítat a psát hvězdičky.
Praha, 1. 6. 2023 Národní knihovna a Wikimedia ČR podepisují memorandum o spolupráci na tvorbě Wikipedie, zpřístupňování databází NK přes Wikidata aj. K podpisu dojde 9. června 2023 v pražském Klementinu, spolu s prvním oficiálním setkání zástupců Wikimedia Europe – mezinárodního sdružení 26 poboček Wikimedia. Akce se zúčastní náměstek pro digitalizaci Ondřej Profant, poslanec Evropského parlamentu Marcel Kolaja a další hosté.
Memorandem strany deklarují zájem spolupracovat na tvorbě internetové encyklopedie Wikipedie a rozvoji dalších projektů Wikimedia ČR. Úsilí Národní knihovny otevírat svá data je dlouhodobé a jeho největším dosavadním úspěchem je zpřístupnění 3 rozsáhlých databází na jaře 2022.
Výkonná ředitelka WM ČR Klára Joklová a generální ředitel NK ČR Tomáš Foltýn podepíší memorandum o partnerství a spolupráci mezi organizacemi 9. června 2023 v Národní knihovně. Program začíná v 18:00, samotný podpis je plánovaný na 18:50. Následovat bude recepce a neformální setkání zástupců evropských poboček Wikimedia, hostů a médií.
„Spolupráci s Národní knihovnou jsme zahájili již v roce 2006 vzešlo z ní mnoho dobrého. Zpřístupňování digitalizovaných dat a archivů je pravděpodobně nejefektivnější způsob, jak jako kulturní instituce v dnešní době otevřít své vědění lidem, a v tom vidím velký smysl. Věřím, že další knihovny, muzea, galerie a archivy budou příklad Národní knihovny následovat,“ říká výkonná ředitelka WMČR Klára Joklová.
Národní knihovna bude projekty Wikimedia obohacovat především poskytováním vybraných zdrojů, databází či multimédií (např. fotografií) pod licencí CC BY-SA 4.0, ale také například podporou vzdělávání knihovníků a knihovnic v psaní článků na Wikipedii.
Databáze NK budou nahrávané na svobodné úložiště dat Wikidata, což podpoří generování nových témat slovníkových hesel. Knihovníci a zaměstnanci knihovny mohou dále participovat na jejich odborném zpracování. Spolek Wikimedia ČR bude poskytovat metodickou a projektovou podporu, proškolení a know-how formou přednášek, seminářů, workshopů.
„Národní knihovna ČR si cení především spolupráce na usnadnění přístupu široké veřejnosti k informacím, které jsou důležité pro vzdělání, výzkum a osobní rozvoj. Společně hledáme nové způsoby využití moderních technologií a nástrojů, podporujeme uchovávání, ochranu a propagaci kulturního a historického dědictví,“ dodává Lenka Maixnerová, náměstkyně sekce Knihovní fondy a služby NK ČR.
Obě strany vnímají projekty Wikimedia jako otevřené veřejné zdroje, které vedou ke všeobecnému rozvoji vzdělanosti a podpoře sdílení svobodných informací pro širokou veřejnost, a to celosvětově a obsah memoranda přispívá k naplňování poslání NK i WM ČR.
Kontakt pro média:
Natálie Schejbalová
PR specialistka a fundraiserka
natalie.schejbalova@wikimedia.cz
Náhledové FOTO: BrunoDelzant, CC BY 2.0, via Wikimedia Commons
The post Národní knihovna rozvíjí Wikipedii: 9. 6. 2023 podepíše memorandum s Wikimedia ČR first appeared on Wikimedia ČR - blog.Dnes vyšel můj nový příspěvek na stránkách SANS Internet Storm Center. Podíváme se v něm na ustupující podporu SSLv2 na webových serverech připojených k internetu…
Na kroužku programování se snažím používat i hardwarové „hračky“. Není to nezbytné, ale dle mého to dokáže hodiny zpestřit. Zároveň však platí, že se vám pak může víc věcí pokazit. Osobně se z toho nehroutím, beru to tak, že selhání lze i didakticky využít. Z dnešního nepřeberného množství pomůcek (kromě ceny) preferuji takové, ke kterým existuje dostatek metodických materiálů a nebo aktivní komunita. To microbit bohatě splňuje. Vybírat můžete z mnoha úloh. Na poslední hodinu jsem si z jejich stránek zvolil Proximity Beacon (česky asi nejlépe rádiové měření vzdálenosti) a celé prezentoval jako lavinový vyhledávač.
Normálně jsem spíš studený čumák a improvizace není moje parketa, ale děti jsou vděční diváci a člověk před nimi nemá takové zábrany. S příběhem jde všechno líp. Lavinový vyhledávač jsem sice nikdy v ruce neměl, ale tuším jak funguje, takže jsem princip dokázal popsat a úlohu Proximity Beacon na zápletku napasovat. Řešení jsme stihli a chvíli hráli ve třídě na shovku. Nicméně k lavinovému vyhledávači tomu ještě notný kousek chybí. Vysílač a přijímač jsou totiž samostatné programy.
Aby přístroj fungoval jako lavinový vyhledávač, tak musí ve výchozím nastavení pracovat jako vysílač a při pátrací akci si ho ti nezavalení dokážou přepnout na přijímač. Takhle jsem to dětem zadal, ale vyřešit jsme nestihli, takže jsem si dodělal za domácí úkol.
Takto vypadá řešení naprogramované v blokovém schématu.
Lze testovat i na simulátoru
Všimněte si, že oproti řešení Proximity Beacon mapujeme signál na 25 hodnot místo 9 a získáváme tak větší přesnost měření.
Pozorujte, co se stane, budete-li hledat více než jednoho zavaleného. Můžu vám prozradit, že to funguje. Funkci označení „MARK“ (zaslepení nalezeného signálu) si nechám někdy na příště nebo na laskavé čtenáře.
Na operačním systému Windows pozoruji problém s nahráváním souborů na microbit jako na disk (USB Mass Storage).
Pravděpodobně kvůli antiviru.
Pomáhá spárovat zařízení a připojit přes WebUSB.
Pokud nahrání selže, na microbitu se vytvoří soubor FAILED
, ale na samotném zařízení to není vidět na první pohled.
I proto je v lavinovém vyhledávači implementovaná blikající LEDka, indikující jednak funkčnost programu, jednak mód, ve kterém zrovna pracuje.
Ukázali jsme si, jak úlohu Proximity Beacon navléknout na povídání o lavinovém vyhledávači a jak řešení vylepšit, abyste dokázali jediný program přepínat mezi módem vysílač a módem přijímač. Řešení lze dále rozvíjet například o funkci zaslepení nalezeného signálu. Zatím jsme se vůbec nezabývali směrovou šipkou a omezili se pouze na měření vzdálenosti.
I really like Spring Boot because it’s super-powerful, but like with any other power tool, you have to be careful not to lose a finger or even a whole arm.
One such tool is Spring’s @MockBean, which allows you to easily replace a service (bean) in Spring’s application context. This is really useful because having to think about all the places where a service is used and how to fully replace it in the context in order to mock it is a huge pain, and sometimes it can even be impossible.
But is it worth the price?
Spring has many mechanisms that allow you to configure the context in tests. You can, for example, attach an extra configuration class or property file for a single test case which, again, is really powerful and simple to use, but all of these config overrides can affect the resulting context. Each time a test is executed, Spring has to check its configuration, and then it has to make sure it can provide you with a correctly configured context. Thankfully, Spring is smart, so instead of creating a new context for every single test, it can take all the config inputs and create a caching key to reuse the contexts between tests.
The problem with @MockBean
is that you’re affecting the config inputs determining which tests can reuse the context.
public class UserTest1 { // simplified
@MockBean
UserRepository mockUserRepository;
public class UserTest2 { // simplified
@MockBean
UserRepository mockUserRepository;
@MockBean
UserService mockUserService;
public class UserTest3 { // simplified
@MockBean
UserService mockUserService;
Each of these samples has a unique set of mocked beans, so Spring cannot reuse the context and must create a brand new one for each test.
If you search for MockBean
in Spring Boot’s GitHub repository it turns out this surprised many people.
The first problem which will slowly creep up on you is time. Initializing the application context and all the necessary services for a test takes time. And for a big application, it can take a lot of time. You might not notice if your test suite runs minutes or longer anyway (neither did we at first), but slow tests mean nobody wants to maintain them.
One of the more obscure problems that hit us out of nowhere is that the default maximum number of cached contexts is 32, which means there can be up to 32 unclosed contexts. And if your application uses a database (like most do), let’s say a PostgreSQL, then you might find that PostgreSQL doesn’t like having too many connections open simultaneously. It’s rarely a problem in production where the database has a lot of RAM, meaning it can hold many connections. Still, tests are usually configured with a tiny PostgreSQL instance running in a small docker container, so if you create too many connections, your tests might start failing because they cannot create more connections. This limit is very easy to hit when you open 32 contexts where each one holds a connection pool with 10+ connections.
My favourite solution can be found in one of Baeldung’s articles - just avoid mocks. Mocks are objectively overused, and in many cases, you can write the test without them.
Another alternative is to attempt to replace the service in contexts’ beans surgically and then put it back. That sounds good at first, but you can end up with a partially reverted state if you make a mistake, and completely unrelated tests might start failing. Some people attempted to make the “revert” more reliable by creating a library for it. It works, but I think it’s a very fragile technique and would personally avoid it.
The last popular solution known to me is to declare a shared mock/spy service for the entire lifetime of tests, e.g. like this:
@Configration
public class MockConfig {
@Primary
@Bean
public ExternalService externalService() {
return Mockito.mock(ExternalService.class);
}
}
This has the advantage that if you replace a service that might do some external HTTP calls, you cannot call it in your tests by accident.
The disadvantage is that if you need to mock a service that is otherwise a critical part of your application, the application stops working. You also have to make sure that you reset the mock between tests. Otherwise, your tests might affect each other, which can be very hard to debug. That’s a lot of things you need to get right which might bite you.
I’ve prepared a working project where you can see the following demonstrated.
My solution is based on replacing the service with a mock for the entire runtime of tests, but with a slight improvement:
@Primary
@Bean
public ExternalService externalServiceMock(final ExternalService real) {
return Mockito.mock(ExternalService.class, AdditionalAnswers.delegatesTo(real));
}
This forces Spring to create a real instance of my original service and autowire it here for me to create a delegating mock. This service is then marked as primary, so autowiring uses the mock instead of the real instance. This enables me to mock even critical services that the application requires to work correctly without having to configure the mocking behaviour in every test.
Sadly, if you try to run this snippet, you might hit a wall because marking a bean as a primary and wanting Spring to autowire the non-primary (real) one doesn’t work that well.
The easiest fix is to use @Qualifier
to tell Spring the bean name of the real ExternalService
so it autowires it correctly instead of failing on circular dependency.
But that’s not very fun, so alternatively you can use the custom BeanProcessor, which uses a custom qualifier to modify how the autowiring works for these mocked services.
Now if I write @MockWrappedBean
instead of @Primary
, the problem is gone.
@MockWrappedBean
@Bean
public ExternalService externalServiceMock(final ExternalService real) {
return Mockito.mock(ExternalService.class, AdditionalAnswers.delegatesTo(real));
}
But what about the tests’ pollution? If I forget to reset the mocks, other tests might start failing. The demo project contains a solution even for this - the custom TestExecutionListener asks Spring to list all beans that are mocked this way and then resets the beans before/after every test, and now there is no way for you to forget to reset the mocks. Resetting the mocks around every test (when you’re not configuring any mock behaviour) is a bit wasteful but still a few orders of magnitude faster than creating more contexts.
How do you use it in a test? Similarly to how you’d use @MockBean
- you autowire the service, configure the behaviour in your test and let the magic happen.
class FooServiceTest extends BaseTestCase {
@Autowired
ExternalService externalService;
@Autowired
FooService fooService;
@Test
public void computation() {
Mockito.doReturn(42)
.when(externalService)
.fetchCounterExternally();
int actual = fooService.computation(); // this calls ExternalService internally
assertThat(actual).isEqualTo(94);
Mockito.verify(externalService, Mockito.times(1))
.fetchCounterExternally();
}
}
You don’t have to think about resetting it; you don’t need to do anything special if you don’t need to mock it.
IMHO, the only advantage of @MockBean
over this approach is that you can clearly see which services are meant to be mocked in the test.
But in practice, it’s not a problem because you don’t have to care - just start writing the mocking configuration, and if it turns out that the service doesn’t have a @MockWrappedBean
defined, Mockito will yell at you that the given object is not a mock, so you just add it to the config and your test will pass.
This whole approach is battle-tested and works really well for us in ShipMonk. As of writing this article, we have 25+ services (and growing) mocked this way in a not-so-small project, and everything works flawlessly.
As a cherry on top, you could write a custom ErrorProne rule that will fail the build
if somebody uses the forbidden @MockBean
by accident (which we did, but more on that some other time).
One small disclaimer: the demo cannot handle parallel test suites properly, but the problem is not impossible to solve, we just didn’t have a need for it.
This article is mostly about avoiding @MockBean
, but you can just as easily introduce the same problem by using any other per-test config override.
I’m always trying to completely avoid anything that would cause multiple contexts to be created.
We’ve made it a rule to have a single BaseTestCase, that contains all the test-related configs and overrides, and none of the tests defines their own.
The only situation where I couldn’t avoid overriding configs in individual tests was when I was writing a library-like functionality with parametrized configuration classes, but that can be easily extracted into a separate Maven module, so it doesn’t have to affect your application.
The Spring developers are trying to tackle this problem systematically, but until they do, @MockBean
is an anti-pattern in my book.
How do you solve this problem? Do you have an idea to improve this further? Let me know; thanks!
Okay, so my ten-month experiment with the iPhone SE 2020 is finally over, and I switched back to the Sony Xperia series as I did a lot of years before. (This time it is Xperia 10 IV.)
By the way, it also means this is my fourth Xperia phone (or …
Petr Brož je český planetolog, který zkoumá sopky na jiných planetách. Je popularizátorem vědy a jako autor byl za svou knihu Vesmírníček nominovaný na Magnesii Literu. Do roku 2019 býval také plodným wikipedistou. Založil přes 1200 článků a za šíření dobrého jména Wikipedie mezi veřejností mu bylo nedávno uděleno čestné členství ve spolku Wikimedia ČR.
Je to dané tím, že já jsem dlouho na Wikipedii psal o planetách, o sluneční soustavě. Bylo nás víc, kteří jsme psali na toto téma. A jeden z kolegů mi napsal, jestli bych nechtěl jet do Německa na místní úřad pro letectví a kosmonautiku. On tam totiž zrovna byl, dělal tam doktorát, tak mi tam domluvil stáž. Já jsem tam v rámci bakalářského studia na měsíc odcestoval a kreslil mapu jedný oblasti na povrchu Marsu. Hledal jsem tam sopky, strašně mě to zaujalo, začalo mě to bavit. No a potom jsem u toho skončil a věnuju se tomu do dneška.
Myslím si, že ano. Byl to vlastně důvod, proč jsem pomáhal rozjet to, aby se studenti a studentky Karlovy univerzity na ochraně životního prostředí zapojovali do psaní české Wikipedie. Dodneška to běží a studenti a studentky stále píší o chráněných územích ČR. Je to super, protože když si vaši práci přečte vyučující a pak skončí v šuplíku, tak je to o ničem. Ale takhle víte, že si s tím musíte dát práci, protože to po vás budou číst třeba stovky, tisíce, možná třeba desetitisíce lidí. Bude to navždycky někde viset, a navíc s vaším jménem.
Já strašně rád čtu sci-fi a jednu dobu jsem četl sérii Prstence od Larryho Nivena. A tam je kočkovitá rasa, která dlouhodobě válčí s lidstvem. A Chmee je podle jedné postavy, která dřív byla diplomatem v lidském vesmíru. Znamená to mluvící se zvířaty. Mně to přišlo jako vtipná přezdívka, protože na internetu se všichni chovají jako divočáci.
Tohle vnímám, ale ona popularizace vědy má dvě roviny. Vy buď popularizujete pro lidi, který pro vědu hoří, tam je to snazší, protože píšete třeba do nějakého periodika, které se vědě věnuje. A tam to čtenářstvo očekává, že se něco o vědě dozví. A pak máte tu druhou část, která popularizuje vědu lidem, kteří o ni nutně hned nestojí. A tam je to pak větší výzva, ale to o to mi to přijde zábavnější, protože vy vlastně musíte vymyslet, jak na to. A to mě právě přivedlo k tomu, abych začal vědu popularizovat na sociálních sítích.
Ano, určitě. Když píšete Wikipedii, tak nemáte psát pro vysokoškolsky vzdělaného člověka, ale máte psát tak, aby to pochopil středoškolsky vzdělaný člověk. Píšete encyklopedii pro všechny, ne pro lidi, kteří mají doktorský titul. A to je dle mého cesta, jak byste měli dobře dělat i popularizaci vědy.
Nemyslím si, že peníze jsou všechno na světě. Jde také o to, co za sebou zanecháte společnosti, až umřete. Za to, že jste měli tři baráky, na vás nikdo vzpomínat nebude. Nebo možná vaše děti, které se o to budou hádat při dědickém řízení. Ale co si vezmete s sebou, že? Když víte, že jste pomohli lidské vzdělanosti, jakkoliv vznešeně to zní, můžete si říct, že po vás něco zbylo, že jste dělali něco, co mělo smysl. Ale jakmile máte dost peněz na kvalitní život, tak jestli jich máte na účtu třeba o 5 % míň nebo víc, to vaši vnitřní pohodu moc nezmění.
Protože to je past. Ta knížka není kniha, kterou dáte dítěti do ruky a řeknete mu „běž si číst“. Ta knížka je od začátku koncipovaná tak, že si ji dítě čte s rodičem. Takže vzděláváte vlastně obě skupiny zároveň.
Když chcete téma vědy dostat do širší společnosti, musíte lidi nějak zaujmout. Buď je musíte pobavit, nebo tam dostat napětí… Takže humor a příběh mi připadá jako dobrý způsob. Když to budete říkat nudným jazykem, tak to nikdy do toho mainstreamu neprotlačíte.
Řekl bych vám jeden geologickej, ale je to takovej kameňák…
Podle mě má smysl obsah vytvářet proto, aby tam opravdu celé lidstvo mělo všechny informace dostupné. Aby si to mohl přečíst člověk, který má na kontě třeba miliardu, ale i ten, kdo nemá vyjma chytrého telefonu nic jiného. Protože Wikipedie má svobodnou licenci, obsah se může donekonečna šířit. Je tam obrovský benefit a dar, že že vám to nikdo nezapomene. Máte možnost znalosti dostat úplně ke komukoliv po celém světě, a to zadarmo. A to je prostě pecka.
Za málo, mějte se krásně.
The post Petr Brož o Wikipedii: Peníze nejsou všechno. Jde také o to, co za sebou zanecháte společnosti, až umřete first appeared on Wikimedia ČR - blog.„Máme rádi modrou barvu a světlo, které evokuje vodu nebo oblohu. Je to klidná barva a udělá příjemnou atmosféru. Třeba červená barva je víc agresivní, vyvolává v lidech akci a rozproudí srdeční tep. Důležitá barva je i černá, tedy jako když se ocitnete v temnotě. Když zhasnete a podpoříte to audiem, lidé velmi dobře reagují.“
Sundat Měsíc z oblohy sem k nám dolů a připravit zahajovací ceremoniál Olympiády. Zatímco druhé je stále snem, to první už se dvojici multimediálních architektů ze studia VISUALOVE povedlo. Absolventi Fakulty stavební VUT Jan Machát a Michal Okleštěk začali pracovat se světlem a zvukem, protože je to bavilo. Dnes zná jejich instalace alespoň z fotek skoro každý – minimálně v podobě obřích nafukovacích planet. Co říkají na ohňostrojné přehlídky a proč už je za námi boom videomappingu? Považují svoje instalace za kýč? Kde vidí problematické svícení, když se prochází po Brně? A čím si svítí doma? Díl o osvěcování veřejných budov, světelné show v brněnských vodojemech i výstavě EXPO v Dubaji nabídne ještě mnohem víc.
Měl jsem teď na TechEdu problém s funkcí /remoteGuard. Ne že bych někomu doporučoval to používat pro správu, ale pro běžné uživatele na aplikační terminálový server je to velmi pohodlné. A nejelo mi to.
Důvodem bylo zřejmě to, že na klientovi byl zapnut Credentials Guard. Podle mě to musí fungovat i v této kombinaci, ale po vypnutí Credentials Guard na klientovi se mstsc /remoteGuard rozjel.
Akutalizace: tak bylo to starou verzí Windows 10 20H2. Nejnovější verze 22H2 funguje dobře, Credentials Guard + /remoteGuard bez problémů.
Internetová populace ČR starší deseti let dosáhla v dubnu 8,29 milionů osob, 7,2 milionu uživatelů se k internetu připojilo z mobilního zařízení (telefon nebo tablet), přičemž výhradně na mobilních zařízeních surfuje 1,16 mil. osob. Hodnota programatické display reklamy byla v dubnu 908 mil. Kč v ceníkových cenách a jeho podíl na celé displejové reklamě představuje 58 %. Data vyplývají z aktuálních výsledků projektu NetMonitor a AdMonitoring, které připravuje Sdružení pro internetový rozvoj (SPIR).
V projektu NetMonitor bylo v dubnu zapojeno 393 měřených serverů, na kterých uživatelé z ČR a zahraničí zhlédli 6 mld. stránek. Dubnové výsledky projektu AdMonitoring ukazují celkový meziroční mírný pokles displej reklamy. Objem direct reklamy byl v dubnu 667 mil. Kč (meziročně +1,5 %) a objem programatické displej reklamy byl 908 mil. Kč (meziročně -5,9 %), dohromady v displej reklamě to bylo 1,57 mld. Kč v ceníkových cenách, což bylo o 2,9 % méně než před rokem.
Kompletní výsledky kvartální prezentace naleznete pod článkem.
Ani to nestálo mnoho pátrání po internetových antikvariátech a Dědic impéria dorazil :-) Když držím v ruce tuhle knihu, vyvolává mi to velké množství nejpříjemnějších vzpomínek na dětství. Skoro jako bych zase stál v mladoboleslavské knihovně (nebo spíše seděl vzadu v zapadlé sekci se sci-fi literaturou), cítil vůni tamních knih, přehraboval …
Na portálu Root.cz byl dnes publikován můj nový příspěvek do seriálu Postřehy z bezpečnosti, v němž se podíváme na zneužívání domén z TLD ZIP, ransomwarové skupiny využívající uniklý zdrojový kód ransomwaru Babuk nebo novou zranitelnost ve správci hesel KeePass…
Začiatkom mája spustil Google nové domény prvej úrovne (TLD) .mov, .nexus, .dad, .phd, .prof, .esq, .foo a .zip. No a práve posledná spomínaná vzbudila zaujímavé debaty okolo bezpečnosti a možnosti potenciálnych phishingových útokov.
.zip teraz totiž reprezentuje ako doménu, tak aj populárny a všeobecne rozšírený súborový formát na kompresiu a archiváciu dát. Formát bol vytvorený Philom Katzom pre program PKZIP, ale v dnešnej dobe s ním pracuje mnoho ďalších programov.
Pozrime sa na adresu
https://google.com@database-backup.zip
a tipnite si, čo sa vám v prehliadači otvorí.
Skúsenejší používatelia asi tušia, že doména database-backup.zip a všetko pred znakom @ bude ignorované. Toto nie je žiadna novinka, ale pri rýchlom klikaní môžete zavináč prehliadnuť alebo jednoducho neviete, že je ignorovaný.
What is the domain name here? 🔎
— Maciej Pulikowski 🔥🚀 (@pulik_io) May 14, 2023
"https://google.com@database-backup.zip"
Is Google actually behind this? 🤔
Learn more about this interesting trick.🔓💡#Hacking #Pentesting pic.twitter.com/HlATOh3dWq
Pozrime sa ešte na dve ukážky. Adresa https://google.com@bing.com vás presmeruje na bing.com. No a ak by ste pridali lomky do adresy URL pred znak @ by sa to stalo naopak https://google.com/search@bing.com. Takto sa správa väčšina moderných prehliadačov.
Skeptici v diskusiách tvrdia, že tento problém je tu už dlhšie a bolo ho možné zneužiť aj pri iných doménach a k nim podobným názvom súborov. Ako napríklad .ai pre Adobe Illustrator, .pl pre Perl a pod. Čo sa tu ale mení, je rozšírenosť ZIP súborov a lepšie povedomie, že ide o archív aj medzi BFU.
Takéto phishingové útoky sa mohli diať už aj doteraz. Skôr ale používané bývajú veľmi dlhé URL, kde ako subdomená je použité niečo dôveryhodné a čo je skutočná doména, je tak na konci, že to prehliadač alebo mailový klient nezobrazí. Toto však rozširuje možnosti, ako je možné podvrhnúť škodlivý softvér, ktorý sa môže tváriť ako inštalátor nejakej aplikácie.
.zip domén už bolo zaregistrovaných viac ako 4500.
Aj v tomto prípade teda platí, že je dobré si skontrolovať, na čo klikáte a od koho.
Praha, 18. 5. 2023 Kampaň Máte tam chybu spolku Wikimedia ČR a firmy Rekola upozorňuje na to, že opravovat chyby na Wikipedii může každý. Kromě digitálního prostoru, zejména stránky chyba.wikimedia.cz, ji můžete od 15. 5. vidět na sdílených kolech v Praze a Brně.
Krosnička zelená, Hobojživelník nebo třeba Paneta mopic. Tak by mohla znít hesla na Wikipedii, kdyby na ní nikdo neopravoval chyby. Největší světovou online encyklopedii píší dobrovolníci a upravovat a opravovat ji může každý. Opravení překlepu nebo pravopisné chyby zabere jen pár vteřin. To jsou hlavní myšlenky kreativní kampaně založené na slovním humoru. Stojí za ní PR specialistka Wikimedia ČR Natálie Schejbalová a „marketingové řídítko“ Rekol Jan Střecha.
„Veřejnost se na nás často obrací se slovy ‚máte tam chybu‘, a tak jsme se rozhodli na nich postavit osvětovou kampaň. Měla by přiblížit fungování Wikipedie a způsobů, kterými lze chyby na ní opravit,“ říká Klára Joklová, výkonná ředitelka spolku Wikimedia ČR, který pečuje o rozvoj české Wikipedie.
Nově vzniklá stránka chyba.wikimedia.cz poskytne veřejnosti kompletního průvodce opravou nebo nahlášením chyby na Wikipedii. V odlehčeném videu vysvětluje kromě Natálie Schejbalové postup také Anatol Svahilec – performativní umělec a plodný wikipedista.
Rekola poskytla spolku Wikimedia ČR kromě kreativy také reklamní plochy zdarma. „Věřím, že všichni Wikipedii vděčíme za víc, než si myslíme. Proto jsme se rozhodli se s ní spojit v rámci kampaně Máte tam chybu a společně jsme vymysleli spoustu chybných hříček. Naše kola jsou jimi nejen polepená, ale také se podle nich teď jmenují,“ popisuje Jan Střecha.
Své díky může kdokoliv Wikipedii vyjádřit kromě aktivního přispění k rozvoji encyklopedie také finančně podporou spolku Wikimedia ČR na darujme.wikimedia.cz.
Kontakt pro média:
Natálie Schejbalová
PR specialistka a fundraiserka
natalie.schejbalova@wikimedia.cz
Občas sa mi stáva, že keď diskutujem s niekym mimo obchod chvíľu trvá než si ujasníme výpočet obchodnej marže. Ako je to teda správne?
Obchodná marža je rozdiel medzi nákupnou cenou tovaru a jeho predajnou cenou. Predstavuje percentuálny podiel, ktorým obchod zvyšuje cenu tovaru pri jeho predaji, aby dosiahol zisk. Obchodná marža zohľadňuje náklady na prevádzku obchodu, marketing, skladovanie, personál a ďalšie súvisiace náklady.
Vzorec na výpočet obchodnej marže je:
Obchodná marža = (Predajná cena - Nákupná cena) / Predajná cena * 100
Kde:
Napríklad, ak obchod kúpi tovar od dodávateľa za 50 EUR a predá ho zákazníkom za 80 EUR, výpočet obchodnej marže je nasledovný:
Obchodná marža = (80 EUR - 50 EUR) / 80 EUR * 100
Obchodná marža = 37,5 %
Ešte pre zjednodušenie. Výpočet marže je pomer medzi ziskom (Predajná cena mínus Nákupná cena) a predajnou cenou. Formálne je možné ho vyjadriť nasledujúcim vzorcom:
Marža = (Zisk / Predajná cena) * 100
Tieto hodnoty marže sú len približné a môžu sa líšiť v rôznych regiónoch a konkrétnych obchodoch.
Túto medzinárodnú konferenciu som si vyhliadol ešte v predkovidovej ére. A som veľmi rád, že sa mi nakoniec podarilo ju nie len absolvovať, ale si ju aj užiť. Service Design Days sú dvojdňová konferencia v Barcelone. V roku 2022 bolo témou ako vytvárať služby s dlhodobou hodnotu.
Robotický den 2023 proběhne 4. června v Praze.
Bližší info viz. https://robotickyden.cz/2023/.
V únoru proběhl na Základní škole a Gymnáziu ve Vodňanech unikátní workshop pro žáky a studenty, který pořádala místní Knihovna Gelasta Vodňanského. Cílem workshopu bylo seznámit žáky s tím, jak vzniká obsah Wikipedie a vyzkoušet si psaní vlastních článků a nahrávání fotografií. Jaký byl výsledek této jedinečné akce propojující žáky a studenty s jejich regionem?
Workshop, který dostal název Dostaň Vodňany na Wikipedii, byl naplánován na dva školní dny a lektorsky jej vedli Pavel Bednařík a Tadeáš Gregor (Grtek). V průběhu akce se vystřídalo ve dvou počítačových učebnách školy 6 skupin žáků 8. tříd ze základní školy i víceletého gymnázia.
Na úvod představili lektoři základní informace o Wikipedii, její historii, vysvětlili principy a pravidla Wikipedie. V následující hodině se studenty diskutovali o tom proč je důležité na Wikipedii přispívat, jaké jsou možnosti a specifika této práce a také proč je důležité, aby se věnovali zakládání či rozšiřování článků souvisejících s jejich obcí.
V druhé části se studenti věnovali samostatné práci na článcích ve dvojicích, případně trojicích. Jednotliví studenti se dle dohody ve skupině věnovali se rešerši, dohledávání podkladů a zdrojů, psaní a tvorbě článků. V následujícím měsíci měli v týmech dokončit zvolené články a také je publikovat. V případě, že bylo možné pořídit původní fotografie a nahrát je na Wikimedia Commons, pustili se žáci i do této práce. Na závěr proběhlo vyhodnocení článků a předání odměn za ty nejkvalitnější.
Předvýběr vhodných témat k založení nebo rozšíření si vzali na starosti zástupci knihovny v čele s paní ředitelkou Kateřinou Novákovou Mašlovou, která je původní profesí erudovanou historičkou. Někteří žáci přišli s vlastními tématy, ostatním byla zadaná.
Samotná doba dvou dnů pochopitelně nestačila na kvalitní zpracování článků – na workshop poté navázala konzultační setkání s lektory online, ale také příprava podkladů ze zdrojů z knihovny, které zajistila zástupkyně knihovny Lucie Hasilová. Online konzultace se zaměřovaly zejména na pomoc s problémy, na které novopečení wikipedisté a wikipedistky narazili.
Důležitým iniciátorem a svorníkem workshopu byla Knihovna Gelasta Vodňanského ve Vodňanech. Té se podařilo oslovit a zkoordinovat pět tříd ze dvou škol (byť formálně školy jedné), ale také nabídnout metodickou pomoc žákům při hledání pramenů a zdrojů. Knihovna si také na workshop zajistila finanční prostředky z grantů OSF.
Zajímavým vedlejším účinkem workshopu byla také skutečnost, že jedním z článků, které žáci školy napsali, byl článek o samotné knihovně a to včetně historických fotografií budovy knihovny. Nakolik se tohoto úkolu žáci zhostili dobrovolně můžeme jen hádat, nicméně výsledky jejich práce už jsou na Wikipedii k prozkoumání.
Některé mladé obyvatele Vodňan práce skutečně bavila. Spolupráce vzdělávací a kulturní instituce může být vynikající inspirací s ohledem na synergii těchto institucí a společný cíl prohloubení a zatraktivnění výuky žáků. Neboť ti budou i nadále využívat Wikipedii, ale určitě bude směřovat k zasvěcenějšímu uživatelskému přístupu. Někteří žáci se pak doufejme k editování Wikipedie vrátí.
Mezi významné osobnosti, které se na Wikipedii nově objevily, patří například polozapomenutý rodák z Vodňan, básník, spisovatel a redaktor Jan Eugen Sequardt nebo významná osobnost regionu, zakladatel rybářské tradice i místní školy, pan Theodor Mokrý.
Pochopitelný důraz byl i v článcích na Wikipedii kladen na témata, která souvisí se vodohospodářskou činností a zpracovatelský průmyslem. Významným hybatelem v samotných Vodňanech je Střední rybářská škola, která má na starosti také provoz Rybářského muzea, nebo péči o památnou Podvinickou lípu. Všechny tyto články na Wikipedii souvisí se zakladatelskou osobností Theodora Mokrého, ale i řady jiných.
Jedním ze zajímavých paradoxů workshopu je skutečnost, že nejznámější fenomén spojený s Vodňany, Vodňanské kuře, zůstává stále na Wikipedii nezpracován. I přes úsilí žáků není článek o Voďnanském kuřeti, resp. Vodňanská společnosti drůběž, s.r.o. v dostatečně kvalitě a zůstává nepublikován (dostupný je pouze na pískovišti jednoho ze spoluautorů).
Převážná část článků byla věnována historickým tématům a osobnostem, na čemž se podepsala i zkušenost a erudice paní ředitelky knihovny. Žáci tak mohli právě díky zvoleným tématům blíže prozkoumat a interpretovat historická témata a souvislosti. Tento způsob osvojování znalostí o regionu ocenily i učitelé a učitelky, které se studenty články připravovaly.
Vlastního článku i původních fotografií se tak dočkaly například
Právě poslední jmenovaný článek si zaslouží speciální pozornost. Intenzivní rešerše jednoho z autorů, Adama Procházky, se vyplatila. Adam připravil veškeré podklady, reference i literaturu, ale zajistil také fotografie a scany (např. obálku časopisu Partyzán, nebo fotku partyzánského praporu skupiny) od tajemníka skupiny, pana Klimeše. Článek se tak díky zapojení rodiny, jejíž předci patřili do partyzánské skupiny, stal kolektivním dílem, které významně přispívá k mapování vodňanské historie.
Mezi současná témata patří například Rybářské muzeum, které je součástí místní školy. Dva žáci zpracovali také heslo posledního partnerského města Vodňan, které nemělo své heslo na Wikipedii, polské obce Sieraków.
Přestože jsou vzdělávací programy pro školy, zejména pro žáky ve věku 13–14 let velmi náročné na přípravu, realizaci a kontrolu celého procesu, byl vodňanský workshop přínosný. Je patrné, že jen u malého zlomku mladých lidí se podaří probudit vášeň pro psaní Wikipedie. Přesto je důležité, že získají povědomí o tom, že informace na Wikipedii nejsou samozřejmostí. Že za nimi stojí hodiny práce a úsilí stovek a tisíců dobrovolníků.
The post Workshop pro žáky ve Vodňanech v nich probudil zájem o jejich město first appeared on Wikimedia ČR - blog.Čtečku elektronických knih už vlastním víc než deset let. Za tu dobu jsem si vytvořil docela obsáhlou knihovnu, kterou sdílím s nejbližší rodinou. Dřív jsem to řešil půjčováním čtečky, kopírováním přes USB z počítače, posílání emailem. Až jsem narazil na Calibre-Web, které to celé posunulo na jinou úroveň.
Kdo čte eknihy, asi zná desktopový program Calibre, který slouží ke správě knihovny elektronických publikací. Já na něj nedám dopustit a už roky ho používám ke správě vlastní knihovny. Hledal jsem ale způsob, jak knihovnu jednoduše zpřístupnit i ostatním členům domácnosti, aby si mohli vybrat knížku a poslat do vlastní čtečky.
Samotné Calibre nabízí Calibre Content Server, který můžete provozovat na serveru a přistupovat k němu přes webového rozhraní. Svým rozhraním a funkčností mě ale příliš neoslovil. Možná právě proto vznikl projekt Calibre-Web, který přináší alternativní a dle mého názoru podstatně lepší webovou aplikaci, která běží nad databází Calibre.
Jedná se o program napsaný v Pythonu a Flasku, který jednoduše nainstalujete z PyPI a na vlastním serveru zprovozníte.
Jelikož se Calibre-Web s sebou nainstaluje jako závislosti také řadu pythoních balíčků, o kterých toho běžný člověk moc neví, je lepší jej instalovat do izolovaného prostředí pomocí pipx:
pipx install calibreweb
Existuje několik nepovinných balíčků, které se standardně neinstalují, ale když je nainstalujete, můžete rozšířit funkčnost programu. Jsou to věci jako stahování dodatečných informací o knihách z Goodreads, synchronizace se čtečkami Kobo apod. Pokud si myslíte, že něco z toho využijete, nainstalujte je společně s calibreweb.
Po dokončení instalace, můžete program spustit příkazem cps
. Webové rozhraní pak najdete na portu 8083. K tomu, aby to fungovalo jako jednoduše dostupná serverová služba, ale několik kroků ještě chybí.
Budeme chtít Calibre-Web spravovat jako službu pomocí systemd, takže si vytvoříme jednoduchý unit soubor calibreweb.service a uložíme jej do /etc/systemd/system:
[Unit]
Description=Calibre-Web
After=network.target
[Service]
Type=simple
User=(uživatel, pod kterým chcete, aby služba běžela)
ExecStart=cps
[Install]
WantedBy=multi-user.target
Poté necháme systemd znovu načíst všechny unit soubory a povolíme a zároveň spustíme službu calibreweb:
sudo systemctl daemon-reload
sudo systemctl enable calibreweb.service --now
Calibre-Web už obsahuje web server, takže nutně nemusíte instalovat další. V nastavení můžete přidat cesty na certifikáty a změnit port na 443 a dostanete službu dostupnou přes https. Pokud ale už webový server používáte kvůli jiným službám, což je i můj případ, je lepší Calibre-Web schovat za něj a využít reverse proxy. Dokumentace nabízí ukázkové příklady konfiguračních souborů pro nejpoužívanější webové servery (Apache, Nginx, IIS, Lighttpd,…).
Nyní se pojďme do Calibre-Web přihlásit. Stačí načíst webové rozhraní na adrese [IP adresa]:8083, např. 10.10.10.10:8083, případně na adrese, která vychází z vaší konfigurace webového serveru. Výchozí přihlašovací údaje jsou: uživatelské jméno – admin, heslo – admin123. Raději připomínám, že byste si tyto údaje měli co nejdříve změnit.
Po prvním přihlášení budete dotázáni na to, kde se nachází databáze Calibre. Důležitou vlastností Calibre-Webu je to, že není schopen si databázi vytvořit sám. Spoléhá se na to, že ji máte v Calibre vytvořenou. Typicky se nachází v adresáři /Ebooks, který byste celý, nejen s metadaty, ale i samotnými knížkami, měli dát k dispozici Calibre-Web.
Dále už dokáže Calibre-Web fungovat jako správce knihovny samostatně. Ve výchozím stavu nenaleznete možnost nahrávat nové knihy, ale je to jen kvůli tomu, že je tato možnost ve výchozím nastavení zakázaná. Stačí zamířit do Správce->Upravit základní konfiguraci->Konfigurace funkcí a zaškrtnout Povolit nahrávání. Poté byste se taky měli ujistit, že tuto možnost mají povolenou také jednotliví uživatelé.
Já osobně používám Calibre-Web v režimu pouze pro čtení. Knihovnu si i nadále spravuji v desktopovém Calibre a vždy ji pomocí rsyncu aktualizuji také na serveru, aby se změny promítly ve webové knihovně. K tomu je potřeba ještě restart služby.
Calibre-Web má systém uživatelských účtů, takže každému můžete vytvořit vlastní účet a nastavit mu ho na míru. Pokud chcete, aby to měli opravdu pohodlné a posílali si knížky přímo do čtečky, musíte každému nastavit, na jakou emailovou adresu se mají posílat. Třeba každý Kindle má přidělenou emailovou adresu, která se používá na doručování dokumentů do čtečky. Zjistíte ji ve svém účtu u Amazonu v sekci Manage Your Content and Devices.
Potřebujete také email, z kterého se budou knížky posílat. V nastavení Calibre-Web pak musíte nastavit přístup k jeho SMTP serveru. Aby Amazon email s knížkou přijal, musí být adresa na seznamu povolených, takže ji v v sekci Manage Your Content and Devices nezapomeňte do tohoto seznamu přidat. I tak vás může ještě emailem Amazon požádat o autorizaci, takže si nezapomeňte zkontrolovat vlastní email, jestli tam náhodou třeba ve spamu neleží email s potvrzením, ať pak jako já zbytečně nedumáte, proč knížky do čtečky nechodí.
Když odesílání nastavíte, v profilu každé knihy se objeví tlačítko pro poslání do čtečky. Stačí na něj kliknout a případně v emailu potvrdit přijetí a kniha se objeví ve čtečce daného uživatele.
Velmi pěkná funkce je také filtrování knihovny pro každý účet zvlášť. Nejvíc z toho asi oceňuji filtrování podle jazyka knihy. Můžete mít mix knížek v angličtině a češtině, ale pokud vaši rodiče neumí anglicky, nemá smysl jim knihy v tomto jazyce zobrazovat. Calibre-Web vám v nastavení uživatele umožňuje zvolit jazyky, které se mají v knihovně daného uživatele objevit. Nutnou podmínkou je, abyste měli v metadatech všech knih jazyk správně nastavený.
Možná jste si v průběhu článku říkali, že jsem se zbláznil, když se takto veřejně přiznávám k porušování autorského zákona. Licence většiny elektronických knih přece sdílení s ostatními neumožňuje. Pokud chcete postupovat zcela dle litery zákona, má i pro to Calibre-Web řešení. Knihy pro jednotlivé uživatele můžete filtrovat také podle libovolných štítků. Já mám u každé volně šiřitelné knihy štítek „free“, který pak u ostatních uživatelů stačí nastavit v Allowed Tags. Můžete to dělat i naopak. U knih, jejichž licence volné šíření neumožňuje, nastavíte nějaký štítek a ten potom přidáte do Denied Tags. V obou případech dosáhnete toho, že knihy, které mají patřit jen vašim očím, nikdo další neuvidí.
Jak už jsem psal, Calibre-Web sice do začátku potřebuje databázi vytvořenou desktopovým Calibre, ale dál už dokáže fungovat jako samostatný správce knihovny. Dalších možností, které nabízí, je celá řada, např. „police“, kde si člověk může vytvářet vlastní kolekce knih a případně je sdílet s ostatními, převody knih z jednoho formátu do druhého, stahování metadat ke knihám, čtečku knih přímo v prohlížeči, OPDS feed, díky kterému můžete knihovnu načíst přímo v čtečce, pokud tento formát podporuje (populární Kindle bohužel nepodporuje).
Desktopové Calibre je pořád množstvím funkcí a nabídkou pluginů výš, proto jej i nadále používám ke správě knihovny. Calibre-Web mi ale vyřešilo problém, jak vybrané knihy ze své knihovny dát co nejjednodušeji k dispozici zbytku rodiny.
Dnes vyšel můj nový příspěvek na stránkách SANS Internet Storm Center. Podíváme se v něm na zajímavou dlouhodobou phishingovou kampaň cílenou na uživatele služby Facebook…
První workshop na půdě Historického ústavu Akademie věd, který proběhl 4. 4. 2023, seznámil účastníky s Wikidaty a jejich možnostmi využití. V rámci druhého workshopu již akademici editovali Wikidata. Workshop byl zaměřený jak na ruční editaci, tak na složitější systém propojování databází s Wikidaty prostřednictvím nástrojů OpenRefine či nástroje Mix’N’Match. Celkem bylo editováno přes 4000 Wikidata položek.
S Historickým ústavem Akademie věd spolupracujeme dlouhodobě. Historička a zaměstnankyně Historického ústavu Akademie věd Markéta Marková systematicky pracuje na propojování Akademické encyklopedie českých dějin a dalších databází Historického ústavu. A to včetně například databáze Bibliografie dějin Českých zemí, s Wikidaty prostřednictvím Mix’N’Match nástroje. Za dobu spolupráce již propojila přes 1300 záznamů.
Spolupráce s akademiky a odborníky z kulturních institucí jsou pro kvalitu Wikimedia projektů a informací na nich uvedených mimořádně důležité, proto soustavně rozvíjíme naše strategické spolupráce a podporujeme naše partnery v jejich činnosti. K tomu nám slouží mezinárodní projekt GLAM, který je zaměřen na navazování obousměrně prospěšných partnerství s kulturními institucemi. Mezi ně patří galerie, knihovny, archivy, muzea a další. Přes GLAM jsme se propojili právě i s Historickým ústavem Akademie věd.
Na základě naší spolupráce vznikla poptávka po workshopu, který by s Wikidaty seznámil i další zaměstnance a akademické pracovníky. Na workshop se nakonec dostavilo nejen množství zaměstnanců Akademie, ale dokonce i zájemců zvenčí. Oba workshopy například navštívila naše dlouholetá spolupracovnice a koordinátorka spolupráce s Muzeem východních Čech v Hradci Králové. Máme proto radost, že se nám daří propojovat GLAM komunitu napříč kulturními institucemi a podporovat tak mezioborovou výměnu.
Workshopů se v obou případech zúčastnila dvacítka zájemců, z nichž tři pocházeli z našich partnerských institucí. První workshop se zaměřoval na obecné informace týkající se Wikidat a jejich využití ve vědeckém světě. Druhý workshop byl již praktický a zaměřený jak na ruční editaci Wikidat tak na nástroje OpenRefine či Mix’N’Match, díky kterým je možné Wikidata editovat hromadně. Například je propojovat s veřejně dostupnými databázemi. Celkově bylo založeno 33 nových Wikidata položek a propojeno více než 4 tisíce stávajících. Více na nástěnce.
The post Akademici editují Wikidata. Rozšiřujeme spolupráci s Historickým ústavem AVČR first appeared on Wikimedia ČR - blog.