tomhallett's comments

tomhallett | 1 year ago | on: Show HN: WebJSX – A tiny Web Components and JSX library

The statement I struggle with is "Web Components are mature now", not because of bugs per-se, but more of interoperability with the larger eco-system.

One example: if I want to use tailwindcss, then adopting web components comes at a cost/risk. While there are techniques like in this tutorial [1], you end up getting cut by the bleeding edge if you are not using Lit, you are using vite (based on comments), etc etc. (And the space moves so fast, I'd be afraid that any architectural differences between Tailwind and Web Components, might start to hurt me further in the future.)

1: https://www.youtube.com/watch?v=HwkXCYiRgtE

tomhallett | 1 year ago | on: Kolmogorov-Arnold networks may make neural networks more understandable

If a KAN has multiple layers, would tweaking the equations of a KAN be more similar to tweaking the weights in a MLP/NN, or more similar to tweaking a decision tree?

EDIT: I gave the above thread (light_hue_1 > empath75 > svboese > empath75) to chatgpt and had it write a question to learn more, and it gave me "How do KAN networks compare to decision trees or neural networks when it comes to tracing causality and making interpretability more accessible, especially in large, complex models?". Either shows me and ai are on the right track, or i'm as dumb as a statistical token guessing machine....

https://imgur.com/3dSNZrG

tomhallett | 1 year ago | on: The "email is authentication" pattern

"soerxpso" said "store your key at the bank", but you are saying "two or N places". So it sounds like 1 bank is less secure for your key then 1 bank is for your money, because you need two or more banks for your key, while 1 bank for your money is sufficient. Correct?

tomhallett | 1 year ago | on: Ask HN: How Can I Quickly Launch My Web Product and Attract Target Users?

1) read “the mom test”

2) I hear that you scratched your own itch. When you had the itch/problem, what did you do to see if someone else had solved it before you started building? If you “only” did a quick google search, then you can try to rank for the phrase you searched for (which might be super hard). Did you post on Reddit/slack-group - if so, build a presence there so that when other people ask that same question, you can be there to help (and mention your solution)

3) try to meet people in real life who might have this same itch/problem, and talk to them

tomhallett | 1 year ago | on: Ask HN: Front-end bait and switch?

In your offer letter, it should say what your job responsibilities are. Usually things like “work with stakeholders to develop features”, etc etc.

In that offer letter, you need to negotiate so that it says “backend features” and “op will not be required to implement frontend features, which use technologies like JavaScript, typescript, and css”.

The act of negotiating this will show you if the company is actually ok with this or you are just being told yes by a recruiter.

If you can’t get this, then you are effectively powerless.

tomhallett | 1 year ago | on: React 19 almost made the internet slower

To me, the initial allure of the vdom was how much further it got you then backbone.js’ “this.model.on(‘change’, this.render)”. When that one liner in backbone was enough, it was magical. But once you hit scenarios where overwriting the this.el.innerHtml, it became super painful (usually when that el was hooked up to 3rd party plug-ins, html5 video tags, etc).

Once react switched from class based components and mixins, each subsequent release was only more confusing. I remember the conference talk where they explained the problems with mixins (forgetting to cleanup and them all sharing one state), both of which can be solved in a few different ways, but they opted for a whole rewrite for hooks, which I “get”, but think it increased the complexity dramatically for a very low gain.

tomhallett | 1 year ago | on: Show HN: I built a backend so simple that it fits in a YAML file

Thoughts:

1) put the “# Short syntax for string type.” comment in your docs on your homepage example. When I first saw the “price” element I thought it was a jsonb field or something

2) why the emojis? So confused. Are those an alternative to a “dash” for entities? Do I need todo those? Do they set the favicon for that rest page? Note: it looks like it messes up indentation alignment. If it’s trying to be cute, I would deprioritize it

3) a “curl” command example on the homepage would make it a bit easier to grok the value of how simple your backend is

4) where does the data get stored? SQLite? Duckdb?

tomhallett | 1 year ago | on: Show HN: We open sourced our entire text-to-SQL product

Would open sourcing the core IP of a company “typically” require board approval?

If a company goes under, the investors will want to sell off the IP, open sourcing everything would make that IP less valueable. There must be some blanket clause in the term sheet to cover that, right? Ie: founders won’t do anything which will materially hurt the company without board approval (or something, I am no where close to a lawyer, this is all conjecture)

tomhallett | 1 year ago | on: Show HN: Visual debugger for Rails system tests

at one point i started to make a gem called "dora" where you could "explore" the page with methods around the capybara driver, but never finished it. for example: page.find_blog_posts.highlight_all would draw a blue box around each "blog_post" element.

tomhallett | 1 year ago | on: GPT-4o

Any recommendations on patterns/approaches for these declarative logic trees and where you put which types of logic (logic which goes in the prompt, logic which goes in the code which parses the prompt response, how to detect errors in the response and retry the prompt, etc). On "Show HN" I see a lot of "fully automated agents" which seem interesting, but not sure if they are over-kill or not.

tomhallett | 1 year ago | on: Pg_lakehouse: Query Any Data Lake from Postgres

For aws to make it available on rds Aurora, would it be safe to assume there would have to be some changes to the extension source to make it compatible with the Aurora engine? If we assume aws doesn’t want todo that, then their licensing provides some protection there.

tomhallett | 1 year ago | on: Show HN: Visual debugger for Rails system tests

Very cool! Will definitely check it out.

Random question: when you "pause" a test, is it actually pausing the capybara/rspec test such that I can have a breakpoint/debugger/REPL experience to try out various capybara/rspec code?

The reason I ask: one of the slowest/annoying parts of writing capybara tests is the context jump between "this is the css selector i get from chrome dev tools" and "this is the capybara/rspec code which I use in my tests". While they are similar, there are differences which slow things down: locating buttons based on text (vs css), case sensitivity issues with text, ambigious matches, wanting to use nested "find" calls [ie: find(css: ".modal").click_button("Close")], trying to use page objects vs selectors directly in tests, etc.

Often times my first attempt is "close" but not quite right, which compounds when you hit that on most steps of the user's flow.

super stretch goal: if you are using page objects in your rails app, if the page objects where written in a way that "cyperful" could parse them, you COULD have a feature where cyperful could highlight the page objects on the page. So instead of showing me css selectors, you draw a box around a page/section object.

I know that Playwright was doing some cool stuff with their "Pick Locators" and it allowing you to test playwright locators in the tool, not sure if this ever got extended to Page Objects or not. https://playwright.dev/docs/test-ui-mode#pick-locator

tomhallett | 1 year ago | on: Did we lose our way in making efficient software?

$10 = 6% fee; $5 = 8% fee. Both of which are far better than apple’s fees, so that point is a bit confusing.

Chargebacks = customer support. I agree with that, but if you have a B2C business which has any non-trivial revenue (OP is talking about word doc apps, so we’re obviously not talking about indie $2 side project apps), then you would already have CS anyway. I fully understand there is an opportunity cost with any service and where those costs get realized, but your examples don’t seem like a slam dunk in apple’s favor.

tomhallett | 1 year ago | on: Kobold letters: HTML emails are a risk

While I’m not saying the specific scenario will work 100% of the time, it doesn’t need to - by the email getting forwarded at all, there is some element of trust in “my manager forwarded me this email and typed ‘complete this for me’”. If this css technique increases the attackers odds, then it’s an issue.

Or for your specific example, imagine the recipient is passing their manager in the hallway: “hey, can we chat about the Acme Corp email, I’ve got some questions about it”. Response: “sorry, super busy. It’s a fairly common ask, just get it done!”

tomhallett | 1 year ago | on: Show HN: I made a site to find top YouTube courses, bypassing expensive courses

Question: does the YouTube content found by your algorithm have the follow/like/subscribe promos in it? Sponsored content in the videos? Is there some sort of score/rating for the “youtube creator self promo” (# of seconds per video), which is not there on udemy?

Note: I think it’s 100% fine that YouTube creators put this in their YouTube videos, but it’s why I prefer to pay for content on udemy/skillshare/others.

tomhallett | 2 years ago | on: Brave, Firefox, Vivaldi Surge on iOS Due to Europe's Digital Markets Act

When I was setting up my mother in law’s HP, her windows machine gave me a choice screen for the browser, but they littered it with dark patterns. It gave repeated warnings, would ask me to confirm that I wanted chrome, and then (accidentally?) kept switching the default back to Microsoft Edge. I really hope the EU puts enforcement teeth into these agreements, where the actual UX is pro-consumer when they choose the non-default.
page 2