Learning a new Programming Language | Developer Vlog (Backend Microservices)
HTML-код
- Опубликовано: 23 июл 2024
- Learning Backend Web Development in C# by writing my first Microservice. Github repository data is pulled into my database every 10 minutes so that we can display a near realtime software portfolio on my website. In the future we will also add more data to my database so that project pages can be automatically generated (with articles and images etc)
The goal was to build a scalable background microservices architecture, where I can easily write new services independently and then seamlessly plug them into my server on a Cron schedule. I spent most of this video reading documentation and learning ASP .NET Core, Hangfire, Microsoft Entity Framework, object mappers and how to best organize my services to easily extend them in the future. I have found a solution that works well for me, only requiring two lines of code to add a service to my scheduler. This is me learning through doing. Roughly 20 hours of coding went into this video. See below for technologies used in more detail.
Next Video: • Why I'm not in School
Previous Video: • Coding an A* Pathfindi...
Technologies Used
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Backend: C# with ASP .NET Core
Database: MySQL
Scheduler: Hangfire open source background processing library
API: Github
Object Mapper: Microsoft Entity Framework Core (Maps MySQL into objects)
JSON Mapper: Newtonsoft (Maps Github API response into objects)
Editor: VSCode with Material Oceanic Theme
Social
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Website: devoncrawford.io
Twitter: / devoncrawford13
Snapchat: / devoncrawfordyt
Instagram: / devoncrawford_
Github: github.com/devoncrawford
Discord: / discord
Gear
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
- Video Editing Software (Premiere Pro CC): prf.hn/l/BOomWo3
- All Adobe Apps (I use this plan): prf.hn/l/Xv5qk5Q
- Keyboard (Velocifire TKL01): amzn.to/2AQTjJQ
- Monitors (Dell U2518D) : amzn.to/2AQQmco
- Webcam (Logitech C920): amzn.to/2Cw588c
- Desk Microphone (Blue Yeti): amzn.to/2FPFmzi
- DSLR (Canon T7i): amzn.to/2T54mpZ
- Wide Lens (Tokina 11-16mm F2.8): amzn.to/2MlpvcO
Music
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Bubbymane - Forever w/ Tony
Link: / forever-w-tony
Puar - In The Rough
Link: / in-the-rough
DaRu - MXTIXN X Backwood Boy - Pour Dat Phonk
Link: / mxtixn-x-backwood-boy-...
shao - runnin' up w/ SOUDIERE
Link: / runnin-up-ww-soudiere - Наука
Whenever I feel discouraged I come here and you motivate me to keep going.
That's why u are amazing ...
So.true
That's me right now
man, this was a really wholesome comment
Same here
Videos fake. He claimed to start learning a new language yet I didn't see him print one "Hello Wolrd." FRAUD!
Name checks out
big phat phony!
I never printed hello word when tried to learn a second language
No TODO Apps, either!!
using System;
namespace GayWorld {
class Gay {
static void Main() { Console.WriteLine("Gay"); }
}
}
Java can't see sharp sometimes
😂😂😂😂😂 I'm dead
Like WOW...
That joke is seriously really *really* well made!!!!! :DDD
What's the song he's listening at 4:22 when he say " Oh shit, this song is so good...twen nwen nwen nwen *beat drops* " ?
@Barroman1 migos - bando some type of remix
It doesn't most the time! Lol 😂
The great thing about this channel is that is extremely accurate about how a programmer’s life looks like. No bullshit, no unrealistic perfect errorless workflow, this shit is real. Also is great to see his passion and dedication, really missing his videos.
this guy is the entire source of my motivation love you man !!! Kudos to your work
To be honest I love that you put the effort in to make this into a video, really good to watch a fellow dev go through the process in x1000 speed! haha, more where this came from please!
What's the song he's listening at 4:22 when he say " Oh shit, this song is so good...twen nwen nwen nwen *beat drops* " ?
@Barroman1 Got you: soundcloud.com/rogerbeats/finest#t=0:41
Exacly what I was about to say. It's really satisfying seeing him set a goal and just get it all done in a single video.
@@quixfilmz3409 Thx man!
I love it how your head is always full of "Scalability". That means you're always thinking big and optimistic af. Keep going in mate.
Between I am a full-time software developer.
i love these vidoes, id honestly sit down and watch a non speedup version of this for hours easily.
if you're thinking about livestreaming your programming process i'd love to watch
ps i'm a 2nd year cs major trying to self-teach b/c profs at this school suck
keep up the vids :)
Wish I could upvote this more, he should just stream it on twitch and then make upload the vods to a second channel called Devon Crawford-Full or some shit
@@eternalfear88 Both of you have an upvote. I'm all for this, twitch is the ideal platform for this guy and the upside is you won't have to re-watch 12 hours of content to make a 12-minute video.
It's not Reddit here :D
@@chiandet tbh he could just livestream it on youtube where he already has a following, i bet you someone else would end up creating highlights lol
+1
Amazing skills! Your programming skills is even better than some senior software engineers I knew.
Then they're not worth TRUE seniors.
Bisqwit is a though one. He is truly a senior.
I didn't understand half of what you were coding or doing, but I will continue supporting like always!
at least you understood half of it.
Yeah at least you understood half. Coding is so daunting
bro same I cant wait to get to his level LMFAO
I love these videos man. I'm a second year in CS and you always are coming out with cool shit to give me inspiration! Keep it up!
Bro, your videos are always good. Don't ever stop. You're the only coder I know who can explain his code in a top-bottom approach. Keep up the good work, dude
step 1: learn to print "hello world"
step 2: put it on your resume and add the word "proficient"
You can tell that you are going to do well in software engineering. You seem to really enjoy yourself and have a genuine curiosity.
I'm taking a java class this semester in college and I am slow at it because it is just so much coding and knowledge to grasp the understanding of coding just to run things properly. My textbook is well over thousands of pages because it is broken into 2 classes. An intro class and then the next level class basically. I like coding but I seriously want to code at my own pace and not worry about deadlines.
He's young. I remember when I was taking programming classes YEARS ago. Hard to believe it's been 21 years o_0
@@supercoolmunkee if you don't mind
What course are you doing ?
I really love how you are making your videos. Keep up the good work!
It’s nice to see a young mind so excited about learning a new language. I’ve been coding for 30 years and I will tell you this... it gets harder with age. Learn as much as you can when you are young and a sponge! Btw... out of the all of languages I’ve coded in over the years (I’ve lost count), c# is my favourite. Everything about it just makes sense, and the .net framework huge now!
Hey it's me again, just coming to remind you to get that sock off your mic, again.
Its a cheap pop filter. Not all people can afford pop filters :p
And what if other sock was eaten by sock eating monster that lives in washing machines?
@@h3llh0und00 you'd think that a youtuber like a quarter of a million ssubscribers could afford a $15 pop filter XD. but it was just a joke daddy k
Sock kinda looks good
Hey, it's me, Marrio!
Wow this guy is a legit fullstack
Man I love your videos, they are very natural and easy to get an overview of the concepts. Subscribing right now ;)
I have no idea what you're doing in your videos but I am absolutely awe-inspired by your enthusiasm and dedication to learning new things. I am currently studying Computing through correspondence and I am being owned by C++. Watching you makes me realize how big the world of programming is and how far behind I am. Inspiring and de-moralizing all at the same time.
How're you doing these days with it?
you should upload more frequently its fun watching you
tho i don't get a thing you say
same
this is one of those channels where you have no idea why you are subscribed to it.
Yeah
What's the song you were listening at 4:22 when you say " Oh shit, this song is so good...twen nwen nwen nwen *beat drops* " ?
Whats the song name??
@@bobsaydahmat5060 Finest by ROGER. soundcloud.com/rogerbeats/finest
@@vitormendes4126 thanks for existing my friend
@@vitormendes4126 i fucking lvoe you
idk if u still finding but its finest by ROGER
Im amazed at how you are able to teach these problems to yourself. I need teachers, students and TAs to teach me before even understanding where to begin.
For someone who's in his first year of Computer Engineering, these videos are bliss. Thank you.
Congrats for 200k!! Will you do an special video or streaming for it?
Bro, I am 30 year old recent paraplegic. I am about to graduate with a Finance degree however I am moving to Computer Science. Just wanted to say your content really keeps me inspired. Bless from RSA
Keep going my nigga :D
Sandile Mkhize wrk hard and achieve my boi
@@tinamuller2798 why ?
@@siennafalls Sövülmek istiyor :S
How is it going with Computer Science Ntjaa ka!
Whenever you upload a video man I'm super excited. Can't wait for your next!
Love watching these videos...you make the developer community proud.
You are my hero bro.
why
not sure how i got this recommended; i know nothing about the behind the computer details... but dudes music BANGS!
why
you are my enemy sister
why
What's the name of the song you said was good?
thank you for this awesome video again bro! I really enjoy watching your videos and you motivate me to learn new computer stuff.
Software development is soooooooooooooooooo in-depth. Props to the geniuses who have designed these languages and design patterns
As a rather experienced C# Developer it's really lovely to see how you managed to get into the trouble in almost no time. Microsoft greatly improved their docs over the last years and the fact they went completely open source shows that they really understood the real needs of developers. People that don't see any difference between C# and Java mainly don't dig deep enough to see how .NET performs way better (and with .NET Core even cross platform) than Java ever could. IMHO AspNetCore is the best choice for building a modern, scalable and reliable Web API in reasonable time with great tooling and a lot of frequent updates over the time. .NET Core was the starting point for the great community .NET has today.
+
ASP.net with a Reactstrap front end... ooo boi I get excited just thinking about it.
Can you tell me resource to learn c#
PRANJAL AGNIHOTRI the Microsoft Documentation actually is a good starting point. Start with .NET Core and leave .NET Framework aside. With Core you get better tooling and cross platform experience.
Its funny to see all thease front end frameworks. I swear i hate JS. MVC and jquery can aslo just do the job quite well.
how much time do you spend coding/learning/studying per day or week?
He spends way too much time talking into that sock, apparently.
Seeing you excited when learning C# is amazing. It is by far my favorite language to use. Currently using it to develop an Android App and Windows Application.
Came a long way from Minecraft hunger games, good to see you’re alive and well !
Hey Devon
Can you make a SoundCloud playlist listing some of your favorites. I love your taste it would be helpful to enjoy more such kind of music which you've in your videos.
yo this music is soooo goooooood!
what song is it!!
@@patrick2235 I think the soundtracks are listed in the description.
I love these types of videos they're awesome because i can relate so much it's like watching myself code
In my opinion, your videos are one of the best edited videos on RUclips
You could use github webhooks so you wont need to make request every 10min
You still have to reconnect every so often, so it doesn't change much. At this rate, doing requests is actually less intensive on the github servers
Good idea, I'll look into it!
Yes as would I... then I would use SignalR to send that data to my UI so everyone visiting the site gets that data in realtime.
@@luizzeroxis you don't have to ever ping github or whatever when you set up a webhook. nor do you ever have to ping anything when you set up a webhook developer.github.com/webhooks/
@@wi1h omg sorry. I confused webhooks with long polling, lol. Thanks for the heads-up!
discord squad
yeeeep
@LucaisNOTrad100 It's basically an app where you can chat with people. Devon has it's own server where you can find some useful stuff and chat with other subscribers. You can find the link for the app in the description of this video.
You already know what it isss
@@vuyopapiyana add me to the server plz lmao
You're really cool. I appreciate these videos, they're really motivating!
was fun watching.. a few tidbits here and there.. subscribing to the channel.. thanks for sharing..
greetings from The Netherlands mate.. 42yr unix sysadmin turning linux and getting my feet wet in programming..
YOOOOOOOO C# BOYS
ayo
Hello😁
ayyy Best language out there
kevindt12 correct it’s such a great entry language it’s powerful enough to do pretty much whatever you want, has loads of support and is extremely easy to learn with nice intellisense support
Yea well that is why i hate js. There is 0 intellisense support. So yea c# is the best language
Jep, C# is awesome
Please do more of this coding stretch. Your videos are so relatable because I also listen to low-fi hip hop while coding. It just un-scrambles the brain looking at lines of code for long hours at a time.
Just discovered your channel. I'm enjoying it!
im 11 and cuz of you im doing my GCSE's early
keep up the work!
Perry Platupus that’s what she said
You ain't allowed to have a youtube account
Perry Platupus no a few years early
Omg same, but I turn 11 in November
"Finally I split my backend into two sections..." *Tell me more...*
YOUR VIDEOS INSPIRE ME A LOT, IDK WHY!!!!!!
Nice dude!! Hope to see some more content after finals and you can goof around some more in your free time!
How do you handle your programing classes/projects for school plus have time to do your projects? RESPECT MATE!
Clones, bro
He has no social life and has never seen a naked female?
That's one very probable answer.
Good vids, though.
Jase Rogers Who needs naked females when you have a computer 😊
Hey man you know why java developers wear glasses because they don't C#..
Ratandeep Singh ba da tssss
java and C# are very similar
rat it s a joke, C# meaning see sharp
Yo man, you can't imagine how freaking inspiring your videos are!
Very strong problem-solving skill. I just start learning CS this year. Hope I could have the ability like you someday.
C# Looks like a combination of JavaScript and Java
1:09 AM in Vietnam. Have a good day everyone :))
Ayo vietnamese
yo
HELLO VIETNAM 🤗
I never understand what you do or explain but I still watch every video because I love the style haha
Bro, I am really inspired by you to code and you give me more hope to do everything :D
What's the song you were listening at 4:22 when you say " Oh shit, this song is so good...twen nwen nwen nwen beat drops " ? PLEASE
Me too
found it in the comments, its Finest by ROGER
@@frogringtone I can't find it bro mind sending the link
@@eashanramcharan7378 soundcloud.com/rogerbeats/finest ( the part played in the video is on 1.56)
Dude you should have gone with Java and just used the Spring Framework and
microservices are not necessary for your problem.
Instead of polling GitHub for changes you should have set up a webhook on GitHub to notify an endpoint on your Spring application when changes to a git repository have been made, i.e commits have been pushed.
An endpoint would be a standard Spring @RestController. You could deserialize the JSON payload from GitHub to a Java Map and pick the values you want from that map. This map would contain all the information about the repository that has changed. Then you would have a Java Service class house all the business logic to process the request. This service class would look at the request and update your MySQL table using the Spring Data.
I know the microservices is a cool buzzword in the industry right now but it's really not what you need. You could have done this with Java and Spring in a few hours.
INTERESTING. I don't use Java but since he does, I hope he investigates this. But, it is unlikely that he will, especially since he as already invested days into getting this to work.
OR, he could use online tool to create classes from json, use EntityFrameworkCore to create database for him, then use a template generator for REST operations and have all the boring work done by the tools. Then just extend it to fit his needs.
I worked with Java on several ocasions during my way to CS masters, but, like he said in the video, C# just fixes all the issues with Java. Just take a look at LINQ, ReactiveExtensions, freakin async/await. Except for Rx, there nothing like that in Java.
The only way Java is superior are in place anonymous classes, that could be handy in few placec in C#. But in most, in C# we just throw in a lambda (many times async one) and it works :)
Holy shit, that Hangfire dashboard stuff is exactly what I need for the web service I'm trying to build. I'm usually a front end dev so I've been struggling with the backend design and architecture of my service since I need to sync data from an api with my own stuff every 5 minutes. This looks like exactly the stuff I need.
I have no fucking idea what any of this is but it’s mesmerizing. I literally zone out watching his vids
17:45 In Brazil 🔥🔥
I study front-end but studied C# for 2 years. And I must say this shit is entertaining.
You make learning programming so fun.
Also..I see you with the RyanCelsius pulls. His Trappin in Japan mixes are actually the best mixes on youtube.
randomly thought is there anyone on youtube that records their experience for computer science. so glad to find someone that goes through their experiences of a computer science course(did a game dev course myself) and its nice to see that you didnt get a lot of sleep before your math tests either in your old university vlogs 😂
20:20 in South Africa 🇿🇦🔥
@Sean Boonzaier when I commented, it was 20:20 😅
02:28 Bru. 🤣
C# is a language worth learning.
I'm pretty new to software engineering. Can you tell me why C# is worth learning if I already know JS and Node? What advantages does it have over JS and Node? Speed? Thanks in advance
@@playea123 I have the same question....
crevice pounder C# is memory efficient, speedy and is a compiled language (instead of interpreted).
There can't be a comparison if the things aren't a bit similar. I don't see why you would need that "why is it worth learning when I know js"
to learn something other than dynamically typed js (ik type script exists but that's more c# than js)? to make desktop native applications(electron is cool but can it beat it?)? to do a lot of CPU intensive tasks as once faster than async stuff in js? to do Web assembly or blazer for frontend?
No there is no reason you should abandon a language for another. Just use the right tool for the right job
@@officialAXVin thank you!!
@@playea123 learn both and you will have unlimited powaaah
C#, EF, and .NET Core are very interesting technologies. Currently working on a book on related subjects, and have used this in consulting.
Keep up the good work! CS is life-long learning!
- Dr. J
Damn most authentic coder on youtube, you inspire me bro keep up
Ok now I'm sure he will try unity c# once!
Интересно, есть ли наши блогеры, которые делают контент в подобном стиле?
винд, но у него чсв несколько завышено. еще бы я мог заняться, но нужна аппаратура.
@@basiccatboy9382 кто такой винд ?
Hey, Devon, I'm Draft and for sure I love your videos because they just Inspire me to code. Thanks a lot...
Cool video. Just the idea of a system for making background service schedules when I need them is cool. I'll do this at work. Thanks.
#notificatinSquad
I’ve been wating a video to be published so long ago.
Please everyone wish me luck tomorrow, *Web Development Practical Exam* I am G10
*Got On my practical 48 out of 50* 😃
Watched the entire video without knowing even a bit about programming.
things do make sense, now that I'm 3 years into my CS degree 🙂
Devon. Your videos are great. Love watching you build your projects.
I think you should stream this on Twitch.
As always, you never fail to amaze all of us.
i should stop buying courses from udemy and fooling myself that i know how to develop websites
The best way you'll learn is just by giving yourself a task, even it seems impossible, and try to do it with all the resources you have Google, Stackoverflow etc. May sound cliché but "Take Risks, If you win you will be happy, if you lose you will be wise"
Even if you were a developer for 10 years every new project you start you will be sitting in google reading tutorials and documentation because thats what everyone does
knowing udemy track record, someone will collect all of devons videos and put it up as a course on udemy and sell it for $99 some day.
@Dimitri Findlay doing that now :P someone showed me how to power shell and i find myself mimicing him to solve my own problems.
Welcome to the modern world by using .net..
🤔
modern world? boy have you got a lot to learn
I think by .Net he means .Net Core
LMAO
I love your blogs, it is absolutely beautiful Keep it up
This man is the senior of senior software developers.
upload minecraft
Make to português
brasileiro ou português?? pensei q era o único falando portugues aq
Estou aqui também broo programando e respirando davon
Afim de programar junto?
@@alexandrealfa3664 quer fazer o que? Sistema Ou Sites
I get so much motivation from your videos.
love your videos! keep it up!
C# > Java xP
No
Don't argue! Lets just all agree that PHP is crap 😁
Like if c# is the greatest language of all time
No VM based language could claim the title of the greatest language of all time.
i work with many languages but find c# the best language. Very versatile and we can done any task with beautiful and less messy code
@@user-py9cy1sy9u im just a noob programmer bro haha. I dont even know what a vm based language is 😅.
Can u guys give me some feedback on a unity game i made. I made it about 4 months ago its kinda shitty.
ruclips.net/video/E6WlAdokyr8/видео.html
@@owengiri8654 When you "compile" your C# program it is transformed into intermediate language between C# and assembler (CLI). Then when you run your program .NET VM JITs(Just in time compilation) it to machine code. This is fast but it doesnt produce as fast machine code as GCC or LLVM optimizing compilers. Because VM based languages produce sub optimal executables they cant be considered best of all times.
From a language point of view D could be used as easily as C# and it compiles to machine code producing faster programs. While at this moment D doesnt have as many libraries as C# it can change with time.
Now C# is implementing D slices as C# span so you benefit from D even if you dont use it.
Hey man! I love this video! It inspired my next project :)
oof the effort, the code, the quality... too good! I've been contemplating starting to upload coding on my RUclips... not sure if I should considering it would be way different than what I'm posting right now, but you're videos tempt me to do so
Bruh you just have the ability to make coding seem so cool (not a nerdy thing), ur videos are so motivative, cuz im majoring in computer science too :)
people who are watching you will die out if you won't upload videos more often. THIS IS SO FREAKING INTERESTING TO WATCH BRO. and your musical taste is beautiful
Great 👍🏼 I enjoyed watching this vid!
i don't understand nothing now,but hope i be like you,to make programs and programming this is my dream man u really hype me and i just love you man
I like the "Collective Soul" in the back wall ^^ nice music Congrats
Dude I love watching you coding, I hope be like you in the future, you inspire me to code more :) PD: share your SoundCloud playlist please.
From Dominican Republic.
I used to enjoy coding before but the ambiguous or complex business logic always makes me crazy.
아무튼 대단하다.
I also hope to be a quick learner like you and not afraid of a new program language.
구독합니다.
Could you please keep posting, these videos are extremely entertaining:)