Hacker Newsnew | past | comments | ask | show | jobs | submit | csbartus's commentslogin

SEEKING WORK | Europe | Remote

I wear multiple hats: Researcher / Senior Software Architect / React Lead / Design Engineer / Junior AI Engineer.

I can help you with your AI software engineering strategy and implementation with a focus on correctness: https://www.osequi.com/studies/list/list.html

- Résumé/CV: https://osequi.com/

- Email: bartus.csongor@gmail.com


Senior Software Architect | React Lead | Design Engineer | Remote, EU

- Location: Europe

- Remote: Yes

- Willing to relocate: Maybe

- Résumé/CV: https://osequi.com/, https://chat.osequi.com/ (AMA with AI)

- Email: bartus.csongor@gmail.com

I deliver better software, faster:

- I solve the two top pain points of JS / TS / React [1]

- Using lightweight formal and semi-formal methods [2]

- I integrate multiple disciplines (entrepreneurship, math, computer science, UX/UI design) to create better products [3]

I'm interested in companies with a high societal impact: synthetic biology, education, healthcare, personal growth, financial stability.

[1]: https://2023.stateofjs.com/en-US/usage/#top_js_pain_points

[2]: https://www.osequi.com/studies/list/list.html

[3]: https://www.osequi.com/csongor-bartus-profile.pdf


SEEKING WORK | Europe | Remote

I wear multiple hats: Researcher / Senior Software Architect / React Lead / Design Engineer / Junior AI Engineer.

I can help you with your AI software engineering strategy and implementation with a focus on correctness: https://www.osequi.com/studies/list/list.html

- Résumé/CV: https://osequi.com/

- Email: bartus.csongor@gmail.com


Senior Software Architect | React Lead | Design Engineer | Remote, EU

- Location: Europe

- Remote: Yes

- Willing to relocate: Maybe

- Résumé/CV: https://osequi.com/, https://chat.osequi.com/ (AMA with AI)

- Email: bartus.csongor@gmail.com

I deliver better software, faster:

- I've created a novel methodology to produce likely-correct software using formal and semi-formal methods [1]

- I integrate multiple disciplines (entrepreneurship, math, computer science, UX/UI design) to create better products [2]

- I use LLMs to generate software based on mathematically correct diagrams [3]

I'm interested in companies with a societal impact: improving lives through education, healthcare, personal growth, financial stability.

[1]: https://www.osequi.com/studies/list/list.html

[2]: https://www.osequi.com/csongor-bartus-profile.pdf

[3]: https://tonsky.me/blog/diagrams/


I'm writing a study about how to write likely-correct studies ... :)

This is a second part of a series on likely-correctness, the first is how to create likely-correct software: https://www.osequi.com/studies/list/list.html


Here is a birds-eye view of programming (classic, functional, quantum) vs category theory vs logic -- aka the computational trilogy:

https://ncatlab.org/nlab/show/computational+trilogy

It helped me a lot putting into context my existing programming knowledge while learning category theory


Just learnt Applied Category Theory, it's a very big fun, hope you're enjoying it too :)


What happened to the very elegant GraphQL? Where the client _declares_ its data needs, and _that's all_, all the rest is taken care by the framework?

Compared to GraphQL, Server Components are a big step back: you have to do manually on the server what was given by default by GraphQL


> the very elegant GraphQL

The GraphQL which ‘elegantly’ returns a 200 on errors? The GraphQL which ‘elegantly’ encodes idempotent reads as mutating POSTS? The GraphQL which ‘elegantly’ creates its own ad hoc JSON-but-not-JSON language?

The right approach, of course, is HTMX-style real REST (incidentally there needs to be a quick way to distinguish real REST from fake OpenAPI-style JSON-as-a-service). E.g., the article says: ‘your client should be able to request all data for a specific screen at once.’ Yes, of course: the way to request a page is to (wait for it, JavaScript kiddies): request a page.

The even better approach is to advance the state of the art beyond JavaScript, beyond HTML and beyond CSS. There is no good reason for these three to be completely separate syntaxes. Fortunately, there is already a good universal syntax for trees of data: S-expressions. The original article mentions SDUI as ‘essentially it’s just JSON endpoints that return UI trees’: in a sane web development model the UI trees would be S-expressions macro-expanded into SHTML.


N+1, security, authorisation, performance, caching, schema stitching..


N+1 is a solved problem at the framework level If GraphQL actually affects your performance, congratulations, your application is EXTREMELY popular, more so than Facebook, and they use graphql. There are also persisted queries etc.

Not sure about caching, if anything, graphql offers a more granular level of caching so it can be reused even more?

The only issue I see with graphql is the tooling makes it much harder to get it started on a new project, but the recent projects such as gql.tada makes it much easier, though still could be easier.


I have been out of touch with the GraphQL ecosystem for a while. What are the status quo solutions to the problems stated above?

N+1 I just remember the dataloader https://github.com/graphql/dataloader Is it still used?

What about the other things? I remember that Stitching and E2E type safety, for example, were pretty brittle in 2018.


We use the dataloader pattern (albeit an in-house Golang implementation) and it has solved all our N+1 problems.

E2E type safety in our case is handled by Typescript code generation. It works very well. I also happen to have to work in a NextJS codebase, which is the worst piece of technology I have ever had the displeasure of working with, and I don't really see any meaningful difference on a day to day basis between the type sharing in the NextJS codebase (where server/client is a very fuzzy boundary) and the other code base that just uses code generation and is a client only SPA.

For stitching we use Nautilus and I've never observed any issues with it. We had one outage because of some description that was updated in some dependency and that sucked but for the most part it just works. Our usage is probably relatively simple though.


Thanks, really appreciate your reply!


if you use node then you have the following for N+1, by having a tighter integration with the database, for ex: https://www.graphile.org/postgraphile/performance/#how-is-it...

or prisma

https://pothos-graphql.dev/docs/plugins/prisma/relations


Isn’t every graphql a post, so no http response caching, so you need to do it in-app or with redis?

N+1 and nested queries etc were still problems last I checked (few years ago).

I’m sure there are solutions. Just that it’s not as trivial as “use graphql” and your problems are solved.

Please correct me if I’m wrong


it used to be the case that graphql requests are in POST, but not anymore: https://nearform.com/open-source/urql/docs/api/core/#:~:text... example for urql

on top of http level caching, you can do any type of caching (redis / fs / etc) just like a regular rest but at a granular level, for ex: user {comments(threadId: abc, page: 1, limit: 20) { body, postedAt} is requested and then cached, another request can come in thread(id: abc) {comments(page: 1, limit: 20) {body, postedAt} you can share the cache.

N+1 is solved by a tighter integration with the database, for ex: https://www.graphile.org/postgraphile/performance/#how-is-it... or maybe a more popular flavor using prisma: https://pothos-graphql.dev/docs/plugins/prisma/relations#:~:...

but of course, there is always the classic dataloader as well.

I am not saying that use graphql and all the problems will be solved, but i am saying that the problem that OP proposed has been solved in an arguably "better" way, as it does not tie the presentation (HTML) with the data for cases of multiplatform apps like web, or native apps.


That's a backend issue I guess ...


That's the thing, this brings the benefits of GraphQL without requiring GraphQL (+Relay). This was one of the main drivers of RSC (afaik).

Obviously if you have a GraphQL backend, you could care less and the only benefit you'd get is reducing bundle size f.e. for content heavy static pages. But you'll lose client-side caching, so you can't have your cake and eat it too.

Just a matter of trade-offs


Couldn't you have both?

I assumed RSC was more concerned with which end did the rendering, and GraphQL with how to fetch just the right data in one request


I was just going to say, all of this has been solved with graphql, elegantly.


SEEKING WORK | Europe | Remote

I wear multiple hats: Researcher / Senior Software Architect and Engineer / Design Engineer and recently Junior AI Engineer.

I can help you with your AI software engineering strategy and implementation with a focus on correctness: https://www.osequi.com/studies/list/list.html

- Résumé/CV: https://osequi.com/

- Email: bartus.csongor@gmail.com


Senior Software Architect | Junior AI Engineer | Remote, EU

- Location: Europe

- Remote: Yes

- Willing to relocate: Maybe

- Résumé/CV: https://osequi.com/

- Email: bartus.csongor@gmail.com

Mathematics, Computer Science and UI/UX design specialist with 25+ years of experience.

I solve two of the most challenging software engineering problems: code organization and state management, using lightweight formal methods -- Applied category theory, Finite state machines -- to bring academic rigor to the full stack: https://www.osequi.com/studies/list/list.html

I'm a junior AI Engineer versed in prompting, agentic development with Vercel AI SDK. Finishing my first AI app, an agent/assistant helping to write likely-correct studies, articles and technical documents.

Seeking:

- Teams building better software, faster

- Particularly interested in fintech, health-tech, and developer tools


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: