HN user

david_allison

2,017 karma

maintainer @ AnkiDroid

https://github.com/david-allison

gmail: davidallisongithub

Sponsors: https://github.com/sponsors/david-allison/

https://opencollective.com/ankidroid

Posts5
Comments709
View on HN

There's an arena/research report by Ozzie Kirkby and Andy Matuschak at https://memory-machines.com/ which you might find interesting.

I predict that things will be 'good' within the next 5 years, but your intuition is correct (and the SOTA models are often producing worse prompts than older models).

We define our API into the Rust via protobufs[0] and some codegen.

The wrapper around these is very lean, FFI-based[1], it's abstracted to a library so Android devs never need to know there's rust/codegen involved.

We then define a light Kotlin-based wrapper around the protobuf-generated API[2]. This is a candidate to move to Kotlin multiplatform in the near future (mostly for test speed improvements).

[0] https://github.com/ankitects/anki/tree/main/proto

[1] https://github.com/ankidroid/Anki-Android-Backend/blob/a0428...

[2] https://github.com/ankidroid/Anki-Android/blob/68192585a7ae4...

https://www.acm.org/code-of-ethics

1.1 Contribute to society and to human well-being, acknowledging that all people are stakeholders in computing.

1.2 Avoid harm.

1.3 Be honest and trustworthy.

1.4 Be fair and take action not to discriminate.

1.5 Respect the work required to produce new ideas, inventions, creative works, and computing artifacts.

1.6 Respect privacy.

1.7 Honor confidentiality.

2.1 Strive to achieve high quality in both the processes and products of professional work.

2.2 Maintain high standards of professional competence, conduct, and ethical practice.

2.3 Know and respect existing rules pertaining to professional work.

2.4 Accept and provide appropriate professional review.

2.5 Give comprehensive and thorough evaluations of computer systems and their impacts, including analysis of possible risks.

2.6 Perform work only in areas of competence.

2.7 Foster public awareness and understanding of computing, related technologies, and their consequences.

2.8 Access computing and communication resources only when authorized or when compelled by the public good.

2.9 Design and implement systems that are robustly and usably secure.

3.1 Ensure that the public good is the central concern during all professional computing work.

3.2 Articulate, encourage acceptance of, and evaluate fulfillment of social responsibilities by members of the organization or group.

3.3 Manage personnel and resources to enhance the quality of working life.

3.4 Articulate, apply, and support policies and processes that reflect the principles of the Code.

3.5 Create opportunities for members of the organization or group to grow as professionals.

3.6 Use care when modifying or retiring systems.

3.7 Recognize and take special care of systems that become integrated into the infrastructure of society.

4.1 Uphold, promote, and respect the principles of the Code.

4.2 Treat violations of the Code as inconsistent with membership in the ACM.

  Location: Isle of Man/Europe
  Remote: Yes - Experience working with US/International teams
  Willing to relocate: Yes - For the right role. Happy to be on-site for onboarding
  Technologies: Kotlin, Android, TypeScript, React, .NET, Java, CI/CD, Accessibility, i18n
  Email: davidallisongithub@gmail.com
  GitHub: https://github.com/david-allison
Open source maintainer/top contributor of AnkiDroid: Android client for Anki. 10M+ downloads. ~10 YOE, with 6 YOE open source (4,000+ commits). Ready for stability after years of contracting and maintainership.

I lead a global volunteer team and take full product ownership: setting direction over multi-year horizons, planning and implementing architectural migrations, and keeping a project moving via community engagement, triage, fixes, reviews and mentorship.

Highlights:

  - AnkiDroid now releases in tandem with upstream, rather than lagging behind by years
  - Migrated a 15-year-old codebase from Java 7 to Kotlin, maintaining git blame
  - Migrated to a common Rust-based backend. Android contributors are fully isolated from this complexity
  - Improved app rating from 4.5 to ~4.8 stars, dramatically reduced crash rate
  - Mentored hundreds of contributors and co-launched AnkiDroid's Google Summer of Code programme
AnkiDroid continues as a hobby; my day job is fully separate.

Looking for: full-time or contract. IC or EM, I'm nontraditional so I'm open to a conversation about which fits. Drawn to work that makes people's lives better, in any stack.

How could Stack Overflow succeed in a post-chatgpt eta?

As a data source for LLMs, and by becoming the place someone goes where ChatGPT can't produce a sufficient answer.

What if it's used for training data? It seems like there's no penalty for training on copyrighted materials.

Very unusual: 47.0.1 is showing these permissions when on my MacBook viewing the store entry.

The Play Store doesn't show these permissions when viewed on my Pixel 9 Pro, and the APK doesn't have these permissions when downloaded/extracted.

You need to state the permissions you *may* request/use in AndroidManifest.xml. This data can then be displayed to users pre-installation.

From the (limited) article, it doesn't seem they do this: https://thereallo.dev/blog/decompiling-the-white-house-app#p...

----

EDIT: I'm mistaken. From the Play Store[0] it has access to

* approximate location (network-based)

* precise location (GPS and network-based)

[0] https://play.google.com/store/apps/details?id=gov.whitehouse...

This seems to disagree with:

The location permissions aren't declared in the AndroidManifest but requested at runtime

*shrug*, someone should dig deeper. It looks like the article may not match reality.

I have GitHub Copilot Pro. I don't believe I signed up for it. I neither use it nor want it.

1. A lot of settings are 'Enabled' with no option to opt out. What can I do?

2. How do I opt out of data collection? I see the message informing me to opt out, but 'Allow GitHub to use my data for AI model training' is already disabled for my account.

As an eligible maintainer: absolutely.

In the past week (besides the constant slop), there are models which have misattributed the copyright of new files to me, and stripped my copyright from existing files. It's sapping up time, energy and motivation.

I provided a spam email chain from a user with a linked GitHub profile, stating that they obtained my email from my GitHub profile.

GP [martinwoodward] states:

This type of behaviour is explicitly against the GitHub terms of service, when we catch the accounts doing this we can (and do) take action against those accounts including banning the accounts.

But action was not taken, there was no reply to my email to GitHub support.

If used/implemented correctly, they don't.

* This is an optional feature via git config, with a further GitHub setting to reject commits pushed using your personal email address.

* If the GitHub setting is disabled, some GitHub-generated commits/fixups use your personal email (e.g. squash merge in the GitHub UI).

* I use my personal email in file-level copyright headers, even if the commits use the GitHub noreply email.

* I have my personal email on my GitHub profile, visible to logged in users.

when we catch the accounts doing this we can (and do) take action against those accounts including banning the accounts.

This isn't my experience. I requested that you looked into a spammer in July 2025, you ignored my reply and the account is still active.

----

Thank you so much for the report. We're sorry to hear you're receiving unwanted emails, but it's always a possibility when your public contact information is listed on the web. You can keep your email address private if you wish by following the steps here:

Setting your commit email address

We do expect our users to comply with our Terms of Service, which prohibits transmitting using information from the GitHub (whether scraped, collected through our API, or obtained otherwise) for spamming purposes. I'm happy to look into it further to see if we can contact the reported user and let them know that this type of activity is not allowed.

Please let us know if you have any other questions or concerns.

----

My reply which was ignored:

----

I understand it will happen from time to time. I'd rather be contactable (I've received legitimate emails today because my email is on my profile).

Please take further action. My email is public with the expectation that the ToS will be enforced. If GitHub isn't discouraging spammers then it makes it much harder to justify being contactable.

All the best, David