![Nick Proud](/img/default-banner.jpg)
- 83
- 400 123
Nick Proud
United Kingdom
Приєднався 27 тра 2016
Software Engineer | Microsoft MVP | .NET Enthusiast
The Start of My Exciting Self-Hosted Journey
Embark on my self-hosting journey with me as I give you a detailed tour of my new home lab setup. Explore the ins and outs of my personal data center, from the server rack to networking gear, and discover the DIY hosting solutions I've implemented. Join me as I showcase my hardware, Proxmox setup, UPS, pfSense firewall, and self-hosted services. Whether you're a DIY server enthusiast or interested in network security, this homelab tour is sure to inspire your own tech home projects. Start your own tech journey today! #proxmox #selfhosting #networking #infrastructure #homeoffice #tech #pfsense #homeoffice #homeassistant #raspberrypi
Переглядів: 197
Відео
How To Make A .NET Worker Services App (Fast)
Переглядів 5649 годин тому
Discover the exciting world of Worker Services in .NET with me! Unleash the power of these simple yet robust projects for handling repetitive tasks in the background. Elevate your C# software development skills to new heights as we dive into Worker Services together! 💥🔥 #dotnet #microsoft #learntocode #csharp #programmer #programming #code #tech
Software Developer Takes Day Off - Plays Piano in Pajamas
Переглядів 1,3 тис.28 днів тому
Join me as on my day off, trading code for the soothing melodies of the piano. Watch as I unwind with a beautiful rendition of Beethoven's Moonlight Sonata, showcasing the importance of hobbies and relaxation in the midst of programming. So sit back, relax, and enjoy this coding break as I play piano inmy cozy pajamas.
Minimal API Mastery: Boost Your ASP.NET Minimal APIs with Data Annotations for Model Validation!
Переглядів 299Місяць тому
Learn how to leverage data annotations to validate models effectively in ASP.NET Minimal APIs. In this tutorial, we'll explore the essential techniques and best practices to ensure your API models are accurate and reliable. Perfect for both beginners and experienced developers looking to enhance their ASP.NET skills. 🚀 Key Topics Covered: Introduction to Data Annotations Applying Data Annotatio...
I'M BACK!
Переглядів 438Місяць тому
I'm back! This time, in a new office based in my garden. I'm committed to still bringing you C# and .NET content, but I'm also excited to bring you more varied content around subjects such as cloud, with Microsoft Azure, python, javascript, along with other programming languages and AI to make more Software Engineering content. #dotnet #programming #softwaredeveloper #softwaredevelopment #softw...
Easy C# Tutorial - Understand Attributes and Write your Own!
Переглядів 2 тис.4 місяці тому
Dive into the world of C# attributes with my latest video tutorial! Learn how to harness the full potential of attributes in your code, from customization to optimization. Whether you're a seasoned developer or just starting out, understanding attributes is crucial for crafting efficient and flexible C# programs. #dotnet #csharp #softwaredevelopment
Easy Guide to Creating Minimal APIs in ASP.NET
Переглядів 1 тис.5 місяців тому
Discover the simplicity and versatility of Minimal APIs in ASP.NET with my step-by-step tutorial! Learn how to create HTTP GET, PUT, POST, and DELETE methods effortlessly, using a student management app as a real-world example. Whether you're a seasoned developer or new to ASP.NET, this tutorial will empower you to streamline your development process and build powerful APIs with ease. 00:00 Wha...
From Pianist to Software Developer in 1 Year
Переглядів 3285 місяців тому
Join me as I share my personal journey from an arty kid in Stoke-on-Trent to a self-taught software engineer! 🎨💻 In this video, I reflect on being the 'piano boy' who secretly explored the world of coding and discuss my transition into IT. We'll also tackle imposter syndrome and explore the possibilities of a rewarding software development career without a formal Computer Science degree. Subscr...
Unlock Emotion Detection with ML.NET Sentiment Analysis! 💻😃🔍
Переглядів 4616 місяців тому
Welcome to the world of sentiment analysis with ML.NET! In this tutorial, we'll guide you through the exciting journey of harnessing machine learning to analyze and understand sentiments in text data. Whether you're a seasoned developer or just starting out, dive into the magic of natural language processing and empower your applications with emotional intelligence! 🌐✨ 🔍 Topics Covered: Introdu...
Revolutionize Your Coding: C# Machine Learning Essentials with ML.NET!
Переглядів 10 тис.6 місяців тому
Dive into the world of Machine Learning with C#! 🤖✨ In this video, I guide you through building a powerful email subject classifier using ML.NET. Learn step-by-step as we train our model on a real dataset and witness the magic of predicting the an appropriate matching item in action. Whether you're a seasoned developer or just starting out, this tutorial is your gateway to the exciting realm of...
C# 12 - The Best New Features from the .NET 8 Release!
Переглядів 1,2 тис.7 місяців тому
C# 12 - The Best New Features from the .NET 8 Release!
The Best Way To Generate Random Words In .NET Core (C#)
Переглядів 3017 місяців тому
The Best Way To Generate Random Words In .NET Core (C#)
Aspect-Oriented Programming with C#, Custom Attributes and PostSharp
Переглядів 9817 місяців тому
Aspect-Oriented Programming with C#, Custom Attributes and PostSharp
Using P/Invoke in C#: Windows API Integration Made Easy!
Переглядів 2,1 тис.8 місяців тому
Using P/Invoke in C#: Windows API Integration Made Easy!
Introduction to DateTime in C#: Master the Basics!
Переглядів 1,5 тис.10 місяців тому
Introduction to DateTime in C#: Master the Basics!
Supercharge Your C# Code: Integrating Python using Python.NET
Переглядів 30 тис.11 місяців тому
Supercharge Your C# Code: Integrating Python using Python.NET
From Novice to Expert: Harnessing the Power of Raw SQL Queries in Entity Framework with C#
Переглядів 1,7 тис.11 місяців тому
From Novice to Expert: Harnessing the Power of Raw SQL Queries in Entity Framework with C#
Master Azure Magic: Deploy Blazor to Cloud in Minutes! 🔥🚀
Переглядів 1,7 тис.Рік тому
Master Azure Magic: Deploy Blazor to Cloud in Minutes! 🔥🚀
Blazor Server vs Blazor WebAssembly: Which is Right for You?
Переглядів 12 тис.Рік тому
Blazor Server vs Blazor WebAssembly: Which is Right for You?
Learning C#? You NEED To Learn Regular Expressions!
Переглядів 1,7 тис.Рік тому
Learning C#? You NEED To Learn Regular Expressions!
Mastering TCPListener in C#: Building Network Applications from Scratch
Переглядів 15 тис.Рік тому
Mastering TCPListener in C#: Building Network Applications from Scratch
Make an Interactive Blazor App in Less than 20 MINUTES! Learn Routing and Navigation.
Переглядів 3,1 тис.Рік тому
Make an Interactive Blazor App in Less than 20 MINUTES! Learn Routing and Navigation.
Blazor Form Creation: Effortless User Interaction for Web Apps
Переглядів 7 тис.Рік тому
Blazor Form Creation: Effortless User Interaction for Web Apps
Master SQL to Excel Data Export: Entity Framework & ClosedXML | ASP.NET Blazor Tutorial
Переглядів 2,5 тис.Рік тому
Master SQL to Excel Data Export: Entity Framework & ClosedXML | ASP.NET Blazor Tutorial
Create Your Own Chat App: SignalR Mastery in C# & ASP.NET
Переглядів 32 тис.Рік тому
Create Your Own Chat App: SignalR Mastery in C# & ASP.NET
C# Tutorial - How to use Cancellation Tokens. Manage Long-Running Tasks in your Code Efficiently!
Переглядів 3,1 тис.Рік тому
C# Tutorial - How to use Cancellation Tokens. Manage Long-Running Tasks in your Code Efficiently!
C# Tutorial. Records - What They are and How to Use Them
Переглядів 1,8 тис.Рік тому
C# Tutorial. Records - What They are and How to Use Them
The Singleton Pattern in C#. How to Use It...But Should You???
Переглядів 1,4 тис.Рік тому
The Singleton Pattern in C#. How to Use It...But Should You???
Ultimate Guide to C# Generics: Type-Safe and Reusable Code Explained
Переглядів 1,3 тис.Рік тому
Ultimate Guide to C# Generics: Type-Safe and Reusable Code Explained
.NET 8 Preview 1 - New JSON Serializer Features!
Переглядів 1,8 тис.Рік тому
.NET 8 Preview 1 - New JSON Serializer Features!
I have some problems with loading the dll file, can you help me? I am using the same version as you.
Hi, thanks for your work. I have a question, why didn’t you use Using statement before var client ? using var client = _httpClientFactory.CreateClient();
if i have text like " 15rg,53 pack " or 15rg, pack 53" i need 53 value only how its through regex
Are those patterns always the same? If they are you can do a match check against those two patterns
Please share a video on explaining Reflection.
Great video! Please share some recommended text for networking with c#
Hi Nick. Very clear explanations. Thank you!!
Question: if i want to use python script for data processing and then create the domain objects in c# what would be the best strategy to do it?
Nice explanation, thanks a lot :)
Nice tutorial. One question has anyone made as good video like this where also concurrency is implemented. I mean for example situation where multiple users are updating or reading same table or even rows at the same time from own computers.
Lol 😂😂 i am working with mvc and call this function again py.gil() hangs give any solution for this@
Project source code in GitHub?
What C# extension are you using to display the debugging results next to each line?
Love this Nick!
can anyone tell why py.gil() hangs on when we call again
Great stuff!
I forgot how relaxing the piano is
Awesome!
Your videos are Amazing We have an editing team that can help enhance your content. Is there any way we can assist you with your channel? Thanks, Kashif Alam
Hey LoadingColumn(0) is not a Subject column. It is a Number column the first one.
using Newtonsoft.Json; using System.Text.Json; var blogPost = new BlogPost { Title = "Hello, World!", Body = "This is my first blog post.", Author = "John Doe", IsPublic = true, PublishDate = new DateTime(2021, 1, 1) }; // Using System.Text.Json JsonService.Serialize(blogPost); JsonService.Deserialize<BlogPost>(@"{""Title"":""Hello, World!"",""Body"":""This is my first blog post."",""Author"":""John Doe"",""IsPublic"":true,""PublishDate"":""2021-01-01T00:00:00""}"); JsonService.SerializeToFile(blogPost, "blog-post.json"); JsonService.DeserializeFromFile<BlogPost>("blog-post.json"); // Using Newtonsoft.Json NewtonJsonService.Serialize(blogPost); NewtonJsonService.Deserialize<BlogPost>(@"{""Title"":""Hello, World!"",""Body"":""This is my first blog post."",""Author"":""John Doe"",""IsPublic"":true,""PublishDate"":""2021-01-01T00:00:00""}"); NewtonJsonService.SerializeToFile(blogPost, "blog-post-newton.json"); NewtonJsonService.DeserializeFromFile<BlogPost>("blog-post-newton.json"); public class JsonService { public static void Serialize<T>(T obj) { var json = System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true }); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"{json} "); Console.ResetColor(); } public static T Deserialize<T>(string json) { var obj = System.Text.Json.JsonSerializer.Deserialize<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true })); Console.ResetColor(); return obj; } public static void SerializeToFile<T>(T obj, string path) { var json = System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true }); File.WriteAllText(path, json); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"Serialized to {path} "); Console.ResetColor(); } public static T DeserializeFromFile<T>(string path) { var json = File.ReadAllText(path); var obj = System.Text.Json.JsonSerializer.Deserialize<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true })); Console.ResetColor(); return obj; } } public class NewtonJsonService { public static void Serialize<T>(T obj) { var json = JsonConvert.SerializeObject(obj, Formatting.Indented); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"{json} "); Console.ResetColor(); } public static T Deserialize<T>(string json) { var obj = JsonConvert.DeserializeObject<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(JsonConvert.SerializeObject(obj, Formatting.Indented)); Console.ResetColor(); return obj; } public static void SerializeToFile<T>(T obj, string path) { var json = JsonConvert.SerializeObject(obj, Formatting.Indented); File.WriteAllText(path, json); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"Serialized to {path} "); Console.ResetColor(); } public static T DeserializeFromFile<T>(string path) { var json = File.ReadAllText(path); var obj = JsonConvert.DeserializeObject<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(JsonConvert.SerializeObject(obj, Formatting.Indented)); Console.ResetColor(); return obj; } } public class BlogPost { public string Title { get; set; } = string.Empty; public string Body { get; set; } = string.Empty; public string Author { get; set; } = string.Empty; public bool IsPublic { get; set; } = false; public DateTime PublishDate { get; set; } = DateTime.Now; }
using Newtonsoft.Json; using System.Text.Json; var blogPost = new BlogPost { Title = "Hello, World!", Body = "This is my first blog post.", Author = "John Doe", IsPublic = true, PublishDate = new DateTime(2021, 1, 1) }; // Using System.Text.Json JsonService.Serialize(blogPost); JsonService.Deserialize<BlogPost>(@"{""Title"":""Hello, World!"",""Body"":""This is my first blog post."",""Author"":""John Doe"",""IsPublic"":true,""PublishDate"":""2021-01-01T00:00:00""}"); JsonService.SerializeToFile(blogPost, "blog-post.json"); JsonService.DeserializeFromFile<BlogPost>("blog-post.json"); // Using Newtonsoft.Json NewtonJsonService.Serialize(blogPost); NewtonJsonService.Deserialize<BlogPost>(@"{""Title"":""Hello, World!"",""Body"":""This is my first blog post."",""Author"":""John Doe"",""IsPublic"":true,""PublishDate"":""2021-01-01T00:00:00""}"); NewtonJsonService.SerializeToFile(blogPost, "blog-post-newton.json"); NewtonJsonService.DeserializeFromFile<BlogPost>("blog-post-newton.json"); public class JsonService { public static void Serialize<T>(T obj) { var json = System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true }); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"{json} "); Console.ResetColor(); } public static T Deserialize<T>(string json) { var obj = System.Text.Json.JsonSerializer.Deserialize<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true })); Console.ResetColor(); return obj; } public static void SerializeToFile<T>(T obj, string path) { var json = System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true }); File.WriteAllText(path, json); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"Serialized to {path} "); Console.ResetColor(); } public static T DeserializeFromFile<T>(string path) { var json = File.ReadAllText(path); var obj = System.Text.Json.JsonSerializer.Deserialize<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(System.Text.Json.JsonSerializer.Serialize(obj, new JsonSerializerOptions { WriteIndented = true })); Console.ResetColor(); return obj; } } public class NewtonJsonService { public static void Serialize<T>(T obj) { var json = JsonConvert.SerializeObject(obj, Formatting.Indented); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"{json} "); Console.ResetColor(); } public static T Deserialize<T>(string json) { var obj = JsonConvert.DeserializeObject<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(JsonConvert.SerializeObject(obj, Formatting.Indented)); Console.ResetColor(); return obj; } public static void SerializeToFile<T>(T obj, string path) { var json = JsonConvert.SerializeObject(obj, Formatting.Indented); File.WriteAllText(path, json); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"Serialized to {path} "); Console.ResetColor(); } public static T DeserializeFromFile<T>(string path) { var json = File.ReadAllText(path); var obj = JsonConvert.DeserializeObject<T>(json); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(JsonConvert.SerializeObject(obj, Formatting.Indented)); Console.ResetColor(); return obj; } } public class BlogPost { public string Title { get; set; } = string.Empty; public string Body { get; set; } = string.Empty; public string Author { get; set; } = string.Empty; public bool IsPublic { get; set; } = false; public DateTime PublishDate { get; set; } = DateTime.Now; }
I'll test this and see if you have the csv in "sharing" if the app can still read it when it's open.
All great except the Man United shirt 😋
Excellent video - your explanation is so clear which makes learning easy and fun. I wish I had found your channel earlier.
Love how you explained this can you explain null some time
Hey Nick - thank you for this introduction! It really helped me a bunch! Cheers!
Nice! .NET Aspire content would be awesome too. :)
Super helpful to me, thanks!
Glad it helped!
How to set the python virtual environment before calling the script from C#?
I had problems with 'No module named' on debug! And I solve this installing pywin32: pip install pywin32
excellent Nick!
Thanks!
Yes powershell please! I've always wanted to try powershell, but never knew where to start. I'd be very interested in a series with that.
Good to know!
infrastructure will be fine, cant wait
You should get a split keyboard like the iris with linears like the kailh speed silver. Is a gamechanger Linears because they're the smoothest and quietest to type on. Tactiles have that bump but it's not really practical. Did you build that house in your backyard? How much did it cost total?
Never tried a split keyboard. Would be a bit of an adjustment for me! I was very lucky, the house I bought came with the office :)
@@nickproudprogrammer lucky man, that's one beautiful office 😁
For those having issues, inside your py.GIL block add this dynamic sys = Py.Import("sys"); sys.path.append ("your folder spec "); /| the folder where your python scripts are.
I am trying to get on C# (been programming PHP+etc on/off for 20yrs+) and when I try to think about what to learn to code, it's always something network related so these are really nice and it's good that you show stuff instead of just typing and telling "that's that" - I actually learn something. :) More network C# related stuff gogo! <3
Amazing feedback thank you so much.
At this time, has anyone used Py.Import to import a .py program file using its path?
youre the best nick! im waiting for new episodes!! keep going youre great!
Glad you like them!
Thanks for this. Off topic but which component suite do you use? Any experience of Infragistics IgniteUI?
Hello, thanks a lot for tutorial. I have created a disease prediction model, following this tutorial. but i am having some issues please can you help me out. i have develop the model, but the model keep predicting same thing over and over
Did you solve this issue? I would be interesting to give you a hand about this topic!! Let me know it
To change the path for the scripts, before importing the script, just add: dynamic sys = Py.Import("sys"); sys.path.append(Path.Combine(scriptPath)); Great presentation. Thank you!
This is a fantastic tutorial, thanks so much! I learned loads today.
Thank you, brother, you helped me figure out a lot.
Thanks
Kindly guide me to select the better tool for server-side rendering blazor or react?
Thanks for the video, it was helpful, especially for just starting out with APIs and Postman.
I can't believe it ... I finally got this to work lol, not Nick's fault, my ignorance ... which has recently decreased every so slightly haha
What a nice and simple explanation. You're a great teacher. Thanks!
just one simple implementation 14minute talk .d it's not necessary i think
"This is just a tribute." - Tenacious D. Unity uses a lot of attributes in its editor. Godot uses them for allowing resources to be created via editor menus. I think they are great for circumventing overuse of inheritance. Its a much more component based paradigm.