Saturday 25 August 2018

Book Review: Designing User Interfaces for an Aging Population

After improving TrafficControl, I found this book on my local library:


As the authors are emphasizing, the aging population is a very diverse group with a lot of individuals with different abilities, knowledge and attitude to technology. On the other hand, there are some design principles that are useful for developping software for other populations.

The book refers to Nielsen's 10 Usability Heuristics for Application Development. They discuss how vision, hearing, motoric skills and cognition is changing when people get richer in years. Based on those factors, the book presents some recommendations and examples of good and bad design.




TrafficControl isn't explicitly designed for any age group, but many of the recommendations in the book can be applied to a good UI design anyways.

The book also discusses some different tech generations.
As I was born in 1978, I belong to the "Digital computer" generation. Of course, I can use the Internet and social media, but that is something that I've learnt after being a child.

I'll use some of the advices from the book when designing my pet projects.

Saturday 18 August 2018

Android: My First Steps

The cobblers children has no shoes - and as a telecom engineer, I have no experience in developing Android apps. This year, I will learn how to do that.

In the previous blog post, I learned to bring up the Android Studio IDE. In this blog post, I'll create a simple maps app. Creating a simple maps app requires an API key. When running the app in emulation mode, it initially complained about the Google Play version

The screen shots are from the same app but on different emulated phones. To the left: Pixel 2 XL and to the right: Nexus 5. Both use API 26.


As a learning project, I will create an app that will calculate the shortest travel time to a number of locations around a coordinate. The app will compare walking with biking, driving and using transit.

https://cloud.google.com/maps-platform/routes/

I'll name the app TravelTimeCalculator.

Saturday 11 August 2018

Micro, Macro and Me: My Other Blog

I've tried to focus on programming, travels and trains on this blog, and I've been wuite successful. But I have more thoughts that I want to share.

Therefore, I've created another blog for thoughts regarding environment/social justice (yes, I'm kind of a SJV)/philosophy/...

Avoiding flame wars, political debates and chasing clicks/readers will be a challenge. I'll post on the blog once a month.

I want to connect what's happening in the big world with the everyday lifes we live. It's all connected. What happens in the big world affects me. What I do will affect the big world.

Saturday 4 August 2018

TrafficControl: Refactoring the KML Parser

Until now, the KML parser (trackStationConnector.py) expected the tracks to be in one folder, stations to be in another one and junctions to be in a third folder. This made it more difficult to use the program.

After the refactoring of the KML parser, the parser doesn't care where the tracks/stations/junctions are.

Placemarks are interpreted as below:

  • A placemark with only one coordinate will be seen as a station or a junction. 
    • If the name of that placemark starts with an uppercase "J" and the second character is also uppercase, that placemark is a junction. Example: "JHyllieS".
    • Otherwise, it is a station. Example: "JerusalemC".
  • A placemark with more than one coordinate is a track. 
    • If the name of the track starts with "d", it is a double track. The parser will create two parrallel tracks. Example: "dLun-Sta" becomes "dLun_Sta_N" and "dLun_Sta_S".

I used regular expressions in the new script. There is some more work with this script and I'll elaborate more about that in future blog posts.