ForceProof is a 21st century, comprehensive software and hardware product solution for materials testing.Entrepreneur; Product Management, UX Design
Author Archives: savolai
Sincere words about impact + practice
Surrender Coronavirus has meant that I haven’t swam in months. It was warm today in Helsinki. So I decided to go to the beach. I took a few strokes, but didn’t really swim. I found myself watching the waves coming at me, feeling into what that was like. Feeling the forcefulness of the sea. Though …
Desktop: JPEG Autorotate photo rotating app
“Ever had the problem of pictures taken in portrait showing up in landscape in emails, on your blog or on your mobile device? JPEG Autorotate is the solution. It’s quick, it’s simple, it’s free.” -Raquel JPEG autorotate: read reviews & download to try it yourself Published around 2005, still has 5-10K downloads per year in …
Continue reading “Desktop: JPEG Autorotate photo rotating app”
The Risks of Modal User Interfaces: A Deep Dive
I love how much power understanding the fundamentals of UI/UX design can give you to build experiences that really flow smoothly! One of these fundamentals is modes – and how to use them well. Modes are sometimes necessary, but they can be a risky choice in a user interface. This is true especially if the …
Continue reading “The Risks of Modal User Interfaces: A Deep Dive”
Product & framework thinkers: Case studies. And how about AI?
2023-06: Updated to include concrete examples and to discuss AI/Large Language Models (LLMs). Developers and UX professionals often seem like beings from different planets. I’ve found that shared understanding about software project goals can sometimes be hard to achieve. Have you ever taken a moment to consider how software gets designed and developed? You might …
Continue reading “Product & framework thinkers: Case studies. And how about AI?”
Design and Learning theories: Giving a workshop on UX
I got my original education in the field of HCI (Human-Computer Interaction). In educational learning theories, some of the same fundamental principles are central. A product designer, like a teacher, cannot assume much about the recipient of the experience they create. A product proves to be good only when a real person has demonstrated through …
Continue reading “Design and Learning theories: Giving a workshop on UX”
Rethinking Usability Education: Bridging Theory and Practice
Introduction During my working life I’ve taught some trainings and lectures on UX and courses on software development. Here’s some reflections on what I found central. Usability or User Experience (UX) education plays an indispensable role in bridging the gap between the theoretical principles of design and their practical applications. This post explores the essence …
Continue reading “Rethinking Usability Education: Bridging Theory and Practice”
Qt: Adjust QTableView height according to contents
In my layout, my dynamically generated QTableViews seem to get resized to only show one row. I want to have the container of the table views to have a scrollbar instead of the individual table views, which should show full contents. Qt doesn’t have anything built in for this apparently, you need to calculate and …
Continue reading “Qt: Adjust QTableView height according to contents”
Merge Qt .ts files
Moved to different url See also: A Practical Guide to Changing Default Language in a Qt Project Small desktop app to solve a practical developer issue. It allows combining the translation files of multiple separate Qt projects, so they can use a common file. April 2017 View on GitHub Other Qt things on GitHub
User Experience Design in Open Source: Inviting the Users
In any software project, we need to understand the people who will use the product. There are many different points of view onto what approach we should take. Spool: Vision, feedback, culture Some promote approaches to usability practice alternative to User Centered Design (UCD). Spool (2008, 2009) calls the attention of the usability community to the …
Continue reading “User Experience Design in Open Source: Inviting the Users”
Getting Twincat XAE to function on MacBook Pro
I finally got sick and tired of all my windows laptops breaking physically one way or another. First there was ThinkPad Edge, then there was the ultrathin Sony Vaio (bought just before Sony sold the business and discontinued the thing). Developers, Linus Torvalds included, online seemed to agree that MacBooks are the best hardware on …
Continue reading “Getting Twincat XAE to function on MacBook Pro”
UX Design Concept: Learnable Regular Expressions (2016)
Reach: 91K~1700 recommendations (Hacker News, Reddit, Twitter & Medium) Regular expressions you can read: A new visual syntax (and UI) Regular expressions are a technical tool, not unlike a domain specific programming language. It is intended for situations where you need to match patterns in text, in order to filter or manipulate it in various …
Continue reading “UX Design Concept: Learnable Regular Expressions (2016)”
Web: sleepCal
A sleeping calendar for circadian rhythm disorder patients (G47.2). Built for a friend in 2012. This is a simple single page PHP script. A key reason this is listed is to demonstrate that often it doesn’t take complex tech or extreme polish to meet a need and provide a lot of value.
Advice for someone getting started with learning Qt
Spend as much effort as possible in learning to use Qt’s Model View Delegate functionality. It can be a lot of work to wrap your head around, but once you get there, you can do very powerful things with it.
Connecting radio buttons to QSqlTableModel in Qt
You would guess this would be pretty trivial. Guess again. I was looking for a way to map a radio buttons to a QDataWidgetMapper as per this forum thread.
Test driven development and usability testing
See also: Usability and being human blog Robert Martin spoke charismatically about test driven development in RailsConf in 2009. (Video link expired) He promotes the idea of having automated tests (unit tests) and running them all the time to prevent your code from becoming an enormous, unholy mess. When you have tests, you are not …
Continue reading “Test driven development and usability testing”
Learning and state machines
Guiding learning can be a deceptive thing. Where an expert might think something is simple, the student’s journey toward understanding is filled with twists and turns the expert no longer even remembers. This is really the core challenge of teaching: how to communicate the complex when your own mind has already largely automated those early …
Future proofing learning in software development
Authors: Olli Savolainen and Daniel Schildt Olli: In my opinion, it is important in the teaching of programming fundamentals to focus on the essential: Learning what will help you get started quickly and implement your own ideas. This is particularly challenging with C and C++ languages, teaching of which is sometimes still needed. When a …
Continue reading “Future proofing learning in software development”
Online store redesign for enhancing discoverability
Redesign of online store: virtasenkauppa.fiThe online reseller was running into trouble with their existing online store with 10000’s of items. Their offering had fragmented into many separate stores. Due to an inventory size of several ten thousands, there were issues with product discoverability. I built a wireframe with an overhaul of the entire information architecture, …
Continue reading “Online store redesign for enhancing discoverability”
Reading in an .sql text file into an SQLite database in Qt
For unit testing, I needed to read ForceProof project database into an in-memory SQLite database, from a .sql text file. Turns out, Sqlite (at least in Qt) is unable to execute multiple statements in one string.