如何自學程式設計?領略學程式3大方法+保持學習3大心態=成功學習程式的第一步!-AI4kids

How to teach yourself programming? Understanding 3 methods to learn programming + maintaining 3 learning mindsets = the first step to successfully learning programming! -AI4kids

In recent years, slash jobs or job changes have become very popular. Everyone yearns for the day of financial freedom. Many of them have started the journey of learning programming in order to keep up with technological trends and become engineers. Although they want to learn programming, some college or high school students are still confused. They don’t know how to choose a programming language, whether to learn by self-study, sign up for a programming tutorial, or purchase online courses. This time, I will take you to understand three popular programming languages, compare three different learning methods, and share with you the three key points of successful programming learning, so that everyone’s learning direction is clearer!

How to choose a programming language?

There are hundreds of programming languages. Before you start, you must decide which programming language you want to learn, but how do you choose from so many? This time, we have carefully selected the top three most popular programming languages ​​in the industry. After understanding the differences, advantages and disadvantages between these programming languages, I believe that everyone can find their first destined programming language!

C

20230627_content_009_post-img-221221_600x600

C language is one of the oldest and most versatile programming languages. It can be compiled (write programs) and process low-level memory in a very simple way, and it can even run the compiled language (make the program run) without any operating environment support. Its coding method and logic are the development basis of most programming languages ​​such as C++ and C#. In short, it is an ancestral-level programming language that can run smoothly in any environment! Next, let’s take a good look at the advantages and disadvantages of learning C language!

Advantages of learning to write C language

1. The language is concise and compact

The C language has only 32 keywords and 9 control statements. The writing format is very free and case-sensitive.

2. Flexible application, can work across platforms

Whether on Linux, Windows, MacOS and other platforms, C language can run smoothly!

3. Strong expressiveness, able to write various complex data structures

Compared with other programming languages, C language itself has many functions of low-level languages, as well as the functions of high-level languages, and can handle any simple to complex programming requirements.

4. High portability, regardless of environment

Because 86% of the C language code is shared, even if the C language is ported to a different environment, it hardly needs to be modified, or only needs slight adjustments to work properly. Other programming languages ​​are difficult to be as flexible and versatile as C language when the environment changes!

Disadvantages of learning to write C language

1. Although the language is concise, many abbreviations are not easy to get used to

The advantages of simplicity and compactness are both good and bad in the eyes of learners. The disadvantage is that there are many abbreviations, and it will take more practice to become familiar with different abbreviations.

2. The concept of indicators takes time to understand

After all, C language is an ancestral-level program code, and due to its universal nature, it takes a lot of time to build up the conceptual understanding of indicators.

3. Not easy to handle

It is not easy to debug when there is an error in the program, and it is also troublesome to process strings.

What kind of jobs can you do if you learn to write C language?

1. Firmware Engineer
2. Operating system development

C language is often used in operating system compilers and serves as a bridge between hardware and software. If you want to become a professional operating system developer, you must learn C language!

※Programming languages ​​can be used in many different professions. The above professions are for reference only.

Java

20230627_content_010_post-img-221221_600x600

"Cross-platform" is the original intention of Java's design and also its greatest feature. It has cross-platform, generic programming, and object-oriented features, and is widely used in enterprise-level Web application development and mobile application development.

Advantages of learning to write Java language

1. Cross-platform, high compatibility and portability

As its original design intention, it has high compatibility on different platforms and can be ported to different environments, and only needs slight rewriting to operate.

2. High security

The compiled class files cannot be read by others at will.

3. High market demand

Java is widely used in the industry. The Android operating system, Facebook, Google and other large technology companies' IoT applications are all developed using Java. Therefore, learning the Java programming language will be one of the plus points.

4. Good performance

Java is a compiled language and is faster than interpreted languages!

Disadvantages of learning to write Java

1. The compilation process is cumbersome

The OOP architecture of the Java language is designed very rigorously. Even writing a simple Hello World requires a lot of steps, unlike JS or Python, where you can easily write a print() function.

2. The running speed is relatively slow

When Java is compiled, it is not like C++ that is directly compiled into native machine code. Instead, Java needs to load class bytes from the Internet before it can be executed, so the operation speed is slow.

What kind of job can you do if you learn to write Java?

1. Develop Android APP
2. Build a website
3. Java Big Data Technology
4. IoT Applications
5. Game programming
6. Software Design
7. Desktop Application

※Programming languages ​​can be used in many different professions. The above professions are for reference only.

Python

20230627_content_010_post-img-221221_01_600x600

Python is a literal, object-oriented, powerful programming language that can automate tedious tasks, analyze data, use AI artificial intelligence and machine learning, and design your own games, etc. It is a very comprehensive programming language that can be applied in different fields.

Advantages of learning Python

1. Very intuitive and easy to write

Python's code is concise and easy to read, and the program can be executed without compilation, making it a very suitable programming language for beginners.

2. Powerful functions, with many libraries that can be easily used

Python has a very rich library with many packages that can be used. Python also has many modules that can be used. This shows that Python has very powerful functionality and is easier and more convenient to use than other programming languages.

3. Wide range of applications

Python can be applied to websites, applications, data analysis, machine learning, crawlers, etc., so there are many benefits to learning Python well. It can be applied in different fields in the future and will also provide more career options.

4. Can be used across platforms

Regardless of the system, Python does not need to be recompiled or converted and can run directly.

5. Free download

Python is a freely developed software that is available for free download.

Disadvantages of learning Python

1. It is a high-level language with slow execution speed

Because Python has a rich library, but too many libraries will slow down the execution speed, sacrificing performance for functionality. Although the difference is not noticeable in general program usage, there will be a noticeable difference in speed when processing large amounts of data analysis or information retrieval.

2. Pay attention to the rules: indentation

When writing Python, you must use four spaces to indent. If you do not follow the rules, errors will occur. This is an unchangeable principle that must be followed. Although it is troublesome, it will not be a problem as long as you develop the habit!

What kind of jobs can you do by learning Python?

1. Data Processing and Analysis
2. Artificial Intelligence
3. Website development, software development
4. Automated Testing
5. 3D Game Development
6. Network program design
7. Scientific Computing

※Programming languages ​​can be used in many different professions. The above professions are for reference only.

>>Extended reading: Beginner's Guide to Python: Get ahead of the competition in future jobs! Python self-study book resources are shared without reservation

Which is the best way to learn programming?

Self-study program

20230627_content_010_post-img-221221_02_600x600

Online resources

1. YouTube

Peng Peng's course ( https://www.youtube.com/channel/UCguZS-y7codLSt6vpkVdnKg )

Dongdong Programming ( https://www.youtube.com/@user-dq1fx8qs7m )

2. Facebook group recommendation

The benefit of following Facebook groups is that you can see different programming information by scrolling through FB every day, so that your life can be filled with programming. When choosing a community, you can pay attention to the community's article standards, post content, question interaction rate, and whether the respondents respect each other's views. Programming Donut , Taiwan Programming Language Reading Club [JAVA, C, C++, C#, VB...etc.] , and Python Taiwan are some good communities.

3. Programming social platform

Whether it is front-end or back-end engineers, Python, PHP and other communities, they all have different characteristics. For example: Front-End Developers Taiwan mainly discusses front-end web technology, web design, user interface, etc.; Backend Taiwan (Backend Tw) has a large amount of back-end related content and technical information, including system analysis, engineering, information security, maintenance and other information; Python Taiwan has a lot of practical information, and there are often domestic and foreign resource technology sharing and discussions; PHP Taiwan can obtain PHP open source projects, and can also share and communicate in the community. Different programming languages ​​have their own social media platforms, where you can get the latest information.

4. Online Tools

High school student program problem-solving system ( https://zerojudge.tw/ )

This online practice platform is very suitable as a training platform. It contains various C, CCP, JAVA, and PYTHON test questions for everyone to practice. It is a very suitable learning platform for novice programmers. After you finish writing the test questions and submit them, the system will start evaluating. You can understand your level from the evaluation results. On the platform, you can not only practice programming, but also communicate with each other in the discussion area.

It can be found that although there are many online learning resources, the content levels are uneven, and it will take time to collect and organize the resources. If you want to learn more efficiently, you can first combine online courses. As long as the programming foundation and logic are established, self-study in the future will also be smooth.

books

I suggest that you refer to the books used in school, or ask senior teachers for recommended learning books. Although there are abundant book resources, learning programming focuses on the establishment of logic. You need to have sufficient understanding to understand the operating logic concepts of the program. Otherwise, you will easily fall into a vortex of not being able to understand it from beginning to end. Usually, you need to find other ways to understand the content of the book, such as asking questions in the community or looking for YouTube videos to understand related concepts. However, understanding a program is not the same as being able to write it. You must continue to practice after reading and apply what you have learned to truly be able to write a program!

>>Recommended books: Learning AI is easy (I) ~ (VI)

Physical Programming Courses

You can learn programming languages ​​systematically by taking programming courses at school or going to cram schools. You can ask questions to the teacher immediately during class, but you still need to spend time attending cram schools, and your study time will be more limited. You will need to take notes frequently during the course, so it is not possible to learn programming languages ​​efficiently. It is recommended that those who want to lay a solid foundation must arrange practice time after class. Physical courses are recommended to students who are accustomed to studying according to a set schedule.

Is joining a camp or summer camp also a good choice?

20230627_content_010_post-img-221221_03_600x600

Participating in the camp with a group of like-minded classmates, the mutual communication and stimulation during the process can not only absorb more things that cannot be learned from textbooks, such as cultivating leadership skills, teamwork communication, results presentation, etc. These abilities can be used in the future. There are many programming summer camps or winter camps to choose from now. We recommend that you participate in the AI ​​camps held by AI4kids every year: AI Medical Special Practice Camp , AI Sports Special Practice Camp , and AI Music Special Practice Camp . Participating in the AI ​​camps can not only allow you to get in touch with AI artificial intelligence early, but also provide a more practical understanding of the application and future trends of programming!

Online Programming Courses

20230627_content_010_post-img-221221_04_600x600

In this era that values ​​efficiency, many people choose to buy online programming courses to learn. Not only can they save time and space constraints, but they can also choose suitable courses and teachers according to their own level. They can start from the basic introduction to Python programming language , Python programming language data science , and advance to deep learning-AI implementation , etc. There are many courses to choose from, and they can also learn more systematically. The advantage of online courses is that you can purchase them once and watch them online as many times as you want to deepen your learning impression. There will also be homework assignments for everyone to practice what they have learned. After the course, you can get a certificate to enrich your learning experience!

>>Extended reading: Understand what AI artificial intelligence is in three minutes? Development trends, applications and careers in various fields

Why is it most recommended to learn programming through online courses?

Online learning is not like traditional methods. You can choose and arrange your own courses in a more customized way. You don’t have to be limited by the fixed time of physical courses, nor do you have to spend extra time looking for resources. You can choose different teachers according to your needs. There are many series of courses from basic entry to advanced to choose from. You don’t have to worry about whether the teacher is available. You just need to arrange the class time yourself, study and practice at your own pace, lay a solid foundation, and accumulate your own programming skills!

Self-study Physical Courses Online Courses
resource Online resources, programming books Depends on the course Depends on the course
Selectivity
  • There are many online resources but they are messy and it takes time to find them.
  • The program books are complete and have a wide selection.
  • Selection depends on the course
  • Clear course direction
  • More choices
  • Clear course direction
Learning Architecture
  • Online self-study: loose and incomplete structure
  • Books: Complete structure, but requires textual understanding
Official Structure The structure depends on the instructor’s experience
Study time Flexible learning 24 hours a day Fixed course time Flexible course time
Memory Personal memory Limited, need to take notes immediately You can watch the course repeatedly to increase memory and logic building
Learning efficiency Varies - depends on individual learning characteristics Depends on the number of courses and the intensity of the course Less restrictive - flexible learning schedule
Learning outcomes If you want to learn programming more effectively, in addition to learning knowledge, actual operation is the beginning of accumulating strength!

What is the mindset you should have when learning programming?

20230627_content_010_post-img-221221_05_600x600

Be careful - understand the program's logic; ask questions if you have any!

The key to learning any programming language is to understand the program logic. As long as you have a clear understanding of the program logic, you will be able to write programs like a duck in water. There will definitely be a difficult period when you first get started to establish the logic, but as long as you find the right learning method, you can reduce the pain of learning new things. Understand it carefully during the learning process, and ask questions immediately when you encounter problems. For example, you can ask tutorial experts in the community, search for answers on Google, or ask friends who write programs around you. Every time you ask questions and understand, you are building your own program logic!

Patience - just learn first! A lot of practice, constant try and error

When learning to program, everyone must abandon the past learning model. The past learning mindset was limited to the idea that good grades could be achieved as long as one memorized the content. On the contrary, learning programming requires constant practice and debugging. Only by writing the program code by yourself can you review your program logic and develop debugging skills. Therefore, patience plays a very important role in learning programming. If you encounter advanced problems, you will need advanced knowledge to solve them. At this time, novice can collect and read more "advanced knowledge", or even observe the practices of predecessors, imitate first, and then understand. This will give you a better chance of breaking through the bottleneck and moving to a higher level. All great engineers must have developed their programming competitiveness through continuous programming and debugging!

Confidence - When facing the "desert of despair" (learning bottleneck) stage, have the perseverance to break through it!

On the road of learning programming, engineers will definitely go through this desert of despair - the learning bottleneck. At this stage, they must cultivate their confidence and perseverance. Every breakthrough in the bottleneck is the beginning of improving programming skills! Learn to turn every difficulty and failure into a resource for success like Alan Turing did. "That's not failure. I just found that those methods can't let me debug correctly."

Summarize

20230627_content_010_post-img-221221_06_600x600

After understanding, everyone must have a clearer direction for learning programming. Whether it is self-study, physical courses or online programming courses, as long as you find the right method and cultivate the right mindset, you can learn more smoothly. In the process of continuous learning and practice, let your programming ability grow stronger!

Want to learn more? Click the button to try the course for free!

More Related Articles

Back to blog