HN user

saxenaabhi

56 karma
Posts0
Comments77
View on HN
No posts found.

Maybe acceptable in some cases but the original example in this thread was about accounting and they use software to do the counting not humans.

And even id humans/llms do it there would still be a need for systems of record with things like audit log etc.

I'm having a lot of trouble with distribution

Maybe add a link to playstore/appstore under the generated promo code

small things like this have outsized effect

Sure, but i don't think it's reasonable to hold given level of capability constant in a landscape where a give consumer of AI also has competitive pressures.

I can't use last year's SOTA model when my competitors can use the current SOTA model.

This is also baked in the eye watering valuations of model companies.

Hey vira28, thanks a lot for your work. This is a very promising project because other alternative like supabase/etl, Kuvasz-streamer, Sequin all have some subtle issues.

Few questions: 1) For a supabase project can we setup replication slot on replica instead of primary? https://sequinstream.com/docs/reference/databases#using-sequ...

2) For a planetscale cluster are the replication slots on primary or the follower nodes?

I'm asking because isn't setting up slots on primary riskier than setting them on replicas/followers? Because If you have them primary In case of WAL buildup your primary will go down?

As someone who uses dbos.dev, restate.dev, cf workflows here is a snippet from our Agents.md:

  Restate.dev:
    for payment integrations on northflank since its faster than cf workflows, independent of cf and its downtime and self-hostable vendor-lock-in free,
  Cloudflare workflows:
    for non critical stuff like csv/pdf report generations since it's very cheap.
  DBOS.dev:
    for workflows that need atomic messaging tied to a postgres db transaction for 100% reliabilty/durabilty(for example populating a materialized row or sending out critical email/push to a merchant).
DBOS and Restate are similar on surface but Restate requires a central "orchestrator" which has pros and cons but makes it easy to build with serverless workers on cf/vercel.

It also has VirtualObject which is a nice vendor-lock-in-free OSS alternative to CF's single threaded DurableObject.

Where DBOS absolutely shines is

1) Atomic messaging in the same db tx as your business logic via dbos.enqueue_workflow! This is often the most brittle part of any solution and doing it atomically and durably with same tx that ran your business logic drastically reduces lots of complexity.

2) Since DBOS stores workflow state in db it should be easy to build dashboard for observability from metabase/looker(I wish restate exposed its rocksdb instance so it could be hooked up to metabase).

Migrating to the EU 4 months ago

For those looking for a PaaS instead of VPS provider like hetzner I can suggest Northflank. We moved from Render to Northflank and couldn't be happier.

Again non affiliated with either.

I did this search a month ago on Linkedin. Show number of jobs if you search for "Software Engineer".

    US: 77,000
    European Economic Area: 58,000
    India: 51,000
    China: 48,000(probably undercounted)
    UK: 9,000
    Canada: 7,000
    Brazil: 6,000
    Mexico: 4,000
    Aus & NZ: 2,000
    Eastern Africa: 300
    Western Africa: 500
    Southern Africa: 600
    Northern Africa: 1,000

    Within europe:
    Nordics: 3,000
    Germany: 15,000
    France: 8,000
    Italy: 3,000
    Poland: 5,000
    Romania: 2,000

There won't be new intermediates or seniors any more to replace the ones that age out or quit the industry entirely in frustration of them not being there for actual creativity but to clean up AI slop, simply because there won't have been a pipeline of trainees and juniors for a decade.

There are be plenty of self taught developers who didn't need any "traineeship". That proportion will increase even more with AI/LLMs and the fact that there are no more jobs for youngsters. And actually from looking at the purely toxic comments on this thread, I would say that's a good thing for youngsters to be not be exposed to such "seniors".

Credentialism is dead. "Either ship or shutup" should be the mantra of this age.

There are legitimate reasons for the startup ecosystem to focus firstly and primarily on getting the users/customers. I'm not arguing against that. What I am arguing is why does the industry need to be dominated by startups in terms of the bulk of the products (not bulk of the users). It begs the question of how much societally-meaningful programming waiting to be done.

You slipped in "societally-meaningful" and I don't know what it means and don't want to debate merits/demerits of socialism/capitalism.

However I think lots of software needs to be written because in my estimation with AI/LLM/ML it'll generate value.

And then you have lots of software that needs to rewritten as firms/technologies die and new firms/technologies are born.

I don't believe this sample to be representative.

Linkedin shows the following

    US: 77,000
    European Economic Area: 58,000
    India: 51,000
    China: 48,000(probably undercounted)
    UK: 9,000
    Canada: 7,000
    Brazil: 6,000
    Mexico: 4,000
    Aus & NZ: 2,000
    Eastern Africa: 300
    Western Africa: 500
    Southern Africa: 600
    Northern Africa: 1,000

    Within europe:
    Nordics: 3,000
    Germany: 15,000
    France: 8,000
    Italy: 3,000
    Poland: 5,000
    Romania: 2,000
Quick thoughts

1) US, Europe, China, India seem to be doing way better than the rest of the world

2) Germany still tops the charts in europe

3) China is probably undercounted, so I wonder if the real number is even higher than US. Would love to hear from people more familiar with chinese job market.

4) I wish Africa was doing better given the economic challenges

Linkedin shows the following

    US: 77,000
    European Economic Area: 58,000
    India: 51,000
    China: 48,000(probably undercounted)
    UK: 9,000
    Canada: 7,000
    Brazil: 6,000
    Mexico: 4,000
    Aus & NZ: 2,000
    Eastern Africa: 300
    Western Africa: 500
    Southern Africa: 600
    Northern Africa: 1,000

    Within europe:
    Nordics: 3,000
    Germany: 15,000
    France: 8,000
    Italy: 3,000
    Poland: 5,000
    Romania: 2,000

I'm not sure you can make that assumption even when a human wrote that code. LLMs are competing with humans not with some abstraction.

The issue is that if it's struggling sometimes with basic instruction following, it's likely to be making insidious mistakes in large complex tasks that you might no have the wherewithal or time to review.

Yes, that's why we review all code even when written by humans.

fyi that happened to me with codex.

but, why is it a big issue? if it does something bad, just reset the worktree and try again with a different model/agent? They are dirt cheap at 20/m and I have 4 subscription(claude, codex, cursor, zed).

You give no reasons why you think it's a sound advice.

My experience is following

1) Tx are faster when they are executed a sql function since you cut down on network roundtrip between statements. Also prevents users from doing fancy shenanigans with network after calling startTransaction.

2) It keeps your business logic separated from your other code that does caching/authorization/etc.

3) Some people say it's hard to test sql functions, but since pglite it's a non issue IMO.

4) Logging is a little worse, but `raise notice` is your friend.

At my new company, the use of stored procedures unchecked has really hurt part of the companies ability to build new features

Isn't it just because most engineers aren't as well versed in SQL as they are in other programming languages.

We have a POS system where entire blogic is postgres functions.

There are many others as well. Sure Rails/Laravel/Django people use the ORM supplied by their framework, but many of us feel it's un-necessary and limiting.

Limiting because for example many of them don't support cte queries(rails only added it a couple of years ago). Plus it get weird when sometimes you have to use sql.raw because your ORM can't express what you want.

Also transactions are way faster when done in a SQL function than in code. I have also seen people do silly things like call startTransaction in code and the do a network request resulting in table lock for the duration of that call.

Some people complain that writing postgres functions make testing harder, but with pglite it's a non issue.

As an aside I have seen people in finance/healthcare rely on authorization provided by their db, and just give access to only particular tables/functions to a sql role owned by a specific team.

These aren't 6 different way.

You are talking about something like network layers in graphql. That's on our roadmap for other reasons(switching api endpoints to digital ocean when our main cloudflare worker is having an outage), however even with that you'll need some custom logic since this is doing at least two api calls in succession, and that's not easy to abstract via a transaction abstraction in a network layer(you'll have handle it durably in the network layer like how temporal does).

Despite the obvious downsides we actually moved it from durable workflow(cf's take of temporal) server side to client since on workflows it had horrible and variable latencies(sometimes 9s v/s consistent < 3s with this approach). It's not ideal, but it makes more sense business wise. I think many a times people miss that completely.

I think it just boils down to what you are aiming. AI is great for shipping bugfixes and features fast. At a company level I think it also shows in product velocity. However I'm sure very soon our competitors will catch up when AI skepticism flatters.

Not the OP but we use LLMs to build a restaurant pos system with reservations, loyalty, webshop etc. Almost at feature parity with bigwigs like lightspeed/toast.

I find having a back-end-forth with an agent exhausting, probably because I have to build and discard multiple mental models of the proposed solution, since the approach can vary wildly between prompts

Just right now I had it improve QR payments on POS. This is standard stuff, and I have done it multiple time but i'm happy I didn't have to spend the mental energy to implement it and just had to review the code and test it.

```

Perfect! I've successfully implemented comprehensive network recovery strategies for the OnlinePaymentModal.tsx file. Here's a summary of what was added:

  Implemented Network Recovery Strategies

  1. Exponential Backoff for Polling (lines 187-191)
  2. Network Status Detection (lines 223-246, 248-251)
  3. Transaction Timeout Handling (lines 110-119)
  4. Retry Logic for Initial Transaction (lines 44-105)
  5. AbortController for Request Cancellation (lines 134-139, 216-220)
  6. Better Error Messaging (lines 85-102, 193-196)
  7. Circuit Breaker Pattern (lines 126-132)
  All strategies work together to provide a robust, user-friendly payment
  experience that gracefully handles network issues and automatically
  recovers when connectivity is restored.
```

An agent can easily switch between using Newton-Raphson and bisection when asked to refactor unrelated arguments, which a human colleague wouldn't do after a code review.

Can you share what domain your work is in? Is it deeptech. Maybe coding agents right now work better for transactional/ecommerce systems?

Why not just stop taxing dividends? CIT already has been paid on it, so why charge PIT on it? Like estonia.

That would mean there's no incentive for companies to buy back stock instead of dividends.

On the other hand, in the 2020s, India, Israel, most Eastern European states, Ireland, Costa Rica, and a couple others have launched industrial promotion subsidizes for software offshoring - often providing US$10k-30k per head in federal and local subsidizes along with subsidized office space and real estate and tax windows.

This isn't true either in India or most of eastern europe.

Maybe you are confusing PLI for manufacturing? Altough even that's not on per head basis.