# Links

Posted: 2015-09-15. Modified: 2015-11-25. Tags: programming, math, music, hobby.

## 1 Music

- "A classical Pianist Explains Jazz" Great resource explaining some basic theory behind playing "jazz" music.
- Piano left hand patterns.

## 2 Programming

### 2.1 General

- Andrew Gibiansky's personal blog A really interesting resource. Gibiansky has a variety of great tutorial-style articles, including discussions of Convolutional Neural Nets and Haskell.
- Scripting: John Ousterhout In this well-known article John Ousterhout provides clean analysis of some of the various types of programming languages in existence, identifying strengths and weaknesses of different languages. He provides a survey of some research on the verbosity of software implementation in various languages and paradigms – in particular he finds that one line of a scripting language is often equivalent to between 5-10 languages of a systems language, and that OOP provides a ~20-30% LOC improvement over traditional procedural programming. He identifies some reasons why OOP code can sometimes be hard to reuse, and also identifies why scripting languages provide a great ability to reuse the code of others.

### 2.2 Common Lisp

Above is a link to a pdf containing the final draft of the ANSI Common Lisp standard. I believe it can be treated as an authoritative resource on Common Lisp for the general user, and is a good alternative to the Common Lisp Hyperspec.

Please see this article for an explanation of how I obtained this pdf, licensing information (free to distribute, etc…, per the creators of the draft), and background information on why I created this pdf.

### 2.3 Python

I like python a lot, and find it a very productive environment for interactive computing and experiments. Python's practical power is in large part due to its excellent ecosystem of libraries and tools. Below are some of the ones I have found useful to learn.

- Scipy+Ecosystem SciPy and its related tools (Matplotlib, NumPy, Pandas, IPython,Scikit-Learn,…) really do form an amazing toolset for data analysis and mathematical problems. This is definitely my preferred toolset for these problems currently – I have tried some alternatives but I prefer the python libraries and toolset.

### 2.4 Other

- Project Euler A fun and challenging math+programming challenge.
- Excel Unusual Some pretty outlandish examples of what can be accomplished in Excel.

## 3 Maths

- No Layman Left Behind Intuitive and simple explanations of various concepts in mathematics and CS.
- Linear Algebra - What Matrices Really Are I feel like this makes some basic linear algebra concepts much more approachable.

- UAH Virtual Prob/Stat Laboratory a well-designed and written website covering a range of topics in probability and statistics. Includes good explanations of how to derive statistics formulas and practices, also includes interactive "apps" which allow you to experiment hands-on with the concepts being taught.
- DSP Guide A great introduction to DSP for people like myself who are not specialists in the field. I have the hardback edition of the book, but I respect the author for making his work freely available on the internet. Before reading this book, other DSP books I have were fairly incomprehensible to me. After reading this book, I can read DSP books without much trouble.
**Highly recommended!**.

## 4 Hobbyist

- Sliderule Software If sliderules and calculating devices interest you at all, you may find the software on this site to be cool. The "Curta" mechanical calculator is particularly cool…

## 5 Miscellaneous

- Project Gutenberg Access a volume of high-quality, public domain content here. It's a pity that the United States keeps extending copyright protection well beyond any reasonable bounds at the behest of media corporations. See this image for a depiction of how US copyright law has changed over the years.