Inlägg

Inlägg som Squall Leonhart har skrivit i forumet
Av Squall Leonhart
Skrivet av evil penguin:

Om det inte hade funnits några radbrytningar så skulle väl allt ha varit på en rad, alltså finns det åtminstone LF, kanske även CR?

Jag tycker allt tyder på att felet ligger i att du inte filtrerar bort CR och/eller LF när du skapar MACen

Jag tackar och bockar!
Jag hade misstolkat den biten och tog bara bort den sista radbrytningen. Då resten av filens innehåll var godkänd av banken så hade jag fått det till att övriga radbrytningar kunde vara kvar men att det inte fick finnas en "tom" radbrytning (som det exempelvis alltid blir när man skapar en textfil i Linux).

Fixade det med:

$test = str_replace (array("\r\n", "\n", "\r"), '', $test);

Av Squall Leonhart

Normaliseringen har jag löst genom att ta bort alla möjligheter att ha ÅÄÖ (eller andra specialtecken). Så funktionen
mb_check_encoding() rapporterar ASCII, vilket jag tolkar som att det ska vara rätt. Stoppar jag in ett Ä så rapporterar den funktionen UTF-8.

Jag kanske feltolkar informationen, men för mig ser det ut som att när en fil skapas via PHP så finns det ingen CRLF i den om inte PHP_EOL anges.
Skapar jag en fil och testar med cat -A på den så ser resultatet ut såhär:
https://tenton.se/graphic/Screenshot_20220323_142444.png
$ = Linux-radslut
Det borde vara ett $ på sista raden också om CRLF skulle ha funnits.

Tack i alla fall för förslag

Av Squall Leonhart

HMAC-sigill som aldrig godkänns (PHP)

Jag tror att jag behöver andra ögon på det här problem.

Så här är läget:
Vi har ett fixat ett eget system för autogirohantering som bättre passar oss än de generella affärssystemen. Den biten funkar utmärkt när vi kört ett längre test med manuell uppladdning till banken via internetbanken.
Så nästa steg i projektet var att automatisera överföringen fram och tillbaka med SFTP och allt där funkar också utom en detalj, HMAC-sigillet.

Jag håller på att bli tokig av leta information över vad jag kan ha gjort för fel och i just denna fråga är inte Bankgirot så behjälpligt heller. Så jag får testa mig fram och invänta svar på varje enskild testfil som kan ta evigheter och oftast innehåller följande:

"Anledning till att filen har makulerats: Filen är sigillerat med rätt nyckel men något i filen stör beräkningen av sigillet."

Filens sigill skapas såhär:

Citat:

$test = "00220322HMAC
0120220317AUTOGIRO 2222220001111111
0300011111110000000003074887
0300011111110000000009198973 ";

$key = "1234567890ABCDEF1234567890ABCDEF";
$key = hex2bin($key);

file_put_contents('BFEP.IAGZZ.K0222222.D220322T175608.txt', $test);

$kvv = strtoupper(hash_hmac('sha256', '00000000', $key));
$kvv = substr($kvv, 0, 32);

$sig = strtoupper(hash_hmac('sha256', $test, $key));
$sig = substr($sig, 0, 32);

$string = "99" . date('ymd') . $kvv . $sig . addSpace(8);

file_put_contents('BFEP.IAGZZ.K0222222.D220322T175608.txt', $string, FILE_APPEND);

addSpace = funktion för att fylla ut rader med mellanslang
$kvv = verifiering att rätt nyckel används med godkänt resultat från Bankgirot
$sig = sigillet för innehållet som då inte är godkänt
$string = datum, verifiering och sigill ihopslaget

Referenserna jag använt mig av för detta:
https://www.bankgirot.se/globalassets/dokument/tekniska-manua...
https://www.bankgirot.se/globalassets/dokument/tekniska-manua...

Jag har testat med onlinebaserade HMAC-generatorer och får exakt samma resultat som det som skapas från PHP:s hash_hmac() (eller hash_hmac_file() ) med testnyckeln.
Jag har testat att använda radslut från Linux och Windows samt med och utan CRLF.
Jag har frågat Bankgirot om exempelfiler som har ett korrekt uträknat sigill men det är den enda typen av exempelfiler de inte har.

Det ska vara en massa tomrum och sådant i filen då alla rader ska vara 80 tecken långa och just denna bit har jag dubbelkollat att det inte är för mycket eller för lite mellanslag någonstans (vilket jag ser försvinner här, men det spelar mindre roll).

Vi kör med en LAMP-server och Swedbanks SFTP-som detta skickas till misstänker jag kör Windows då den saknar Rsync för överföringen men att SCP funkar.
Testöverföringarna har nu gjorts med Filezilla.
Filer som förs över försvinner efter relativt kort stund men jag har inte kunnat se något uppenbart som Filezilla skulle kunna ha gjort under överföringen. När det går på automatik så förs det över via SCP.

Nu är väl detta långt nog men jag försöker få med så mycket information som möjligt. Finns det något uppenbart jag missat eller har någon kanske till och med pyssla med HMAC-sigill för överföring till banken?

Tacksam för svar!

Av Squall Leonhart

Ja, det var intressant. PDF:en känner jag med mig att jag skummat förbi så den har jag helt klart missat. Vad som egentligen gjort att jag lagt mer energi på att jaga support på banken är att en kvinna jag pratat med på Bankgirot, vänligen men bestämt hävdade att bankgirot inte alls tillhandahöll tjänster och funktioner till att skapa medgivanden och betaluppdrag. Att deras roll mest handlade om att standardisera delar av kommunikationen men att det var respektive banks uppgift att bestå med tjänsterna.

Det lönar sig ibland med fler ögon på ett problem när man börjat bli fartblind.

Tackar!

Som onödigt vetande har vi Pagero Autogiro Pro tillsammans med respektive tillägg för kommunikation och presentation. Kommunikationsdelen försvinner vid årsskiftet och den nya lösningen skulle innebära antingen att vi startar på ny kula med ett onlinesystem, eller fortsatte använda Autogiro Pro men manuellt hanterar alla filer som ska laddas upp och ner via deras onlinetjänst. Så mer handpåläggning och en betydligt dyrare licenskostnad.

Av Squall Leonhart

Någon som jobbat med affärssystem och autogiro?

En förmodligen väldigt udda fråga, men finns det någon här som jobbat med utveckling av affärssystem och specifikt autogirokommunikation (medgivanden, dragningar, avslut o.s.v)?

Frågan ställs därför att jag är less på att ringa runt halva landet för jaga någon som inte vet något.
Vi har ett litet dilemma på företaget där nuvarande leverantör av autogirolösning kommer släcka ner det system vi har idag vid årsskiftet. Den leverantören har bara en lösning på det problemet och det är att gå över till deras onlinelösning istället, men vi tappar då all historik på befintliga kunder, vilket inte funkar när man har avtalsbundna kunder sedan 90-talet med olika avtal och kostnader.
Detta problem nämndes för Swedbank (den bank vi har för autogiro) på ett möte om något helt annat egentligen och där kläckte någon person ur sig:
"Ja men det kan ni ju lösa själva om ni har folk som programmerar. När ni gjort det är det bara att säga till så ändrar vi från BGLink till Övrigt som kommunikationsväg"
Ungefär där tog denna persons kunskaper slut så jag har sedan dess fått sitta med femtioelva olika supportavdelningar på både Swedbank och Bankgirocentralen samt Open Banking via Swedbank. Ingen på dessa avdelningar har kunnat ge mig något konkret om just autogiro, utan flyttar bara över frågan till någon annan eller avslutar med att de inte kan sådant.
Jag har även pratat med folk på Visma då vi har bokföringen via dem, men deras lösning var att man skickar arbetet till tredje part när det gäller autogiro och det är inte riktigt vad vi behöver.

Kommunikationen i befintligt system görs via textfiler som skickas till hemlig ort via BGLink, så det borde i praktiken vara enkelt att lösa med egna system bara man får reda på vart det ska skickas och hur de ska se ut.

Bankgirocentralens utvecklingsportal var till en början ett bra utgångsläge men efter samtal med dem kom det fram att deras referensverk är tydligen mer generellt hur man KAN göra, men att den slutgiltiga biten fortfarande ligger på banken där ingen vet något.

Varför orkar jag lägga ner denna tid när det finns färdiga system?
Tja, kul kanske? Det handlar lite också om att nuvarande system bygger på så enkla grejer (MSSQL/Access) att all gammal information är lätt att konvertera för eget bruk, men vi är inte hjälpt av det om framtida lösningar måste flytta till en annan platform.
Sen slipper jag licenshanteringen av ytterligare ett program.

Aja, mycket svammel.
Jag är tacksam för eventuellt svar som leder någon vart, även om förhoppningarna är små.

Av Squall Leonhart

Jag provade det utan lycka. Däremot upptäckte jag att fler komponenter i systemet uppförde sig konstigt (t.ex att tjänstehanteraren ville öppna och stänga oändligt många fönster av IE) så antagligen har det hänt något under uppgraderingen från Windows 7 till 10 så det blir till att göra om det när jag känner för det.
Tack i alla fall.

Av Squall Leonhart

Redan provat. Det enda som händer är att Windows installerar om drivrutinerna och ansluter direkt med samma meddelande.

Av Squall Leonhart

Windows 10 är tveksam kring uppkopplingen

Se följande bild:

https://tenton.se/uppkoppling.png

En av firmans datorer har uppkoppling så det räcker men den rapporterar olika i statusfält och Nätverk och delningscenter.
Det ställer för det mesta inte till något för personalen men i och med att den inte anser att det finns någon uppkoppling enligt Nätverk och delningscenter så väljer den också fel regler för brandväggen. Den väljer "offentligt nätverk" och det går inte att ändra på då det "inte finns någon uppkoppling", vilket gör att den struntar i några GPO-regler kring brandväggen som i sin tur strular till det för vissa administrativa program.

Drivrutinerna för nätverkskortet är nyaste och likaså firmware för BIOS. Windows 10 uppgraderat från Windows 7.
Det är också bara en dator av flera som håller på så här men det säger nog inte så mycket då det är Dell (samma modellnummer men utan garanti på samma innehåll)

Förslag på åtgärder?

Av Squall Leonhart

Det är det som är det mest spännande här. Vår uppkoppling utåt går via stadsnätet och likaså den interna anslutningen mellan fastigheterna, ändå har vi haft problem med vardera utan att det andra är påverkat.
Jag anser i alla fall att vi utesluter åtminstone det ena potentiella felet (problem utåt) med en lokal server. Sen återstår den andra faktorn, att jag har två chefer som hellre köper en maskin än hyr en oavsett om det gäller håltagning i väggarna eller snöskottning med hjullastare. =/

Lösningen blir nog en DL380 med dubbla E5, en massa RAM och virtualisering. Även om det blir en utgift på 50-60 000 så är det lättare att motivera det än låt säga 2000-3000 spänn i månaden.
Om inte annat får jag en trevlig utvecklingsmöjlighet vilket kan löna sig på eventuella CV:n

Tackar för alla förslag!

Av Squall Leonhart
Skrivet av jocke92:

Själv är jag lite allergisk mot att koppla in så att passagen är beroende av servern, men blir ett måste med många larm-områden och vissa andra funktioner. Vilket system är det? Är det bara så att man larmar allt eller inget är en analog koppling bäst och då fungerar oftast allt utom ändringar utan servern. Ingen säkerhetsinstallatör, men brukar prata med mina kollegor.

Passersystemet är inte beroende av servern som så. Alla inställningar såsom öppettider och behörigheter görs såklart i servern men också kundernas giltighetstider. Alla förändringar synkas med huvudenheterna i respektive fastighet hela tiden men det har hänt att anslutningen mellan huvudpunkten och fastighet X strulat, vilket innebär sura kunder.
Som jag nämnde tidigare att fiberägaren av stadsnätet är inte särskilt medgörlig när något händer. Med en molntjänst blir vi inte bara beroende av att alla fastigheter har fungerande anslutning till huvudknutpunkten utan att huvudpunkten har fungerande anslutning ut på nätet.

Vi hade t.ex ett långvarigt problem med att framförallt en av fastigheterna tappade anslutning hela tiden. Jag slängde ihop ett bash-script som pingade ena servern med 3 sekunders mellanrum och noterade tiderna när anslutningen var nere. Samtliga fastigheter hade avbrott mot huvudpunkten lite då och då men en utmärkte sig med 20-30 avbrott per dag på 5 minuter vardera. Jag ringde och påpekade detta flera gånger men det var aldrig något fel som vanligt. När jag till slut fick prata med en tekniker istället för växeltelefonist som ska funka som en mellanhand så visade det sig efter många och men att de hade aktiverat någon säkerhetsgrej i fiberkonvertrarna som stördes av just Apple-grejer och stängde ner uppkopplingen i 5 minuter varje gång. Exakt vad det var kunde han inte säga då allt verkar vara hemligstämplat där men han stängde av funktionen och uppkopplingen blev genast stabilare.

När en sådan sak händer är det alltså bara 1 fastighet som drabbas men med en molnlösning så drabbas samtliga fastigheter. Det behövs inte några långa avbrott för att få sura kunder. =/

Av Squall Leonhart

Andra har problem med datorer som strejkar efter uppdatering och här sitter jag med ett tjugotal firmadatorer som ska uppgraderas från 7 till 10 där ungefär hälften tycker att 0% är ett rimligt tal att stå på några timmar.

Av Squall Leonhart

Det finns ett par anledningar till att vi håller hårdvaran själv. En anledning är att firmaägarna är allergisk mot att hyra saker/vara beroende av andra.
En annan mer tekniskt viktig anledning är att låssystemet är beroende av en lokal server för att ha någon tillförlitlighet. Skulle vi vara beroende av en leverantör på orten så är vi också beroende av stadsnätsägaren (o)vilja att tillhandahålla en stabil uppkoppling.

Virtualisering har jag länge funderat på. Det är väl egentligen bara den initiala kostnaden av hårdvaran som avskräckt något. Ska räkna på det också!

Av Squall Leonhart

Rådfrågning om hårdvaruval till företagsservrar

I dagsläget har vi 3 äldre Dell-servrar på jobbet som går på knäna och måste bytas ut. Delvis även på grund av licens/support. 2 st Windows Server 2008 och 1 st Ubuntu Server.
De tyngre posterna som körs på ena är Visma SPCS och Pagero Autogiro och den andra kör Apache + PHP + MySQL, kameraövervakning och e-post.
Den tredje har egentligen bara rullat på som domänkontrollant med active directory.

Tanken var att dessa 3 ska ersättas med 2 nya och kanske behålla åtminstone rackservrarna till att avlastning.
En server med Windows Server 2016 som får fortsätta med samma jobb som ovannämnda och en Linux-server som får fortsätta med åtminstone LAMP-delen. Övervakning och e-post funderade jag på att lägga på de gamla servrarna. Alternativt lägga MySQL på en egen och låta övervakning och e-post vara på den andra, men det råder delade meningar om man ska separera MySQL från Apache/PHP.

Hursom, RAM vill ju alla servrar ha tonvis med så jag tänkte sikta på minst 32 GB per server, men processor är det knivigare med. För likvärdiga pengar kan jag få t.ex E3-1230 v5 eller E5-2620 v4. Två olika generationer och rätt så stor skillnad i clock, men E5:orna kan man å andra sidan köra dubbla CPU och därmed 8+8 kärnor (16+16 trådar) mot E3:an som då har 4 kärnor (8 trådar).
Sen när det gäller lagring till detta så finns det lite att välja på och jag var lite sugen på SSD i åtminstone Windows-servern då Visma alltid sorterar om företaget när någon användare stängt av datorn/blivit utloggad utan att stänga Visma på rätt sätt. Vilket tar tid och personalen får se ut som fåntrattar medan kunderna undrar varför de bara står där och väntar. Å andra sidan vet jag inte om det känns tillförlitligt med SSD i en server.

Det jag läst mig till är väldigt spretigt. Vissa säger att många kärnor till en HTTP-server är värdelöst med motivering att snabbheten kompenserar genom att avsluta förfrågningar snabbare. Andra säger att processorn ytterst sällan är flaskhalsen utan att RAM-minnet tar slut före processorn. En tredje skara säger att PHP åtminstone har varit dålig på att nyttja flera kärnor men det brukar vara information från runt 2010-11, det kanske inte har förändrats så mycket till PHP 7?
De tester jag hittat med PHP ~5.6 brukar det vara lite skillnad mellan kärnor och clock men det är ju å andra sidan syntetiska tester jag hittat.
När det gäller lagringen hittar jag både folk som säger att det är skitsamma med SSD i en server, att SAS/SATA går lika bra, och folk som säger att SSD:n kommer dö mycket snabbare än vanliga roterande diskar, framförallt om man kör SQL på dem. Andra säger att SSD är det bästa som uppfunnits sedan hjulet, även i servrar.

Det finns risk att jag spekulerar iväg för mycket, så är det någon som har åsikter kring detta? Framförallt något som är baserat på aktuell information eller egen erfarenhet?
Clock eller kärnor (flera CPU)?
SSD eller mekaniskt?

Sidan vi har utåt mot kunderna har ett par tusen förfrågningar åt gången så det är inte något herrejösseprojekt, men personalen jobbar mot baksidan av samma system och det händer idag att det upplevs lite trögt ibland. På Windowssidan är det framförallt omsortering och journalutskrifter i bokföringen som går riktigt tungt och drabbar alla klienter. Visma har dock inget vettigt svar på vad som föredras där utan säger bara "en vanlig PC brukar räcka" när jag pratat med tekniska supporten.

Aja, det här blev långt nog nu.

Tacksam för åsikter!

Av Squall Leonhart

Ny arbetsdator

Som vanligt finns det alltid för mycket att välja på med för små skillnader.
I dagsläget har jag en Dell E7440 som användes flitigt men numera börjat tjafsa mer än jag orkar lägga ner energi på. Jag tänkte då att jag bara köper en ny Dell så jag kan fortsätta med dockningsstationerna som jag spridit omkring mig på jobbet men där fick jag nobben då Dell lagt ner E-port-systemet och övergått till USB-varianter. Jag är dock medveten om att Precision-datorerna fortfarande nyttjar E-porten men jag vill inte gärna byta till en dator som dels kostar det dubbla och dels väger mycket mer.

Därför har jag tittat på konkurrenterna och fastnat för denna:
https://www.dustin.se/product/5010897715/elitebook-850-g3
Den hade dock fått lite klagomål på att undersidan består av ett enda stort plastlock som täcker ALLT (inklusive batteri) och krävde silkesvantar och våld för att tas lös om man behövde komma åt något. Skärmen hade också fått lite klagomål rent bildkvalitétsmässigt. Å andra sidan verkar HP kört med samma dockning till flera generationer av datorer.
Lite drygt också att hitta jämförelser med just HP då de använt samma namn under flera generationer men bara lagt till G2, G3, G4 och så vidare.

Jag har även tittat lite smått på denna som alternativ:
https://www.dustin.se/product/5010992799/thinkpad-t560
Där verkar dock många vara överens om att byggkvalitén inte längre motsvarar priset. Att det börjat titta in plastlösningar där det tidigare varit metaller och liknande. Jag har heller ingen större erfarenhet av Lenovo annat än några få klient-datorer på jobbet samt tidigare generationer när de nätt och jämt bytt ut IBM-loggan. Jag vet också att åtminstone tidigare så var det problem med Linux-drivrutiner för delar av hårdvaran i åtminstone T460-modellerna.
Skärmen här skulle inte vara någon höjdare i solljus, men det är väl ingen skärm.

Ovannämnda är bestyckade med Skylake och där har jag läst mig till rätt så delade meningar om det är värt mellanskillnaden för att få Kabylake istället. Vissa säger att prestandaskillnaden är försumbar medan andra säger att batteritiden blir bättre.
Om jag kan stå ut med en USB-lösning på dockningen så har Dell denna med Kabylake:
https://www.dustin.se/product/5011012154/latitude-7480
eller denna om man tittar utanför Dustins "professionella" avdelning
https://www.dustin.se/product/5010988390/xps-13-infinity-9360
Samtidigt så innebär USB-dockning att datorn även kan laddas med USB, vilket kan underlätta.
Går jag ner till den billigare Latitude 5000-serien så verkar jag också få likvärdig hårdvara men betydligt mer plast.

Så frågan efter allt detta är väl egentligen: Vad är ett bra/rimligt/vettigt val? (hur långt är ett snöre, jag vet...)

Dockning är lite av ett måste och helst 4G-uppkoppling då jag löser vissa saker på jobbet när jag är långt ifrån civilisationen.
Jag använder datorn i huvudsak till utveckling av både webblösningar och Android-appar.
Bara Linux Kubuntu så jag bryr mig inte om vilken Windows-version som ingår.

Jag kan inte sätta något pris då det är företaget som betalar. Självklart tycker de att billigare är bättre men samtidigt är de relativt mån om att jag har bra grejer.

Av Squall Leonhart

Jag gjorde ett halvhjärtat försök med Dells support men de var inte så villiga att hjälpa om inte deras ePSA visade ett fel på disken, vilken det såklart inte gör. Jag behövde ett felmeddelande med verifieringskod som visar att SSD:n är dålig.
I skrivande stund har jag fått ett nytt fel som dyker upp varje gång skärmlåsningen går igång. Jag blir uppmanad att låsa upp datorn med loginctl unlock-sessions för att skärmlåsningen kraschat.

Hittar ingen firmware för SSD:n så jag har tagit upp problemet med ena chefen och han tyckte att en ny dator var mer värt än att lägga ner tid på felsökning och flera uppstarter varje dag.
Köper kanske en ny då och ser om det går att rädda den här sen.

Av Squall Leonhart

Den hade A03 installerad. Uppgraderade till A20 och installerade om 16.10 efter att ha kollat checksumman på ISO-filen samt kontrollerat live-USB:n. Fortfarande samma uppförande. Känner att det är dags att börja ge upp nu =/

Av Squall Leonhart

Ska kolla vid nästa start. Det känns dock lite långsökt när jag kört med Kubuntu sedan datorn var ny och nu successivt börjat tjafsa.

Av Squall Leonhart

Dell Latitude E7440 som tjafsar under uppstart

Under den senaste tiden har min 2-3 år gamla jobbdator börjat bråka riktigt ordentligt. Uppstarten är en plåga och det kan krävas försök under 20 minuter med omstarter innan den startar normalt.
Jag kör Kubuntu på den och resultaten är slumpade varje gång jag startar den. Första försöket funkar aldrig och alla försök därefter resulterar i att åtminstone Grub funkar felfritt man allt därefter.
Första tanken var SSD:n men enligt både Dells egna kolla-hårdvaran-program som man kommer åt i POST-läget och SMART-status och samt badblocks (open source-program) säger att SSD:n mår jättebra. Dells programvara gör även ett längre test på RAM-minnena likt memtest86 samt en massa andra tester på hårdvaran som ger positivt resultat. Vilket såklart frustrerar mig när inget fel hittas.

Jag har testat med formatering och ominstallation med Kubuntu 14.04, 16.04 och 16.10 med exakt samma resultat.

Lite kort kan följande hända under uppstart (allting efter att Grub laddats):

* Svart skärm när som helst
* Svart skärm med frusen markör
* En lång radda med fel
* En uppstart som ser normal ut men väl inloggad så är filsystemet i läsbart läge
* Inloggning som låser datorn eller helt enkelt skickar tillbaka mig till inloggningen
* Busybox med och utan monterade partitioner
* Segmenteringsfel eller kernel panic

Kör jag fsck så hittar den såklart fel överallt.

Mina funderingar är förstås om det ändå skulle kunna vara något hårdvarufel som inte märks av när felsöknings-programmen körs?
Tänkte att jag kunde lägga lite energi på detta innan jag lägger fram önskemål om en ny dator till chefen.

Datorn kör med mSATA så jag har inga liggandes att testa med och en vanlig SATA-disk ryms bara om jag hittar en som är max 7 mm tjock.
Original-SSD från Lite-on som jag partitionerat med 256 MB EFI i början och sedan testat lite olika konfigurationer på resten av disken.

För enkelhetens skull har jag tagit några bilder på hur det kan se ut när jag fått något konkret på skärmen:

http://square-one.se/friggebod/bild1.jpg

http://square-one.se/friggebod/bild2.jpg

http://square-one.se/friggebod/bild3.jpg

Tacksam för förslag!

Edit: Ville bara tillägga att väl inloggad funkar den okej. Ibland kan program krascha lite spontant, viloläge/vänteläge/låst skärm kan få den att bli obrukbara och en massa omstarter krävs.

Av Squall Leonhart

Varför skriver ni "kapacitator" om kondensator? :S

Av Squall Leonhart
Skrivet av Ozzed:

Sen det där med kokande groda tror jag inte på... PC-marknaden i sin helhet är fortfarande sårbar och på nedgång, så de måste leverera bra grejer. Blir det för instängt kommer utvecklare dra öronen åt sig, och utvecklare är mer "hoppetossor" än generella användare så det gäller att hålla dem på gott humör.

Fast de flesta utvecklare vill ju kunna leva på sitt arbete. Det ska mycket till innan man överger den största målgruppen av alla, framförallt när man pratar om företagsapplikationer (vilket även artikeln handlar om). Även om systemet är instängt kommer utvecklare välja det system som genererar störst målgrupp. Jämför med Playstation 2 där man spydde galla över hur drygt det var att utveckla mot, ändå har det bland det största spelbibliotek som existerat.
Kanske att man väljer webb/molnlösningar men man överger sällan den största potentiella målgruppen som utvecklare om man vill kunna leva på sin produktion.
Sen tänkte jag på ett annat exempel och det är just dig själv. Musiken som du skapat lägger du upp på Spotify och som mp3-format. Sistnämnda kunde du ändrat till Ogg Vorbis som licensmässigt är bättre men mp3 stöds överallt istället.

Bara min åsikt kring utvecklardelen då förstås.