Tuesday, July 14, 2015

Book Review: Debt-Free U by Zac Bissonnette

This book made me realize that being rejected by the Top 20 schools is a blessing in disguise. I started my college admission journey with many other well-off, middle class students and I fell under various societal pressures that made the admissions process an anxiety-ridden nightmare. Because I was a high-ranking honors student, my parents and guidance counselors and peers expected me to get into an Ivy League College while deep down I knew that my SAT scores and accomplishments were not enough to give me even a remote chance of getting into any of those schools. Many other fellow classmates also experienced a dilemma or two over which college to attend including my friend who couldn't choose between a college with a nicer campus and a college with better outdoors programs. After finishing this book, I found out that many other students and I have been focusing on the completely wrong factors in deciding a college. This book gave me the insight I needed to look past the reputation of the university that did accept me and find all of the opportunities that are available there. In addition, the book taught me how to avoid the common pitfalls of financing my education and encouraged me to make smart financial decisions such as living with grandparents instead of on-campus. Although I should have read this book before senior year, I still got a lot of great advice that will help me graduate with as little financial burdens as possible.


Zac Bissonnette wrote this book while majoring in art history at the University of Massachusetts. Before even setting foot on campus, he already had an impressive entrepreneurial and financial background. At the time, he was a writer and editor on AOL Money & Finance and had earned enough money through his stock portfolio to pay for his education himself with enough left over to invest in student housing real estate(Bissonette 7-8). His book includes advice from respected financial writers- such as Andrew Tobias- and even the former scam artist Barry Minkow. It is addressed to parents and it discusses the reasons to avoid depending on student loans, financial aid, their retirement savings, and scholarships to pay for their children's "dream school". Instead, it provides useful strategies for cutting costs and finding affordable options. It even confronts the bigger problem of the college and student loan bubble. The advice in this book is completely unconventional and opposes the status quo which is why the majority of families are still making the fatal mistakes described in this book five years after its publication. 


"I don't make the rules, I just make fun of them,"(23) is an example of the witty, sarcastic humor that you'll encounter throughout this book.In a funny and engaging way, he uncovers the bureaucratic nonsense behind federal aid, college ranking systems, and soaring tuition prices. He also exposes how financial aid officers and private loan companies often dupe families into a cycle of debt and financial instability. Many commonly held myths, which have convinced parents to pay excessively for college, have been debunked with empirical studies in this book. Furthermore, Bissonnette encourages families to avoid short-sighted decisions about college and make choices that will benefit both parents and students in the long-term. With this perspective, he guides students through making financially responsible decisions in the present, so that their college education becomes an asset instead of a burden in the future after college. For high-achievers, the book even devotes a chapter to help those students "Make Any College an Ivy League College" which offers great advice for networking and choosing classes.


One minor criticism is that the book addresses the parents even though the subtitle is "How I Paid for an Outstanding College Education without Loans, Scholarships, or Mooching off my Parents". More importantly, the fact that this book was written in 2010 means that many of the cost calculations and the legal details in this book have changed since then. For instance, the average tuition and fees for the in-state public university in the book's cost calculation is $6,600 (56). Thanks to inflation in higher education, the average tuition and fees is now $9,139 according to Collegeboard. This could mean that some families will be unable to completely avoid debt by following the advice in the book. 


My rating for this book is 4 out of 5 stars. Although it is slightly out of date now, it is still a valuable for the majority of high school students. It offers ways for most families to pay for college without making outrageous sacrifices and taking on debt. Because our culture teaches us to fixate on trivial details such as the university size and prestige, we need a guide like this that will help us focus on the more practical matters of higher education. While college sales pitches and societal pressures make many families loose rationality over college decisions, it is important to remember that former president of Wesleyan University Victor Butterfield used to tell his incoming freshmen,“After you graduate, if you say these were the best four years of your life, we have failed you.”Tim Goral, University Business


Monday, July 13, 2015

Recursion: How Computer Scientists make Circular Reasoning Work for Them

Whenever I hear, "you have to do what I said because I told you to," from any authority figure, my mind translates that to, "I can't think of any reason for making you do this." When people restate their conclusion as the argument for that same conclusion, it's logical fallacy called circular reasoning. There are some pretty good examples of this on Bo Bennet's blog "Logically Fallacious" including the logical form of it.
Logical Form:
X is true because of Y.
Y is true because of X.,
As someone who tries to be a rational human being, I avoid circular reasoning as often as I can. Yet, I ended up finding it two of the most logically consistent fields: computer science and math. In computer science language, it's called recursion while math's version of circular reasoning is called induction. During my computer science course "CS For All: Introduction to Computer Science and Python Programming" on edX.org by Harvey Mudd, I learned that these two forms of circular reasoning are actually useful problem solving methods even though they seem counter-intuitive at first. An example of recursion from the course's e-book CS For All is this factorial function:

What's going on

This is a function that gives you the factorial of n (aka n!=n*(n-1)*(n-2)...*1). The way this function works is that if n=1, it's obvious that 1! = 1*1 =1 and factorial(1)=1. The tricky part is the 
factorial(n-1) on line 8 which means that in order to get the factorial of a number greater than 1, the factorial function has to use the factorial function. Although it seems that using the factorial function while trying to find the factorial brings you to the same place that you started, it actually helps you solve the problem. At a closer look, you'll see that the inner factorial takes the value of (n-1) which means that the input of inner factorial  is sent back to the first part of the function where it goes through the "if" and "else" clauses and the input decreases by one each time. This loop continues until the input equals one and obviously factorial(1) = 1, so the loop ends and the function returns the value of the variable result after however many loops.

The While Loop 

This method of recursion is actually very similar to a more intuitive concept called the while loop. For example, this is the while loop that I coded to do the exact same thing as the previous function:
Basically, I always start off with a result that equals 1 and the result is multiplied by n until n is no longer greater than 1. With each loop, the n value decreases by 1 so that the function gets the right answer and doesn't continue into infinity. 

Underlying Concepts of Recursion

According to the CS For All textbook, recursion starts with the base case which is the answer to the simplest form of the problem. For the factorial example, the base case is 1!=1 or factorial(1) = 1. From there, the function can solve more complex problems like factorial(34) by putting it through the loop with the input of factorial(n-1) decreasing each time and thus simplifying problem until (n-1)=1. Notice how (n-1) actually gets stored as n with each loop, yet all of the past incarnations of n are multiplied together when it's time to calculate the final result. In a language like Python, variables like n can change value during the course of a program. However, all the values that n ever took are stored in "stacks" which you can think of as these boxes in this figure from CS For All :
As you can see, none of the past versions of n are forgotten and they all enter into the equation for the result. 


Although I still prefer the "while loop", learning recursion has given me a new way to think about solving problems which could be useful in case other methods do not work as well. In addition, seeing the limits of my intuition is a valuable experience for me because I tend to rely on intuition too heavily like many other people. CS For All by Christine Alvarado (UC San Diego), Zachary Dodds (Harvey Mudd), Geoff Kuenning (Harvey Mudd), and Ran Libeskind-Hadas (Harvey Mudd) has been a great guide that helped me understand this strange concept and I would definitely recommend it to anyone else interested in learning more about recursion(see Chapter 2: Function programming) or any other computer science concept. Circular logic can actually be logically valid problem solving method and is definitely not always as bad as this Dilbert cartoon makes it out to be.