I am steadily trying to improve myself as person who is learning Java as a first programming language. I'm studying about problems and algorithms by practising problems on TopCoder alongside reading articles and watching videos on the topic.
Though I was wondering would it be more beneficial for me to learn Design patterns alongside or should I save this for more advanced studies.
Also is the subject of Design patterns similar to algorithms and data structures in that the principles follow in different programming languages, or do different programming languages have radically different takes on the topic.