Hello and welcome to the Podcast I am your host Jesse Kennan and today I'm talking to Barty's strange So there's a reason I wanted to do this episode I have been friends with Barty's for a while as you'll hear in this and I thought his journey from somebody who Literally just over a year ago had zero monthly listeners to now being one of the most critically acclaimed artists has pitched work best Hundreds of thousands of monthly listeners press everywhere Literally made Rolling Stones spin all these best album lists and just has one of the most explosive Records of the year under his belt now I thought it'd be interesting to talk about the journey because his journey is actually, you know people would think oh Wow, that just happened overnight. He just made a good record. No, you'll hear in this episode He did so much smart strategy to get him where he is today And really just worked so hard doing the right decisions and doing little Incremental steps that got him there and we detail every little bit of that so that you can get an idea What goes into it? And you know, I'm always talking to you guys about community and how community is what builds an artist up This is one of the best tales of that and you know, I've been lucky to be in a community with Barty's for a long time and Truly he built up this career from who he knows in the community and we're going to get all into that So I hope you enjoy this conversation. If you haven't heard live forever his record I highly suggest you fix that immediately and other than that if you enjoy this video please like and subscribe and Make sure you get notified because we're gonna be doing more fun stuff like this on the channel. Hope you enjoy this here We go. So thank you so much for doing this, buddy I was we were just saying before we aired you were literally one of the last people I saw before we were confined to our house It's uh, we both recklessly went out and did one last show. Yeah, we did we did It was good to be here and thanks for having me and maybe that show shouldn't have happened, but it's okay We are we are here Everybody has a last show you were buying and that's the thing and yeah, you know, everybody's alive And that's what what matters definitely definitely So what I wanted to have you here today to talk about is I keep talking about you And I guess it's always weird to pay somebody big compliment is I talked about how you believed in yourself And you kept pushing for this record that has now gone on to a damn good amount of acclaim and success and Even though when you started out like, you know, I can remember looking get the page But it wasn't three digits of monthly listeners on Spotify and now it's a lot more digits than that And I wanted to talk about your journey so that people could understand kind of what went on to build this up To get where you are so I guess the first place to talk about is where you would I bet because I think that's even an interesting thing Is that you were in another band you? finished your record and Shortly after that records out. You're like, you know, I believe in what I'm doing in a different way And I'm gonna pursue it. Can you talk a little bit about that? Yeah, it was a very scary Oh, it's really a scary thing for me to do. Yeah, I played in a band called stay inside Which is a great band and it's also gone on to very do great Do great things But yeah Me and Chris the lead were one of the guitarists and singers in that band met on Craigslist and I worked with Britton Vishnu at MakerBot and we were all loved the same type of music and thought it'd be a good idea to start a band And it was a great band and we did some really cool things and they've gone on to do great things But yeah, I played in that band We recorded that record at your studio after we cut that record We played a little while and but at the same time I was always making all of these other things and I was also playing in like three other bands like I was playing in the country band Like I was playing for Melanie Charles. I was playing for this dude Stefan Marcellus who like got we played at the Apollo a couple times So like I was starting to kind of see like okay There's like so many layers to playing music like being a guitar player being an engineer being a producer Being the lead singer booking the show like I was learning all this infrastructure that I didn't really understand Existed you were really curious to like that was one of the things that really impressed me was that There's a lot of people who do that, but they're just like doing it to fill the time you were trying to find the answer I felt like yeah, well, I was like, how does this actually work? You know because I remember watching, you know, honestly, I saw so many great bands put out great music and nobody heard it Yeah, you know like it was just like over and over and over again bands And I thought we're just like ten times more impressive than me who had way more money than me even Who I thought were way more connected and then there were bands who I thought had really made it and now I'm realizing They really didn't make it They were just like the cool kid at the moment But in the moment everything felt so big and I felt so overwhelmed by music and the music industry I was just like I got to figure this out and so that kind of led me to play in all these bands and ask all these questions and and You know played a big foundational part and where I am right now Yeah, so you go out on your own and it's not even yet a different moniker. Yeah, right? Yeah So you're making this jump what I think one of the things people have trouble with is Like a lot of time though is it's like, you know the fear that's going into that jump What got you past the initial thing of like, you know, even like I know so many people please stay in a bed Just because they don't want to upset people like what was driving you under there? Yeah, so I'm like the most non-confrontational person you'll ever meet Brian knows this Everyone like if people who know me know I don't like arguing I don't like confrontation at all and the last thing I want to do is quit a band that I pretty much started After we finished our first like like full-length record I was like mortified and I love them also They're my friends great people like I love them each of them a lot and believe in them You know and they believed in me and that was like why that band had it's still together You know stay inside because they really believe each other I felt like I was letting them down and I was really afraid I was also afraid that I would quit the band and they would pop off It is that funny thing is like it's just that the unlikely scenario that you both popped off, right, right?  Like I had to learn everything like get here and then to process it and to know how to say it and then Who to give it to and to know like, you know, it's like you can't you can't do that when you're 24 You know, it's a hundred percent true and like I think people often, you know Like when I consult with musicians so many times they're like, oh, I'm too old to do this I'm like, do you look at the average age of a lot of people who do well in this? It's not 22 It's often late 20s early 30s and cuz like especially if you're doing, you know, your record is Complex blend of influences. I don't think anybody on earth could take that away from you and you don't get that at 18 I would I am sometimes shocked by how complex some 18 year olds music are But it is the rarest thing on earth to be able to do that at 18. Yeah, I wouldn't have been able to make it at all but I another part of like that journey was I Found myself wanting to learn more about like engineering and production and like mixing and because I felt like most records I had worked on or bands that I'd been in I never was Completely satisfied with how the record sounded and I and I also had like a weird thing with my voice where I was like I was kind of struggling with like being a lead singer like I had never been one before and I it was almost like becoming a lead singer was admitting to myself that I Was taking music more seriously It was like a whole like journey to being comfortable being like this is my band and this is what I'm trying to do It was way easier to just be like a guitar player, you know and just be like, yeah I just pull up but um, yeah like all those things were happening at the same time as I got closer and closer to writing live forever and putting it all together I Mean, I can remember it'd be so funny is like for the audience I'm a producer who will get you know I'll do a hundred takes on one line if we have to and I can remember you did one take that was like a Verse that was just like flooring and I'm like dude.  Yeah That was a huge experience for me because I'd never been in a studio with someone who could like who was with an actual producer Who would work with vocalists and and I got good feedback, you know someone being like hey, you're good at this You know And like you get those every so often in life and I think it's important to like listen to those moments and really internalize it because most people are not gonna tell you you're good even if you are That's totally true.  You're supposed to say the compliment worst I'm like, don't just say what needs to be changed first. That's not how criticism works Or how people's brains work, right? Yeah, yeah, yeah, you want to hear the good stuff first Yeah, if you want to know that it's something good And then I like after that session I kind of went on like a tear of like I'm gonna learn how to engineer my own stuff like I and I and that journey was honestly It gave me like the the real confidence Because I hit a point where I was like, I know how to make myself sound good.  I was playing some country music for a band playing a few other bands and I just started quitting bands I had a buddy named Sam Stuckey who was like, yo, you should quit your bands and just focus on your own thing More and more people were starting to say you need to focus on your own thing and inside like I was like I've always wanted to try this like and I think I have something to offer and I also had like some bigger like Artistic ideas that I knew I couldn't actualize in any of my projects and so I was just like well I'm just gonna have to take a risk and quit all these bands and try this and see if people like it And so I was just doing my side project and playing and staying side The side project was literally so I could just get reactions to my music and like see if people liked it See if it was any good it built to build some confidence And I started realizing like just as many people were coming to my solo shows Is there were coming to like my full band shows and I was like, okay, I'm gonna Invest in this a little more so everything I did was incremental like I never made like a big Jump and I think a lot of people feel like oh if I'm gonna do music I gotta quit my job or I gotta leave my girlfriend or yeah That was the a big part of sorts is you're still working during a lot of this you move to DC Yeah, I was working a very full-time job as a political consultant and a comms director at a climate organization and like Like doing it 50 hours a week really really doing it and had been for like, you know the last 10 years like since I was 21 years old And so, you know, I just had an engine like I really wanted to do it and that was also why everything was incremental You know But I but it was safe and I think that was like how I needed to do it, you know, like step by step by step until now So next part of the journey you put out it's one song just did a cap at first. Yeah in a cab So what so what happens from there? Yeah, so as I kind of was getting demos together I mean me being I mean, I think I'm a kind of like socially savvy person And I understand that relationships are important to being successful in any aspect of life And so I started kind of looking around to see who was doing things bigger than me and a lot of bands I realized we're working with a woman named Jamie Coletta and I Just literally started following her on everything I sent her a bunch of music from stand side over the previous two years But she never really was into it She was always busy and she also had a job at the time But around the time that I was getting my demos together She had left that job and started her own firm and I wrote her like the magnum opus email of like, please believe in me I think I have something here and like sent her in a cab and she was like Okay, I can't commit to the record But I can work with you on this single and that was like kind of where it all started and like we did The single and I think she was even surprised by like the feedback she had received and she was like Yeah, we should work on the whole record together And I went and made the record and then like we started like she introduced me to an idea that I hadn't heard And it was an idea that I also read about in your book was like Building a team around your music and not thinking like oh cool. I have a few songs I need a record label like thinking more like, okay I have a few songs How can I best position these few songs to do? Well, even if I don't have a record label or a booking agent or any of these things like what are like the crucial pieces to getting me to like the next little baby step and Jamie like played a huge role in helping me like actualize that like getting these people incrementally over literally two years Until we release the record and that's another part people don't know. Yeah, that's that's what I really want to focus on Like you put out this first song some people start to notice you the numbers start going up I mean, I remember wanting to listen to the song again and hitting play on Spotify and be like, oh, all right You know, there's a lot more people tuning in but you so you go to make this record Do I remember you got like a a grant for the house or something? Oh, yeah So my buddy Carter his brother runs a nonprofit called thinkolio and they were they were just like Yeah, like you can cut the record like up here in the barn. It's a artist. It's your residency kind of thing But you know, they they helped us out They gave us a place to record and basically like Brian and I Brian D'Amelio We were like, okay Like I had gone on this whole thing about like, oh I got to find like a producer and I got to find like this fancy engineer and I did all this research And then I was like, hmm, I'm gonna do it myself with my friends Because I started getting a better under the more I recorded stuff the more I realized like the real thing You need to make a great record is time period like one great microphone and a bunch of time I could make literally anything and so like part of the recruitment philosophy Yeah, and I was like, well, I'm gonna give myself the most time possible Which means I'm not gonna pay anyone and I can't pay anyone a ton of money because if I was paying a ton of money I'd have like four days in a studio to cut all this music and this way I had like 10 days plus unlimited time You know, it's my friends and I'm giving them points anyways and whatever like that's just how that's gonna rock Pay to pay them what I can and give them points. And so yeah We all we hauled all of our gear up to a safe New York Put it in this like little like converted barn like studio apartment that they Airbnb at sometimes and it was like Me and like every person I've been music with over the last like preceding six years And when I think back I'm like no wonder the record was so good because it's like so much love in the room It was like all the people who had taught me how to engineer like Brian and Nick rapidly all the people I played with in every band previous like it was just like the who's who of my musical life It was like coming through in and out of this room as I was making the record and yen and Brian And I just like captured it like Brian was running the session I made most of the producing choices and then you know, I don't know. It was a great 10 11 days so you finish up the record and This is like two years like we mastered it two years ago or like summer Mm-hmm. So what happens in all of that time? And why did you wait a year and a half to put this record out? That's I think that's the big chunk of it is that like Yeah, that's for an artist. That's torture.   So Yes, oh my gosh It was literally two years ago in like this month that I had that I left Was saying and was done like recording that chunk of the record But no that two years was is like the crucial part of all of this Like when we finished the record Brian and I took a bunch of time to mix We probably shot upwards of 15 to 20 versions of songs back and forth I can remember him being like is this okay that we're doing this of like complex music got to do that sometimes Yeah, and well and I had to Brian's like credit and his patience like I had a vision You know like I really knew that wanted it to sound like and I had never had that before and I had never known how to do it So I was kind of like I was gonna like make sure that it at least sounded like how I wanted it in my mind in my brain And that was why I wanted to do it with me and Brian like because I was like, okay I'm gonna I'm gonna have like hands on this and I'm gonna get to really approve mixes and really be like I like that I don't like that. I want to bring this in, you know, like it was good It was a great thing for me to do at that point in my little engineer mix life Yeah, after that we got the record mix you did a master on it We had something and I remember taking it to Jamie and a Jamie liked it I think I was afraid of the record because I don't feel like I was always like does anyone really like this like this is crazy Sounds crazy This is overwhelming but Jamie was like we got a we got to start sharing this record with literally everyone in the music industry That we've ever talked to she was like we cannot put this record out until we have like critical mass Like everyone has got to be bought in the second it comes out because no one's gonna know how to process this And so I was like, okay, that sounds like a really hard thing to do and I've never It's like point again about okay, we're gonna go climb that yeah And I was like I've never climbed a mountain before like what do you do and she was like well Oh, it'd be great if you had a booking agent. It'd be great if you had a manager It'd be great if you had a publisher it'd be great And she starts naming all these people and I start to kind of see the game slow down, you know Like I was like, oh, so like if I get a great publisher I don't necessarily need like this other thing that I think I need like and kind of see that success can happen in so many Ways, but Jamie like really stepped up and that's why she's one of my managers now Like she introduced me to my first like booking agent at the Feldman agency. I'm Stephen Hilmelfarb Who was like He also looks like Orville Peck and a number of other wolf parade and a number of pop great bands And I was like shocked that he wanted to work with me I had like one song out and nothing else and he was excited to work with me And I remember being like, whoa, this is different Like people are reacting to this in a way that no one's ever reacted to my stuff And and we were also shopping it to labels Tons and tons of labels and we were just kind of building a case for myself for like, okay Cool. We've got this booking agent. Cool. Like that's gonna help us. We talked the labels As we're talking the labels we met AJ Toby at rough trade Who's another friend of Jamie's and like for the publishing side and then I had like a publisher and a booking agent And I was like, whoa, I don't have anything out, but things are lining up, you know And this wasn't like a two-month thing like this is like now nine months after the record probably that I have now Shared my record with like dozens of labels Dozens of booking agents dozens of publishers until I found the right people who are actually excited about what I was doing and Believed in me and we just like kept looking for the next person the next person Yeah, and there was a lot of nose in there as well infinity Still feel like I am getting them like it's like I can't even express to you how sure I was that the record was horrible Because of like how much run-around people gave me on like if they wanted to find me Oh my like seriously nightmarish situations of labels being like, oh, yeah, we like you But we we're gonna go with this other person and it's literally like a black guy with an abusing guitar You know, I tell people like the getting the call us to know is Three-fourths of the game like and I always tell the story like I can remember sitting backstage It was a really weird thing I watched the killers get turned down for a U2 tour and They're huge at this point like one of the biggest bands of the world and they're still bummed and they still move on Yeah, everything was fine and they kept going because even the killer's posts Sam's town gets turned down for a tour Yo, I mean that's it but shit like that.   It's throwing people off like I gotta take it off the record like it's too much Wow, that's crazy. Oh, we should know for the audience that doesn't know you this is your number one song on Spotify Yeah, it is. Yeah, it's like the song that people asked me for a song that I Almost didn't record because I thought it was too much Like I remember hearing like writing the demo and being like this is like a weird owl Version of a rock song like it's like it's like a medley of like 90s and early 2000s rock and hip-hop And I thought it was weird, but Brian D'Amelio was like, oh, no, we are definitely not leaving until we record that like Like that was all Brian. But yeah, anyways I was like second-guessing everything like you would anyways after making a record, but I had two years to do it But anyways, like the nine-month mark I went on a meeting with Alec Bemis who works at Brassland records and I was pitching him on live forever and and I was like, yeah Like, you know, we should say Brassland is the national sleep Yes, it's owned by Aaron Destner and the national put out their first three records on it or something like that There are four records and those records are still on that catalog Crazy which Alec manages so I was like looking for label for live forever and Alec was like Sorry can't help you because we're working on this band called the nationals record right now That was like a light lift. Yeah, and I was like, oh, yeah, okay got it got it got it And I was like out of literally nowhere Jesse I was like, oh well thinking about covering a bunch of their songs like I made it up Like I had the idea for it But I didn't think I was gonna actually do it and he was like, oh send it to me And I immediately left that meeting and called like Brian Graham Carter It was just like we got a right like five songs like like now And they all came over and we just started working on them and When we finished that little EP we decided to put it out before live forever We were going to put live forever out, which was which was a I mean, I remember talking about this decision I was like this could go a lot of different ways Yo, really could have but I at that point had like maximum clarity Like I was like live forever is super ambitious And I think that people need an on ramp Like people need an on ramp for like the message that I'm trying to like get out Which is this bigger statement on like black people in rock music And like where we fit in and how we deserve more space in that world And I was like what better way to show that than to cover what is probably my favorite band But it's also like a quintessential staple of the genre that I want to be a part of and like kind of take what they've done and be like This is cool. But why aren't there more people doing it that look like me? Like why aren't there more bands that have had this level of success that look like me? And and that was something that I didn't want to necessarily talk about the whole time live forever without But using say goodbye to pretty boy to talk about it felt really appropriate And like a great way to introduce myself to like the broader world and the national have a huge fan base already So national fans love national fans And I thought this would be like a really great way to like build a fan base With people that already like similar sonic things and then you know bring them into my world when the time is right So yeah, and I remember there was a discussion of like should you wait to put this out After live forever or before and I was like I remember I like I could straight up say like I was on the scared side when you and I talked about it And I was like, oh, I wonder if this like makes you too much of a fan than a real artist Like I was definitely like I hope I hope this is the right step because like honestly, you know, there's a lot of decisions where you're like If I get enough data, I could know it.  Mm-hmm. And you were right Yeah All right, so that record comes out and you get a lot of acclaim for it people love it. Yeah I could remember Literally being on the street running into a friend not far from where I live now and somebody's like, you know, have you heard this record?  Yeah, that's that's that's what you want to hear You know, that's dope. Oh, man. But yeah, no after that came out.  They're not gonna like what I have, you know Like that was my the next thing I was afraid of But it opened some doors And we finally found a label Will yet talk about this story about how will you pierce it because this is really interesting? Yeah, well, I think how did he initially hear it? Isn't it that you play to show with that band?  Yeah Actually, okay, okay. So this is a funny story because now we're all friends Like me and the car car guys are like homies like the uh, we were playing a show here in dc at the pie shop and uh, The drummer was like, oh, yo, like you're barking strange. I'm like, yeah And he was like, oh, I love the national.  We love your record And I was like, yeah, like and I sent him I think I sent them live forever before the show And they were like, yeah, like, you know, look forever is dope. We loved it. We listened to it the whole time I think it's going to be a little too lo-fi for will though if you're looking for a label I can't believe they called it lo-fi. I'm like, listen people don't know how to describe music It's not a lo-fi record.  This is a colorful record. People just don't know how to call it that Yeah, I was like, it's character rich. Yeah. Yes. Yes. There we go. There we go Character rich recording but um, yeah, oh my god, I took that so many ways I tell people, you know, it's like it's also like one of the hardest things like I can remember You and I had this discussion is people freak out when they hear distortion on their voice at first Yes, and I can remember being like you love Distortion on everybody else's voice take that with a thing and if you don't like it, I'll turn it down But everybody hates distortion on their own voice and loves it on everyone else's voice So real and now I saturate my voice all the time Yeah, I so like literally tell myself not to I have a saturation bus That is just literally screaming on all my doubles Stupid and anyways, but afterwards like we stayed in touch Jamie also reached out to will and like he loved the record and we really hit it off But I think it was a large part because like I played with the car car folks They've definitely shared my record with will like Jamie shared it with will and will it clicked with him and like will and I Homies now and like and so we should we just for the audience doesn't know will yip Is a producer of a bajillion bands and he has two different labels one through run for cover one through Warner and uh called memory music and that's the one you ended up on yeah I'm totally yeah. Yeah, I want memory and it's a great like they service the record Immaculately and I don't think I would have got that level of attention or like care anywhere else like will literally made it like his personal passion project and like paid money to make everything work like Paid for a radio promoter paid for a like not only did he pay for Jamie to do pr But he also paid for someone to do pr in Europe like paid for the vinyl paid for the merch like really Went in and was really fair on the master split like really solid like a situation that Both people don't get for their first album And it was something something he said to me like a right when he signed with me If he was like I thanked him. I was like look like thank you for being so flexible With this deal and he was like dude I make money off of making records like I'm making this record with you So that in a year you pop off and you have A bidding war for you among the labels like he was like literally that's what we're doing Like we're gonna we're building this campaign over the course of the next year And now like it's a year later, and I'm literally like doing exactly what he said So it's like it's awesome like well like I will not I cannot like I will never take for granted like the impact that he had On this record big impact now We're like on our sixth pressing of like our sixth like thousand record pressing of the album Awesome, so but so in that interim when you meet will there's still a lot more time That happens through that and you get some more of a team, right? Yes, so Um, I meet will and at this point like I've got a publisher I've got a booking agent I've got now jamie is my manager and she brought on a friend to help co-manage because jamie's never managed to Band before and so she was like, you know like I want to manage but if I do it I want to have a close friend who's like been trying to get me into managing and it was tim Zahatsky Who like, you know, we're with the men's singers and tons of humongous rock bands Great guy great dude and has like a really great attitude and a great like way of doing business Watching him work has been very like educational because he's like been in it much longer than me So then all of a sudden I had like a squad felt like I was like, okay Like we can kind of do anything now, you know I had like all these people advocating for me in all these rooms that I Didn't have access to and that's ultimately like what you want It's like as an artist three or four people who believe in yourself so much that they're like Literally telling everyone they meet about you and like it literally it starts from there It's kind of funny. Like I never thought this is a dumb thing to say But I think something a lot of people will understand is like I never appreciated how important it is To have music.  We are going and that's how it happened.  They're doing things and it's like wow They have less lessons than my friend's bands who like get a hundred people on a show. Maybe It just doesn't work. It's like the good music is if it's it doesn't matter if you have that major label record deal I think good gets a little bit risen up But like great You've got to be great if you're gonna really have the doors open and you made this amazing record that Everybody who gets it really feels something with and that's what opens a lot of the doors That's what definitely opened those doors because at some point Like someone has to decide has to pick you like someone has to be like, oh, I like this music Like before it hits thousands of people through a Spotify playlist There's like normally two or three people who have to like it And that's who you're playing for and um, they won't choose it if it's not good because they already have A list of 50 people that they have to choose Because they paid for it Yeah There's that but it's funny and there was like, oh well, what if I'm one of those people paid for it?  I produce now for a lot of people like that If you just have tons of plays and like they don't play shows, you know Yeah, well the funny thing is we are in that weird world right now where it's like, well, no one plays shows again yet But there's a lot of demand for when you come out and play shows again, which is great I'm excited about that. But yeah, and so anyways, sorry, I keep getting sidetracked. But yeah Hey, well, it's a complex story. It's it a lot happened Like it's like so the summer league after like say goodbye to pretty boy came out. It was in march We played at wnyc and we played a show at the Sultan room And then that was literally like the last day of earth Like there was like lines around the block at the key foods I felt like I was in a contagion like to movie And I forgot that that's your record release show that we're at right before corona.  I forgot.   Like do I wait till the next year to do it and I remember talking to jamie and tim and being like, I don't know what to do But my calculation here is most people will need a lot of things to make music Like they need like a producer. They need a big studio. They need all this shit But I don't need any of it. Like I can make good stuff at my house all the time I do it every day. So like I'm just gonna keep making music And let's put this record out and if it flops, I'll just put out another record like And that was like a I'm really glad I felt that way. I'm glad I felt like I could just make another good record You know, I think a lot of people are like, this is the one. Yeah. Yeah get too precious about it for sure Right, but I'm like, this is like not the one This is like a good record and I can't wait to make a million five more great records But you did take some songs off. I did I shortened it by like four songs. Yeah, which was really smart Well, yet again rick rubin message. I tell everybody it right two and a half records put out one Yeah, well, I'm in the process of that right now. I'm like looking at like, yeah, but anyways And so we decided to go for it and then came the problem of like, well, how do we develop content? like Now like how do we make music videos and stuff to promote the record? Which led to many like pretty complicated zoom slash my iphone video Like videos that turn into music videos that that have all of them have done really well and were great But yeah, like after we put out our first single I got a call from tom windish And like you wanted to be my booking agent. And so That's that's what happened. That's it's age Yeah, so I was like, yes, let's do that And that was like after like boomer came out or something And so that that and then label started calling like before the record even came out And I was like, damn like we had a meeting with island records and I was like, okay This is wild Get rave reviews from every outlet tons of year and top 10 50 records Yeah, the record came out and it really jumped off and I remembered Like right before the record came out. I was still nervous. I was still like just gonna really work They like mustang, but that's kind of like the most straightforward song on the record We'll see how it goes And I remember getting the whole band together and being like, let's go to main for a couple weeks And start pre producing the next record just because I know after this record comes out I'm gonna be a different person and I kind of wanted to like Capture as much as I could as that person right before the record came out. That's very smart Yeah, and I'm glad I did like Like a great record there and I have that record now That's awesome And I have another one that I've written since then And so so now I'm like, okay I've got like eight months to record these two records and that's what's happening Talking to labels and figuring out what I'm gonna record these are this this next batch of music So that's one incredibly juice because obviously I wrote a whole book on how Expectations of your music is actually what fucks it up the most and being true to yourself is what makes it right Knowing to do that is incredibly intelligent because it's tough when people like you for something and you got to go At least next songs aren't that big you already went through that once with that ap I guess I did That's good to remember I forget that People are like, oh, this is your sophomore album.  I'm so grateful like I every day I I mean, I don't have a full-time job anymore. I just do music and I produce I produce for artists I've been working on records since like like full-time since august You know two records a month pretty stably like which is nuts I'm stoked because i'm like, yeah, like I didn't get to record my records as fast as I wanted But like I in the next year to two will have like multiple releases Um, which I think it's going to be really cool a cool way to like add to what I can do, you know So i'm excited about it. Well, I think that's the story. Do you want to tell everybody where they can find you? Yeah, um, you can find me on instagram twitter. Just look at barti strange facebook. It's the same I'm not on tiktok yet, but I will be at some point soon So i'm also barti strange on tiktok. Um, but you can stream my music on spotify and buy it on bandcamp Am I missing anything? Is there any other way you would have done this? I need to know your questions and what no one else is telling you since I want to answer them So leave them in the comments since I answer every comment in every post I hope you like this video And if you did please like subscribe and get notified and i'm gonna be breaking down the concepts in this video Along with how to promote your music and how to make songs you're happy with in the future I have a facebook group linked below that is only helpful information No playlist or con artists only artists having helpful discussions allowed if you want to learn more about me Work on a record with me or check out any of my books podcasts or anything else I do go to jessecanon.com or at jessecanon on all the socials one last thing There's two playlists here One is on how to grow your fan base from zero to ten thousand fans And the other is on how you make songs you're more happy with And the other is on how you promote your music with spotify And the other is specially chosen to match this video or you can hit the subscribe button below and stay tuned as I have tons of tips for musicians


So the question is, and this is a question I hear a lot, you know, when a lot of time when I lecture about these topics is why do we use the term selfish? Why not to use self-interest given the stigma that the world's selfish has, the fact that people view it so negatively? So first let me say the same stigma exists to self-interest. It's just a little softer because people don't usually use that term. But it's the same basic idea morally, it's unacceptable. But the reason we use selfish is because it's an important word. It identifies in reality an important phenomena, the idea of somebody taking care of himself, the idea of somebody placing his own interest, his own life as his number one priority. And that word is contrasted or that concept is contrasted with self-less, selfish, self-less. Self-less means, right, and everybody agrees on this, whether they agree with us on the definition of selfish or not, everybody agrees that self-less means not caring about yourself, not placing your own interest, placing the interest of others first, living for the sake of others. So the contrast between self-less and selfish is very, very important to that. Self-interest captures that somewhat, but it's not as condensed, it's not as clear of a concept and you don't get that contrast. You don't have unself-interested or lack of self-interest or what's the opposite of self-interest? It's self-less, but really the parallel to self-less is selfish. So why do people hate, particularly intellectuals, hate the word selfish? Not because of the behavior that is commonly associated, right? But because it states clearly that you should live for your own self. Your life is the standard. Your life comes first. That's what they don't like about it. And that's why they spend a lot of time, a lot of effort throughout history in distorting it and perverting it and turning it into a negative term and associating that word with bad behavior like lying, stealing, and cheating. They know how important the concept is. That's why they've distorted and perverted it. It's our job as defenders of self-interest, as defenders of human life, as defenders of an egoistic morality to take that word in a sense, take that concept and clean it out of all the things that don't belong, the lying, stealing, cheating, sacrificing others to self and turn it into the clean concept that it really is taking care of self, placing your interests as primary in the pursuit of your own values. So in pursuit of your own rational values, that's what selfish really means. That's the concept that we want to contrast with self-less.  I don't want them to turn against me immediately. So I used, if you want to call it a softer concept. But I always get too selfish because that is the essential concept that we're trying to defend. That's the essential descriptor of what it means to be an egoist, which is what the morality of rational self-interest, rational selfishness, rational egoism is all about.


another example of a projection fiber this is a distinction of a brain and we can see this radiating fan-shaped structure here this is a projection fiber which has been given a specific name called the corona radiata radiating like a crown so this is a projection fiber another example of a projection fiber is this as you can see this is a more diagrammatic representation the fibers are radiating like a crown that's why it is called the corona radiata we should see subsequently that this corner radiata has got many components which are all labeled here I would like you to take a look at this fact that this corona radiata has been indented from the lateral aspect by one nucleus here which is referred to as the lentiform nucleus and another important point is this corona radiata which is located just inside the brain inside the white gray matter of the brain as these fibers converge cordially they become more tightly packed and in the region of the basal ganglia they come to be known as the internal capsule which is going to be the main topic for today this is another picture a DTI diffusion tensor imaging with white matter tractography of the projection fibers more specifically one component of the prediction fibers inside the internal capsule which we shall describe which is referred to as the corticospinal tract so this is one side corticospinal tract descending through the pons into the medullary pyramids and this is the other corticospinal tract so this is a DTI diffusion tensor imaging with white matter tractography


Welcome back everyone. I hope all of you have had enough time to work out the normalization tutorials and I hope you did not have any problems with it. But just in case you did, I am going to work out some of the problems here and the solutions for the rest will right now hidden, but I will make it visible. I made the solutions visible for those of you who wish to read it. But what I am going to do is go over the solutions. First I will take a quick look at the problem and then I will switch over to the solution. So the first question is to find candidate keys and attribute closures and this I think is relatively easy. Most of you actually got it right in the morning, but just for completeness let us do maybe the very first one. A, B determines C, D determines C, B determines C and in all cases we want to find attribute closure of A, B and the candidates key for the schema where the schema is A, B, C, D, E. So the solution is shown here. So first of all the closure of A, B is pretty easy. These are the okay. So we have these functional dependencies and we want to find the closure of A, B. So the algorithm is extremely straightforward. We start with the result as A, B and given the functional dependency A, B, C we add C to the set and then since B is part of the set and the functional dependency B, E is present we add E to the set. Now D is not determined by anything else. So at this point we cannot add anymore and we stop. A, B, C is the closure. Now what about the candidate key? We can start with A, B and its closure is not the whole relation. So question is what all got left out and in this case the attributes are A, B, C, D, E, D got left out. So anything which is left out from here should be considered for adding and forming a candidate key. In this particular case D is not on the right side of any functional dependency. So you have to make D a part of any candidate key. So this is a shortcut which you can use. If it is not on the right side of any functional dependency it had better be part of any candidate key. So D has to be added. So we add A, B, D. Now if you take the closure with A, B, D it is clearly A, B, C, D, E which is all five attributes and therefore A, B, D is a super key. But before we can say it is a candidate key we have to verify that it is minimal. We have already seen if we drop E it is no longer a super key. What if we drop B? In that case the closure of A is A itself nothing more. If we drop A, so the closure of B, E will be just sorry B, D will be B, D, E. A and C will not appear. So it is easy to see that it is minimal. Essentially we drop one attribute at a time and see if the result is still a super key. None of the things after dropping an attribute is. So it is a candidate. So we can do the same thing for the other cases. Now let us move to normalization to BCNF. So question is for each of the above set of functional dependencies we have to decompose it into BCNF. Again I am just going to do it for one of these. We will take the very first one. A, B determines C, D determines E and B determines C. The same one. We want to decompose it into BCNF. So the schema is A, B, C, D. So what are the steps we take? First of all we have to check if which all of these functional dependencies is a witness to violation of BCNF. And I think it is easy to see that A, B goes to C violates BCNF because A, B is not a super key. D goes to E violates BCNF also for the same reason. And D goes to E also violates BCNF. So all the three dependencies cause violation of BCNF. So we can decompose R using any one of these to start with. In fact the decomposition to BCNF is not unique. There are many possible decompositions. We already saw a case where there were two decompositions to BCNF. And here there are in fact even more. So we are going to take each starting point and then see where that leads us. So the first decomposition let us start with A, B determines C. If we decompose using A, B determines C, the first step is to create a relation A, B, C that is added there. And the remaining relation consists of A, B and the other attributes other than C which is A, B, D, E. So we get what is shown here A, B, C and A, B, D, E. Now is A, B, D, E in BCNF? We have the following functional dependencies. B goes to E, B goes to E, A, B goes to C. Now A, B determines C is not relevant for this one but B goes to E and B goes to E are both relevant here and directly those are both evidence that this is not in BCNF. So we pick one of them. Let us say we pick B determines E and decompose. So we add B, E to the result and what is left is B and the remaining attributes after dropping E. So that is A, B, D. So what we get is in case you missed the last part of what I said, we first decompose using A, B determines C and the two functional dependencies we got these two relations A, B, C and A, B, D, E and these two functional dependencies B determines E and D determines E both show that A, B, D, E is not in BCNF. So we can choose either one to decompose on first. If we decompose on B determines E what do we get? We get B, E as one of the relation and A, B, D, E minus the right hand side which is E which is A, B, D. So A, B, D, E has been broken into B, E and A, B, D. So the set we have got so far is A, B, C, B, E and A, B, D. Now of this is A, B, C in BCNF we have to check for subsets. Now it turns out in this case for any relation with three attributes if you take a subset of size 2 if at all it is involved in a functional dependency which is non-trivial the right hand side will be the third attribute. So it will automatically be a super key. So there is no point even checking any subset of size n minus 1 if there are n attributes. So that leaves us to check individually A, B and C. So if you take A, B and C individually on the first relation A, B, C using attribute closure using all of these. If you take B attribute closure it includes E, if you take attribute closure of A it includes only A and attribute closure of C is only C. So attribute closure on each subset of A, B, C does not give any evidence of violation in BCNF. So we conclude that A, B, C is in BCNF. Similarly, we have to apply the same test to A, B, D. Now what do we get? A, B, D if you take all subsets of size 1 the same thing happens again B goes to E and E is not in this schema. The closure of B is just E, there is nothing more. The closure of D is just E and again E is not in this schema and the closure of A is A itself. So that one is trivial. So the net conclusion is that A, B, D does not violate BCNF. So we are done at this point. So the decomposition we get is this one. But like I said the exact set of things we get depends on the order in which we do these things. So now supposing we chose a different thing in the last step. Say the first step is the same we decompose on A, B, C but in the last step we use DE instead of BE. Then what happens? If you look at this step if you decompose on DE here in this step instead of BE if you choose DE you will get DE and on this side what are the things you get? We took A, B, DE decompose it on DE. So what we get is what do we get here? We have to remove E in this case also which as it turns out is the same as what we got in the previous step. So the only difference is we have got A, B, D again but instead of BE we got BE. That is the only difference and we have already verified that A, B, D is in BCNF. So that is it. We can stop at this point. A, B, C is also verified to be in BCNF. Now there are further possibilities. In the first step instead of A, B, C we could have chosen either of these BE or BE. So supposing in the very first step we chose DE. So what do we get? We get DE and the remainder of the attributes except for E. So that is A, B, C, D. Now A, B, C, D itself can be decomposed again using what? We can decompose it using A determines BC because A, B is not a key. We have seen that A, B is not a A, B closure does not A, B closure includes E but not D. So we can verify that for the relation A, B, C, D A, B determines C is non-trivial and A, B is not a super key. So we can decompose. We have to decompose. So what happens when we decompose this using A, B, C? The first relation is A, B, C. The second relation is the same thing minus C which is ABD. So what did we get in the end of this? We got DE and A, B, C and ABD. This is the same as the one we got in the previous step and lastly we had the third B determines C to decompose from. So if we decompose using that first we get BE, A, B, C, D and then this if we decompose again we get BE, A, B, C and ABD which is the second one. So this is the second possibility. So these are the only two decompositions that we have got using this sequence of things. However that does not actually mean this is the only possibilities. We could have maybe inferred some other dependencies and then use those to do decomposition. In this particular case there is not much else to infer from here which would have helped us decompose. But in general there are many more dependencies which one can infer and we can start decomposition using any of them. So there are many, many possibilities for the final result. So note that after we decompose once we always did the attribute closure on all subsets which ensures that we would not miss anything. If we had used just the given set of dependencies without doing this attribute closure on every subset we might miss some functional dependency which shows violation. So similarly we have for the other two sets of functional dependent. Both the cases we have two alternative decompositions. Lastly we have canonical cover again for the same set of dependencies. The goal is to find the canonical cover by eliminating extraneous attributes and then decompose this using sorry here the set of dependencies is different. The dependencies we have seen so far actually do not have any extraneous attributes I think. So we chose two other sets of dependencies to look for extraneous attributes and they are the a determines c d, b determines b and c determines b this is the first one and then there is one more similar but a little bigger. So what we need to do is find the canonical cover and then decompose it into 3 n f based on the canonical cover. So let us go down and see the solution to it. So first of all to find the canonical cover we have to check for each of these attributes to see if they are extraneous. How do we do that? So here are the dependencies. So first let us check if c is extraneous in a determines c d can supposing we dropped it from here what is left is a determines b and then the remaining ones. From that can we infer that a determines c we cannot. If you do a closure on the remaining attributes a closure is just a there is nothing more. On the other hand if we dropped d from here we will check if it is extraneous. So how do we do it? We drop d and we use the things which are left behind which is a determines c and then these two. So remember this procedure is only for the right hand side. For dropping something on the right hand side the procedure is first we drop the attribute. Take the resultant set of functional dependencies and apply attribute closure on the left hand side in this case a and see if the attribute closure includes the dropped attribute. So we have dropped d what is left is a c and then these two. What is the a closure here? a plus will include c in right away because of this one a determines c and in the next round because c determines b it will be a c d. So what we have done is we have derived a c d which includes the attribute we just dropped namely d and therefore d is extraneous. Now what about the other attributes b goes to d e if you drop d from here we are not going to derive b determines b there is nothing else involving b similarly dropping e we cannot derive b goes to e again. So even that is not extraneous and we also have to check left this one c goes to d to drop d can we derive it back? No we cannot there is no other dependency involving c. Similarly we have to check the left hand sides. When we check the left hand side it is a little bit different the test has to be to see if the given set of dependencies these dependencies from this if we do attribute closure can we get the stronger dependency and this particular example is not good for that I will use the next set of dependencies to illustrate that point the next example. So for this the left hand sides there is nothing extraneous. So the canonical cover is this. So what do we do next? For the canonical cover we also need one more step if there are two functional dependencies with the same left hand side we union them here there is nothing to union. So now the 3 n f schema how do we generate it from this? Well we create a relation for each of these a c b d e and c d. We also check if any of these is redundant because it is contained in one of the other things in this case nothing is contained. So we will keep all 3 relations but there is a little bit more to do. We need a candidate key does any of these include a candidate key? Is does this first schema include a candidate key? Let us do a c closure. So how do we check that? We just take the whole relation and do closure on that set of attributes a c plus what does it give us? a c plus will give us a c d and that is it nothing more. So a c d is not a super key. So we just check for super key and then some part of it will be a candidate key. How about b d e plus? If you see b d e gives this and then that is it nothing more. So b d e plus gives only b d e it is not a super key. Finally, if you do c d we do not get anything more. c d e plus is just we can use this but d is already there. So c d plus is just c d nothing more. So none of the relations includes a super key and therefore it does not include a candidate key. Now we have to choose something as a candidate key. So which one shall we choose as a candidate? It should be minimal and it should have everything in its closure. So if you see here a convenient one is a b because a determines c d b determines d e a b plus will be a b c d and then e and that is the entire set of attributes. So a b is the candidate key it is minimal because a plus and b plus are not super keys and we are done. We get this schema. Before I do the next example I would like to take questions and see if people have understood things so far and then I will do the last example of extraneous attributes. Bharti Vidya Peet, if you have a question please go ahead. Sir I have one query that can you explain how to find out the primary key, candidate key and super key using functional dependency? Yeah, can you repeat one? There are possible candidate key, candidate key and super key in example. So how to find out that how to take this candidate key we have to take? Right. So that is what the first example did. So let me go over it once again to clarify. So let us go back to screen share here. The first part was to find to do attribute closure and find candidate key. So as part of finding candidate keys we found super keys. Now how do we do that? So there are many possible super keys and candidate keys. We do not want to waste our time enumerating every single one of them. So there are some tricks which we use but the basic algorithm is to use attribute closure on set of attributes and see if it includes all the attributes of the schema. If it does it is a super key. That is the very first step. Now there are many possible super keys which one do we choose? So a good way is to start from the left hand sides of some of the functional dependencies here. So we do AB plus that includes C. So there is no point adding C to the left hand side because AB plus already includes C and AB plus also includes E. So there is no point adding E to the left hand side. What is left is D. So if there are many more attributes left we can pick attributes which are on the left hand side of some functional dependencies. So we could choose ABD and now it is easy to see that ABD plus includes all the attributes. So attribute closure is the basic step in finding super keys. Now once we have found the super key we want to make sure it is minimal and that as I told you consists of dropping one of the attributes at a time and again doing attribute closure. If after dropping an attribute the closure still includes all the attributes of the schema well then we have got something smaller. Now we try again on this. Again from the smaller subset which we got we again try to drop things. If at this stage dropping an attribute you know whichever attribute we drop it is no longer a super key then we know the super key is minimal and therefore we determine it is a candidate key. Like I said there are many possible super keys there are many possible candidate keys. Enumerating all of them you know exhaustively is kind of tiresome I have not tried to do it. If you wish to do it yes you could automate it if you want try to program but it is a little cumbersome to try all possibilities. What would be any research area in this normalization? So the question is is there any research area in normalization. Let me make a small detour into research in general. Normalization was a fantastic research area in the 1970s. Probably many of the people here were just about born and many were not even born back then. So it was a hot area once upon a time. But for many many years there has been essentially no new research in this area because all the obvious things have been done. There may be some nooks and corners here and there and indeed there are few papers published once in a way but it is not an easy area to do any new work in. So if you want to do research my advice is do not go to areas which have been beaten up many many years ago it is going to be very difficult to do anything new. What you want to do is pick an area which is relatively new and then see what can be done there. And one way to find out what areas are new is to read conference proceedings and journal proceedings at least the good ones. So there are ways to find out what areas are currently of interest. That does not mean those are the only areas worth doing research on. So you need one of two things. Either find an area where clearly the people are actively working so there are probably more areas in there to do something new or find a real problem which people are not looking at and see if you can solve it. Now many times the solution might be relatively easy that is some solution but if you look deeper you will find that the solution has drawbacks and you say but I want this other thing which the solution does not give and then see if you can get a better solution. For example this issue of normalization. So everything in here was is a single schema in normal form. Now way back in 1981 this was in the 70s this area was very hot. In the 80s it started cooling off but still at that point somebody said but it is not just one relation you should think about you should think about a whole set of relations in your schema and see if there is any redundancy if you take the whole set of relations as one unit and that led to a very interesting paper which talked about this issue. But again all these sorts of questions have been asked. So most of the time you know if you do not know the answer if you come up with a question like this it is good to search in the literature. Now how do you do literature search? It is actually very easy these days. Once upon a time you have to go to a library read through a lot of papers. But today you can just go to Google Scholar it is a wonderful resource. There is also a few others there is Microsoft academic and there is sites here and so forth. But Google Scholar does a pretty good job. So go to scholar.google.com search for with some keywords you will find papers on that topic. So this particular issue I knew was an issue I was not aware of what all work had been done on it the set of relations. So just yesterday I did a search and I found some old papers 1980s papers on this topic. So it is easy to find what research is happening. But if you think it is a research area forget it go to some other area. There are lots and lots of questions which have come on chat. In fact there are some good questions. One of the questions is very basic it says differentiate binary relationships from n-ary relationships. Binary simply means it relates to things n-ary means it relates 3 or more. The next question is good question. In the university database why do not we have an ID for department in department table? And the answer is actually very simple. We probably should have put a department ID or department code. But we decided to keep it simple and use the name itself as the ID. So we did not want too many attributes in the relations. Whenever we showed examples the tables became very wide. So we wanted to keep as few attributes as possible. So just like you know many examples use name as an ID. We decided to use the department name as an ID. In fact it is not unreasonable for departments because very it is not never going to happen that two departments have the same name. So it is not a big deal. Can we apply normalization and functional dependencies on a view? That is an interesting question. And the answer is no. That makes no sense. A view is often got by joining data. It is not stored as such. So you absolutely do not want to bother about these things on a view. Unless the goal is to have a check on the underlying thing. So for example if we have a functional dependency if the database system supports a primary key check on a view. We can create a view which is join or projection as appropriate of other relations to get a relation containing exactly the attributes in a particular functional dependency. And now we declare the left hand side as a primary key for the view. And now if there is an update which violates the primary key constraint on the view the database could detect it. Like I said I do not know which databases if any support constraints on views. Theoretically it is possible and interesting but practically I do not know if it supported. But we do not want normalization on this. The sole goal is to check integrity constraints by imposing primary key dependencies on views. We are not going to normalize a view. View is not actually stored as such. It is perhaps a join. It can be redundant. We do not care. That is not how it is stored. Another question says normalize some relation where there are two ideas. So we have a roll number and an aadhar number. Now both of these are perfectly valid as unique something which uniquely determines it. So they are both super keys and they both candidate keys roll number and aadhar number. So what do we need to do to normalize? We do not need to do anything. We only need to decompose if there is a violation of some functional dependency which shows violation of BCNF. In this case if you have an extra attribute which is functionally determined by the first one it does not really matter. I mean they determine each other. So either of them would be a super key. If you apply the BCNF check there where you have let us say roll number, aadhar number and name three attributes. That was the example which was given. Roll number, aadhar number, name. Roll number determines aadhar number and name. Aadhar number determines roll number and name. So if you see the only non-trivial dependencies here are from roll number and from aadhar number and both of those are super keys. So BCNF is not violated. So we do not actually have to decompose it. Another question was about full dependencies, partial dependencies and so on. So we have been using a particular terminology for functional dependencies and to define the normal forms but other textbooks have used other forms. So for example supposing I have AB is a candidate key and then I have another thing C, another attribute C and I have a dependency like B determines C. So what we have here is that C is dependent on a sub part of a candidate key namely B. So 2NF, so this by the way in 2NF terminology this is called a partial dependency. So 2NF says that there should not be any non-trivial partial dependencies. So if you had something like this where even though AB is part of a key you have B determines C then you want to decompose this and what would you decompose this into? You decompose it into AB and BC. So that is a partial dependency. Now 3NF and BCN, 3NF is often defined in terms of what is called a transitive dependency. A transitive dependency in a schema is something of the form A determines B and in turn B determines C. So what we have with a transitive dependency is that maybe A is a super key but B is not. But if you see that these 2 partial and transitive dependencies are both dealt with in the same way in our definition of BCNF. Essentially we say that if you have any dependency the left hand side had better be a super key or it should be trivial. If it is a partial dependency the left hand side is not part of the whole candidate key. Therefore it is not a super key. So this would also violate BCNF using our definition. Similarly if you have a transitive dependency like this B determines C would also violate BCNF. So in our definition we did not have to differentiate between these 2 cases. We kind of merged it into 1. So some of the earlier literature in this area said first worried about partial dependencies and defined 2NF. Then they worried about transitive dependencies and defined 3NF. But other researchers said that look why bother about all these stages. 2NF by itself is totally useless. 3NF is useful. So we will go directly to that. And by the way for 3NF there is no need to distinguish between partial and transitive dependencies. All that we care for is a dependency whose left side is not a super key and that is true in both these cases. And that is exactly what is used in the definition of 3NF and BCNF. Non-trivial dependencies whose left hand side is not a super key and it covers both these cases. So you can find other textbooks which define 3NF in terms of transitive dependencies but it is equivalent. Now if you want to explore this in more detail there is material available on the website of our book. It is not in the textbook itself but actually there is a question in the exercises. So in our book we have exercises in 2 parts. We have practice exercises and then we have the main exercises. Now the practice exercises are actually solved. We have put up the solution on the web. So there is a question which explores the connections between these other definitions which other textbooks use and the version that we use. So in chapter 8 the practice exercises explore this and the solutions are on the book website which is dbbook.com. So if you go to this website and go to solutions to exercises go to chapter 8 you will find the solution. The question of course you will find in the book itself. So do look it up and it will tell you in detail how these two are connected. Let us take some live question now. We have Sree Buddha college Kerala. Please go ahead. We have a question from today's chapter 8. We have a conversation to DCMF. The question was ab determines c, d determines e, d determines e. And we got actually what we got is 4 tablets which are, which contains first one abc, then be, then be and abd. And the answer you give is? So it is a good question but you will have to repeat it so that I will write it down. So I will write it down on the screen and then you can tell me what I have written down is correct. So please start again and tell me I will write down the things which you said. So the question was on which set of dependencies. The one on? The second one was a goes to cd, b goes to de. Is that the one? It is ab determines c, b determines e and b determines c. And the solution for my question is? Okay. You got two solutions ab which contain three relations each. Yes. Abc, de and abd. Correct. Also abc, de and abd. Yes. Those were the two solutions we gave. Correct. Did you find one more? Yeah do tell me what was your question? Okay. So in each of these relations we are missing one function and dependency. If we are choosing the first option we are not able to express the dependency b determines e. Also in the second option if we are choosing we are not able to express b determines e. How is this dependency managed in the solution? Okay. So let me just show you the two things here. What we have are two possible solutions abc, de, abd and abc, de, abd. I hope you can see both of these on your screen. And the question as I understand it is the functional dependency d goes to e is not actually verified by the first schema. It is not preserved. So we do not have dependency preservation. I think that is your question. Is that correct? So if you check the dependencies on the individual relations here, those together are not going to ensure that d determines e. Is that your question? Can you verify that is what you asked? Yeah sure. Thank you. So this is an issue of dependency preservation. Now let us come back here and check if dependencies were preserved. Let us go back to this. So from these are we able to verify d determines e. So let us go to the dependencies here. Yeah so in this case the only functional dependency involving d is d determines e. So if you take attribute closure here d goes to e but e is not part of abd. That is the only place where d appears. So nothing else is there. So the answer is yes it is not dependency preserving. That particular functional dependency cannot be verified from this decomposition unless you perform a join. So we are losing that. The other one correspondingly does it preserve b goes to e. So what are the things we have on b? We have only b determines e. So if you do attribute closure over here you are not going to get anything. So yeah so neither of these will preserve all the dependencies. Each of them is losing one of the dependencies. So like I said you do not always have a dependency preserving decomposition to bcnf. If you wanted to decompose to 3nf on the other hand I think it is easy to verify that none of the attributes here is extraneous. So the 3nf decomposition you will get includes all these three. Each of these would be a relation in the 3nf decomposition. Furthermore none of these is a candidate key. So we would add one more thing. The candidate key here could be abd. So we would have four relations abc, be, be and abd. In fact if you see here we have abc, be, abd. The 3nf decomposition algorithm will simply add be as one more relation there. And now there is something interesting. This is something which I would like you to note. It is important. What happened is when we applied the bcnf decomposition algorithm the final result was in bcnf but it was not dependency preserving. On the other hand if you use the 3nf decomposition algorithm we got another decomposition which in this case also happened to be in bcnf. It is in 3nf but in this particular case all the things which you get out of it are also in bcnf. So the 3nf algorithm can very well be used as a first step in getting a dependency preserving decomposition to bcnf. So the first step is apply that algorithm. The second step is check the results to see if any of the results violates bcnf. In this particular case we have already verified that none of the results violates bcnf so we can just let it be. So what we have got is using the 3nf algorithm to get a dependency preserving bcnf decomposition. So we can have the best of both worlds. So that is one possible approach. Apply the 3nf algorithm and then decompose more if required. And if not required leave it alone. Does that answer your question? Now the other part is of course why do we have this redundant schema BE and BE? So that is another problem though. It is dependency preserving but you know there is something weird going on here. We got bcnf decompositions which had one less relation. How is that possible? The only way it is possible is if that relation itself is redundant meaning all the information contained there is there in something else. So through some closure we can get back to it. So we did not have BE but if you did a join of these 3 relations we are actually going to get back the same things whatever things we had for D and E we will get back. Now it is not dependency preserving so you might have a state where after doing join you find that DE is violated the functional dependency D determinacy is violated but the data in there is preserved. We are going to get it back. We are not losing any data even though we have one relation less. We are now with Nevar University Rajasthan. Nevar do you have a question? Sir I have a question about the normalization on the unstructured data. How do we apply the normalization process on the unstructured data? It actually makes no sense to apply normalization on unstructured data. Unstructured means you have no control on what is there. You do not know what are the attributes. It is like text. So how do you normalize text? Is there an algorithm to do it? No there is no way. It is basically out of your control. So there can be redundant information in unstructured data but the basic fact that there is no structure means that you cannot do anything. You cannot decompose because you do not know the structure. It is only when you have structure that you can actually apply any of these algorithms and do anything useful. So if you have semi-structured data like XML and so forth then yes it is possible maybe to apply normalization in some of these things. I am not familiar with related work in this area. So maybe there has been work or maybe I was wrong about normalization being dead. Maybe this normalization of XML schemas for all I know might be worth looking at. I have not looked at this area I should say. But yes if you are looking at semi-structured data where there is nesting and so on. So is there an equivalent concept to normalization? And the answer might be yes. I do not know if that answered your question. We are back with Jha College Hyderabad. If you have a question please go ahead. Sir by using you have elaborated about axiom rules. Based on axiom rules can we able to drive primary key, candidate key, super key? You mean Armstrong's axiom? Yeah. So the techniques which I showed you using attribute closure to check if something is a super key and so on. You could instead use Armstrong's axiom and infer whole bunch of stuff and check if something is a super key or not. But it tends to be haphazard. You do not know which one to do next. There are so many possibilities. What would you do? Maybe you miss something. You missed opportunity which you could have used. So it is absolutely doable. I mean by definition it is doable. Armstrong's axioms are have been shown to be complete. So any functional dependency which you can derive, you can definitely derive by a series of applications of Armstrong's axiom. The only question is is it convenient for a human to do so? And the answer is no. Is it convenient for a computer to do so? Yes, you can code an algorithm to apply Armstrong's axiom. It is not all that hard. So if you are doing it using software, yeah, that is a different story. But what we have done in the book is mostly do stuff which is easy for humans to do. As it turns out, what is easy for humans is also easy to program. So yeah, you could very well do all of this with Armstrong's axioms. But you are better off following the attribute closure approach which we have given. One last question and then I am going to go back to the last part of today's assignment or last but one part. One last question from Bhanipur, West Bengal. Sir, I have a question on normalization. That is after having a good normalization do I still need to index the table? And will the index even affect the performance in some way after having a good normalization? Normalization has very little to do with indexing. Indexing is a function of what queries you ask on the database. So if you have a lot of queries which are based on let us say the name of a person, then you want an index on name. If you have queries which are based on part of the name of a person, then you want a different kind of index which can index individual pieces of a name. If you have queries which are based on let us say course ID on the section relation, then you want an index on course ID. Even though course ID by itself is not a part of a primary key but it is not the whole of the primary key. On the other hand if most of the queries on section are based on year and semester first, then you want an index on year semester. So we will come back to indexing later but it is not related to normalization. It is related to what queries are asked. Now when you normalize of course you have broken up data and a related issue is that if you start with a relation schema and you break it up, I did not tell you what constraints to put on the tables that you create. That is something I missed. So first of all what are the primary key constraints on the tables that we create through normalization? And the answer is anytime you create a table from a functional dependency, you can immediately add a primary key declaration on the left hand side of the functional dependency. So you know remember in the decomposition algorithm we took a dependency alpha determines beta and we created a relation alpha beta. You will recall that. Now alpha is a primary key for this relation. So we can declare that immediately. But there is actually one more thing we can do. Whenever we do this, we can have a foreign key dependency from the other relation. Remember alpha is present on both sides. We can add a foreign key dependency from the other relation to this one. So we can ensure that the alpha values present in the other one must be present here. If it is not present, when you join it back you will actually lose data. So let me just write it here using a white board to reemphasize this because it is something I missed. If I have something like a relation R on A B C D E and I decompose it using some functional dependency, A B determines C. And I created two relations A B C and the other one was A B D E. Now on this relation A B will be a primary key. So primary key A B because if you see we got it from this functional dependency. So clearly A B determines the remaining attributes here because we got it from a functional dependency. So it is going to be a super key. So we will just since an SQL primary key is only declaration available, we will declare it as a primary key. Now on this relation, this A B value should really appear in the other one. If it does not, we are going to have a lossy decomposition. So we can also add a foreign key here. A B references the other relation, this one. So let us call this R 1. So what we have is that foreign key declaration A B referencing R 1 can be added in the R 2 side. So that is an important part of the decomposition process which we omitted. There is one more part which I did not talk much about and that is null values cause havoc if they are present. So the whole decomposition theory quietly assumes that null values are not present. Supposing a null value were allowed here, in this we had a table like this and null values were allowed. Now first of all what does it mean to say that you have a functional dependency where a null value occurs? It is not clear. So if there were null values you probably should not say a functional dependency holds but if you did for some reason and you went ahead and decomposed it then you have a problem. If you do a join here the common attributes are A B but if you had a tuple in R where say one of them is B was null. So in the decomposition B will be null here and here. If you join null is not equal to null. So that tuple will not get reconstructed in the join. So in all our decompositions we said lossy join because we get extra join tuples. But with null values a join can also be lossy in the sense that you do not get a tuple which you started with. So the whole theory quietly assumes that there are no null values in anywhere. So wherever we have functional dependencies there are no null values involved in those. So that is the basic assumption. If that is violated then you do not use those functional dependencies. Use only ones where you know that there is no null value and use that for decomposition. I do not know if that answered your question. So these are the two points. One is the constraints on decomposed relations and two is null values are not compatible with functional dependencies. So let me now go back to the tutorial questions. So we had done the normalization to 3NF based on canonical cover with the first one. Now our goal with the next example is to show that on the left hand side an attribute would be extraneous and how to check for it. So that is my goal here. And here we go. Let me highlight this. These are the functional dependencies which we are looking at. And we want to see what all are extraneous. Now do we have anything extraneous on the left hand side? So let us just go in order and cover the whole thing. So here what we first considered is A determines C. And intuitively it is clear that you can derive this from A determines B, B determines C. But let us just verify it using the closure. So if we drop C from here, A determines C. We take the resultant functional dependencies and C of A closure includes C. And that is very easy because A closure will add B first and then add C and we are done. So that part was easy. So we can drop A goes to C. To drop the right hand side, I mean we drop C, the resultant is the right hand side is empty which is actually a trivial dependency. A determines nothing is trivial. So we can drop it. Now let us look at AD determines E. We want to check if A is extraneous here. For this it is actually the check is slightly different. If you compare AD goes to E with if we drop A we get D goes to E. D goes to E is a stronger statement. When you drop it from the right hand side you are weakening it. When you are weakening it your goal is to check if the original thing can be derived from the weakened side. Then they are equivalent. Our goal is equivalence. If you take something and weaken it, you want to see if the weakened thing implies the original then you are okay. But here the goal is different. If you are dropping it from the left hand side you are strengthening it. If you want to strengthen it, you have to show the stronger thing can be derived from the original set of functional dependencies. So in this case we want to check if we can derive D goes to E from the original set from what is given here. So we apply attribute closure on D and here it is actually trivial. There is directly a functional dependency D goes to E. So the attribute closure of D includes D and therefore A is extraneous here. We can drop it. So if you want to do it in two steps, we first take the result of deleting A. D goes to E. We check if it can be derived. Indeed it can be derived and so we add it. And once we add it, A D goes to E is weaker than that and we can drop it. So this is what we get and this is the set of dependencies we get. A B, B C, D E and B E. D E is already present. So when we deleted this, that got merged. So this is what we get. And now there are two things with the same left hand side B. So we union those and this is the canonical cover. And if you want to use the synthesis algorithm, we create a relation from each of these. Is any of them redundant? Is A B contained in the others? No. D E contained in the others? No. We also have to check if any of them contains a candidate key. And you can easily verify that none of them does. Why? If we look at this set of dependencies, if you take any of these A B plus, A B plus does not include D. If you take A C plus, that again does not include D. If you take A E plus, that does not include D either. On the other hand, if you take A D plus, that includes everything. You can easily see that A D plus has A sorry B and then you can add C and then you can add E. So we have everything. A B C D E are all contained in A D plus. And we can verify that it is minimal. So it is a candidate key. So the final schema has these three plus A D and this is what we have. This is the final result of 3NF synthesis algorithm run on this particular set of dependencies. I hope that was clear. There is one more part to this which is taking a student and adding the functional dependencies on that. I will leave it to you to read it. I do not think it is particularly hard. It is fairly straightforward. So we can take the last few questions and then wrap up today. We are half an hour beyond. So I will take the last few questions and then wrap up. Yeah, D by Patil, please go ahead. We are having a question on BCNF relations testing. Suppose sir we are having three different functional dependencies. First two function dependencies violates the BCNF conditions. But using the third function dependency that satisfies the BCNF. So can that relation schema is in a BCNF or not? It is not in BCNF. For it to be in BCNF, every single functional dependency which is given or which you can infer, every single one of them should either be trivial or the left hand side should be a super key. So if there is even one functional dependency which violates this condition, that is the left hand side is not a super key and it is not trivial, then the relation is not in BCNF. We have to decompose it. So it is not enough if one of the dependencies is ok. All the dependencies have to be ok. Can you give some example for fifth normal form sir? Fifth normal form that is based on joint dependencies. I do not have an example of the top of my head but there is material and it will take some time first of all to even explain what is a joint dependency. So essentially I will give you some intuition without going into the details. I will just get the whiteboard. So if I have a relation r and I want to decompose it into two or more relations r 1. So joint dependencies say that you know supposing I can decompose r into these some set like this two or more and if I can guarantee that for a particular way of decomposing it this joint is equal to r for any legal relation. So point is of course for an arbitrary relation if you break it up like this the joint may not give you back r. It is also clear that if you have appropriate functional dependencies it could be a sufficient condition for the joint to be equal to r but it is not a necessary condition. A joint dependency is a more general kind of thing. It says that the decomposition of r into these attributes which of course have overlapping attributes between these. If we state that their joint is equal to r that is a joint dependency and multi value dependency a m v d alpha m v d beta can be written in terms of a joint dependency as alpha beta r is decomposed into alpha beta and r minus beta assuming alpha intersection beta equal to m t set for simplicity this is the decomposition alpha beta and r minus beta a multi value dependency is equivalent to saying that the joint of this is equal to r. There is no functional dependency but multi value dependency is equivalent to a joint dependency with two relations. But there are joint dependencies involving three or more decomposing into three or more parts which are not equivalent to multi value dependency it is more general than that. And from that you get first normal form and so forth. Practically I do not know anybody who uses it this is very very rare I mean I have not seen good examples of joint dependencies which go beyond multi value dependencies. So note that these are more general so it is actually a sequence that side we go from 4 n f to 5 n f. So anything which is in 4 n f is automatically in 5 n f because m v d s are a special case of joint dependencies. Similarly anything in b c n f is automatically in 4 n f because you can show that functional dependencies are actually a very very special case of multi value dependencies where the right hand side has only one value in a multi value dependency it can take on many values in a functional dependency it can only take on one value. So I leave it at that and if you want to know more go read it up. So as I said we have material online if you go to the books website there is an appendix on advanced normalization theory and all these things are discussed in that appendix. At one point it was in the printed book but we decided that this is not something which your average course should go into. So we took it away and put it free on the web. Does that answer your question? This is regarding a spatial database sir is it possible to do normalization on a spatial dbms because we have lines and polygons instead of attributes or entities so is it really possible to do normalization in that? So the normalization theory does not really care about the type of the attribute it could be ints, it could be strings, it could be you know lines, polygons, whatever all that it says is if something is equal something else must be equal it does not care about the type. So even if you have a spatial database you can certainly use normalization theory as is. But you can also look at the question another way are there any generalizations of the whole theory of normalization if you take specific types into account such as you know if you have a polygon line segment and so on instead of just equality there are other possibilities maybe you can say that if this is a subset of that if a is a subset of b then sorry not that way. So the question is can we somehow generalize normalize you know we had already functional dependencies we had multi value dependencies we had joint dependencies can we come up with new types of dependencies specific to spatial data. I do not know if this is of any use but maybe we can have contains dependency right. So we can say a contains depth b whenever you have two tuples a 1 b 1 a 2 b 2 you can say that if a 1 I will say contains by subset of equal to a 2 implies b 1 subset of a equal to b 2. This is just something I am coming up with on the fly I have not thought about this but it is just an idea which I had triggered by your question. So maybe we can create a new type of dependency which might actually make sense in the context of a spatial database and now we can maybe come up with the whole normalization theory related to it. I do not know if this has any applicability or any use but hey maybe normalization theory is not fully dead yet maybe there is a little bit of life somewhere little juice somewhere which you can squeeze and extract from it maybe I do not know if this might not lead anywhere but it might lead somewhere. We will take last question this is from K. L. Kubli. Sir how is BCNS different from third normal form? How is BCNF different from 3NF? This was the definition of BCNF. So we say a relation schema R is in BCNF with respect to a set of f of functional dependencies. If for all functional dependencies in f plus of the form alpha determines beta where both alpha and beta are subsets of R at least one of the following holds either it is trivial or alpha is a super key for R. This was the definition of BCNF. If you skip ahead to 3NF this part is actually the same I mean I have abbreviated it on this slide but the first part of it is exactly the same as the BCNF definition. The only difference is that in BCNF we said at least one of the following holds either it is trivial or it is a super key. In 3NF we are adding a third option either it is trivial or it is a super key or each attribute A in the right hand side minus the left hand side each attribute A in this part is contained in a candidate key for R. That is the only other option which we have added. So it is a weakening of BCNF. If it satisfies BCNF it trivially satisfies 3NF because every functional dependency will satisfy one of this or this but if it satisfies 3NF it may or may not satisfy BCNF because maybe a particular dependency failed these two but it satisfied the third one. I will just check if there is any other relevant chat question and then we will wrap up today. Somebody asked what is domain key normal form? That is something which goes even beyond 5NF and you know I do not want to get into it now but as I said the books website has more information on all these advanced normalization theory. So DKNF domain key normal form is defined there. Again none of this is really used in practice for multiple reasons. First of all once you go beyond 4NF. For 4NF there are axioms just like Armstrong axioms. There are axioms which let you infer all the possible 4NF. So if I give you multi-valued dependencies I can infer other multi-valued dependencies using a set of axioms and maybe there are algorithms similar to attribute closure which could be used for it. I am not sure but there are axioms for sure. Now if you go beyond 4NF if you go to joint dependencies and so on it has been shown that there is no procedure like this. There is no set of rules which let you infer it and when there is no such set of rules it is very hard to reason about these things in any clean way. So both irritations and practitioners don't really use these things but sometimes you know the intuition behind these forms shows up and makes sense. So even though in general it is hard to infer things from this in specific cases it is intuitively clear and sometimes you can use it to aid in normalization but I don't know if anybody uses it as a routine thing. Yeah I think that's it on the chat. So I think we have taken up a good deal of your time way beyond and I am very happy that so many of you stayed back and asked so many questions. Thank you.