The Windows Source Code Revealed: Task Manager (E01)

  Рет қаралды 459,056

Dave's Garage

Dave's Garage

Күн бұрын

The original author of Windows Task Manager takes you on an authorized tour of the Windows source code behind the XP Task Manager. For information on my book, Secrets of the Autistic Millionaire: amzn.to/45ZzcFW
Windows code provided courtesy of Microsoft Corporation; this code is NOT open source and it remains Microsoft copyrighted material, used with permission.

Пікірлер: 894
@gothikia
@gothikia Жыл бұрын
This is what I love about the internet. I was 9 years old when I got to use Task Manager for the first time in 1995 and here we are, almost 30 years later, watching the esteemed author of an application who came to my aid so many times, walking me through the code of the aforementioned application. Its also reassuring that I also name stuff after me in the code when subclassing.
@GasssFreak
@GasssFreak Жыл бұрын
In a modern company you'd just get a code review comment every time you did that.
@skywizard3319
@skywizard3319 Жыл бұрын
I was being born when they shipped
@竜肝油
@竜肝油 Жыл бұрын
subclassing lol
@victorgarcia3526
@victorgarcia3526 Жыл бұрын
Omg thirty years, that hurted...
@BGraves
@BGraves Жыл бұрын
​@@ducpaiiit IS a data farm AND a good OS. The world ain't black and white
@deldrinov
@deldrinov Жыл бұрын
"With Microsoft's permission" "Windows XP version" Yeah, we've seen it
@Akrucious
@Akrucious 8 ай бұрын
lol troo
@markusTegelane
@markusTegelane 5 ай бұрын
even though it's leaked, it's still illegal to distribute it without permission, because copyright (which this video is technically doing)
@Akrucious
@Akrucious 5 ай бұрын
@@markusTegelane It's in the name, copyright, he didn't share a copy of the actual data that Microsoft owns, they shared a video, it's not the same binary data nor is streamed content copied to machines storage device.
@Gideon_Judges6
@Gideon_Judges6 28 күн бұрын
​@@Akruciouswell, strictly speaking he's sharing the source code on screen. Legally thats the same as if he sent it to you on a floppy or printed it out. You need the right to copy and distribute, hence copyright. He says he got permission, so I'll take his word for it.
@zfloflo
@zfloflo Жыл бұрын
Wonderful! Yes, please, keep it coming... I can't wait to watch the next part. Thank you for taking the time to show this code. It's literally like opening a time capsule! And please pass my thanks to MSFT for allowing you to do it. Greatly appreciated!
@mykyta1235
@mykyta1235 Жыл бұрын
no, noone will ever pass anything from you.
@delian66
@delian66 Жыл бұрын
@@mykyta1235 why do you have to write this? Are you ok?
@AliceErishech
@AliceErishech Жыл бұрын
@@delian66Some people just can't refrain from being insufferable.
@Bittboy
@Bittboy Жыл бұрын
​@@mykyta1235Peter Noone sucks anyways.
@RobertM125
@RobertM125 Жыл бұрын
In high school many years ago my computer science teacher told us that if anyone used a global variable in our code, he would put a red F on our printout with such force that the next three printouts below ours would lose credit. I still tremble when I really need a global variable today. Great video as always. Thank you so much for this walk through for a program I have needed so many times.
@nwrocketman6438
@nwrocketman6438 Жыл бұрын
I had a similar thing in college. It was a rule in my first C++ class to not have any global variables.
@Noricavus
@Noricavus Жыл бұрын
Don't remember globals being a big issue as much as using goto. If you used it...fail.
@arthurmoore9488
@arthurmoore9488 Жыл бұрын
@@acacac557 Too true. The problem is that CS (and Computer Engineering) degrees never bother to teach what time is appropriate. My other main complaint is the data structures courses never bother to even tell students to just use a library. I've had to maintain "professional" applications made for the government with custom linked list implementations. With the application being written using C++ in 2015!
@alang.2054
@alang.2054 Жыл бұрын
​@@acacac557yes there is place to use them - right after "//"
@rand0mtv660
@rand0mtv660 Жыл бұрын
And then you step out into the real world and realize code is not perfect and you will do things that you were advised against in college or any book/tutorial etc. Sometimes you just need to get stuff done and will twist "best practices" in order to achieve what you need.
@warmarin
@warmarin Жыл бұрын
I wish I was tech-savvy enough to understand what is going on here, but I must salute your ability to explain technical stuff and bring it down to a layman's level. Thanks Dave
@jaygosch8705
@jaygosch8705 Жыл бұрын
This is the first walk through of real Windows code I've seen. Excellent tutorial on all the details you need to handle when writing a stable application. I even learned about a few features of Task Manager that I hadn't heard about before. I would definitely watch the next part if you make one. 😊
@monad_tcp
@monad_tcp Жыл бұрын
Now I will reverse engineer Windows11's task manager to see the similarities from the Win32 calls.
@bluescreenenjoyer
@bluescreenenjoyer Жыл бұрын
This is really great, I love to see how core windows stuff works, especially because it seems like talented programmers were able to bake in so many features that needed so little resources. Please keep this series up.
@axelriet
@axelriet 11 ай бұрын
This is great code but by no means « core Windows stuff » 😊
@shannahsantucci3017
@shannahsantucci3017 8 ай бұрын
Small pro-tip: If you click a function (or method) call while pressing “Control” (or “Command” on Mac), you will go to their definition. This will avoid you right-clicking everything. Amazing video!
@JonC341
@JonC341 Жыл бұрын
The more I try to keep up with the code, the more I realize that for many today, including myself, it would be hard to make so many functions and get so many resources without breaking something or a size requirement. Dave you are and will always be a computer hero!!!!
@nickwallette6201
@nickwallette6201 Жыл бұрын
Eh, even Task Man wasn't written and compiled in one go. :-) Sometimes you have to rough in the guts, and then go back and include the error checking, i18n, and security checks you didn't remember the first time.
@martinclerked
@martinclerked Жыл бұрын
I just want to say i know little about coding and whatever the heck else its called, but being able to bring up task manager when your computer is totally frozen and not working was a god sent blessing and i miss it very much. Came in clutch for me alot of times in the past. Thank u for your work bro
@LaurenceHartje
@LaurenceHartje Жыл бұрын
Dave, as a long time viewer/lurker of your channel, a Windows 3.1 MCP and currently working as a software engineer - this is one of my favorite videos that you have done. I've only written a few projects in Windows C (being lucky that I could leverage the benefits of C# for most of my professional career), but this was an amazing walk through the task manager code and I look forward to the follow up videos.
@meerkatpowergaming9412
@meerkatpowergaming9412 Жыл бұрын
I appreciate how far C# has come from the early days of C#. I am happy to say its my favorite language.
@ignaciosanmartin2143
@ignaciosanmartin2143 Жыл бұрын
Programmers like you are an inspiration. The fact that you come from a time when programmers had to study and understand complex concepts from books is awesome.
@grahamstretch6863
@grahamstretch6863 Жыл бұрын
Whilst most (if not all) of this went clean over my head I still found it interesting, much of that interest came from the comments written within the code! My favourite comment being something about poking your eye with a sharp stick and we would still not be able to see wherever it was! Thank you for the chuckle! As an aside, during my Btec in engineering my tutor told my best friend and me that we were “computer illiterate!” 🤣 I told him I didn’t need to program it, just use it and I then continued down the mechanical engineering path barely scraping a pass in “computing” ending up in toolmaking which I love. I really enjoy your videos and find something of interest in most if not all of them. Ps I hate the shorts, every short, not just yours!
@erc0re526
@erc0re526 Жыл бұрын
Videos like these are priceless, we get too see how critical programs we all used (and still use) were written and designed and *why* things were done a certain way! Please keep those going!!
@Margen67
@Margen67 11 ай бұрын
Penguins need HUGS
@TanjoGalbi
@TanjoGalbi Жыл бұрын
Some people may be a bit confused as to why minimized is referred to as being iconic. This goes back to Windows 3.1 and earlier. In those older versions of Windows there was no task bar. When you minimized a window an icon for the app was placed on the desktop which was not like today's desktop where you can place files, what went on the desktop back then was up to Windows. They did change flag names to be minimized instead of iconic (for a while before phasing out the old you could use either names for the flag) but some SDK functions retained the old name for backwards compatibility where the old function just called the new function name until the old name was phased out.
@eDoc2020
@eDoc2020 Жыл бұрын
To add to this, there was a WM_PAINTICON message which the system sends to the window to ask it to draw this icon. The default handler draws the class icon but it was also possible to override this and generate an icon on the fly. I _think_ Windows 95 might send this message and if it detects custom processing then scale down the drawn image to fit the taskbar and title bar icons.
@szymonwelgus7930
@szymonwelgus7930 Жыл бұрын
wxWidgets also calls it Iconized in several places. I never understood why, but just went with it. Thanks for history tidbit! Love learning about stuff like this
@TanjoGalbi
@TanjoGalbi Жыл бұрын
@@szymonwelgus7930 You are welcome 🙂 I think Dave really should have briefly, a minute or two, explained this instead of leaving it hanging like he did as it is an interesting side note to show how Windows evolved and how remnants of the old still stuck around for a while.
@yovtobe
@yovtobe Жыл бұрын
It's one of those things I'd not realized I'd forgotten. The task bar was a huge deal when it popped up.
@Gideon_Judges6
@Gideon_Judges6 28 күн бұрын
Ahh yes back in the days of Program Manager.
@TheMasonX23
@TheMasonX23 Жыл бұрын
Please make a part two! I'm working on improving our system performance logging and display, so it would extra cool to see how you accomplished that back in the day. Keep up the great work man!
@khuntasaurus88
@khuntasaurus88 Жыл бұрын
What exactly is slowing you down? I'm sure we could do community code support seeing as most people watching this are devs 😂
@ThatOneRei
@ThatOneRei Жыл бұрын
This is the type of content I love seeing as a computer science student and that I wish I saw in my classes. Your way of talking and explaining is so easy to digest, thank you.
@8antipode9
@8antipode9 Жыл бұрын
Had fun with this! In '95, I was a senior in college studying music composition as my major, but programming had always been a hobby for me. Read "Learn Windows Programming in 30 days", but it took me about 6 months. I have fond memories of writing windows programs talking directly to win32.
@Rinue2
@Rinue2 Жыл бұрын
Fantastic review and it's interesting to see behind code :) On another note the cam auto zoom was a bit too aggressive for me and caused some motion sickness.
@SirkyNL
@SirkyNL Жыл бұрын
Sad to see the camera zoom indeed! im a bit dizzy after a minute of watching closely
@at3o
@at3o Жыл бұрын
He turns it off at 9:32 😎
@robbybobbyhobbies
@robbybobbyhobbies Жыл бұрын
I was getting Wayne’s World vibes
@SirkyNL
@SirkyNL Жыл бұрын
@@at3o 🙏🏼
@jonnyphenomenon
@jonnyphenomenon Жыл бұрын
I came here at 4:43 to comment on this. Haha I am SO distracted by the zooming!
@SemihFatihAdem
@SemihFatihAdem Жыл бұрын
I'm glad seeing all of these from a professional including a bug in the code. Seeing how the pages and settings communicate with each is really cool. Lot of messaging going on. Looking forward to part 2.
@JacGoudsmit
@JacGoudsmit Жыл бұрын
Thanks for turning that tracking off on that gimbal camera. I would not have watched it to the end if you had left that on. This is great stuff. I hope you'll look into the bugbug to see if it's actually a bug and to show us what it will look like, once fixed (if needed). Also glad to see I'm not the only one who prefers cascaded "if (everything is okay) do the next init step" and at the end "if (this is initialized) tear it down" style of coding. I learned it while I was working at ASML where the main function of the program had so much initialization that it ran into a compiler bug, where the optimizer was changing all the branches to go to the bottom of the function, and the branch distance for the earliest "if (everything is okay)" ended up being too big to fit in the instruction. Good times! Apparently the writers of the compiler (or optimizer) didn't count on long lists of "if (everything is okay)" coding.
@JamieKitchens6
@JamieKitchens6 Жыл бұрын
This is just simply amazing information to take in. Thank you Dave for always bringing the good stuff.
@tedvanmatje
@tedvanmatje Жыл бұрын
Poking yourself in the eye with a sharp stick....had to that a few times😂 You are a legend, Dave. Thanks for posting this behind the scenes, mate 🖖
@Intermernet
@Intermernet Жыл бұрын
Definitely continue this series! It's rare to see actual performance hacks in internal code. The code may be old, but the tips and hints are transferable to modern code.
@boydpukalo8980
@boydpukalo8980 Жыл бұрын
Really fascinating seeing actual source code of a program I have used for decades and which has brought system back from near death experiences. Looks like straight Win32, no MFC, or newer frameworks so far. I look forward to the next installment.
@1971merlin
@1971merlin Жыл бұрын
It's straight win32. Dave says so numerous times. Any dependencies outside itself simply lower reliability (eg if the problem is the framework itself).
@harleyspeedthrust4013
@harleyspeedthrust4013 Жыл бұрын
straight win32 is the best
@gevikb
@gevikb Жыл бұрын
Hi Dave, thank you for walking us through the code. I remember I was 19-20 browsing through my Petzold book and trying to understand how the WM_ messages all worked. Programming Windows was considerably more complex than MS-DOS stuff. It was a wonderful journey of discovery and fun. Thank you for bringing back those memories.
@MehYam2112
@MehYam2112 8 ай бұрын
This was more fun than it had any right to be, really brought me right back to my days coding Windows apps. Your code was very clean and easy to follow.
@timeimp
@timeimp Жыл бұрын
"commit seppoku" I think Dave is incredibly... internet experienced. Thank you _so much_ for walking through this code with us Dave!
@Alchemetica
@Alchemetica Жыл бұрын
The code is great to see. It is causing long unused synapses to fire signals between "sleeping" neurons and low and behold I can actually recall partial understanding of the code. Seeing you named some functions with your name made me remember I used to get a kick out of using as part of a function name past girlfriend names or composers etc. Knowing in all likelihood I would be the only one to ever know these names were in the code. Early in my coding global variables were my best friends : )
@saymehname
@saymehname 8 ай бұрын
I love these code reviews, and especially since this is your own work almost 30 years ago!
@pixelpoppyproductions
@pixelpoppyproductions Жыл бұрын
I really appreciate the task kill shell commands you added back in the day. That is the kind of feature that can be built onto years later. I work in civil engineering (not software), and being able to kill any Windows process via shell commands really helped me improve the reliability of a software service I developed that my department depends on for their daily work. It probably seems dumb to software engineers, but for someone who just needs to get stuff done - it’s a big deal. That feature means I can go on a vacation without having to physically log into a machine - personally - to reset a misbehaving program. I can automate it and the users have no idea what happened. It just works!
@greennin
@greennin Жыл бұрын
Dave, I just wanted to say, there are some great lawyers on youtube, there are some great doctors, and there are some great scientists in many subjects. Among computer scientists you are right up there with the best of your field. The platform is strong because of people like you. Videos from true experts in their fields are invaluable. KZbin owes you people everything.
@LuLeBe
@LuLeBe Жыл бұрын
I think KZbin owes 90% of their revenue to product reviewers (not the in depth ones, but the sponsored ones) and mainly lifestyle vlogging content. It’s a shame, but that’s how it is. Just log in to KZbin from an incognito tab and see what crap is on the frontpage.
@greennin
@greennin Жыл бұрын
@@LuLeBe yeah i've checked in incognito before. it's scary what the mainstream watches lol
@anarkidude9360
@anarkidude9360 Жыл бұрын
@@LuLeBeContent promoted on the main page , from not logged account: 90% fake people, showing their fake asses , boosting of their fake online existence? It hurts my eyes.
@eplazai
@eplazai Жыл бұрын
Hey. I see no comments telling how cool was Microsoft authorizing to show us the source. Thanks Dave!
@DavesGarage
@DavesGarage Жыл бұрын
I was blown away too, and am very appreciative... it was one of those long shots!
@KlasNyman
@KlasNyman Жыл бұрын
Charles Petzold, what a legend! My first of his books was 'Programming the OS/2 Presentation Manager', taught me a lot!
@imrealrage
@imrealrage Жыл бұрын
It's so great to see a legend reviewing a legendary piece of code that we always saw and will see. Thanks....
@cargo501
@cargo501 Жыл бұрын
Love it. Keen to see the next task manager episodes! Great to see ms systems engineers approach to solving the problems and structuring the code
@timjohansson4304
@timjohansson4304 Жыл бұрын
The only channel on yt that reeally explains my childhood, and love the code true work of art.
@OzzFan1000
@OzzFan1000 Жыл бұрын
Just adding my comment to encourage future videos on the rest of the code. Thanks, Dave, and please keep them coming!
@TimMetcalf101
@TimMetcalf101 Жыл бұрын
This is one of my favorite code reviews & I've watching over half of all your videos - would love to see the rest when you have time - PS - loved the Highlander reference - "We are the only One" - "The one true task manager"
@bashtinator
@bashtinator Жыл бұрын
The priority setting reminded me of the meme when task manager hangs. "You were supposed to defeat them, not join them!" Fantastic review, thank you for the walk through.
@killerpixel2k3
@killerpixel2k3 Жыл бұрын
I love the random windows keyboard shortcuts I learn aside from all the other things I learn! Also thank you for your book! I have to say it felt quite disturbing reading a diary I never wrote! Got a diagnosis and your book has helped me greatly in coming to terms with things not just being my quirky personality!
@DavesGarage
@DavesGarage Жыл бұрын
Wow, glad you found it useful!
@Diemermakes
@Diemermakes Жыл бұрын
Explaining how the program uses SetPriorityClass answers a question I've had in my mind for like 20+ years. Thanks Dave!
@Electronics-Rocks
@Electronics-Rocks Жыл бұрын
Thanks for locking the camera as it was doing my head in
@DanielMtez
@DanielMtez Жыл бұрын
Omg. Thank you for setting the priority high. I do remember that on some windows update it was removed, probably when the whole thing with xbox ui came in. I hated when that was taken away. Thank you so much
@EdilbertoAriasRolon
@EdilbertoAriasRolon Жыл бұрын
Simple and Impressive as always Dave. Greetings from Asunción Paraguay.
@my-king
@my-king Жыл бұрын
This is great. Its insane how much i used this. Back in 95/98/2000/XP it became something I became very comfortable with and the amount of control itd give me was really nice.
@lonniebiz
@lonniebiz Жыл бұрын
Dave, I don't use Microsoft myself anymore, but I did at the time you were working there. I've enjoyed your channel. You're a bright guy and do a good job on your videos.
@GlennHamblin
@GlennHamblin Жыл бұрын
I'm truly enjoying this code walk through. Please continue this series. 🙂
@BaZe-dk9kh
@BaZe-dk9kh Жыл бұрын
Thank you very much for this walkthrough. The coding style/ readability is brilliant! I will start referring everyone I know to this, before they create pull requests I can review!
@paulscarlett4346
@paulscarlett4346 Жыл бұрын
Truly enjoying this code review - any chance of spinning up XP and seeing it in action -- as a way to show the code and what it is actually handling -- As a long time VB dev - started with VB 1 and VB dos - rarely got down to this level in the Win 32 API and related code. Many thanks for the effort of getting source and MS permission to review -- speaks of changes at MS toward open source (sorta)
@nickwallette6201
@nickwallette6201 Жыл бұрын
I wonder if, some day, we could get the activation lock turned off on XP? I know there's a potential threat that some people would then _use_ it, because it might still be useful enough to get away with doing that. But I just want to play with old computers.
@PopeCromwell
@PopeCromwell Жыл бұрын
@@nickwallette6201 The activation master key and algorithm have been decrypted, it is now possible to 'roll your own' telephone activation. Just a matter of looking in the right places
@BertRedd
@BertRedd Жыл бұрын
This is so amazingly well written code. It took me years to write code like this. Bravo.
@ruadeil_zabelin
@ruadeil_zabelin Жыл бұрын
I love how you're looking at this code on a Mac.
@FloydMaxwell
@FloydMaxwell Жыл бұрын
With XP limited to 4GB (not counting the 64-bit version), and with the surprising number of times that "mature" and "up to date" programs "go 100%", Task Manager is my ever present co-pilot. Please keep the TM videos coming.
@eDoc2020
@eDoc2020 Жыл бұрын
32-bit Windows XP actually works with more than 4GB of RAM by using PAE. I believe this was usable in the original release but then the use of extra memory was disabled in SP1 due to compatibility issues with drivers assuming 32-bit addresses. Server versions don't have this compatibility fix and will still work with more than 4GB of RAM.
@FloydMaxwell
@FloydMaxwell Жыл бұрын
@@eDoc2020 Try reading the threads on this. "Nightmare" and "can of worms" come to mind.
@eDoc2020
@eDoc2020 Жыл бұрын
@@FloydMaxwell Like I said, compatibility issues. I wouldn't expect it to work with a random old system.
@andrewr7820
@andrewr7820 Жыл бұрын
@@eDoc2020I remember using DOS Extenders to allow 80286/386 programs to access memory above 1MB. Those were the days...
@skylo706
@skylo706 Жыл бұрын
Amazing, you got a new subscriber. I love watching you guys who made that kind of stuff back in the day, it's so interesting to me to listen to you people and get an insight in what your thought processes and situations were back then 😊
@jemakrol
@jemakrol Жыл бұрын
Just LOVE these sessions! Nostalgia, learning, peeking inside stuff and get entertained all in one.
@dwightmoody9005
@dwightmoody9005 5 ай бұрын
Wow! I've been catching up on your channel for a couple of weeks now. I was the author of "System Monitor" for the Commodore Amiga. A predecessor to Task Manager. I would love to chat some day!
@Endelin
@Endelin Жыл бұрын
"Windows does some fancy focus management" while your camera is doing the wildest zoom management I've ever seen 🤣. Thanks for sharing some content that only you could Dave 👍.
@marcellomello3307
@marcellomello3307 Жыл бұрын
Fantastic, thanks for making this video for us! And congratulations on the initiative.
@MrMcyeet
@MrMcyeet Жыл бұрын
Very interesting video as usual Dave! Some feedback though, I found the camera constantly zooming in and out somewhat distracting. In my opinion, it would have been better to have the camera just be static. Edit: Just got to the part of the video where you disable that lol.
@Those2menoverthere
@Those2menoverthere Жыл бұрын
@@glennchugg6015don’t let the door hit you on the way out.
@rcjp
@rcjp Жыл бұрын
Made me feel ill just trying to watch it. Shame, its interesting stuff.
@nyekku
@nyekku Жыл бұрын
It was an enjoyable experience, you are very talented at explaining the code while keeping it interesting. Looking forward to part 2!
@GiorgiBekurashvili
@GiorgiBekurashvili Жыл бұрын
It is such a big honor. Thank you for reveal LEGEND!
@danieldawson4937
@danieldawson4937 Жыл бұрын
Great stuff Dave! Had my Windows XP VM up with Task Manager running to follow along 🙂. Keen to see more!
@justingoss3147
@justingoss3147 Жыл бұрын
Enjoyed the more laid-back/unscripted tone and attitude this video had. Hope to see more like this!
@Zeazy
@Zeazy Жыл бұрын
great video its like a time capsule, seeing your old code after so long
@TehPwnerer
@TehPwnerer Жыл бұрын
The way you brush over the sharp stick and eyes comment is beautiful
@JonKPowers
@JonKPowers Жыл бұрын
Yes, please keep going! This is fascinating to hear you talk through the process!
@MySonBand
@MySonBand Жыл бұрын
Absolutely interesting dive into the code there :) And I did love the "Task manager killing Windows" gag, keep it up :)
@TheEmbeddedHobbyist
@TheEmbeddedHobbyist Жыл бұрын
I can remember after running Windows for workgroups for about 5hrs we would start getting a low memory pop-up, telling us to close application's to continue. Even with no application's running 😂 task manager would still manage to run! It became department policy to shut down your pc at lunchtime so clear the memory leaks. We only ever needed to do this with Windows for workgroups! I still like to play about in DOS for a bit of nostalgic fun. Keep the video's coming Dave as they remind me of the good old days 😊
@jtwhite2084
@jtwhite2084 Жыл бұрын
Thanks Dave. I love your "What was Dave thinking when he wrote that" videos and insights they provide.
@schifoso
@schifoso Жыл бұрын
I enjoyed seeing how small, well written, clean, and well laid out code used to be written.
@throx
@throx Жыл бұрын
Brilliant blast from the past of Petzold-era programming techniques for Windows. So many patterns I remember using from the late 80's and early 90's.
@franciscovarela7127
@franciscovarela7127 Жыл бұрын
Ah, Windows SDK programming. The big switch, a dog-eared copy of Petzold, MSDN on CD's and lots of coffee...those were the days. Then MFC, an abstraction that was easier to use but not as much fun. Thanks for this code walk-through. Please do continue, always interesting to see a competent developer's code.
@moffix
@moffix Жыл бұрын
This a master class in how you can build a lean and mean Windows project. Takes me back to the early 90s before all the bloated libraries when you had to handle the message loop yourself. Actually coded many things in OS/2 using similar techniques. Difference was, we did everything in C which was error prone when not careful about memory, device drivers etc.
@jwc4520
@jwc4520 Жыл бұрын
I liked XP , had a comfortable feel and just enough buttons and bells. Software of the time likewise had limited buttons which was much easier to remember. Did a lot of restoring old brown type photos. The deep emulsion use captured many details scanned at high resolution then broken into colors, each sharpened, reunited and bingo all the lost details background items . It was fun . Thanks Dave.
@thisoldproperty
@thisoldproperty Жыл бұрын
I was interested in how commenting is added, plus the top down approach you seemed to use. Thanks for sharing. Wish I had someone like you around when I was first learning good coding habits.
@manizaeim
@manizaeim Жыл бұрын
Thanks for sharing. I really enjoyed how you code it. I am GNU/Linux user for about 2 decades now but to me Task Manager was/is the best application in MS Windows, i just really liked it. Microsoft culture changed alot during all these years.
@fshtank
@fshtank Жыл бұрын
This was a fun walk-thru. Interesting to hear your thought process in writing the code as you walked us through it.
@kylekinnear8878
@kylekinnear8878 Жыл бұрын
Awesome! I love seeing source code for important applications I've used a lot. Makes me feel like I understand a little bit more about how my world works.
@bruno-dv5qq
@bruno-dv5qq Жыл бұрын
excellent video. the auto zoom in and out on the video is a bit distracting but the actual content is top tier
@hedlund
@hedlund Жыл бұрын
Oh wow, I've been hoping for _exactly_ this video for quite a while. Neat!
@NeoAF10
@NeoAF10 Жыл бұрын
This is gold Dave! Fascinating seeing the internals of a Window's component! Thank you!
@george1717
@george1717 Жыл бұрын
A sequel with the graphs and performance page would be great!
@zf4hp24
@zf4hp24 9 ай бұрын
Great throwback, Dave. I'm still using nested parm checks, Hungarian notation and HRESULTs. And I have a strange attraction to Winddows Runtime Library. Guess that makes me a dinosaur.
@afmikasenpai
@afmikasenpai Жыл бұрын
This channel is truly a hidden gem.
@Dremth
@Dremth Жыл бұрын
I really liked this look into the code. I don't see C++ windows code very often, so it's cool to see that lower level stuff (as opposed to the C# stuff everybody does these days), and you did a great job of explaining how everything works. Hope you do more of these.
@meerkatpowergaming9412
@meerkatpowergaming9412 Жыл бұрын
Hey Dave! Thanks for going through this source code. As someone who hates User32/GDI32 libraries and anything included via windows.h (valid reasons such as legacy, naming, drawbacks of message handling, SetWindowLongPtr etc) with a passion and also someone who is making a windowing API akin to SDL2/GLFW, I really appreciate your code going over the messages; it reaffirms my frustration I've been having with the... weird messages that do weird things... that have been inherited up to windows 10.
@adrianmillard6598
@adrianmillard6598 Жыл бұрын
Generally speaking I had no idea what you were talking about. I still enjoyed the video though, and appreciated your company. So thank you.
@dracenmarx
@dracenmarx Жыл бұрын
This was very entertaining! I'd love to see more of the Taskmanager code. Especially the part where processes are terminated, and things like the protection to avoid that lsass.exe is terminated
@JoCaTen
@JoCaTen Жыл бұрын
As an IT student who tends to suffer when it comes to programming i still find looking at source codes fascinating. Despite understanding almost nothing
@tudorcroitoru8762
@tudorcroitoru8762 Жыл бұрын
This is extremely interesting! I always thought the Win32 UI api was very verbose and was very curios how people were building useful apps from scratch without Qt, XAML and the rest. It's very cool to see this code with the explanations of what it does and why. Can't wait for the next part!
@nickwallette6201
@nickwallette6201 Жыл бұрын
I was using VB back then. It always frustrated me that you were walled out of so many things that Windows applications apparently _could_ do, like dragging the window from anywhere, or locking the minimum size, etc. There were WM controls you could drop in to subscribe to events, but then you were basically dropped into the deep end of the WinAPI, and had to be able to translate documentation written for C programmers to the types you had access to in VB. So now, it's enlightening to see how those tricks were done. It all totally makes sense, and the verbosity highlights one of the reasons why VB didn't give you the rope to hang yourself.
@bluevalien
@bluevalien Жыл бұрын
Thanks for acknowledging the camera! (~9:25) it was driving me nuts, your face stayed in place but the background was kinda zooming in and out.
@InsideOfMyOwnMind
@InsideOfMyOwnMind Жыл бұрын
I know very little of what you're talking about but the way you talk about it is riveting.
@mar4kl
@mar4kl Жыл бұрын
Thanks, Dave, for this guided tour of the original Task Manager code! In my programming days, I was mostly a database programmer and then, later, a web programmer, so I had very limited exposure to how Windows creates screen displays, and that bit of exposure I had was via APIs that allowed for calling Windows functions from Paradox for Windows objectPAL and Microsoft Office VBA. A lot of what I had to do back in the day would have made a lot more sense to me if I'd had access to a video like this one. Even though I'm no longer doing much programming, I'd love to see more.
@andrewr7820
@andrewr7820 Жыл бұрын
OMG, Paradox? That's going back aways.
@ThunderChasers
@ThunderChasers Жыл бұрын
I used Task Manager so many times. Watching you go through this code is nostalgic. Takes me back to my days in the USAF and fixing computers. Usually killing processes or finding them. And usually they were malware or viruses that anti-virus missed. Those were the days.
@jspiker77
@jspiker77 Жыл бұрын
Thank you for taking me down memory lane. I was many years ago I was honored to work on MS Word 95 in support of this.
@hl2mukkel
@hl2mukkel Жыл бұрын
This is very interesting! Love how you went into everything relevant as well, if I were to review it I'd have looked at all of those functions as well. Really fascinating to see this historic piece, please continue!
@user-qr5gn2yz6y
@user-qr5gn2yz6y 11 ай бұрын
please keep this series, it's so interesting!!!
@damionlee7658
@damionlee7658 Жыл бұрын
This has been an extremely enjoyable "Peek behind the curtain". Waiting with anticipation for future episodes on the Task Manager source. Question: quite often during development I will think of something that wasn't in my original scope; but it makes a lot of sense to add. Sometimes it is just something to handle, or a way of handling something behind the scenes, sometimes it is user functionality or feedback to the user. Often I will be left wondering why this something wasn't obvious to me at the outset of the project. Is there a part of Task Manager's code or functionality which you added at some stage and which made you wonder why you hadn't thought to include it in the first revision?
@nickmaleki
@nickmaleki Жыл бұрын
I've always wanted to watch a video like this one. Thanks Dave!
@hotwings9382
@hotwings9382 Жыл бұрын
Incredible Dave, you were performing at a high level during your time at Microsoft 🎉
Inside the Windows Source Code (E02)
30:05
Dave's Garage
Рет қаралды 59 М.
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН
Гениальное изобретение из обычного стаканчика!
00:31
Лютая физика | Олимпиадная физика
Рет қаралды 4,8 МЛН
Emulate Windows 2.0 on Android phones with Vectras VM
8:40
Nguyen Bao An Bui
Рет қаралды 9
Young People Try Windows 98
21:18
Linus Tech Tips
Рет қаралды 6 МЛН
The Trash Computer That Became Your Phone
31:27
Popular Science
Рет қаралды 189 М.
What Causes a "Blue Screen" Crash?
16:27
Dave's Garage
Рет қаралды 996 М.
E01: Stupid C++ Tricks with Dave
15:43
Dave's Garage
Рет қаралды 344 М.
The purest coding style, where bugs are near impossible
10:25
Coderized
Рет қаралды 1 МЛН
Fast Inverse Square Root - A Quake III Algorithm
20:08
Nemean
Рет қаралды 5 МЛН
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН