HN user

tmd83

1,051 karma

Love working with backend systems, the challenge of designing a good system and all aspects of performance engineering.

Always get inspired by the brilliant insightful things people do and a little sad by what little I know.

Posts13
Comments419
View on HN

At one point due to the way I was using my just above my wrist my skin basically calloused from the edge of the macbook. Now at least the lid is not that sharp but it used to be I recall and I always worried about kids getting hit by it in case of an accident.

Or perhaps the teams at fruit co found a way to claim that their overflow is an innovative new feature and not copied from some other designs.

While they do a ton of good work, they do love to claim everything was first invented by them.

People do love trumping up what they have done. Developers feeling their project was absolutely essential when it might be more about NIH. But are any categories of people more used to trumping up their pointless work so high that any reasonable person would be too shameful to attach their name to the narrative? I guess PR people and politicians can compete with them or even take the first two places.

This doesn't take away from what wondrous thing a designer can achieve. It's an enormously difficult thing to design something that's functional and pleasing and in some cases provide a mood (calm, fast, serious). This sort of bullshit from what I imagine uber expensive designs rebranding major corporations simply highlights the value and rarity of a good designer.

I'm curious were they ever serious about their craft? Or the pursuit of promotion and glory took away their original ethos or they drunk the cool aid so much that they actually believe what they are saying?

Well, there's good to have vs. stupid. It would perhaps be nice to have per-app volume. But the fact that iPhone has just a global volume ... that my ringtone vs. media volume can't be separate is plain stupid isn't it. I will turn down volumes because at work/kids and lost my ringtone. I mean who makes decisions like that?

Now in terms of a little thing that's a major annoyance is the alarm. Android has this feature where upcoming alarms are shown as notifications which you can turn off (just the next one). I set multiple alarms for the morning so that if I shut off one I get another. Now if I wake up on the 1st alarm I will have the next 2 on notification that I can turn off. On iPhone I will keep having those alarm bells and turn them off (which can wake up my kids/wife) or disable them once I wakeup and I might end up forgetting to turn them on for the next day.

Now the freedom in terms of application or browser and extension!!! are obviously general problems.

There seems to be newer players both open source and commercial now. But a lot of the focus seems in metric and specially distributed traces. Does anyone in the open source do code level profiling (cpu, allocation, locks etc.) preferably sampling profiler (including Java)?

I have only really found pyroscope.

https://www.hyperdx.io/docs/oss-vs-cloud

This page shows event pattern available for both oss vs. cloud. The blog doesn't mention exactly how this is being which would be an interesting read but I understand if a secret sauce.

I recall quite a few years ago a standalone commercial & hosted tool for doing something like this just on logs for anomaly detection. Anyone has any reference for similar tools for working with direct log data (say from log files) or in a similar capacity like hypderdx (oss or commercial)

I wonder what languages it support for language libraries or is it just limited to linux packages? Say java, js etc. ?

Is it marking something active on access or actually checking execution? On execution doesn't work for at least js payload on the other hand on access would add to noise say for an ls.

KeepassXC is good in a lot of ways but I don't use a cloud sync service and finding a good multi platform doesn't seem easy. I do love KeepassXC auto type a lot and website autocomplete is sometimes better than enpass but sometime cause problem which I need to investigate.

SvelteKit 1.0 4 years ago

You mean an API backend in any language and Sveltekit for client side JS based UI in Sveltekit?

SvelteKit 1.0 4 years ago

Is there any option if I want to do traditional (non JS) SSR but also want to share an API endpoint for both browser and other use cases?

Seems like a JS frontend framework or a JS SSR is the only option for such use case. If SSR and API force a JS backend that leaves a lot of the benefit that other languages bring to the table and effectively limiting you to 1 (JS) or 2 (TS including) languages. Seems like a sad state of affair in that regard.

I think the point is they have a Postgres server running anyway as the datastore and the job queue being in Postgres gives you HA, backup and Transaction for free. I think Redis in particular won't give you transaction right?

Needing Transactional semantics for jobs alongside an application operation makes a lot of simpler queue/tool choices difficult.

The one reluctant use I see of JS based UI (does anyone have an alternative solution?) is to reuse API. Right now we have two code path one where a user action renders the html server side and returns it another where an API call for similar work returns a JSON. A JS UI page can consume the JSON and can render the page reusing the core API.

What's the solution to such a use case?

Amazfit have a few model even Bip has a few. Do you have particular recommendation on them?

Do you care to comment on the smartwatch features or health monitoring one?

Very weird implementation with UI stacks and dismiss. The way we designed a multi step flow for a web app was basically having a sort of state machine/flow which says what are possible transitions

say password > mfa1 > mfa2 > done

and as each steps complete what's the next security steps for this particular user's configuration and simply allow just that transition. Once we are at the done state the authentication is marked as successful.

Not storing auth state in UI (regardless of any MVC concern) and allowing only a very narrow allowed state of transition seems like a trivial design choice. I assume google has no shortage of people for security focused design.

The UI stack being created together and dismissed rather than created/called on demand as state transition happens also seem a very wired design. Perhaps I don't understand the reason cause I'm not an android programmer.

Can someone provide an in depth comparison between Cypress and Playwright? It seems that both of them could be good choice compared to Selenium.

For example I keep seeing auto-wait being talked about for Playwright but doesn't cypress have that too? It seems playwright has better browser support and multi-window/concurrency story and cypress have better built-in tools (like a test-runner UI).

Basically looking for recommendation for test-automation for an old complex app mostly written using server-side tech but has potential for react and such moving forward.

JetBrains Ring UI 4 years ago

Does anyone has thoughts on what's the best datetime picker that works sanely in mobile, first to pick an olde date (Say birth date) and user date/time can also be somewhat typed in on the text field?

By traditional APM I primarily meant stacktrace sampling based monitoring of applications.

As for overhead of tracing I wanted roughly compare (obviously it depends on the application a lot) stacktrace sampling vs. tracing based one. Are they usually of similar overhead or say tracing is lighter?

I was thinking tail based sampling could be a lot more expensive because say a head based sampling is doing trace for 10% request whereas regardless of how many sample are kept a tail based one is dong 100% trace. So tracing overhead would be much higher right?

I'm not sure why head based sampling is being called accurate in your doc? Isn't it the least accurate in a sense that it's purely statistical and rare outlier like latency spike or error could be missed?

And yes obviously a tail based sampling has to be something like (trace 5% random request or 1 every five + any outlier that gets calculated based on the captured trace)/

I wonder if anyone can answer some question on distributed tracing for me.

The difference between old days of APM vs. tracing as I understand is two things.

1. Originally APM was single process and it was language aware, usually do sampling stacktrace to find where times are being taken and some very well know place to instrument for exact timing say response time or query time.

Tracers are more working by instrumenting methods of framework/servers/runtime at well known point and getting the timing. In man ways it's a lot more coarse as it might know of a hot loop that I have in my code. But it can trace very well with exact timing at framework boundary like web, cache, db etc.

2. The APM were primarily single process and couldn't really show a different service/process which doesn't work in a micro-service/distributed world.

The way I understand it is that Tracers would allow me to narrow down to the service/component very easily. Whether I can find out why that component is slow might not be as easy (not sure what granularity tracing happens inside a component).

I wonder if this understanding of mine is correct.

The second thing I am really unsure about is sampling and overhead. What's the usual overhead of a single tracing (I know it's variable) but generally are they more expensive at a single request level. Also do they usually sample and is there a good/recommend way to sample this. I forgot exactly who but (probably NewRelic) was saying they collect all traces (like every request?) and discard if they are not anomalous (to save on storage). But does that mean taking a trace is very cheap? And is that end of the request sampling decision something that's common or that's a totally unique capability some have.

Supabase Vault 4 years ago

I wasn't talking just about pgsodium or the vault product but similar products in general.

I understand the point of the database client having access to to the database key and not the key to the secret vault. So in this case other secrets at the vault are essentially protected. But let's say I really have this one secret to protect in which case is the vault fairly pointless?

Is it essentially that if a client using KeyX for some purpose than a compromise of said client will essentially lead to KeyX and there's really no way to protect it?