From 56087ab3a0c3a26d06699feae6e52d053d722a3e Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 4 Sep 2023 06:35:23 +0200 Subject: initial draft --- software/index.md | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 software/index.md (limited to 'software') diff --git a/software/index.md b/software/index.md new file mode 100644 index 0000000..bd53ebf --- /dev/null +++ b/software/index.md @@ -0,0 +1,120 @@ +# Software + +**NB!** +Dette er en blot beslægtet stjerne til inspiration +(*ikke* en data-stjerne). + +Skriv kode i åbne, inkluderende sprog. +Dvs. sprog med en åben standardardiseret arkitektur, +forankret i en organisation uden særlige økonomiske interesser, +sikret med en åben og fri licens. + +## Eksempler + +Blandt scripting-sprog +(dvs. sprog som afvikles gennem en fortolker - +ofte anvendt til relativt simple opgaver og hurtige skitser) +er de åbne og uafhængige sprog [Elixir] og [TypeScript] [værdsat], +og [TypeScript], [Python] og [JavaScript] er [populære]. + +[Elixir]: https://en.wikipedia.org/wiki/Elixir_(programming_language) + "Elixir - et funktionelt, parallelliseret sprog afviklet i samme miljø som Erlang" + +[TypeScript]: https://da.wikipedia.org/wiki/TypeScript + "TypeScript - en udvidelse af JavaScript til at håndtere statiske datatyper" + +[Python]: https://da.wikipedia.org/wiki/Python_(programmeringssprog) + "Python - dynamisk multi-paradigme-sprog (imperativt, funktionelt, objektorienteret m.m.)" + +[JavaScript]: https://da.wikipedia.org/wiki/JavaScript + "JavaScript - dynamisk multi-paradigme-sprog (imperativt, funktionelt, objektorienteret m.m.)" + +Blandt "rigtige" programmeringssprog +(dvs. sprog som afvikles direkte i hardware - +ofte anvendt til store og komplekse opgaver, bl.a. operativsystemer) +er det åbne og uafhængige sprog [Rust] ekstremt [værdsat], +mens klassiske [C] og [C++] er [populære]. + +[Rust]: https://da.wikipedia.org/wiki/Rust_(programmeringssprog) + "Rust - multi-paradigme-sprog (funktionelt m.m.) med robust hukommelseshåndtering" + +[C]: https://da.wikipedia.org/wiki/C_(programmeringssprog) + "C - multi-paradigme-sprog (imperativt og struktureret)" + +[C++]: https://da.wikipedia.org/wiki/C++ + "C++ - multi-paradigme-sprog (imperativt, struktureret og objektorienteret) baseret på C" + +Blandt "beskyttede" programmeringssprog +(dvs. sprog som afvikles i en virtuel maskine - +ofte anvendt til større opgaver ovenpå operativsystemer) +er det åbne og uafhængige sprog [Clojure] [værdsat], +og [Java] er [populært]. + +[Clojure]: https://en.wikipedia.org/wiki/Clojure + "Clojure - funktionelt sprog baseret på Lisp afviklet under Java" + +[Java]: https://da.wikipedia.org/wiki/Java_(programmeringssprog) + "Java - multi-paradigme-sprog (objektorienteret m.m.) afviklet i en virtuel maskine" + +Blandt opmærkningssprog +(dvs. sprog til at strukturere og annotere - +ofte anvendt til dokumentation og præsentation) +er [Markdown] [værdsat (som asynkront samarbejdsværktøj)], +mens [HTML] og [CSS] er [populære (i Stack Overflow's survey)]. + +[Markdown]: https://en.wikipedia.org/wiki/Markdown + "Markdown - opmærkningssprog primært til læsevenlig redigering af hypertekst" + +[HTML]: + "HTML - opmærkningssprog primært til strukturering af hypertekst i web-browsere" + +[CSS]: + "CSS - opmærkningssprog primært til præsentation af hypertekst i web-browsere" + +[værdsat]: https://survey.stackoverflow.co/2023/#section-admired-and-desired-programming-scripting-and-markup-languages + "Stack Overflow udvikler-survey 2023 - eftertragtede og værdsatte sprog" + +[værdsat (som asynkront samarbejdsværktøj)]: https://survey.stackoverflow.co/2023/#section-admired-and-desired-asynchronous-tools + "Stack Overflow udvikler-survey 2023 - eftertragtede og værdsatte asynkrone samarbejdsværktøjer" + +[populære]: https://www.tiobe.com/tiobe-index/ + "TIOBE Indeks - populære programmeringssprog" + +[populære (i Stack Overflow's survey)]: https://survey.stackoverflow.co/2023/#section-most-popular-technologies-programming-scripting-and-markup-languages + "Stack Overflow udvikler-survey 2023 - populære sprog" + +## Faldgruber + +Et programmeringssprog kan være *politisk* ladet. +Eksempelvis er [C#] udviklet af Microsoft +som en (mindre) del af et [storstilet] forsøg på at [udmanøvrere] [Java], +og selvom det principielt kan afvikles andre steder +anvendes det i idag i praksis mest på Microsofts egne systemer. + +[storstilet]: https://www.cnet.com/tech/tech-industry/microsofts-holy-war-on-java/ + "artikel om Microsofts hellige krig imod Java" + +[udmanøvrere]: https://en.wikipedia.org/wiki/Visual_J%2B%2B#Sun's_litigation_against_Microsoft + "Retssag imod Microsoft om bevidst forvanskning af Java" + +Et programmeringssprog kan være *kulturelt* ladet. +Eksempelvis er udvikler-kulturen omkring [Java] præget +af en stærk interesse for [enterprise services], +som smitter af på hvordan også kollektivt orienterede kodebiblioteker organiseres, +så sproget i praksis mest anvendes i hierarkisk organiserede grupper +(sjældent indenfor moderne agil programmering). + +Et programmeringssprog kan være *sikkerheds*ladet. +Eksempelvis har [PHP] historisk haft mange sikkerhedsfejl +og selvom selve sproget er blevet strammet op i nyere tid +har bl.a. en udviklerkultur præget af pragmatikere gjort +at der fortsat i dag løbende registreres [mange sikkerhedshuller] i PHP-kode. + +[C#]: https://da.wikipedia.org/wiki/C_Sharp + "C# - multi-paradigme-sprog (objektorienteret m.m.) afviklet i en virtuel maskine" + +[PHP]: https://da.wikipedia.org/wiki/PHP + "PHP - dynamisk multi-paradigme-sprog (imperativt, funktionelt, objektorienteret m.m.)" + +[mange sikkerhedshuller]: https://en.wikipedia.org/wiki/PHP#Security + "PHP sikkerhedsproblemer" -- cgit v1.2.3