math -- Berry Web Blog -- page 0

The Scientist's and Engineer's Guide to Digital Signal Processing

Posted: 2015-09-15. Modified: 2015-12-21. Tags: math.

Author: Steven W. Smith

I found this to be an excellent book which makes dsp concepts and terminology accessible to self-learners. The author intersperses examples aimed at giving an intuitive understanding of the subject matter throughout the book, and backs up these examples with clear explanations of the concepts themselves. HIGHLY RECOMMENDED.


Posted: 2015-09-15. Modified: 2017-08-20. 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.
  • D.J. Bernstein's Website DJB is a cryptography expert who has written a number of excellent pieces of software, including qmail and daemontools. He has written quite a bit on computer security and internet standards.

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.

  • SBCL is my favorite Common Lisp implementation, and is also my favorite programming environment for my hobbyist programming.

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.
  • Maxima Maxima is a lisp-based CAS, with good documentation, and which also has an Android port. I like this software.

3 General Computer Usage

Below are links to some of the software packages which I like and use.

3.1 email client

  • Sylpheed is my favorite email client. It is extremely easy to set up with IMAP, and provides all the features I need and expect to use email. It is easy to build from source and has light resource requirements. See the FAQ for more information.

3.2 finances

  • I manage our finances in gnucash using ofxclient to automate download of transaction data.

    Actually currently I use a forked version of gnucash with a feature I have added, but I plan to try to upstream my feature eventually (upstream Gnucash is going through a good bit of code churn currently and I haven't had time to figure out the build for the latest version yet).

    These two tools make a reasonably good pair as long as your financial institutions support direct download of OFX files. I find that GnuCash is good for general accounting purposes, but is not so great for tracking investments over time however. I think there is some room for improvement in this area in the future.

4 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!.

5 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…

6 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.
Atom Feeds: