Tuesday, March 25, 2025

A Progress Update

Hello!

I've been chugging away on some things in the background, but the progress isn't in a release yet so I thought I'd talk a bit about some of the recent work.

 Here are three areas I've been working on:

  • Transformation #1 - Switch to a site-based focus for scanning (like uBO)
  • Bug - Try to improve the hidden tab situation. I have one idea for this already in motion.
  • Research #1 - new AI models, maybe new infrastructure for training

Site-based Focus

I've been working over at https://github.com/wingman-jr-addon/wingman_jr/issues/211 on getting the site-oriented focus working. I've gotten a bit of the core foundational work in that's not very exciting, and I've been starting to experiment with what kinds of new opportunities are available once going site-based.

One key opportunity is that now sites can be filtered using per-site statistics, which allows for some new ideas. For example, one thing I'm playing around with is an adaptive mode for mixed mode sites: think anything from Amazon to YouTube. These types of sites are historically quite difficult to get right - you can't just set one threshold and have it work particularly well. One aspect of this relates to human psychology as well: you may be generally browsing for good content but then a relatively objectionable image might pop up, and while it may not be that bad it stand out relative to its peers and has a somewhat similar effect.

 Note that generally the site-oriented arc of work is large, so don't expect a release with this feature in it soon. But the adventurous can see the experimentation going on if they like!

Hidden Tab Mitigation

 I have another option available for folks struggling with the hidden tab to try! Basically, go back to how the old addon version worked by picking a different backend option that doesn't use the hidden tab. It'll do a pre-check to ensure the original performance issue doesn't pop up, and fall back to the hidden tab if needed. For most, they'd see a decrease in speed, but it's far better than the tab regenerating. This work was merged in https://github.com/wingman-jr-addon/wingman_jr/issues/209.

New AI Model

I've done a smaller amount of work here, with SQRXR 145 being a potential candidate. This is an iterative rather than new model.

Friday, March 14, 2025

Model Candidate SQRXR 145

 I've been playing around with a new model variant, SQRXR 145. I've generally found it to be a bit better, but I'm trying to confirm how well it performs with false positives in trusted mode. For neutral and untrusted modes I think it does a bit better job all around. The adventurous can clone the repo at https://github.com/wingman-jr-addon/wingman_jr/tree/sqrxr-145 and give it a try.

Sunday, February 2, 2025

What Next in 2025?

Ideas for 2025

Here are the likely areas of focus for 2025:

  • Transformation #1 - Switch to a site-based focus for scanning (like uBO)
  • Transformation #2 - More long-term, but features or new addon variant to help those struggling with pornography
  • Bug - Try to improve the hidden tab situation. I have one idea for this already in motion.
  • Feature - Custom image replacement
  • Feature - Make balanced video scanning solution for better out-of-the-box experience
  • Research #1 - new AI models, maybe new infrastructure for training
  • Research #2 - could WebGPU + ONNX replace Tensorflow.js?

I do not expect these all to complete or even be successful, but I think most of my effort will go into these areas. Read below for a further breakdown!

Where to Focus?

 This can be a difficult question to answer; fortunately, people have responded to both the feedback survey as well as the exit survey which helps. So let's break it down a bit.

First, of the listed reasons on the exit survey, the top three reasons people leave are:
  1. The AI model isn't good enough, with responses split about 2:1 that it blocked too many safe images vs. letting bad ones through.
  2. The speed of image scanning is too slow.
  3. The hidden tab causes frustration. I didn't initially have an option for this but got enough write-ins that I added it and it has grown quickly, so there's a good chance this is actually reason #2.

Second, looking through feedback as well as the exit survey, some themes pop out:

  1. Many people use this as adults for themselves because they struggle with pornography, which is different than the original use case of primarily having it as a safeguard for kids. More on this in a bit.
  2. Lots of requests for custom image replacement for silent mode.
  3. Some folks don't like the UI, or find it confusing.
  4. Video scanning should be better.
  5. Some requests for whitelisting/blacklisting by site.
 Third, let's look at developments occurring from other angles.
  1. The main AI base library, Tensorflow.js, has stagnated heavily, and I no longer think we will see any performance improvements coming unless Google chooses to reinvest.
  2. AI has continued to advance rapidly, but it's not yet clear how applicable those advancements would be to the model for this addon. However, there are significant efforts that can be taken to potentially push forward.
  3. NVIDIA DIGITS as an AI training server may be interesting.
 

Transformative Ideas

While most of the ideas above are smaller changes, there are two that are transformative.
 
The first is that based on several pieces of feedback tying together, the addon would benefit greatly by changing to a site-oriented approach to blocking. If you've used uBlock Origin, it would be a bit closer to how that works. This would clear up UI confusion and would naturally tie in with whitelisting/blacklisting sites, etc.
 
The second is that some changes would benefit those struggling with pornography. While I definitely believe that you can't solve human problems with technology, the best technologies help humans help other humans. I'm still mulling this over given the limitations of what an addon can do, but I think key areas to look at would be 1) ways to establish accountability with others in their life and 2) reminders or features to help break out of the loop when they get stuck. This is more of a long-term transformation, and may even lead to a different variant of the addon depending on the features that make sense. If a true new addon variant were created, that would ideally occur after many of the other changes here are implemented so it would have a better foundation to move forward with.

Summary

There's certainly enough here to keep busy! If I can get a few of these knocked out, I think the addon will improve in some tangible ways.
 
As always, you can watch the issues over at https://github.com/wingman-jr-addon/wingman_jr/issues
I'm also playing around a bit with the GitHub Projects feature; we'll see if it goes anywhere but I'm checking it out at https://github.com/users/wingman-jr-addon/projects/1
Please continue to give feedback via the different surveys; I don't always respond but I do read them and try to consider how to incorporate them. Thanks!

Wednesday, January 29, 2025

Up Next 2025?

Just wanted to let folks know that I've been reviewing all the feedback and am working on what features to plan out for 2025! So stay tuned and I'll plan to comment on the upcoming roadmap in say the next month or so.