Feb 072016
 

Du har kanske hört talas om begreppet API. Med ett API kan du fråga saker, lagra data och utföra saker.
Till exempel om du vill veta vilka Bring uthämtningsställen som är närmast postnummer 12345 kan du ställa en fråga och få ren data tillbaka.
Ett annat exempel är att hitta radiosändningar från Sveriges radio där ett speciellt lag förekommer.

Ett API kan också vara skyddat av ett loginkonto för att skydda dina data.
Till exempel har Twitter ett API som du kan använda för att skapa inlägg mm.
Alla stora webbsiter har ett API för att sedan bygga ett gränssnitt ovanpå det.
En del tillhandahåller sitt API helt gratis men av praktiska skäl begränsar hur många frågor du får ställa per tidsenhet.
Med ett API som är gratis att använda kan alla programmerare skapa tilläggstjänster som gör att ursprungstjänsten blir mer populär.

Sedan har vi de som håller hårt i sitt API och sin data. Här är Garmin Connect en sådan aktör. Se här:
”The Garmin Connect API is available for a one-time licensing fee of $5,000 for approved developers only.”
Det betyder i klartext att det inte räcker att du betalar, du kommer också att få avslag om det du vill använda APIet till inte faller Garmin i smaken.

Garmin skyddar sin egendom hårt. I detta fallet är deras egendom den GPS-data som du laddar upp till ”ditt” konto från ”din” GPS-klocka.
GPS-klockan är ingen universalhårdvara, den är att betrakta som en tjänst som Garmin tillhandahåller, och den är hårt knuten till Garmin connect.

Så vad skulle jag göra om Garmin Connect öppnade upp sitt API?
Först skulle jag göra ett backupprogram så jag har en lokal kopia av ”mina” löprundor i en sökbar databas.
Därefter skulle jag ladda upp alla löparpass som jag har manuellt inskrivna i en databas. Ladda upp data från andra tjänster så jag har allt samlat på Garmin Connect för att ha en komplett datasamling. Ladda upp vikt från min Beurer våg. Och skapa ett lapptäcke med alla GPS spår jag sprungit för att hitta nya områden att upptäcka.

Garmin connect är en toppenbra tjänst, men den skulle bli bra mycket roligare om det fanns tilläggstjänster.

På jobbet använder vi heiaheia.com för att inspirera varandra att röra på oss mer.
Där går det att skriva in träningsdata men även ladda upp data från Polar, Fitbit, Microsoft Health, Beddit. Men det går inte att utbyta data med Garmin Connect.
Givetvis har heiaheia ett öppet API. Hade Garmin gjort lika dant hade jag kunnat utbyta data mellan de två tjänsterna.

Patchar – snabblagningar

 Webbutveckling  Kommentarer inaktiverade för Patchar – snabblagningar
Nov 132015
 

heart-48522_1280Tänk dig att du är mjukvaruutvecklare och har en gedigen kedja med hur du hanterar uppgifter, utvecklar kod, dokumenterar, granskar, testar, levererar.
Det är ett bra sätt att jobba men det tar tid från uppgift till leverans.
Senaste leveransen hade, trots alla tester, ett litet fel i sig och nu går det inte att köpa något på siten, detta måste fixas nu.

Vi tar den enkla vägen och gör en patch – en snabblagning.
När vi hittat var felet är tar vi en kopia av filen som ska ändras.
Vi åtgärdar felet, ser om det fungerar lokalt och skapar en patch.

Continue reading »

MediaWiki – Din egen Wiki

 Nyheter  Kommentarer inaktiverade för MediaWiki – Din egen Wiki
Nov 132015
 

Du känner säkert till Wikipedia. Skulle du vilja h en egen Wikipedia för dina egna texter?
Mjukvaran som Wikipedia använder heter MediaWiki, och du kan också använda den.

Webserver (LAMP)

Du behöver en webserver som kör PHP och en databasmotor.
Tänkte du köra mediawiki på ett webhotell såsom Loopia så är chansen stor att de har en snabbknapp för att sätta upp detta.
Vill du däremot ha lite mer kontroll kan du göra detta själv.

Häng med så beskriver jag hur man gör.

Continue reading »

Uppgradera till OS X El Capitan

 MacOS, Nyheter, Operativsystem  Kommentarer inaktiverade för Uppgradera till OS X El Capitan
Okt 172015
 

Klicka på äpplet uppe till vänster, välj ”App store..”, sök efter ”El Capitan”, Installera.
Jag vet inte hur mycket den laddade ned men den sägs behöva 6Gb.
Efter uppgraderingen är allt som tidigare. Inga synliga ändringar.

De program jag har installerade fungerade, utom PHP Storm. Där säger OS X att det behövs en äldre Java och det ges en länk att fixa detta på en gång.
Efter Java installationen fungerar PHP Storm utan problem.

Jag uppgraderade på en Core2 dator som är många år gammal. Från snabba Yosemite 10.10.5 till lika snabba El Capitan 10.11.

 

Uppgradera till Windows 10

 Nyheter, Operativsystem, Windows  Kommentarer inaktiverade för Uppgradera till Windows 10
Okt 172015
 

Idag uppdaterade jag Windows 8.1 till Windows 10. Det är för tillfället en gratis uppgradering så jag passade på att skapa en DVD skiva och även uppgradera datorn.
Svensk information och nedladdningssidan.

Jag använder alltid de senaste versionerna av Ubuntu, OS X, Windows. Enligt mig så ska ett operativsystem göra absolut ingenting förrän jag berättar vilket program jag vill starta.
Jag är som mest nöjd när jag enbart ser ikonerna på de få program jag använder.

Startmenyn

För att få Windows 8.1 och nu Windows 10 att fungera som på den gamla goda tiden (Windows 2000) så använder jag ett program som heter Classic Shell.
Det är en enastående programvara som gör Windows 8.1 och Windows 10 användbart.

Med Classic Shell kan du berätta exakt hur startmenyn ska se ut. Läget ”Classic” är bra för då fungerar startmenyn som i Windows 2000, det passar mig utmärkt.
Sedan stänger jag av allt som heter metro och allt som heter appar. Kvar är de skrivbordsprogram som du har installerat.

Jag har ett problem med appar, de öppnas inte i vanliga fönster. Istället tar de upp hela skärmen. Den som körded MS DOS på 80-talet vet hur jobbigt det är.
Dessutom så finns numera allt på webben som webbtjänster. Det är bara ett fåtal programvaror som behövs lokalt. Till exempel Firefox webbläsare och tyngre spel.

Continue reading »

Funktionsvariabler

 Javascript och jQuery, Nyheter, PHP, Webbutveckling  Kommentarer inaktiverade för Funktionsvariabler
Okt 042015
 

Du kan skicka in variabler i funktioner i de flesta programmeringsspråk. Det kan se ut så här:

function MyFunction($myData1 = 123, $myData2 = 'Hello')

Om du skriver så här:

MyFunction(,'Hej');

så betyder det att du nöjer dig med standardvärdet på första variabeln, och sätter ett eget värde på den andra variabeln.

Om du råkar blanda ihop det hela och skriver:

MyFunction('Hej', 456);

Då måste MyFunction göra en kontroll av varje variabel att den innehåller det som förväntats.
Programmeringsspråk som har en inbyggd kontroll av variablernas datatyp kommer att protestera. Men PHP och Javascript har inte detta (PHP har en svag kontroll i senare versioner av PHP)

Jag ska presentera ett förslag för dig så får du fundera på det. Det här förslaget fungerar i alla programmeringsspråk men jag ger dig ett exempel i PHP och i Javascript.

Continue reading »

Capistrano – första kontakten

 Nyheter  Kommentarer inaktiverade för Capistrano – första kontakten
Sep 192015
 

Wikipedia säger ungefär: ”Capistrano är en ett verktyg för att köra scripts på flera servrar; Huvudsyftet är att installera web applikationer”. Källkoden till Capistrano är open source och finns på Github. De scripts som nämns är skriva i språket Ruby.

z35W7z4v9z8w

Målet

Mitt mål är att förstå hur Capistrano kan användas till att installera en angiven version av Magento tillsammans med specifika versioner av olika moduler.
När jag säger angiven version så menar jag en textfil där allt står uppskrivet, den filen heter composer.json och skapas av ett system som heter Composer.
Så det är tre komponenter att lära sig här: Composer, Ruby, Capistrano

Det finns två guider på nätet, en hur man deployar WordPress, och en hur man deployar Magento – med Capistrano.

Continue reading »

Vad är Delicious och hur funkar versionsnummer

 Filosofi, Nyheter, Webbutveckling  Kommentarer inaktiverade för Vad är Delicious och hur funkar versionsnummer
Sep 192015
 

Delicious

När jag ändå vandrar runt i studier så kan jag lika gärna undersöka vad Delicious är. Har hört namnet i evigheter men vet inte vad det är.

Det hela går ut på att samla länkar till bra artiklar på nätet, de kategoriseras och bedöms sedan av andra användare.
Då ska du kunna hitta bra saker att läsa. Läs mer på deras sida och på Wikipedia.

Versionsnummer

Jag håller på mycket med versionshantering av programkod, men har inte använt någon strategi vad gäller versionsnummer.
Det är en hel vetenskap hur man betecknar versionsnummer, se här på Wikipedia.

Jag gillar Ubuntus versioner som har året.månaden till exempel Ubuntu 15.04 som kom i april 2015.
Det känns relevant med datum som versionsnummer, till exempel Windows 95 som släpptes 1995.

Datum är inte så användbart när man ska jämföra versioner hur olika de är.
Version 3.0.0 och 3.0.1 betyder att en liten bugg har fixats men att de två versionerna i övrigt har samma förutsättningar.
Version 3.0.1 och 3.1.0 betyder att nya funktioner har lagts till, nu handlar det inte on buggfixar längre.
Version 4.0.0 och 3.8.0 betyder att programmet kan vara helt omskrivet och det är inte ens säkert att det är bakåtkompatibelt.

x.y.z
x = versionsfamilj
y = nya funktioner
z = buggfixar på befintliga funktioner
Varje siffra kan vara hur stor som helst.

Det finns ingen regel som säger att du måste välja mellan datum eller versionsnummer, du kan ha båda eller något helt annat.

GreaseMonkey

 Javascript och jQuery, Nyheter, Webbutveckling  Kommentarer inaktiverade för GreaseMonkey
Sep 192015
 

Och så har jag till slut upptäckt GreaseMonkey. Det är ett tillägg i webbläsaren som gör att du kan köra dina egna JavaScript-program på valfri hemsida.

Använder du Facebook? Titta då på denna lista med scripts för Facebook så ser du vilken kraft du har med GreaseMonkey.

Det finns mängder med scripts på greasyfork.org och på openuserjs.org som är generella eller anpassade specifikt för olika sidor på nätet.

Du kan snabbt göra egna scripts eftersom det är vanlig JavaScript och du har full tillgång till DOM osv.
Jag gjorde ett minimalt script som tar bort loggan på sidan https://duckduckgo.com/
var $my = document.getElementById(”logo_homepage_link”);
$my.className = ””;
När sidan laddas om så körs scriptet och loggan försvinner.

En studiedag

 Nyheter  Kommentarer inaktiverade för En studiedag
Sep 192015
 

Idag har jag uppgraderat min Firefox webbläsare med några tillägg:
Ghostery – Blockerar alla tracking scripts och tracking cookies, det gör webbsidan snabbare.
Dessutom kan du ställa in så socialknappar Facebook, Twitter, Linkedin stängs av och måste klickas på.
Samma sak med video, du får klicka för att starta videon. Det spar bandbredd.

Adblocker Plus – Hindrar nedladdning av annonser på websidan. Det gör sidan snabbare att ladda ned och enklare att läsa.

HTTPS everywhere – Dirigerar om trafiken till HTTPS om det finns möjlighet. Det gör ditt surfande lite säkrare från nyfikna på nätet.
Tillägget är skapat av Electronic Frontier Foundation (Se nedan)

Använd DuckDuckGo för dina sökningar om du inte vill att dina sökningar på nätet ska finnas i din profil som säljs vidare till försäkringsbolag och andra företag.

The Electronic Frontier Foundation är ett spännande initiativ. Kul att läsa vad de gör på deras sida och på wikipedia.

Tor är ett lök-nätverk som håller dig anonym på nätet. Men vilka använder då Tor? Är det någon annan än brottslingar? Läs mer här.
Du kan ladda ned Tor browser (upphottad Firefox), läsa rekommendationerna och börja surfa säkrare på en gång. Det finns en mängd olika progranvaror som använder Tor nätverket. Se deras hemsida.

Behövs en till nivå av säkerhet finns operativsystemet Tails.
Tails bygger på operativsystemet Debian (Linux) och trafiken går över Tor nätverket.
Du kan använda Tails på din dator, eller starta datorn temporärt med Tails från ett USB-minne.