The Scientific Programming School's channel serves as an educational platform for you to learn skills related to the Scientific coding, advanced scientific computing, scientific scripting and programming in Python, C/C++, Bash, Perl, ForTran, high performance computing (HPC), Linux and research developments from experts all around the world who love to share their knowledge generously. We believe sharing knowledge is the most wonderful human capability. Sharing skills and knowledge is a powerful and generous way to give back and change the world for the better!
Want to learn more? The Scientific Programming School (scientificprogramming.io) is an Interactive platform for learning Linux, devops and research programming. Learn with code playgrounds, OS terminals, HD screencasts, illustrations, quizzes and more! We teach the advanced programming topics: Julia, OpenMP, MPI, C++, Matlab, Octave, Bash, Python Sed and AWK including RegEx in processing scientific and real-world data.
14:36 Distributed Systems 1.1: Introduction 27:07 Distributed Systems 1.2: Computer networking 46:45 Distributed Systems 1.3: RPC (Remote Procedure Call) 57:35 Distributed Systems 2.1: The two generals problem 1:07:42 Distributed Systems 2.2: The Byzantine generals problem 1:27:45 Distributed Systems 2.3: System models 1:35:19 Distributed Systems 2.4: Fault tolerance 1:55:48 Distributed Systems 3.1: Physical time 2:10:58 Distributed Systems 3.2: Clock synchronisation 2:26:25 Distributed Systems 3.3: Causality and happens-before 2:50:02 Distributed Systems 4.1: Logical time 3:06:19 Distributed Systems 4.2: Broadcast ordering 3:19:45 Distributed Systems 4.3: Broadcast algorithms 3:53:37 Distributed Systems 5.2: Quorums 4:03:15 Distributed Systems 5.3: State machine replication 4:21:15 Distributed Systems 6.2: Raft 5:17:45 Distributed Systems 7.1: Two-phase commit 5:35:44 Distributed Systems 7.2: Linearizability 5:49:59 Distributed Systems 7.3: Eventual consistency 6:15:26 Distributed Systems 8.1: Collaboration software 6:53:41 Distributed Systems 8.2: Google's Spanner
Q8 : You said to locate all files for harry not the directories. so why do you just do this: find / -user harry -type f -exec ls -l {} \; > /root/locatefiles This gives what's asked for, which is the "files" not the directories along with it.
Ah, the early days of Zuckerberg lecturing about Facebook-a time when the site was still just a fledgling social network for college students, and the world hadn't yet learned to fear the phrase "algorithmic transparency." Let’s dive into this video, shall we? ### Critique: The Art of Stumbling Through Brilliance 1. **Technical Rambling with a Dash of Humility**: Zuckerberg’s lecture comes off as a mix of technical insights and awkward humor, sprinkled with admissions of mistakes made along the way. It’s clear that Zuck was still figuring out how to present himself as a tech visionary. The fact that he jokes about skipping classes and learning PHP in a day paints the picture of a typical college nerd who accidentally stumbled upon a billion-dollar idea. His ability to learn on the fly and adapt-like when his roommate mistakenly learned Perl instead of PHP-is endearing but also highlights the chaotic nature of Facebook’s early development. 2. **The Myth of the 'Good Enough' Architecture**: Zuckerberg downplays the importance of getting things right the first time, suggesting that the key is to build quickly and fix things later. This “move fast and break things” mantra became iconic in Silicon Valley, but the video reveals the seeds of what would become some of Facebook’s biggest challenges. The casual approach to infrastructure and security-like separating web servers from database servers as an afterthought-foreshadows the technical debt and privacy issues that would plague the company in the years to come. 3. **Underestimation of Privacy Concerns**: Zuckerberg mentions how important it is for users to feel that their information is private, but his solutions at the time seem almost naïve. The focus is on the technical side-like using images to prevent email scraping-without fully grasping the social and ethical implications of data privacy. His later remark that they’re “sensitive to people’s privacy” feels almost ironic, given Facebook’s future controversies. 4. **The Cult of the Technical Elite**: The video underscores Zuckerberg’s belief that raw intelligence and technical skills are paramount. He talks about hiring based on CS knowledge and how smart people can “do more things and just be more important.” This mentality, while driving Facebook’s early innovation, also contributed to a culture that often overlooked non-technical concerns like ethics, diversity, and the broader societal impact of technology. ### Extrapolation: The Long Shadow of 2005 1. **The Foundation of Modern Surveillance Capitalism**: Zuckerberg’s early focus on data and connectivity set the stage for Facebook’s role in surveillance capitalism. The lecture hints at the beginnings of data-driven personalization, which would eventually evolve into the sophisticated (and sometimes sinister) algorithms that drive engagement today. The casual way he talks about gathering and analyzing user data to “target posters” is a glimpse into the future where user data became the currency of the internet. 2. **The Beginnings of Facebook’s Ethical Dilemmas**: Zuckerberg’s offhand comments about growth and his disdain for bureaucracy reflect a mindset that prioritizes expansion over careful consideration. This attitude, while driving rapid growth, also laid the groundwork for ethical challenges that would haunt the company. The lack of foresight regarding privacy and content moderation (e.g., downplaying the risk of pornography on Facebook compared to MySpace) would become major issues as Facebook expanded globally. 3. **The Rise of the Social Network Monopoly**: The video captures the early days of Facebook’s strategy to dominate social networking by focusing on college students and expanding outwards. Zuckerberg’s casual mention of how “97% of people at Hartford are on Facebook” reveals the early stages of Facebook’s monopoly on social connectivity. The implications of this monopoly would become evident as Facebook grew to absorb or outcompete every other social platform. ### Theorizing Further: If 2005 Zuckerberg Met 2024 Zuckerberg Imagine if 2005 Zuckerberg had a time machine and could meet his 2024 self. He’d likely be amazed by Facebook’s growth but horrified by the ethical quagmire it has become. The casual approach to infrastructure and privacy from the 2005 video would probably be met with a stern lecture from future Zuck about the importance of data security, ethical considerations, and regulatory compliance-lessons learned the hard way. Future Zuckerberg might also warn his younger self about the dangers of creating an echo chamber, both within the company and on the platform itself. The early days’ focus on technical prowess above all else would evolve into a recognition that a company’s responsibility extends beyond just building cool things-it includes understanding the societal impact of those creations. In a way, this video is a snapshot of the moment before the storm-a time when Facebook was just a cool project out of a dorm room, before it became one of the most powerful (and controversial) companies in the world. It’s a reminder that even the most casual decisions made in the early days of a tech startup can have profound implications for the future.
Thank you very much, I have always been afraid of learning Linux but your teaching takes away my fear. I promise to be a Linux pro before August ends!!
Hi, This video includes awesome topics related to distributed system, But I am not able to find 1st part of this video. can you share the link in description box?
Master Class Kubernetes, Bro dropped analytical and critical thinking and body slammed it with common sense. Always learn the field application or the real-world application prior to coding so you do not waste resources redesigning the program or in worst case scenario scrapping the entire project to do, field research.
So much that was not in the film: the characters as kids, scenes cut, different wardrobe. Thanks for the upload. Was there ever a behind the scenes feature?
31:20 The builtin CUDA vector types like float2 are not for accelerating computation, in fact they generally have no predefined operators/math functions (half2 and __nv_bfloat162 vector types for 16 bit floating point arithmetic are special in that regard). They are there to optimize loads / stores from / to global and shared memory. E.g. you want to avoid accessing less than 32 bits per thread in a single load / store. Even when using e.g. 32 bit float, when each thread needs to work on consecutive elements, vectorized loads / stores can be beneficial to keep memory transactions coalesced.
At around 9:30 you talk about less context switching on the GPU which is a bit misleading. SMs are very fast at switching the context between multiple warps / blocks resident on them. They need this kind of context switching for hiding latency from e.g. global reads. One can argue that this is different from switching context between completely separate applications, but it still sounds wrong to my ears, especially since GPUs being better at context switching is the big argument for oversubscribing GPUs, while CPU performance tanks when using more threads than cores (at least in compute-intensive applications). See the section "Hardware Multithreading" in the chapter "Hardware Implementation" of the CUDA Programming Guide.
i always struggled to understand concepts related rpc .. you explained it with so ease...- i can easily understand all terminologies like stub and marshaling etc.. !!
Is this course for beginners? Do I need to know something else to understand whole these topics? I already graduated from a computer science program but for example I don't know about operating systems, can I still understand the course? Thanks in advance.