6 ms·
“Essentials of Garbage Collectors” full course is now available
- pjmlp 7y agoLove the explicit mention that one doesn't need to constrain to C and C++. Good luck with the course.
- chrisseaton 7y agoThere are production garbage collectors written in languages like Java, so this shouldn't be surprising.
- pjmlp 7y agoIt isn't for those of us that actually bother to learn about them, unfortunately still feels like spreading gospel, given the sore state of some education institutions.
- DmitrySoshnikov 7y agoAbsolutely valid point, that's why I didn't want to stick specifically on C++ (even though it'd be easier specifically for raw heap memory). As mentioned about though, GC algorithms can be transferred to higher-level system as well. For example, here is a basic Mark-Sweep algorithm implemented in JavaScript on JS objects in a collection: https://gist.github.com/DmitrySoshnikov/4391763 https://gist.github.com/DmitrySoshnikov/4391763
- reitzensteinm 7y agoGarbage collection algorithms are also applicable outside of in process memory management. I wrote a copying collector against a KV store in Clojure that I ran in prod for a while, though I swapped it out for a generational mark and sweep in Java. I'm sure somewhere, somehow, somebody has written a GC in Excel serving some kind of business need.
- DmitrySoshnikov 7y agoGreat point, and the example. Exactly, the GC algorithms are a high-level abstraction, which can be transferred, and applied on higher-level systems.
- Rexxar 7y agoGarbage collection algorithms can be used for other thinks than pure memory management. Each time you have dependencies between objects and want to remove some objects which are not useful any more, you can use a similar algorithm to make a clean up function which has a visible impact for the user of the software. (example: removing points not used by any shape in a drawing software)
- bart736282 7y agoWhy did you choose to go with Udemy?
- sarathyweb 7y agoLet me know if there's any good alternative to Udemy. I'm also working on publishing a course
- cosmodisk 7y agoIf you are happy to do your own marketing,try LearnDash.
- sarathyweb 7y agoSure;! I will try
- DmitrySoshnikov 7y agoAs mentioned above in other comments, Udemy was just easy to setup, and doesn't have monthly subscription fee. In general I'll be fine with the fee, so I'm considering other platforms for this and future courses. Let me know if you have good recommendations.
- langitbiru 7y agoWhat about https://teachable.com https://teachable.com?
- DmitrySoshnikov 7y agoYeah, creating a course there now :)
- DmitrySoshnikov 7y agoAvailable now: https://dmitrysoshnikov.teachable.com/p/essentials-of-garbage-collectors https://dmitrysoshnikov.teachable.com/p/essentials-of-garbag...
- ameyv 7y agoLooks good. Can you also share, which new topics/lectures are u going to cover? Any roadmap for this course in mind? Do you also have any hands on coding exercises? Lacks content and some exercises..for now.. definitely will keep eye on this.. will buy..
- DmitrySoshnikov 7y ago@ameyv, thanks for the feedback! Yes, there will be more courses related to implementation of programming languages: Automata Theory, Theory of Parsing, Essentials of Interpretation, and others. There are some lab sessions for the Garbage Collectors class, e.g. Writing a Memory Allocator from Lecture 6, where we implement an allocator similar to `malloc` function: http://dmitrysoshnikov.com/compilers/writing-a-memory-allocator/ http://dmitrysoshnikov.com/compilers/writing-a-memory-alloca... As to materials, yes, there will be an accompanying book for this course.
- ameyv 7y agoHi Dmitry, Bought! Will provide feedback and review :) Will looking forward to book and more content in this course.
- DmitrySoshnikov 7y agoHey ameyv, awesome, thanks! Will appreciate your feedback on the course page.
- codetrotter 7y agoI went to buy it and first it said the price was 140 NOK, but after I add it to cart and sign in to my existing Udemy account it wanted to charge me 165 NOK. That’s not a huge difference, and I know these things are beyond your control. But that’s the sort of thing that makes me decide not to buy. I wish Udemy weren’t so weird about their prices. Change the price and make it more expensive because I log in. No thanks, Udemy.
- DmitrySoshnikov 7y agoYeah, this is something I completely agree about Udemy's policies. Alas, as you say, I unfortunately don't have any control over their price changes.
- solarkraft 7y agoWhat are your reasons for publishing on Udemy? It appears to me like the down sides vastly outweigh the advantages.
- DmitrySoshnikov 7y agoIt's actually a good question. Udemy was just easy to setup, and with no subscription monthly fee. I'm considering cross-publishing it on other platforms as well. I'll be OK in general with monthly fees for publishers once I have several courses. Do you have suggestions for better platforms?
- cosmodisk 7y agoYou do.You can opt out from those massive price drops,where all thr courses become 9.99 or so. Whether it will work or not, I'll leave it for your marketing strategy to decide.
- DmitrySoshnikov 7y agoGood point, I should take a look if it's easy to just opt-out. I'd be OK with these discounts in general, though they look really weird -- the course was just published, and is already "on (massive) sale" :)
- smarri 7y agoAh I truly thought this course was about something else and incredibly post modern, I read the headline too literally. Best of luck!
- DmitrySoshnikov 7y agoGarbage collection IRL is very important as well ;)
- iamcreasy 7y agoI understand that it's a theoretical focus course, but is there any implementation that is/will be available to the audience?
- DmitrySoshnikov 7y agoThanks, yes, all the lectures on GC algorithms (from Part 2 of the course) have a detailed source code implementation. This is done is pseudo-code though, explicitly showing that you can port this implementation to any language you'd like. As mentioned below in this comments thread, GC algorithms are not only specific to objects in raw heap memory. These algorithms are transferrable to higher-level systems as well. As to specific implementation, yes, I'm planning to have a GitHub repo with all the algorithms implemented in C++.
- iamcreasy 7y agoIs there any specific book that can be a good companion with this course? What are the primary books that helped you build this course?
- DmitrySoshnikov 7y agoYes, the main book which is recommended for the course is "The Garbage Collection Handbook". In addition one can read the "Garbage Collection: Algorithms for Automatic Dynamic Memory Management", but this one is specific to C++.
- iamcreasy 7y agoThank you. I've bought the course. Do Udemy provides community forum per course? How would I interact with the community who are taking this course?
- DmitrySoshnikov 7y agoThanks! Yes, Udemy provides sending messages to instructors, though I'm not sure about specifically community per course. You may also contact me directly on Udemy on my website in case of any questions.
- mangatmodi 7y agoLiked it! Purchased it! I have been interested in and reading a lot about memory management. Hope this will help.
- DmitrySoshnikov 7y agomangatmodi, great, thanks! Feel free to reach me in case of any questions, and good luck with memory management -- it's a great engineering topic.
- ameyv 7y agoUdemy coupon to avoid surge pricing. Try LearnNow (for old account) or FTV06RESTDEAL11 (for new account) It automatically showed these 2 coupons! See if it works for you guys. Disclaimer: May have something do with country wise or regional pricing