All posts in iPhone-udvikling

coop medlem app shortlist dda 2017

Coop Medlem shortlistet til Danish Digital Award 2017

Greener Pastures har – i fællesskab med et engageret og kompetent team hos Coop og Hello Group – gentænkt og relanceret appen Coop Medlem. Coop Medlem er shortlistet til den digitale pris, DDA 2017.

Den nye medlems-app sætter fokus på de økonomiske medlemsfordele og gør det nemmere for Coops 1,6 millioner medlemmer at shoppe og forberede gode og sunde måltider.

Vi ser selv appen som en lille revolution for dagligvarehandelen.

Læs videre…

Taler du flydende Swift? Vi søger ny iOS-udvikler!

Vores iOS-team har travlt – og vi er på udkig efter endnu en iOS-udvikler.

Har du lyst til at være en del af et større team af iOS- og Android-udviklere med fokus på mobile løsninger og ny teknologi, så kan det være vi har det rigtige job til dig.

Greener Pastures er et app-bureau der er 100% specialiseret i mobile løsninger til iOS og Android. Eksempler på typiske iPhone- og iPad-projekter hos os er TV2 Mad, UM Rejseklar for Udenrigsministeriet eller GoCook for Coop.

Den profil vi er på udkig efter:

  • Er en dedikeret iOS-udvikler og -kender
  • Har udviklet flere apps og kender hele processen fra ide til upload
  • Værdsætter god kode og gode processer
  • Kender værdien af god navngivning, god kommentering og up-to-date dokumentation
  • Har flair for både kode og UX
  • Har en sund teoretisk ballast i form af en relevant videregående uddannelse

Er det dig? Så send en mail med et CV og links til de apps du har arbejdet på til job@greenerpastures.dk, så giver vi en kop kaffe til en løs snak, hvis vi vurderer der et godt match.

Hvis du kender nogen der kunne være interesseret i et job hos os, så send endelig et link til vedkommende.

Læs mere om at arbejde hos Greener Pastures.

Anyware: Verdens mindste smart adaptor (som leverer magi direkte fra lampefatningen) til dit intelligente hjem

Anyware adaptoren vil fungere med en (sagt i al beskedenhed) knivskarp iPhone app. Som vi (igen sagt i al beskedenhed) har hjulpet Anyware Solutions med at idéudvikle og designe.

Anyware er på Kickstarter og du kan blive en af de første til at påvirke, købe og støtte projektet.

Hvad er Anyware?

Anyware er blandt de første i klassen, der tilbyder et “All-in-one connected device”, som helt enkelt forbinder LED-pære og lampefatning. Anyware adaptoren får på den måde strøm (når du tænder for lampens kontakt), lever på WiFi og kommunikerer direkte med skyen og din Anyware app.

Anyware står på skuldrene af en lang række produkter og løsninger i kategorien Home Automation; Heriblandt de intelligente elpærer Philips Hue, Lightify og LIFX – og de integrerede systemer Nest, Amazon Echo og SmartThings.

Læs videre…

Brug TouchID i din app

Hvis du har en af de nyere smartphones, så kender du fornøjelsen ved at kunne låse din telefon op med dit fingeraftryk. Det kaldes TouchID.

Funktionen har et par år på bagen, blandet andet også fra Lenovos laptops. Identifikation via fingeraftryk havde ellers været en klassisk feature i alt fra krigsfilm til science fiction, men endelig fik vi en af vores “jetpacks”.

Heldigvis kan TouchID bruges til noget. Det, som fingeraftrykket erstatter, er både brugernavn og password. Man skal fortsat oprette en brugerprofil, som man knytter TouchID til, men når der først er gjort, er de følgende login meget nemmere.

Læs videre…

NNIT driftstatus – at a glance

Vi har udvidet NNITs iOS app, myNNIT, med en Apple Watch app. Med Watch appen flyttes NNITs driftstatus helt ud på kundens håndled og gør det endnu lettere for NNITs kunder at holde øje med situationen og udviklingen på de IT-services, de køber fra NNIT.

Den røde tråd i designet og udviklingen af NNITs Watch app har været “At a glance”. Brugeren skal kunne afkode en situation, se status, eller hente information ved at kaste et blik på uret. At udvikle apps til Apple Watch er om noget begrænsningens kunst.

myNNIT Watch appen besvarer spørgsmålet “er alle systemer kørende?” og “er der taget hånd om mine forretningskritiske tickets og issues?”.

Målgruppen for myNNIT appen og myNNIT Watch appen er NNITs kunder såsom IT-chefer, produktansvarlige og driftsansvarlige.

Dag 1 på WWDC

Så kom den længe ventede keynote-tale på Apples udviklerkonference, WWDC, i San Francisco. Og der har været mange rygter om, hvad Apple ville annoncere – der har for eksempel været talt og skrevet meget om et iWatch og en ny, større iPhone.

Men der kom overhovedet ikke noget nyt hardware – hverken smart watches, større telefoner eller nye computere.
Læs videre…

Hvordan og hvor gemmes data i apps – 5 design-patterns

Når man designer apps er en vigtig designovervejelse hvor og hvordan data hentes og lagres. Det lyder måske som en nem beslutning, men det er det faktisk sjældent. Valget kan være afgørende for hvor brugervenlig en app er, hvor godt den virker offline og hvor hurtig den føles.

Med andre ord et vigtigt designvalg – som ikke desto mindre ofte ikke fylder så meget i designprocessen. Læs videre…

Huskeseddel til iOS App Store upload

Når man har arbejdet i et par måneder på at designe og udvikle en app, så er det er altid rart når næste skridt er at få appen uploadet. Dette er typisk en fase hvor der skal indsamles forskelligt materiale og tages endelig stilling til kommunikationen omkring appen.

Her er en lille huskeseddel over hvilket materiale der skal produceres forud for en iOS App Store upload og et par gode råd til de enkelte dele.

Læs videre…

Realdania Kiosk

Case: Realdania bruger app som kiosk-løsning

Realdania udviklede for et lille års tid siden appen Realdania Projekter. Appen viser kort fortalt Realdanias mange aktiviteter ud fra en geografisk eller tematisk opdeling. Appen indeholder et stort fotografisk materiale, som er prioriteret højt i appens design.

Realdania ville gerne bruge appen til at præsentere deres projekter i deres reception, på møder mv.

Læs videre…

Jens Willy og iBeacons

iBeacons er en ny ting i Apples iOS 7. Helt grundlæggende, så er en iBeacon en lille Bluetooth-enhed, som bruges til at fortælle en app, at den er i nærheden af enheden.

Der er ikke noget nyt i, at en app kan finde ud af, hvor den befinder sig – det kan den også bruge GPS og WiFi til. Men det virker rigtig dårligt indendørs. iBeacons, derimod, virker fint indendørs og med meget stor præcision.

Læs videre…

Nye muligheder med kort i iOS7

Den syvende version af operativsystemet iOS er netop blevet frigivet og vi har sevfølgelig smugkigget på de nye muligheder via beta-versionen. For hver ny opdatering af iOS er der en del nyheder på overfladen – nyt design, nye apps, nye funktioner i Apples apps – men der er samtidig endnu flere nye muligheder i de forskellige programmerings-interfaces, som man kan udvikle apps med.

Læs videre…

iPhone trends 2010 versus 2013 – Vi ser på Kforums app

Hen over sommeren har vi givet Kommunikationsforums iPhone app et større serviceeftersyn. Sammen med Social Square udviklede vi første version af Kforums app tilbage i 2010, og appen er stort set ikke blevet ændret siden da. På de tre år der er gået, er der sket en hel del på app-fronten. På den måde er Kforums app en god case til at illustrere hvordan trenden for, hvordan en app skal tage sig ud og opføre sig, har ændret sig på de 3 år.

Læs videre…

13 grunde til at Apple afviser apps

Den anden dag afviste Apple en app, vi har arbejdet intenst på i de sidste tre måneder. Kunden og vi blev lige et øjeblik bekymrede. Heldigvis var grunden til at Apple afviste appen en detalje: vi havde ændret en smule på designet af iOS 6 standard delingsfunktionen. Vi ændrede hurtigt appen; ændringen gjorde ikke appen dårligere, og Apple var heldigvis hurtig til at godkende den – så vi nåede vores deadline.

Grunden til at Apple – og Google og Microsoft for den sags skyld – afviser apps er først og fremmest, at de ønsker, at apps ikke crasher eller kompromiterer brugernes data. Derudover ønsker de, at brugerne på netop deres platform får den bedste brugeroplevelse. Og så er der også en række hensyn til deres forretning, der også spiller ind.

Vi har fået afvist – men altid senere godkendt – en række apps. Så vi holder selvfølgelig øje med, hvad der kan være en årsag til at apps bliver afvist. I den danske debat er der mest fokuseret på, hvorfor Ekstrabladets og Peter Øvigs Hippie får afvist apps og e-bøger pga. amerikansk moral i forhold til nøgenbilleder. I praksis er det typisk helt andre grunde, der gør ,at Apple afviser apps.

Her er en liste over de mere typiske grunde til afvisninger: Læs videre…

Få mere ud af din virksomheds data – lav et API der kan genbruges!

Rigtig mange af de apps vi udvikler bygger på en variation af følgende tekniske arkitektur:

  • En eksisterende server-komponent har værdifulde data
  • For at kunne eksponere data fra server-komponenten, udvikles der et API
  • App’en henter data via API’et og viser disse på mobiltelefonen – gerne på en ny og frisk måde
  • Ofte kombineres data fra server-komponenten med andre data eller andre services, så der skabes en helt ny service tilpasset en mobil kontekst

I mange af disse projekter skal API’et udvikles eller der eksisterer allerede et halvfærdigt API, som skal justeres og gøres klart.

Udviklingen eller opdateringen af API’et gøres alt for ofte til et rent teknisk spørgsmål – skal API’et laves som REST eller SOAP? Skal det anvende JSON eller XML? Disse spørgsmål er bestemt relevante og vigtige.

Men, de vigtige spørgsmål om hvilke forretningsmuligheder API’et kan åbne op for, hvordan laves API’et på en måde så det reelt kan genbruges stilles ofte ikke.

Min erfaring er, at der spildes mange penge og mange muligheder, fordi der laves dårlige, ikke-gennemtænkte og ikke-dokumenterede API’er. Fordi det er svært for ikke-teknikere at tjekke et API og svært at forstå det, så overlades API’et fuldstændigt til teknikere. Og fordi det mærkeligt nok tit er lav-status at udvikle API’er, så er det ofte ”den nye mand” eller junior-udviklere der laver API-opgaverne. Resultatet er dårlig kvalitet, manglende forretningsforståelse og spild af forretningsmuligheder.

Det lyder måske banalt – men min erfaring er, at API’et både nedprioriteres og at dets reelle værdi ikke forståes. Der er selvfølgelig undtagelser – men vi ser fere dårlige API’er end gode.

Læs videre…

Oplæg om iværksætteri, ide-beskyttelse og apps

Igår holdt vi et oplæg for og sammen med Opfind.nu fra Teknologisk Institut om hvordan apps og app-markedet adskiller sig fra andre mere klassiske iværksætter- og opfinder-discipliner. Det var inspirerende at have en hel sal fuld af ide-folk – og se hvordan man ser tingene forskelligt alt efter om man er et udviklingshus eller en konceptmager. Patenter, værdien af NDA’er og frem for alt processen fra ide til færdig app blev diskuteret livligt. Slides’ne fra oplægget kan hentes nedenfor.

Læs videre…

iOS og egen hardware

Vi får mange henvendelser fra folk, der gerne vil have udviklet en app, som sætter en iPhone eller en iPad i stand til at kommunikere med et stykke hardware. Det kan være alt fra en espressomaskine eller en tørretumbler til en cykelcomputer eller regnvandsmåler.

Og det er en fremragende idé! En iPhone har en stor berøringsfølsom skærm og er et godt alternativ til en dedikeret kontrolenhed: udover skærm og multi-touch-interface, er der indbygget GPS, Wi-Fi, kamera, mikrofon, højttaler, accelerometer og gyro, SMS og mobiltelefon.
Og man har altid sin telefon på sig eller i nærheden.

Et eksempel på denne trend er, at firmaet Sonos, som laver trådløse musikanlæg, har besluttet helt at holde op med at lave deres egne controllere og vil for fremtiden kun benytte smartphones som controllere. (læs mere her). Og deres controllere er ellers glimrende. Men hardwaren i en iPhone eller iPod touch er endnu bedre. Og meget billigere…

I dette indlæg vil jeg gennemgå, hvordan man kan få en app til at snakke sammen med et stykke hardware.

Læs videre…

Performance er den vigtigste feature!

Jeg elsker at læse aviser. Både papirversionerne såvel som de digitale. På papir er det især Politiken og Berlingske jeg læser. Men – når jeg skal vælge mellem disse på min iPhone – så vælger jeg Berlingske. Hvorfor? Fordi den åbner hurtigt.

En hurtig uvidenskabelig test viser at Berlingskes app er 7 sekunder om at have hentet sin forside – hvorimod Politiken er 24 sekunder om at hente forsiden. Det får mig til at fravælge Politiken og læse Berlingske.

Moralen er, at performance er en af de vigtigste features i en iPhone eller Android app. Måske den vigtigste.

(Testet på min iPhone 4S via Wifi – og inden testen har jeg fjernet begge programmer fra telefonens hukommelse og sikret mig at jeg har seneste version).

iPhone-app som game controller til spil på storskærm

For Designit har vi udviklet en app for Novo Nordisk (link til App Store), som skulle bruges til en kongres om diabetes (European Association for the Study of Diabetes).

Udover nyheder, program for kongressen med integration til iPhonens kalender og en QR-scanner, så brugerne kunne scanne 2D-stregkoder ved Novo Nordisks stand og få mere information om produkter o.lign., skulle app’en fungere som controller til et spil, der kørte på en 50″ storskærm på standen:

(Billede fra Designit)

Spillet er udviklet i Flash og AIR af Designit.
Der var en hel del udfordringer i at bruge en iPhone-app som controller til et sådant spil – for eksempel:
  • kun én person ad gangen må spille
  • man skal stå ved storskærmen for at få lov til at starte spillet
  • spillet har ikke nogen server, så app’en kender ikke adressen eller IP-nummeret til spillet
Vi lavede en løsning, hvor brugeren skal indtaste en “game ticket”, som er et tal, der bliver vist på storskærmen, når der ikke er noget spil i gang. Det løser problemet med, at man ikke må starte spillet, hvis man ikke står ved storskærmen. Og den person, der først indtaster den viste game ticket, får lov til at spille (kun ét spil – derefter bliver der vist en ny game ticket).

For at løse problemet med kommunikation mellem spillet og app’en, valgte vi at bruge en tjeneste, der hedder Pusher. Grundlæggende fungerer Pusher ved at broadcaste beskeder til alle klienter, der lytter på en bestemt “kanal”. Når brugeren vipper sin iPhone for at styke spillet, sendes der accelerometerdata til Pusher, som sender det videre til alle klienter, der lytter – det vil sige Flash-spillet. Og tilsvarende når spillet er slut, sendes der en besked fra spillet med brugerens score.

Der findes kode-biblioteker til både Flash og iOS, så det er ret let at implementere denne form for klient-til-klient-kommunikation.

Læs mere om app’en her

How to make tab bar icons

Many iOS apps use tab bars and usually we want to create our own icons. However, creating icons for the tab bar is not as simple as drawing a pretty icon in Photoshop and saving it as PNG due to the way iOS renders tab bar icons.

Read this brief tutorial to learn how to make tab bar icons…

Læs videre…

Seminarer om iOS-udvikling

Vi har for nyligt afholdt en række 2,5-timers seminarer om iOS-udvikling.

Formålet med seminarerne var at:

  • Give et overblik over udviklingsprocessen
  • Vise hvilke værktøjer skal der bruges
  • Vise hvilke kompetencer skal der bruges
  • Og se man udvikler en app i praksis

Her er slides fra seminarerne:

“Don’t make me read”

I 2000 udkom en af de vigtigste bøger indenfor web-usability, Steve Krugs “Don’t make me think“. Bogen centrale budskab er, at en hjemmeside ikke læses fra A til Z eller forståes “rationelt”. En hjemmeside scannes, brugeren vælger de oplagte valg, brugeren forsøger ikke at forstå en hjemmeside, de prøver sig frem og hvis noget er forvirrende eller elementer er modstridende – vil brugeren ikke bruge siden. Konlusionen er: Fjern det meste af teksten, fremhæv oplagte valg, skær ned for kompleksiteten, drop “nice-to-have” – altså: “don’t make me think”.

Steve Krugs pointer gælder endnu mere for apps end for web-sites.

I det fine PodCast Build and Analyze lavede Marco Arment den anden dag en fin omskrivning af “Don’t make me think” til “Don’t make me read”, som jeg synes er meget rammende. For sandheden er, at hvis du på nogen måde skal forklare et app-interface med en tekst så har du lavet et dårligt design eller smidt for meget funktionalitet i app’en.

Vi har mange gange forsøgt at skrive os ud af komplekse designs – uden held. Så, vores konklusion er, at hvis der skal forklaringer eller dokumentation til en app, så er det et tegn på at app’en skal redesignes.

Godt design giver gode apps

Vi elsker at arbejde med gode grafikere. Godt design er afgørende for at kunne lave gode apps.

I forbindelse med en lille opdatering af Hansens Flødeis’ app, skulle vi bruge en grafik til at smække i en mail, så den var lidt postkort-agtig. Her var hvad Hansens sendte tilbage.

Om det var noget Hansens havde liggende i skuffen eller om det var noget de lavede til lejligheden, ved jeg ikke – men det er svært ikke at blive begejstret for design i den klasse.

Hvad koster en app?

Det sker temmeligt ofte at vi får en mail med indholdet “hvad koster en app”. Misforstå mig ikke. Vi er glade for mails fra folk der gerne vil have lavet en app. Faktisk elsker vi den slags mails. Men spørgsmålet “hvad koster en app” er bare meget svært at svare på, hvis ikke man får lidt mere information om projektet. Vi har lavet apps der har taget dage at udvikle. Og vi har lavet apps der har taget måneder at udvikle. Dette afspejler sig selvfølgelig også i prisen.

Her kommer et par tip til hvordan man kan få et ordentligt svar på spørgsmålet.

Læs videre…

“The App Moment”

Når vi snakker med kunder, så bruger vi tit lang tid på at snakke om hvornår deres kunder anvender apps, i hvilke situationer apps er computeren overlegen, hvilken “mental tilstand” man skal forvente brugeren er i, når hun bruger apps på telefonen.

I fredags var jeg til en lille konference om App-markedet, hvor Jes Brinch fra e-conomic brugte termen “The App Moment” til netop at beskrive denne situation. (Jeg tror at Jes havde udtrykket fra en anden taler – men jeg fangede ikke lige hvem.)

Ikke alle apps rammer “The App Moment”, men jeg synes alligevel udtrykket er meget rammende.

“The app moment” er:

  • Når man lige har ti minutter hvor man ikke skal noget
  • I toget, i bussen, i venteværelset, når man venter på børnehavebussen
  • Når man godt vil lege med sin telefon, men ikke gider åbne sin computer
  • Når man godt vil underholdes
  • Når man keder sig

Dette sætter nogle klare rammer for hvad der karakteriserer en god app:

  • Den gør een ting, som den gør godt
  • Den åbner hurtigt og leverer værdi med det samme
  • App’en åbner den mest brugte funktion eller side med det samme – menuen gemmes som en valgmulighed
  • Den har et enkelt og overskueligt brugerinterface, fordi man skal kunne bruge app’en i bussen, stående, med handsker på etc.
  • Den følger standard GUI guidelines – fordi brugeren har ikke tid til at lære nye måder at gøre ting på

Der er en række apps, der ikke rammer “The App Moment” – f.eks Utilities, kort-baserede apps, transaktions-orienterede apps m.fl. Men, de samme designregler gælder typisk også for disse.

iPhone design – tips til webdesigneren

Noget der gælder for de fleste iPhone-projekter vi er involveret i er, at vi har en grafiker med, som ikke tidligere har lavet design til iPhone – men derimod har lavet masser af design til webløsninger.

Jeg er ikke grafiker – og bliver det heller aldrig – men der er en del spilleregler, formater og best-practices, som er anderledes ved iPhone-design end ved web-design. Her kommer en lille liste:

Læs videre…

Sådan får du en app i AppStore

Et spørgsmål vi tit får via mail er: hvad skal man gøre for at få en app i AppStore. Derfor kommer der her en mini-guide til dette.

1. Apple-konto

Det første man skal gøre er, at tilmelde sig Apples iOS Developer Program. Ved at tilmelde sig dette program, bliver en virksomhed eller en person i stand til at udvikle, teste og distribuere apps til iPhone og iPad. Formentligt skal I kun distribuere apps, men det kan alligevel anbefales at gøre dette i eget navn. Delvist vil al omsætning gå direkte til virksomhedens bankkonto. Delvist vil virksomhedens navn og brand blive promoveret mere. Og hvis I har jeres egen konto, kan I selv trække data om antal downloads, ændre markedsføringstekster mv. Det koster $99 om året at være en del af Apples Developer Program.

Læs videre…