DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

The software you build is only as secure as the code that powers it. Learn how malicious code creeps into your software supply chain.

Apache Cassandra combines the benefits of major NoSQL databases to support data management needs not covered by traditional RDBMS vendors.

Generative AI has transformed nearly every industry. How can you leverage GenAI to improve your productivity and efficiency?

Modernize your data layer. Learn how to design cloud-native database architectures to meet the evolving demands of AI and GenAI workloads.

Related

  • XAI: Making ML Models Transparent for Smarter Hiring Decisions
  • Build Your Tech Startup: 4 Key Traps and Ways to Tackle Them
  • Why and How to Participate in Open-Source Projects in 2025
  • Top 5 GRC Certifications for Cybersecurity Professionals

Trending

  • Rust, WASM, and Edge: Next-Level Performance
  • The Role of AI in Identity and Access Management for Organizations
  • How to Convert XLS to XLSX in Java
  • Dropwizard vs. Micronaut: Unpacking the Best Framework for Microservices
  1. DZone
  2. Culture and Methodologies
  3. Career Development
  4. Be Anything You Want, but Not a Programmer

Be Anything You Want, but Not a Programmer

Embracing beginners: this article explores a perspective on learning, resentment, and identity in the world of programming.

By 
Mohamed aboelez user avatar
Mohamed aboelez
·
Nov. 10, 23 · Opinion
Likes (1)
Comment
Save
Tweet
Share
2.7K Views

Join the DZone community and get the full member experience.

Join For Free

Here’s a valuable piece of advice for anyone embarking on a new learning journey: disregard individuals who derive pleasure from belittling beginners. Some individuals take delight in undermining novices, perhaps out of insecurity or past experiences of being bullied, which gives them a misguided sense of power. Regardless of their reasons, if someone is trying to make you feel inadequate for trying something new, don’t pay attention to them. They simply lack empathy.

Back in 2012, Jeff Attwood wrote an article advising against learning how to code. I can’t help but wonder if he’ll give the same advice to his own children when they express a desire to follow in their father’s footsteps. It’s highly unlikely. He’ll likely enthusiastically guide them through the coding process, emphasizing how enjoyable and rewarding it can be encouraging them to pursue it wholeheartedly. Yet, according to his previous stance, coding is a pursuit exclusively reserved for Jeff and his kids.

Consider this scenario: Imagine if Jeff’s child attended school, and a teacher said something like this: “Stop trying to learn to code. Even if your Dad does it, you’re just not good at it, and the world doesn’t need poorly written code. Find another hobby, perhaps painting.” The absurdity of such a statement highlights the importance of supporting and encouraging learners, regardless of their skill level, rather than discouraging them based on their current abilities.

Jeff would undoubtedly be furious. He might consider taking action against the teacher, although given his demeanor, he might politely request the teacher to refrain from making such hurtful remarks. The essential point here is that Jeff would be upset if someone told his son that he couldn’t pursue something he was interested in.

However, it’s perplexing that Jeff himself is advising others against learning to code. He’s discouraging not just children but also adults aspiring to enhance their lives or acquire new skills. He’s even telling individuals from different professions that programming won’t benefit them. Why? The underlying reason is resentment.

Ironically, I take pride in being the originator of the idea that anyone can learn to code, a concept that has gained traction (not through Codecademy or similar platforms). Over time, I’ve encountered a growing faction of experienced programmers who harbor resentment toward newcomers. They are envious of how effortlessly these newcomers can grasp programming concepts, especially considering the abundance of free learning resources today. Unlike today’s accessible learning environment, we older programmers had to navigate a landscape devoid of free books and courses. We had to immerse ourselves in numerous books and piles of code just to achieve our current proficiency. Consequently, these seasoned individuals resent the newcomers’ comparatively easier path to acquiring programming skills, leading them to discourage others from pursuing it.

These seasoned programmers are also frustrated that newcomers are bypassing the traditional learning paths they hold dear. The question, “How can you truly understand C programming without reading K&R?” or insist, “Real programmers study the ‘Gang of Four’ as I did.” When they witness new coders emerging with considerable skills without delving into these outdated reference materials, it fuels their resentment. They also struggle to believe that these newcomers are genuinely proficient for the same reason.

In reality, if we, the experienced programmers, genuinely advocate for a meritocratic system, we should be welcoming beginners regardless of their chosen learning methods. Believing in the principle that someone’s potential isn’t bound by their background or qualifications implies that everyone has the capacity to improve, and their abilities should be assessed based on their current skills. Criticizing others simply because they didn’t follow the exact path we did stems from spiteful resentment.

It’s time to move past this resentment and embrace a more inclusive perspective.

Here’s a valuable insight: the key to mastering any skill is to avoid defining yourself solely by that activity. While I refer to myself as a programmer, it’s more accurate to say I’m someone who writes code, among various other pursuits. Coding isn’t my identity; it’s merely one facet of the multifaceted and intriguing person I am. Defining who I am is a complex, indescribable endeavor.

If you approach coding in the same way, learning it for your own personal reasons rather than tying your identity to it, you’ll find fulfillment and success commensurate with your efforts. But if you attach your entire identity to being a programmer, changes such as the widespread belief that “everyone can code” might breed resentment, as it challenges your sense of uniqueness.

career

Published at DZone with permission of Mohamed aboelez. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • XAI: Making ML Models Transparent for Smarter Hiring Decisions
  • Build Your Tech Startup: 4 Key Traps and Ways to Tackle Them
  • Why and How to Participate in Open-Source Projects in 2025
  • Top 5 GRC Certifications for Cybersecurity Professionals

Partner Resources

×

Comments
Oops! Something Went Wrong

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!