Why do I need to know a programming language?
Because you will develop your software using a programming language. A programming language is a language that both you and a computer will understand. It's a tool for you to express what you want a computer to do. It's a tool for you to write instructions of your computer programs. Without knowledge of a programming language, you cannot develop any software.
As many as possible. However, at this stage, you should learn about structure of a computer program and a procedure language (e.g. C or C++) first.
What should I do now?
Please read this Stephen Prata (2011). C Primer Plus. Pearson book.
Alternatively, you can read from Chapter 1 to Chapter 9 of this Stephen Prata (2012). C++ Primer Plus. Pearson book. Alternatively, you can read from Chapter 1 to Chapter 9 of this John M. Zelle (2017). Python Programming: An Introduction to Computer Science. Franklin, Beedle & Associates book. Alternatively, you can read from Chapter 1 to Chapter 11 of this Charles Severance (2013). Python for Informatics: Exploring Information book. Alternatively, you can read from Chapter 1 to Chapter 11 of this Chris Pine (2013). Learn to Program: The Facets of Ruby Series. The Pragmatic Bookshelf book.
After that please read this Harold Abelson and Gerald Jay Sussman (1996). Structure and Interpretation of Computer Programs. The MIT Press book to get vocabularies and in-depth knowledge about programming, especially the relationship between mathematics and programming, and ideas of functional programming and logic programming. Alternatively please read these Course Notes.
After finishing the books please click Topic 3 - Introduction to Algorithms and Data Structures to continue.