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

They will write their own framework of sorts in any case.

I don't think this has to be true. If you think of a framework as a piece of code that calls you where you sort of supply it with configuration you could do that when writing vanilla js but you don't have to.

When I write vanilla js I don't have a seperate file called framework.js. There is very little code needed to manage state. Almost all functions in my codebase are doing concrete things.


I mean in a complex enough application you'll have to come up with some abstractions that will make you life easier anyway. I doubt that you will manually add and remove classes, or add and remove nodes via direct DOM API calls every time you need to do that. You know what I mean? A set of such abstractions is what I call a framework. It doesn't have to be a separate file called "framework.js". It may even be more of a library than a framework. But I believe you will inevitably come to that to centralize certain things and make them easier to do.

I do use abstractions to make my life easier. The main abstraction is a function called tag:

    const tag = (tagName, props, ...children) => {
        const el = document.createElement(tagName)
        for(let k in props) el.setAttribute(k, props[k])
        for(let child of children)
            el.appendChild(typeof child == 'string'? document.createTextNode(child) : child)
        return el
    }
This makes the construction of new elments a bit more concise. The rest is just functions, manually adding or removing classes and adding or removing nodes via the direct DOM API.

The main advantage I think React brought is breaking the concept of "separation of concerns" (keeping css, html and js in different files even when they change together). Keeping stuff that belongs together in the same file and mostly pure is what gives the most benefit. You don't need complicated frameworks for that.

    const createSpecialButton = text => tag("button", {style: "background: purple"}, text)
When something becomes a framework is a bit blurry. I consider this more of an utility function. It is only 7 lines long. You call it, it does not call you. It gives you back a concrete element, not some abstract intermediate value. It is completely optional. The amount of these utilities you need in a big project is still tiny.

I wrote a figma clone (see other comment) with couple of these utility functions. It looks a lot like a regular react project really. Mostly functions (which you might call a component if they return HTML), mostly pure or local state.


Same here. Go for a walk right after breakfast and after lunch every day.


We have encountered that problem too. As far as I learnt from various sources that is caused by circular imports in some cases, and by using index files that re-export your modules in other.


Actually I don't think that Google makes any money from YT in Russia because they disabled ads for Russian users altogether about 2 years ago, and there's no easy way to pay for a premium subscription in Russia since SWIFT stopped working, unless there're other ways it can make money other than those two. And it's very good that they still keep working in Russia anyway, because it provides a platform for alternative views and opinions. As a Russian, I'm really glad we still have YT and surprised it hasn't been blocked.


Just make the viewport narrower than 480px.


What was wrong about the suit? Was it considered too informal for the subject matter?


Looks like it.


From the description of the video:

And yes, we will run DOOM on this hardware at some point, but projects such as these take a long time to create! After all, we are only 3 people working on this in our free time. Have patience until then :)


Missed that, thanks!


Gruvbox dark hard.


An anecdote:

A reporter interviews an old highlander at his home:

- What's your secret? How did you manage to live for so long? - For all my life I've followed three simple rules: no alcohol, no tobacco and no women!

Suddenly they hear some noise behind the wall in the other room.

- What's that? - asks the reporter. - Oh, that's my elder brother. He's drunk again and is beating his wives for hiding his cigarettes.


How this typically plays out, AFAIK, is that the interviewee's brother would be the second oldest person in the area. In a town behind the hill, there lives the oldest person in the region - a woman that's over 100 years old. Her secret? The place doesn't do birth certificates, and she took over the identity of her mother once the latter passed away.


Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

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

Search: