HNHacker News
TopNewBestAskShowJobs

TomAnthony

3,781 karma · joined May 17, 2011

By day: VP Product at SearchPilot where I lead the team building our SEO split-testing platform: https://www.searchpilot.com/

By night: I'm a hobbyist security researcher, and enjoy bug bounty programs.

submissionscomments
TomAnthony··on New Withings Users Must Pay $99/Year for Apple Health Syncing
Here you go: https://news.ycombinator.com/item?id=50285981

Free wifi sync of Withings Scales to your own server. Alas, not in Rust. :)

TomAnthony··on New Withings Users Must Pay $99/Year for Apple Health Syncing
In response to this, I set out to see if I could patch my scales to sync to my own server.

It only supports two models of scales so far, but I got it working. My Withings scales are now syncing automatically into Apple Health over wifi, and without anything going to Withings.

Blog post: https://www.tomanthony.co.uk/blog/withings-yow-free-wifi-syn...

Github project: https://github.com/tomanthony/YourOwnWeigh/

TomAnthony··on New Withings Users Must Pay $99/Year for Apple Health Syncing
The Withings app has just got consistently worse and worse over the last few years. I just wanted some scales that would sync to my phone and record my weight over time.

Now the app is absolutely bloated and I can barely find my weight, and the syncing has become _much_ less stable, and the app is constantly asking me to sign in again.

Amazing how they were from good, to bad, to terrible.

TomAnthony··on Why is the Zoom app listening on my microphone when not in a meeting?
I think this might have been true in the past, but I don't think it is true any longer. Zoom grew at a wild pace during the early days of the pandemic, and with that came security issues. However, they recognised that and invested into security.

I have previously reported bugs to Google, including one where they simply didn't put any auth on an API endpoint for a new feature, allowing access to any account's data. That is a massive oversight, but at Google scale we realise these things happen, and the more important consideration is how companies respond.

Zoom have a private bug bounty program, but I previously disclosed Zoom bugs publicly [1] as I didn't think their bug bounty program was worthwhile engaging with.

However, they overhauled it, and now of the dozens of private programs I am part of, Zoom's is one of the absolute best. The payouts are great, the team actively engages with the researchers, and seem to legitimately care about getting things right.

Are they perfect? Of course not. But I would feel safer on a Zoom call that call with many competitors who simply don't get as much scrutiny.

[1] https://www.tomanthony.co.uk/blog/zoom-security-exploit-crac...

TomAnthony··on Preserving a floppy disk with a logic analyzer and a serial cable
Thanks for the detailed reply! The Greaseweazle looks good and is inexpensive. I think I’ll get one. :)
TomAnthony··on Preserving a floppy disk with a logic analyzer and a serial cable
I have a bunch of 3.5" floppy disks from my BBC Master, which date back to late early 90s. Will the data on them still be ok?

If I bought a Kryoflux or similar device would I be able to access and save the data?

TomAnthony··on Show HN: CSS Speedrun – A small game to test and improve your CSS knowledge
This was fun. :)

I feel like there should be another scoring axis rather than just time. I think selector length would be wrong, but something like selector complexity, or how robust the selector is to updates.

I scored 3m 50s, but felt like some of my selectors were a bit 'dirty'.

TomAnthony··on Djokovic's PCR test was manipulated?
The negative test result:

https://pcr.euprava.gov.rs/validate.php?cqcode=1640187792DOH...

The positive test result:

https://pcr.euprava.gov.rs/validate.php?cqcode=1640524880jk8...

TomAnthony··on HTTP Toolkit
Excited about Caido! Been waiting on the beta list for a while!
TomAnthony··on Tesco say website and app down after hack attempt
In 2017 I found a security issue with the Tesco website. It was a minor security issue, but I could see they had _attempted_ to stop people doing what I could do.

I did manage to find an email address, but I got a templated response, and when I checked a year later it was still not fixed.

Sure, it was a minor issue, but I was surprised Tesco didn't have a proper Vulnerability Disclosure Program or Bug Bounty program. A bug bounty program is an inexpensive way to avoid exactly this sort of issue.

TomAnthony··on iDOS 2 will be gone soon
Yes, I understand that, but how do I _know_ if I am using this functionality?

In this case, it is the ability for an app to install and execute arbitrary code that hasn't been reviewed. I download an update to DoodleJump and it installs some malware on my device. I'd be none the wiser.

I don't want that stress, which is why I chose an Apple device. It protects me from that scenario.

TomAnthony··on iDOS 2 will be gone soon
I agree - I'd also be opposed. I understand why it frustrates people (especially in the cases such as iDOS 2), but it was a known factor for me buying an Apple phone. More importantly, it was an aspect of the ecosystem that I _wanted_.

On Android the Play Store is a major distributor of malware [1]. I would like to avoid that, which comes with trade-offs, which I accept. Is it perfect? No. But it works.

I do wonder if there is a path where iOS can be completely replaced by a third party OS, so iPhones can be used in a way to allow you to install anything you want, but it is no longer Apple's 'responsibility'. However, that also comes with its own set of problems.

[1] https://www.zdnet.com/article/play-store-identified-as-main-...

TomAnthony··on An AI wolf that preferred suicide over eating sheep
In Information Theory, there is a concept of Channel Capacity. If a channel is defined as the probability of the output being s if you send a, across all possible values of a, then the Channel Capacity is the maximum amount of information you can communicate across this channel, measured in bits.

To achieve the Channel Capacity you need to find the optimum distribution across a - i.e. what set of signals maximises the information you can transmit on this channel. There are known algorithms for finding this distribution (e.g. Blahut-Arimoto).

Now if you model the world as a channel, where s represents the reachable states and a represents the actions the agent can take (and the channel, P(s|a), represents the dynamics of the world), you can calculate what actions allow you maximal control (in terms of states you can controllably reach).

More info in this paper: https://uhra.herts.ac.uk/handle/2299/15376

TomAnthony··on An AI wolf that preferred suicide over eating sheep
Hah - thank you for sharing!

That is very interesting that this emerged from two different approaches.

I published my result years back, and have never heard of this emerging elsewhere before!

Didn’t take it as accusatory [but thanks to child for sharing link :)].

TomAnthony··on An AI wolf that preferred suicide over eating sheep
The approach I used was similar. The idea of maximising observed control of the world means you seek states where you can reach many other states, but _predictably_ so. This comes 'for free' when using Information Theory to model a channel.
TomAnthony··on An AI wolf that preferred suicide over eating sheep
Sure! The PDF is available here:

https://uhra.herts.ac.uk/handle/2299/15376

TomAnthony··on An AI wolf that preferred suicide over eating sheep
Yes, you are right.

I experimented with different time horizons, mostly look 3-7 steps ahead.

In terms of the 'reward', that was implicit within the model - if the ghosts caught you, your ability to influence the state of the world dropped to 0.

TomAnthony··on An AI wolf that preferred suicide over eating sheep
Yes! Exactly - kiting. I didn't know the term but when I explained the behaviour I was seeing to a colleague they told me about this.
TomAnthony··on An AI wolf that preferred suicide over eating sheep
The method was called 'empowerment'. Two ways to explain it...

From a mathematical perspective, we used Information Theory to model the world as an information theoretic 'loop'. The agent could 'send' a signal to the world by performing an action, which would change the state of the world; the state of the world was what the agent 'received'. This obviously relies on having a model of the world and what your actions will do, but doesn't burden the model with other biases.

Pore more colloquially, the agent could perform actions in the world, and see the resulting state of the world (in my case, that was the location of the agent and of the ghosts). Part of the principle was that changes you cannot observe are not useful to you.

TomAnthony··on An AI wolf that preferred suicide over eating sheep
Similar story of unexpected AI outcomes...

As part of my PhD research, I created a simplified Pac-Man style game where the agent would simply try to stay alive as long as possible whilst being chased by the 3 ghosts. The agent was un-motivated and understood nothing about the goal, but was optimising for maximising its observable control over the world (avoiding death is a natural outcome of this).

I spent sometime trying to debug a behaviour where the agent would simply move left and right at the start of each run, waiting for the ghosts to close in. At the last minute it would run away, but always with a ghost in the cell right behind it.

Eventually, I realised this was an outcome of what it was optimising for. When ghosts reached cross-roads in the world they would got left or right randomly (if both were same distance to catching the agent). This randomness reduced the agent's control over the world, so was undesirable. Bringing a ghost in close made that ghost's behaviour completely predictable.

TomAnthony··on The Awful German Language (1880)
Alas, that isn't as true as German's tell me it is, I find.

"Weg" <- how do you pronounce this?

"Geh weg" (go away) "Der Weg ist da drüben!" (the path is over there)

TomAnthony··on Show HN: Control your Bose headphones from your Mac's menubar
Legitimate question, from someone who had just built an app (that will have a cost) that is a helper to Dropbox and has 'Dropbox' in the name.

Where do you think the line is? There are several apps on the Mac app store that have 'Dropbox' in their name and are charged. Is the difference they they are all 'sidecar's that rely on you have Dropbox?

TomAnthony··on Has Y Combinator lost its way when the latest company is a Mac only widget?
Offtopic: I despair that a calendar widget for my Mac is now a pay monthly thing. It is becoming widespread that things that were previously just a piece of software you could buy (then optionally upgrade in the future) are now a monthly cost.

It makes sense for high ticket pieces of software (Office, Photoshop), where it makes it more accessible for regular users. However, for a calendar widget or many similar examples that come up nowadays, it just turns me off immediately.

TomAnthony··on I Have Resigned from the Google AMP Advisory Committee
It was only Monday that they announced 9 new people joining the AMP AC to replace 10 others leaving: https://blog.amp.dev/2020/12/14/amp-advisory-committee-2020-...
TomAnthony··on SEO Is Gentrifying the Internet
The author presents an extremely incomplete picture of modern SEO. As an SEO professional for the last decade, I think we can do better in a discussion of the shortcomings of SEO.

The whole article presents SEOs in a similar way to how people talk about 'used car salesmen'; we all know the clichés about used car salesmen, but the reality for any professional selling used car is vastly different. Presenting SEOs as 'the world’s most scruple-free douchebags' is fairly insulting and not productive.

His article discusses _some_ SEO tactics used by _some_ SEO practitioners. For the subset he presents, then I certainly agree there are a lot of issues, but he presents it as the complete picture.

# Modern SEO

Modern SEO is made up of many facets, one part of which is content, but which also includes technical considerations around crawling and indexing of content, as well as advocating for site speed optimisations, and improving user experience and signals.

A reputable SEO practitioner should be asking 'does this deserve to rank?', and should be advocating improvements that have longevity (i.e. will be helping next year, not just next week). I spent 9 years in an SEO agency, where these were central and core to our whole approach.

# Blackhat SEO

Yes, there is a lot of manipulative and shady stuff going down. That is not just content focused, as the author discusses, but there is also a lot of link buying and selling, which is design to manipulate the link graph with the aim of gaming PageRank essentially.

There is no denying that this stuff happens, but it is once again the same as the used car salesman analogy -- the majority of modern SEOs are professionals, and they don't deserve to be tarred with the same brush.

The line is, I accept, not as clear cut with SEO and there are people who practice manipulative tactics who operate in a grey area, and present themselves as the 'proper' solution.

# Google

Obviously, people practicing manipulative SEO are to blame for their own actions, and for making the situation worse. However, another aspect is Google's monopoly. I don't see how Google could have done a lot better at preventing some of the shady SEO practices that go down - they actively try.

However, their _monopoly_ is problematic as it means that there is only one black box to optimise against, and no real SEO consideration needs to be paid to other search engines.

It will be interesting to see what happens if Apple enter the fray, and what the knock on effects are.

TomAnthony··on The Rise and Fall of Ambrosia Software (2019)
Hey!

My memory of this is imperfect and I joined as the project was already underway, but I believe there were two companies, yes.

The main POC at the second company that got the project completed was Rebecca Heineman [1] from Contraband Entertainment; my job was facilitating comms and help manage and organise the beta testing. I also built the installer.

I _believe_ that yes, Rez was created specifically for this. All EV modders know that the resource fork part of files was a critical part of how EV data files, and all mods, worked. There was a huge dependency there, and so I think the decision was made to create Rez to fill that gap. However, that is the extent of my knowledge.

[1] https://en.wikipedia.org/wiki/Rebecca_Heineman

TomAnthony··on The Rise and Fall of Ambrosia Software (2019)
Yeah, EV Nova was HUGE. The content was primarily the product of ATMOS studios in Australia. It started out as a plugin for EV Override, but Ambrosia bought the rights and helped turn it into the 3rd iteration of the game.

The original EV was great to explore in, but fairly linear (two main threads to the storyline, I believe), but Nova was massive with so many routes through, I doubt anyone ever saw it all!

TomAnthony··on The Rise and Fall of Ambrosia Software (2019)
I was also a fan before I was an employee. I know the love they inspired!

I had moved on from Ambrosia before Steam became a thing, but have also wondered the same. I did point this thread out to Andrew, and he has dropped in some replies, so maybe he can shed some light. I would guess it is a case of all the legal shenanigans needed to make it happen cleanly. Various people external to Ambrosia own various parts of the rights, so you would need to get a bunch of people on board and spend money on lawyers.

I also thought some games could be suited to something like the Nintendo Switch. However, that would obviously need a bunch of technical work to convert it (something I admit to having looked into late last year!).

TomAnthony··on The Rise and Fall of Ambrosia Software (2019)
Hey! That is kind of you to ask.

I joined Ambrosia in late 2002 as part of a 'sandwich degree' as we call it in the UK. I was doing a 4 year BSc in Computer Science, where the 3rd year was spent as a year in industry. For that I moved to upstate NY to work for Ambrosia. It was a dream for someone who had grown up modding EV (like so many here apparently!).

I returned to the UK and kept working for Ambrosia from the UK whilst finishing my studies and for a while after. Andrew offered me a role at Ambrosia and I _agonised_ about the decision as I loved the company but ultimately I was too afraid of moving to the US without an end date there. I often wonder if that was a mistake.

I then did freelance web dev for a couple of years, before going back to Uni to do a PhD in AI. I found out I was going to be a father, and freelance web dev wouldn't cut it any more so I joined an SEO consultancy (Distilled), having taught myself a lot of that building small company websites.

In February of this year, the SaaS project I led at Distilled spun out as its own company SearchPilot (https://www.searchpilot.com/). I know SEO doesn't have a great reputation on HN, but what I love about SearchPilot is it applies A/B testing to SEO to remove the mystery, hand waving, and everything else. My focus is on the product and the network infrastructure side of things, but we are a small team so I get to do all sorts.

I do miss both the fun of working on games, and being part of the joy people would experience (as this thread shows). I also miss the AI research, as it was an interesting set of intellectual challenges.

TomAnthony··on The Rise and Fall of Ambrosia Software (2019)
This was before my time at Ambrosia, but I did work the booth at a few shows in different cities (San Fran, LA, Paris being memories). Your story definitely sounds like the sort of thing that would go down.

I also don't have any t-shirts anymore, but EV:Nova mouse mats are still used at my Mum's house!

Page 1 of 12Next →