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

1 Music

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.
  • 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.