 People who are trying to kind of probably at the beginning of their career or maybe you aspiring to be at the beginning of their career and So this is not a this is not a I gave a talk two days ago about creating apprenticeship programs So this is that'd be a talk at people who have that kind of authority and power to be able to create apprenticeship programs There's a hiring mechanism or an onboarding mechanism. This is this is basically career guidance for new programmers so It doesn't mean it's only like if you're not a beginner like you should leave I'm just but this, you know, obviously just kind of repurpose this for your own like mentoring or coaching that you do or a team leading or whatever it is With with developers So yeah, let me get into it and just talk a little bit about a little bit about my background with this My apprenticeship story so I was like like like a lot of people in software development kind of late to the game in my mid 20s is when I switched into technology and learned HTML slowly slowly switched into technology learned HTML 1999 and joined a little education startup near Chicago in 2000 and and as a content contributor and HTML editor and all that good stuff and then in order to keep my job as the dot-com bubble burst I Needed to learn pearl And that was like a one of my big first opportunities to become a programmer Started apprenticing quote-unquote into that a really good book called software craftsmanship and Like I said before if the if you're not somebody at the beginning of their career where this is applicable to Hopefully just putting names on these things helps you be a better coach and mentor to new programmers So I'll just kind of take it through. I mean these these are the time We're gonna be going through and I'll just gonna take it take it one at a time any any questions at this point We've got a nice small room so you can be really interactive if you guys want no questions. Okay, okay? so one of the most important things that an apprentice that somebody knew in my opinion needs is very concrete skills and And especially in the context of somebody who's getting into software development without really any credentials, right? Maybe you maybe maybe you've gone through for your degree a degree and you maybe have a bunch of non-concrete skills like a lot of theory But you have but you have that credential that you can kind of wave and somebody's gonna hire you because of it In this the context of this pattern is that you need some concrete skills to get a job, right? And so you nearly need to focus on skills as an apprentice that can make an immediate impact on the team that you're getting hired into Maybe you don't understand the deep theory of algorithms just yet, but you know you understand how to write ant scripts or you understand how to Debug unit tests that keep failing These are the things I want one of the where I work right now at Dev Bootcamp one of the Kind of motto is is we want to get people good enough so they can get paid to keep learning And that's kind of what you're looking for here with concrete skills You need enough concrete skills to validate or like to So that you're not so that you're able to make some contributions while you're continuing to fill your knowledge gaps And so you're trying to err on the side of skill versus theory in this case Which is you know and so in the short term that works in the long term you need to get that theory, right? And but this is a way to so that you can actually have it get paid And then like get experience and get you know time in the trenches with other software developers who are more experienced than you While you're getting that theory the next the next pattern is your first language and Venkat's talk was was just awesome. He's such a great speaker and And it and he's totally right that you should try to learn a new language about once a year or so And he even mentioned blob programmers I Think as a beginner you you should actually allow yourself to temporarily to be a blob Programmer and just let yourself fall in love with that first language Where I where I where I teach and lead right now day to day There's a bunch of beginners every day. They're learning Ruby and they're always distracted by JavaScript right and And we have to kind of ask them to just focus right if you're learning a brand new language You really need to let yourself become fluent in it before you start like dabbling with other languages at the same time And so that's that's definitely a and new programmers are enthusiastic excited And they want to learn five new languages all at once and that tends to not Work out very well. And so the concept of the your first language pattern Is it just really allow yourself to just focus for a year or more on one language? I this was me with pearl for the first two years It's all I knew and I was told I was a total blob programmer I thought it was the only language I'd ever need to know was pearl because it can do it all right I mean of course every language can do it all for the most part And I got but with the other nice thing about that it let me Kind of immerse myself in that community as well like just let myself be in the pearl community And then it was you know a couple years after that that I You know kind of poked my head out and looked around in the wider software development community and learned Ruby and learn Java and And stuff like that So I mean as as you're talking to or as you are a beginner Allow yourself. Yeah, just help people. Yeah, just focus focus focus on that language Let let them let them be immersed in it for a year or more And then and then empty your cup meaning your cup was full right of this language's knowledge And now it's time a couple years down the road to just empty it out Take what take the idioms that you've learned that Venkat was talking about and then pick up your next language Okay, this was actually the first pattern That that kind of got me started on this journey I was reading a blog post back in 2004 2005 That was quoting the this musician named Pat Matheny who's I'm not much in the music, but he's a Really well respected guitarist and you and somebody was asking him What advice would you give an upcoming guitarist or a new a new a new musician and this guy said be the worst try to be the worst Guy in your band Right meaning don't try to be the worst like don't try to get worse than everybody else Just meaning get into a band that's better than you and that and at the time that was really and like it hit me really hard because At the time I was I was trying to get out of the company I was working for and in do better companies, right? I was trying to like move move forward with my career And even though at the time I'd only been programming for a couple years and I was like a senior application developer and But I obviously if I if I was only programming for a couple years and I was already a senior application developer I'd reached a local maximum basically. I kind of there's this kind of local company I'm working with and I kind of reached the peak already and and being the worst means Taking taking a look around and finding an opportunity with a higher peak or people are much, you know are kind of a Couple levels higher than than the best at the company you're at And that's hard because I mean I had to start at the bottom again I felt like an idiot when I joined ThoughtWorks and this was basically the my ThoughtWorks story It was like trying to be the worst again And that was you know, it was actually really stressful, but but ultimately And that first six months or so was again. Yeah, really a lot of a lot of dissonance and feeling like an idiot But ultimately a really good thing So be the worst Yeah, obviously kind of counterintuitive counter cultural because you tend to want to be the best but Ultimately really good advice and feel free to add your own stories if you want to raise your hand and just share them Stay in the trenches. This is definitely counter cultural especially I this was like a In hindsight felt like every day. I had friends who were taking promotions to management or Or going back and getting an MBA and things like that and I just felt like I was fighting that that that tendency and And it's to certain extent it was easy for me to do that because I consciously switched when I was 25 26 years old into programming and I did that so that I'd be could be a programmer not so I could be a project manager But it's still I mean like in at least in the US I assume it's the same same way here like getting promoted to management feels like you're doing something right that it's you know You've achieved some sort of success or you've been validated as a good worker and I Just got to say I mean and in the basically that the the story to this is that taking your first opportunity to Into management to get into management is not an inherently good idea That's saying no to that opportunity is often the right the right choice Because we need more awesome software developers, right? I right now in the in the world that I live in It's not about it's not as much about management as it is about entrepreneurial entrepreneurialism People want to be entrepreneurs, which is which is great. And if you haven't that entrepreneurial Tendency it's always going to be there But that but honing your craft to becoming a better software developer is something that takes time and it takes it takes it takes decades and My advice to people who kind of have that tendency to want to kind of want to get out of software development As quickly as possible once they achieve some amount of of knowledge is to just just stick with it and your Entrepreneurialism or your leadership abilities are just always going to be there and they're going to bleed out But just get awesome become awesome at software development before you consider widening your focus And again, this is this is an apprenticeship pattern. This isn't true, you know all the you know for your entire career, but It can be if somebody's you know making great progress or has made a good name for themselves in their company It's only a year or two down into their apprenticeship years You know, it's definitely a pattern to try to stay in the trenches Nurture your passion, right? Not everybody gets to work at the coolest company on earth and not everybody gets to Feel fulfilled every day with their eight nine to five job Now Frederick Brooks wrote this awesome book called the mythical man my tonight. I love quotes and I love this quote Because on our best days as software developers, hopefully we feel this way, right? That we are we are getting paid to do something that that we enjoy It's not true every day and some and sometimes there's entire years that go by where you don't really feel this way But it's really important to nurture your passion. I would imagine that at some level Some of us want or all of us have wanted are attracted to this profession because it's fun We like making things and software development almost more than any other field the barrier between us and what we're making is so So low, it's it's almost non-existent. We can basically have ideas and make them with very little resistance So, yeah, so it's important in order to In order to keep that that product that forward progress with you know with your craft to nurture your passion Because if you're hating your job every day or if or if you're becoming demoralized as a software developer Why wouldn't you take it a job or a promotion to management, right? I mean, it's just more money I mean you might eat, you know, it's not like you're enjoying your job that much anyway So nurturing your passion and this is super important for me when I was working at this company for the three years But during the kind of the dot-com Dump dot bust I should call it To kind of keep my keep my forward progress and and some of though There's some other patterns that I'm not focusing exclusively or I'm not focusing as much on right now But two other patterns are kindred spirits and study the classics So kindred spirits is a pattern of finding peers not not mentors, but just peers people that are Approximately at your same level and and getting together with them and being connected to them and just like so what for me that was this was having lunch once a week with a guy that in Chicago that That worked at a different company, but we would get together and we would complain to each other about our jobs Or we would pair with each other and this is when I learned Ruby was was was having pizza with this guy every week and we would we'd pair program and eat pizza and It definitely you know kept kept my my spirits up and kept my forward progress with the learning Another big one for me was studying the classics right I had gotten I'd learned enough pearl to kind of be employable But I had tons of work to do to go back and learn software and like the principles of software engineering and and the computer science and so for me Studying the classics was a great way to nurture my passion because the great thing about books in general is they show this beautiful world of Where like you know reading Martin Fowler's refactoring book all the refactorings work perfectly and everybody is smart on the teams And it just sounds awesome and the same thing was like people wear or or other books Or anything that J. Ryan Weinberg reads it all just sounds so wonderful and it gives in as an optimist It gave me hope for the future that I could maybe work with some of these people or Or whatever in or you know Yeah, I don't know it just gave me hope so studying the classics was really helpful for me in that way and for lots of other reasons So nurture your passion really important An obvious one is finding mentors Although it's not necessarily something that we tend to learn growing up We're basically just handed our mentors or our teachers, right? We're based there assigned to us and we to them But it's an important skill to Take matters into your own hands as an apprentice and find and find a mentor This is difficult for me I grew up very shy and so reaching out to Authority figures or people that I looked up to and asking them for help or trying to establish a relationship with them Was was difficult but really really rewarding and it wasn't and so for me like the first time I did this was I went to like an agile user group in Chicago and I noticed Or I just yeah, I got to know the um the guy that was in charge of it and just asked him Hey, hey, can I can I take you out to breakfast, you know some week and then we just turned into a pattern or a We would just do that periodically like I once every month or every two weeks And it made a huge difference to me just in my confidence. We didn't even code together He was just he was teaching me about agile and helping me prepare for a presentation to like upper management And it's just it gave me a huge amount of confidence to that that he took the time to do that And and and as part of you know Validating these these these patterns. I talked to a lot of people it within ThoughtWorks when I worked there and interviewed very very Kind of noteworthy people mid-level people and junior people and all and it seems it seemed to me that All of the very senior and accomplished people that I talked to could always point back to one or two Mentors that you know that made a difference to them along the way And that so that was obviously very validating and I know that's true for me All right, so here's another kind of counterintuitive one Expose your ignorance right which is something we all naturally want to hide because it's we don't want to feel stupid But Jake Scruggs is a Chicago software developer who was an apprentice. He was actually a high school physics teacher Turned turned software apprentice and now software developer. He how many of you guys have heard of Uncle Bob Yeah, so object mentor was where Jake Jake Apprentice and so he was surrounded by Uncle Bob and and Uncle Bob's crew back then And Jake says you know tomorrow and this is his this was his like journal that he was keeping during the experience Tomorrow I need to look stupider and feel better about it, you know Because he was doing what a lot of us have done in the past Which is staying quiet trying to figure things out on our own and not letting people around us know that we have No idea what the heck they're talking about fortunately for me like I was trained as a as a therapist in You know and trained in psychology and and asking stupid questions was basically what I learned How to do right just like ask like I have no problem Asking asking kind of the stupid question and that was a huge benefit to me as a software developer because Especially as one who had no formal training But even if you do a formal training you're gonna show up on a job people are gonna be using words and concepts That you have no idea what the heck they're talking about and you can do one of two things You can ask them what they mean and risk-looking like risk-looking stupid or you can like silently Hopefully make note of what they said and go Google it later Or you'll probably just forget about what they said and you and it's just basically gonna slow down your learning And so what I've heard or what I've what I've experienced is that Exposing your ignorance is another way of saying exposing your learning process to the people around you And it's hard at first, but once you are once you've established that you can learn quickly like you get a reputation for that and That's a really good. That's a very portable reputation, right? If if you could be known as a good Java programmer or a good Ruby programmer, whatever it is But if you're good at learning things then you could do a whole lot of different things So difficult at first but once you kind of get over the once you get the hang of exposing your ignorance a really powerful pattern and Worked really well for Jake. He I think he did he did try to look stupider the next day And he got to go from object mentors apprenticeship He got he went straight into ThoughtWorks and he worked at a company that I was at called up Tiva And now he's doing other interesting things as a senior developer in Chicago So on the flip side of exposure your ignorance, which is a very You know sometimes a very awkward feeling and it creates dissonance in you sort of Pattern is retreat into competence, which is kind of a comforting pattern And it helps you cope with your perceived incompetency like at the end of the day Maybe it's been a year or something that you've been kind of you know trying to ramp up into software development And you come on when you feel like an idiot This was helpful for me to every once in a while just retreat into competency meaning I know how to do some things I do I do know how to do a couple things. I've learned a couple over the last year. I'm just gonna go do those things, right? I'm gonna go start a little project Because I know how to do a little bit of TDD and I know how to make my test screen and or whatever it is I know how to slurp down an XML file from the web and Pipe it into a database or whatever it happens to be And it's yeah, it's a really simple concept and but it Apprentices need to be reminded of this because The you know they'll tend to just be hungry and hungry hungry hungry for more and they'll forget to take care of themselves Along the way, so retreat into competence is an important one Breakable toys, this is something that Venkat just talked about We can all benefit by doing occasional toy programs It for lots of different reasons the one that Nuth was talking about here was Creating artificial restrictions on yourself for which it was kind of fun right in a strange way like I don't know Like I'm gonna write a program that has no ease in it or something Or I'm gonna write a program that doesn't you know consume more than X amount of memory In it for apprentices, it's to you know breakable toys Lives up to the name. It's a place where you can take risks as it can be it can break You know you spend all day trying to write code that's unbreakable or very robust. This is an opportunity to Write code that is risky and and is posse and it's possible You know quite well possibly break if you put it in different contexts And and one of the most important things about it And this is why it's a good technique to keep with you for your entire career is when you learn a new technique You tend to you get if you get infatuated with it like Venkat said and then you overuse it And this is the right place to do it, right? I learned about Redis this data store, right? And so and I fell in love with it. I was totally infatuated with it all data should live in Redis, you know, because it's the greatest And so I just I knew enough to know that that was kind of silly But I wanted I needed to kind of scratch that itch. So I made a project. I the only database and it was Redis and It was totally silly, but I learned a ton about it and in the process I you know, I was able to take even though that project was basically a throwaway Even though it was somewhat practical and kind of Going after a problem that I was interested in on the side I was able to take a lot of the stuff I learned about Redis and actually Take it and use it on my day job And this was just you know a year and a half ago So but but for apprentices, this is even more important because This is probably their first safe place Where they can kind of stretch their own own wings a little bit So breakable toys Again something that is pretty established. This is just a lot of these patterns. It's just about putting a name on it All right, and then share what you learn Basically, you know up at the the blogging pattern or the tweeting pattern Or or they give a give a lunch and learn sort of talk pattern you know The company I work for right now is called dev boot camp and it's it's a it's a place where where students come and Take nine weeks and get up to basically becoming an employable software developer or an apprentice a bull software developer and one of the one of the one of the best parts of Watching that process is watching the students stand up and teach other students things Which is great and it's just like it's great in many levels, but one of the one of the best parts about it is The fact that it's reinforcing something that they've are they've just recently learned The other great thing about it is it's sometimes hard for me who's been doing this now for 13 years To speak at the same at the correct level for somebody who's you know just started doing this if you know within the last year And that the yellow belt to white belt it I guess pattern or concept is something that I Learned while I was doing martial arts, which was all right Well, there's this black belt in the room, but I'm a white belt and it seems like the yellow belt's the one giving me a lot of The lessons and that's because the yellow belt can speak my language and because It's almost a waste of the black belt's time to spend time with me and so yeah, that's another it's another nice aspect of Share what you learn is just that the yellow belt a yellow belt sharing what they learn It's it's gonna be generally pretty digestible and easily digestible by a white belt Which is obviously the apprentice So that's the ten patterns. There's dozen more in the dozens more in the book And there's does I'm sure there's dozens more That we didn't talk about Since in the four years since we Published it. There's been you know the people have blogged about other other patterns that they've they've discovered So there's that this is I mentioned Deb boot camp it's the company that I'm I'm a co-founder of It's a it's kind of a it's I guess there's a little bit of a trend happening right now in the u.s. And it's starting to branch outside of the u.s. Of of these Basically these these like short-term very immersive schools that are popping up that help meet the demand for software developers And it's a place that it's kind of the target audience for my book, which is a nice thing If you want to learn more about it Does anybody have any questions or thoughts or? disagreements Some of this bad advice Yeah Yeah, you don't want a bunch of people at the same level you don't want a bunch of people working together at who our apprentices Like that's a different problem. That's a rate. That's a like a junior senior ratio problem Like a lot of this is all you know couched in the context of Yeah, like that there's that there's the right junior senior ratio and and and for me this was I Needed to for me to like go and learn about algorithms and I needed to get enough programming Language-level context in order to learn it Just because I didn't have the luxury or the I didn't show us in the right major back then to have somebody kind of Spoon-feeded to me a little bit more Do you other thoughts on it? Yeah Sure Yeah, and all all these patterns have a certain context I didn't I didn't go through like each of that one of the things I learned at plop was And then you can see this in pretty much every pattern language is there's a context There's a problem. There's a solution and there's lots of other Asp like attributes of patterns But that was the kind of the minimal the minimal attributes we had in ours was Context problem and solution and you're right I mean in general if you don't have the theory at all like Yeah, it's a question. It's really a question of how are you going to get? What's the best way to get the theory? It could be go back to school But that might not be an option for you. It wasn't an option for me I you know, I was already married with a kid and I just had to like get a job, you know Other thoughts Challenging the theory Yeah, that's true and there's It's definitely a pattern or an anti-pattern. I don't know what you'd want to call it but of you know young Enthusiastic software developers challenge like kind of challenging theories or thinking that they have just found the new theory No, you probably haven't but it's a great way to learn the old correct theories Yeah, I mean so the talk I gave yeah that the talk I gave two days ago was more about the apprenticeship program side of things And I think that is much more beneficial if it's so I think the ideal situation is when if a newcomer is hired They are brought in and mentored by people in the trenches at you know on the team that they're joining Over the course of six months, and that's that's a hard It's hard to find people that can do that mentoring and kind of multitask a little bit with having a beginner around and they have their normal responsibilities But it's in but if the company's willing to make that a kind of investment it works out wonderfully because Yeah, I mean if if you're kind of like hiring people shipping them off to get trained and then they come in There's still going to be this like Disconnect that happens and you might end up and it's it seems like a that's kind of an easy way of like onboarding like 10 people at once And then dumping them on to some something Which is an anti-pattern Other thoughts. Yeah I Think the most important thing is to establish feedback loops with them, right? and Ultimately the most important feedback loop we created in the apprenticeship program that I created was a six months like Your in or your out Sort of feedback loop that was important to me because you get attached to these people and it's hard to let them go But if they like for us We I mean it doesn't have to be six months But for us it was like that was the the biggest feedback loop was like all right You have six months to get up to like an entry level sort of position or whatever it happens to be for you and Then breaking it up into smaller chunk of time boxes inside of there It all the way down to I guess the smallest would be pair programming But the next biggest one would be like a weekly check-in that Even if you're working with them all day every day, it's still a time to just talk about how it's going So I think that's probably the most important important one Okay, cool other thoughts questions Dave Yeah, yeah, I mean I for me it's just yeah having to learn the theory Getting the learning the theory after learning to be you know learning to be a proficient parole programmer was I Just I couldn't imagine it was hard to imagine the other way I remember reading trying to read structure and interpretation of computer programs like you know just like six months after I started and it was just So difficult but then reading it again a year a year later much more approachable because I could just I Could think I could think it through practically, and I don't maybe that's not true for everybody, but it sure was for me I'm glad to hear you say that Other thoughts Yeah, I was just reminded there's a there's a Ted talk about actually from India I forget the name or anything but a teacher in Regular schools that put like five or six students in in groups Mm-hmm groups of five or six students in front of a computer Ask them a question that they basically don't have the premise to understand where they are from knowledge to understand And then ask them to like find the answer by searching Like you dump people into pool in a group so they can interact and Then have to find the answer together using you know the internet as opposed to teaching them like kind of more theoretical Things in the background supposed to like breaking it down I mean, I think the internet like allows for that sort of Approach I mean all of the one context of all this is this all happened after the internet or the web happened I don't know how I could have become a programmer Without like yahoo and Google So that that makes makes a lot of sense anything else Oh sure yeah That's one of them Yes on them on them on the more senior side of apprenticeship Creating safety is super important and it's a debut camp. That's one of the biggest things we focus on is giving people the helping people feel safe Ask it's it's naturally a competitive place where there's like you know 18 newcomers all trying to learn the same stuff at the same time But creating that safety is really important and one of the ways to do that That we would do that was that was pretty concrete that probably a lot of you guys could could do We would have a lunch and learn every week Which is a lot of companies do that and and somebody would come and talk about something learning And it's usually something new and interesting and a lot of people in the room don't know what deck they're talking about and the most senior people at up Tivo Always in like almost enjoyed asking the stupid questions even if they knew the answer sometimes They would have the empathy for the junior people in their room and just take the hit and just be like what does MVC mean again? You know or or asking those sort of questions It's a definitely a lead by example sort of thing Because there's I mean like yeah, I mean at any level at any point in your career There's always new things that you're that you could be asking questions about other thoughts other questions. Yeah 150,000 Yep, that's good advice. Yeah, I'm at a pattern That's good advice did you yeah, you have one other thing Mentor to be Right Right Absolutely Cool, well, thanks everybody. Hopefully this gave you some terminology to think about Appreciate the questions and the thoughts Yes People don't want to hear Sure, yeah, feel free to go if you want there's cookies and good things out there But there's so there's not maybe some more knowledge here So ask me real ask me like concrete questions What is debut camp? Yeah, so it was a company started in San Francisco in last February When somebody one guy knew another guy who The more senior guy said I think you should be a software developer Do you want to be a software developer and the guy is like I do I want to figure that out And then the senior guy was like all right well, I'm gonna go on hacker news and say I'm teaching this guy software development Does anyone else want to learn with us? You know for some money and He got flooded by all these people wanting to do it And that's how debut camp started in it and at the first first group was about 20 people And it's it was a a 10-week program at that point Where they would you know spent pay some tuition basically for the 10 weeks Go through the program and at the end employers are invited in to interview them and then the idea is to get them up to Employable of an employable level and almost everybody in that room I think everyone except one person got a job pretty quickly afterwards You know it taps it's basically tapping into a really hot job market basically And so over the over the course of the year that progressed a couple more batches went through And I got to know them over that year, and so I decided I wanted to start it in Chicago and so now the the program looks like this Basically, you know as a lot of us are aware there was a ton of online online resources and these massive open online courses that are happening And so there's all these people that are getting up to kind of dabbler status with software development web development And computer science, but they don't really know how to parlay that into something to a job And so people are tending to come into debut camp or applying for a debut camp with they know how to code a little bit But not like at professional grade level And that's and so so basically they apply You know they pay the money, and then they do two months of prep work right right now I've got students they're gonna show up on April 22nd And they've been working on learning Ruby and sequel for the last couple weeks on their own And then we're gonna test them one month before they come And if they're not up to up to the right level yet will delay when they when they start And we could do that because they start every three weeks in 18 person batches So they stay for nine weeks, but they're they start every that but a new batch comes in every three weeks Which creates these cool opportunities to delay people easily by three weeks, and it creates mentoring opportunities between the students Yeah, and we're basically teaching them the rails ecosystem Because that's just in really high demand in in the US right now And I assume that's you know, it's an increasing demand here as well Yeah, and I mean the results from last year were awesome You know over 90% of the students got jobs within a couple months of finishing With pretty remarkably high starting salaries and all that good stuff We'll see how well that translates to Chicago because it's up to now. It's been in Silicon Valley only so But half the students end up moving to the city in order to do it. It's not just local people It's about yeah half or more of them come from all over the country sometimes internationally Yeah, it's and these schools are and it's not just debut camp there's schools like this popping up in a lot of cities all over the place You're welcome other questions about it Okay Programmer and I want more rubies Yep We're thinking of going to colleges Weekly classes classes for them to learn Yeah, that's one idea we're thinking about That's important. Yeah, it's an important part of a community Yeah Or maybe you are in bundle So how would what what can we do to motivate people but is there a point? Why yeah, absolutely I mean listen to the stuff that Venkat was talking about before I mean even if they learn ruby And that's not necessarily there job the job that they're gonna get it doesn't it still helps them think differently But the model that this business model, which I didn't I didn't mention it's it's 40 hours a week of Training with the students and the students are there 60 to 80 hours a week So it's very very immersive, but they feel very disoriented at first because they're basically being immersed into a foreign language Space or like all this new lingo is being spoken at them all the time And that anyway, you know, I've got like two for every 18 students come in There's eight. There's two instructors with them. So that's all pretty expensive and so it all hinges on a Job market because the students pay some tuition They pay $12,000 and then the employers pay a placement fee Also and so that all that funds like that's that level of immersion and that many people in the room helping the students And we actually pass some part of that placement feedback to the student when they get a job So they get this like signing bonus that kind of helps Pay back some of the money they might need need to borrow to do it in the first place We're trying to we're trying to make it so that's more employer funded to cut down on that tuition on the on the front so Dave No, they don't this is I would say this is this is yeah, I'd say all the all the projects they were gonna breakable toys I Yeah, I definitely think there's there's space for that. It's just a matter of figuring out the economics of it Or you know, I were just figuring out it would look different I mean because for people to pay them as much as we're asking them to pay They need to see a pretty big ROI and that makes the most sense for pure quote-unquote pure beginners who might be making like They might they often they're getting a huge pay increase by by switching careers Whereas a more senior person who's getting up to the next level. It's gonna be probably a less It's gonna be it's gonna feel less so they're gonna pay less So it's just gonna be a different business model, but that's actually something that we're looking at And one of the ways we're doing it is by but once you create these like these overlapping phases between students There's a lot of mentoring that can happen between them Which should be able to cut down on an instructor cost and things like that a little bit So we're starting to play with that a little bit by having like a fourth phase that students can stay on as like TAs For free, but they're also getting like deeper training That kind of at the next level while they're looking for the first job and it's yeah, we're doing a lot of experiments Yeah I'm we're looking at it where our next city is gonna be So I've already had people talk to us about you know, when do we come in India? I'm not sure I'm not sure yet. It's all about to a certain extent the economics of it We're just in San Francisco in Chicago. So next year. We'll probably open one or two more cities Yeah, oh, I don't know. Yeah, that that was I mean it's the bottom of a boot So I don't know I mean Sharif the guy that started the company originally Must have come up with it. I Don't I have no idea. I should I should I should know the answer to that question though Yeah, we're sorry cool. All right. Thanks a lot