If you like DNray Forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...

 

Before diving into PHP: Essential skills to learn

Started by cassie_camay, Sep 11, 2023, 06:20 AM

Previous topic - Next topic

cassie_camayTopic starter

Hello everyone. I currently teach and practice web design, but I have aspirations to become a backend developer. However, I've come across advice on the internet suggesting that starting with PHP may not be the best choice for learning programming. So, my question is, which programming language should I start with instead?

I am eager to become a proficient programmer. I've been recommended books on algorithms, but when I attempt to read them, my mind becomes overwhelmed rather than gaining clarity.
Currently, I am also studying English, and if the recommended books are in English (although I prefer ones that I can understand without relying on a dictionary for every word), I believe it can be a positive aspect of my learning journey.

I am anticipating your assistance because the tips from various forums and articles  have left me feeling confused and disorganized.
  •  


liyaalena

It's great to hear that you have aspirations to become a proficient programmer. The choice of programming language to start with can vary depending on your goals and interests. While PHP is widely used for backend web development, there are several other languages you can consider starting with.

Python is often recommended as a beginner-friendly language due to its simplicity and readability. It has a vast community and is widely used in various domains, including web development, data analysis, and artificial intelligence. You may find it easier to understand and learn compared to other languages.

Another option to consider is JavaScript. As a web designer, you may already have some familiarity with JavaScript, but it also has a server-side runtime called Node.js. Learning JavaScript and Node.js can be beneficial for full-stack web development.

Ultimately, the choice of programming language depends on your interests and the type of projects you want to work on. It's important to pick a language that excites you and aligns with your long-term goals. Don't worry about feeling overwhelmed by algorithms books; they can be challenging for beginners. Focus on learning the basic syntax and concepts of a language first, and gradually introduce more advanced topics like algorithms and data structures when you feel ready.

There are many online resources available, such as tutorials, video courses, and interactive coding platforms, that can help you learn programming at your own pace. Find resources that explain concepts clearly and provide practical examples that you can relate to. Additionally, joining programming communities or forums can provide valuable support and guidance along your learning journey.

Here are a few more programming languages you can consider starting with:

1. Java: Java is a widely-used language with a large ecosystem and is known for its platform independence. It's used for a wide range of applications, including enterprise software, Android app development, and more.

2. C#: C# is a popular language developed by Microsoft and is primarily used for Windows applications and game development using the Unity engine. It has a syntax similar to Java, so knowledge of one can easily be transferred to the other.

3. Ruby: Ruby is a beginner-friendly language known for its elegant syntax and focus on readability. It is used in web development frameworks like Ruby on Rails, making it a good choice if you're interested in building web applications.

4. Go: Go (or Golang) is a relatively newer language that emphasizes simplicity, performance, and concurrency. It was created by Google and is commonly used for building scalable and efficient systems.

5. Swift: Swift is Apple's official language for iOS and macOS app development. If you're interested in building mobile applications specifically for Apple platforms, learning Swift would be a great choice.

few more programming languages you can consider starting with:

1. Python: Python is a versatile and beginner-friendly language that is widely used in various domains, including web development, data analysis, scientific computing, and artificial intelligence. It has a simple syntax, which makes it easy to read and understand.

2. JavaScript: JavaScript is the language of the web and is essential for frontend web development. With the rise of Node.js, it is now also used for backend development. Learning JavaScript will allow you to build interactive websites and web applications.

3. C/C++: C and C++ are powerful languages that are often used in systems programming, embedded systems, and game development. They provide low-level control and efficiency, making them suitable choices for performance-critical applications.

4. Rust: Rust is a modern systems programming language that focuses on safety, performance, and concurrency. It prevents common programming errors like null pointer exceptions and data races, making it a robust choice for building reliable and secure software.

5. Kotlin: Kotlin is a statically-typed language developed by JetBrains, and it has gained popularity as an alternative language for Android app development. It is concise, expressive, and interoperable with Java.


There are numerous online resources available for learning programming. Here are some popular ones:

1. Codecademy: Codecademy offers interactive coding courses covering a wide range of programming languages, including Python, JavaScript, HTML/CSS, and more. They provide a hands-on learning experience with exercises and projects.

2. Coursera: Coursera offers online courses from top universities and institutions worldwide. They have a variety of programming courses, often with assignments and quizzes, so you can learn at your own pace.

3. Udemy: Udemy is a platform with a vast library of programming courses. You can find both beginner-friendly and advanced courses on a wide range of topics, including web development, data science, and mobile app development.

4. FreeCodeCamp: FreeCodeCamp is an open-source platform that offers a comprehensive curriculum for learning web development. It includes video lessons, coding challenges, and the opportunity to work on real-world projects.

5. YouTube: YouTube has a plethora of programming tutorials and video courses. Many programming channels provide quality content, such as Traversy Media, The Coding Train, and Sentdex, covering various programming languages and concepts.

6. Stack Overflow: While not a traditional tutorial platform, Stack Overflow is an invaluable resource for programmers. It's a community-driven platform where you can ask questions, find answers, and learn from experienced developers.

  •  

microsoftcygnet

Language serves as a tool for programmers, so it is necessary to consider the bigger picture rather than focusing on any specific programming language.
PHP can be considered as an initial choice for development because of its low barrier to entry, but it is important to critically evaluate the available learning resources.
In addition to learning the syntax and libraries of a particular language, it is essential to understand algorithms and implement them, follow general programming practices recommended by experts like McConnell and Martin, and adopt OOP practices and templates such as SOLID and DI.
For those working with web development, it is beneficial to have at least a basic understanding of the underlying technologies such as OSI model and protocols.
It is also important to have a grasp of general computer operation principles and knowledge about hardware.
Lastly, familiarity with databases is crucial in the field of programming.

This is not an exhaustive list, but provides a general overview on the subject.
  •  

BDSeoFighter

PHP is an excellent language for newcomers to programming, and it provides a solid foundation for building websites. Upon mastering PHP, you can explore other languages such as Java, C#, or C++ to expand your skills and discover new possibilities.
It's fascinating to see how one's journey in programming can evolve from starting with Basic to working with more advanced languages like C++. Developing content management systems (CMS) for websites in C++ is a rewarding and challenging endeavor that demonstrates the growth and versatility of a programmer. Keep learning and exploring, and who knows where your programming journey will take you next!
  •  


If you like DNray forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...