What's the Big Idea? - IncrediCoders/Python1 GitHub Wiki
What's the Big Idea? Why do we do what we do?
There are so many reasons!
First, there's always been a Gold Rush! By "Gold Rush," we mean an industry that drives the economy, so you can gain wealth in that industry. First, Gold was, well, Gold. Then they called Cotton the White Gold. And Oil was called Black Gold. Manufacturing was key in the Industrial Age (not to mention Steel and Railroads). Later, the Automotive industry thrived, and Electronics was #1 in the 1980s. Well, now we live in the Information Age, where Technology is the new Gold Rush! Like those other examples of "gold rushes", this Technology industry provides more money than the other industries (on average, most consistently, when you work for the large technology companies). Read more about how much money you could make below, at Make $100,000 a Year. We also discuss the obvious topic of how this sounds really selfish and the wrong thing to focus on (to care so much about money).
Second, you can change the world! If you learn how to code and how to lead other coders, you could create apps and technologies that prevent starvation and help people succeed who might be underprivileged in some way. Skip ahead to Change the World.
Third, you can combine both ideas and change the world with money! If you're making a lot of money, you can give it to those who need it, or those who might die without it. You can also use your wealth to help other people learn how to make their own money.
Make $100,000 a Year
What does that mean? It means with a proper education, you could get a STARTING job, in an engineering role (Dev, PM, UX Design, UR... we'll explain these later) for a large technology company (we call it a Big Tech Company), at $100,000 a year (about $50 an hour), with the best retirement, insurance, and benefits you'll find (on average), and the best vacation hours (and sometimes work hours). It's the best of every possibility! (Some companies even offer their employees free food! Some "perks" in big tech include three free meals a day, free drinks, free snacks, free barber/haircut, free personal trainer/gym membership, free access to a swimming pool, free masseuse/massage, free showers, and free college tuition. But I haven't seen a one company offer all these perks.)
Keep in mind, $100,000 is just the starting salary. It can go up from there (eventually $300,000+)!
So? Does money matter that much? No, not for a lot of people. If you already have some money, you might not need more money (life might already be comfortable). But some people are living very hard lives, and this kind of money could change their lives forever, as well as the lives of everyone around them! This could be the difference between a single mom providing for her kids or helping her kids through college. I've definitely seen plenty of people fight their way into big tech to provide for their kids. So, helping set up your kids for that life might be something you're interested in. But that's not all (or even the goal for many people)...
Change the World!!!
Let's take a break from the financial or career-advancement aspects of the benefits of programming and technology. Let's assume that it doesn't matter. We'll get back to that later.
Programming and technology can help you change the world in two ways:
- Create apps, sites, and tools that make lives better and that save lives!
- A technology career (or similar careers; see the sections below) can help you achieve financial freedom! That means you can use your money to help organizations impact the world (improve and save lives), or to start or help with your own non-profit organization.
I've known multiple people who made money in the technology industry and then taken time off to fly around the world and help save lives! If you want to change the world, there are several ways that a career in technology can help you do that!
So What Are Those Engineering Roles?
Here are the roles that benefit the most from the Technology Gold Rush...
-
Developers - These are computer programmers. You write code. You should learn Python (of course), but you should also learn Java and C#. Beyond that, you can pick up some other languages as well. You should also learn several IDEs (the apps you code in, like Visual Studio Code and Replit). The more you know, the more opportunities you'll have.
-
Program Managers - You could get a CS degree (or even a Business Degree, although you might have to fight harder for the first job) and then not code for your job! You put together the plan and schedule, lead people to get things done, and you do everything in your power to make the technology great (and ship it). You can learn coding, only to get the job and never code again! But, it's still valuable. What you learned shapes who you are, your decisions, and your understanding of what your teammates are doing. This role is also called Technical Product Managers.
-
Technical Writers - These are people who write the online articles, technical whitepapers, and more!
-
UX Designers - Let's not say the word "STEM" again. Instead, let's use "STEAM!" Art gets an equal seat at the compensation table (with User Experience Designers), as you design how the software/hardware is going to work (what the interactions are going to be like), and you lead efforts to get those art assets implemented! For this role, you'll want to look for education that specializes in Interaction Design (especially around technology).
-
User Researchers - This is a smaller group, but User Researchers are very important to the technology industry! Have you wanted to research stuff for a living? User Researchers research customer interactions and behaviors, funneling the feedback into the product.
Then there are several roles that are in technology, that help support the product that the people above are making: Technical Writers (do you love to write?), Data Scientists/Analysts, Operations/IT Management (fixing stuff and ironing out processes), and Technical Field/Sales/Solution Architects (helping customers implement the technologies). Sometimes people start in these roles and move into doing almost the same thing for Engineering teams.
Again, you might ask, Why the focus on money? Why is money so important? Because that single mom out there who's struggling to pay her bills has an opportunity to change her life. And the more of us who can come alongside her to help her, the better our society becomes. Who knows where her journey will start. It can start with a friend or simply a comic book.
But Has the Technology Job Market Dried Up?
No, but it certainly has changed. It's constantly changing (so that's not different than before). Obviously, if the technology industry is constantly changing, then it's going to keep changing in different ways.
In 2020-2023, large tech companies grew and over-hired during COVID, and when people returned to work, the companies didn't have as high usage on a lot of the virtual technology that they ramped up on (video meetings, support infrastructure, and so on). Various other factors led to a recession in technology (and some other markets). And then AI advancements have also contributed to layoffs and slowdowns in hiring (more on AI later). It's true, and this has resulted in a lot of senior and talented developers and technologists getting laid off or moving on to find new work. That makes it harder (and different) to get into the industry, if a bunch of senior people are also looking for jobs.
However, everything we mentioned in the other sections is also true. There are a lot more opportunities to make money and be successful in technology (or learn technology to help with your current career path, if you're in another job area, which we'll cover next). The changes to the software industry changes things, but it doesn't stop the value of learning programming and technology. For example, if there's a time when many engineers are laid off and a new college graduate with a CS degree can't find a job that one could find five years prior, there are other steps to take. All those companies are still hiring and growing, and that includes a lot of vendor companies that support them. Finding a smaller or vendor-related role is still an option (like it has been for decades, and it has been a great way to build experience and get a career started). For example, starting with a vendor/contract job is the way the book author (Ed) got started decades ago, and he's moved into and from vendor/contract jobs a few times since then, over the years.
Likewise, you can put eggs in lots of baskets. For example, one year it might be hard to get a full-time technical writing job for a big tech company, but a lot of vendor/contract companies are still hiring. And maybe you build out other skills (like development or product/program management). Then you get the full-time job a year or two later. The more skills and experience you have, the more opportunities you have! As another example, some people specialize (like test engineering). Maybe you also build out your skills and resume in other areas, like software development and technical project management. The more tools you have in your toolbelt, the more opportunities you have!
Also, keep in mind that the technology industry is constantly changing (it's very consistent in the lack of consistency, because technology is growing and improving and opening new opportunities). So, if and when the layoffs change or slow down, then that's going to make this aspect very different.
But What If I Don't Want to Work in Technology?
Well, it would still be valuable to learn computer science (and Python, via our book). Because chances are your ideal job might exist for a technology company. For example, Marketing Managers, Finance Managers/Analysts/Accountants, Business Managers, HR Managers, Corporate Lawyers, and even Business Administrators/Secretaries can make over three times more (plus the added benefits), working for a Big Technology Company. (I've even see custodial businesses seek out contracts with big tech companies because they pay better.) By taking computer science classes and learning technologies, you set yourself to get internships doing a non-technical discipline at the technology companies, doing startups or class assignments for technology-related projects, and you basically build out your experience and knowledge in your discipline of choice, but for the technology industry!
But what if you want to be a sous chef, veterinarian, or stay at home to raise a family? True, a technology education can't help you there. But having a technical background is a great safety net, in case you want to join the Technology industry later on. You never know what life's going to throw your way!
But What about AI?
Isn't AI going to take over these jobs? (So, is attempting to get a job even worth it?) And why did we wait to put this section near the bottom??? :)
Well, the reason that this section is last(ish) is because it affects all the topics above it.
Think of it this way... You can be on one of two sides of AI when working with technology... It can be your job, or it can replace your job (or future job). Obviously, you'll want the first one.
So, we recommend that you embrace AI! Use it as a student, developer, technologist, and maybe even as an artist. That's the first step. If you're a developer, use the Microsoft/GitHub Copilot, OpenAI, and other developer AI features! When doing project management, social media, content writing, or most anything, use OpenAI ChatGPT, Microsoft Copilot, Google Gemini, or any of the others! Be sure to use it ethically and don't cheat, but you should still make use of AI.
Once you're comfortable with it, you can see how to take AI to the next level! See if you can get into prompt engineering. See if you can build AI features for your app or site. (Microsoft Copilot Studio makes it easy(ish) to create an Agent to host on your website, and their AI Builder is a low/no code way to build some AI tasks, like document retrieval and comparison.) Maybe as a Business Administrator you can play with building a tool that uses Microsoft AI Builder and Power Automate to make your job easier (and focus on higher-impact tasks). Even as a student, you can see how AI can impact your work or your faculty's and administration's work! Maybe you graduate with a degree and leave behind an AI-impact (with a lasting legacy) at your school!
It's true that the Gold Rush of Technology is now leaning more towards the Gold Rush of AI. However, AI is built on all these lessons in programming and technology development. So, this is how you get started.
The more you leverage AI to impact your business/job and the more you are a necessary part of the future of AI, then AI is more likely to have a positive impact on your future than a negative one!
And... Can you guess what the #1 programming language to learn is for AI? Yes, you've got it. It's Python. That was intentional on our part (and obviously Python's part). It's the book you've got right now. So, give it a shot, and see what you can do!
Next Steps
Before we go, we want to make it clear that we have provided details about careers and money, but it's not always about the money. You gain a lot of great skills that let you empower people and help people all around the world!
We hope you took all that to heart, and you're ready to learn (or to continue learning)! Let's get back to the book! And you should probably also check out the rest of our resources, at IncrediCoders: Python Adventures - All Online Resources.
[TBD]
- Education Resources
- Coda Kids Academy
- Career Strategy & Development