this could be the most valuable class you've ever taken because the learning outcome from this class is the ChatGPT in the hands of a person who doesn't know what they're doing is completely useless and will destroy you meaning you're going to get a job and for the first week you can use ChatGPT and then in week four you're going to get fired I would go and I would see students come in and they would bring me code that clearly came from ChatGPT right and I would ask him like well did you watch the lecture yeah yeah yeah of course I watched the lecture I said well did you look at the sample code I provided and it doesn't take long for me to like just figure out because ChatGPT writes Beautiful code it's syntactically correct it uses some of the more advanced features of any library or whatever and so it's like I look at it and go like nicely done and I realize oh wait a sec I'm complimenting ChatGPT yeah I think the the thing I'm thinking about is like in the real world when someone you might be able to cheat through the exam and I like your example um but I've seen it in the field where people will cheat on other exams so they find all the answers they memorize the answers but they don't actually know how the stuff works yeah you're going to get caught out somewhere perhaps on the interview but perhaps actually in the job so you're harming Yourself by cheating like this it's it's goes through the pain it's like like I think it's really important to do that so that you actually learn the skills right I do think that a lot of teachers build really horrible classes well so the ma the path of the master programmer is effectively my personal curriculum that would replace a computer science degree if your goal is to become a programmer hey everyone it's David Bombal back with the amazing Dr Chuck Dr Chuck great to have you back on the show it's great to be back on the show we always have so much fun it's so nice to get your experience and your advice and it's 2025 now and I think a lot of people in this new year are going to want to know firstly is it worth becoming a programmer because you know AI is eating all the jobs some people say and then secondly how do I become a programmer so perhaps we can start with the AI question and then you can take us on a journey I see AI through kind of a couple of lenses one is just kind of a hype listener and trying to I just want to I want to discredit the hype I just am tired of it um and I'm tired of no company has any new ideas except AI right whatever they were doing they doing plus AI but the other way I see it is um through my teaching and so from the moment I started uh me and my other colleagues at the University of Michigan School of information were vowed not to be anti- aai right to be pro- AI because we feel like if you're not pro- AI um you're not helping the students right and so many of us try to design AI usage into the class and so we don't prohibit it but then we have to warn students right I mean we're taping this at the two-thirds point of our current semester and this is where um I'm starting to get email after email after email from students was like I'm just falling farther and farther behind in this class I mean every week I I can't keep up and and and and and and in the or the last two3 but in the middle third I I would go and I would see students come in and they would bring me code that clearly came from ChatGPT right and I would ask him like well did you watch the lecture yeah yeah yeah of course I watched the lecture I said well did you look at the sample code I provided and like yeah yeah I'm like well could you show me the sample code that you were looking at that you used to adapt to make the code you wrote yeah yeah yeah yeah and it doesn't take long for me to like just figure out because ChatGPT writes Beautiful code it's syntactically correct it uses some of the more advanced features of any library or whatever and so it's like I look at it and go like nicely done and I realize oh wait a sec I'm complimenting ChatGPT but the the simpler and the more elegant and the more advanced features that A A student uses in their early applications the they understand about what's going on they're just like oh please help me ChatGPT these students are going to end up with a b or c in a class I'm just about to send them a letter that says if you're feeling this because of ChatGPT you should just resign yourself to getting a b or c in this class and with grade inflation getting a c in a class is like ah my parents are going to come and revoke my allowance because I didn't get an A and so I'm at that point where there's no chance for these students to catch up and it has to do with the following there's this concept called the zone of proximal learning and the idea is is I have 15 weeks and it's kind of in thirds the first third the assignments are designed to create a sense of confidence and success in the students like look you can do this you got to learn how to read this and here but I make sure you don't fail I give you lots of very explicit instructions and then the middle part is where I'm trying to transition you all off me giving you too much I call it the DIY part of the class where they're they're supposed to kind of start not depending on my descriptions of what to do but instead think and then at the end I teach him a bunch of stuff and the whole first two-thirds of the class is so that they can be successful in the last third of the class what and what I'm trying to do is I'm going make it each week I try to make a challenge that they can achieve and so like first week is a a challenge that's small and they can achieve that in the second week is a next and it starts building and pretty soon they know quite a bit but the other problem is is in the first third of the class ChatGPT can usually Crush my assignments and and that's that's not because I designed them to be crushable by ChatGPT it's just I made very very explicit things using language and what does a large language model do it reads my instructions goes I figure out what this guy just said not just because cat GPT but because it's necessary for learning in the middle third I start making my descriptions more vague and that's not just to confuse ChatGPT alth that does confuse ChatGPT it's to get them to actually like go off on their own and and and research and and look at the look at the shorter descriptive sentence that says do this by looking at that not here's what you paste in and this is where ChatGPT starts getting lost because it's like we're going to we're going to build an application to track pets and then you give that to ChatGPT goes like here's application that tracks pets well it has nothing to do with like how I wanted you to write the application or what the data model was supposed to be but it's like I know how to build an application to track pets and so they walk in with these ChatGPT generated things and they have taken it to their friends they've taken it to their their their buddies in computer science and nobody quite knows what to do with this code that they think is half done and they come in to me and I I can't help them I mean every once in a while I say well I'm here put those four lines and then you'll be okay and then then they go off and they think that that week is done but really what happened was is they walked away from the struggle that was a struggle that they could succeed in that's the Zone proximal learning is I I look I'm like I make a thing and I know it's I know how hard it is to go up so I make the steps small and small and small and so what happens is is that ChatGPT starts to lead them badly astray in the middle of the class and then in the last part of the class the steps get really big and the assignments get really vague and ChatGPT has got nothing I mean they can't even kind of get a half broken solution from ChatGPT in the last third but they have gotten kind of halfway through the class on ChatGPT and that's the problem yeah and and I'm going to send them a letter and this letter is going to say you depended too much on ChatGPT in the beginning of this class and so you started to fade away in the middle of the class and you were incapable of doing the stuff at the end of the class but you did okay on the exams and so you'll probably get a SE this could be the most valuable class you've ever taken because the learning outcome from this class is that ChatGPT in the hands of a person who doesn't know what they're doing is completely useless and will destroy you meaning you're going to get a job and for the first week you can use ChatGPT and then in week four you're going to get fired right so if you think that ChatGPT is what people are hiring you for and then there's kind of this other fallacy because I don't teach computer science so we talked about this a bunch right I teach I don't teach a canonical kind of curriculum the way computer science does now the interesting thing in computer science is that ChatGPT can support you in my opinion far longer in a computer science curriculum because the hardly described but very difficult problems or something ChatGPT has seen a million times already so you can be at week 12 of a computer science first computer science course and ChatGPT is like yummy yummy and so so you can get farther in computer science than my class because I'm consciously becoming vague and my stuff is not there's not 10,000 universities that teach the exact same set of 15 assignments that ChatGPT knows about but the point is is ChatGPT is GNA let you well AI is going to let you down and then I juxtapose this with talking to my teaching assistant we have lunch every Friday and I'm like what are you up to and like how are you using ChatGPT and like my teaching assistant said well I'm saving a lot of time as I'm trying to help students with small typos in their program I could either look at all their code but what I've done is I've gone into ChatGPT and I described the problem and I put in my solution to ChatGPT and say this is the problem we're working on and here's some code I wrote and here's this and here's that and then what they do is they grab code from the students and they start feeding into ChatGPT and say this is close but not quite right what do we got to fix and ChatGPT goes like missing semicolon line 207 yeah so this is a person who is a master of the material who is using ChatGPT like a like a sword right and that's the problem is ChatGPT is going to be great and it's it's going to accelerate people who know what they're doing and it's going to it's going to cause people to drop out a programming so one of the one of the things that I'm fighting with all the time I fought my whole career is how do you get to the point where people don't drop out at week seven of their first programming class how do I make a more gentle class and I've been very successful at that computer science hasn't sort of fixed themselves they always don't care that a lot of people drop out because they don't want to graduate so many people I want to graduate as many people as I can so I make the classes more tractable and the problem is is that with ChatGPT we're going to get back to a situation where people drop out they they start in a programming class and this programming class is designed for them to not drop out right for them to achieve to not be sorted as a thumbs up thumbs down like sorry it's week five you shouldn't be a programmer go away work in the fields and pick potatoes because you are not worthy of programming the answer is no no no no no everyone can learn the program it's really easy except now ChatGPT is ruining right because if you are gentle and you give people a gentle introduction they can use ChatGPT too much to bypass the Early Learning experiences were like oh aha no it's not they're in a hurry and they don't get any aha moments they don't get any early learning and then they encounter the first situation that ChatGPT can't do the work for them and they decide that they're not a programmer and the answer is ChatGPT LED you down a path of very bad choices and now you're going to drop out and it's because of ChatGPT and so that sort of breaks my heart as a teacher that um I've been trying to solve the problem of people getting halfway through a programming class and dropping out because they feel that they could never do it and I don't know what to do I'm I'm I'm starting to think about having whole lectures on what we're just talking about like a a diagram of the Zone appr proximal learning with these blocks of different heights that talk about like this is the moment where you're going to be in trouble the ChatGPT can't take you beyond this point so you should be careful using ChatGPT and so I'll I'm I'm not going to give up right I'm I'm a teacher and ChatGPT is now a problem it's not a problem for me it's a problem for the students harming theel themselves using ChatGPT and so how can I teach them not to do stupid things with ChatGPT and how to feel the struggle feel the success from the struggle again I've been teaching so long I get email from people who are writing four lines of code that any programmer in the world would be able to write in five seconds and they're struggling with it and I'm like love the struggle love the struggle don't just get the answer just love the struggle and those are the ones that ChatGPT helps I think we're going to find a situation where this new AI capability is really going want to sort of have some kind of flame out effect meaning that fewer people will know how to program and therefore know how to use ChatGPT and so so guess what learning the program and learning how to use ChatGPT wisely while you're learning to the program is going to turn out to be a mighty good skill and there's going to be fewer people because all the people who just use ChatGPT to pretend they're programmers aren't going to be in the job market they're going to have to go work in the fields picking tomatoes under 100 or 30 5 degree Centigrade Sun so it's kind of weird that I've spent my past 10 years of my life trying to bring as many people into programming as I possibly could and now ChatGPT is going to defeat me or defeat me in some ways that says I can't keep bringing more people into programming because they'll use ChatGPT and and then they'll fail because of it I mean we've both been teaching for a long time I mean it's in the old days before this existed people would use brain dump or just cheat in other ways but you're cheating Yourself by doing that right because you're not learning you're not going through the Journey like you said you're not going through the pain yeah and and so you know I'm a big actual fan I one of the things on my tests that I do is I give you cheat sheets right so one my tests are kind of weird my tests have multiple choice questions and short answer questions and they're all on paper because of ChatGPT right um but here's the thing that I do is I give quizzes in between each exam and I tell them that I'm going to use the exact same questions from the quizzes on the exams and I give you two pieces of cheat sheet paper and you can kind of guess what a lot of students are going to put on half of their cheat sheet they go and they grab all the quiz questions and they remember the right answer to all the quiz questions and that's half their cheat sheet so you might say well Chuck why are you even doing that if you let them have a cheat sheet and I'm like uh that's called studying right I mean there's some chance that in the preparation for that exam they still have to read the question they have to understand the words on the question they have to read all their cheat sheet and so I'm like haha you're learning right yeah and um and so I I don't I don't try to make really difficult exams they turn out to be as difficult as the student wants to make them depending on how much they study and so the notion of brain dumping and cheat sheets and whatever you're right that's that's been forever but a clever teacher uses that to their advantage and uses that as a moment to get their attention so to me exams are just to get students attention they're just like okay you've been kind of bringing half effort for the last five weeks but now this week you got to think about this class or you're gonna you're going to bomb this exam and then they all do pretty well in the exam which it makes me happy yeah I think the the thing I'm thinking about is like in the real world when someone you might be able to cheat through the exam and I like your example um but I've seen it like in the field where people will cheat on other exams so they find all the answers they memorize the answers but they don't actually know how the stuff works yeah you're going to get caught out somewhere perhaps on the interview but perhaps actually in the job so you're harming Yourself by cheating like this it's it's goes through the pain it's like like I think it's really important to do that so that you actually learn the skills right I do think that a lot of teachers build really horrible classes and and I think we talked about this before that if if you're encountering a really hard class that is expecting you to do 100 hours of coding per week for one point you know if you come up with a quick and dirty way to Short Circuit that so you can get some sleep as a student I I I'm I'm I'm not very judgmental at that point right so I so I as a my contribution to their learning I build a class that is not going to destroy them not going to take away their whole sleep for 15 weeks and if they are willing to struggle for an hour or two every week I will reward them with true learning and so uh and so I think there's just too many classes that are um unnecessarily difficult and so this kind of any by any means necessary mentality sort of perc and where you go so I mean it's interesting because in the previous interview that we had you spoke about the problem where students were submitting code or you were seeing code and the problems were hidden so deep in the code because it was written by ChatGPT that this is a problem in the real world right if if people rely too much on on AI and we keep saying ChatGPT but I mean AI in general they they they're going to there's going to be vulnerabilities in the code they're going to be other problems in the code and because they don't understand it they it's it's going to be bad coding but here you're also talking about the fact that ChatGPT is stealing their future basically because they're relying on ChatGPT or AI whatever instead of learning it themselves I think when you're talking about the ChatGPT embedding bugs deep in code you're not talking about my students you're talking about a story I told about me yeah oh okay yeah that I can't remember it was a student or was someone it was remember patch that I wrote for SK that I hoped would be right and I didn't look close enough and it introduced a regression that we found in 24 hours and I had argued with people about the fact that I was sure it was right and they were like I don't know about that and then they were right and I had to kind of like go back and like uh you were right in my use of check so that think of that like a job situation right I mean I'm a I'm a volunteer but I mean you know I'm sitting there with my team code reviewing and trying to convince them that this code that came from ChatGPT is suitable and then they listen to me because they like me and they let it in and then like 24 hours later it regresses and crashes and I'm having to apologize after that and so you know that that was that story that and but that's more of a job story right you you're going to bring in some ChatGPT stuff into something you're paid to do as a professional and you didn't look close enough at it and now you're going to lose the company $100,000 of Revenue and you're going to eventually realize or someone else will realize that the code you put in had a tiny mistake and when you finally have to admit that I didn't look at that code because I was so sure that ChatGPT was right that is an ugly place to be okay well let me let me tell you one other AI topic and I've been telling this to people I'm curious what your thoughts are on it I think that we are in the Golden Age of AI and things are going to get worse from here and I'll tell you why I think that everybody should archive the data they use to teach their model and archive their models because it will not be long before AI is going to be looking and program the AIS of the future will be programming themselves from the results of AIS yeah so good let me let me tell you why AI works today and that is that I can write a blog post about learner privacy and you can write a blog post about learner privacy and then a third person can write a blog post about learner privacy we are humans with our best intention of being correct and I make little mistakes and you make little mistakes and the third person makes little mistakes but our mistakes are somewhat randomized and so if you look at me and you and one more person and you look at it closely enough or maybe even more people you can the mistakes tend to factor out right because our mistakes are random just because we're imperfect if on the other hand AI is generating material whether it's code or writing or videos or audio AI is going to take 10 to multiple AIS from multiple sources going to take from the same kind of Corpus are going to make the same mistakes so now you got AIS reading what they think are independently created in pieces of information using the Standard air elimination through multiple sources but all the sources will have made the same error and then that and let's just say that error is 1% but now all the AIS that are reprogrammed in 5 years from a lot of AI generated data will have a 1% error rate that they can't fix yeah and then the things that those AIS do is they generate a 2% error rate and then the next Generation reads in stuff that's got 2% errors and and what we know from sort of the law of exponents is 1.01 is infinity and 0.99 is z as time progresses and so I just think that people aren't thinking about the consequences of AI reprogramming itself from materials that came from AI so let me give you a real simple example I did a podcast I know golly five years ago I was really into learner privacy learner privacy. org I did this podcast and I wanted to the podcast was mostos of extremely high production values with lighting and scripts and music and all all this stuff and a character and um I researched every one of those episodes of that podcast and I did slides and it was beautiful it was like a little seven little TED talks and I thought the world would watch my little seven Ted Talks on this podcast and then they would listen to me and they would care about St learning privacy yeah and so I did all this work and nobody cared nobody really listened I still think it's really great work so now ai wanders by and grabs my stuff and says yummy yummy yummy read stuff up reads my source documents that I used to do all my research I could tell AI right now I could say you know what AI I want to make some money off this learner privacy thing I've got seven episodes out there that are really good how about you every month make up a new episode with cool lighting and cool video and the character and the tone and pick some music and write the script and and do whatever and now this learner privacy. org instead of having six or seven episodes for the next five
years has an episode every month so it's got like what 75 episodes in a few years except only six of them were written by humans but the world doesn't know and the and the average viewer will be fine if there's little mistakes but the AI won't thei will believe it was written by well-intentioned humans and use its same error correction so all I'm saying is those of you who have data and AI models keep them the future ones are likely worse now I'm not saying that we figur out all the applications of AI right I'm not I'm not saying that someone's going to build a really cool thing for helping software developers redent you AI I there's so many good applications of AI but the corn models themselves I think are going to start to Decay as as a AI does more and more so that's my you know scary scary future view that they're just going to get dumber and dumber and we're not even going to notice it I think it's a it's a very valid point because like you said it only takes a small increase and it then it becomes exponential as they're learning from each other and learn bad data from one another I mean I already see like when we're recording this like when Google or other search engines use AI to try and give you the in the correct information it's so frustrating because a lot of it's just nonsense even now yeah absolutely Dr Chuck I've got to ask you the big question because a lot of people will be thinking this is it even worth me becoming a programmer yes of course it's worth becoming a programmer and this is you'll find I'm consistent on this and that is the amount of core deep painfully acquired knowledge that you need to be a good programmer is decreasing and so if you think about what is the minimum required curriculum so that someone is capable of being a good programmer and we've talked about it before the the whole goal of education is not to teach you everything you need to know but to prepare you to learn rapidly and now it's to prepare you to learn rapidly with the help of AI right and so the curriculum can does not need to be any larger right every student to be good programmer does not have to write an operating system project which wastes the year of your life and so I think what we're going to find is that um software developers are not going to need four years to be ready and um with AI you're not instantly a software developer I mean you still got to struggle you got to learn some basic things but I think the important question for curriculum designers myself included is not to waste the students time don't teach the stuff we taught don't just teach a compiler because we've always taught compilers don't teach operating systems because we've always taught operating systems figure out the essential things to prepare students to learn and grow and create in an AI enham enhanced environment and so that's the key the key is is we you know you kind of say well is higher education you know less valuable and the answer is well I think it's as valuable but higher education as we current think of it currently think of it is less fit for purpose right um but it wasn't AI that made the current sense of how to create software developers not fit for purpose it's just software is getting easier and he's always been getting easier and AI is just one more like step in the wow it's not as hard to be a programmer as it once was so will I be replaced by AI or it's it's kind of the similar kind of question right I think the fear is AI is going to replace me so I shouldn't even get started becoming a developer or programmer that's a that's a great question um I actually talked to lots of students and I talked to a young lady at the Apple Store she had just graduated and she found out I was a professor and she was asking whether she should go get a master's degree because she didn't get a job right she'd been out of school for six months and she didn't have a job she didn't interviews didn't get him I think there's a different question I think that you're going to have to get an education to be worth getting a job I think what's going to happen is the number of $200,000 a year jobs for just having a computer science degree is going to rapidly approach zero that's for that's there's two factors that are affecting that and well let's go to the tldr on this though the tldr is salary expectations for software developers are going to go down and I wouldn't be surprised if C Cisco and network Engineers the expected salary uh is not is not as high as relative to the inflation as it was say 10 years ago right the more we teach that's true the more the more there are and so yeah instead of expecting that you get a computer science degree for your computer science degree and you get a yacht a week later because of stock options um we're going to find that software development is a job it's just a job and hopefully you'll get benefits and you'll get decent pay and you'll be able to you know have a place to live and raise a family if that's what you want to do and have some dogs and go to Portugal in the summer and you know you'll be able to enjoy your life but you're not immediately going to own your own Island just CU you know C++ um and I think that's part the society and a part of Education that we got to figure out and that is that programming jobs are no longer these Top ofthe Mountain Gru kinds of jobs that are super highly paid so with a with the assumption that developers are not going to be paid astronomical amounts money it's it's another career choice and I think it's a wonderful career choice it's a career choice that doesn't require you to be out in the snow digging it's a it's a career choice that doesn't require you to get up at 5 o'clock in the morning so you can drive a snowplow and there's a lot of reasons to love it it is a very satisfying you know the stuff you've done over your life has been very satisfying it's it's safe you're out inside and air conditioning and and it and you get to go home to your family and you feel like you've done something something creative I mean I got into this because it was creative um not because I thought I was going to make $200,000 immediately and um it was fun and it was joyful and I think we got to get back to that but then there's this other side of that and you say why did that happen what happened and I think there are two things one is we've gotten better at teaching programming and we have more of them and just like CCNA there are more CCNA people now and so that means the supply is there but in particular and tell me if this is true in CCNA the problems that very wealthy companies need to solve are not as hard as they were 15 years ago yeah a lot of it's been sold yeah and so if you kind of imagine that you're Amazon and you're raking in a ton of money and you want to like say man wouldn't it be cool if I could just have a bunch of servers that were virtualized and I could just make money by giving a person for 12 bucks a month a fractional piece of this little server that cost me a buck a month that's a pretty good deal if I can sell something that cost me a dollar a month for $12 a month and if I can do that a billion times well that's 11 billion dollar a month right I mean it's really easy to just Stack Up computers and do it and so if you imagine what that was like in 2000 when someone imagined that they're going to sell fractional parts of computers to people you would say oh wow there are so many hard problems to solve I need like 10,000 phds I need 40,000 undergraduate bachelor's degrees and I need 8,000 uiux designers and I need uh 3,000 documentation writers and I need 1,500 QA people and I need whatever cuz this is a hard problem it's like building a rocket ship right and every little bolt on a rocket ship is hard to build so companies like Amazon took their prodigious revenue and created these moonshot software development activities and you know as they developed it people did things like built Docker and they're like if you'd have like time traveled back in time to 2000 and showed people Docker they'd be like yeah you're that that's never going to happen that that's that is such a hard problem to solve it'll never be solved no computers are so hard forget the whole Docker idea that's a dumb idea virtualization no way not GNA happen right that's too hard and so not only did it did wealthy folks solve it then like cheap imitation Solutions like doctor and other virtualization mechanisms made it available so you can have like a server room in your house and you can you can subset your little seat CPUs to whatever things you want to do and have 12 virtual servers like just sitting on your dresser at the and and it and use an open source software right but once you're done with that that was foundational research in Hardware in software in performance and iteration after iteration after iteration if let's try this oops that was good bad oh yeah that was good then I try this and try this I mean billions of dollars of iteration but then ask yourself forget AI for the second ask yourself Google Facebook like Facebook no SQL the entire sense of how to scale a database we had a billion dollars spent on nosql databases which in my opinion are a complete waste of time because the whole nosql experiment was nothing more than improving the understand in that relational databases had about how they're supposed to scale and after 10 years of creating all these nosql databases and having them crap and then having them get a little bit better and a little bit better and have people use them and then give up on them postgress and MySQL just stole the best parts of MySQL and made themselves better and now we don't have to do that it was a billion dollars to figure out how to make postgress MySQL better and the whole nosql movement I'm sure we're going to get some flame Wars on this one but I think the whole SQL movement was just like a complete completely waste of time that eventually made relational databases better but now they are better they're better now guess what we don't need we don't need $200,000 people we don't need 10,000 $200,000 people then we don't need a bunch of 100,000 $150,000 people to support them and another 100,000 bunch of $100,000 people and another $50,000 people we just need a bunch of 70 to 80,000 dollar per uh dollar people to just make the next thing happen so this woman that I was talking to at the Apple Store she said I'm I'm down I'm depressed I mean I'm good at web design and I'm like it's okay you're going to be fine the entire worldwide web is a cesspool of Technology react is assess is horrible angular is horrible these are crappy half-baked solutions to a real problem that real answer like say docker will come in web applications and this young woman who just graduated from college 6 months ago I said pretty soon every single piece of technology on the web will need to be completely Rewritten because it's so lousy interesting you're good now you're not going to get $200,000 for it but you will be able to have a career doing the work of upconverting the crappy web technology that we use for every website on the planet today right and you can say that over and over and over again why are we using Java we could be using python well Python's not quite there yet but eventually every application in Java will have to be Rewritten in Python sometime in the next 50 years so that means if you're 22 years old yes you're not getting a job right now because we just laid off all these people from these companies but eventually they're going to age out and we're going to need people to convert all the Java stuff into Python and you are perfect for it right those people will retire and there'll be space for you and we're just a bit of out of balance we're just badly out of balance right now because of the lack of useful moonshot exercises in the technology space AI of course is the counter example to that the difference is and I don't quite understand why this happen so rapidly that AI AI went from a software problem to a hardware problem pretty quickly yeah and and if there's enough money in it Hardware problems yield way better than software problems right and so if you look at Nvidia and they figured out how to build these CPUs and okay you got four CPUs then you got 40 CPUs then you got 400 CPUs next thing you know your watch has 400,000 CPUs on it I'm like holy crap and then like you know every Apple that's ever sold is more powerful than a whole semi- full of Intel processors and so the hardware part of that and Nvidia is being very well rewarded for that the hardware part yields fast and that's one of the cool things right so um I knew a guy who worked for Apple God 2007 2008 and I said what's the future he says well I can't tell you the future because I'm not supposed to tell you the future but if you look at what Apple's doing you can maybe guess the future and I said so what's Apple doing he said apple is hiring Hardware people and I'm like what you mean like for touchpads and stuff said no we're hiring people to make new microprocessors and I'm like that seems like the dumbest idea that I have ever heard in my life why would you do that they're like well Apple's got this obsession with power meaning that we just think the current processors use too much power and then he said the other thing is Intel doesn't want to change their architecture based on workload yep we want to make a processor that we're manufacturing so that when we detect a change in the workload that people are using we will change our microprocessors based on the profile of the actual user code so what's the difference between the M1 the M2 and the M3 they profile a bunch of code now they're profiling AI code so that's what I'm saying is Hardware yields faster and the move to the arm-based architecture with just continuous expansion and extensions and just the I mean they instrument these things so carefully about power usage for certain algorithms and that's why Apple's got a new processor like out every week that Intel refused to innovate right so Intel's now out of the business of doing the Innovation Nvidia is okay because they're making the even faster stuff but Apple's going to slowly put them out of business because they changed their microprocessor because they have so much data about how we use these things and as they give us AI features then that's going to inform all their Hardware profiling and that's going to what tell us what the M5 is and what the m6 is and what the M7 is and I I'm just amazed at how quickly the software came together around all this stuff it is it is amazing so the cool thing it's amazing the bad thing about it is there's not a lot of $200,000 jobs in it there really isn't because people are working on the applications of AI and anyone who's learning about how to apply ai ai to any number of problems I think that's a great skill right and that's a skill that's going to be good for the long term because using AI is something we got to figure out but the core like models and stuff man that came together fast and so that's where you didn't need a 15 years of a billion dollars worth of programmers the way we did for Amazon web services or Facebook database you're not selling it Dr Chuck um not oh that's a good point I'm not I'm reducing expectations is what I'm doing um but I I also think that as I talk to young people you know they I mean I have a son who's a young people and a daughter who's a young people and um their expectations of what they want out of the world is just different they always say that the next generation is the first generation that's not going to be like way wealthier than the previous generation you know my generation is a generation after the World War II generation after the World War II whatever I don't know what generation I am but the point is is that I am wealthier than my parents were that's for sure um and that's because I I moved into a world where there was a demand that wasn't being supplied and my entire career was technology which was expanding throughout my entire lifetime with with I mean I started working when they didn't have fiber optic now I watched a guy pull fiber optic into my house that's a quarter mile long and I'm talking to you over two two gigabits yeah exactly and it's very reliable and it doesn't care if it rains right y when I started there was no fiber optic we were arguing whether multi mode fiber or single mode fiber was a good thing and they're like well multi Mode's better because you can plug them together and you don't have to fuse them then I watch this guy I can send you the video on this I watch this guy like have a little box this big it's got this microscope on it it's got a laser on it and it's got a polisher on it and it's got a bunch of Servo Motors on it and you know this guy just sat in my backyard on his knees in my grass and fused a piece of glass that was tiny little single mode fiber and when it was done it sent light through it and said that fuse was bad let's cut another one it fused it again and said that fuse is good and then it put the little wrap on it and you got all these I mean it's so beautiful but when I started we were lucky to get like 128 megabits out of a phone line because of the impedance and and the you know you know you know DSL and ADSL and ISDN and all that stuff but my career wasn't exp I mean the internet didn't exist when I started right and so these are all things that led to an expansion of the demand of the talent that I had and everyone else in the market with me had that was expanding it's not now the applications of things are going to keep expanding because there's always new businesses people got to you know get money do inventory control uh come up with ways to interact with their customers in better ways and that software is never quite done right so that's applications versus operating systems and networks and stuff like that so you're right I'm not selling it but I also think that it's all going to work out in the end because um I think that the younger people will end up with a better quality of life they will get less money but if the if Society can work out some of its current issues they can live a good life I mean and I would say this to some degree is a a Europe versus US comparison and that is that I think Europe is a couple Generations ahead of the United States in that this notion that every generation has to be twice as wealthy as the previous generation that's not quite the same in Switzerland for example the people in Switzerland and the current generation has a good work life balance they walk up and down Mountain right they work and they walk up and down mountains America is the place where you know America and other emerging economies like you know India and Africa is this one that's got this obsession with every generation has to be greatly wealthier than the previous generation but more mature uh cultures and economies like uh Europe and Iceland and all those places uh they don't have this notion that that's somehow a failure the success is if people live a happy life and they enjoy the life they want to live and they have time for work life balance and so I mean you know we in the US have a long way to go before we accept this notion that everybody has to be super wealthy and if your parents are wealthy you have to be wealthier because it it doesn't work that way I've got to ask you Dr Chuck the um you've mentioned this before but I want to get an update because it's been a long time since we spoke about it you teach in University degrees is One path but you've got the master programmer which is a huge benefit for people who perhaps can't go to university don't have the money or whatever so perhaps you can tell us has the master program are changed how do I start it is it does it cost money you know how does it work well so the ma the path of the master programmer is effectively my personal curriculum that would replace a computer science degree if your goal is to become a programmer and I have basically 10 10 three credit courses think of it as about 30 credits it'd be about one to two years Community College part-time so a person could finish the master programmer path in one to two years halftime meaning you can keep your job you can take care of your family you can do it at any age and it it's designed to cost very little and the only cost and I'm I'm making some stuff up that doesn't exist yet but the the vision of the master programmer is the only thing that you pay for when you're taking the master programmer curriculum is um teaching assistant and so you can if you are so self-motivated that you don't need like a helper to bounce ideas off of them then you can just take the course and you just have to struggle and you have to learn it on your own which is not the best way to learn but if you want like a a guide that you know you've been working for a three hours and you just want a little hint or something you go to the teaching assistant and you ask and so I think that the the the credentials should be free but the thing that will accelerate your ability to go through the credential is support little bit of AI a little bit of human um but sort of something that so you don't feel alone when you're learning maybe a cohort even then the idea is is who is going to produce these credentials and what is going to be the the credential that becomes the one that signals value in the marketplace so we have credentials like corsera and we have credentials like edex those credentials themselves are kind of like a a mixed bag collection some Corsair credentials are valuable and Signal well and others don't um others are just stuff that's kind of been collected and I think ultimately what has to happen is that universities leading universities like University of Michigan Oxford Cambridge have got to come up with a way to Brand these kind of sub deegree less expensive sub degree credentials we'll still have computer science degrees but but I just think if you come back in 20 years and you say you had a LinkedIn profile that has 25 corsera badges or three University of Michigan badges if we do the right thing and those credentials are well built and carefully done and carefully curated I think that the a University of Michigan based credential in someone's portfolio will have more credibility than a bunch of Corsair certificates Demi etc etc and so as a as a person in higher education who is interested in the good that higher education can bring to the world and make a little money on the side doing it um I just think that this is really important and I have been aligning the path to the master programmer to to be part of this space even though the space doesn't exist yet right so I'm just imagining a future where universities are giving people lowcost credentials that are lowcost high value a great price price to Value ratio um and so I'm trying to present the master programmer as one of these early I mean I'm I'm just always ahead of everybody I'm just like in 10 years this will be commonplace and I just want to be the first one so that you know the second one or the third one or whatever and I'll just tell you that on the campus at the University of Michigan where I'm at there is a lot of conversation about this there's a lot of conversation about this and and and recent events um perhaps make this conversation more important um we talked earlier about how uh Amazon's demand for a billion dollars worth of programmers per year is not there anymore in the United States we have this thing called the H1B and it's great it allows talent to immigrants to come to United States and gain naturalized citizenship and be part of the you know billion dollar attack on a moonshot problem at Amazon those are not so valuable anymore I mean I mean it's not instant but we don't I mean it's it was kind of like a convenient way for us to extract knowledge intellectual Talent out of all these countries the best and the brightest come to our country and stay and it let us be ahead of every other country by a decade because their best and brightest didn't stay home yeah they came here but they came here for a $200,000 job they didn't come here for a $70,000 job because they can get a $70,000 job equivalent in their own economy without coming here and having three generations of savings to pay the tuition from India to University of Michigan and so I also think that part of this non-degree credential is a way for us to continue to educate as a university our goal is to educate and educate as many as we possibly can which is our tiny contribution hopefully to making the world a better place if I was a medical doctor and I ran a hospital I would say to you my job is to make the world a better place and I'm trying to figure out how to make hospitals work better so I can make the world a better place well my way of making the world a better place is educate better and so I think that we're going to start seeing not just like oh that'd be a nice idea Chuck that's Prett pretty cool that you can educate anyone anywhere in the world and you can assign a University of Michigan credential to anyone anywhere in the world at low cost be amazing y I think in five years you're gonna come here and you're gonna like any University that's not doing that is a fool because just the nature of especially United States higher education things are changing again I'm kind of taking it through a technology lens right but technolog is where most of these people come to the United States to get H-1B visas and as that becomes less and less valuable and it's not that people can't get H1B B visas anymore the problem is is once they graduate the companies won't then sponsor their H1B employment because there are so many people from United States of America that can take those jobs and it's a pain in the neck to do H1B paperwork but if it's your only choice then companies do that so I'm just saying that the demand Market internationally is changing and so for me the master programmer sub-degree sub-degree non-credit credentials are all part of like a fut I'm envisioning a future world and how can I as an educator educate in that future world that's amazing what's what have you got today though so let's say I want to start today we're going to re repeat some of the stuff we've done in our previous interviews but just for people haven't seen them are there courses available and what are the courses so the the path to the master programmer I have spent the last decade on Corsair building what I considered um intro classes and so when I would get done with one intro class class I would go build another intro class and when I get done with that one I would go build another intro class because you hear me talk a lot about welcoming I want to say you know you want to learn some database welcome welcome to the most accessible database class on the internet you want to learn about request response cycle welcome do you want to learn about the internet good and so my whole goal has just been to welcome people in the problem is is I've have five really good courses on corsera Internet history python for everybody web applications everybody Jango for everybody postc for everybody five really good courses that most everybody with enough patients can take they're not prerequisites to one another and so I would meet students that would take all five of those classes and they would say what job can I get I took your class this is your curriculum I mean this is your degree I took five your classes it's the degree of Dr Chuck corsera and I'm like uh you can't get a job with that stuff that's nowhere near enough and then I'm like oh wait a sec Chuck what are you saying you're like you you spent a decade of your life building all this stuff and and now you're admitting that you're they can't get a job from your stuff they could get a promotion from my stuff but they couldn't get a job right if they were like if that was the only education they had and they're 19 years old I can't tell them how to get a job with all five of my courses so that's where the path of Master programmer comes and the key the key idea is to come up with the shortest set of curriculum to get to the point where they're ready to hire and um so then I said okay I I I got to make it a short curriculum I can't make it a long curriculum because that's what a computer science degree is is a fouryear curriculum with way too much stuff in it and so I came up with originally was four courses and now I came up with five courses and the five courses that and the key to these courses is these courses have prerequisites and these courses built upon one another and I'm not expecting a million people are going to finish all the courses because they're going to get more difficult they're not just more beginner courses they are Advanced courses to the point where the last course is going to get you ready to work and so this is here's the courses the the the first five which are all beginner courses python Jango PHP um postest and the internet those are just kind of take them in any order then the next courses are C but it takes prerequisite in minimum python then the one after that is hardware and that why I've got these cameras in my office so I can hold on I'll show you that's camera five so now that's camera five so someday when I'm teaching my Hardware classes we should have got some Hardware here I want to be able to teach a class and I you probably have done this in some Cisco stuff right where you grab a router and you're like and then you plug a cat 5j into this thing and then another thing goes in there and and and the packets come out and so um you know a hardware class so there we go that's that's my hand handheld instant cam oh and here's my here's my wide angle shot and then back to myoc middle of camer shot so so here we are so hardware and I'm building my stud home studi so I can teach breadboarding in my Hardware classes um and um then I decided on a JavaScript class I'll come back to that JavaScript class in a second um and then a jav a class and then a uh internship class and um The Internship class is a a kind of a blend between work I chose Java over C++ because it's free and um I I just I can't in my heart prepare Microsoft people because that's not a bad job and if you are that then great you're probably making a lot of money because but open source free open stuff that's that's that's what I that's what I teach with so the one class that I added to the pth master programmer was JavaScript and if you go back to all my stuff I talk about four years ago JavaScript wasn't in there and um JavaScript wasn't in there because I thought that JavaScript was a wretched garbage dump of software not to put too fine a point on it I feel like react is wretched I feel like angular is wretched I feel like zelt is wretched I feel like Ember is wretched wred wretched wretched right go back backbone there's all the things jQuery was good but we don't use jQuery anymore because the browsers to the jQuery but here's the deal and this is the first lecture of my JavaScript class and that is the time is coming when we're not going to use any framework in JavaScript the Java the framework free moment just like jQuery I mean it it took me a long time to let go of jQuery I loved it so much thank you John resic right Jake query made browsers safe for programming for 15 years but the time has passed and it was just a crutch it was a crutch to understand use cases and a crutch so that we could write software without waiting 15 years for the browsers to catch up people may not it may not seem like it but react is the exact same thing react is a crutch because the browsers are not yet capable of meeting our needs and use cases except that the the thing that will destroy react is on the horizon and it's coming towards us and it's called Web components and and what web components are and what react is and what angular is and what Java server faces was before it in the server was the ability for us to capture sure our application functionality and render it as a single tag with a few attributes so think
2025-01-08 17:49