HNHacker News
TopNewBestAskShowJobs

KiwiCoder

1,045 karma · joined August 31, 2011

hn@4ed.uk
submissionscomments
KiwiCoder··on Ask HN: What Are You Working On? (April 2026)
I've built a tool that analyses UK company accounts data to highlight various forms of unfair treatment of workers, such as serious wage decline in spite of soaring profits.

All data sourced from Companies House as xbrl or pdf.

The trickiest part was all the unexpected edge cases I found in the data, but that's also where most of the learning (aka fun) was found. For instance, before starting this project I didn't know that negative turnover was possible, or that accounting periods vary between years and can be 52/53 weeks to make sure they end on a specific day of the week. The more I learned, the more aware of my ignorance in this regard!

Here is a typical example:

> Between 2024 and 2025, workers at this company each lost £4,196 due to a combination of falling pay and price inflation.

(User clicks/taps through if they want details and method)

I've also noticed a high representation of care-home providers appearing in the results. It's something I want to dig into but it's unexplained (to me) for now. Possibly it's related to a higher proportion of workers on zero-hours contracts.

It's also been challenging to present less obvious factors such as nominal and real wages alongside inflation metrics, all intended for a non-technical audience. Consequently I've spent a disproportionate amount of time on the wording for each type of inequality, and I'm still tinkering.

Not ready to share the URL just yet, as the site could easily be abused or the facts taken out of context and used to mislead or unfairly (lol) condemn. It may never be public, but I definitely have an audience in mind.

Ideas for development include - sector/industry analysis and comparisons - an inequality leader-board of some kind - sentiment analysis from director reports - search and filter

KiwiCoder··on Ask HN: Senior people, how did your career evolve?
I started programming on Zilog z80 when I was 11 years old, at school in NZ. I'm now 55, and I've been a programmer for all that time. I've worked as contractor, consultant, tech and architecture lead, people manager, independent limited company in the UK, published author. I started a charity. There's more, but you get the idea, I've seen many sides of this programming malarkey.

Like you, at times, I reached a plateau of motivation, and more than once I questioned the meaning of the job I was doing, unsatisfied and listless.

I think if you are at all introspective, reflective, that it's inevitable you go through patches like this.

You've now got plenty of advice from many with experience, I won't add to that pile. Instead, just briefly, a word on my current situation and outlook.

Working for someone else is only rarely going to be broadly fulfilling. Working for yourself can be worse.

So I developed my hobby interests, most involving programming, because I still love it. I still get excited exploring possible solutions to hard problems. It's fulfilling in a way that working for megaCorp can never be. It's the difference between straining to meet a work deadline and straining to win a game. Similar, but different.

In other words, contentment, for me, comes from within.

KiwiCoder··on Allie: Human-Like AI Chess Bot on Lichess
Voluntarily playing Kd7 on move 5 instead of castling is maybe a human move (like a bong cloud) but at the time it seemed more like a move a stochastic parrot would make.

https://lichess.org/OB6kYF8w

KiwiCoder··on Show HN: You-tldr – easy-to-read transcripts of Youtube videos
Never touched Haskell before, but found that path separators were needed to get this working (on WSL with Ubuntu if it matters)

For example

    -  capsPath <- getFullPath (T.unpack (coerce dir <> coerce videoName <> ".en.vtt"))
    +  capsPath <- getFullPath (T.unpack (coerce dir <> "/" <> coerce videoName <> ".en.vtt"))

Needed to apply the same change in a few places.

Also found

    --sub-langs en
doesn't work if the videos has for example en-CA as the subtitle language.

And finally, youtube-dlc seems to inconveniently discard the VTT file, breaking glancer, unless you specify `-k` to keep the file.

KiwiCoder··on The Developer Coefficient: a $300B opportunity for businesses
They way this report is framed made me angry.

Stripe, first of all, your report misrepresents software development reality.

You present software maintenance as a massive waste of time and money. But that’s just not true. Maintenance is how software stays relevant.

Laws and regulations change, technology platforms change, features rise and fall in importance, the users themselves change over time. There are endless justifications for ongoing software maintenance.

For as long as software serves a useful purpose, it will need maintenance.

Yet you present maintenance as somehow bad, when in reality maintenance is the natural consequence and an essential aspect of software development, and it has always been so.

You’re also pandering to an ignorant attitude that believes software can be written free from bugs and perfectly formed from the outset. Thus all it takes, thinks the ignorant executive, is for my coders to be better than they are.

You highlight the cost of “bad code”.

You don’t provide a definition of bad code, so here’s mine:

Bad code is code that is hard to understand and/or hard to modify without breaking things and introducing errors.

If you know software developers, you know we are, on the whole, vocal and assertive about the avoidance and elimination of bad code. Look at what we talk about at conferences, in blog posts, and on twitter.

Writing and learning about good code is a consuming passion for many developers. Search for “clean code” to see countless examples. How do we avoid writing bad code in the first place? That is a billion-dollar question (or $85bn as you say).

Everyone without exception agrees we should not write bad code, yet bad code persists.

Bad code is a function of ambiguous requirements, unreasonable deadlines, lack of training and support, lack of a proper testing regime, lack of appropriate project sponsorship, internal politics, lack of funding, and so on.

Yes, some engineers will at times be lazy, thoughtless, short-sighted. Just like their managers. Just like their manager's manager.

But in the round, bad code exists primarily because of human, social, and political problems we all share.

And then consider how we eliminate bad code. We do that with maintenance of the code, Stripe, this is the very thing your report damns as waste.

To maintain software, we refactor, we add tests, we discuss and debate, we tease apart and reconstruct. To the software developer, maintenance is normal and expected. It’s part of the job. You build it, then you support and maintain it.

The reason I’m so hot about this is that I know (from watching it happen again and again) how many executive level managers will interpret your report. They will think it’s because their programmers are lazy, feckless, indolent, and narcissistic.

It’s cognitively and politically much easier to blame bad code on an engineer’s attitude than the ecosystem in which they work. And these executive level managers will vent their frustration on those same engineers and look for quick wins like off-shoring.

"If we’re going to suffer from bad code, at least let’s get it cheaply."

Or the exec might crank up their attitude of command-and-control to bring those apparently miscreant coders to order. Misery for the coder, and never works out well.

Stripe, your report does not help us get better. You’re throwing fuel on the fire.

(Originally posted most of this Twitter, wanted it here to increase the chance of someone relevant at Stripe seeing it)

KiwiCoder··on Wkhtmltopdf Considered Harmful
I will join the chorus - wkhtmltopdf has been working fine in production for many months, reliably producing thousands of 10+ page PDFs with cover pages, headers, footers, page numbering, and images. Sure, it takes bit of fiddling to get it working as you like the first time - as most non trivial things do - but I've no regrets and would recommend it.
KiwiCoder··on Q&A: Douglas Hofstadter on why AI is far from intelligent
Suppose a simulated intelligence was indistinguishable from real intelligence.

In what sense would it matter that it was a simulation and not real?

KiwiCoder··on The Windows Shutdown crapfest (2006)
Doesn't the focus on data simply shift the problems you describe to telemetry decisions?
KiwiCoder··on Ask HN: Do you use creatine as a brain supplement?
Taking large amounts (more than 1,000mg per day) of vitamin C can cause stomach pain, diarrhoea, flatulence.

Source: http://www.nhs.uk/Conditions/vitamins-minerals/Pages/Vitamin...

KiwiCoder··on Ask HN: Which is the most powerful satellite camera directed towards earth?
I expect drones are now more relevant than satellites for localised imaging.

For example http://www.cropcopter.co/uav-imagery-vs-satellite/

KiwiCoder··on The Impact Github is Having on Your Software Career
I'm easy to find.

Finding someone local to you, well, you'll have to ask around.

But how do you know if the recruiter is qualified to assess coding skills?

>> Pretend you're a team leader interviewing a junior coder.

KiwiCoder··on The Impact Github is Having on Your Software Career
I do a lot of recruiting, for both paid and volunteer coding roles. I've been hiring for about 13 years, and I've been coding professionally for about 25 years. Before that I coded as a hobby, from about age 11.

Speaking from this experience, and as someone who reviews on average 20-50 coder profiles a week, the public commit history of a coder is almost never a significant factor. I don't see any trends that indicate this is changing, either.

The vast majority just don't have much to show, having spent their years working behind walls on closed software.

Instead of relying on a public portfolio that in most cases won't exist, I rely on talking to these people directly, programmer to programmer. If we can code together, on the actual code they would be working on, that's about as good as it gets.

In other words, I rely on my experience as a coder to help make what are, ultimately, subjective judgement calls.

KiwiCoder··on Ask HN: What is the biggest untapped opportunity for startups?
In the past six months I've seen an uptick in the number of politically motivated software projects appearing on SocialCoder.org

Examples;

- CollAction [http://socialcoder.org/9dy]

- Fight Back Wisely [http://socialcoder.org/80s]

- Carpool Vote [http://socialcoder.org/8qv]

KiwiCoder··on Should gifted students go to a separate school?
This article frames the question rhetorically. Of course we should not disadvantage gifted children by depriving them of tailored learning strategies etc. Why on earth would we even consider it?

But it's not so easy to define what this means in practice, particularly in the UK where the debate over selective schooling is bound up with issues related to class and wealth.

KiwiCoder··on LinkedIn launches Salary to chart what we earn
I believe LinkedIn may have already reached its maximum potential and is on a downward trend.

Of course I'm speaking only from personal experience, but as both candidate and hiring manager LinkedIn holds next to no value for me. I see it as a commons that has been largely ruined by recruiting agents who are incentivised by their employers to maximise candidate throughput at everyone else's expense.

There is some residual value in LinkedIn groups, where peers can network for mutual benefit, but these pools of genuine interaction inevitably attract recruiting agents - if indeed they aren't already present as groups admins, happily lurking while candidates posture and parade.

But I'm not about to close my account (if that is even possible). I'm very fond of the growing number of endorsements I've received for Sarcasm and Bubbles.

KiwiCoder··on Show HN: Tesseract.js – Pure JavaScript OCR for 60 Languages
Impressive that this is pure JS, however trying an image cut from the page itself gave this result

> Dropan Enghsh Wage on (Ms page to OCR m

Should be

> Drop an English image on this page to OCR it!

KiwiCoder··on Why does Siri seem so dumb?
Siri seems dumb because we are shown demos that suggest the tech is far more advanced than it actually is.
KiwiCoder··on How Google obliterated my 4 year old Chrome extension featuring 24k+ users
> after contacting Microsoft and AT&T to get my IP removed from their block lists

Yikes.

Isn't this exactly the problem with running your own email setup? And have you not found that keeping on the white side of mail server lists is a constant and moving target?

May I ask, do you send a lot of mail and have multiple accounts? (I do, so this overhead would be impossible for me to manage personally)

KiwiCoder··on How Google obliterated my 4 year old Chrome extension featuring 24k+ users
I used K-9 for many months and it was just OK. The FastMail app was not a huge improvement (over K-9) but it was still an improvement, at least in my experience. From memory K-9 didn't handle multiple "send-from" accounts as competently as the FastMail app, and there were other quirks that became more irritating over time.
KiwiCoder··on How Google obliterated my 4 year old Chrome extension featuring 24k+ users
Not OP, but I moved all of my email from free Gmail to paid Fastmail about 2 years ago, and I've not had a moment of regret.

I send quite a lot of email for work and other things and I have what I think is a higher-than-average number of email addresses to manage.

One adjustment I made - I now archive older emails to avoid extra storage costs, which in turn means that searching for older emails is slightly more hassle.

Fastmail's web interface and mobile app are not quite as slick (as gmail) but this isn't a big deal for me personally.

KiwiCoder··on ACM and SocialCoder Partnership for Positive Impact Through Computing
SocialCoder announcement here: https://www.linkedin.com/pulse/socialcoder-partners-acm-edwa...
KiwiCoder··on Who Is Watching You?
> People only start caring when it's too late, when they themselves get affected.

You might be right but I prefer to be less fatalistic. If an article (like this one) hits close enough to make someone think "it could have been me" then perhaps that is enough.

I don't understand your last sentence.

KiwiCoder··on Who Is Watching You?
We need more articles like this, we need a flood, until all the non-technical people in my life take their privacy more seriously than they do at present.
KiwiCoder··on SOFT, Not SOLID: Beyond Traditional Hardware Engineering [video]
This video is about the applications of soft/flexible materials in robotics and other hardware. It's not (as I mistakenly assumed) a teardown of the SOLID principles.
KiwiCoder··on How to tell when a robot has written you a letter
When a volunteer signs up at Social Coder I send them a welcome message.

Here's my confession: I will probably have sent that exact same message to someone else in the past.

At the moment I personally click on the "new message" button, fill out the name, paste in the message, double-check I'm sending it from a socialcoder email address, and then I send it.

This "welcome" process would be trivial to automate and yet I hesitate to do so.

Robots (and scripts) also have a way of blundering into situations that humans would avoid but this isn't why I'm reluctant to automate.

When it comes down to it I don't want to take the human (me) out of the loop. It would feel like I'm duping the recipient who might naturally expect a human connection rather than a recorded message.

If the volume was very much higher I might - apologetically - automate the welcome message. It might not make any difference to the volunteers signing up, but it would make a difference to me.

KiwiCoder··on On gathering requirements
I don't think your experience is at odds with what I'm saying. There are practical, real-life issues that will always trump the mechanics of product development.
KiwiCoder··on Show HN: Finance Jobs – Jobs Board for the Finance Industry
was
KiwiCoder··on Show HN: Finance Jobs – Jobs Board for the Finance Industry
I don't have a green user name but I'm going to ask my question anyway.

It has been said that using a .co TLD for anything other than tech sites should be avoided since non-tech users are prone to mistyping the url with a .com, sending traffic to the exact place the .co site owners hoped to take it from. What's your view on this?

KiwiCoder··on Show HN: JobButler.me – Optimize your job search
Could you expand on how this optimises the job search rather than an application tracker?
KiwiCoder··on Show HN: Spot hyped news at a glance on Hacker News and Reddit
What does "hyped" mean (precisely) in this context?
Page 1 of 5Next →