NEW MEETING LOCATION - ON LINE!!!
DUE TO CONCERNS SURROUNDING THE COVID-19 OUTBREAK WE ARE HOLDING THE
APRIL NWCPP MEETING ON LINE USING MICROSOFT TEAMS. PLEASE USE THE LINK
BELOW TO JOIN THE MEETING. THIS IS THE FIRST TIME WE ARE DOING A
MEETING THIS WAY SO MAYBE BE A BIT EARLY TO HELP WORK OUT ANY KINKS!
DURING THE MEETING PLEASE REMEMBER TO MUTE YOUR MICROPHONE. WE’LL HAVE
TO SEE HOW THE SYSTEM PERFORMS IF EVERYONE STREAMS VIDEO, THIS WOULD BE
NICE TO HAVE IF POSSIBLE BUT PLEASE BE PREPARED TO TURN YOUR VIDEO OFF
IF IT TURNS OUT TO BE CONSUMING TOO MUCH BANDWIDTH.
Although C++ was once dominant in courses such as numerical analysis, financial engineering, and computational physics, university and graduate instruction in the applied sciences has gravitated more and more toward the convenience of languages such as Python, Matlab, and R. While these languages offer incredible advantages over general purpose languages for rapidly implementing quantitative applications, there often comes a point where students hit a brick wall in terms of performance, often obligating them to restructure interpreted code with more complexity for large clusters in order to realize performance gains that can be obtained in parallel execution.
Meanwhile, students wishing to advance their knowledge of C++ with the goal of writing more performant numerical code are finding their options limited to classes taught in computer science departments that are more concerned with building data structures and search algorithms rather than using those that exist within the Standard Library in order to solve real world problems.
This talk maps out a 10-week academic quarter course that could be geared for students in the applied sciences, where the emphasis is on using features that already exist in modern post-C++11, along with powerful and widely-used open source mathematical libraries now available in C++. While the syllabus is based on an actual class taught by the speaker to graduate students in quantitative finance, the intent is to show that the fundamental concepts are common enough to other computational fields to allow students to quickly leverage the power of C++ in solving actual problems, rather than to burden them with minute details of raw pointers, legacy C constructs, string formatting, and search algorithm design that often consume a typical introductory college C++ course and discourage scientific programmers.
Daniel Hanson spent over 25 years in quantitative development in finance, primarily with C++ implementation of option pricing and portfolio risk models, and library development. He now holds a full-time lecturer position in the Department of Applied Mathematics at the University of Washington, teaching quantitative development courses in the Computational Finance & Risk Management (CFRM) MSc program. This includes intermediate and advanced classes in computational C++, and advising students in Google Summer of Code projects involving mathematical models implementation with C++ and R.