First Day of the Spring Semester 2017

You’ll have to forgive my cover photo indulgence. I gave my mom my iPad Air 2 and bought her some things like a keyboard, a case, styli (she has long fingernails and needs those), a 6 ft charging cable. She was so thrilled that I was thrilled. I wanted a picture and she said, “Yo, bitches I got my iPad”. Ha!

So I started the spring semester yesterday. Both my professors are cool. Both are behind the technological times, opting for some convoluted systems where I needed to install anti-virus and VPNs to submit homework. Most other profs use GitHub. And I was super annoyed about this. I don’t install certain anti-virus software on my Mac. I have a special app for managing threats and it wasn’t listed for the required anti-virus. Bullcrap. But it was required.

Java Programming with Tim Hoffman

For all the complaining I did about the software, our instructor, Tim Hoffman, is probably the best instructor at explaining difficult subjects to novices. I explained references to an object in memory that point to the same object (shallow copy) and in another part of memory that makes another copy of the object (deep copy). This is something I knew about but was fuzzy on. But the way he explained it made perfect sense.

He also bucks the trend of not letting students do their homework over before it is due. He wants us to succeed and learn. His colleagues often ask him why his 401 CS class has such a high grade rate. He told them because I let them make mistakes and learn from them. Isn’t that how you teach? Brava.

Web Dev with PHP and MySQL

We are doing more server stuff this semester in Intermediate Web Dev. I am working on my cousin’s e-commerce site that uses PHP. I had some problems installing Composer on my machine for his site and Zencart. I upgraded PHP and installed Composer which worked.

I also needed Composer to host my class apps on Heroku. The Heroku docs have instructions on how to host apps with MySQL and PHP.

I don’t know how many apps you can have on Heroku with the free plan but I’m hoping I don’t go over the limit[note]You can have 100 apps on verified account for free and 1000 hours of free dyno quote if verified, 550 if not. If you are not verified you can only have 5 apps. To verify, add your debit card, though you will not be billed[/note].

Looking Forward to the Challenge

Last spring I had a nervous breakdown right a the beginning of the semester. I am much better now and things are getting better and better all the time. I am up for the challenge and with Tim Hoffman as my guide, this semester should be a success.

Thoughts on My First Computer Science Class and Great News


“People are always blaming their circumstances for what they are. I don’t believe in circumstances. The people who get on in this world are the people who get up and look for the circumstances they want, and if they can’t find them, make them.” ― George Bernard Shaw, Mrs. Warren’s Profession

What a whirlwind of emotion for me this semester. I really don’t know how I did everything I did this semester. I went to class, mostly (Chinese Thought got old for me and when my Computer Science professor called off I would just stay home. Sometimes I had appointments. Other times I was like forget it). I blogged, did two podcasts, had three guest appearances on podcasts, I learned at Free Code Camp and Treehouse, I wrote for Free Code Camp, I fired up my Jekyll blog and wrote three articles there AND did my homework and all that comes with it. I did slack off at the gym which will be corrected next semester.

So about the Computer Science class.

It was easy at first. Super easy. And then…it slammed me in the face like a bag of bricks swung at my head. I got really good grades on my first two projects, an A and B. But we only built pieces of programs. And then the 3rd project.

Project 3, My Nemesis


“Well, if it can be thought, it can be done, a problem can be overcome,” ― E.A. Bucchianeri, Brushstrokes of a Gadfly

Project 3 was me staying up late night after night, skipping my last two classes to solve the problem. It was a hangman game. It should have been simple. Ohhh, no. Our professor lets us know as soon as we went to the page it was extremely difficult. I started sketching out some pseudocode and it looked fairly simple from where I stood. On that day. But that was the last day it looked simple to me.

I stayed up until 6 am on Thursday, the last day of classes. I searched everywhere. The guy previously helping me on Code Newbie Slack was offline. I livestreamed my coding. Got some advice from a really nice guy. But it contradicted everything I was taught because he was more advanced than me; he was about to finish up his Computer Science BS. I searched all night and morning. I knew I needed to use an array, a for loop, and ArrayList as well, but the concept of arrays confuses me in a sense that I had five words and I needed to grab a character from those words, that I needed to access randomly. Somehow I got stuck on how is Java going to know if the input matches the letter I am trying to pull out of this array? I was completely overthinking it and it was due in one day.

Our prof emailed us collectively and told us that everyone seemed to be having trouble with Activity 1 out of 4 and we could turn Activity 1 in and tell her our thought process we could get partial credit. I had a working Activity 1 and a broken Activity 2 and turned them in with my thought processes. I expect a D or C on this thing.

Good Things Came from This

I wrote my professor this email:

I stayed up all night working on Activity 2 which is why I didn’t come today. I am almost finished with it, and found that an Array and ArrayList would be the way to go. How to find a character in an array? That is where I’m stuck. But I may be able to get help.

I saw your email about people struggling with just Activity 1. I got it done insofar as I got the game to run once; if you guess right everything is printed out to the screen. If you guess wrong you get a tick. Then I ask the player to quit the game. I will be working on it again because now that I think about it I don’t think the game quits when the player wins. In any case, this tested my mettle as someone who wants to be a developer. I don’t think as an Intro student I was ready for this. I livestreamed doing the activity and some guy who is finishing up his BS in CS remarked it was some final project for Intro students. Heh. It doesn’t discourage me, however. I have the activity in a markdown file and uploaded to a site that parses markdown so any time I want to come back to it and work on it, I will. And I’ll probably do that during next semester, as I take the Intermediate class.

This class started out easy enough for me as I had experience with programming and got progressively harder. But what I learned is that I am understanding the interconnectivity between different languages and applying the principles like OOP to each project I work on. I will not be creating a class since it is due tomorrow at 1. But I understand how to do that and look forward to implementing it and working on it in the future.

Thanks for your wit, btw. It made coming to class enjoyable.

Thanks for the great semester and I’ll see you Tuesday for the final.



Her response? Unexpectedly phenomenal.


Even Better News

We had some back and forth and then she sent me this email:


She wants to mentor me, yall. And this is a new beginning and a new era for my CS journey.

Just in case you’re curious, here is my code to Activity 1 and the repo will be listed below.

/* Tiffany White
Rainbow Explosion, is a text-based game that is in the vein of hangman
This activity will introduce the player to the game and store any guesses
Date created: November 19, 2015
Date modified: December 9, 2015

// Imports APIs
import java.util.Scanner;

// Class definition
public class P3A1_White_
// Main method
public static void main(String[] args)
Scanner keyboard = new Scanner(;

// Welcome message
System.out.println(\"Welcome to Rainbow Explosion.You\'re going to guess a letter. If you guess a correct letter, you win.\" +
\"If you guess wrong, you get a color tick. If you guess wrong 6 times, the color bomb explodes and you lose.\");

// Prompt for input
System.out.println(\"Enter a letter.\");

// Gets a char from the user as input
char letter =;

// Runs guessLetter1 method
guessLetter1(\"cat\", letter);

// guessLetter1 method
public static char guessLetter1(String word, char letter1)
{   Scanner keyboard = new Scanner(;
word = \"cat\";
if (letter1 == \'c\' || letter1 == \'a\' || letter1 == \'t\') {
System.out.println(\"You guessed a correct letter. You win! The secret word isn cat. Press enter to quit.\");
} else {
System.out.println(\"You guessed a letter wrong. You get a red tick."
+ \"_ _ _\" + \"Game over. Please press enter to quit.\");

String quit = \"\";
quit = keyboard.nextLine();

return letter1;


//Use System.out.println to print out welcome message, player instructions, and a placeholder for the secret word to the console.
//Use a string to print out blank underscores to the screen to represent the secret word the player is trying to guess
//Secret Word: JavaScript

//Player must guess letter to see if letter is in secret word.
//Use Scanner class and Scanner oject to get input
//If player guesses a correct letter, underscores and correct letter need printed to screen
//Can use two print line statements to print underscores and word on new lines
//Player has won that round

//If letter is not in secret word, the letter guessed plus blank underscores and correctly
//Incorrect guesses get a tick
//Player can only accumulate 6 ticks or he loses game and bomb goes off
//Each incorrect guess gets a color that is printed to the screen using System.out.println, based on how many ticks the player gets
//Player wins by guessing the word. Print to the console whe

Fifth Week of Class and Makin’ Text Files


So this is my fifth week at the University of Pittsburgh, in their CGS program, self-directed study. CGS stands for College of General Studies. I knew I’d have an easier time getting in there and working my way to The Dietrich School of Arts & Sciences Computer Science program.

My self-directed study? Computer Science all the way. I do have some gen eds to take so I am taking Chinese Thought this semester and will probably have to take a language course. I will also have to take Calc 1 & 2 and Stats.

I am extremely happy at Pitt right now, much happier than I was anywhere else. That’s not a slight against community colleges– they gave me a leg up when I needed it. If it wasn’t for HACC (specifically, CCAC isn’t great when you compare the two to be honest) I probably wouldn’t have been able to make it to a full on university. I always knew I was university material. Always. I may not have been able to go when I was young because of circumstances well out of my control but deep down I knew I could go, when I got my stuff together.

So I am in my fifth week and I have homework like mad. Ha. I am excited to do it.

We are doing file input and output in Java. We are writing to a text file with FileWriter. You can also append text to a file doing PrintWriter. Here is an example I found at the University of Texas website:

 public class WriteTextFile
 public static void main (String [] args) throws IOException
 File outFile = new File ("output.txt");
 FileWriter fWriter = new FileWriter (outFile);
 PrintWriter pWriter = new PrintWriter (fWriter);
 pWriter.println ("This is a line.");
 pWriter.println ("This is another line.");

Here in the header you are importing the I/O package for Java and creating and writing text to a new file called “output.txt”, using

FileWriter fWriter = new FileWriter (outFile)

to write to the file after declaring the FileWriter class and then outputting the file. You then declare the


class to append the proceeding lines to the the text file.


closes the file in a similar way that Python closes text files after you open and append text to them.

Update: Seems, after I went to class today, that you open a file with


and append to a file using


I guess I got confused there reading that code from UT.

Starting the University of Pittsburgh


So I haven’t programmed all last week. We had WiCStart and I really wanted to write a blog post on it but I was so overwhelmed by just the one day I went that I laid in bed and did pretty much nothing for a whole week. There are reasons for this that go beyond the scope of this blog. Just know that I was a success early, then a failure, leading a pretty mediocre existence for the end of my teens and my whole 20 something years. Going to WiCStart and realizing that at the end of my CS degree I won’t be poor and I’ll have a great job and be able to send my mother who is poor (by government standards but she’s alright for the most part) a check every month, that I won’t be just another statistic and a casualty of my sociological caste status really scares me and excites me and I don’t know where to put all those emotions. So I stayed in bed. Success, succeeding. I’ve done that. I also fell flat on my face through nothing I could control. It got so bad at one point I thought about selling drugs just to eat. That was years ago. I have been desperate. I have been seriously clinically depressed among other things. I have had to fight for my life numerous times. To know I won’t have to do that, not anymore elates and terrifies me because I don’t know if I fail if I’ll go back to where I was. Being in that place is not fun and more terrifying than failing itself.

So that’s out of the way. WiCStart at the University of Pittsburgh was amazing. Knowing that they are throwing money at women to take on CS degrees makes me relieved because that means I won’t have to quit mid-schooling because I no longer get aid and can’t afford it. Pitt is a good CS school, ranking in the top 30% in the country, and graduates get heavily recruited by local companies and make bank right out of the gate. Recent grads have made $86k right after graduation. The average is $67k.

Tomorrow I start my first university class after being at a community college for longer than I care to admit. Then I was young and really depressed and just couldn’t get myself together to finish classes. Once I was 30 things started looking up. I know CCs and Universities are on different levels and I am excited and nervous all at once. I have been waiting for this day for months and now it is here tomorrow. The day will be long but I was assured by counselors that having ample time between classes is normal and that you can do all sorts of stuff during that time. So I’ll be taking my MacBook Pro with me every class day.

This post isn’t really programming related. And with the semester coming underway I don’t know how many Treehouse posts I’ll be posting. I’ll probably be doing Java posts as that’s what we’ll be learning. We have this thing called MyProgrammingLab by Pearson, sort of like MyMathLab which I am familiar with. So I’ll be posting on that, etc. I will still be doing podcasts– I recorded one last week just been too depressed to edit it. I will here soon and post it. My life is undergoing major changes. The stress is unreal. But I got this. After the life I’ve led, nothing is impossible.

I Am Now a Pitt Panther




My nerves were on high alert all day on Wednesday. The decision wasn’t made until 4 and I didn’t get this information until 1:30 PM. You can imagine my whole entire body. I waited. Watched cat videos on YouTube thanks to the suggestion of some awesome people I met on Facebook who I consider friends, who support me, who have watched me struggle and get back up again, only to fall down and repeat the process.

I watched cat videos until I couldn’t sit still anymore. Called my mom to shave off some time around 3:15. We talked until 4. I waited until 4:30. I called the transfer admissions officer who I have talked to sporadically for 6 years. The same woman who when I was younger, called me on Christmas Eve to make sure I wouldn’t worry too much about January would bring. She didn’t answer. By 4:42 PM I was losing my mind. So I called back at 4:50 PM. She answered, “Tiffany?” Yes, I’ve called her repeatedly the past couple of months. No, I am not ashamed.

She continued, “I was in a meeting and rushed out. I had some other things I needed to get done but I needed to call you. Let’s read the committee’s notes…admit…CGS transfer.” I wanted to make sure I heard that right.

“So I’m admitted?”

I fell back on my bed in this over-the-moon way, a sort of ease back on the bed and smile. We talked a bit about how long this road had been. She congratulated me with great sincerety. She went to bat for me. A lot. When I fell she still went to bat for me. We have this bond, an aloof type bond built off of respect and admiration. She told me they wanted to see good grades from me, that if I was failing a class to get a W grade instead of taking an F (like I tended to do a few times out of shame) and put forth my best effort. I promised her that.

I have spent many years in and out of community colleges. 13 to be exact. Young and not prepared or serious. Having that teenaged rebellion and arrogrance so many people like me who were expected to do great things have. I guess patience pays off.

Clean slate now. Computer science major. More work. Intense work. Focused work. I look forward to a new semester at a university, the University of Pittsburgh. H2P!!