Produced by Big Data Digest
Compiled by: Wang Yuanyuan, Ivy, Xiao Qi, Aileen
Python is becoming a star in the field of computing, not only because of its easy language design and various convenient libraries but also due to the marketing hype surrounding various training courses.
In these popular articles, it seems that learning Python can solve all computer problems. Today’s article may provide a different perspective on such popular programming tools and courses.
The author of this article, Bhavya Kashyap, is quite an “experienced driver” in the computer field, currently working in development at Amazon, with previous employers including Microsoft and Facebook.Next,Bhavya Kashyapwill share her years of work experience to explain why she is not fond of Python and related training programs, after all, an iPhone cannot be built solely with Python.
Enjoy.
Recently, a friend of mine shared a story about a colleague. Her colleague is a nice guy who has been strongly recommending a coding bootcamp to her, calling it a new degree in the engineering field. He himself is a beneficiary of the coding bootcamp, and according to him, this job is the result of his coding training, believing that obtaining a degree for computing is unnecessary.
My friend is studying computer engineering at the University of Waterloo and has a master’s degree in engineering from the University of Toronto, and she was clearly not convinced by this.
After some thought, my friend tried to change his mind. She inquired in detail whether the coding bootcamp involved learning about security, server hardware resources, or operating systems, and attempted to explain the differences between coding bootcamps and professional degree studies.
Coding Bootcamps and Their Messages
Based on observations of coding bootcamp graduates, I found that they have an absurd conclusion, one of which is that they believe web development and app development encompass the entire field of computer engineering.
The languages and skills taught in coding bootcamps
This is not surprising. The current reality is that coding is becoming synonymous with web development. This equivalence can be seen in some zero-background coding bootcamps and even in high-frequency publications like The New York Times.
The programming industry is rapidly expanding, but there is a talent shortage in areas such as SaaS, devices, security, systems engineering (the technology needed to produce self-driving cars), and even game development. This is quite ironic. Theoretically, coding bootcamps are a way to transform non-technical workers into technical workers and create a cheap channel for skilled labor. Workers flock to these bootcamps, but the result is that they tend to lean towards web development, while the computer science field needs to strive to find technical talent from other areas.
Some may argue that proactive talent already understands that a 24-week beginner bootcamp can only teach so much, but they know their future direction and where their talents lie. However, the influx is very necessary, especially when this phenomenon is so widespread. After all, the influx makes such bootcamps so popular.
Coding bootcamps are certainly valuable. For those who cannot afford a technical education, they are a channel to enter the tech field.For those who realize they joined too late or just want to earn a little more money, the allure and instant gratification of web and mobile development are understandable, especially in the current environment where the cost of downloading frameworks and text editors is low, yet the potential rewards can be substantial. The beauty of these bootcamps is that they can serve as a gateway to other types of development, engineering, or even academic computer science.
However, I just don’t know how long it will take for new students to enter those fields.
Coding is not equivalent to computer science, nor is it equivalent to software engineering or computer engineering, and it is certainly not equivalent to STEM (the English acronym for Science, Technology, Engineering, and Mathematics).
Although it is currently very popular, it has almost become synonymous with computer science. But if you are a computer science graduate, you should know that the two are different and that this equivalence is detrimental to both disciplines. If you are not working in this field, you may wonder what the difference is. In fact, the differences lie not only in the skills required but also in their fundamental goals, of course, there are overlapping parts.
Coding is tactical. It is the process of solving immediate problems and building something to make it work. Software engineering, on the other hand, introduces strategic thinking based on this and applies engineering techniques to build robust and sustainable solutions. Computer engineering includes a certain degree of software engineering but also encompasses hardware, which is necessary for making tablets, phones, and consoles. Finally, there is computer science, which is arguably the most philosophical discipline, as it involves in-depth studies of mathematics and why different types of algorithms, data structures, and computational methods work the way they do.
While coding bootcamps may be the right solution for many, the skills and mindsets taught in formal computer science programs are crucial for driving technological advancement.This is why very few students who graduate from bootcamps enter large tech companies.
There is a need for professionals who can provide services to the public, such as Google Maps or Waze, which use algorithms like Dijkstra’s and tools like MongoDB or Android SDK, and their users inevitably include participants from coding bootcamps. Although many beginner bootcamps do cover algorithms and data structures, the depth and breadth of what they cover are insufficient. Moreover, bootcamps often teach these with the goal of interviews, so the content varies greatly.
The best employers
The demand for computer science professionals has been growing rapidly, with no signs of abating. According to data collected from Cod.org, there are 570,926 computer-related job openings across the United States. However, the number of computer science graduates in the U.S. last year was only 49,291.
According to the U.S. Bureau of Labor Statistics, the overall employment rate in computer and information technology is expected to grow by 13% from 2016 to 2026. Even if the graduation rate in computer science can grow at the same rate, the absolute numbers must increase by a full order of magnitude to catch up. Recent trends indicate that more and more students are enrolling in computer science programs, but it is still not enough, and more work needs to be done to close the gap.
Fortunately, in recent years, more and more people have recognized the importance of computer science (CS) education. This is encouraging, but similar issues still exist.
From the content of most programming websites, there is a confusion of concepts regarding the terms “CS” and “STEM”.
Even the official website of computerscience.org confuses these two terms. There is an article titled “Why Are Fewer Women Choosing to Pursue Computer Science?” which states that only 12% of engineers are women.
However, it does not specify which type of engineer the 12% refers to?
Later data released in the engineering field shows that women make up 25% of “computer science-related professions.” But why highlight data from the engineering field when discussing issues related to computer science, thus confusing the facts? For those unfamiliar with the expertise, this can lead them to believe that certain terms mean the same thing.
Positioning CS as the most representative industry of STEM will lead those who want to explore this industry into a narrow field, meaning that other areas will lose many new employees. When it comes to low-level APIs or system engineering design, you would be surprised at how challenging they are. Bus design requires knowledge of electrical engineering, and flash development (such as flash drives and phone storage) requires knowledge of materials science. Let’s not forget fields like chassis/appearance design, which require industrial engineers and designers to create beautiful and stylish looks like Surfaces, Xboxes, and Pixel 3s. Some tech workers completely overlook these topics in their discussions.
Many professional engineers, including myself, are uneasy about the current intense focus on coding bootcamps and CS programs that lean towards higher-level client-side programming. This trend has led to a focus on only a part of the technology field, and the industry needs people with a deeper understanding of engineering to fill the gaps around us. If young college students or even older tech professionals do not understand their possibilities, they will choose the path of least resistance. Ultimately, engineering talent will lose focus on core software engineering, civil, mechanical, networking, and application development.
Showcasing STEM Dreams to Small Groups
This is also the idea of organizations focused on minority groups, such as Women Who Code, Girls Who Code, Black Girls Code, etc. These organizations, whether intentionally or not, propagate the view that programming is STEM. They support bringing women into the fields of science and engineering, and this assertion holds because the public’s perception of these fields has been narrowed down to coding.
In this context, most organizations’ initiatives mainly teach them scripting and functional languages. In fact, for young people, being able to roughly grasp languages like C and C++ is very valuable, as it helps them feel that programming languages are not that difficult. Imposter syndrome is a real factor leading to minority groups dropping out of pursuing CS degrees, so they need help digesting these more difficult programming languages, and incorporating these programming languages into all CS courses can enhance their learning confidence.
Interestingly, we return to coding bootcamps, where more and more minority individuals are joining to enhance their skills and fill their gaps. Facebook’s ads continuously promote these initiatives, and the leaders of these initiatives take their students very seriously (perhaps sincerely), but coding bootcamps ultimately have only a very weak effect on students. The direct results of these initiatives are unclear— not all bootcamps disclose their students’ employment rates, and even when they do, some may consider these initiatives misleading.
Clearly, there is a lack of many professional skills training camps beyond coding, as the companies that need these skills do not fund the bootcamps.
With an optimistic spirit, I will assume that the employment rate of students is indeed high, and that bootcamp graduates can find jobs in startups or medium-sized companies a few months after leaving the bootcamp. Then, with a few years of experience, some can jump to giants like Google or Amazon.
However, most of these minority graduates do not end up in leadership positions, especially in the aforementioned giant companies. Bootcamps have become associated with weak abilities in the eyes of most people, and those with bootcamp certificates are sometimes even disqualified from participating in certain MFAANG interviews (MFAANG stands for Microsoft, Facebook, Amazon, Apple, Netflix, and Google).
I have heard colleagues express strong doubts about the qualifications of minority candidates with such certificates on their resumes. Unfortunately, this is the current situation. Therefore, only by obtaining a formal STEM degree can the strength of minority talent be recognized. Of course, how to obtain a STEM degree requires additional effort.
Techgirlz covers applied engineering and theoretical engineering
Introducing CS to minority groups is the first step, and we also need to diversify the engineering disciplines. Whether in large companies or small ones, we need the inclusion of women, people of color, and other minority groups in all fields. This not only enhances the level of the industry and brings good products to customers, but it is also a step towards strengthening social and socioeconomic capabilities.
What Should Be the Next Step?
I have expressed my concerns, but the issues remain unresolved. Who is responsible for teaching students all the knowledge they might need?
Clearly, there is a lack of many professional skills training camps beyond coding, as the companies that need these skills do not provide funding for the bootcamps. While coding bootcamps and general CS program initiatives are part of this educational plan, they have indeed done a lot of work to open doors for many. They are not obligated to expand students’ knowledge base to cover all professional fields, although they should.
My conclusion remains that information dissemination is crucial.
As an industry, we cannot continue to focus solely on web/app development and advanced CS. We should do better to meet the demand for roles in science, technology, and engineering. We need new talent to design operating systems, motherboards, cameras, screens, cases, assembly lines, and servers to drive technological updates in the industry. After all, you cannot build an iPhone with just Python.
Related reports:
https://medium.com/s/story/you-cant-build-an-iphone-with-python-ad690e5b2164
Volunteer Introduction
Reply with “Volunteer” to join us
It is said that those who clicked “like” have become more attractive.