Printer UX

I’m going through some old twitter bookmarks again and found this gem from Troy Hunt. He has printer problems then has to go through some awful “user experience” with the Epson diagnostic program which seems a bit of a wind-up.

It features such delights as

Is the printer turned on?” with the button “Ok”.

Problems are found. Fix them.” with the button “Ok”.

Customer Feedback Stories

I’ve compiled a list of feedback from customers/external stakeholders. These were either from internal emails that were forwarded on, information from Support, or public posts on various social media platforms.

ACME is completely closing down. I advised to re-start ACME. Customers often refer to our software as ACME when that’s our company name. It always sounds bizarre to us, and can sound like a completely different meaning.
“ACME is closing down”“you heard it here first . we’re shutting shop”
The group’s first software, named ‘ACME’, had a character based user interface and was developed from 1990, with full commercial roll-out taking place in 1993.Even the newspapers used the wrong name. No software was released simply under the company name without any subtitle
We have been speaking to our insurance company about the potential of a serious issue happening and they have advised us to keep them informed of any action or non-action from ACME in getting this resolved. “I can’t stress enough the risk associated with the poor performance of the ACME system as it currently stands, and saying that it’s being looked at and is with development is not acceptable. This has been with ACME for months now, and it remains unresolved. The issue needs to be a priority, and we need to have assurances that it will improve ASAP and not within a few months.”Sometimes I have felt we have wrongly prioritised issues and it’s easy to understand how some users will be fed up if they perceive their issues haven’t been fixed promptly. Getting an insurer involved sounds like a serious escalation!
One of our employees, and it only does seem to be the one,(this has been going on for about a year now) when he is working his way through his tasklist, the blue link disappears and his task prints out. To make the link come back we have to go out of workflow into another section within ACME then back into workflow and the blue link re-appears. He is refusing to do any tasks at all now because it is taking him forever just to complete one. Is anyone else having this problem? What can be done to resolve this? We have tried a new smartcard, new keyboard, new computer, our local IT department have signed on and checked he has all the correct software and they can’t see any problems – it has to be an ACME problemOccasionally, there can be obscure issues just affecting a small number of users. It’s always a pain trying to diagnose given limited people have seen the issue and might not be able to recreate on demand. I thought it was funny how the user is refusing to work, and how they replaced all hardware, even the keyboard!
I’ve had a customer ticket that became about 4 or 5 different ones and it still hasn’t been resolved – the workaround is a bit of a hoot as well.
The 1st ticket is 9 years and counting, but I actually think it’s been in ACMEPro since conception…
The mobile number displays in the work number field (and vise-versa) when printing ‘Full Export with Attachments’ and ‘Full Summary with Attachments’ WorkaroundBefore printing a full summary with attachments, change the order in which the telephone numbers are showing in the customer registration details.
This is a good example of a bug that would be so easy to fix but for whatever reason has been deprioritised, much to everyone’s frustration. Then some people are happy to use a stupid workaround of swapping the data before printing, then presumably swapping it back after.
“i get the wheel of mindfulness when it’s trying to locate me. i like the look of it though. currently a long way short of minimal viable product. ” Users like coming up with creating names for a loading wheel. “Wheel of mindfulness” is a good one. I like how they claim the new feature looks good but way short of actually being usable.
“whose design? A moron’s?”I’ve lost the exact quote but a customer once said this when they asked why a screen had been completely replaced. We had said it had been redesigned with new functionality and ease of use.
This time our approach was a little different as we decided to employ Guerrilla research in order to understand our users’ experiences. Despite the name, I can assure you that no animals (or users for that matter) were harmed during the research! This one wasn’t from a customer but a colleague doing user research. I think they have convinced themselves that Gorilla is spelt Guerrilla and they made themselves look like a total idiot.
Another day, another crashed computer…wasting so much valuable time I have customers waiting and I’m running out of patience…Some users claim to see crashes every day. I understand their frustration, if true.
“when it does work, it is actually amazing”.This is similar to the “looks good” one. It’s like they know the feature is bad but want to say something good because we have asked them for feedback.
My list – some concerns are more serious … others just glitches that frustrate on a daily basis
Maybe we can do the job of the people who are meant to be testing the systemACME Glitches1) Every letter that’s sent from word via email is sent as “new letter 1” – no system to track / individualise – UNSAFE2) When completing tasks, I cannot send electronically unless I go into the summary screen and send from there instead. Doesn’t happen all the time so clearly a glitch.3) Dancing word document  – screen adjustment – every time you create a new word document.4) Tasks ribbon across middle – never accurate. does not refresh unless in the workflow (so what’s the point as I’m already in workflow!!)5) Task ribbon across middle – Doesn’t show what tasks for me or for others6) No functioning alert system – enough said (similar with template manager)7) Non-functioning messaging system. Will need to removed OR replaced with something that works8) In a task. you can select a cluster of text (ie using ctrl+shift in reverse (Ctrl+shift + <) but you can’t do it with ctrl+shift+>.9) Why does ACME forget my pin. frequently in the midst of digitally signing? An error box appears saying “pin incorrect” and I have to log off and back in to “re-connect”10) how many people have their details in this format  “AHMED, Kamran (Mr)” – yet this is the chosen format of ACME when adding macro to letters11) calendar does not highlight bank holidays / public holidays on appointments screen12) Open any template – cursor never in the only box you’re going to type in to.. same for customer search function etc. if there is a box to type in – why nothave the cursor there on opening that search function?13) not able to order searches by clicking on the field bar – MS Excel and pretty much every other search function allows thisit works in some parts of ACME and not other… why!14) Appointment book refresh. i reported this myself 4 years ago and i was pacified. Then ACME brought out a “fix” – Keep clicking refresh!.Now its failing all over again15) ID number  – the current “search” tab does not allow you to enter an ID number with spaces.YET when you “copy ID number” from selected bar you cannot paste that back into ACME’s own “search” tool because it has spaces. Therefore ACME does not recognise its own output
A rant from social media. Sometimes I think it would be good to target certain users and actually address their complaints. Most seem like quick wins.

Self-inflicted problems

Instead of reinventing the wheel, Software Developers like reusing code. When using Javascript, a common place to use such code is NPM; Node Package Manager.

The recent NPM incident caused malware to be shared via many NPM packages. As far as I understood, I believe Github security tokens were stolen which allowed impersonation to check in malware and propagate to more packages.

As a precaution, we were told to cease development so you had hundreds of developers sitting idle.

We knew our teams didn’t use these packages directly but I suppose investigation was needed for transitive dependencies, and there was always the risk of packages we did use suddenly being infected, but we could just stop upgrading to new versions.

We thought it would only take a day or two, so I took the day off and would come back over the weekend to normality.

However more investigation was needed, then we had to switch over to a different internal NPM server with only approved packages being available.

I had no idea what the criteria is for approved packages. How do you know if something is secure other than the currently known, published security issues? Typically, bugs and fixes are added all the time. 

I think there was some kind lead time before new versions were accepted. I suppose it prevents this quick publication of malware if you just have a lead time of only taking packages more than a month old.

Since we had a new NPM server, we needed to publish packages to the new one, but we weren’t allowed to use the old ones. So new versions had to be published which then means you need to update all your software, and it’s a massive chain of dependencies involving all teams in the department.

I wasn’t personally involved but it sounded horrendous to coordinate and we were delayed by around 3.5 weeks.

We weren’t even affected by malware. We have loads of sub-companies in the overall group and no real incidents between them. Hundreds of developers were idle, and it was self-inflicted.

KM to miles

We had a form where the user can search for certain types of businesses in the area, and it displayed the distance from your location in miles.

One day, a user was posting all kinds of angry abuse because they said the distance was wildly inaccurate.

We were using a 3rd party API that was supposed to return the distances to the businesses in KM. It seemed that at some point, without us knowing, the API had changed to return the distance in miles, and our current code was expecting KM then we had code to convert it to miles. So now it was coming in as miles but we were manipulating the value to be wrong.

My reaction was that we should just inform the 3rd party to change it back. If their documentation says it is KM then they can’t change it without informing all the providers. If we changed our code, and the 3rd Party then reverted without informing us again, then the values would be wrong again.

A manager decided to go against my advice and told a team they needed to fix it. Soon, a Junior developer contacts me to say he is doing the fix and wants me to explain the situation and be available to review the code.

It’s a simple change, and he adds some unit tests. I pointed out a few more scenarios that he could add since our code was formatting to 2 decimal places. He could add tests for 3 or more decimal places in the data, and include larger values like >10 so you have 2 values before the decimal point.

So as far as I was concerned, if we HAVE TO make a change, then this is the simplest change and he has improved the codebase with the unit tests.

I approved the changes, and 2 other Senior Developers approved too.

When it was ready to go into the Main branch, another Senior flagged some duplicate code. He was correct, but it wasn’t a big deal because it’s one line of code. To “fix” it, you would need to create a new file for one method with one line of code which seemed overkill.

Then another Senior Developer questioned why one class called a method just to delegate to another method; when it could go direct. That scenario happens a lot, especially with design patterns where you want strict degrees of responsibility so the UI shouldn’t have logic. This was a very opinionated change, but since a Senior Developer had said it, then the Junior felt like they should do it.

So after the initial simple change, and 3 developers requesting some very simple changes, he was finally ready to commit the changes. Then a Principal Developer saw the change and said it was definitely the wrong thing to do since we need to get the 3rd party to revert their change. 

That was exactly what I said initially.

Digital Clean Up & Net Zero Sustainability

Several years ago, my employer was constantly talking about Net Zero/Carbon Neutral so was talking about reducing energy costs and planting trees. I think part of it is just “smoke and mirrors” as they were shutting down some data centres but then moving it to the Cloud, so the servers are still there, it’s just someone else’s problem.

The other aspect of why it’s all nonsense is how they always talk about using AI for everything but this is notorious for increasing energy usage.

I think it’s just the usual virtue-signalling propaganda.

We should all be aware that sustainability is high on our agenda! Living in an increasingly digitised world and working in the technology industry, I feel we should all be mindful of how much of an impact our digital activity has on the world we live in. 

Did you know that a typical year of incoming emails adds 136 kg of emissions to a person’s carbon footprint, or the equivalent of driving 320 kms in an average car. Digital pollution is the greenhouse gases that come from building, delivering, and using digital technology. It makes up 4 per cent of the world’s global greenhouse emissions – double that of the global aviation industry – and this number is growing exponentially as our way of working and living becomes increasingly digital. 

from UNICEF: Five tips for reducing your digital footprint. 

 Topics we have been exploring: 

  • Reduce energy consumption of devices – Energy is the dominant contributor to climate change, accounting for around 60 per cent of total global greenhouse gas emissions.
    • Do we all shut down our laptops when not in use for long periods of time? 
    • Should we make sure we close programs that we aren’t using?  
    • Could we consider reducing the screen brightness?  
    • Do we always leave devices plugged in at full charge? It might be better instead to charge for short and regular intervals as this also increases the battery life. 
  • Reduce our use of email – As the above quote highlights emails contribute massively to digital waste.
    • We shared tips of how to reduce emails –
      • Do we need to ‘reply all’?  
      • Do we need to send an email at all? Could internal conversations be held on Teams instead? 
      • Could we make use of emoji reactions for internal responses?  
      • Does the email need an attachment, or could we use a link to a shared online file instead? 
  • We looked at ways to reduce emails in our inbox and make it easier to tidy up.
    • Do we have lots of emails that could be deleted? It’s possible to set filters to sort specific types of emails into folders and use auto-archiving settings to delete them at specific time intervals. This is particularly useful for our team where we have lots of automated emails which we don’t need to store for long periods of time. Creating rules to automatically delete these would make it easier for us to manage.  
    • If emails need to be kept, could these be archived? This may be useful if they don’t need to be accessed often. Storing them elsewhere may mean less energy is used when loading Outlook and searching through emails. There are auto-archiving features to make this simple and less time consuming too.  
    • Do we always unsubscribe from any emails we don’t need or want? The safest way to do this is to log in and adjust notification settings on your account e.g. unwanted reminders and adjusting Teams settings. When discussing this topic, it is worth reminding everyone to always be vigilant of the potential for any email to be a phishing attempt and not to risk clicking on any links from unknown senders.  
  • Clean up old files – Data that are stored online take space on servers that require energy to be active 24/7.  

“Whether it’s meeting our net zero targets, creating an inclusive working environment, or having strong and ethical governance practices – sustainability in all its forms helps drive us forward as a business and forms a key part of our strategy.”

We were encouraged to set a personal objective for the year based on Sustainability.
Suggestions include:    

  • reducing your carbon footprint (through e.g. reducing your business travel or digital footprint) 
  • volunteering with your local community using your paid volunteering days
  • championing equity and inclusion in your role, ensuring accessibility is considered in any output or practice 
  • becoming an active member of an employee-led group or the Sustainability Community of Practice’ 

 Even the Software Development process is sustainable. Really, it’s just more corporate buzzwords and meaningless jargon.  

Sustainable Software Development lifecycle

There is a comprehensive reference architecture on Confluence covering account structures, principles, application architecture, data architecture, security architecture, standards & templates, sustainability, app launch, EDA and more.  

The tech strategy and architectural runway is fully documented on Confluence covering all core technology and platform services, components and enablers. It is future proofed and covers all investment case technology needs, and product roadmaps.

Environmental Sustainability is close to my heart and is a critical strategy as we work towards Carbon Net Zero by 2040. 

Closing Thoughts

I think the claim to be Carbon Neutral is mostly virtue-signalling and although they might come up with some schemes to reduce carbon emissions, it will mostly just be a box-ticking exercise and can just move the problems elsewhere. So the field staff may well have electric cars, and most people work from home. But since we aren’t just heating a single office, but hundreds of homes now; then we probably are using more energy overall. Then everyone is using AI for simple communication.

More propaganda at work

I’ve stated in many blogs that our head office is near a city with a large non-white population so we have a larger non-white workforce than most companies. As a Software Developer, the Development team is mostly male, but managerial positions are often held by women. I’ve never observed a need to change the natural status quo with forced diversity practices.

The “woke” movement talks about diversity and being welcoming to everyone. In practice, it is unachievable to be welcoming to literally everyone because people will naturally have different opinions and some of these can be opposing.

So a much quoted example; there can be religions that will be against homosexuality, so how can you be welcoming to both the LGBT community, and people from those religions?

I find it bizarre that you constantly get told that we need to “create safe spaces” for people, “all people are welcome”, but then at the same time there’s certain views that aren’t tolerated or frowned upon by the people that want such DEI practices. I find most people I meet claim to be left-leaning politically and they seem to have a hatred for right-leaning politicians.

It’s contradictory, but then the constant messaging and certain phrases are basically propaganda and gaslighting. 

I’ve seen some people liken this behaviour to cults. Where there’s strict rules; and deviating from the opinion of the leader (and therefore the group) means you are cast out. The repetition of phrases means you are constantly aware of the belief and because you hear it so much, then you don’t question it because you just accept it as true. Anyone beginning to question things is discouraged. 

There was one recent post about “Allyship” where an ally is defined: 

 “as someone who is not a member of a marginalised group but wants to support and take action to help others in that group’’  

Then it was sold as:

 “Being an ally, in both the workplace and your personal lives, broadens our understanding of all cultures and backgrounds. Removing boundaries to give way to respect and friendship creates security, a sense of belonging and allows everyone to be their authentic selves. We wholeheartedly believe in the importance of embracing and welcoming everyone and providing a place of equity and inclusion for everyone to thrive. To create a place of security and belonging”

 Then the usual propaganda phrases were used

 “are a safe space for individuals to express themselves” 

 How to be an ally
Educate yourself and others.
Be careful not to ask intrusive questions. Personal information is a privilege
Everyone makes mistakes. Be accountable for your mistake, educate yourself to make an active change

This is quite culty isn’t it. Telling people they are wrong and need to conform to the belief. Don’t question it.

Safe Christmas

Another recent post talked about creating safe spaces for Christmas. Why would anyone feel unsafe at Christmas? absolute mental. We are just making up issues now. 

In celebration of Christmas, we have issued our 2nd North and South Conversation. The North and South initiative creates a safe space for colleagues in the UK and Chennai to share stories and ask questions, building a sense of knowledge and togetherness through the art of video and conversation. It is important that everyone at work feels comfortable being their authentic selves. We have a clear goal dedicated to just this: creating a supportive, inclusive environment where everybody can thrive, both doing and being their best.

Safe space, authentic selves.

Stickers

When I have walked around in my neighbourhood I have occasionally seen stickers placed on pedestrian crossings, lamposts, or electrical boxes. Some have been political in nature, but mostly have been pro-trans.  I thought it was somewhat ironic when one guy posts a blog at work about “dogwhistles”.

The claim was that he had seen “negative stickers that are currently in circulation in public spaces which may cause negative and unwanted feelings in the LGBTQ+ community. “

The reasons people can do this was: 

  • To make the kinds of people they dislike know they are unwelcome and that the place is unsafe for them. 
  • To send a positive message to people who believe in the same thing as them, through symbols the wider public might not know. This is sometimes called a “dog whistle”, named after whistles that dogs can hear but people can’t. 
  • To shift people from a more general form of discomfort to more extreme reactionary views.

Could a reason why there are anti-trans stickers to counter the pro-trans stickers? The constant pushing of what the correct narrative to believe will naturally create counter action; which means these “dog-whistles” are necessary to show there are people with the opposite opinion.

Are both types of stickers “dog-whistles”, or is it just the ones he doesn’t like?

The offensive stickers he had seen were “against trans women using women’s toilets”, “single sex facility – women only”, and “Protect women-only spaces”. 

These are mainly feminist slogans which was a relevant political movement when I was growing up. Why is feminism not a valid thing to support now?  I find it strange that the biggest allyship these days is from young women, so it’s like they are fighting against what the previous generation of women fought for.

As expected, all the comments were agreeing to conform. You cannot have diverse views on any topic in the name of diversity.

“Thank you for sharing, I didn’t know about this… sending support to those who suffer through this “

Psychological safety

One manager suddenly started going on about “psychological safety”. The usual “safe space”, “inclusive”, “authentic selves” propaganda has been used:

“We believe that fostering a supportive and secure environment is essential for our collective growth and harmony. To ensure that everyone feels comfortable, valued, and heard, we are conducting a brief survey about psychological safety in our teams.

Your honest feedback is very important to us. By sharing your thoughts, you will help us understand how we can enhance our work culture and create an even better experience for all. The survey is anonymous, and your responses will be kept confidential. Your insights are invaluable in helping us build a stronger, more inclusive team.

This week, organisations up and down the UK will be celebrating National Inclusion Week. It is an opportunity to reflect and highlight inclusivity in workplaces.

We wholeheartedly believe in the importance of embracing all cultures, welcoming everyone and providing a safe place of equity, inclusion and belonging for people to thrive.”

Glint Survey 2025

We recently did a “Glint” survey. It was to gauge sentiments about how people feel working here.

All departments completed the survey. Some of the statements we scored, and the results for Development were as follows:

Resources” “I have the resources I need to do my job well” – 63

Energised” “I feel energised in my current role at work” – 58

Contribution” “I understand how my work contributes to the company’s success. – 75

All of these were 5-10 points lower than the rest of the company.

The department is getting worse, but no doubt no action will be taken on the senior managers.

New Login portal

At work, whenever we need to log into a website, it displays a custom login screen. The text box labelled “Sign in” has the following text

“Enter user name as instructed below in GREY Box”

At the bottom, there is a grey box:

“Enter the password associated with your username”

The text box actually wants your email address but tells you to enter your username but to read the grey box. The grey box tells you to enter your password.

Absolute shambles of an implementation.

Code Review Argument: “Why are you reviewing!?”

There was a code review submitted in a project branch. I had no reason to review it because I wasn’t assigned to the project, but I often like to be nosey and see what is going into the releases.

I noticed a few classic mistakes like server-only code placed in “common that gets installed to both client and server when deployed. There was also a caching problem where the first call will store the data in the cache, then a call from a different user will then go into the cache and grab the other user’s data! It’s the classic mistake of forgetting about how the app servers are shared between many users and many organisations.

For years I have flagged these problems up. Maybe we should have it as part of an induction process to go through common misunderstandings. Anyway, I send them on to some developers (Dean and Mark) that I have discussed issues with or joked about them in the past. Each developer then decided to also leave comments on the review even though they also weren’t assigned to it.

In a private chat, Dean said “why isn’t the lead developer spotting these mistakes and teaching them?“.

I assumed he might have actually then put an official complaint in, because Gary, the Senior Developer assigned to the project; then left an angry comment.

“why are you commenting on a project level change? I thought you were struggling for time and this is a project branch that I haven’t yet reviewed”

The thing is, he hadn’t said that to Dean and I, but to the other developer Mark. It’s like maybe they had some kind of previous arguments and now it’s flared up.

Mark rightly responded:

“You’d added comments. This isn’t the place to debate such things, please contact me by message if you have a problem”

I think it could be the case that Gary hadn’t fully reviewed it, just glanced at it, left some trivial comments, and meant to come back. In my opinion, if someone does the review for you, then doesn’t that save you a job? Many developers seem to hate code reviews since they would rather be writing code, not reading it. So really he should be grateful. But he has taken it like a personal attack like we didn’t trust Gary to point out these major flaws in the code.

It’s also beneficial to spot problems as early as possible. There’s nothing worse than aiming to get the project in a release, then when you want to merge it in, then the experts then look at the code and tell you that it has major flaws and cannot be released. At least we have flagged it early in the project and they have plenty of time to address it.

Access To Live: Length

I needed to check the live databases in order to investigate a bug. I had to request access by filling in a form.

There was a field to specify how long you need access for.

Sometimes, you will know you just need 1 day, but other times, you might not know how long it is going to take to complete your investigation. As the saying goes “How long is a piece of string?

It said on the form you can leave the date blank, and they will give 2 weeks by default. I was incredibly surprised by this.

  • A) You would think they would be really restrictive
  • B) It’s like they actually understand how you work!

I thought that would be the best option for me, so I left it blank and submitted it.

I then received an email, stating my request was incomplete and she needed to know how long I need access for before she can approve my request.