Posts Tagged ‘programmering’

Swapping variables

Thursday, July 15th, 2010

Swappa variabler är ju något som kan vara användbart i flera sammanhang. Det klassiska exemplet brukar ges med att man har ett värde i A och ett värde i B (som kan vara likadant men inte nödvändigtvis) och sedan gör man följande operationer:

C = A
B = A
A = C

Detta sätt kräver dock extra datalagring i form av variabeln C och kan eventuellt undvikas med diverse trick. Det man bör tänka på är dock att vissa av tricken inte är helt rumsrena och har problem i vissa fall, antingen när någon av A eller B är noll eller om A = B.

Variant med addition/subtraktion:

A = A + B
B = A – B
A = A – B

Man kan vara uppmärksam på vad som händer när talen A eller B närmar sig MAX_INT det största talet som kan hanteras. När A eller B är > MAX_INT/2 kommer man få en överflödniong vid additionen och ett lån vid subtraktionen. På de flesta system fungerar detta men inte nödvändigtvis alla, det finns säkert system som är trasiga i den aspekten.

Farlig variant med XOR:

A = A ⊕ B
B = B ⊕ A
A = A ⊕ B

Men, det här blir inte så bra om A = B och det bör man i så fall försäkra sig aldrig händer.  Sker det förstörs innehållet i båda registren. Därför bör man villkora att man inte utför operationen om båda registren innehåller samma värde. Det innebär dock fler operationer.

Muahaha

World domination in 12 easy steps.

SAP? ZAPP!

Tuesday, January 12th, 2010

Först var det försäkringskassan som behövde ett nytt ekonomisystem. Man valde SAP och efter att ha spenderat 10 miljarder svenska kronor har man ändå inte fått det system man ville ha eller de funktioner man egentligen behöver för att kunna sköta sitt uppdrag ordentligt med ett bra IT-stöd.

Sedan har vi försvaret som vill införa ett gemensamt ekonomisystem och man väljer SAP. Man budgeterar för ungefär 500 miljoner kronor men när projektet når 1,1 miljarder, alltså 120% över budget ja då börjar man reagera. 600 miljoner över budget är inte småpotatis för ett ekonomistöd.

Det tredje exemplet är Axfood som tillverkar Müsli och andra livsmedel. Man ser sig om efter ett nytt ekonomisystem och hittar då… SAP – budgeten för systembytet läggs till 600 miljoner kronor och det skall ta mellan fem och sex år att genomföra.

Av de här tre så är nog troligen de enda som kommer kunna använda sitt system Axfood.

SAP är konstruerat för tillverkningsindustri och att anpassa det till försvarsmaktens krav och uppgifter eller försäkringskassans något unika verksamhet lär inte vara enkelt.

Med de här pengarna som det handlar om är det möjligt att starta och driva hela programmerarföretag som specialskriver programvara som passar perfekt för verksamheten. Men det är inte rätt väg politiskt utan offentlig verksamhet skall bara agera beställare.

Smaka på pengarna igen, det har kostat över 10 miljarder för försäkringskassan. Om man räknar på att ett normalt företag behöver fakturera ca 3 miljoner för att ha råd med en kompetent programmerare så kan man på 10 000 miljoner ha hundra man i 30 års tid. Eller tre hundra man i tio års tid. Axfood kunde ha anställt 40 programmerare i fem år för att genomföra sitt projekt.

Hur i hela friden kan detta vara ekonomiskt och politiskt korrekt?