Klassen Software Solutions

‍At ‍Klassen ‍Software ‍Solutions ‍we ‍are ‍dedicated ‍to ‍the ‍creation ‍of ‍quality ‍software ‍products. ‍We ‍can ‍assist ‍your ‍software ‍teams ‍in ‍any ‍number ‍of ‍ways. ‍Perhaps ‍all ‍you ‍need ‍is ‍a ‍little ‍instruction ‍in ‍a ‍specific ‍area. ‍Perhaps ‍you ‍need ‍a ‍contractor ‍to ‍come ‍for ‍a ‍few ‍days ‍to ‍solve ‍a ‍specific ‍technical ‍problem. ‍Perhaps ‍you ‍want ‍a ‍contractor ‍working ‍full ‍time ‍for ‍an ‍extended ‍period. ‍Or ‍perhaps ‍you ‍want ‍a ‍team ‍to ‍take ‍over ‍a ‍project ‍from ‍inception ‍to ‍completion. ‍Whatever ‍your ‍needs ‍we ‍can ‍help ‍you ‍out.

‍We ‍can ‍help ‍you ‍architect ‍your ‍system, ‍we ‍can ‍teach ‍you ‍how ‍to ‍write ‍the ‍software ‍for ‍your ‍system, ‍or ‍we ‍can ‍write ‍it ‍for ‍you. ‍How ‍much ‍or ‍how ‍little ‍of ‍our ‍help ‍you ‍want ‍is ‍entirely ‍up ‍to ‍you.

‍At ‍the ‍heart ‍of ‍Klassen ‍Software ‍Solutions ‍is ‍its ‍owner, ‍Steven ‍W. ‍Klassen. ‍He ‍has ‍been ‍writing ‍software ‍for ‍over ‍30 ‍years ‍and ‍has ‍become ‍an ‍expert ‍in ‍numerous ‍computer ‍languages, ‍programming ‍techniques, ‍and ‍system ‍architectures. ‍Through ‍Klassen ‍Software ‍Solutions ‍you ‍can ‍contract ‍him ‍directly ‍to ‍work ‍with ‍your ‍own ‍team ‍or ‍you ‍can ‍have ‍him ‍put ‍together ‍an ‍entire ‍team ‍for ‍you. ‍It ‍is ‍all ‍up ‍to ‍you.

extension ViewController: MKMapViewDelegate {

    // Draw our annotations.

    func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {

        if let anno = annotation as? Position {

            var v: MKPinAnnotationView

            if let dqv = mapView.dequeueReusableAnnotationView(withIdentifier: anno.name) as? MKPinAnnotat 

                dqv.annotation = anno

                v = dqv


            else {

                v = MKPinAnnotationView(annotation: anno, reuseIdentifier: anno.name)

                if #available(macOS 10.13, *) {



                v.pinTintColor = MKPinAnnotationView.redPinColor()


            return v


        return nil


    // If we have not yet set anything, use the user location once it becomes known.

    func mapView(_ mapView: MKMapView, didUpdate userLocation: MKUserLocation) {

        if !haveFirstView {


            haveFirstView = true




Check us out on GitHub and StackOverflow!

Klassen Software Solutions, a division of Ebed Technologies Ltd., 43 Martindale Crescent NE, Calgary, Alberta, Canada, info@kss.cc