How to satisfy Baruch's C++ requirement?

  • Thread starter Thread starter nahid_
  • Start date Start date
Joined
9/7/25
Messages
2
Points
3
I know the most popular answer here and elsewhere on the internet is to take the pre-MFE course offered by Baruch through Quantnet, but that is way too expensive for me. Plus, since application season is here, I don't have 16 weeks at hand. I could only afford subscription for sites Coursera or Udemy or DataCamp. Can you suggest how else I might satisfy this requirement?

I saw a comment on a Reddit thread recommending Udemy's Beginning C++ Programming - From Beginner to Beyond created by Tim Buchalka and Dr Frank Mitropoulos. Do you think this would be good enough for Baruch? Would have any more suggestions?
 
I attended a few of Baruch's admission events. They mentioned that the Pre-MFE courses are not mandatory, but you must demonstrate an understanding of probability, calculus, linear algebra, C++, and their applications in finance. I think a more affordable approach is to study the NLA and Linear Algebra books and try to understand as much as possible.
Edit: hey sorry I missed that you were asking about C++. I think you can take the class elsewhere but try to take it at a credible institution, like a community college. I took a C++ OOP class at Oakton community college before. The tuition is ~$400-500 and the course was like 8 weeks. I remember I didn’t take their most advanced class, so it only covered the basic of class and polymorphism. I still decided to take the Quantnet C++ course though because I want the knowledge of financial application as well. I have to say the Quantnet course is really worth it.
 
Last edited:
Hey Nahid, hope this answer helps as I asked Director Stefanica the same question and how I interpreted his answer.

Baruch’s MFE department goes over each student’s application on a completely individual basis. If you were a Computer Science Major in your Undergraduate Studies, then not taking a C++ course, because your University preferred Java instead, will not affect you negatively. In other words, picking up C++ for a CS graduate who has already learned at least 3 or 4 programming languages (well) is not difficult.

So, essentially they’ll correctly enforce the requirements based on each person’s context. It’s also due to their mandatory interview and QBA which will clear up whether the applicant can demonstrate all requirements together.

If your academic background is different or you’re changing careers, then likely taking the C++ Seminar is the best idea. If you don’t in this context, the QBA and interview might be difficult.

Hope that clears it up,
Animish
 
Last edited:
I think you can take the class elsewhere but try to take it at a credible institution, like a community college. I took a C++ OOP class at Oakton community college before. The tuition is ~$400-500 and the course was like 8 weeks. I remember I didn’t take their most advanced class, so it only covered the basic of class and polymorphism. I still decided to take the Quantnet C++ course though because I want the knowledge of financial application as well. I have to say the Quantnet course is really worth it.
This is a good advice. There are many free or inexpensive online courses that teach C++. There are some courses that are even more expensive than the ones offered by Baruch and Quantnet.
That said, I haven’t seen anything that is close to the value that the QuantNet C++ course offers. You can’t find another course that has an experienced Wall Street professional your personal TA who gives practical industry advice on coding practice.

As many students who completed the course will tell you, it is well worth the cost (which has not changed since 2011). Many CS students even said that they learn more from the course than those they took in college.

Just decide what works best for your situation. After all, this is just a tiny fraction of the cost of a quant graduate degree and even smaller compared to the compensation that graduates of top MFE programs make.
 
I am the originator of the QN C++ courses

Some background on how it evolved


// I was the first C++ developer + company in the Netherlands.
Thank you for sharing the interview. It was really interesting learning the history of developments.

At the end, you recommended reading some topics in Conceptual Psychology regarding the difficulty of handling objects. Could you elaborate more on what you mean and which specific areas/topics of the field are relevant for understanding objects in C++ better?
 
Thank you for sharing the interview. It was really interesting learning the history of developments.

At the end, you recommended reading some topics in Conceptual Psychology regarding the difficulty of handling objects. Could you elaborate more on what you mean and which specific areas/topics of the field are relevant for understanding objects in C++ better?
You're welcome.
Back then, most developers got OOP wrong except myself of course (a long story, but basically I trained people + wrote production software..) but OOP is applied concept/semantic modelling. I used

Eysenck, M. W. and Keane, M. T. (2000) Cognitive Psychology. Psychology Press, Hove.

but there are many more.

Another good one is

Winston, M.E., Chaffin, R. and Herrmann, D. (1987) A taxonomy of whole-part relationships Cognitive Science 11, 417-444.

Winston, P. H. (1980) Learning and reasoning by analogy. Communications of the ACM 23(12) 689–703.


 
Last edited:
We give a short overview of several programming languages that support the object-oriented paradigm. This section also describes the personal journey of Daniel J. Duffy in OO land since 1989.

An early example of what would be considered an object-oriented programming language is Sketchpad, created by Ivan Sutherland in 1960 (Sutherland, 1963). Sutherland defined the concepts of "object" and "instance" (with the class concept covered by "master" or "definition"), albeit specialised to graphical interaction. One of the authors of the current book worked on Computer Aided Design (CAD) applications before he became involved with OOP and the experience turned out to be invaluable when learning C++ and applying it to the creation of C++ CAD libraries in combination with the GOF design patterns. In fact, an excellent way to learn design patterns is to apply them to well-defined, concrete problems in our opinion.

Simula is the name of two simulation programming languages, namely Simula I and Simula 67, developed in the 1960s at the Norwegian Computing Center in Oslo, by Ole-Johan Dahl and Kristen Nygaard. Simula 67 introduced objects,  classes,  inheritance and subclasses,  virtual procedures,  coroutines,  and discrete event simulation; it also featured garbage collection. Other forms of subtyping (besides inheriting subclasses) were introduced in Simula derivatives.

Simula can be considered to be the first object-oriented programming language. The first Simula version was designed for doing simulations; Simula 67 was designed to be a general-purpose programming language and it provided the framework for many of the features of object-oriented languages. It introduced important concepts that are an essential part of object-oriented programming, such as class and object, inheritance, and dynamic binding. The object-oriented Simula programming language was used mainly by researchers involved with physical modelling, such as models to study and improve the movement of ships and their contents through cargo ports.

In the 1970s, the first version of the Smalltalk programming language was developed at Xerox PARC by Alan Kay, Dan Ingalls and Adele Goldberg. Smalltalk-72 included a programming environment and was dynamically typed, and at first was interpreted, not compiled. Smalltalk went through various versions and interest in the language grew. While Smalltalk was influenced by the ideas introduced in Simula 67 it was however, designed to be a fully dynamic system in which classes could be created and modified at run-time.

C++ is a high-level, general-purpose programming language. First released in 1985 as an extension of the C programming language, it has since expanded significantly over time. It supports the procedural, object-oriented and generic programming models and to a lesser extent, the functional programming model. Daniel J. Duffy was one of the first object-oriented programmers in the Netherlands and he started his company Datasim BV to promote C++ and its applications to industrial projects.

Python is a high-level, general-purpose programming language. Its design philosophy emphasises code readability. It is dynamically typed and garbage-collected and it supports multiple programming paradigms, including structured (particularly procedural), object-oriented and functional programming. It is often described as a "batteries included" language due to its comprehensive standard library.

C# is a general-purpose high-level programming language supporting multiple paradigms. C# encompasses static typing,  strong typing, lexically scoped, imperative, declarative, functional, generic,  object-oriented (class-based), and component-oriented programming styles.

In this book we focus on C++, C# and Python. We discuss them because they are important for development work. We try to avoid language wars because each language has its strengths and is more suitable for certain classes of problems than for others. There are many technical, organisational and even idiosyncratic reasons for deciding on a given language in a given context. This topic is essentially outside the scope of this book.
 
Thank you so much! Studying CS during undergrad. always didn't leave time for understanding the deeper "whys" or "how is this supposed to be used" as we're taught to absorb the best practices but sometimes forgetting why they are considered "best". And, it's always nicer when another domain or perspective can help clarify technical advise.

I really appreciate it again!!
 
Thank you so much! Studying CS during undergrad. always didn't leave time for understanding the deeper "whys" or "how is this supposed to be used" as we're taught to absorb the best practices but sometimes forgetting why they are considered "best". And, it's always nicer when another domain or perspective can help clarify technical advise.

I really appreciate it again!!
no hurry; you have your whole future ahead of you :-)
 
Back
Top Bottom