home.social

Search

1000 results for “im_a_GDeveloper”

  1. Since he joined us at #Styra, @charlieegan3 has taken developer relations to the next level, continuously delivering results exceeding all my expectations pretty much everywhere he's involved. On top of that, he's a great colleague and friend 🙂 I'm very happy to be able to share that he now bears the title of Senior Developer Advocate. Congrats Charlie, and well deserved!

  2. Why is the Universal Credit website so bad?

    I am professionally embarrassed for whoever created the Universal Credit Website (UCW). In this post, I will explore why the website is so bad and what should be done to fix it.

    I’m writing this in the hope that someone within the government with the power to do something reads this and implements at least some of the changes that the site is so desperately in need of. (The same reason I analysed the Boots website). There is a summary of changes needed at the end of the article.

    Legal disclaimer: I’ve used screenshots of the website. This is legal because (1) fair use and (2) OGL.

    A brief intro to Universal Credit

    Universal Credit is the UK’s highly criticised unified benefits system for those out of work or currently unable to work. In theory, it was also an income support for those just starting out in self-employment. It was the brainchild of the political right (the Tories). It has an unbelievable number of shortcomings. Many hope that Labour will refine or replace it but I’m not holding my breath on that one.

    Claimants of Universal Credit (UC) must make all contact through the Universal Credit Website. Are you old and have never used a computer? Too bad.

    You’d think that such a key instrument of the Department of Work and Pensions (DWP) would be fit for purpose and well designed. You’d be wrong to think that.

    The DWP are still migrating everyone who claims any sort of assistance to UC. This, I think, is a terrible idea. Not only because UC is a mess but also because the website barely works.

    Dangers of the Universal Credit Website journal’s lack of app

    The DWP has not (as far as I know) made an app for UC users. So guess what the scammers made. Go on, guess, I can wait.

    Yep:

    People are being warned about a scam involving a fake Universal Credit app and text messages.

    The app is called ‘Universal Credit UK’.

    The Department for Work and Pensions is investigating, and is encouraging people not to use the app or respond to any suspicious text messages.

    People should use only the DWP Universal Credit website, and if you are unsure how to claim, the Citizens Advice Help To Claim service can offer support on 0800 144 8 444.

    Anyone who has given information to the scam should report it to Action Fraud on 0300 123 2040.

    Warning over fake Universal Credit app and text messages, CAB Hull and East Riding

    I’m going to come back to this topic towards the end where I get technical about how to fix the UCW.

    Shortcomings of the Universal Credit Website’s User Interface

    There is so much wrong with the UI of the UCW that it is hard to know where to start. It is clear that the site has been created for the benefit of the UC’s management and agents without any consideration for the people it is supposed to serve. This is a common failure by businesses that are all set to fail – they create things for their needs and not the customers’ needs. You’ll see some clear examples of this soon enough.

    It was reported that about one-third (32%) of benefit claimants being migrated to Universal Credit failed to make a valid claim.

    Statistics released this week by the DWP show that 32% of all claimants sent a universal credit (UC) migration notice up to the end of February 2024 failed to make a successful claim and had their legacy benefits terminated.

    In total, a shocking 284,660 individuals did not make a valid claim and had their benefits stopped.

    One third of UC migration claimants fail to make a successful claim, 15 August 2024, benefitsandwork.co.uk

    I strongly believe that a large part of the problem is the shockingly bad Universal Credit Website (along with the fact that UC is badly implemented as a whole).

    The Universal Credit Website is a terrible CRM

    This website that all Universal Credit claimants must use to communicate with the DWP is essentially a CRM (Customer Relationship Manager). CRM software is at the heart of most successful businesses. The UC one is possibly the worst CRM I have ever witnessed.

    You could have slapped up an instance of WordPress running a free CRM plugin and gotten something better.

    I’m going to show you many of the ways in which the UCW Journal fails at being a simple CRM thing. In short, the design, implementation, and customer interface is a giant steaming turd. I can find, at a push, one nice thing to say about it.

    Misleading landing pages

    If your session times out and you sign back in, this is what you see.

    It looks for all the world like you have to recreate your account. It is only when you more closely examine the page that you find the link to sign in to the UCW. Like, wait a minute Scoobie, didn’t we just sign in to that?

    This is either an example of incompetent design or deliberate arse-hole design. Either way, it can only serve to confuse people leading, I have no doubt, to cancelled accounts or sanctions. There is no excuse for this complete failure.

    Unclear priority elements

    This is what you might see once logged in for real. (I’ve redacted any specific or personal information).

    Can you tell just by looking at this what the most important section of the site is? The part you must pay special attention to in order to keep your claim live?

    If you said, “Journal” then you are already ahead of the curve. That link top right in a grey box is the thing that matters most. Never mind that grey is UI shorthand for unimportant or disabled.

    Not to worry, there are eight boxes lower down. One of which also takes you there. Maybe it is just me but my automatic ad-blindness had me ignoring all of that advert-looking crap until I started writing this article. The UCW “Journal” is a sort of half-arsed CRM (customer relationship manager). As a CRM the Universal Credit Journal fails so hard that I’ve given it its own subheading. A lot of this post will talk about how hard the journal system fails.

    The Universal Credit Journal language is all wrong

    There is a way to use language such that a task that is needed and a task that has been completed are easy to tell apart. Universal Credit’s designers clearly wanted to have nothing to do with these good design principles.

    Someone needs to go back to school and learn that English has tenses (past, present, and future)

    Take a look at this and tell me if the two blue links are tasks pending or tasks completed.

    If you said tasks completed, you would be right. If you said tasks pending I completely understand. That’s because in English “Report a change” is an order or a thing to do while “Reported a change” is something that happened in the past.

    In technical terms, the tenses of the entries are incorrect. I’m a native English speaker and long-time technical user who expected bad UI and even I was unsure. Now, you could blame this on my dyslexia and you may be right to do so. However, if I (a talented geek and native speaker) struggled with the incorrect tenses used here how much more would non-geeks and English learners struggle?

    How hard would it be to change “Tell” to “You told” and “Report” to “You reported”? Or, if feeling lazy Prepend “Completed:” to the linked entries? It is only now that I noticed the first one ends with “completed” (the second one does not). If I didn’t see it, who else didn’t?

    Send is not the right word here

    When I ask for comments on my blog I do not say “send me your comments”, I say “leave me your comments”. That’s because “send” implies transmission not interaction. So, why-oh-why does the reply link say “send reply”? I’m not emailing you, I’m leaving a comment.

    Needless priority given to dates

    Let’s look at that Journal thing again and tell how important those dates and times are:

    The date and author of the entry are what is known as metadata. That is, data about the data. The only key element here is the entry itself. Yet the entries get about half the space as the rest is eaten up by metadata which is treated as equally important.

    It looks worse on mobile.

    Vital calls to action are unlinked

    Let me quickly introduce you to a business term – CTA or Call To Action. A CTA is the thing that you want the person to do in response to what they have read. My CTA is usually, please leave me comments because I love comments.

    In this example, the CTA is to carry out a “to-do list” action. Failure to do so means loss of money.

    The link, however, is for leaving a reply. Without scrolling back up to see the rest of the UI, can you tell me how to do a “to-do”?

    Those of us used to dealing with shite websites could probably find our way to the top and find the other greyed-out link (grey means unimportant remember). Click that and then scroll through any pending items and find the one that means you get paid. I guess the design principle here is: If you want this money, you had better work for it.

    On social media, when they want you to fill out your profile, they will show you a CTA with a link to the place where you do the thing. This is because they know that you link vital actions rather than forcing users to go searching for them.

    Universal Credit leaves its users searching. No wonder it was reported last year that 900,000 Univeral Credit cases were closed by the DWP

    The reading order is potentially confusing

    Take a look at this journal entry and see how quickly you can work out if the user needs to go to an appointment or not.

    This is where the user is expected to regularly check for important updates.

    I’m saying that this UC Journal has a wildly inappropriate reading order. The first thing you see as you scroll down is an appointment has been cancelled. Oh, you might think, did I have an appointment? There was, you learn, an appointment made the day before.

    There is, as far as I have been able to learn, no way to connect one journal entry with another.

    Universal Credit is not Twitter, FFS!

    For no reason that I can ascertain, replies have an arbitrary limit.

    If I have several pages of information to share, should I end each section with “1 of 6”, “2/6”, “3/6”, etc.? All that would do is make the textual content hard to follow because the DWP UC “Journal” is not threaded nor is it object-grouped. It’s just a wall of text in reverse chronological order.

    The Universal Credit website is buggy as hell

    Then there is this shit.

    When you click in to “send reply” the whole page flips out. Would you like to see that in a small hand-held viewport?

    I hope you like scrolling.

    This is not even a new problem. People were complaining about the UI back in 2017

    Application online is not user freindly and is quite a messy website. Gov id verification are complicated and have system failures and required me to phone the Gov id verify contractor for technical support. Universal credit website need to be simplified and made user freindly. The goverment id verify contractors will boil yourr blood by asking you to fill in your personell details at least three times, its mad.

    Written evidence from Miss Amina Khatun (UCR0073), committees.parliament.uk, October 2017

    Yes, that quote is part of the official parliamentary record. Legally speaking, the DWP “knows” there is a problem. I mean, come on, surely they have gotten the message by now, right?

    You cannot attach evidentiary documentation

    Have a report from a doctor that may be relevant to your UC case worker? Shall I tell you how you can show it to them? Go on, guess.

    Did you guess, attach it to a journal entry? Oh, you sweet summer child, no, the journal cannot take attachments. If you want them to see the document, you had better print it off and get a face-to-face in-person interview where they will not make any record of the document at all.

    As I have already said, the DWP UCW is an incredibly poor CRM.

    Not that I didn’t try (and found more bugs)

    I tried to add medical information to the Universal Credit website. I, quite wrongly, guessed that “change of health info” was the right path. It was not. The account now has a pending “to-do” (complete the change of health thing even though there is no change to report).

    Bug: It is impossible to cancel an incorrectly started task.

    The Universal Website was created for the DWP’s requirements, not your needs

    The purpose of the site is to make users jump through the hoops that the DWP (Department of Work and Pensions in case you forgot who those clowns are) demands. As I hope I have shown, they make no effort at all to assist you in this. If you cannot use their CRM, too bad, I guess.

    I can think of only two reasons to implement the UCW like this:

    1. Gross incomitance
    2. Actual malice

    With the DWP those two are hard to tell apart.

    The Universal Credit Website is unfit to be the only point of contact; especially for older people

    There is so much more I could complain about from an end-user perspective but I hope this brief overview of the UCW’s failings gets my point across.

    I’m a technology guy. My profession is making things like this. I struggled to use the system. How the heck would my dad cope? He can barely use his (non-smart) mobile phone and needs help to read his text messages.

    In May 2021, Helen Undy, Chief Executive of Money and Mental Health said, “People who need help with Universal Credit are being #SetUpToFail”. Here’s the link if you don’t believe me.

    In the last five years, it looks like very little has changed.

    I therefore put it to you that the Universal Credit Website is unfit to be the only point of contact; especially for older people and those with limited computer literacy.

    The Universal Credit Website HTML and (lack of) web standards

    This is the part of the post where I start to get a bit technical as I answer the question I asked at the start – Why is the Universal Credit website so bad?

    I’ve already covered the weak and broken UI design approach. In this section, we are going to talk about web standards.

    The journal looks the way it does because, for some unknown reason, someone decided to use HTML tables for layout. It is a web standard that tables should be used only for tabular data.

    This is semantic, not tabluar data

    Whatever junior dev wrote this may have used tables because the data came from a database table and they did not know any better. However, this is not tabular data. Let me give you all the reasons why this is not tabular.

    • The journal entry is content and the rest is metadata for context.
    • You did not intend for us to sort by date or author
    • There is nothing to take a sum, average, or other calculation from
    • Some of these have subforms (send reply) that break tabulation
    • It would look nicer if the metadata were stacked on smaller screen sizes
    • The table imparts no additional data to screenreaders
    • CSS grid is faster, harder to break, and easier to make responsive

    Tables for layout are dumb

    This is what the experts say about using tables for layout:

    It was common in the early days of the web to use tables as a layout device. Before the advent of modern standards-based browsers, this was the easiest way to make sure that page elements were arranged properly on the screen.

    This design pattern is now considered very bad. It is bad for the user experience, bad for SEO, and bad for developers who have to maintain pages.

    You should not use table-based layout under any circumstances.

    HTML Tables: Find Out When To Use Them (And When To Avoid), Adam Wood, html.com

    Here’s another that explains why HTML table layout is bad for end users:

    1) Tables shouldn’t be used for page layouts because they are:

    • Slow to render as the browser needs to download most – if not all – of the table to render it properly
    • They require more HTML than non-table layouts which means slower loading and rendering, as well as an increased bandwidth usage
    • They can be a nightmare to maintain as they can quickly get complex
    • They can break text copying
    • They negatively affect screen readers and may make your content inaccessible to some users
    • They are not as flexible as using proper semantic markup
    • They were never intended to be used for page layouts
    • Making tables into a responsive layout is very difficult to control

    2) Use a table for tabular data. That’s what tables are for.

    John Conde, Webmaster’s Stack Exchange

    Let’s break down a few of these:

    Tables negatively affect screen readers and may make your content inaccessible to some users

    A good chunk of the users of the Universal Credit website will have long-term disabilities. Those who rely on screen readers are likely to face a nasty mess as they try to use the website.

    This is likely in breach of the UK’s Disability Discrimination Act 1995 and the Equality Act 2010. I am not a lawyer but activist groups might want to look into this.

    Tables are not as flexible as using proper semantic markup

    This is why the site looks god-awful on mobile. Using any one of the many flexible standards could make the journal resize in a useful and pleasing way on smaller screens. As I have said, the date and author are metadata and have no business taking the prominence they have been given. As the journal entry is the salient thing, the journal is NOT TABULAR DATA.

    The nineteen-nineties called – they want their web design back.

    Tables are a nightmare to maintain as they can quickly get complex

    This is why the reply thing is broken. It has the wrong number of table divisions which breaks readability and looks bloody stupid on a government website.

    Tables are slow and use excessive data

    This is a website for people who have limited spending money. Why then, choose a markup that burns data faster than needed, loads slowly, and is frustrating to use with disability support software?

    Tables are for data only – not journal entries with sub-forms

    I put it to you and the DWP that using tables in the UCW at all was a failure in design, planning, and implementation. Replace the tables with nice semantic div tags, some CSS flex-box, auto margins, and responsive design. The metadata should stack under or over the entry on smaller screens.

    This is beginner-level flexible and accessible design stuff. Not to mention the DWP is, in my opinion, failing to uphold the laws about accessibility made by the institution (the government) that they work as part of.

    I’m not going to teach the DWP how to do this properly. They should know that if you pay peanuts you get monkeys.

    The weird thing is the DWP do it right elsewhere

    On the UCW home page (even though it defaults to to-do) the supplementary navigation items are responsive and stack appropriately on smaller screens.

    If you can do it on the home page, why not on the Journal too?

    The Universal Credit CRM is missing a few things

    I’ve said quite clearly that the UCW is a terrible CRM example but it can be fixed. We just need to add a few features.

    No tables, darling

    I covered this enough, I think.

    Threading or object grouping

    The journal is currently a list of unconnected text things. You can do better than this.

    As it stands UC journal users must scroll back down the page and take a guess from context alone what the entry refers to. How much easier would this be if things were grouped with or threaded under related content?

    When you reply to something in the UC Journal, your reply is added to the top without any indication of what you replied to. The same is true of the replies from the UC person responding to you. This renders the entire journal almost impossible to use to keep track of a conversation thread.

    Modern email clients solved the threaded discussion issue a long time ago. Replies are grouped with the email they are replying to. Thus the conversation thread can be followed. We do this in forums, and in comments, and on social media. Topic threading is not even remotely new.

    That’s not even the only way to do things. There is also object grouping. An object can be a task, a record, a question, a ticket, or whatever. All content generated is assigned to an object. For example, if I open a ticket with my ISP about an issue I am having, we can both see what the issue topic is and the history of the conversation along with any actions taken.

    On a blog, the post is the object and the comments, replies, and mentions are listed under it. Thus we know what the response was responding to. Forums do that too.

    Look how easy this conversation is to follow (no tables used):

    I cannot grep this logfile (where’s the flippin’ search option?)

    The Universal Credit Journal system reads a lot like a poorly implemented log file. That’s how we store debug information when doing things like testing (which should have caught the deformed page on reply bug before it went live).

    Grep is a command line utility for searching text-based log files. I’m using it as a nerdy way to signal to my fellow developers that the UC Journal needs a bloody search box.

    Attachments as standard

    A good CRM has attachments as standard. Even log entries are attachments. How this works is every entry is a small text field. It only needs to be large enough to summarise what the entry is about. If there is a lot to say, this is stored as a text attachment with metadata indicating that it is a native note (or whatever). That metadata should have some sort of document type indicator so the CRM knows if it is an image, a PDF, or note, or whatever.

    Email solved this issue years and years ago with Multipurpose Internet Mail Extensions or MIME types.

    HTML solved this with content-type headers like this:

    Content-Type: text/html; charset=UTF-8Content-Type: multipart/form-data; boundary=something

    Other departments (especially those giving out grants) do this already. Maybe ask another department to lend you their developer for an afternoon and copy their homework.

    Even if you only allow uploads upon request, using an attachment feature would allow agents to add helpful and informative media to a journal. Attachments would also allow long entries to take up as much space as a short one until clicked.

    Make questions their own content type

    User questions should not be an unspecialised text entry. They should be of type “question” with metadata showing who has handled the question or the agent responsible for the question. The reply should be of type linked-entry so the user can find the question and the answer together in their journal.

    This would speed up handling questions as stock answer libraries can be grown so standard answers to common questions can be given in just a few clicks.

    You could separate technical support questions from UC advisor-type questions. It is likely you could separate out more question types with enough use case data.

    You might even want to make the question a knowledge base search that the user must check to see if said article solves their question before they ask it.

    This is pretty much a standard thing in even basic CRM systems. UC needs this too.

    Auto-link tasks

    It should be impossible for the system to add a vital task (do this or lose money) without making the task a link to the place where said tusk must be undertaken.

    Autolink your CTA’s please DWP. You do it for appointments (even if you do wrap a link around a pre-tag for no good reason. That’s not what pre-tags are for but that’s another story.)

    Stop misusing HTML tags

    Actually, no. This is important. Some tags have very specific meanings.

    The pre-tag suggests that the text is preformatted. Usually, this is for code and other times when whitespace (space, tab, etc) must be preserved in the rendering. Screenreaders will struggle to deal with your weird HTML tag abuse. Which may (NAL) be in breach of disability laws.

    The pre-tag increases what is already a broken and inconsistent way that HTML handles white space characters (tab, new line, space, etc.). The pre-tag semantically insists that the white space is all significant even though a “bug” in the pre-tag implementation means empty lines at the start and end are collapsed or ignored. Either way, the DWP should not have client-critical architecture that depends on a mistake that could be fixed at some future point.

    Here is a long article explaining just how crazy HTML whitespace gets. DWP’s dev’s please read it and understand it. If that is too hard, here is an expert reading the article and explaining it. The video is almost an hour long.

    https://www.youtube.com/watch?v=qF7iXBk1s5o

    There’s no need for abusing tags in this way. It is asking for bugs and possible accessibility problems. After all, every space (meaningful or not) has just been declared meaningful in a way that can only be fully understood by also reading the site’s CSS. Use a div-tag and a monospaced font if you must but leave pre-tag for white space preserving data.

    Why I think the DWP uses pre

    After some poking around, I think I have worked out why the dev used the pre-tag. It’s a terrible reason and shows they don’t actually know what they are doing.

    Block-level elements (which they want for styling reasons) break the table by force-resize (a lesser-known Jedi power) by making the link box element expand to take up as much space as it wants. Rather than CSS styling it to wrap, they depend on the text-wrap-mode: wrap as the pre-tag‘s default behaviour rather than setting that value in the CSS for the block. They would not have had this problem had they not used tables for layout.

    If this is the case, the developer who was hired to make this website lacked anything approaching modern web design understanding and possesses barely functional development skills. I was able to identify all of these faults without even seeing the code. If I get my hands on the code, I expect unreadable spaghetti programming.

    Show/Hide metadata

    When reading log files (which is what the journal resembles) it is often helpful to use a tool to hide verbose information. In this case, date, time, and author should be elements the user can minify or hide. This would aid reading comprehension.

    Show/Hide completed

    Cancelled appointments, stuff the user or agent marks as complete, and old “you did the thing” journal entries should be something clients (users) can opt to hide. That makes getting to the critical and actionable entries so much easier.

    Inbox Zero is a thing. Embrace it.

    Critical actions should not be hidden in a log file

    Critical activities that have yet to be completed should be more prominent. There are a number of good ways to do this.

    Style to highlight: Add a “critical” class to the containing element of the journal entry that has the critical instruction. Use CSS to style it with a colour indicating urgency. Traditionally, this is red.

    Dynamic banner notices: Use some JavaScript to parse the journal for classes marked critical and add a banner to the top of the page to strongly notify the user that a critical action is needed. It is only critical if not doing it costs money or risks sanctions. Everything else is at best urgent.

    Critical messages set to app global: Put the critical information on all pages until undertaken.

    Land the user on the page: Make the first page the user sees when logging in, the page where the critical action must be done.

    Marked-up appointments to work with calendar apps

    I’m not asking that you allow people to add Google Calander or other task management systems as guest apps but could you at least mark up appointments with h-event or hCalendar microformats?

    Given the aim of UC is to support people, making things like appointments and to-do lists something they can export to their productivity software would make the UCW much more helpful.

    If that’s too much hard work, an “add to Google Calendar” button would be something. If you are doing that anyway, why not go the whole way and make export appointment a fully working feature?

    Show the next appointment prominently

    Talking of appointments, like the critical actions, the client’s next appointment should be displayed prominently or at least have the option to do so. Top of the page or a toaster notification when they log in.

    Push notifications?

    Users should have the option to enable push notifications. These are little pop-ups that appear to tell you there’s a new message to read. Most phone apps do this and some news websites do too.

    While I strongly suggest push notifications MUST be opt-in, they could prove highly useful for users of the UCW. You could further expand this to remind about appointments and urgent critical tasks that are running out of time.

    You want people to use your atrocious website regularly, right? So why not prompt them to come back when something new needs their attention?

    Why is this not a basic app?

    The DWP need to have there (soon to be improved I hope) UCW as an app. At the very least as a dedicated one-site browser which can be knocked up in a few hours.

    A dedicated UC app could provide an additional layer of protection (not only from scammers) by making the app a two-factor auth code generator. This is slightly more secure than texting a code as a text can be intercepted and is not encrypted. This, of course, depends on the devs knowing what they are doing – something I doubt from the table and pre tag abuse on display.

    An app would ensure users get push notifications on their smartphones.

    An official app would make scams harder to pull off.

    The problem at the moment is the incorrect use of whitespace affecting markup. Apps for Apple and Android are quite likely to handle whitespace differently. You’re already borking things with pre-tags and tables. Thankfully, a few hours of reading up on CSS and adaptive design should fix those errors.

    Don’t gamify just yet

    I was going to suggest you have a points-based system to indicate completeness and progress. We call this gamification and it can help encourage users to be a little more active.

    However, you cannot even roll out a simple CRM so I do not trust you to gamify it.

    A wild guess (contains mild politics)

    I have no evidence (thus this is a wild guess) but I would not be surprised if this site was not commissioned under a “cash for mates” program during the Tory administration. I would not be shocked to learn that someone got a lot of tax-payer money in their pocket and then hired an intern to knock out the system In an afternoon.

    This would explain the way the UCW does not follow standard government website standards as well as why exactly I found so many instances of mistakes I would expect from a complete beginner.

    Summary of fixes needed on the Universal Credit website

    In this section, I use industry-standard language and so: Bug indicates something that is wrong, broken, or in error and so are critical items. Enhancement indicates something that can be enhanced and so are urgent items. Feature Request is a thing the site is not doing but probably should and should be addressed at the next development meeting (assuming you have those). I’ve also added action points for the managers to do at start of business of the next working day.

    • Bug: Deformed page on reply
    • Bug: The Journal HTML may breach the law – reevaluate concerning accessibility standards
    • Bug: The journal is not responsive but should be (for smaller screen sizes)
    • Bug: It is impossible to cancel an incorrectly started task.
    • Bug: Using pre-tags for word wrap is an error use CSS
    • Bug: Switch tables to responsive divs – should fix most bugs
    • Bug: Some key tasks do not auto-link. Consistently auto-link required tasks
    • [new] Bug: Markdown weirdness
    • Enhancement: Use semantically meaningful tags
    • Enhancement: use syntactically appropriate language
    • Enhancement: Make critical messages more prominent
    • Enhancement: Add toggle hidden for metadata
    • Enhancement: Add toggle hidden for expired, cancelled, or old entries
    • Enhancement: Add microformats to make data more useful
    • Feature Request: Search feature
    • Feature Request: Threading, ticketing, or task-object grouping
    • Feature Request: An attachment system
    • Feature Request: Add a question entry type with a linked answer
    • Feature Request: Enable clients to add appointments to personal calendar apps
    • Feature Request: Optional push notifications
    • Feature Request: Make a dedicated app
    • Action point: Hire a domain-expert systems analyst who will confirm everything on this list.
    • Action point: Read the analyst’s report and action it ASAP.

    Alternatively, dear DWP managers, put together a budget to hire me and a small team I will select – we will fix it for you; budget for ongoing development as the UCW could be so much more than it is. You got this expert analysis from me for free which is already a massive saving. Make the most of it.

    Over to you, dear readers

    I think I have covered every fault with, and improvement needed for, the DWP’s Universal Credit Website. Is there anything I have missed? Are there more bugs to report? Would you like an enhancement I’ve not mentioned or hate one I have suggested?

    I want to know your thoughts. Don’t send me a comment, leave me one. Or a reply via federation, or a WebMention via whatever content publisher you use. I really like comments so please leave me some.

    Your replies will not be shoved inside a table and no pre-tags will be harmed.

    #SetUpToFail #CodingAndDevelopment

  3. I am thinking about starting a community project to develop a modern, powerful libre EQ plug-in.
    I'm no developer though, so I'd need your help.
    The primary goals I have in mind are:
    - sound quality and flexibility
    - fast workflow
    - simple, scalable and responsive UI
    - advanced features like bandpass listen, morphing between states for easy automation, following MIDI note pitch, possible linear-phase mode.

    What do you think?

    #FOSSaudio #LibreAudio #EQ #LinuxAudio #LV2 #unfa

  4. So.. I could release #PingU - the IoT GPS tracker app for #iOS I've been working on for the past weeks but there's a regression in #SwiftData for iOS18 and 18.1 beta that prevents it from properly working with #SwitfUI and as a result the user doesn't actually see most UI updates caused by location changes until they either reopen the app or navigate around between views.

    And I refuse to release the app in this state :ac_distress:

    I'm also not alone in having these issues either, a lot of people are discussing it on the developer forums and are filing - as of now unaddressed - Feedback reports.

    It's a stupid situation because otherwise things are working really well (and with next to no battery impact) and I've been using PingU as a replacement for #HomeAssistant's location tracking as well as GPSLogger's hooks feature for the past weeks now.

  5. Hello, everyone

    I'm a Senior Full Stack Developer with 8+ years of experience delivering scalable, high-performance web applications across startups and global companies. I specialize in JavaScript, TypeScript, Python, React, Next.js, Angular, Vue, Node.js, Django, and FastAPI.

    Please check my past work here:
    alilee.vercel.app

    Let’s build something amazing together.

    #forhire #remote #wfh #fullstack #frontend #seeking #job #contract #opportunity #backend #webdev #freelance #javascript

  6. Hello, everyone

    I'm a Senior Full Stack Developer with 8+ years of experience delivering scalable, high-performance web applications across startups and global companies. I specialize in JavaScript, TypeScript, Python, React, Next.js, Angular, Vue, Node.js, Django, and FastAPI.

    Please check my past work here:
    alilee.vercel.app

    Let’s build something amazing together.

    #forhire #remote #wfh #fullstack #frontend #seeking #job #contract #opportunity #backend #webdev #freelance #javascript

  7. Hello, everyone

    I'm a Senior Full Stack Developer with 8+ years of experience delivering scalable, high-performance web applications across startups and global companies. I specialize in JavaScript, TypeScript, Python, React, Next.js, Angular, Vue, Node.js, Django, and FastAPI.

    Please check my past work here:
    alilee.vercel.app

    Let’s build something amazing together.

    #forhire #remote #wfh #fullstack #frontend #seeking #job #contract #opportunity #backend #webdev #freelance #javascript

  8. Hello, everyone

    I'm a Senior Full Stack Developer with 8+ years of experience delivering scalable, high-performance web applications across startups and global companies. I specialize in JavaScript, TypeScript, Python, React, Next.js, Angular, Vue, Node.js, Django, and FastAPI.

    Please check my past work here:
    alilee.vercel.app

    Let’s build something amazing together.

    #forhire #remote #wfh #fullstack #frontend #seeking #job #gigs #contract #opportunity #work #backend #react #next.js #css

  9. Adding my two cents to this thread:

    For #Macstodon, I've always used the `authorization_code` grant flow, in order to support multi-factor authentication. The app would pop the browser, you would log in and get your code, and then copy and paste that code back into the app.

    This worked fine until Mastodon 4.3 - now, when trying to log in from a vintage Mac web browser, it will just hang, give a white screen, or show an error page.

    I'm all aboard the device code grant flow train. Requiring another device isn't a dealbreaker - Macstodon already requires the use of another device in order to run an SSL-stripping proxy, so I think that's a great long-term solution, and it doesn't sound very difficult to implement.

    When it comes to a short/mid-term solution, the personal access token option is probably fine? I'll have to read up more on how it works but I assume it's pretty similar to the existing oauth flow, the user would generate a code and provide it to log in instead of their username (and then the app could cache it). Hopefully it involves minimal code changes.

    I'm not opposed to there being some degree of friction when it comes to getting a retro client to work. I think most retro clients don't take themselves too seriously (Macstodon certainly doesn't), and the folks who use them are probably expecting that it's not going to be the smoothest experience. Like I said earlier, Macstodon already requires that you set up an SSL-stripping proxy, so what's another token on top of that?

    Ultimately what I care about is the least degree of friction for myself, as a developer. At the end of the day, Macstodon is a toy/hack project, and if I'm putting as much effort into it as I am into my day job, I'm going to burn out and become disinterested in working on it (which is why I've been avoiding a screen-scraping solution).

  10. I'm overdue for an #introduction! I'm Justin, an #independent app #developer for Apple's platforms. I make a sheet music reading app called #forScore and a number of other apps. I started my own company in 2010 and never looked back. Living in Seattle and Palm Springs. Lifelong #musician and #photographer. Born in South Africa, raised in California.

    #iOS #iPad #iOSDev #programming #music #tech #lgbtqia #StarTrek #InfraredPhotography #bjork

  11. I just heard from the developer that it is not possible to make FastSM compatible with Windows 7. This leaves TWBlue, unless there is another client I'm missing. I know that TWBlue does have an older version that works with 7, so I'm guessing it's just a matter of updating certain things to give it the features of the latest version. Sadly, as I said in the past, TweeseCake is not open source, so that's not an option. As for why I don't do it myself, I am not a programmer.

    #accessibility #blind #computers #Mastodon #MastodonClients #OpenSource #programming #software #TWBlue #Windows7

  12. I just heard from the developer that it is not possible to make FastSM compatible with Windows 7. This leaves TWBlue, unless there is another client I'm missing. I know that TWBlue does have an older version that works with 7, so I'm guessing it's just a matter of updating certain things to give it the features of the latest version. Sadly, as I said in the past, TweeseCake is not open source, so that's not an option. As for why I don't do it myself, I am not a programmer.

    #accessibility #blind #computers #Mastodon #MastodonClients #OpenSource #programming #software #TWBlue #Windows7

  13. I just heard from the developer that it is not possible to make FastSM compatible with Windows 7. This leaves TWBlue, unless there is another client I'm missing. I know that TWBlue does have an older version that works with 7, so I'm guessing it's just a matter of updating certain things to give it the features of the latest version. Sadly, as I said in the past, TweeseCake is not open source, so that's not an option. As for why I don't do it myself, I am not a programmer.

    #accessibility #blind #computers #Mastodon #MastodonClients #OpenSource #programming #software #TWBlue #Windows7

  14. I just heard from the developer that it is not possible to make FastSM compatible with Windows 7. This leaves TWBlue, unless there is another client I'm missing. I know that TWBlue does have an older version that works with 7, so I'm guessing it's just a matter of updating certain things to give it the features of the latest version. Sadly, as I said in the past, TweeseCake is not open source, so that's not an option. As for why I don't do it myself, I am not a programmer.

    #accessibility #blind #computers #Mastodon #MastodonClients #OpenSource #programming #software #TWBlue #Windows7

  15. #Introduction 👋 Hello World!

    I’m a proud #dogMom that loves to overshare photos of my #rescue #dog (Cassie).

    Bringing #diversityEquitiyInclusion to #tech motivates me.

    Professionally, I’ve had a long career in #softwareEngineering, but am now on a journey in the world of #siteReliability #engineering.

    Sometimes I’ll also post things about #food, #coffee, #whiskey / #whisky, #wine, #travel, #nba #basketball, and #snowboarding.

    #introductions #dei #womenwhocode #sre #developer #dogs

  16. How to build #MongoDB Event Store? The neat part is you don't!

    Oh well, past me thought like that, but Alexander Lay-Calvert persuaded me to change my mind and did most of the work. We delivered #MongoDB storage, and it went surprisingly well. I wrote a detailed write-up on how to do it!

    There were many interesting challenges in how to make it consistent and performant, so I think that's an interesting read.

    I think it's a good guide if you're considering using #MongoDB as anevent store. Surprisingly, I have had numerous discussions recently with people trying to do it.

    If you're considering using key-value databases like #DynamoDB and #CosmosDB, then this article can also outline the challenges and solutions.

    My first choice is still on #PostgreSQL, but I'm happy with the #MongoDB implementation in #Emmett.

    If #MongoDB is already part of your tech stack and the outlined article constraints are not deal-breakers, this approach can deliver a pragmatic, production-friendly solution that balances performance, simplicity, and developer familiarity.

    I'm not sure what took longer, delivering the implementation or writing this article. So I'll appreciate the feedback and sharing with your friends. ❤️

    event-driven.io/en/mongodb_eve

  17. I'm switching to Panic's Nova (nova.app) for at least the next week of #webdev work. I'll toot about how nice / not nice it is #novaweek

    Just had a "I can't take this anymore" moment about all the complexity we've added to #webdev and switchign to smoler and just "nicer" IDE felt about right.

    #cosycore developer >>>>>> 10x developer and all that.

  18. I'm migrating from another instance, so it's #introduction time again!

    I'm Fabio, a software developer originally from #Brazil based in Toronto. I work mostly with #Ruby and #Javascript but I'm always trying new languages and stacks.

    I'm very much an #AI skeptic – borderline hater when it comes to AI "art". Yes, I know the tools, hence my opinion.

    I make music sometimes using #Ableton, #DirtyWaveM8, #PolyendTracker and I also play live #drums

    I'm openly #queer, #bisexual and #AntiFascist

  19. Hello world! It's #introduction time!

    I'm Fabio, a software developer originally from #Brazil based in Toronto. I work mostly with #Ruby and #Javascript but I'm always trying new languages and stacks because why not?

    I'm very much an AI skeptic – borderline hater when it comes to AI "art" – but I keep an open mind and I'm very familiar with the available tools (hence the skepticism/hate).

    I also make music sometimes - mostly electronic using #Ableton, #DirtyWaveM8, #PolyendTracker and other bits and pieces, including live drums!

    I'm openly #queer, #bisexual and #AntiFascist

  20. Weekly output: Starlink on United, spectrum policy, Google updates (x3), Ecosia, Charter to buy Cox, user-groups talk

    I’m flying to San Francisco tomorrow evening only to turn left at SFO so I can spend the next two days in Mountain View for Google I/O–my 12th trip to cover Google’s developer conference.

    (This past week also involved flying, but only for fun; Patreon readers got a breakdown of the long miles-and-points game that led up to my bucket-list 747 flight.)

    5/13/2025: I Tested Starlink on a United Airlines Flight: It’s Fast and Steady Once You Get Past the Ads, PCMag

    The strange sequence of airports on my calendar two Thursdays ago–DCA-ORD, ORD-ORD, ORD-IAD–yielded this recap of my experience trying out Starlink inflight broadband on a United Airlines-marketed Embraer 175 regional jet.

    5/14/2025: CTIA conference shows how FCC spectrum auction authority is becoming telecom’s Groundhog Day, Light Reading

    This post also started with reporting the week before from the wireless trade group CTIA’s 5G Summit in D.C., which I continued by quizzing Public Knowledge’s walking telecom-policy database Harold Feld.

    5/14/2025: Google Unwraps Android 16 Design Details: Springier Animations, With a Side of Improved Battery Life, PCMag

    I got an advance briefing from Google about its I/O announcements, which turned into three posts–the first covering some of the more important user-facing parts in Android 16 and Wear OS 6.

    5/14/2025:Google Tips Big Security Upgrade for Your Phone in Android 16, PCMag

    The second part of my coverage focused on the security changes in Android 16. If you’d like to know more, Citizen Lab researcher ‪John Scott-Railton took a closer look at them in a Bluesky thread.

    5/14/2025: Gemini Everywhere: Google Expands Its AI to Cars, TVs, Headsets, PCMag

    Of course AI will figure in Google’s I/O news, so part three of my advance coverage outlined Google’s ambitions to put its Gemini AI platform on some less-obvious screens.

    5/16/2025: This Search Engine Uses Its Earnings to Help the Environment. New Dashboard Lets You Track Your Impact, PCMag

    I’ve written about the environment-minded search site Ecosia a few times over the past few years, which was apparently enough times to get their PR folks to offer me a heads-up about this announcement.

    5/16/2025: Charter to Buy Cox: We Have Questions About What This Means for Your Plan, PCMag

    This was the one post I didn’t have anywhere on my cloud of probabilities for this week, but I had enough free time Friday to write up Charter Communications’ deal to buy Cox Communications and turn the second- and third-biggest cable broadband providers into the biggest cable ISP.

    5/17/2025: May 2025: Rob Pegoraro: 2025 in Tech: what fresh hell is this?, Washington Apple Pi/Potomac Area Technology and Computer Society/Osher Lifelong Learning Institute Personal Computer User Group

    I made my more-or-less annual appearance before these three user groups (last summer’s was via Zoom), unpacking some serious concerns I have about the state of tech but also sharing some reasons for optimism. And as I’ve done in earlier IRL appearances, I showed up with a bag of tech-event swag and gave away almost all of it.

     

     

     

    #5GSpectrum #Android16 #BrendanCarr #CharterCommunications #Cox #CTIA #Ecosia #google #GoogleIO #IO #OLLI #PATACS #spectrum #spectrumAuctionAuthority #Starlink #UnitedAirlines #userGroup #WashingtonApplePi #WearOS6

  21. Oh man, I feel your pain.

    A could if my most prized Linux collection possessions are the very two first releases of Yggdrasil Plug and Play Linux (LGX) and the first two print editions of "The Linux Bible - the GNU Testament". I was a bit startled to find out what those would actually cost me off i ever wanted to replace them.

    The other thing I've had an alert in for about ten years now is a "Memotech" keyboard for the #Timex_Sinclair computer 🖥️ I found one in the past twenty years and they wanted over two hundred dollars for it. In hindsight, I should have jumped on it, but I figured I'd find another one for twenty bucks or so. You live and learn 🙂

    You know what? I should boost your inquiry for the Walnut Creek Slackware CDs into the SDF Mastodon server! There's serious #retro_computing folks there, and they maintain a comouter history museum.

    I've been a member there for eons. You can't get an account there on our mastodon server unless you're an actual SDF member, but I'll be happy to boost your request there.

    Okay #Matrix. In very liberal terms, Matrix is considered by many to be part of the #Fediverse. In more strict interpretations it isn't. Matrix is it's own (and optionally secured by e2ee) communications protocol including chat via text, voice, and video, for one on one and groups - kind of like Slack or discord or IRC but with a very privacy centric focus and built with #FOSS. i.e., it doesn't run on #ActivityPub protocol, but it's very popular with many millions of users.

    Here's a good homeserver to join, managed by an #OpenBSD and Matrix developer who's a really nice guy. NOTE: He hosts on his home network so occasionally it goes offline for an hour or so when his ISP's DHCP server changes his IP address.

    It's s very performant and well managed server. You can signup at this link:

    https://bancino.net/element/#/welcome

    There's an easy to read explanation of everything here:

    https://joinmatrix.org/guide/#get-started

    I would recommend that you start off with the #Element client if you're using #Android, which you can get here at F-Droid:

    https://f-droid.org/en/packages/im.vector.app/

    There are a lot of guys Matrix clients, like #SchildiChat, #FkuffyChat, a good #WeeChat plugin if you use that for IRC, #Nehko, and others; but Element has ALL features is completely cross-platform - Android, iPhone, #Linux, Mac, Web, and Windows. So it's a good client to start with.

    Now, about a third of all Matrix users have accounts on the Matrix Foundation's #Homeserver, and although they recommend you choose from among three thousands of other homeservers, you are welcome to create an account there too.

    Stay away from their main Matrix room though - there are several thousands of people in there and can bog your system if your machine had limited resources.

    The main site to get Element for any type of computer, phone, or operating system is here:

    https://element.io/

    I hope that helps!

    #tallship



    .
  22. awwwwwww

    I really wish they had called this "I Am A Teapot" and not "I'm a teapot" because a contraction isn't valid in a variable name

    https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/418

    (I just called it
    IAmATeapot anyway)

    #techPosting

  23. @wervice this doesn't really fit with your four hashtags, but here goes …

    A few days ago I began using a web app that works well, in a desktop environment, if stretched wide across two HD displays. The stretch must be careful, for the black borders of the two displays to not fall in the middle of a column.

    The app is more difficult to use on a smaller display, in the same desktop environment, because the developers chose to use a ridiculously shallow horizontal scroll bar. I might attempt to fix this, for myself, with CSS, however I'm not a developer (I really don't know what I'm doing with CSS). Moreover, I shouldn't be forced to hack something as basic, as essential, as a scroll bar. It's excruciatingly poor UX.

    The same web app is, in some ways, much easier to use (in Firefox) on a small Apple iPad, because I can use my finger to swipe horizontally.

    #UX #Alemba #scrollbar #iOS

  24. Hello fellow earthlings (and, potentially, others)!

    I'm James Maynard, and this is my #introduction - #introductions?

    I publish The Cosmic Companion, creating #funvideos and #3DEnvironments - Tearing down barriers to great #scienceeducation.

    Each episode features a friendly original #interview w/ an amazing #scientist, #author, or #developer.

    Also love #science, the #desert, and #astrophotography w/ remote scopes.

    Living in #Tucson, #Arizona, w/ my wonderful wife, Nicole, and Max the cat.

  25. @kalpa @vwbusguy @Conan_Kudo

    This part, I actually didn't know, as I'm a relative latecomer as a developer to this space (After Richard bolted #GNOME on top of #MicroOS), and wasn't particularly involved in the #Fedora world at all, so I haven't the foggiest what the early development of #AtomicDesktop looked like.

  26. @pokateo I'm a senior scientist at the , developing solutions using tools

    I'm the lead developer of @movingpandas, serve on the PSC of @qgis, and try to keep an eye on & developments

    I love exploring new ways to work with spatial data. Recently started dabbling with

  27. #Introduction

    I'm Elle and I'm an admin for toot.lgbt. Whether you're in our community or not my DMs are always open.

    I'm a little of everything
    I'm a web developer living in #Pennsylvania
    I'm always happy to talk makeup
    I've embraced my sportiness with #softball and #dodgeball
    I'm a lifelong #BlueJays fan
    And I've really been enjoying the #PWHL

    I'm not afraid of confrontation, so you may occasionally see me speak strongly. But I'm also a people pleaser who always wants to help.

  28. Hello there, I was recently laid off from my 10-year job as a Software Engineer. I'm looking for another Software Engineer position.

    At my former position, I worked as a backend developer who managed data and made reports using Perl. I am also familiar with Lisp because I used it as a web scraper turned Perl script. I also familiar with Java since I'm the owner of @morobot
    I'm familiar with Python since my blog uses it.

    #getfedihired #lisp #perl #java #pyton

  29. I’m a #Seattle #community #organizer and #activist, #developer, and #cybersecurity expert… + a queer, neurodivergent Black parent heavily impacted by #racism—including stalking, #housing insecurity, + a #racist #lynchmob.

    I’ve spoken at #DEFCON, organized to #recall a mayor, and I help run the #partyon server + a local #hackerspace.

    #Support my work, #activism, + #family here:

    venmo/cashapp: @nullagent
    ko-fi.com/nullagent

    #BlackMastodon #MutualAid