In the old ages when there was DOS then Windows 3, Sometimes I get lucky and find the book I need or someone coming from abroad bring the book I need with him. But most of the time I had to learn from help files.
Then books become easier to be found (Thanks to Amazon.com) but it took me very long months to learn a new programming language. Then later video tutorials become the best way to learn faster than books but today even jumping on new technology from video tutorials will consume alot of time in age that has continues very fast changes.
So I wanted to ask is there really a better way to learn faster ?
I don’t know about faster, but in my experience one of the most effective ways to learn programming is to actually build something useful, i.e. actively engage in coding, working on projects, and solving real problems.
The reason this method is effective is that it immerses you in the practical application of the technology, helping you to understand not just how to use it, but why you use it in certain ways. This approach solidifies your understanding and gives you hands-on experience. As you build, you’ll naturally encounter challenges and gaps in your knowledge. You’ll look up solutions, apply them, and in doing so, you’ll learn.
Some suggestions:
Pick a small project, something you’re interested in, that’s manageable for your current skill level.
Break it down into smaller tasks, each representing a functionality or a feature of your project.
Start working on these tasks one by one. If you encounter a problem, research the solution. This is where those tutorials, books, or online resources (such as this forum) come into play.
The cycle of facing a challenge, researching solutions, applying what you’ve learned, and seeing the results is a powerful way to learn. And the best part is that at the end of it, you’ll have a completed project to showcase your skills.
We also have this over on the main site, that might be interesting for you:
This dives into the methodology of learning and might offer you a couple of pointers in how to pick up speed.
I can relate with you. Since I am married and with two kids it’s hard for me to come up with the fast changing world of technology and programming. As we all know learning new programming and language alway takes time. Be clear what kind of skills you want to develop, this will help you to be more focused. Don’t be in a hurry, always remember that programming is a lifetime journey. You have to have patience while starting from fundamentals, give it proper time and just reading coding, syntax and to remember all the information is not enough. This is a tip i alway apply, that whatever coding and information you learn, make sure you write them once by hand. Practise more and more by playing codes, exercising codes and participating in coding challenges. And most importantly don’t be alone in your learning. Make sure you have a learning partner with you. This will help you to do your learning 10 times faster and better.
And not always rewarding, many health problems from sitting all day in front of two monitors.
I cant find one. Also many times I need to solve real life problems that might take days, weeks, months !! so it is hard to maintain consistency but I am trying.
I guess everyone is different, but I’m quite happy to learn alone. Ather people can be a distraction, sometimes even a drag. I learned far more by “self educating” both in my workplace and at home, than I ever did in classrooms at school and college.
Though it is good to have the support of a community like this when you get stuck.
What Imean is, lara puts emphasis on the importance of having a learning partner, but I don’t think it’s necessary, unless that suits your style of learning.
Yeah you are right it’s not always rewarding, which is frustrating. It can be challenging but with such communities and resources that can help to solve your problems and to be connected with like minded people. And it always rewards your success when your codes are working and solving the problems.
I appreciate and respect your opinion, Sam! I agree that finding a compatible partner is crucial for effective learning. Otherwise, you might be better off alone. But if you do find one, having a partner can offer many benefits.
I develop software for over 40 years now and I always learned something new. Clearly started with Basic, walked over to Assembler as you come up to Basics border very fast, then Pascal, C, C++, Java and now ended up in the hourly changing world of web development. Inbetween I always tasted some underdog things like, Fortran, Lisp, Rust etc…
I always loved to learn new things. The only part when it comes to frustration is when using frameworks or libraries and you need to individualize something and do not use it as it comes out of the box. This is the point where I normally start to write the needed methods by my own and do not spend hours or days to find out how to complete the task with the library.
This is why I would recommend everyone to start learning with as less libraries and frameworks as possible and write as much code on your own as possible. Even if there are many libraries and it looks so easy to just use them, at the end you learned nothing because you have now no idea how your application works as others wrote the code four you,
That’s really cool you have worked with so many languages. I am really amazed to know about your experiences. I must say you have great mindset for learning new things. I am sure by sharing your words you inspired learners.
I hate framework it keep me inside a circle for each new version I need to learn the new changes and of course there are bugs from porting to recent versions + framework bugs + my own bugs
While I agree with the spirit of what Thallius says, frameworks can also save you a ton of work if you know how to use them. They are battle tested (being used in thousands and thousands of production apps) and will have your back with a bunch of edge cases you likely won’t have though of. Server-side frameworks (like Rails, for example) also come with very many secure defaults and will help you write much more secure code.
Whether you should use them or not depends on what you are building and your level of competency as a programmer.