TIL: Distributed Systems Education, Fallacies, and Self-Hosted Internet Archiving

Today I learned about CSE138 distributed systems lectures, the classic fallacies of distributed computing, and an interesting project for self-hosting internet archives.

March 22, 2021 Â· 2 min

TIL: Big-O Notation Explained and ADHD Productivity Tips

Computer Science Fundamentals Big-O Notation for Self-Taught Programmers Big-O notation explained by a self-taught programmer Clear explanation of algorithmic complexity analysis Written from the perspective of a self-taught programmer Practical approach to understanding time and space complexity Bridges the gap between academic theory and practical programming Key Big-O Concepts Time Complexity: How algorithm performance scales with input size Space Complexity: How memory usage scales with input size Common Complexities: O(1), O(log n), O(n), O(n²), O(2^n) Real-World Applications: Understanding performance implications of algorithm choices Practical Algorithm Analysis Performance Prediction: Estimate how algorithms will perform at scale Optimization Decisions: Choose appropriate algorithms and data structures Interview Preparation: Essential concept for technical interviews Code Review: Evaluate code efficiency and scalability Personal Productivity and Health ADHD Productivity Strategies I went through 700 reddit comments and collected 131 ADHD pro-tips! : ADHD Community-curated collection of ADHD management strategies Practical tips from people with lived experience Covers various aspects of daily life and productivity Demonstrates value of community knowledge sharing Categories of ADHD Tips Time Management: Strategies for managing time and deadlines Organization: Systems for keeping track of tasks and items Focus Techniques: Methods for maintaining concentration Emotional Regulation: Dealing with ADHD-related emotional challenges Workplace Strategies: Adapting professional environments for ADHD Community-Driven Learning Peer Support: Learning from others with similar challenges Diverse Perspectives: Multiple approaches to common problems Practical Testing: Tips that have been tried and validated by community Accessibility: Free, accessible information sharing Relevance for Developers ADHD and Programming Hyperfocus: Understanding and leveraging periods of intense concentration Task Switching: Managing context switching and interruptions Project Management: Breaking down complex projects into manageable pieces Environment Design: Creating optimal work environments for focus Productivity Applications Pomodoro Technique: Time-boxed work sessions Task Chunking: Breaking large tasks into smaller, achievable goals Environmental Controls: Managing distractions and optimizing workspace Routine Development: Building consistent work habits and patterns Key Takeaways Self-Taught Learning: Quality educational content exists outside traditional academic settings Community Knowledge: Reddit and similar platforms can be valuable sources of practical information Neurodiversity in Tech: Understanding different cognitive styles and challenges in programming Algorithmic Thinking: Big-O notation is fundamental for writing efficient code Practical Application: Academic concepts like Big-O have direct real-world applications Productivity Systems: Effective productivity often requires understanding personal cognitive patterns Peer Learning: Learning from others’ experiences can be more valuable than theoretical knowledge These resources highlight the intersection of technical learning (algorithm analysis) with personal development (productivity and health management), showing how both contribute to effective software development careers. ...

January 26, 2021 Â· 2 min

TIL: Big-O Notation Explained and ADHD Productivity Tips

Today I learned about a clear explanation of Big-O notation for self-taught programmers and discovered a comprehensive collection of ADHD productivity tips from the Reddit community.

January 26, 2021 Â· 2 min

TIL: Rust Design Patterns, Operating Systems Three Easy Pieces, and MIT Performance Engineering

Today I learned about the comprehensive Rust Design Patterns book, the excellent OSTEP operating systems textbook, MIT's performance engineering course, and other valuable computer science learning resources.

January 6, 2021 Â· 8 min

TIL: Rust Learning Resources, Operating Systems, Interview Preparation, and Web Security

Today I discovered comprehensive resources for learning Rust, found excellent operating systems and performance engineering materials, and explored interview preparation guides and web security resources.

January 4, 2021 Â· 3 min

David Beazley's Courses

My experience taking three of David Beazley's intensive programming courses during 2020 - SICP, Write a Compiler, and RAFT Consensus. A deep dive into computer science fundamentals through hands-on learning.

December 25, 2020 Â· 7 min

TIL: Quiver Diagram Editor, MIT Computation Structures, Lisp Koans, and Python System Services

Today I learned about Quiver's web-based commutative diagram editor, MIT's comprehensive computation structures course, Common Lisp learning through koans, and creating Python systemd services.

November 29, 2020 Â· 5 min

TIL: MIT OpenCourseWare - Algorithms and Computer Science Fundamentals

Today I learned about MIT's excellent OpenCourseWare offerings for algorithms and mathematical foundations of computer science, with comprehensive video lectures and materials.

November 9, 2020 Â· 12 min

TIL: Internet Protocol RFC 760, MIT Algorithms Course, and Mathematics for Computer Science

Today I learned about the foundational Internet Protocol specification from 1980, MIT's comprehensive algorithms course, and their mathematics for computer science curriculum.

November 9, 2020 Â· 7 min

TIL: Writing Your Own Virtual Machine

TIL 2020-08-15 Write Your Own Virtual Machine - Comprehensive tutorial on implementing a virtual machine from scratch, including LC-3 architecture and instruction set.

August 15, 2020 Â· 1 min