Men jeg har da ikke noe å skjule – hvorfor skal jeg da ha en sikrere identitet?

Hvem som driver identitets-tyveri kan være vanskelig å finne ut av...

Hvem som driver identitets-tyveri kan være vanskelig å finne ut av…

For meg har det vært en lise å endelig få sikret Apple-maskinene mine mot id-tyveri. Men når jeg tar dette opp med kolleger, venner og familie er de helt uinteressert.

«Jeg har intet å skjule», er en vanlig forklaring på hvorfor de ikke er interessert.

«Jeg har tre nivå med sikkerhetskopier», kan være en annen forklaring.

«Men det jeg er redd for er at data kan stjeles eller slettes», kan folk presisere i ettertid.

Identifikasjon eller id er vrient å forklare

Jeg selv synes id-tyveri og teknikkene som brukes for å beskytte seg mot det er vanskelig. Men jeg var så heldig å bli angrepet og mistet kontrollen over min i noen timer. Og for en uke siden ble jeg varslet om at Google id-en og passordet offentliggjort – for meg og fem og halv million andre gmail-brukere!

Så de siste dagene har jeg jobbet meg litt ned i materien, og har fått en viss oversikt.

Det dreier seg om å forhindre id-tyveri eller at noen stjeler din identitet

Først – id-tyveri har ikke noe med at du er en lovlydig borger. Id-tyveri er at noen prøver å utgi seg for deg og prøver å tjene penger og skade ditt rykte.

Deretter – id-tyveri har ikke noe med sikkerhetskopi å gjøre. Men gode rutiner for sikkerhetskopi kan hjelpe deg å rydde opp etter et id-tyveri.

Din id er ditt personnummer på internett. Og akkurat som du kan bruke ditt personnummer for å inngå avtaler og betale penger, kan du bruke din internett-id til det samme.

Din id på internett er kanskje ikke så viktig som personnummeret ditt idag, men om en tid vil det være viktigere.

En vanlig foreteelse er at dine data stjeles og slettes, og at folk tar kontroll over innkommende meldinger og mail til deg.

Husk at en som stjeler din id kan også benytte den til å bestille varer og tjenester i ditt navn! Du vil få regningen men ingen vare eller tjeneste!

Og hvis de lykkes i å ta komplett kontroll over din id vil det også gjelde bank, Altinn og post.

Hvordan beskytter stat og banker ditt personnummer

Hvis en mener ens id er viktig kan det være interessant å se på hva den norske stat og norske banker gjør for å beskytte din identitet på internett.

De lar deg bruke personnummeret ditt som id, lage deg et rimelig komplisert passord og krever så at du bruker en kodebrikke, kodekort eller sender deg din mobil for å motta en kode. Vi kaller denne typen beskyttelse to-trinns autentisering.

I neste artikkel vil jeg vise deg hvordan de store datafirmaene prøver å beskytte identiteten du har hos de. Da vil jeg også fortelle om løsningene jeg har valgt.

Hvordan forhindrer jeg at GMail-kontoen hackes på nytt?

Jeg forteller forhistorien i Middelhavets perle. Her snakker jeg litt om hva jeg gjorde for å forhindre at slikt ikke skjer igjen.

Hvilke konsekvenser fikk dette for meg og hvordan rettet jeg dette opp

Heldigvis hadde jeg to-trinns sikring på GMail-kontoen, og fant ikke at det var skjedd noe galt.

Publisering av passord mitt er ille. Jeg har laget meg et system som gjør det lett å gjette andre. I tillegg hadde jeg vært så steina dum at jeg hadde brukt passordet flere steder.

Så jeg byttet passordet – mange steder – med generte passord som ikke kan huskes.

Deretter fullførte jeg to-trinns sikkerhet på den ene AppleID min. Og startet prosessen med AppleID to. Og for sikkerhetsskyld byttet jeg passordene der og. Og her også med genererte passord som ikke kan huskes.

Deretter gikk jeg inn på min Google-konto og slettet alle tjenester og apper som var godkjent via min Gmail konto.

Etterpå begynte hvert eneste app å krangle, og jeg måtte inn i hver enkelt og legge inn et av tre passord som jeg ikke kan huske. For et styr!

Men nå virker det meste – både iPhone, iPad og Mac.

Jeg orker ikke mere passord-tull

Nå kommer jeg til å kjøpe en ny iPhone og iPad med finger-avtrykk sikring. Fingeravtrykket brukes også istedet for passord i flere programmer og i betaling på flere tjenester.

For tre-fire år siden var det virus-angrepene som gjorde at jeg byttet fra Windows PC til Mac. Nå tar jeg steget helt ut og stopper å bruke programmer hvor jeg ikke kan benytte mitt fingeravtrykk.

Nok er nok!

Hvordan iPhone 6 vil forenkle hverdagen min

Hvordan iPhone 6 vil forenkle hverdagen min #ios8

Apple teller ned.

Apple teller ned.

I dag skulle jeg sende noen beskjeder i forbindelse med en reise. Jeg skulle skrive to litt lengre SMS fra iPhone og fikk bruk for å slå opp opplysninger om reisen. SAS har selvfølgelig ikke sendt sin SMS med en iPhone, så den var ikke tilgjengelig på min Mac. Arghhh!

Men det er den når jeg får det nye operativsystemet denne uka. Ikke nok med det – da kan jeg både ringe og sende SMS fra min Mac!

Jeg har lenge kunnet arbeide på samme dokument på både mobil og PC. Fra i morgen vil til og med «cursor» bli plassert på samme sted!

Men det viktigste for meg som skriver er at norsk diktering blir tilgjengelig. Det betyr mindre slitasje på vonde armer, og forhåpentligvis mange flere artikler og kommentarer!

iPhone 6 har fingeravtrykkleser knyttet til hjem-knappen. Apple åpner i tillegg for at innlogging til sider og apper og kjøp kan bekreftes med mitt fingeravtrykk. Med nærmere 200 passord gleder jeg til å begynne reisen mot eliminering av passord!

Fra før er Apple-brukere allerede bortskjemt med å ha tilgang til dokumenter, mail, Apples meldinger, bilder og musikk fra alle enheter knyttet til sin iCloud-konto. Fra imorgen får vi også tilgang til videoer og som nevnt ovenfor, ut- og inngående SMS og telefonsamtaler.

Apple lanserte de ovennevnte funksjonene på utviklerkonferansen i juni.

I kveld kl. 19 lanserer de antagelig vis iPhone 6 og noe «attåt». Jeg forsøker så godt jeg kan å lukke øyner og ører for alle rykter som svirrer. Når direktesendingen fra Apple starter vil jeg gjerne la Apple få overraske meg!

Beautiful and subtile Core Data changes in Swift on

Beautiful and subtile Core Data changes in Swift on #Xcode6Beta7

Flowing like swift!
I didn’t expect another beta before iOS release next week. But surprise – just one more thing – a new beta!

Yesterday the beta popped up, and today I’m investigating the changes. As a former SQL developer I’m most interested in the Core Data and the display of data in UITableViews.

Optionals, optionals and optionals

Some early comments indicated that there was a lot of changes on optionals – again. People reported on twitter that they had huge amount on errors when opening their projects.

I must admit I don’t really know how to use optionals. I’m still learning Swift. But debugging and writing this is a good way to learn more.

What is an optional however? Here are two thing about optionals I have in my memory as I’m writing:

  • Optionals is either some value or nothing ie. nil.
  • Optionals is used to reduce the number of values containing nil and thus make your program more robust.

All the concern of optionals is because backward compatibility to iOS libraries, where you can fin nileverywhere. Apple have spent 3 betas taking away unneeded nil’s. For instance, the Core Data stack in their Master Detail template is way more elegant and easy to understand now.

As my projects is only tests and turorials, I decided to look at changes in the Master Detail Core Data template that Apple provides. Looking at the errors produced for the beta6 template on beta7, I was able to see the differences. I liked what I discovered.

Changes in the Core Data stack in Beta7

The changes, it was seven of them, one was in AppDelegate, and the rest in MasterViewController.

I’ve marked the change with adding ** before and after the change.

One time unwrapping with if. Five times unwrap with !. Mark a property optional two times with ?.

In AppDelegate.swift I had to explicit unwrap an optional:

lazy var managedObjectModel: NSManagedObjectModel = {

let modelURL = NSBundle.mainBundle().URLForResource("mdDbApp", withExtension: "momd»)**!**

And in MasterViewController.swift there was various changes to optionals. First by using `if let´:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "showDetail" {
**if** let indexPath = self.tableView.indexPathForSelectedRow() {

Then by marking for optional and use if-else operators ??

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return self.fetchedResultsController.sections**?**.count** ?? 0**

Then unwrap:

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
let sectionInfo = self.fetchedResultsController.sections**!**[section] as NSFetchedResultsSectionInfo

Make it optional and unwrap it:

func configureCell(cell: UITableViewCell, atIndexPath indexPath: NSIndexPath) {
let object = self.fetchedResultsController.objectAtIndexPath(indexPath) as NSManagedObject
cell.textLabel**?**.text = object.valueForKey("timeStamp")**!**.description

Then unwrap:

var fetchedResultsController: NSFetchedResultsController {

let entity = NSEntityDescription.entityForName("Event", inManagedObjectContext: self.managedObjectContext**!**)

… and a bit further down – unwrap again:

let aFetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.managedObjectContext**!**, sectionNameKeyPath: nil, cacheName: "Master")

What I learned with this comparision

  • I know a lot more on optionals than before, and I can even use them in simple context.
  • I’ve learned the value of reducing the posibilities of nil
  • I can foresee a future with lot less optionals
  • I’m even more found of Swift
  • I’ll try to only use libraries written in Swift (that’s impossible for Core Data, but soon…)
  • Even an old SQL guy can have something to say on this shiny new language

Functional programming in

Swift Functional programming is cool – even for an ERP guy! #swiftlang

I’ve just one objective with learning Swift – it’s to create ERP apps for iOS. The reason I went into Swift was that it made programming iOS easier – a lot easier!

Trying to gasp Swift, you have to come over «Functional Programming». To me, it didn’t say anything. Worse, as I’m a SQL programmer burned by object-oriented programming, I suspected functional programming to be equal or worse.

But somehow one of the articles caught me. The title, Reprogramming your mind for the Functional Swift Matrix – rshelby.com made me so curious that I passed through it. Not only once but three times, the last with a Playground.file open and testing it out.

A nice illustration from a Huffington post article

What I learned was that there was a simpler way to create for loops, namely map. I also noted my brain reacting stimulated, and then I looked up the article references. One of them was an hour long explanation from a year ago. It was nice, and I recognized a lot of functional stuff I had seen before. Like generics, «first citizen» functions, optionals in addition to map.

In ERP we have something called «Audit trail». A log of every change that an auditor can control. And we have the habit of prohibiting changing transactions. So this words made my day. They’re from a pretty good introduction:

Data is immutable

So my forty year on ERP on immutable enterprise data is meeting a brand new language based on immutable data. That’s just fantastic for this old SQL guy!

Fun, fun, fun with

Fun, fun, fun with #swift, @iwantmyrealname and @shinobicontrols

Oh my ….

The summer after WWDC2014 in June has really been a fiesta. And a very long one. Swift was what triggered me most, and it’s minimalistic beauty made me working hard to finally crack the code on creating database apps for iOS.

But there was more fun waiting…

Today I discovered that @iwantmyrealname and @shinobicontrols wasn’t just a blog, but that @iwantmyrealname made a new app every day in his iOS Day by day project. And he even published the apps at Github. What a delight!

Two projects caught my eyes; the today’s project on DataFormatters, or how to beautiful format time and measures globally. In my work on a global accounting program this was gefundenen fressen. And the health-kit app. Together with Home-kit, these are operating system support for the modern life we really need. So just now I’m started working on the health-kit app sample.

So you can see, Apple has given me a lot of summer joy, and it keeps inspiring me into the early autumn.

If you want take part in this adventure then start learning Swift. A new programming era is waiting you too!