Houssam El wrote:I would suggest to your friend starts taking computer science courses, here is a roadmap,
Computer Science Roadmap
It gives a concise explanation about the basis of the programming language
Paul Clapham wrote:
Sequential processing, loops, arrays, basic arithmetic calculations, string processing.
Campbell Ritchie wrote:
Callling methods. Designing classes (in an OO language). Flow control, which includes selection as well as loops. In Java®, the simpler features of the streams API.
Junilu Lacar wrote:
I would tell your friend there's a huge chasm between learning a first programming language and being able to develop a web application. That's almost like saying "My friend wants learn how to drive a car and then he wants to be a race car driver." There are many things he's going to need to learn to bridge that gap.
One thing that has helped me over the years has been to always learn the principles behind techniques. Principles around cohesion and coupling, complexity and simplicity, decomposition, organization and modularization, and many others. If you understand principles, then it's easier to learn and apply practices and techniques and quickly adapt to the constantly landscape of technologies in our field.
Bottom line, yes, learn the techniques and technologies, but also study principles. Principles are at the foundation of learning. Any learning not grounded on a solid understanding of basic principles is flimsy and brittle at best, and downright dangerous at worst
Paul Clapham wrote:
Campbell Ritchie wrote:
The beginner will be almost entirely focused on the box "General Programming Skills". Such skills as they learn will likely apply to many other languages besides Java, and conversely much of the Java code which is written by non-beginners these days doesn't use the skills learned in that box.
Houssam El wrote:
Hello,
Java is one of the most powerful languages and is widely used in all fields i.e Desktop app, Web app, and Mobile app, furthermore, he would have the ability to read everything related to the Java language, the progress of learning never ends, finally, I would recommend books to learn from it, personally, I've studied Java from books although they cover many topics unlike videos, the author skims much information that will lead you to frustrating, and it might lead to leaving the path, here is a brief overview about what he waiting for him
The 2021 Programmer RoadMap
Finally, I wish him the best
Campbell Ritchie wrote:
Yes, HFJ is probably the best beginner's book around. Effective Java is very good, but parts of it are far beyond the beginner's level.
Campbell Ritchie wrote:
Why has your friend decided so definitely what he is going to do. What has he done before? At the beginner's stage he should remember that computer sciences is a very large field and he might be happier doing something completely different.
Pete Letkeman wrote:For this path I suggest that you try directly for the Java OCA 808 exam and then the Java OCP 809 exam.
I suggest that you take a few moments and read some of the stories found here https://coderanch.com/wiki/659980/Ocajp-Wall-Fame.
By over over these stories you can see how others prepared and what material they used.
This could save you time, money and frustration.
chris webster wrote:Hadoop is all about distributing your data and your processing across multiple cheap machines. The data is replicated so there are e.g. 3 copies of each block of data, with diifferent copies on different machines. If you have more nodes than replicas, e.g. 3 replicas across 6 nodes, then on average each node only contains half the total original data volume. Hadoop knows where your data is replicated, so it can decide to process different subsets of your data on different nodes at the same time. This is how Hadoop allows you to exploit the power of distributed processing.
If you only have two nodes, and your replication factor is 2 or more, then each node contains all your data anyway, so Hadoop cannot decide how to break up the processing in this way. And if you only have one node, then nothing is distributed at all.