21. January 2023

Gratis ressourcer

Jeg så lige ovre på Mastodon, at Smithsonian har gjort 4,4 mio. stykker 2D-og 3D-materiale fra deres samlinger frit tilgængeligt under en Creative Commons-licens. Så, nu fik jeg lige idéen til at lave dette blogindlæg. Jeg har lidt travlt i dag, så når ikke at fylde på listen mere i dag, men det vil jeg gøre løbende (siddende faktisk… hæ!), for der er meget godt derude.

Du finder Smithsonians Open Access-bibliotek her:
https://www.si.edu/openaccess

Her har jeg søgt på “Denmark”:
https://www.si.edu/s … dia_usage%3ACC0&oa=1

19. November 2022

Liste over Open Source “host-selv services”

Et par hurtige eksempler på OSS (Open Source Software), du selv kan lege med - tjek den gigantiske liste i bunden også. Lad os få åbnet det internet!

Mastodon (social media)
https://github.com/mastodon/mastodon

Mattermost (chat, projektplanlægning)
https://mattermost.com/

Gitea (kode/filhåndtering m/versionering) -
https://git.data.coop/

Collabora Office
https://www.collaboraoffice.com/code

Akkaunting (bogholderi)
https://akaunting.com/

Jitsi (videokonference)
https://jitsi.org/jitsi-meet/

PeerTube (YT alternativ)
https://joinpeertube.org/

Sidst, men absolut ikke mindst - kæmpe liste her:
https://github.com/awesome-selfhosted/

Afsted mod et åbent, decentraliseret internet

Med sit milliarddyre opkøb har Elon Musk sat Twitter på den anden ende. Du har sikkert allerede hørt det i medierne, så det vil jeg ikke koge mere suppe på.

Nej, det interessante er furioren har skabt en åbning for alternativer til Twitter. Deriblandt Open Source-alternativet Mastodon. Det smarte ved Mastodon er, at den er en del af Fediverset.

Fediverset er simplificeret set et netværk af servere, der udveksler information med hinanden. Frem og tilbage. I de her tider er serverdrift blevet helt vildt billigt, og i med at Mastodon er Open Source, så kan du selv drive din egen udgave, hvis du har lysten og færdighederne - eller du kan betale en udbyder for det tunge arbejde, også kaldet managed hosting. Det med færdighederne, det kommer automatisk når du interesserer dig for et emne. Fediverset kan være megauoverskueligt, særligt fordi det er opdelt pr. server - og efter interesser ofte. Men, selvom du opretter dig et sted, vil du stadig kunne se, hvad der foregår andre steder - for Fediverset hænger sammen via den åbne ActivityPub-protokol.

Eller, du kan være vidunderlige dig, som bare gerne vil interagere med andre, som ganske almindelig bruger.

Den store forskel på kommercielle sociale medier og f.eks Mastodon er, at du kan færdes på Mastodon uden nødvendigvis at være genstand for markedsprofilering, ændrede forretningsstrategier osv.

Serverne drives ofte af foreninger, entusiaster eller små/mellemstore erhvervsdrivende. Om server-ejerne stadig handler ansvarligt er et spørgsmål om tillid, men hvis fundamentet er ikke-kommercielt eller kører efter “hvile-i-sig-selv”-princippet, så burde vi som brugere ikke være bekymrede. Uanset, så har du som “Fediverse-borger”, mulighed for at flytte til en anden server og stadig beholde dine følgere mv. Den mulighed får du ikke hos de store IT-giganter, som vil gøre hvad de kan, for at holde på dig. Det er oftest enten-eller.

Jeg prøver ikke nødvendigvis at “frame” IT-giganterne som store og onde, for du skal have lov at nyde dit ophold der, uden min løftede pegefinger. Men deres eksistensgrundlag er ene og alene salg. Og når noget er gratis, betaler du med noget andet, nemlig dine adfærdsdata. Men altså ikke i Fediverset, som udgangspunkt - husk at tjekke den enkelte servers vilkår, inden du opretter dig.

1. October 2022

SimonCMS

Jeg har skrottet SimonCMS. Det levede et stille liv ovre på Github med opdateringer primært i weekenderne.

Jeg havde en idé om, at jeg henad vejen kunne skabe en Wordpress-udfordrer. Jeg har arbejdet professionelt siden 2004 med Umbraco på Microsofts .NET-platform, og synes egentlig godt, PHP-platformen kunne bruge nogle af de koncepter, der findes deri. Jeg synes stadig CMS’er - content management systemerne - på særligt PHP-platformen er underligt ufleksible fra et bruger/administratorsynspunkt.

Det burde ikke være nødvendigt at være programmør for at lave noget så simpelt som en tekstboks i backend’en på systemet og koble den til sitets design. Som programmører/designere vil vi jo helst ikke have, at brugerne piller for meget ved vores designs, men omvendt, så skal de også have lov til at have så meget fleksibilitet indenfor rammerne som muligt. Det er alligevel ret sjældent at brugerne kan lave bøvl, hvis de ikke har adgang til mastertemplaten.

Men det er et faktum for mange PHP CMS’er, at de er ret låste. Det er også tilfældet for Wordpress - block editoren i “Gutenberg” er dog et kvantespring fremad. Læg dertil at kodekvaliteten stadig er tvivlsom, dog i bedring. Jeg siger ikke, at OOP (objektorienteret programmering) er den hellige gral, for det kan nemt være en tidstyv, særligt hvis koden består af for mange abstraktionslag, men det kan hjælpe med at organisere koden i større projekter, og Wordpress lider stadig under, at dens kodebase startede proceduralt, som det vilde vesten.

Egentlig undrer det mig, at det var Wordpress og ikke TYPO3 CMS, der rendte med sejren aka. populariteten på PHP-platformen, men førstnævnte er formentlig lettere at gå til for de fleste med de mange plugins.

Anyways, jeg ved ikke, hvornår og om jeg samler SimonCMS op igen. Det er muligt, men så skriver jeg formentlig alt fra bunden. Jeg havde egentlig meget skægt ud af at vende tilbage til PHP og bruge Laravel-frameworket, kombineret med Javascript/React, men jeg har brug for et mere stabilt fundament og en ensartet toolchain. Nævnte kombination er for meget et moving targe. Jeg bliver alt for hurtigt gammel, hvis jeg skal løse for mange toolchain-udfordringer.

Så, forfra.. Måske… :)

7. August 2022

Derfor har du brug for Open Source (2. del)

I det følgende vil jeg beskæftige mig med økonomien omkring Open Source. Mit tidligere indlæg var temmelig teksttungt, så nu leger vi lige, at du stiller spørgsmålene, og så svarer jeg.

Sådan fungerer økonomien i Open Source-projekter

Hvordan tjener folk penge på Open Source?

Det kan være svært at forestille sig, at man kan tjene penge på at give sit produkt væk til en kostpris på kroner nul. Men det kan man, særligt i disse tider, hvor vi bevæger os mere og mere over imod en serviceøkonomi.I stedet for at der tjenes penge på hovedproduktet ses typisk, er at der tjenes penge på “udenomsydelser”. Hvis produktet er f.eks en Officepakke, med et tekstbehandlingsprogram, tjener man måske penge på donationer fra brugerne, timebaseret konsulentbistand, udvikling af ekstramoduler eller support. Mange af firmaerne i Open Source-miljøet har været i drift i årtier, så det har vist sig at være en holdbar forretningsmodel.

Mulighederne er mange, der findes i dag Open Source-produkter indenfor alle områder. Da jeg og en god ven startede vores første, lille webbureau tilbage i starten af 00′erne, stod vi og manglede et administrationssystem til indholdsstyring eller på engelsk: et Content Management System (CMS). Vi fandt Open Source CMS’erne TYPO3 og senere Umbraco, udviklet af hhv. Kasper Skårhøj og Niels Hartvig. Uden de systemer var vi næppe nogensinde startet op, da de kommercielle closed-source modparters CMS’er kostede en bondegård. De var tydeligvis ikke rettet mod startups og små selvstændige.

Vi kunne måske have fået nogle gode reseller-deals med closed-source udviklerne, men ingen af os havde lyst til at kræve de mange tusinde kroner fra en nystartet kunde, allerede inden vi var kommet igang, og så vores egen konsulenttarif oveni.
Adskillige websites, og moduler senere er vi en masse erfaringer rigere. Det har været en klar fordel for os, at vi har haft fuld adgang til koden i de Open Source-systemer, vi har brugt. Det har betydet, at jeg selv har kunnet tilføje funktioner eller rette fejl, når vi har opdaget nogle. Men lad mig være helt ærlig: Det har også været aldeles frygtindgydende at skulle “wrestle” med kode, man ikke kender til. Når det så virker bagefter, dårlig slamkode eller ej, så er det fandme fedt!

Ulemperne

Ingen roser uden torne, og nu kommer vi så til de erfaringer, jeg selv har gjort mig med Open source-modellen.
Det følgende er vinklet med forretningsøjne, da jeg har mødt de største udfordringer i forretningssammenhæng. Der er nogle problemstillinger, som privatbrugere måske ikke stifter bekendskab med på helt samme måde, og med samme risici.

Mangel på support:

Man skal se sig rigtig godt for, når man vælger et open source-produkt. Uanset om der er tale om et omfattende produkt eller et lille modul. Er man erhvervsdrivende, kan det godt betale sig at kigge på de supportmuligheder, der eventuelt findes, så man kan få hjælp, når problemer opstår. Ellers er Open Source-leverandøren ikke forpligtet til at hjælpe, da de åbne licenser ofte betyder et fravalg af garantier og ansvar. Så tjek licensens betingelser, inden du bruger produktet.

Projekter stoppes helt:

Da der ingen kontrakt/licensmæssige forpligtelser er, kan et Open Source-produkt i princippet ophøre med at eksistere fra den ene dag til den anden. Det har jeg set med mindre projekter, mens de store typisk bliver “forket” og bliver til nye projekter, der kører videre, hvor det gamle slap.

Mangel på vilje til at udbedre fejl eller lave opdateringer

Måske min største “beef” med Open Source-modellen i erhvervssammenhæng. Denne hænger lidt sammen med ovenstående afsnit.

Netop fordi meget brug af et Open Source-produkt foregår på eget ansvar og på frivillig basis, kan det være svært at få den oprindelige udvikler af et produkt i tale, hvis samarbejdet omkring et produkt af en eller anden grund er gået i vasken, eller vedkommende har tabt motivationen. Den slags sker.

På Linux-fronten er der altid hjælp at hente, for nettet bugner af forums eller man kan betale sig til professionel support. Men kommer man ned i de mindre, niche- og hobbyprægede Open Source-produkter, så kan der opstå problemer. Jeg har mest oplevet positive ting, men også været nødsaget til selv, at “putte fingrene i gryden”, for at få et projekt færdigt til en deadline.

Lidt irriterende, da vi jo så har måttet sænke farten på projektet, da der så kommer en uuforudset stopklods. Men sådan er det. Alternativet havde været, at jeg skulle udvikle modulet helt fra bunden. Der har været eksempler på, at jeg/vi har måttet udskyde planlagte opdateringer pga. mangel på kompatible moduler. Her kan man mærke at Open Source-miljøet nogle gange arbejder i forskellige retninger og hastigheder.

Ovenstående lyder meget negativt og er brugt til at illustrere potentielle faldgruber, baseret på mine egne erfaringer. Driver du et firma baseret på Open Source, så skal du eller dine medarbejdere være parat til at tage ejerskabet over koden fuldt og helt, ellers kan du ikke servicere dine egne slutkunder tilstrækkeligt.