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, you can make more money on average than most other professions. There's always been a Gold Rush, which is an industry that drives the economy, so you can gain proportionally more wealth in that industry than the others (on average). The first Gold Rush 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 (and AI 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 tackle the topic of how this sounds really selfish and the wrong thing to focus on (to care so much about money)!
As you might know, even in the Technology Gold Rush, technology does not sit still! And so, if you want to be "current" in technology, you could pursue the biggest opportunities in it! For example...
- Enterprise: What started as "software" for developers and enthusiasts, the Enterprise market (software for corporations) rose to the forefront in the 90s and beyond!
- Web: The Dot-Com Boost (and Bubble and Burst) started strong in the late 90s as it became clear that we could run entire businesses, stores, and services online!
- Cloud: In the mid-2000s, the big tech companies (starting with AWS/Amazon, Microsoft, and Google) figured out that they could host all the data that runs our businesses and sell that as a service (a host of services that also build the solutions those companies need).
- AI: AI shot up to a new focal point with generative AI when ChatGPT launched in 2022. Now AI is a focus of pretty much every technology business. We continue this topic of AI later on this page. See But What About AI?
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 education (typically a related Bachelor degree), 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 very flexible work schedules). 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, free swag (clothes, bags, etc.), and free college tuition. But I haven't seen one company offer all these perks. Meta and Google might be some of the closest.) Other Big Tech companies include Microsoft, Amazon, Apple, Netflix, and there are new ones rising through the ranks every few years!
Keep in mind, $100,000 is just the starting salary. It can go up from there (eventually to $300,000+, especially when you factor in a bonus and/or stock awards)!
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 surviving... or thriving, as she seeks to provide for her kids. Or a large salary (and amazing benefits and bonuses/stocks) could be what's needed for a single mom to get 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.
Or perhaps it's the kids fighting for their retired mom or parents, so that they don't lose the house they've lived in. I've also seen people "retire" from Big Tech, after their kids are through college or after they purchase (and pay down) a house. Those professionals then take risks in business or pursue projects they're more passionate about. They "retire" to go do whatever they want!
But that's not all (or even the goal for many people). Let's talk about how the future generation might...
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 would be selfish (buying things you don't need and living for money instead of for others). We'll get back to that later. How can learning how to program help you change the world?
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! Software (and hardware) can help make sure people stay healthy and safe!
- 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 (integrated development environments... the apps you code in, like Visual Studio Code and Replit). Technologies are like tools in your toolbelt... when you need to be a plumber, you put away the hammer and take out the plunger! It's the same thing with technologies! 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 (called 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? -- yes, they are listed above as well as it's a core role but also supporting), 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? Many people are unable to feed and support their families. And the more of us who can come alongside those people, to help them, the better our society becomes. Who knows where that person's journey toward financial freedom will start. It can start with a friend or simply a comic book like IncrediCoders! (Yes, it's actually a graphic novel. We know; we made it.)
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-level engineers 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 layoffs in 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?
You could be Nordstrom! You see, the Gold Rush sent a lot of miners out west, to California, Alaska (very northwest), and even Washington state (that's where I live). Because the miners had money, other people set up shops around the mining business to sell their products to the mining industry. And one of those stores, was a shoe store named Nordstrom in Seattle! But what does that have to do with you?
Similar to how a shoe shop succeeded around the Gold Rush of the early 1900s, it would still be valuable for people 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 seen 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!
In other words, just like Nordstrom had a great business in connecting to the success of the Gold Rush, you also can find success in other business roles, working for the current Gold Rush, big technology companies.
Of these "non-tech" jobs, Marketing has a LOT of opportunity! Big Tech needs marketers to sell the technology, so if you can specialize in technology as a marketing manager, then you'll find a lot of opportunities to grow your salary up to a similar level as what developers are making (plus the opportunities to impact the world)!
But what if you want to be a sous chef, veterinarian, auto mechanic, plumber, dentist, or stay at home to raise a family? True, a technology education most likely can't help you there (although vets and dentists purposefully open shop near big tech companies). 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!
Also, if you learn technology, you might end up working together with other smart people to build an app, service, or device that will help change your industry and save lives!
But What about AI?
Isn't AI going to take over these jobs? (So, is attempting to get a job even worth it?)
The Bumps of AI: AI is currently bumpy! And it's going to continue to be bumpy! What does that mean? Publishers are currently moving away from publishing content that's more oriented toward information (because readers can ask AI for conceptual information now). And so they're focusing more on technical how-to and experience-oriented content. (This is one way that it's affecting us, as authors/writers.) Another way that AI is bumpy, is that we're seeing upper management tell developers to just use AI to build the apps, and then they can just check in and facilitate the AI doing the development. (And they justify hiring less developers because of this.) The development managers and engineers have to explain to the management that AI currently doesn't really work that way. AI just helps developers, like Copilot might guide you in how you write in Word or Copilot helps you in Bing search or how Gemini does in Google Search. It might help provide you with a basic template, and it helps give you ideas. It doesn't really do your job for you (yet). However, it can still be embraced to make those developers more productive, so that they can get more bugs fixed and focus on the big features! So, some bumpiness is the pushback and conversations that are required between executives and developers.
Here's one way you might think of it... 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. You can build job "security" by being one of the people who is helping integrate AI into a business.
AI is good, but it can only really build on things that already exist. AI can combine things in new ways like “creating” music or art, but it can’t really create something truly novel (we train the models with human knowledge). You can innovate where AI can’t!
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!
But isn't AI going to lead us to Terminator, the Matrix, or Battlestar Galactica (where the robots take over)? It might, but the more skeptical and wise people (like you) who are working on AI, the better chance humanity has to survive the future robot wars!
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.