Originally aired on April 17 @ 11:00 AM - 11:30 AM CDT
Code Space: Full Stack Engineering
Guest: Hassan El Mghari (Developer Relations, Together AI)
Join Craig as he welcomes Hassan El Mghari, Senior Manager of Developer Relations at Together AI, for an episode exploring viral demos, tech stacks, and the journey from front-end development to AI.
Through engaging games including Context Window and Cold Ones (featuring nostalgic Slurpees), Hassan shares his path from high school Ruby experiments to building Room GPT, which has helped millions redesign their spaces. He discusses the evolution of his preferred tech stack, including TypeScript, Next.js, and Postgres, while offering insights on prototyping and rapid development.
The show wraps with candid discussions about transitioning between tech spaces, building in public, and the future of AI in development. Along the way, Hassan reveals his approach to creating viral demos that combine simplicity with practical implementation, and shares how his partnership with his brother is helping bring new perspectives to their projects.
Hello, everybody, and welcome to Friends in Codespaces. I am so happy to have this guest here today.
His name is Hassan. He is a senior manager of developer relations at Together AI. I wanted to make sure that that was right as I looked over there.
Awesome. I am so excited to have Hassan here.
Hassan builds incredible demos that are educational, fun, and often viral.
And one of the things that I really enjoy about your work is that you share it.
You share how you built that. And not only are you building in public often, but you're also, this is how I built in public, and this is how you should be building in public.
And I really appreciate that.
And you're coming from a pretty close code space. I'm hanging out now in this AI code.
space.
What would you say your current code space is? What code space is that? Whatever that means to you.
Yeah.
I feel like I was in the full stack engineering code space, maybe more of the front end side, and have been transitioning more and more in the AI code space.
And so it's just been really fun.
Cool.
Awesome. Yeah. I think that what happens is a lot of people think that we either know everything or that you can't move, right?
that that's a great that's a great example that you can move and you can move into different code spaces and then we bump into each other in real life and i i always enjoy when we get like brief moments to talk to each other so i'm so excited to talk to you more today on the show we have not done the theme song yet um i've had a couple guests actually try to do uh uh to do this with me you don't have to that do you have a good country accent no you don't okay i'll give you i'll give you a go and you can tell me if you think this is good so i got friends in code spaces It's like a Yankovic thing.
So the way that this show works, Hasan, is we're going to play some games.
We're going to play some games.
The first game that we're going to play is called Context Window.
As you know, being in the AI space, when these LMs were trained, they were trained on the Internet and books and all sorts of stuff.
And sometimes things aren't in the Context Window.
But I wanted to see what it knew about you.
because I wanted to make sure that we get the context that it wants.
So I was like, maybe what we should do is write a system prompt that shows interest in you if it doesn't know about you and then have it ask some questions that would help it further what it wants to do.
So it sounds a little creepy, but it's actually pretty fun.
So let's play.
Let's play Context Window.
And here it is.
It does think that you're an exciting guest.
which I do too, as well.
But it doesn't have much information about you.
And I did tell it to be self-aware.
So it's going to be a little creepy in its like science fiction approach to things.
It doesn't know much about Together AI either.
So I hope that we get a little bit about what Together AI is because I would love to learn more about that.
And I'm sure our listeners would too.
It's really interesting in your developer relations stuff, which I am as well.
And I gave it a little additional context.
a little shout out to you that you build incredible demos that go viral.
And he's happy to share how he does this.
So here are your choices of topics.
So it's a two step, right?
So I said, I want you to generate the topics that you want.
And then I want you to ask questions in here.
So there's questions buried beneath here.
Do you see one on there that you'd like to talk about?
Let's talk about maybe the viral demos.
OK, so we're going to talk about building viral demos.
A reminder that this show is in beta, and in the future, this web app would probably do something like this.
What L11 is this, by the way?
This is using Llama.
We're using Llama 3.
Today's episode has been sponsored by Llama 3.
And also, Eleven Labs, because Eleven Labs is going to ask you this first thing.
I think Chris.
Chris, that sounds like a great voice to ask you this question.
As someone who has built incredible demos that go viral, what do you think is the most important aspect of a demo that sets it apart from others and how do you balance creativity with practical implementation?
Wow. That's a great question. Wow, I'm impressed. I'm impressed.
I think what sets a lot of demos apart is two things. I think like simplicity is one thing.
You know, you need to be able to explain it in a single sentence.
You need to be able to to like show people that it does one thing very well and this is what it does.
this is what it's for and here's a clear example.
And so I think balancing that with also a complete application, ideally, you know, accomplishing something actually useful.
And I tend to add just a little bit of extra stuff on my demo to make it, you know, almost not feel like a demo, feel like an actual app that you go on and sign up for and pay for.
And so, you know, you add a little user authentication or you might add like a dashboard and stuff like that.
Right.
So when people interact, they're like, wow, this is actually, I could use this app.
Yeah, yeah.
And you have had some that have like, some of those that you have built that have just taken off.
Do you have one that is your favorite that you can, what comes to mind when you think about that?
Yeah, probably RoomGPT because it's been my most popular.
So I just, yeah, I kind of have a little story on how I built it.
And it was basically, I started out using StableDiffusion, which is, you know, probably the most popular image model.
out there.
And the idea was that I wanted to give it a picture of a room and I wanted it to redesign it.
So Stable Diffusion will accept, we'll do image to image where it'll accept an image and a prompt and give you an image.
And so you give it an image of your room and you tell it like, hey, can you show me my room redesigned in a sleek, minimalistic theme with black and white, for example.
And it gives you an output. But Stable Diffusion actually did a horrible job. at that because it doesn't do a good job of respecting like the dimension of the room and the depth and all this stuff, which makes sense.
So it was an idea I had a while ago actually inspired by an indie hacker called Peter Levels.
He has his own that he did. But I kind of saw that and I wasn't happy with it.
And so I never shipped it. And I waited for, and this is the beauty of AI, you know, you kind of just wait for new models to come to you.
And then all of a sudden you can build these apps that weren't previously possible with no changes.
It's like you just changed the model strength so yeah i waited for this new image model called control net that came out and it did a really good job at just keeping that original structure the same awesome and so yeah i just spent like one or two weekends building it and shipping it and people started to use it yeah and incredible and incredible numbers and i think what's cool about that one is it inspired like you do you saw i mean you must have seen that you saw all this inspiration of people like going i'm gonna build this too it's so cool so cool yeah yeah so awesome job on that by the way i I think that it's like super, super motivational.
And like, I think there's a lot of us like, well, I'm never, and this is probably to your point.
I'm never gonna build a real app, but you're putting other stuff on it that makes it a real app, right?
And so it's like making it real.
So, so super cool.
And I think like, basically everything I do is open source.
The app is open source.
You can go check it out and download it.
And I think what I try to convey to people is that it's easier than you think.
Build an actual app that's useful.
And it's like, this thing has a single API endpoint.
You know, it makes one API call to ControlNet with the image and prompt and gets back an image and shows it to the user.
And that's it.
It is like nothing else in there besides a little bit of authentication.
But that's pretty much it.
And like millions of people have used it and like, it's just, yeah, it's cool.
I think you put in a little bit of extra sheen.
Like if I, if I were to go in there and I was like to build, mine like looks like pretty raw HTML, like pretty gross, but yours, yours looks great.
So like don't, don't, don't sell yourself short of that.
Awesome.
Let's do another one. Let's get another one from here. What do you think? Human skills. Human skills.
That one is just intriguing. Let's do it. All right.
Let's open it up. Let's open it up. Let's see what it thinks. Oh, it snuck the developer relations in there.
Oh, this is good, actually. As a senior manager of developer relations, congratulations, by the way, how do you assess the impact of AI on the developer community?
And what changes do you see in the way that developers work and collaborate?
That's an interesting question.
question and it's it's interesting it's interesting because it's thinking about like what skills doesn't it have are there any human skills that you think are essential for developers to possess in order to effectively collaborate with ai systems wow very interesting i think yeah i think this there's this whole shtick of like shaggy bt came out you know and as a developer my job is gone right you know like that's it it can code it can do everything and Yeah, I feel like that's less and less true as time goes on.
We see the limitations of LLMs and don't get me wrong.
They're amazing.
I love working in this space and I'm sure you're having a blast doing this stuff as well.
And because it's useful on so many levels, but I think like it's more useful in terms of enhancing, you know, human output for a lot of this stuff.
And so I think, yeah, and in some ways, I think it's having a negative effect on a lot of like newer developers.
You know, they come in and they're like, oh my God, ChatGPT is amazing.
I'm just gonna ask it to write, you know, a Next.js app for me that does this.
And they expect it to output a whole thing.
And sometimes it does, and it very confidently will do something that's very questionable.
And you get it on there and you try to run the code and like you, it's false confidence.
Cause I feel like you feel like you're 80% of the way there.
You're like, oh my God, I have all this code.
But in reality, you know, you spend more time troubleshooting than you would if you built it by yourself.
You're not learning anything doing that.
And so like, I think it's It's something that junior developers should probably use a little less, but you can definitely use it to kind of, you know, task-specific or function-specific tasks.
Do you use it?
Do you use it when you're, like, building those demos?
Yeah, I do too.
Yeah, I was literally just building something this morning, and I had to write a function that takes some JSON and outputs it into a very specific object, and I was like, uh, like, I don't want to write this, like, parsing logic, so I'm going to ask it to do that, and it did a decently and good job.
Do you find, when do you, when you, when you have that, uh, I don't want to, to do that that is when it's like i i'm i'm trying to you know i'm trying to teach towards that like when you feel i don't want to do that that is when you lean to ai whatever it is in your world and especially i think encoding because that translation like that exactly that that exact use case of like how do i do time date time manipulation like i don't need to do that anymore yeah yeah so cool um you actually kind of walked into a place where i would like to bring us to and uh uh to the next game actually the next game is called ones have you seen the show hot ones I have so we're gonna have some cold ones and producer Peter is going to bring us something in producer Peter is coming to get us some cold ones this is the longest delay of what is a cold one is it beer do you think it's a beer I don't know I hope not we didn't also have the time that do you have any allergies i don't have any okay okay i don't drink though okay i i knew that okay i figured he's coming he's coming with some and he might have thrown away uh what we were going to use so uh he's coming he's coming yeah but yeah on this topic the topic of like impact of ai i just love i love that a lot of people are starting to use like even even you i think last time like the first we spoke you know i was at another company you were at another company as well yeah it's awesome to just see friends start to work on ai and start to teach it and and use it yeah yeah absolutely i i'm loving where it's coming oh my god oh god i'm not hitting my calorie goal for today so you get your choice blue red i'm gonna go with the blue all right blue blue and so so did you grow up with these No, but I know what they are.
You know what they are?
So then here we go.
We're going to try to get.
So what, for me, this brings me back to childhood.
This is like hot summer day.
It's going to be going to be hit.
Do you have something like that?
Like what was your, what's your, what would bring you back nostalgically?
Because that's where we're going.
We're going back.
We're going back in time.
Pizza for me.
Weirdly enough.
I had, you know, back in kindergarten or preschool, I had this school.
where if you finish reading a book, you get this coupon to get your free mini pizza at this pizza place.
I used to finish a book every Friday.
I used to be so like happy that I got this coupon.
I'd go to this restaurant, I'd give it to them and they'd give me my free little pizza I hope that this brings you back to your pizza days.
It's kind of hard to keep frozen.
That does.
That brings me back to my early, early childhood. And I think it's important to get your brain there.
Because what I want to do is I want to talk about the very first code space that you walked into.
How did you do that?
How did you feel when you walked into that?
Can you remember that with a little help of blue?
I can, actually.
Right before the pandemic.
Yeah, right before the pandemic.
Started to get more and more interested in coding.
And, well, I mean, the first time I actually touched code was probably high school.
So I can talk about that.
Yeah, let's talk about that a little bit.
Yeah, so I remember talking to a friend of mine, and this was in high school, and he was telling me, like, oh, he, like, works after school.
And I'm like, oh, like, what do you do?
And he's like, I actually freelance for this company, and I, like, write scripts in Ruby, or I don't even know what language it was at the time.
And he was like, yeah, they pay me, like, this much money.
And I was like, no way.
Like, that's impossible.
like stop yeah he's like no it's true and i remember he gave me um uh a book at the time on on how to like nice like a program with ruby i'd read maybe five pages a dummies book yeah yeah well you weren't getting pizza so like you exactly exactly yeah but um i just remember being so amazed yeah just like wow like you sit at your computer and you build software yeah get paid for it yeah and yeah i just started exploring things i'm like wow that's how websites are created yeah right html it's just like to me like it's fascinating my idea of like writing something and that translating into a real program a real website that other people can use and interact with yeah can you can you remember the first app that you built where you're like i want to show this to somebody oh um that's a really good question i think i wrote like a python script in college okay that like um automated some part of my life.
I don't know if you know the book, Automating the Blinders.
Oh, it's the best book.
Amazing, amazing.
But it was just some very simple thing with like keystrokes and something, but it actually accomplished a task that I was gonna do manually.
And I, you know, I probably spent 10 times the amount of time writing the program that actually, you know, so it didn't save me any time.
But like, yeah, I think that was the first one where I was like, wow, like.
I've made it.
Yeah, yeah, yeah.
So if you could take, you have all your wisdom now and you want to bring it back to not your.
slurpy days but like the the uh analogous uh slurpy days um what what would be like the biggest piece of advice because i i think i i would like this i would like to reach some people who are thinking about building who are in that same sort of space where you just kind of touched that so like what advice would you give younger you you don't need to give advice to these these people that are out there these these imaginary people i'm talking about but to younger you just younger me yeah um i mean i would have advised myself to get into coding earlier like i yeah yeah i feel like I mean, not that I got into it super late, but I got into it kind of like end of college, you know, starting, like I was accepted a job as an electrical engineer, you know, senior year.
And I was gonna go do that and kind of just like, had this, you know, epiphany, I guess, or like change of heart and then got into it.
But beyond that, which is, I feel like is obvious advice that everybody's like, oh, I wish I got into this five years earlier.
Yeah, yeah, okay.
I think like, just start building quicker.
You know, I think I spent too much time in like tutorial hell and then just watching.
stuff, watching other people build things.
And yeah, there's nothing like building stuff yourself and learning that way.
Awesome. Awesome. Well, cheers to that. You don't have to drink it if you don't want to.
No, no, no. I'm going to try. It's really like hard to get through right now. We're speckling out here.
All right.
So, Producer Peter, not only did he bring us the Slurpees, he also did some digging, some digging.
And we want to talk about your ex. your twitter right did i did i say that wrong just yeah yeah oh okay i thought you were talking about my actual ex i know which i'm like i know that was the joke i'm sorry i'm sorry for that i gave you a slurpee and then a heart attack all in one uh let me get to this over here here we go to my fiance watching at home that did not happen all right so here we are uh first of all we We have at Nutlope, is it Nutlope, what is going on over here?
It's Nutlope, embarrassing gamer username from like 12 years ago, where I basically, I sat in a room and I wanted to come up with a unique word that if you Google it, nothing will come out.
And I spent an hour and I came out with that and it worked, it does great.
You own it.
Is it your GitHub too?
It is my GitHub.
It's my Twitter.
It's my LinkedIn.
It's my email.
I mean, the name is questionable.
Looking back at it.
But it did the job.
It did the job at the time.
I'm not ashamed to admit that.
So this post here, this post has a lot of engagement.
Do you know what it is?
It was your engagement.
Oh, my God.
There is so much engagement.
Congrats on that.
So this is coming up.
I was looking at there.
Yeah, congrats.
Thank you so much.
I appreciate that.
We don't need to talk about that.
Here's this one here.
It's another one of your demos that came out.
And one of the things I wanted to point out here is that you were, like, working with somebody on this.
Who are you working with?
So this is something that I started.
I started recently, I guess this year, where I started working with my brother on these apps.
And so he's kind of trying to transition into tech.
And so he's learning how to design and stuff like that.
And so I start to work with, I mean, I'm not a designer myself.
I feel like I know how to make things look halfway decent, but I don't really know how to make things look really good.
And yeah, my brother's been digging into it.
And shout out to my brother, he's been killing it.
I agree, yeah.
Working on a bunch of apps.
I think you commented on this, if I remember.
I did, and I was actually making sure.
I knew.
I knew.
You called him your little brother.
I do that to my brother, too, my 40-year-old brother.
I'm like, my little brother.
And you didn't call him that.
He's a grown man.
But I love that you, not only did you shout him, but you also shouted him out, and you're also giving him that opportunity to go and build.
I think that's huge.
So, like, super kind.
And, like, also, you bring that.
I think that you bring that in your talks, and you bring that in your...
content so thank you for bringing the kindness thank you yeah uh i want to talk a little bit about your tech stack here yeah this is what what brings these what what what makes this your your your 2024 tech stack yeah i mean i think oh i i actually you know what there might be people listening at home so can you explain what your tech stack is there absolutely yeah i'll explain it and then i'll talk about the why okay thank you so um language is is TypeScript, you know, I started out with JavaScript, but TypeScript is just, it's great.
You know, adds extra types.
It just makes things move much quicker for me.
Framework Next.js, you know, obviously very biased.
I used to work at Vercel along with Peter.
Producer Peter.
Producer Peter.
I'm sorry.
I forgot the full title.
But I think it's great.
You know, I don't work there anymore.
And I still love it and I still use it.
And so I think that's a testament for how good of a framework it is.
how good of a hosting platform Vercel is.
And so what I like most about Next.js is the fact that it's full stack.
You know, I can do my front end and I can do my backend in one application.
My database, I love Postgres in general.
And Neon is one of those Postgres databases out there that I feel like is great and has some fancy features like branching and other stuff.
But in general, I think Postgres is awesome.
Postgres database.
Prisma is an ORM to interact with your database.
And so it's how I'm able to not write SQL.
Fun fact, I still don't know SQL.
I've never written SQL before.
And you may never with AI.
That's fascinating.
With that said, I think it's a very valuable skill.
No, no, no.
But yeah.
I've just gotten away with just writing Prisma.
So I get to write TypeScript to interact with my database, which I love.
That's fascinating.
For styling, I go with Tailwind CSS, which a lot of people either love or hate.
It's definitely one of those, like, it either puts a bad taste or you're like, this is the Slurpee I've ever had.
Like one of those. Yeah, for sure. But like a lot of this honestly is optimized for like prototyping.
Oh yeah. Well that makes sense. Let me sit down on a weekend and put an app out.
And that's the fastest way to do that. For me, like this is the fastest stack for me. Together AI for my AI API.
Obviously I'm biased. I work there. But I think it's great. Hosting in analytics.
Again, Vercel, we talked about that and the authentication where I used to kind of roll my own off a little bit with Next.js.
in Next.js auth and kind of hosted on Postgres.
But I've transitioned more and more towards managed service like clerk.
Because it's just, if I can spend less time on authentication, I will.
Yeah, somebody thought about the problem and took care of it.
And then that works really well with your demos, right?
To like stitch it into your demos and make it feel like we're talking about the beginning.
Do you think, have you talked about, is it in your vows?
I'm wondering if this is in your vows because you're going to engage.
I am going to take some weekends and build some code.
Like maybe she gets to.
Does she code?
I don't know if she codes.
No, she doesn't code.
She's a med student though.
Which I love.
Which means she's gonna be super busy.
And that gives me time to come.
Hello demo.
Very compatible there.
I showed her this tweet.
I tweeted out this thing randomly, you know, responding to like a friend's alt account.
And I was like, it would be so great to date a med student.
And this was like, whoa, you made it happen.
And it happened.
So I sent her that tweet and I was like, I was waiting for you.
Mood board, mood board.
So I think that's going to be very compatible.
I mean, I love building this stuff.
I think what also I love about my job is I get to spend work time working on this stuff now.
Some of it at least.
And so it's great.
Yeah, awesome.
Thank you so much for being on the show, Hassan.
And thank you, everybody.
Where can we, so we can follow Nutlope, which.
doesn't mean anything but it's not taken anywhere else so anywhere you want to find hasan you just write nut lope and uh what can what can we share for you what what you got an event coming up you got something that you want to put out there no he's just shaking and looking at me can we all come to your wedding or you can come to my wedding and peter peter's coming um no honestly i I'm excited.
Nothing major coming up. Cool.
Are you in SF now? Just for the summer.
I'm normally in New Jersey, but moving to New York pretty soon.
Okay.
Awesome. So we'll see you around at events. And we will see you around sharing viral demos too.
So thanks so much for being on the show.
Thanks for being a friend in the code space.
Thanks for having me.
Yeah, I'll appreciate it.