Conducting Methods for Optimally Handling Multiple Programming Languages and Making the Cognitive Functions of the Computer Brain Known as AI into Human Self-Help Tools


Understanding programming languages is similar to the act of learning a new language to travel to a foreign land.
Many people have likely experienced the frustration of being unable to communicate as they wish due to language barriers when traveling from Japan to English-speaking countries.
The existence known as a computer is also a resident of a different cultural sphere with its own unique language system.
For us humans to access that world, we need to master a dedicated language.
Programming languages are precisely that bridge, serving as tools to translate human thought into a format that computers can understand.
If we compare the Python language to cooking, it is like a versatile kitchen appliance.
Like a food processor or a blender, it has the convenience of being able to handle various ingredients with the push of a button.
It is an excellent tool that even beginners can handle relatively easily, capable of performing tasks like 'chopping vegetables, making soup, and mixing sauces' all with one machine.
However, when a professional chef prepares authentic French or Japanese cuisine, specialized knives and pots are required.
For advanced processing or special purposes, specialized languages are required.
Inside Python, a high-performance engine called C++ is actually running, and Python acts like its control panel.
If we compare it to an automobile, Python is an easy-to-drive automatic car.
Anyone can drive it with intuitive operations like the accelerator, brake, and steering wheel, but behind the scenes, complex transmission and engine control systems are at work.
On the other hand, the languages I will introduce from here on are like specialized vehicles, each with different characteristics.
The Rust language is like a luxury sports car fully equipped with the latest safety features.
The programming language Rust comes standard with all kinds of safety features, such as 'automatic braking systems, lane departure prevention devices, and collision avoidance support systems'.
If the driver is about to make a mistake, the system warns them in advance to prevent accidents before they happen.
In the world of programming, in the most dangerous area known as memory management, Rust's compiler points out mistakes before the developer makes them.
Compilation is the task of converting the source code of a programming language written by a human into a format that a computer can execute (object code).
Software that performs compilation tasks is called a compiler.
When it comes to compilation, many people, not just in Japan but around the world, associate it with "Puyo Puyo," the falling-block puzzle game that took the world by storm about 30 years ago.
Given that the word "Compile" brings to mind games and gamification, I felt it was a great waste when Compile, the company that created "Puyo Puyo" and "Madou Monogatari," went bankrupt.
It is ironic that game companies that created dream theme parks, like Puyo Puyo Land or SNK Land, eventually wake up from that dream into reality.
The word "compile" may sound like building a brain strategy for a falling-block game, but it teaches us that the languages understood by the human brain and the computer brain are different.
In traditional C++, problems such as memory leaks and buffer overflows were prone to occur.
In terms of driving a car, C++ was like driving on a highway with poor brakes.
Rust eliminates these dangers from the language design stage, achieving both safety and performance.
However, just as driving a high-end sports car requires appropriate skill and knowledge, the learning curve for Rust is steep.
It takes time to understand unique concepts like ownership systems and lifetimes, but once mastered, you can achieve a level of safety and speed unattainable in any other language.
The language Go is close to the image of a sturdy, practical commercial truck created by Google.
It may not be flashy, but it is extremely excellent at its primary purpose of reliably transporting cargo to its destination.
Since Go was designed by Google, a global logistics company, it is specialized for efficiently processing large amounts of data and requests.
The programming language Go incorporates the concept of concurrency into the core of the language in the form of goroutines.
This means that a program can execute multiple tasks in parallel, just like multiple trucks carrying different cargo at the same time.
Go's true value is demonstrated in applications that must handle large volumes of requests at all times, such as web servers and microservices.
Its simple and readable syntax is a major advantage in team development.
Much like a standard truck that anyone can drive, new members can join a project and immediately understand and contribute to the code.
The design philosophy of providing only the necessary and sufficient functions in a refined form, rather than packing in complex features, leads to high long-term maintainability.
The language Julia can be compared to cutting-edge analytical equipment in a laboratory.
It is a specialized piece of equipment that demonstrates phenomenal performance in specific fields such as scientific computing and numerical analysis.
Scientists were forced to take a two-stage approach, using Python as a prototype model and C++ or Fortran for the actual calculations.
To use a cooking analogy, this is like using different tools for the recipe-planning stage and the actual mass-cooking stage.
Julia integrates these two worlds, achieving both ease of writing and execution speed simultaneously.
It allows for the description of mathematically complex processes, such as matrix calculations and numerical solutions to differential equations, using intuitive notation while executing at speeds comparable to compiled languages.
This is revolutionary for researchers, allowing them to smoothly progress from ideas to implementation and large-scale computation.
However, Julia is a relatively new language, and its ecosystem maturity does not yet reach that of Python.
Just as specialized analytical equipment is only used in specific laboratories, Julia's adoption is also centered in specific domains like scientific computing and data science.
The language known as C++ is a set of traditional hand tools used by craftsmen.
Mastering basic tools like 'chisels, planes, and saws' requires many years of training, but in the hands of a skilled craftsman, they can create artistic works.
It has the longest history among programming languages and possesses the versatility to cover every layer, from the lowest-level hardware control to the highest level of abstraction.
C++ remains active in areas where performance is a lifeline, such as 'game engines, operating systems, embedded systems, and financial trading systems'.
The programming language C++ requires developers to bear a great deal of responsibility in exchange for its flexibility.
Pitfalls such as 'memory management, pointer manipulation, and undefined behavior' exist everywhere, and a single mistake can lead to system-wide crashes or security vulnerabilities.
One must write code with constant tension and caution, much like handling a sharp blade.
Modern C++ continues to evolve, and since 'C++11', features such as smart pointers and lambda expressions have been added to make it safer and easier to write.
This is like adding electric assist functions to traditional hand tools, improving usability while maintaining the essence of craftsmanship.
If we compare these languages to musical instruments, their respective characteristics become even clearer.
Python is a piano; even a beginner can produce a sound by pressing a key, but it possesses profound expressive power if one strives to master it.
Rust is a classical guitar; it requires precise fingering and posture, but if mastered, it can play a delicate and beautiful tone.
Go is the bass guitar, providing the rhythm and groove that supports the entire band rather than flashy solos.
Julia is the synthesizer, an experimental instrument that pursues the possibilities of electronically generated sound.
C++ is a versatile instrument capable of conducting an entire orchestra, able to reproduce every timbre from strings to percussion, but it takes a long time to master.
It is said that in an era where we treat the cognitive functions of the computer brain known as AI as an extended assistive tool, the human brain must become the conductor.
Google's programming language, Go, might be fitting for a conductor who has long been the king of search engines since the IT revolution.
The arrival of an era where major global corporations are intensifying the AI development race is further changing the roles of these programming languages.
In the past, humans had to write all code by hand, but now AI functions as a translator and assistant.
When traveling abroad, people used to carry thick dictionaries and communicate while desperately looking up words.
This is similar to the change where smartphone translation apps now interpret conversations instantly.
It may not be a perfect translation, but it is sufficient for basic communication, and the language barrier has been significantly lowered.
In programming as well, the ability of AI to convert natural language instructions into code or translate existing code into another language is improving rapidly.
The choice of programming language is shifting from the constraint of 'which language can I use' to the strategic judgment of 'which language is optimal'.
The human brain has found it easier to travel to many computer brain cognitive functions.
However, even with AI support, a basic understanding of programming languages remains important.
Although you can converse in a foreign language using a translation app, understanding the cultural background and subtle nuances of that language allows for deeper communication.
The same is true for programming; if you understand the design philosophy and areas of expertise of each language, you can utilize AI's cognitive functions more effectively.
From the perspective of higher brain dysfunction, the relationship between programming languages and AI serves as an assistive tool to support cognitive functions.
Just as a patient with aphasia uses a communication board or voice output device to communicate, people who are not good at programming can interact with computers through the assistive tool of AI.
This is not just an improvement in convenience, but a democratization of accessibility to technology.
In the past, only those with the special skill of programming could maximize the power of computers, but now the possibility is open for everyone to realize their own ideas.
In the field of robotics, which combines electronics and programming, knowledge of multiple languages becomes even more important.
C++ might be suitable for data acquisition from sensors due to its strength in embedded systems, while Python might be convenient for image recognition using machine learning.
The safety of Rust might be leveraged for real-time motor control processing, while Go might be optimal for server-side processing to coordinate multiple robots.
Robotics technology and electronics, which give a body to the computer brain, are also useful for computer training for higher brain dysfunction.
By combining these in the right places, more advanced and reliable systems can be built.
The perspective that 'physical functions, mental functions, and cognitive functions' influence each other is highly suggestive when considering the relationship between humans and technology.
By mastering cognitive tools such as programming languages, one becomes able to utilize the mental assistant known as AI.
That leads to physical expansion, which is what robotics is.
This three-layer structure holds the potential to multidimensionally expand human capabilities.
Bicycles expanded human mobility, automobiles further broadened that range, and airplanes transcended spatial constraints.
In this way, programming languages and AI expand the creative and problem-solving capabilities of the human brain.
AI will not take away human jobs, but rather become an assistive tool that expands the possibilities of the human brain.
To coexist with the computer brain known as AI as an assistive tool that expands the possibilities of the human brain, the human brain must become the conductor of the AI.
Just as smartphones dramatically changed access to information, interaction with AI is fundamentally changing how knowledge is utilized.
What is important is the flexibility to select the optimal tool according to the purpose, without being fixated on a specific language.
Just as 'a carpenter uses a hammer to drive a nail and a screwdriver to tighten a screw,' programmers also use different languages depending on the nature of the problem they want to solve.
The argument that the era of Python's dominance is coming to an end does not mean that the value of Python is being lost.
Rather, it is a natural evolutionary process where specialization progresses in a mature industry.
It is a common occurrence in technological development for tools that were once universal to differentiate into specialized tools, each with its own strengths.
Ultimately, what is truly required in the coming era is not the memorization of language grammar.
It is the ability to structure problems and select appropriate tools.
And it is about exercising human-unique creativity and judgment while collaborating with the powerful translator known as AI.
Programming languages are a means, not an end.
The essence lies in the vision of enriching human life and solving societal challenges that lie beyond them.
In the modern programming world, Python has long been considered the dominant language in the fields of AI and data analysis.
Conversations between the human brain and the computer brain have been conducted through programming languages.
Not being able to understand programming languages is similar to a Japanese person being unable to converse while traveling abroad.
Only after being able to handle programming languages can one set out on a journey into the cognitive world of the computer brain.
Alternatively, it is similar to the state of language impairment and language comprehension impairment that occurs with aphasia caused by higher brain dysfunction.
If we cannot speak or understand language, we become unable to communicate.
Once you are able to travel to the cognitive world, you can create various creative prototypes that are different from sake.
Programming languages are fundamentally based in the UK, and many Japanese people who are not good at English likely have a sense of aversion toward them.
Due to the recent generative AI development race, the nature of programming languages is changing.
In an era where low-code and no-code are becoming mainstream, the computer brain known as AI is playing an active role as a translator for programming languages.
It has become an era where the computer brain agent known as AI supports communication with the computer brain.
In the modern era, where major global companies are competing in AI development with updates occurring almost every month, the way of handling programming languages is also changing.
A debate is erupting that Python's status is facing a major turning point.
This discussion is not a pessimistic view that the era of Python is coming to a complete end.
Rather, it should be viewed as an inevitable shift in roles that accompanies the evolution of technology and the maturation of the market.
There is no doubt that for the past decade, Python has been a central presence in a wide range of fields such as machine learning and data analysis.
However, there are three decisive reasons behind the changing tides of the times.
The first reason is the limitation of performance.
Because Python is an interpreted language, it inherently suffers from the weakness of slow execution speed.
In recent years, AI models have grown larger year by year, and the amount of data to be processed has also increased.
For this reason, Python's "slowness" has begun to become a fatal weakness.
It is possible to overcome Python's slowness by supplementing it with hardware such as GPUs.
However, the structural fact remains that behind Python, it is low-level languages like C++ that are actually handling the heavy processing.
Python is merely a "window" acting as a user interface, playing nothing more than the role of a "moderator" in the world of AI.
The performance foundation for Python is entrusted to C++.
The second reason is the dramatic diversification of the ecosystem.
AI development was once a domain monopolized by Python, but the situation has changed completely today.
New languages such as "Rust, Go, and Julia" have emerged, each enriching their AI-related libraries.
Rust is attracting attention for its high safety and execution speed, while Go is well-suited for parallel processing, making it compatible with the demands of AI that handles large amounts of computation simultaneously.
Among intermediate and advanced AI engineers, the practice is to first use Python to quickly build prototypes and models.
A trend of "division of labor" has become prominent, where after building a prototype in Python, high-speed performance in the production environment is realized using Rust.
This does not mean that Python's work is being taken away, but rather that its role is specializing into "rapid prototyping" and "data exploration."
It is similar to how the human brain handles the computer brain known as AI, understanding it as an assistive tool with extended functions rather than AI taking away human jobs. In production environments and situations where performance is required, it means that "the baton has been passed to other languages that operate faster and more safely."
The third and most innovative reason is the emergence of generative AI.
In an era where AI generates code itself, there is a growing demand for languages that are easier for AI to optimize while considering the entire system, rather than languages that are simply easier for humans to write.
We have entered an era where writing in a programming language that is easy for the computer brain known as AI to understand takes precedence over creating a programming language that is easy for the human brain to perceive.
Interestingly, while the computer brain known as AI can easily understand the grammatical structure of Python, there is a dilemma in that the execution cost of code written in Python is high.
In cutting-edge AI development, there is an increasing number of cases where AI itself generates code optimized in high-execution-efficiency languages such as Rust and C++.
This means that in an era where the computer brain known as AI develops AI, humans are adapting to the preferences of AI.
In other words, it indicates a structural shift where languages with excellent execution efficiency and low-level control are gaining the advantage.
The realm of the computer brain, including personal computers, smartphones, the internet, and social media, has been developed with the human brain at the center.
We are now in an era where prioritizing what is easy for the cognitive functions of the computer brain known as AI to understand over the cognitive functions of the human brain is becoming the norm.
At the forefront of this is Rust, and C++, which has long been considered 'old,' is being re-evaluated.
C++ continues to be the 'guardian behind the scenes' that supports the core of AI infrastructure, such as GPU drivers and inference servers.
What these changes mean is that the evolution of programming languages has shifted from an era of 'one dominant language' to an 'era of multi-language coexistence.'
An era of division of labor has arrived where, rather than one specific language dominating everything, the leading role is chosen according to the purpose.
Python is often used for data analysis, while Go is frequently used for server-side and high-concurrency processing.
Functional specialization has become the standard, such as using Rust for production environments and infrastructure development where safety is required, and using C++ for low-level control and AI chip control.
Even so, Python plays a significant role in handling programming languages.
In an era where the handling of programming languages has matured, the value of learning Python for those just starting their studies remains extremely high.
This is because Python is the most excellent 'gateway' for understanding the basics of AI and data analysis, and its learning cost is low.
However, what is important is to have the perspective of what to choose after Python.
Rust is gaining attention in AI infrastructure development due to its safe memory management, and Go demonstrates its strengths in server development with the backing of Google.
By learning these languages, it becomes possible to break through performance and safety limitations that cannot be solved by Python alone.
What should be considered more deeply is the change in the relationship between programmers and AI.
The language barrier is rapidly lowering as generative AI tools like ChatGPT and Gemini easily generate and translate sample code between different languages.
Rather than being proficient in a specific language, the idea of "understanding AI deeply and, while leveraging its power, strategically using multiple languages will create future competitive advantages."
In the past, "people who knew Python" were strong, but from now on, it will be an era where "people who understand the capabilities of AI and can use languages as tools" will win.
The expression that Python's "reign is over" may sound sentimental.
In reality, it is nothing more than a positive message that Python has played its historical role in the dawn of the AI era and has evolved into the next stage, the "era of division of labor and diversity."
Languages as tools will never stop evolving, but the human passion and purpose of "what to create" using them is the essence that remains unchanged in any era.
In the era of multi-language coexistence, the true winners will be "challengers who are not bound by languages, flexibly accept change, and continue to choose the optimal tools."
An era is coming where the computer brain known as AI acts as a translation function for programming languages, and the cognitive functions of the human brain and AI become like a rainbow bridge.
The technology to optimally handle multiple programming languages helps in using the computer brain cognitive functions of AI like an assistive tool.
Furthermore, the technology to optimally handle multiple programming languages makes it easier to give the computer cognitive functions of AI a robotic body through electronic crafts.
"Physical functions, mental functions, and cognitive functions" influence each other and change the way we humans perform daily living activities and participate in society.
AI is not magic, but like "bicycles, cars, airplanes, personal computers, and smartphones," it has become an essential device for our daily lives and social activities.
The optimal utilization of multiple programming languages and coexistence with AI have the potential to become assistive tools that help patients with higher brain dysfunction in their daily living activities and social participation.
