Paper Reading 45
Topics in Programming Languages: Automated Testing, Bug Detection, and Program Analysis 18
Paper Reading: Efficient scalable thread-safety-violation detection: finding thousands of concurrency bugs during testing Paper Reading: Hybrid dynamic data race detection Paper Reading: Lightweight Verification of Array Indexing Paper Reading: Modular Checking for Buffer Overflows in the Large Paper Reading: Precise Interprocedural Dataflow Analysis via Graph Reachability Paper Reading: Mining Input Grammars from Dynamic Taints Paper Reading: Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software Paper Reading: All You Ever Wanted to Know About Dynamic Taint Analysis and Forward Symbolic Execution (but might have been afraid to ask) Paper Reading: Evolutionary Generation of Whole Test Suites Paper Reading: Feedback-Directed Random Test Generation More...
Advanced Software Engineering 15
Paper Reading: The Fundamentals of Writing Questions Paper Reading: ReCrash: Making Software Failures Reproducible by Preserving Object States Paper Reading: Exploiting Dynamic Information in IDEs Improves Speed and Correctness of Software Maintenance Tasks Paper Reading: Breaking the Barriers to Successful Refactoring: Observations and Tools for Extract Method Paper Reading: How We Refactor, and How We Know It Paper Reading: "Cloning Considered Harmful: Considered Harmful Paper Reading: Go To Statement Considered Harmful Paper Reading: Selection and Presentation Practices for Code Example Summarization Paper Reading: Do Automatically Generated Unit Tests Find Real Faults? An Empirical Study of Effectiveness and Challenges Paper Reading: The Art of Testing Less without Sacrificing Quality More...
Topics in Programming Languages: Type Systems 8
Paper Reading: Sized Types Paper Reading: Refinement Types Paper Reading: How to make ad-hoc polymorphism less ad-hoc Paper Reading: "Types and Programming Languages" Chapter 22 Paper Reading: "Types and Programming Languages" Chapter 15 and Chapter 16 Paper Reading: "Types and Programming Languages" Chapter 13 and Chapter 14 Paper Reading: Bi-directional type checking Paper Reading: "Types and Programming Languages" Chapter 9 and Chapter 11
Code 14
Unix 7
Syncing a Local Directory With a Remote Directory via rsync Batch Killing Processes Looked up Through ps -aux | grep <process_name> Parsing Command-line Options in Shell Scripts Using `getopts` Using ffmpeg to Manipulate Video Files Syncing a Local Directory With a Remote Directory via FTP Command-line HTTP Servers for Rapid File Sharing Various Solutions for Different Types of Reverse Proxying
Reflections 14
Lessons learned from Master's thesis Talking back and confidence Some thoughts about chatting Pay attention to the other person's easily overlooked emotional state when chatting online Show, not tell Our minds are, indeed, the minds of engineers Financial strategies during master's and PhD degrees (tentative) On doing things with others Some thoughts on maintaining fitness habits and improving physical fitness in the future My Software Engineering Philosophy More...
Mathematics 4
Linear Regression, Ridge Regression, Lasso Regression, and Kernel Ridge Regression Understanding the Name, Structure, and Loss Function of the Variational Autoencoder From the Fourier Series to the Fourier Transform to the Discrete-time Fourier Transform: Demystifying the Formulas Understanding the Formulation of Information Entropy