3 ms·
> how these people write so much code and make incredible stuff. They like writing code and making some small stuff for fun. So they write some code, see it ma
by yetihehe 2y ago
> how these people write so much code and make incredible stuff.
They like writing code and making some small stuff for fun. So they write some code, see it maybe has potential and keep writing code. If it has no potential, they drop it happy that they got some experience and start doing next thing. Repeat it with thousands of hobbyists and some of them are bound to have great success. But you need to like doing the tinkering. It's not like they wake up one day and say "let's write the biggest and most popular operating system in the world". They start with "I wrote a small interesting thing, but I don't think it will be big, maybe you will find it interesting"[1].
If you don't know how to start something big, start small on something interesting to you and maybe it will be useful and share with people. When you know how to start some small things, then go to bigger things.
> like how did he come up with Linux, Git.
Linux - he had some books and materials about how to write operating systems, he wanted to try it himself, he sit and coded what he feels would be right. Maybe he had some outline of "what OS needs to have" in his head or a small paper page on his desk.
Git - the same, but he had idea for better control version system after having experience with all the other systems. It's hard to invent entirely new systems that will actually be good, but it looks like you actually need to know all the other approaches and willing to try something new (invention).
> What was their first lines of code, how they planned, brainstormed it.
Typically you know what needs to be done, have some outline from knowing similar systems/programs/approaches and you fill in the blanks in the way you think will be better. If you don't know what will be better - find something that you know how to improve. If you don't know how to improve anything - improve yourself first, read and try reimplementing some tools yourself, so that you gain experience. You will have to throw out a lot of failed codebases, but it's normal for any self-improvement path in any endeavour, programming or crafts.
Also you should read FAQ[2] and add [Ask HN] to front of title.
[1] https://en.wikipedia.org/wiki/History_of_Linux#The_creation_of_Linux https://en.wikipedia.org/wiki/History_of_Linux#The_creation_...
[2] https://news.ycombinator.com/newsfaq.html https://news.ycombinator.com/newsfaq.html
- dauletkhan 2y agothank you!! i now have idea on what I want to work and how i will start with it. > Also you should read FAQ[2] and add [Ask HN] to front of title. understood.