Mathematical Computing, Spring 2023
Letters to students of Mathematica

To the future students of MATH 250, prepare yourselves for a really fun ride! Math 250 gives you an opportunity to take your mathematics skills and apply them in ways you have never conceived of up to this point in your mathematical career. Mathematica can manipulate mathematical objects with such ease and precision unlike any formal programming language you may have experienced. Graphing functions, plotting points, and visulizing three dimensional planes and objects is just the beginning. We can go through graph theory, process linguistic word relationships, calculate thousands of terms in seconds and find simplified version of some of the most complicated polynomial functions you can dream up.

We completed some major projects. The most exciting of them all was designing three dimensional objects to be sent to a 3D-printing company (Shapeways). I was able to make a piece of jewelry based on the intersection of sine waves and lines that I can sell if I wanted to! There's nothing like holding in your hands and feeling the math you've been drawing on paper or seeing on the computer for your entire life. We've built tutorials. We've built games. We've built economic models. We've done so much with the robust power of Mathematica. This class inspired me so much that I want to keep playing with it and exploring it even into the Summer, long after the course is over.

Do all of the assignments. Play with Mathematica in your spare time. Explore the internet -- there are tons of resources, tutorials and communities of users who are already asking questions you probably are searching for the answer to. This is one of the few classes where you'll be challenged to think mathematically, critically, and creatively. This is one of the few classes where you may not know the answer and neither does the professor. This is one of the few classes where you'll learn that it's okay not to have the answer, even in a mathematics class. Dr Hanusa will work hardest to help you master Mathematica and bring your dreams to live via coding. Hopefully Mathematica will take you to a new place in your journey with mathematics.

So you’ve decided to take Math 250: Mathematical Computing. I’m going to assume you’re a Math major or are using the math elective option for CS. This class will be unlike any you’ve ever taken, both in scope and application. The class is made up of 3 projects. One project involves creating a handy tutorial for a math class you’ve previously taken or are currently taking, using advanced tools in Mathematica. The second project, and probably the one people became the most invested in, is creating a 3D model that you will design on the computer and then send off to be printed and actualized. The third project is creating a fun, interesting interface that a user can interact with and explore.

The class feels both casual and rigorous, which seems contradictory; it is rigorous in the sense that the projects are very involved and we are expected to extend our abilities for them, but casual in the sense that ample time is given to do so and each class is often a free-form “work day”. There are no quizzes, exams, or finals (a huge relief toward the end of the semester!), just different phases of the semester that focus on a different project and the applicable tools for them. I really enjoyed this aspect, and even when there was a lot of work to be done (including write-ups, online discussion boards, and tutorials to complete), it still felt easygoing and exploratory. This is true thanks to Professor Hanusa’s enthusiasm for the class and his willingness to help, including even error-checking code you email him.

If I were to give any advice, I’d advise you to really pay attention to the early tutorials! They form the backbone of the projects later in the semester, and exist to make things easier for you. I suppose this is true of any coding language, and applies to mathematics perhaps more so: you’ll get tripped up over things needlessly if you don’t know the basics. Pay attention early on, ask for things you don’t understand to be cleared up, and explore the web for creative examples of the ways Mathematica has been used. The strength of Mathematica is not so much its computational speed (it admittedly can get overwhelmed easily with too much data), but its extensive ability for amazing visualizations and the vast amount of data that can be culled from Wolfram’s resources. I hope you enjoy exploring them.

To the new students of Math 250

I am not sure that I am the right person to advise you but I would say this: Math 250 (Mathematical Computing) is very immersive and practical. Although different people approach a class diversely, I would share with you my own experience in this class if you do not mind. I entered the classroom with a lot of confidence because my friend who took the class prior convinced me it was an easy class. It is a straightforward class but my friend did not mention it required a certain amount of effort. For that reason I approached the tutorials and reading assignments with an attitude of indolence which cost me a grade of C for my first presentation.

My advice to you is the followings: attend all the meetings and try your best to finish the current tutorial before the next class. Of course, you will face challenges in some practice questions but you are not alone. Professor Chris always devotes time for his students, use it to your advantage. In addition, his office door is wide open, go and ask him questions, he enjoys that. Also, do not hurt yourself by copying other people's codes; as you may know a professor is a professor, he knows the level of each of his students. Be creative, Mathematica has lots of features to offer and you'll have an amazing semester together.

To future students,

Mathematical Computing is a great course. It is filled with an opportunity to develop both computer and mathematical skills. Every day we meet at the computer lab, we get a quick lecture and then we follow the tutorial provided on the professor’s website. I personally used my own computer. Everything that I worked on was already working and ready to go once I open the screen.

The course website outlines clearly what must be done before the beginning of each class. These are not suggestions, but rather they are daily prerequisite. They must be accomplished before class and you must be prepared for the task of the day which may be a tutorial or a continuations of your project. One important thing I would suggest is come with a goal for the day. The bare minimum is outlined on the course website, and the rest is purely up to you. You must put in effort, practice, email the professor, go to office hours, and any concerns or misunderstandings as well inform Professor Hanusa about them.

This class is great and the professor is there to help you. Come with ideas and questions. Don’t do the bare minimum and get the minimum grade. Put in the effort, the professor has a lot of ideas and approaches that can help you solve your problem.

Hi. If you're reading or seeing this email, I'm assuming you're taking 250. I signed up to the class because an advisor said that it was available and that it would count towards my major.

After seeing the professor's enthusiasm for the course in the first 2 classes, I quickly realized that we were all about to follow the late rabbit down the rabbit hole. Besides him making you laugh through learning, you will often hear your classmates saying to themselves "omg", after finding something new and cool. You won't be able to keep it to yourself because the guy or girl next to you wants in on the action.

Need an explanation? He will give you multiple example in different context, so please don't pull any punches.

You will learn how math isn't just numbers and how it can be art. The Shapeways project was just a fun crazy adventure. To see something in your mind turn tangible was enlightening.

I loved Shapeways but my favorite project was my last project. It was finished for what was asked of me but the result wasn't what I expected. I know what you're thinking that I should just move on. I can't just move on because in the non professional trading community, they advocate for traders to do this. I believed it up until the day before my project was due. So now I find myself conducting research for a class that's already over.

It's hard to not love the class when your doing projects on your interest.

Out of everything I've learned, there's one thing that stuck out to me the most. One day I asked the professor a mathematical question which for me was hard, so I asked him for help. He thought about my question and then told me "I don't know." As bright and intelligent as the professor is, he humanized himself in that moment. It made me feel like I have a shot at this math thing. It was more inspirational than anything. He could have given me an answer to make himself look great and leave me baffled but he didn't.

All I can say is lucky you to be in this class. May you get lost in your topics.

Mathematical Computing was a great experience in expanding your comprehension of mathematics. We are so used to seeing derivatives and vectors that we forget that math is not just computing things, but illustrating them and doing much more. In Mathematical Computing you will learn to break away from the mechanical and actually in to the visual. You will learn how to make math work and make results in your favor instead of you working for it. Had I known these earlier semesters I would have taken this class sooner, as it expands the horizon of what math has capabilities of doing with computers.

In a nutshell, you’re given various projects to do throughout the course. The amazing thing is that the professor gives you the tool-set to do these projects throughout the course and all you have to do is apply that and he even gives you the freedom to put your own flavor in to the mix. With this you get to truly see the diversity that everyone can come up with through each project. The quizzes are definitely going to be hard if you don’t study for them periodically. DON’T study for them the night before. You can’t and won’t appreciate the true aspect of the course if you do so. I learned it the hard way. The best advice I can give to an incoming student is to give key attention to details when doing projects throughout the course, it works wonders as this is that type of course, and always converse with the professor as he is there to help you and doesn't expect anything but your best effort. With that you will walk out having a good grade, and most of all having learned how to actually DO something for math, as opposed to just doing something with math.

I really enjoyed my time in Math 250. This class is for all types of students, whether or not they have a basic understanding of computer code or not. The syllabus is a perfect outline for what the course covers and the professor provides sufficient time for each topic. The professor is also extremely helpful when it comes to assisting students, inside and outside the classroom. This class is not only helpful with learning code, but it also helps students think more logical when approaching problems.

When taking this class, be prepared to spend many hours facing the computer screen, without moving a muscles besides the ones that help move your eyes. The professor provides ample class time to learn the material but for every subject, the student must input at least 2 extra hours outside of the classroom to completely grasp the topics. Incoming students can also expect to be as creative as they want when doing their projects. The professor allows complete creative freedom and that is what made the project fun to complete. It would have been nice to know before hand that I would need to spend the extra hours outside of the classroom to understand the topics. Overall, I have nothing but positives things to say about this class and I would recommend it to anyone who is creative and who wish to show their creative prowess.

First and foremost, the class you're taking is going to have a fun projects, no final exam (YAY!). The projects range from 3D printing with the usage of Mathematica to design a model, making a user interactive programs, etc. However, just like any other coding classes that you guys might've taken such as C++,Java, etc., a lot of time must be put in to understand the code and get used to the language/syntax of the Mathematica program. I also have taken other coding courses but this was one the most interesting coding class.

However, with a lot of fun comes a lot of work. Most of the work will be done outside of class while in class is to get help from the professor if need and learning new methods to code with more skills. Don't be afraid to make mistakes and ask if you don't understand something. Just make sure by the time a project is due, you finished modifying the code to undo the mistakes made in earlier drafts. Lastly, get familiar with common commands and be creative.

The only advice I can give you is to try your best to get the basics down and explore! One of the more frustrating parts is, as with any other language, getting the "grammar" down. Even when you know you used the right commands, a single bracket can change the entire program! When you run into a problem, do not give up. I suggest you first scan your code for syntax errors, and if that doesn't work, open up a new file and rewrite the portion that is giving you a problem. I guess that leads me to a second suggestion. Writing your programs in parts will save you time in the long run. It is very time consuming to write a 200 line program and then running into a problem as opposed to writing part a, making sure it works, then running part b, then c, and THEN finding out part c failed.

If you stick with it, and choose a topic you are interested in, you will find some very beautiful things that you and your classmates will create. The second project in my class had us working in 3D space and bringing it to life through 3D Printing. One of my favorite projects involved mapping 2D functions onto a sphere. The student was able to have the user change the design mapped onto his sphere, so that the individual can change the design to their liking. Another student tried to recreate their own ocarina.

Once again, I want to remind you to just keep trying! If you hit a wall, there are many resources to get help from, anywhere from the internet to your classmates to Professor Hanusa himself. Try your best and you will enjoy your time with Mathematica.