Disclaimer: These all are my opinion no need to offend
"What I cannot create, I do not understand"-Richard Feyman
Ok, let's create a web app , but where should I start?
Html CSS .... no
React .... no let's use
Next.js as frontend by downloading tons of file for my todo app from the servers of that triangle company (vercel*) .
Oh but in what language?
Let's use Typescript (I m using it Because its popular ,*ididntevenknowJSproperly)
Styling ..m Tailwind(more complicated)
Yes but what about backend?
Php ..u too old...
Use Node.js with express and prisma js as orm ...
(Complication*googol^googol)
Database ? Let's use something more complicated .... Postgres or Mongo..
Now it is done for my gigantic TodoApp ...
Or let's use T3 ... because of Theo?
This is the thing I hate about webdev . I hate this thing when people just spam their tech stack for everything . They uses only modern frameworks instead of enjoying the programming they just want to get job with MERN and MEAN , idk why they do not enjoy it and see programming as a MoneyMachine.
These 'software engineer' (as programmer<engineer according to them) just want a job .
Yes we should adapt new technologies .
But we should not depend for every project on them.
They are just tool or library , stop saying that a webdeveloper must know React , he/she can also learn Svelte or Astro or make his/her own.
In the beginning you can read the quote by Feyman.
I think we should also do the same .
Not only learning some library makes you a better developer .
To standout from junior devs we should learn how things works under the hood , how techs like React or Prisma is written .
A better developer is a problem solver not a tools user.
A good carpenter can work without his saw , nails , and hammer , he can make his own tools .
I think for all the developer, programming is not only webdev and appdev , we should also learn how these tools works.
It's not about reinventing the wheel , it's about learning about how that person invented the wheel and improving their mistakes .
But where to start ? I cant make my own NextJS.
To start, start making some small CLIes or some small library .
We can make new things or correct them by optimizing them or making its easier version.
You can also make your own opensource project .
Opensource is not only making prs and waiting for them to merge .
You can also make your project where others can make prs (uno reverse)
Yes your project is not going to replace big techs (React, Angular...)
But going to help you a lot.
Now you don't need internet connection to install any npm package . Now you can delete your complete workflow .. your ide your programming language.
Because now you dont need them because you can make your own.
It's very hard not many can do it.
Requires a lot of efforts and dedication to finally make your framework complete .
And this makes an ordinary developer a enlightened developer (who can now touch the grass )
.(full stop)
Top comments (28)
The point about not being a mere framework-user is not that you have to build the universe to bake an apple pie, like Carl Sagan put it, but to attain the level of understanding necessary to do so.
This can involve building your own framework, if you must, but it's not a requirement. It suffices to understand the concepts behind them to a certain extent.
As for enlightenment; many developers forget why they originally started their journey: it is to find the beauty in the code that brings its users joy to use it and make other developers reading it nod in acknowledgement.
taking off my hat
I have a 30+ years coding experience, from Z80 assembly to qwik. Somehow I am very lucky because I like to programming. I does not lost my interested. Of coure, I continouos facing the technology improving. Sometimes I floating on latest technology waves, sometimes I go down to the roots some specific question. Or even do completly different things like real gardening, live my life with my wife. I also spend my last year to get experiment with AI generated images and content.
I also created opensource library for react/TS but after I created I meet the qwik, and I get a question, it is worth to try react make better if other framewrok maybe work better. - this question currently unanswered. But I have time to find the answer.
My advice: happy journey!
The point is that the programmers are not in the center of the universe.
And there is no time to be an idealistic programmer. While you are staying to build your own tools, somebody will move forward with existing ones.
Other than that, not programmers controls the jobs market, but IT companies.
So, if they want React developers, they will hire React developers. If they need MERN stack, they will hire people knowing this stack, etc etc. So, if you are using something else, from their perspective you are outdated, and you won't be hired.
We are study that IT companies requires, and who knows better new stuff that it's in trend, that wins the competition and gets a job. It's that simple.
If programming is your hobby, you can do whatever you want at home.
But once it's your job, be ready to study things that are required by the market. Otherwise, you'll lose the competition against other candidates.
I think people are taking things way too far, it boils down to what you decide to focus on... we don't have the time or the capacity to learn everything, anyone should be able to learn the fundamentals then use whatever tools that you need to get the job done.
I like this point: "The point is that the programmers are not in the center of the universe."
I try to use the tools that are very well supported by the community, so it doesn't have to be the latest framework, but mainly that its a stable one and is on the up momentum
They are in the center of a html div :DDD
yes i understand your point it is for thoose who just say programming as a moneymachine , whether it is a job or a indie developer , atleast for a day everyone should enjoy the programming and make things which want to build
I kind of envy other fields like music or visual art sometimes. Most artists are primarily in it for the hobby, and just make it their job because, well, you gotta put food on the table.
I've said this before, but to me it feels like programming has a bit of a culture problem, where things are shifting more and more towards conversations about being productive little drones for capitalism, instead of just how much fun programming can be.
yes, this is exactly how I've felt!! I worked in the arts/nonprofit sector for a decade and while I definitely struggled with how tedious and inefficient things were, I could still appreciate that my work was having a tangible impact on the community.
now that I'm doing web dev full-time this has completely switched. I love my role and even the annoying things are still an opportunity to learn/grow -- this makes me feel like I'm still an artist. But then on the flip side, I don't know if my work is helping anyone outside of the organization... and it's hard to escape the feeling of fueling the capitalist machine.
I think my goal moving forward will be finding an org that I really align with, and maybe I'll get that feeling back
Yeah. Great point.
Especially with the whole "AI going to replace tech-workers thing", I think it's time to take a moment to reflect on why we came to work in this field in the first place imo.
I've honestly never felt too threatened by AI, personally. Yea at some point, some AI will be able to make high level decisions like how best to structure an application, keeping in mind what kind of requirements are likely to change with one particular client. Until then, my job is secure, and when that happens, it'll probably a few years after AI has already taken over for human CEOs.
Very interesting! I also agree that as a junior dev you should really start with the simplest solution. And don’t even try to use frameworks without first understanding JavaScript properly. Otherwise you may struggle a lot !
Why not be a Frameworker when a framework is needed?
The problem is you should not create wrong or misleading concepts and frameworks.
The point to create this is i have seen many different people who thinks webdev is just some frameworks and making projects using them only, they forget to understand the concept behind anything , making something usefull (or atleast usefull for you) helps you to understand anything from scratch and building software on your own ,trying new things and writing code from scratch . I think they developed some wrong mindset about coding , i think our mindset should be understanding and improving existing things .
Webdev is not just React or Next
Choose your framework to make your life easier
Otherwise go and create your own
You are right at Next.js's and other crazy frameworks' wrong claims, designs or goals, like Metoer, Koa, Nest.js.
But it is not the reason that programmers should be inventors.
Programmers should be required to correctly abstract the logic behind the products/businesses into they programs.
If the frameworks are correctly or helpfully created , just use them, otherwise write correct ones yourselves.
Although Next.js is bad in it's claim or propaganda, it is a correct extension in abstracting react development needs than some wrongs and bads like Metoer, Koa, Nest.js etc.
but programmers are inventors they create software , programmers can understand every thing by creating them , it was just my opinion that reinventing the wheel can help to you to make a car.
I understand your point
Thanks for reading
Choose your tools wisely:
People that recommend React, Angular or whatever, might have a different background than you have. They may have started 10 years ago, so maybe things are different today. And they often do not take into account, how much time it may take you to get their experience level. If you are much faster with Svelte, this might be the better solution for you.
I once had to select a database for some serverside data. But it is not enough to install a database and learn how to use it. You need a backend to edit the data, care for access rights and backups and so on. A big bunch of work.
Finally i came up with a very simple file based solution. I used some PHP to expose the filenames to my application and it works like a charm. Stupid. Simple. But perfect for my case.
I disagree, here is why:
Even for a simple application if you wish to make it live, you need a DB, to retain the user's Information and their respective to-dos. Applications like MongoDB or Postgres are there to make your life easier.
If you are very good with the native language and also know the features and benefits these frameworks bring then we should even consider re-inventing the wheel!
And that’s why i paused learning JS and went low level, as C++, i really want to learn CS concepts and basics to be efficient at whatever language employer chooses. Unfortunately, I understood this the hard way after wasting couple of years doing almost nothing but trying to learn web dev frameworks.
Well said, the programming journey is not that easy, but with much effort and consistency you can.