As something of a follow-up on my article on using boring solutions from two weeks ago I'd like to point you to a blog post by Justin Etheredge, cofounder of software development company Simple Thread: Software Complexity Is Killing Us In this post Justin outlines in which ways software development has become easier in the past few decades and also points out the ways in which it hasn't. Most of the complexity of software applications accumulates in the layer that deals with business processes. ...Read more
One of the quintessential laws of human-computer interaction (HCI) and by extension software user experience is Fitt's Law, which states that the time required to rapidly move to a target area is a function of the ratio between the distance to the target and the width of the target. The most common application of this law these days can be paraphrased as "The wider an object is on the screen and the closer it is to the mouse pointer the easier it is ...Read more
Often when working with both startups and project teams at larger, more seasoned companies I encounter a variation of the not invented here syndrome. This usually starts with the well-intentioned idea that in order to build the actual product you need ancillary services A, B and C in order for the product to work. However, more often than not instead of building the 'perfect' solution for your product yourself it might be a good idea to take a step back and think about ...Read more
HTML is an API or rather it could be if we used more in the way it was intended. In a comment on this Hacker News post about Toapi, a library that makes clever use of XPath expressions in order to provide an API from existing web pages, a user wrote Now I don't want to be a downer: but we collectively seem to have forgotten that HTML as a markup language with sufficient semantic elements, is a perfect API in itself. ...Read more
Analysing an existing application if you join a project.
Assessing the quality and maintainability of an application.
Identifying soft spots in an application which could benefit the most from refactoring. There are numerous reasons for wanting to size up the complexity of an application. In addition to general and language-specific tools provided by IDEs and applications such as SonarLint / SonarQube it can be useful to not only take framework specifics into account but to actually make use of them to get a better ...Read more
An often-heard counter-argument against remote work is that those working remotely will miss out on so-called water cool talk, i.e. communication that happens casually and outside of scheduled meetings and discussions. In my opinion that kind of talk can be considered toxic. If it's merely about socialising and getting to know your co-workers better that's certainly fine and conducive to a positive work environment. However, often water cooler talk involves bandying about rumours as well as creating information silos between those who happen ...Read more
At RuhrJS 2017 Stefan Judis gave an interesting talk on DOM APIs in the context of reactive programming and Observables:Read more
At RuhrJS 2017 UX designer Alexandra Leisse talked about her personal experience with designing user experience for enterprise applications and how to deal with the continually growing complexity involved in that process:Read more
At RuhrJS 2017 Kim Crayton gave this energetic and hopeful as well as insightful talk on community engineering in terms of diversity and how diversity benefits both communities and companies from an economic point of view:Read more