Sergey Budaev

Feb 06, 2023

XMPP: en ideell direktemeldingssystem for et familie

Forskjellige meldingssystemer ble populær de siste tiårene. Den meste kjente eksempler er Whatsapp, Facebook Messenger, Snapchat eller Discord. Mange bruker dem uten å tenke bare fordi de ser praktiske ut og er gratis. Kostnadene er imidlertid alvorlig: den er personvernkatastrofe. Brukere har ingen egenkontroll, så eieren kan endre alle funksjoner uten at brukerne vilje. Disse tjenstene (platformene) er laget og fullstendig kontrollert av store monopoler fokuserte på å suge alle slags av brukerdata. Personvernkostnaden til store kommersielle direktmeldingssystemer av er mye høyere enn brukervennligheten. De er bevisst laget for å være gjensidig uforenlige. En bruker av Whatsapp kan ikke sende en melding til noen på Telegram eller Facebook. Bare se for deg at du hadde Telenor men kunne ikke sende sms til noen på Telia, kun til sin eget system Telenor. Eller se hvis du kunne ikke sende en epost fra Gmail til Yahoo. Det er helt dumt.

Nå, blant de populære systemene er det bare epost det eneste systemet på internett som har ikke vært monopolisert. Og det er fortsett fordi epost ikke er en plattform (eller 'ecosystem'), men åpen og federert protokoll etter eget design. Alle kan konfigurere og kjøre egen mailserver og meldinger skal sendes mellom evt. Alle kan velge mellom mange epost apper. Alle kan legge til ytterligere funksjonalitet, slik at ende-til-ende kryptering, men interoperabilitet opprettholdes.

Protokoll betyr et sett med regler og konvensjoner for interoperabilitet, ikke et enkelt komplett produkt.

xmpp logo

Men, det finnes en direktemeldingssystem som er like enkel å bruke som Whatsapp, men mangler de fleste av problemene. Faktisk, er det XMPP. Det er en åpen og federert protokoller som epost. Alle kan ha egen server, så kan ha kontakt med noen på alle serverer som helst, akkurat som epost eller mobil. I tillegg, kan alle også velge mellom ulike app etter vilje: foretrekker du funksjonalitet, eller skjønnhet eller bare det å være veldig lett... Det finnes også flere XMPP serverer programvare å velge mellom, de fleste er gratis og åpen kildekode. Med XMPP kan du få alt: direktemeldinger, filer, tale, video, gruppechat, flere enheter. Det er også flere typer av ende-til-ende kryptering (OMEMO, GPG, OTR) og mye mer. Det finnes enda en XMPP-basert sosialnettverk: Movim.

XMPP er ikke alene. Det finnes også en alternativ åpen og federert protokoll: Matrix. Men sammenlignet med XMPP, har den flere mangler: (a) problemer med personvern (selv om mange ikke bryr seg om det), (b) alvorlige ytelsesproblemer: mens XMPP fungerer fint selv på den minste og billigste VPS, Matrix server krever mange gigabyter med RAM og stor diskplass, på denne grunn er det dyrere i drift, også krever Matrix mye mer oppmerksomhet (f.eks. se her). Det kan være berettiget i bedrifts- eller stororganisasjonsbruk, men ikke i hjemmebruk.

Så XMPP er ideell for å lage et helt privat kommunikasjonssystem for et familie. Du trenger bare dette: (a) en server: billigste VPS eller enda en Rasberry Pi boks vil fungere fint (f.eks ejabberd skal støtte hundrevis brukere med dette nivå); (b) server programvare som kjøres alt: sjekke ut flere og velge selv, de mest populære er ejabberd og Prosody; (c) domenenavn slik at brukere kan konnektere til: domenenavn er også en del av brukernavn, som i epost, f. eks alexander@johansson.me (enkelt DNS oppsett trenges for å støtte tale og video); (d) hver bruker kan velge hvilken klientapp som skal brukes (f. eks Monal eller Siskin IM på iPhone). Og det er det.

Nå må serveren konfigureres. Så kontrollerer du systemet fullt ut! Du kan registrere så mange brukere at du trenger, men for en familieserver anbefaler jeg ikke å tillate åpen registrering av alle som helst. For eksempel du kan registrere flere kontoer for en enkelt bruker hvis nyttig (å bruke med forskjellige formål). Ingen mobilnummer kreves: f.eks. trenger du ikke fem SIM-korter for fem brukere, faktisk ingen er nødvendig. Det også anbefales å konfigurere ‘Shared roster group’ (delt brukerliste) for å unngå å legge til familiekontakter manuelt for alle familiemedlemmer. Ende-til-ende kryptering er ikke avgjørende for din egen private server fordi transportkryptering (TLS) brukes alltid; men det er lettere å konfigurere hvis du bruker flere enheter (mobil, nettbrett, desktop, laptop, web-basert). Men det er bedre og sikrere å bruke ende-til-ende kryptering til å kommunisere med noen på andre offentlige servere.

Og nå, når flere grupper har sine egne private servere, kan de kommunisere fritt og sikkert. For eksempel, det er nå lett for pappa@johansson.me å sende melding (eller video-ringe) til mattias@johansson.me (samme familier og på samme privat server) eller til en venn john@dowfamily.info eller enda alle som bruker hundrevis av åpne gratis offentlige serverer f. eks maria@jabber.no (på Jabber Norge), christian@jabber.de, oyvindharaldsson@tigase.org eller nikolaibode@riseup.net.

Federated network

Se her for litt mer informasjon om XMPP.

Lenker

Nov 01, 2022

Intervju kristendom

Jeg hadde en intervju med studenter av St Paul gymnas. Her er noen svar.

Hvordan å praktisere religionen?

Å praktisere religionen betyr at du leve med Gud i hjertet ditt. Først, det er viktig å bare være god i livet og unngå noe som er dårlig. Unngå synd og dårlige ting som er enda uten av synd. Men det er ikke nok å bare ikke gjøre noe. Det er viktigste å gjøre god ting i livet for God hjelper oss når vi gjøre det som er godt. Jeg tror det er den Guds ligning:

her E er effekt som vi får, i er menneskers innsats og G er Gods nåde. Hvis innsats er null, helt effekt er null selv når Gud er enig å hjelpe den største (f.eks. G = 1,000,000). Tå eksempel av Jesus og følge Kristus i hverdagen aktivt. Tenke om dette: I velkjente miraklet tok Kristus få brød og fisk fra folk og multipliserte dem til flere tusen. Det var i stedet av å skape brød ut av ingenting. Den hovedbetingelsen for miraklet var en gratis gave og samarbeid fra få enkle mennesker. Vi vet ikke hvor mange mirakler som ikke skjedde fordi noen bestemte seg å gjøre ingenting. Den G-leddet i den formelen er det viktigst del. Så vi kan ikke gjøre mye uten av Kristus nåde. Det betyr at vi trenger sakramenter og be å få den G-ledder. Vi lever i verden og Gud er transcendent, Jesus er i himmelen, ikke her med oss nå. Det betyr vi ikke får direkte opplevelse av Gud og kan ikke se, spørre og kjenne hva er som Guds vill. Men vi har masse informasjon i skriften og den hellige tradisjon. Kirken får det i kirkelige dokumenter, Codex juris, og mange teologiske og filosofiske verk. Vi kan lære mye av dette hellige vitenskap ved hjelp av vår egen sunn fornuft.

Kort fortalt: å praktisere religionen inkluderer dette: (1) å få Guds nåde ved sakrament og be, (2) lære hva er som god og Guds vilje ved hellige vitenskap og rasjonalitet, (3) vare aktivt å følge det som er god i hverdagen.

Hvilke sakramenter påvirker ditt liv mest og hvordan?

Nattverd, Eukaristen, er den sakrament vi kan få og har oftest. Det er også det sakramentet som forbinder oss med Gud fysisk. Det er den eneste sakrament som tillater oss å se på Gud, streife på Gud og akseptere Gud fysisk. Men det er også den vanskeligste sakrament vi har.

Det kan være vanskelig å forstå hvordan et lite stykke brød kan være Kristi legeme. Men tenk om enkelt ting, f.eks. så enkle ting som en stol vi seter på. Det kan vare laget av tre, eller jern eller plastikk eller glass. Men hva vi se som materialet er helt uviktig. Hvordan vi behandler og bruker stolen er helt uavhengig av materialet, men bare faktum at det er an stol. Å forstå hva stolen er og av hvilken grunn det brukes og hva det brukes, må vi resonnere ved hjelp av kognisjonen og abstraksjonen vår. Det trenger litt høyere nivå av tenking enn bare se på det ytre utseende. Men vi hittil ikke forvirrer en tre stol med vedtre. Nå tenke om en dyr som ikke får slik abstraksjonsevnen. En fly eller maur som seter på en tre stol og etterpå har en opplevelse av en plastikk stol skal tenke at denne er helt forskjellige ting og har ingenting til felles. Men vi kan få det rart: vi finner det helt åpenbart at denne to objekter tilhører til samme kategori.

Samme skjer med hvordan kan vi se på Eukaristen. Gud er transcendent og ikke en del av denne verden. Så vi selv kunne ikke se på, eller på annen måte oppleve Gud. Vi selv kan ikke ha denne kapasiteten. Men Kristus kommer til oss i denne sakrament fysisk, bruker den vanligste ting som er en del av vår verden, så vi kan vi kan kommunisere og enda forene med transcendent. Men for dette, vi ikke har vårt eget konsept og må abstrahere å forstå.

Å vare et menneske betyr å forstå hva er den naturen av verden og tinger vi lever med. Hvordan vi forstår det påvirker hvordan vi lever livet vart.

Hvis gud er allmektig, hvorfor tror du det er så mye ondt i verden?

Nøkkelen å forstå dette er frie vilje av mennesker.

Det var en metafor av Gud som skaper, i ekstrem form Gud som urmaker. Her Gods allmakt og allvitenhet kunne se ut til å peke at verden som Gud skapte er idealt som en maskin. Da er det Gud som er den eneste skuespilleren. Dette synet blir spesielt populært da mennesker utviklet enkelt fysiske vitenskap, Newtons fysikk som er basert på streng årsak og virkning. Tenke om dette: årsaken A forårsaker B. Her A bare styrer en fiksert og helt bestemt effekt B, men B ikke har noe rolle. Da Gud er tenkt som den første og hovedårsaken av alle ting i verden. Konsekvens av dette er at Gud tar alt ansvar. Så bare faktum at det ar noe galt i verden betyr det er Gud som har forårsaket dette.

Men God som bare skaper eller urmaker er en feil metafor. Dessuten, motsier det det bibelske synet. I bibelen Gud er tenkt om som en far. Noen kan tror det er et utdatert og primitivt syn, ikke vitenskapelig som vi nå trenger. Men konsept av faren, den forelderen, tar den eneste essensen av Guds rolle.

En urmaker lager maskinen for et bestemt formål. Maskinen gjør kun det som er urmakers formål, ingenting mer. Maskinen er ikke en uavhengig "agent" med egen aktivitet. Det også finnes ikke en rolle av kjærlighet.

Forelderen er helt motsatt av det synet. Forelderen føder ut av kjærlighet, ikke for en funksjon. Barnet er ikke en programmert robot, men en uavhengig agent som bare lever sitt eget liv. Det betyr at barnet har egen frie vilje som forelderen skal respektere og helt verdsette. Det også betyr at barnet har lov til å feile og lære av sine feil. Dessuten, barnet har likt lov å ikke lære av sine feil og enda å gå helt galt. Forelderen kan ikke gjøre har, men gi råd og kanskje lide over barnets feil. Fordi barnet har frie vilje, det kan ikke fikses, kun kureres.

På samme måte, Gud lar oss å leve vårt eget liv slik vi bestemmer selv. Det betyr våre feil har lov til å være enorme. Men det at vi har fri vilje skaper vår verdi som mennesker. En programmert robot med liten selvstendighet og kreativitet er en helt kjedelig og dumt skapning.

En del av frie vilje er ikke en ting Gud har gatt oss mennesker. Hele verden er skapt til å være uavhengig, ikke som en klokke eller noe andre maskin. Verden er ikke skapt som en endelig ideell ting, men det kan utvikle seg selvstendig. Det finnes eksempler i kvantefysikk: elementærpartikler kan fungere uten noe streng årsakssammenheng. Men den beste eksempel er Darwins evolusjon. Her levende former utvikler seg kreativt uten Guds kontroll. Uavhengighet og fri vilje er Guds plan og gaven, men det er også et tungt ansvar.

May 06, 2018

About me

I am a researcher at the Theoretical Ecology Group, the University of Bergen, Norway. My current research focuses on animal and human behaviour in the adaptive and evolutionary perspective. How cognition, behaviour and personality have evolved through adaptation and natural selection? In my work I try to integrate both proximate and ultimate causation and use both experimental and modelling approaches.

Cognition and behaviour

The current work concerns developing a large scale simulation model that implements a general decision-making architecture in evolutionary agents. Each agent is programmed as a whole virtual organism including the genome, rudimentary physiology, the hormonal system, a cognitive architecture and behavioural repertoire. They "live" in a stochastic spatially explicit virtual 3-D environment with physical gradients, predators and prey. The primary aim of the whole modelling machinery is to understand the evolution of decision making, personality, emotion and behavioural plasticity within a realistic ecological framework.

I believe that understanding and modelling complex adaptive behaviour requires both extraneous factors and stimuli as well as endogeneous architectural mechanisms (genetic, hormonal, cognitive etc.) that produce the behaviour. Explicit proximate representation of the motivation and emotion systems, prediction-oriented cognition provides a better approach to understand the behaviour, adaptation and evolution of the whole organism. Ultimately, such an approach can help us understand the evolutionary emergence of consciousness and complex cognition.

For more details, links to source codes etc. see The AHA Model web page.

Animal personality

Although I am interested in any species, most of my work so far has been conducted on fish. Using series of tests we have shown that individual fish of several species have consistent personality traits that translate to a variety of different adaptive contexts. Individual fish with different personalities, such as shy and bold, may behave quite differently in their natural environment, e.g. prefer different social strategies (school or not to school) and different local habitats. Shy and bold fish choose their mates based on personality, personality also significantly affects their parental care tactics. Personality in fish can be linked to the operant learning performance. For example, shy fish may be more susceptible to the development of the conditioned fear, providing a link between emotion and personality in such "lower" vertebrates. It is also possible to trace the development and the appearance of consistent personality traits during the ontogeny. Certain environmental effects, like exposure to light, acting early in the ontogeny could significantly affect fish personality via the involvement of specific brain structures, such as the photosensitive habenula. Personality in fish and other species could be linked with lateral asymmetries via the involvement of the morphologically asymmetrical habenula. I am also interested in the adaptive and evolutionary mechanisms that bring about patterns of consistent personality and alternative strategies. We have shown that gender differences in personality follow from sex-related adaptive strategies in humans. In another study we have shown how a trade-off between parental food provisioning and the fry's own individual experience of searching for cryptic food creates a range of parental strategies in a cichlid fish. This reflects my specific interest in the evolution of mate choice and parental care in fish, and their potential role in sympatric speciation. Currently, we are developing models linking emotion and decision making to understand the proximate and ultimate factors governing the evolution of consistent personality.

Ecology and conservation

I am also interested in complex biological interactions at various levels, e.g. competitive interactions between multiple cladoceran species and their predators, and relationships between various associates and the host within a symbiotic community. The former is closely linked with conservation and species invasion. We have developed a model that allows to predict the population dynamics and the invasion success among freshwater cladocerans in various conditions. I took part in several conservation projects, ranging from coral reef and freshwater conservation in Vietnam to fish monitoring and protection in subarctic Siberian rivers and optimising sturgeon hatcheries. We have developed a series of quick low-technology tests for rapid assessment of the coral reef health. Additionally, we have developed hydroacoustic methods for the assessment of the fish populations in very shallow water bodies, such as large Siberian floodplains.

Links