MakerSquare Student Spotlight – Rainbough Phillips, Creating for the Future


Rainbough Philips
Everyday web applications are created and some of them end up having a global change. Rainbough Phillips hopes to contribute to that change by becoming a web developer. After rediscovering her love for science and math in college Rainbough is ready to take on the tech industry and help provide future generations with useful tools.

Where are you from? What’s your professional and educational background?
I grew up in suburban Atlanta, and moved to Austin, TX in 2004. I have been a licensed massage therapist since 2005, and my husband and I have been running a yoga and massage business since 2009. I also decided to return to school a few years ago to complete my bachelor’s degree. I am actually taking time off as a senior at Texas State to do the Makersquare program.

What made you apply to MakerSquare? Is this a career change for you? Or are…

View original post 679 more words


Overdoing it… again

Screenshot from 2013-09-15 19:21:17

Our Friday back end project at makersquare was creating a program that could be used to track and accurately score a tennis game. We also had to complete the test code for it in rspec. It was fun but it seemed a little too easy… I mean I figured it out in the alotted time, and only spent most of lunch perfecting it (yes I am usually that person that discovers burn-out the hard way).

The extension was adding methods for tracking sets and matches. I read about sets and matches on wikipedia: sometimes a set is 6 games, sometimes its 7 or 5… a match is usually best 3 of 5 sets… but not always. I totally don’t get the point of having extra categories of “winning” beyond the basics: 2 out of 3, 3 out of 5, 4 out of 7.  So I decided it would be a shame to let all those methods that tracked players and scores go to waste. Why not simulate the game itself in command line?

Well I did it (woo hoo!!). I even started by writing some test code for it in rspec, but I quickly realized that it was much more complicated than I imagined and it was more complicated than I knew how to test. So I got out the white board, drew a quasi-flow-chart/pseudo-code for how it might work and then spent a huge chunk of yersterday writing code for it. I finally got it to kind of work in the wee hours of the morning.

Today, I spent a lot of time improving the code, and bug testing. There were many errors I missed yesterday that I discovered today. Starting a new game, for example did not clear the previous scores so a winner would be announced after one serve and the winner was the same as the previous game.

I also discovered that after a ball was returned the scoring for the entire rest of the game would occur exactly opposite of how it should have. Points were assigned to the person who didn’t win the point (fixed that BTW). Now, I am looking at the vast amount of repeated code and trying to figure out ways to refactor it to not repeat… I forgot about using procs and lambdas, and I also spent a ridiculous amount of time fixing variable scope problems (I thought I understood scope… ha… apparently, not as well as I thought).

Still, it’s kind of cool. I can now play this little command-line tennis game, of course there is no skill involved. It is based entirely on random number generators, and the player mostly just hits a letter to control the flow of the game. It would probably make a good betting game.

Now, I am wondering how simply it could be done. I am sure I put a huge amount of unnecessary methods/code in there. I am wondering what is going to turn out to be the easier/better way to set it up.

I have also been thinking about the whole model/view/controller paradigm. I have the scoring model separate, but the interface and controller code are pretty well meshed together. It would be interesting to figure out how to separate those properly and still have working code. I am also not sure if I really needed to put my main program inside a module. I had the score model set up that way, so I continued. Was it necessary or even a good idea?

It might be time to revisit codecademy to relearn some of those concepts.

MakerSquare Day 1:

Day 1:

Oh the mistakes I made, by the way, none of those mistakes were related to the class material. I was a little sick last week. It was nothing big, but it made it difficult for me to sleep and by Saturday I was completely exhausted.

I was walking around like a zombie, and even fell asleep in the middle of a busy, noisy arcade that my husband and I took our son too. On Sunday I was better, and because we had the long weekend I had a whole extra day to catch up on sleep and get back to feeling normal, and I did. It was also the day before MakerSquare so I was excited and nervous. To top it off, one of my not-so-nice extended relatives pulled a stunt on Sunday that I was having trouble not worrying about.

I got very little done on Sunday with regard to MakerSquare preparation, and so all of Monday was dedicated to that cause. I completely forgot that I had been sick and exhausted only two days before. Funny how that happens… I just assumed I was all better, and maybe I mostly was.

So the night before MakerSquare I tried to go to bed early but I was far too anxious. I made it by 11pm. My alarm was set for 5 am. I tossed and turned and finally woke up at 4:30am. I couldn’t get back to sleep so I got up. My day was exciting. I rode the train for the first time into Austin.
The train drops off about a half mile from MakerSquare headquarters. I power walked all the way there. I didn’t want to be late for the 8AM breakfast (I had 40 minutes to make a 10 minute walk. I was not going to be late).

Long story short: by about 10 am my nerves were frazzled and I was exhausted, and I had most of the day to go. I have been through many first day situations. There are always lots of names to learn, lots of new things. It’s usually one of my favorite days of the school year, but today I found myself needing fresh air and a walk early on. I managed it. The walk, and some of the techniques I learned in yoga teacher training paid off.

I was fine for most of the rest of the day, but by 5pm I started getting frazzled again. I didn’t realize it until it was 10 till 6 and I decided I needed to immediately head for the train station, to make it to the 6:30pm train (why?). I took a turn too quickly and my feet went one way while my body went the other. I found myself skidding to the ground on some very decorative paving stones in the middle of downtown Austin. One of my classmates was nearby and came to check on me.

I tried to explain what happened.

I said something like “I put my feet before my body.” I was exhausted and not thinking clearly. I got up quickly and continued my jog. I got to the train stop a full 30 minutes early and sat there trying to figure out the reason for the urgency. I was thinking through my day. When had I been frustrated?

Not once. The coding was relatively easy. We learned how to work with git hub, set up a development environment on my computer, and started working through a bunch of easy html exercises.

None of it was challenging to me. I had been so excited I forgot about being sick, and needing more time to recuperate. I failed to get enough sleep, and let myself get way to excited for far too long. I know plenty of meditation and yoga techniques. I could have managed all of these things better than I did.

So I went home climbed into a hot tub, ate dinner, and climbed into bed at 9:30 pm. I let myself sleep in until 6:30am. I brought extra music along in case I need extra “chill” time. Ironically, in all my preparations for yesterday, I failed to consider several crucial needs of my own, and I do know better.

I am ready for a day where my frustration comes in the form of code rather than exhaustion. I’m ready, more importantly I’m well rested and got all my first-day jitters out.

Woo hoo! Here’s to Day 2.

My Priority list

I need a priority list today, because I keep getting distracted by my desire to play around more with my new found CSS skills…. ahhh… so much fun. 

Today I would like to finish off the last few sections of javascript at codecademy, and rails for zombies 1, works some more of the second the html/css codeschool course (super fun course BTW). This is all reasonably interesting/fun material, especially since I only have the object sections left in the javascript course.

I absolutely need to:

review the command line tutorials, review css positioning, and make sure I have enough clean laundry for the week ahead. 

NOOOOO…. boring stuff… no. Fine… I’ll do it. If I have time, later, I’ll get back to the fun work.

Happy accident:

I just discovered by accident that if you add elements to the hover element in CSS it causes those changes to happen during the hover event. So now if you hover over my fractal image it will change into an ellipse. Wow. That would have taken a lot of code in jquery to figure out how to do correctly, and it happened by accident because I wasn’t paying attention to where I was writing my code. CSS is amazing!