<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Up She Rises - Medium]]></title>
        <description><![CDATA[musician, coder, drunken sailor - Medium]]></description>
        <link>https://medium.com/up-she-rises?source=rss----ef0b9e1fe91d---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>Up She Rises - Medium</title>
            <link>https://medium.com/up-she-rises?source=rss----ef0b9e1fe91d---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Fri, 13 Nov 2026 09:36:16 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/up-she-rises" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[No Fear]]></title>
            <link>https://medium.com/up-she-rises/no-fear-280c0ecc02f2?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/280c0ecc02f2</guid>
            <category><![CDATA[fitness]]></category>
            <category><![CDATA[handstand]]></category>
            <category><![CDATA[fit-girls]]></category>
            <category><![CDATA[fearless]]></category>
            <category><![CDATA[conquer-your-fear]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Thu, 21 Jul 2016 04:55:05 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:30.521Z</atom:updated>
            <content:encoded><![CDATA[<p>You guys!</p><p>I finally did a handstand! I mean, it was against the wall, but….I finally did a handstand against the wall!</p><p>I’ve been pursuing this goal for about a year now. About a year ago, when my boyfriend left for 3 months to work in Croatia, I got on this fitness bend and discovered I could do a headstand. I was stoked! I spent a good hour in my friend’s living room that night just doing them over and over until I was dizzy :)</p><p>But the handstand eludes me.</p><p>Something about being upside down is deeply terrifying to me. I guess I’m the kind of person who likes to be in control. Control of my diet, control of my body, control of my finances, control of my future. It’s probably why being a musician didn’t work out for me so well. And no matter how many times I fall out of a handstand, or out of tree pose, I’m still afraid. My logical brain knows it’ll be fine. But lizard brain is screaming “FUCK NO WHAT THE FUCK ARE YOU DOING YOU INSANE PERSON STOP RIGHT NOW STOP IT STOP IT.”</p><p>Tonight, after re-aquainting myself with wine for the first time in…a good long while, I finally did it! I moved the pile of stuff that had been sitting against that wall for six months. The pile that I kept saying “if I moved that, I could totally use that wall to practice my handstands.” And I did a god damn handstand. And more besides. And you know what? It was <em>easy</em>.</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2F03mzYP0LFgk%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D03mzYP0LFgk&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2F03mzYP0LFgk%2Fhqdefault.jpg&amp;key=d04bfffea46d4aeda930ec88cc64b87c&amp;type=text%2Fhtml&amp;schema=youtube" width="640" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/04fa27f6357ff5acd98147374a2d94d1/href">https://medium.com/media/04fa27f6357ff5acd98147374a2d94d1/href</a></iframe><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FXhywz1aDVW8%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DXhywz1aDVW8&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FXhywz1aDVW8%2Fhqdefault.jpg&amp;key=d04bfffea46d4aeda930ec88cc64b87c&amp;type=text%2Fhtml&amp;schema=youtube" width="640" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/ccf28a8af4f7d879e84b55dd0b1ae2da/href">https://medium.com/media/ccf28a8af4f7d879e84b55dd0b1ae2da/href</a></iframe><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FwTAI8zNgzGA%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DwTAI8zNgzGA&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FwTAI8zNgzGA%2Fhqdefault.jpg&amp;key=d04bfffea46d4aeda930ec88cc64b87c&amp;type=text%2Fhtml&amp;schema=youtube" width="640" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/d8d5dddb792b7b7c884fa5c47eeebe23/href">https://medium.com/media/d8d5dddb792b7b7c884fa5c47eeebe23/href</a></iframe><p>All it took was moving that pile of stuff.</p><p>How many other piles of stuff am I letting sit idle in my life?</p><p>Guess there’s only one way to find out…</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=280c0ecc02f2" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/no-fear-280c0ecc02f2">No Fear</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[5 Steps to Take When You’re Stuck]]></title>
            <link>https://medium.com/up-she-rises/5-steps-to-take-when-youre-stuck-8e4afffc3581?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/8e4afffc3581</guid>
            <category><![CDATA[career-change]]></category>
            <category><![CDATA[autodidactism]]></category>
            <category><![CDATA[bay-area]]></category>
            <category><![CDATA[chat]]></category>
            <category><![CDATA[beginning-code]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Mon, 18 Jul 2016 02:08:02 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:22.470Z</atom:updated>
            <content:encoded><![CDATA[<p>You’ve been staring at a blank screen for the better part of an hour. And you have no idea what you’re doing.</p><p>We’ve all been there. That’s the most important thing to remember. Once you’ve reminded yourself of that, here are a few other things you can try that may help you through it.</p><ol><li>Assume the Fetal Position</li><li>Rock Backwards and Forwards for…oh I dunno. Say about 20 minutes. Cry. Think about what a useless, moronic waste of space you are. Question every decision you’ve ever made, especially the ones that brought you specifically to this point. Panic about the quagmire you’ve gotten yourself into, and give up hope that you’ll ever get through it.</li><li>Pull Your Shit Together</li><li>Make a Cup of Tea</li><li>Write SOMETHING. For God’s sake. ANYTHING. Are you a programmer? Declare a variable. Write a comment. Make a div. An author? Name a character. Just put something on the page. Whatever you’re capable of in that moment. More than likely it will give you the momentum you need to get a chunk of your project going. Perhaps not the chunk you were hoping to move…but hey, there are probably a million parts of this f*cking thing you need to tackle, right? You may as well start somewhere.</li></ol><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8e4afffc3581" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/5-steps-to-take-when-youre-stuck-8e4afffc3581">5 Steps to Take When You’re Stuck</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The Fisher-Yates Shuffle]]></title>
            <link>https://medium.com/up-she-rises/the-fisher-yates-shuffle-8b6371805fb0?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/8b6371805fb0</guid>
            <category><![CDATA[bootcamp]]></category>
            <category><![CDATA[arrays]]></category>
            <category><![CDATA[bay-area]]></category>
            <category><![CDATA[autodidactism]]></category>
            <category><![CDATA[beginning-code]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Tue, 12 Jul 2016 02:13:26 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:20.299Z</atom:updated>
            <content:encoded><![CDATA[<p>While working through the Maker Square pre-course work (so…much…course work) I came across this nifty little algorithm that is just SO COOL that I had to write about it.</p><p>More importantly though, I came across <a href="https://bost.ocks.org/mike/">this excellent blog</a> by Mike Bostock, which is where I learned about this algorithm. Mike <a href="https://bost.ocks.org/mike/shuffle/">breaks it down</a> in such a beautiful, concise way, and illustrates it with such truly helpful animations that you really just have to go and check out.</p><p>I’ll be right here.</p><p>Pretty cool, right?</p><p>Welp, there’s really no reason for you to read my shit post now, but it will definitely help solidify my understanding of this function to break it down for myself, so if you’d like to stick around while I do, I’ll put the kettle on.</p><p>The Fisher Yates Shuffle</p><p>This function/algorithm/whatever you want to call it was conceived by Ronald Fisher and Frank Yates way back in 1938, in a book called <em>Statistical Tables for Biological, Agricultural and Medical Research, </em>which I’m sure was absolutely riveting. (You can check out the book <a href="https://digital.library.adelaide.edu.au/dspace/handle/2440/10701">here</a> if you’d like, but I’d advise against it unless you want to spend the next three hours cross-eyed.)</p><p>The purpose of the algorithm is to randomly shuffle a set of data. Seems like a pretty simple thing to do nowadays, especially when you’ve got JavaScript’s handy Math.random function available. Unfortunately, as Mike Bostock explained (and as I spent a frustrating two hours figuring out), there are a couple of hiccups to consider.</p><p>Firstly, there are many ways you could shuffle the items. Say you have a row of people sitting in chairs on one side of a room, and a machine that randomly picks one chair at a time and tells the person sitting in that chair to move to a new chair on the other side of the room. The problem here is that eventually, you will have a lot of empty chairs on your side of the room — but the machine will not know that they are empty. It will continue to pick random empty chairs with no result. As more and more people move to the other side of the room and leave their chairs behind, the process of building up the new row will become slower and slower because the odds of the machine picking the few random chairs that still have people in them become smaller and smaller. (This is Bostock’s first illustration.)</p><p>Okay, so we don’t want that. How else could we shuffle the items? Sticking with our chair analogy, let’s say we had the people take their chair with them when they moved. This solves our empty chair problem. Unfortunately, it also means that twice as many things are now being moved across the room, which, again, slows the process down….something about O(n²)….I haven’t gotten that far yet. (Bostock’s second point.)</p><p>That doesn’t seem so great either. The somewhat obvious solution is to forget about the other side of the room and just have the machine pick people at random to switch seats with each other. The reason this solution isn’t obvious as far as JavaScript goes (at least to me), is that you have to tell the machine how many times to switch people. When people and chairs are disappearing, it’s pretty easy for the machine to stop randomly picking them. But when they are switching in place, the probability of picking duplicates or accidentally writing an infinite loop and crashing your computer increases greatly.</p><p>How can we solve this problem, then? Let’s look at the code:</p><p>[code lang=text]<br>function shuffle(array) {</p><p>var remainingItems = array.length;<br>var randomIndex;<br>var temp;</p><p>while(remainingItems) {</p><p>randomIndex = Math.floor(Math.random() * remainingItems — );</p><p>temp = array[randomIndex];<br>array[randomIndex] = array[remainingItems];<br>array[remainingItems] = temp;<br>}<br>return array;<br>}<br>[/code]</p><p>Ahh it’s so easy when you know how to do it! Let’s break it down in terms of chairs and people.</p><p>In this code block, the array is our row, our chairs are the indexes, and our people are the actual array items. Remember: an array is basically like a list of slots (indexes) that hold values (items.) The length of the array (which we can find using array.length) will always be the number of indexes in the array, and the indexes will always be numbered starting with zero.</p><p>So here, we set a variable <em>remainingItems</em> to hold our array length (makes sense if you think about it — this is how many items we have to work with.) We then set two variables that we know we are going to use later. One to hold a <em>random index</em> and one to <em>temporarily</em> hold the value of that index.</p><p>We tell our while loop to run as long as there are remaining items — in other words, as long as our array length. If our array has 3 things in it, our while loop will run 3 times. If it has 3000 things in it, our while loop will run 3000 times. That’s the great thing about while loops: they never give you shit about your arrays being too long.</p><p>Every time the loop runs, the first thing it does is pick a random index. Math.random returns a random decimal between 0 and 1 (<em>up to</em> 1, not <em>including</em> 1.) We need to multiply that by a larger number to scale it to the size we need. If you multiply the decimal by 10, it will become a number between 1–10, by 100, will become a number between 1–100, etc. So, depending on how long our array is, we will get a number that could correspond to an index (anything greater than 0.) It’s not <em>quite</em> ready to be used as an index, though, because it’s still a decimal, so next, we use Math.floor to round it down to a whole number.</p><p>Every time the loop runs, our multiplier will decrease by 1 (the — just means “minus one”.) This decreases the odds of picking duplicates and tells the machine how many times to run the code, because remember, that same variable is being used at the top of our while loop. Start at the end of the array, and go backwards towards the beginning. When you get to the beginning (i.e. when there are no items remaining), stop.</p><p>Sort of reminds of a quote from Alice in Wonderland:</p><blockquote><em>“Begin at the beginning” the king said gravely, “and go on until you come to the end: then stop.”</em></blockquote><blockquote>- Lewis Carroll, Alice’s Adventures in Wonderland, <a href="https://www.cs.indiana.edu/metastuff/wonder/ch12.html">Chapter XII</a></blockquote><p>Okay, well, like that but backwards.</p><p>Next, we make the swap, using our temp variable. I detailed how to swap array elements in <a href="https://upsherises.wordpress.com/2016/06/05/reverse/">this post</a> if you need a refresher. Here, we are swapping a random element with the element in the current position (our current position is the last index of the array, then the second to last, then the third to last, etc etc.)</p><p>And that’s it! Once our while loop has run out of items to swap, we exit the loop and return the shuffled array.</p><p>I think what I love most about this is the obvious point that you should start at the end of the array and go backwards, using the end of the array to hold the newly swapped elements. If you think about it, it’s no harder than reversing an array — you just need to implement Math.random.</p><p>Woo! JavaScript! Now get out there and start shuffling those arrays!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8b6371805fb0" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/the-fisher-yates-shuffle-8b6371805fb0">The Fisher-Yates Shuffle</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Keto: One Month Down]]></title>
            <link>https://medium.com/up-she-rises/keto-one-month-down-58e62af8eb01?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/58e62af8eb01</guid>
            <category><![CDATA[fit-girls]]></category>
            <category><![CDATA[fitness]]></category>
            <category><![CDATA[girls-who-lift]]></category>
            <category><![CDATA[bay-area]]></category>
            <category><![CDATA[journey]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Wed, 29 Jun 2016 20:59:57 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:18.424Z</atom:updated>
            <content:encoded><![CDATA[<p>Time for a check-in.</p><p>I generally feel good! I’ve stuck to my plan really solidly and my cheat days have been pretty non-existent. I haven’t eaten any “cheat” foods, instead sticking to keto-friendly stuff at BBQs, etc. and even then I haven’t really overeaten.</p><p>Instead of cheat days, I <em>have</em> had a couple of accidental drunken nights. I have this thing where once I start drinking I don’t want to stop (a friend from LA used to call it “the fangs.”) It’s gotten me into a lot of trouble in the past, and so I pretty much stay away from booze now. Maybe one day I’ll regale you all with tales of my drunken debauchery, because there are some really good ones…</p><p>Anyhoo…</p><p>The problem is that now, since I never drink anymore, the fangs tend to come out after half a glass of wine, so I don’t really stand a chance.</p><p>Progress</p><p>My weight this morning is 122.5lbs, so I’ve lost about 5lbs this month. That’s a healthy amount to have lost, but I’ve been stuck between 122–124 for about a week now, which is frustrating. My period is due to start tomorrow, so I have a sneaking suspicion I might be holding onto some water weight. I will weigh-in again this weekend to see if there’s any change.</p><figure><img alt="KetoOneMonth" src="https://cdn-images-1.medium.com/max/1024/0*qu8RXLZGk03AL_hW.jpg" /></figure><p>I’ve made some updates to my routine and food-plan, which I will detail below:</p><p>Workouts:</p><p>Mon AM — Stronglifts<br>Tues AM — cardio / PM — yoga<br>Wed AM — Stronglifts<br>Thurs AM — cardio / PM — yoga<br>Fri AM — Stronglifts<br>Sat AM — yoga<br>Sunday — hike</p><p>This is a way less complicated schedule, and it means that all my workouts are now fasted, which is preferable. Also, waking up early every day means I have to go to bed early every night, which means less TV, less snacking temptation, better sleep and generally just more awesomeness. My BF and I have been hiking together for about 2 hours the past few Sundays, which is super fun date-time and a great way to explore new spots.</p><p>I also started a 30 Day Ab program, because it takes 5 mins a day, and why not?</p><p>Food:</p><p>For the next month, I’m sticking pretty religiously to the following plan:</p><p>Breakfast: black coffee, 2 eggs, bacon if I’m hungry<br>Mid-Morning: 1/2 avocado, 1tbsp mayo<br>Lunch: 1 can tuna, 1 tbsp mayo, 1 cup spinach, 1 tomato, 1tbsp walnuts<br>Afternoon: green protein smoothie (spinach, unsweetened almond milk, protein powder)<br>Dinner: 1 chicken breast, 1 cup asparagus or broccoli</p><p>It’s essentially what I’ve been doing, I’m just cutting about 100 more calories to account for weight lost. I’ve started adding cinnamon to my coffee because apparently it’s good for insulin control, and it’s yummy. I’ve also started taking a fiber supplement, because I probably wasn’t getting enough fiber even when I was eating carbs.</p><p>I’ve been doing a bit of intermittent fasting, skipping breakfast or dinner here and there if I’m not hungry. On weekend mornings I usually don’t eat til around 11AM anyway. Weekends I tend to eat more, and eat differently, which I think is good. I’m on a very low calorie plan right now, so it’s a chance to refeed, and it’s nice to know I can relax and not worry about eating too much.</p><p>I’m considering trying a water fast this month. Probably just 5 days; mainly because I’m curious and I like a challenge.</p><p>Other:</p><p>I’m trying to get out in the sun for about 40 mins a couple times a week. I would love to say it’s because I’m trying to get that sweet Vitamin D, but that would be a lie. I just want to be tan.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=58e62af8eb01" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/keto-one-month-down-58e62af8eb01">Keto: One Month Down</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[My Bootcamp Application Process]]></title>
            <link>https://medium.com/up-she-rises/my-bootcamp-application-process-4d59bc0a073f?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/4d59bc0a073f</guid>
            <category><![CDATA[bootcamp]]></category>
            <category><![CDATA[beginning-code]]></category>
            <category><![CDATA[autodidactism]]></category>
            <category><![CDATA[bay-area]]></category>
            <category><![CDATA[career-change]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Thu, 23 Jun 2016 00:44:11 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:20.908Z</atom:updated>
            <content:encoded><![CDATA[<p><em>This is a long one…. TLDR: skip to the </em><a href="#summary"><em>summary</em></a><em> at the bottom.</em></p><p>About a month ago, I decided to start applying to bootcamps. Until that point, I had been chugging along on Free Code Camp, hoping to complete their program by the end of this year and start applying for jobs. The problem was, as I wrote in an earlier post Why I Decided to go to Bootcamp, that I felt like I was missing things, and that FCC wasn’t providing me as solid a foundation as I would like.</p><p>So I started researching, and ultimately decided to apply to 6 camps: Dev Bootcamp, Coding House, Coding Dojo, App Academy, Hack Reactor and Maker Square.</p><p>Yesterday, I was accepted to Maker Square in San Francisco! I start in September and will finish early December.</p><p>I plan to blog as regularly as I can about my experience while I’m there. I wanted to start out with a post about my application experience with each camp, and why I ultimately chose Maker Square. Hopefully, if you’re in the position I was in a month ago, this post will help you navigate the wealth of information on camps out there.</p><figure><img alt="dbc_s_2c_rgb_500w" src="https://cdn-images-1.medium.com/max/500/0*sTs8iLINck5sRtOr.jpg" /></figure><p><a href="http://devbootcamp.com/">Dev Bootcamp</a></p><p>Dev Bootcamp touts themselves as “the original code bootcamp.” They were one of the first camps, established in San Francisco in 2012. They now have campuses in Seattle, Chicago and New York. In 2014 they were acquired by the for-profit education company Kaplan, Inc.</p><p><strong>STATS</strong></p><p>Tuition: $12,000 -$14,000 depending on the city.<br>Length: 19 weeks<br>Success Rate: 90% *<br>Avg Salary: $80K *</p><p>* Dev Bootcamp has actually stopped posting their stats online since I applied — these numbers are a couple of months old at the time of this post. They’ve since replaced them with more general statements about salary differences between cities, and they no longer post a graduate hiring percentage on their website. This is probably in response to a recent outcry that there is no standardized metric in place for evaluating bootcamp success (which is something I kept in mind during this process.) Flatiron school is, I think, the only school to date to attempt to come up with a meaningful standard to measure their outcomes. Still, I do believe Dev Bootcamp likely graduates many successful candidates.</p><p><strong>APPLICATION PROCESS</strong></p><p>You are expected to follow a few tutorials on their website to prepare, and then do a technical Skype interview. The interview is done in Ruby. All the material is very accessible and fun — cute animated videos narrated by an upbeat woman. The final video is a <a href="https://www.ted.com/talks/jeremy_rifkin_on_the_empathic_civilization">TED Talk</a> — you are expected to watch it and be prepared to discuss it with your interviewer. (The talk is cool and I recommend checking it out either way.) The interview itself was not hard. I was expected to know some pretty basic stuff. I don’t think I even wrote a “for” loop. They also asked me questions about why I wanted to learn to code and what I hoped to achieve after the program.</p><p><strong>OUTCOME</strong></p><p>I was accepted. This was the first camp I applied to, so it was super encouraging to be accepted, although the camp was not my top choice. I ultimately decided not to go there because of 3 reasons:</p><ol><li>They teach mainly Ruby, and after extensive research, I decided JavaScript was the way to go for me.</li><li>There is a 9 week online self-study period before you actually get on campus. I’ve already been studying by myself for the past couple of months, and my main reason for going to a camp is to get into a classroom and be around peers. I’m not interested in spending another two months in my room alone…</li><li>The technical interview, once I compared it to later interviews, was not particularly challenging (more on this later.)</li></ol><figure><img alt="logo-black" src="https://cdn-images-1.medium.com/max/400/0*xSB0hGypbV6RITvL.png" /></figure><p><a href="http://codinghouse.co/">Coding House</a></p><p>Coding House combines the bootcamp model with a hacker house. Students live in the house and attend classes during the day. The idea is that being around your colleagues all the time motivates you, and that you can easily get help 24 hours a day.</p><p>Something about this place was fishy to me from the start. I couldn’t put my finger on what, exactly, but it seemed off. Then, I read a bunch of stuff on Reddit about a grad from the first cohort who had posted a really scathing review of the place. That’s fine — I’m not swayed by one bad review: everyone has a different experience, and I’m fairly sure this one guy was probably just a moron who didn’t put in enough work and then blamed the camp for his own shortcomings. The part that nagged at me was that the actual review he wrote has been deleted <em>everywhere </em>and is basically impossible to find. Who deleted it? I don’t know, but it’s fishy.</p><p>I also read a few other reviews saying that living in the house was actually really distracting and made learning difficult. Again, I’m sure this depends on who you are.</p><p><strong>STATS</strong></p><p>Tuition: $0 — pay when you’re hired<br>Length: 14 weeks<br>Success Rate: 95%<br>Avg Salary: $84K</p><p><strong>APPLICATION PROCESS</strong></p><p>They have an extensive prep course, consisting of coding challenges that you have to complete in order to “unlock” the next step of the process (i.e. complete 10 challenges to schedule an initial interview, complete 10 more to schedule the technical interview.) Many of the challenges actually direct you to Free Code Camp to study their material if you need help. You can also direct message Nick or AJ — the two guys in charge — for help, and they are generally quick to respond.</p><p>Both interviews were done over the phone. I spoke to Nick both times. First, to chat about my experience and goals, and the next time to do the “technical” interview. Because it wasn’t done over Skype, there was no actual coding challenge. The interview consisted of him asking me questions to check my understanding about various topics. It was fairly casual and he offered some suggestions on the things I wasn’t totally clear about.</p><p><strong>OUTCOME</strong></p><p>I was accepted. Again, not my top choice school, but nice to know I had options. Though I was tempted by the zero up-front tuition model and their focus on JavaScript, I ultimately decided not to go for the following reasons:</p><ol><li>Bad reviews. I know that a bad review doesn’t necessarily mean the school is bad. Some students are just not cut out for it, and some people just can’t accept responsibility for their own shortcomings. However, why risk it? When you’re investing this much time/money, it’s just not worth it when there are other schools out there that people literally <em>gush</em> about *coughmakersquarecough*</li><li>Living situation. I realized that I would essentially be living in a hostel for 3 months, and I didn’t think I could handle it and be focused in that environment. I’m pretty sensitive to noise and a very light sleeper, so I just didn’t see it working for me.</li><li>Technical interview. Something about doing an interview over the phone just seems like a cop-out. It seemed too easy. I need to know that the course is going to challenge me, and that they are going to weed out the people that don’t cut it.</li></ol><figure><img alt="coding_dojo" src="https://cdn-images-1.medium.com/max/1024/0*RGzJfAFFbxbfJFuJ.png" /></figure><p><a href="http://codingdojo.com/">Coding Dojo</a></p><p>This was the first bootcamp I heard about, and for a long time it was my top choice. It’s one of (surprisingly) few camps in the San Jose area, and it’s the cheapest of the bunch — especially if you’re a woman, veteran, or identify with a minority group: they have massive scholarships for these groups.</p><p>Their selling point is that they teach 3 full stacks, rather than focusing on just one language, as other schools do. You choose between LAMP, MEAN, iOS, Python and Ruby, and spend a month on each stack.</p><p><strong>STATS</strong></p><p>Tuition: $14,000 (minus up to $2500 in scholarships if you qualify)<br>Length: 14 weeks<br>Success Rate: not listed<br>Avg Salary: not listed</p><p><strong>APPLICATION PROCESS</strong></p><p>Coding Dojo’s site has an “algorithm platform” designed to take students through basic programming fundamentals before they apply. This was actually my very first exposure to code, wayyyy back in February of this year and I have to say, it was invaluable. The platform is great, easy to use and understand, thorough and very informative. You don’t have to apply to be able to use it, so I encourage newbies to get on there and start studying regardless of your intention to attend a camp.</p><p>Their actual interview process was the easiest of all of them — <em>no</em> technical interview. I had only one phone interview with an admissions person, and they didn’t ask me a single question about programming. Their program really seems geared towards “everyone can learn,” and they accept basically everyone. They don’t kick anyone out for falling behind, and the whole thing is very inclusive. That’s great, and I’m sure it works for some people, but if I was looking for that kind of environment, I would go and teach preschool.</p><p>I went to an info session, and it seems that many of the teachers there are recent graduates themselves. I’m not looking to learn something as tough as programming from someone who has barely learned it themselves. In addition, I realized that most of their content is delivered in video format. If that’s the case, then what is the point in going to campus? I can sit at home by myself and save ten grand for that.</p><p><strong>OUTCOME</strong></p><p>Needless to say, I was accepted and declined. In addition to the reasons listed above, I really don’t think it’s possible to teach 3 full stacks in 3 months. If other schools teach a single language in 3 months, I don’t see how Coding Dojo can claim to teach 3 in the same amount of time. Sure, you might get an overview, but as far as in-depth knowledge that will actually get you hired? I don’t think so.</p><figure><img alt="hack-reactor-logo" src="https://cdn-images-1.medium.com/max/900/0*rEub34Lsy7hx9Omg.png" /></figure><p><a href="http://hackreactor.com/">Hack Reactor</a></p><p>Hack Reactor is, as far as I can tell, one of the top bootcamps in the country. Their only campus is in San Francisco, but they recently bought Maker Square — who have campuses in 3 states. They are also one of the most expensive bootcamps in the country — with tuition around $20,000 at the time of this writing. Because of that, it was not my top choice school.</p><p><strong>STATS</strong></p><p>Tuition: $19,780<br>Length: 12 weeks<br>Success Rate: 98% *<br>Avg Salary: 104K *</p><p>* As I said before, I kept the fact that these numbers are not measured by anyone except the schools themselves in the front of my mind during the application process. My excitement about the course stems mostly from their focus on JavaScript and recommendations I’ve gotten from people in the industry.</p><p><strong>APPLICATION PROCESS</strong></p><p>I learned more applying to Hack Reactor than I did in two months of self-study. I’m not kidding. They don’t have any video tutorials or guide for you to follow; instead, they post an extensive list of resources that they recommend you use to prepare (one of which is my new favorite book Eloquent JavaScript, which I have written about before.) They advise that it takes a great candidate 15 hours to prepare. I probably spent about twice that.</p><p>The technical interview itself was brutal. Essentially, they blind-sided me with something I had never seen before. The guy interviewing me said I wasn’t expected to be familiar with the concept, but that didn’t make it any easier. I struggled for the entire 45 minutes to complete one problem. Needless to say, I failed the interview.</p><p>Surprisingly, the next day, I received an email saying I had been conditionally accepted (!!) I was floored. I was convinced I would receive a flat-out “no.” They said I was a promising candidate and offered me <em>free</em> mentoring with one of their coaches (two group sessions and one individual session) for the next three weeks, which would be accompanied by extensive homework. After that, I could redo the interview. I was under no obligation to redo the interview or go to the school after I completed the coaching — I was free to use it as a way to bolster my knowledge and prepare for other bootcamps. I’m not going to lie, that’s pretty amazing. It made me feel like they truly are trying to find the best candidates and give those candidates the best opportunities to succeed — they’re not just out for the money.</p><p><strong>OUTCOME</strong></p><p>The rigor of the interview combined with this unexpected little bonus (I signed up for the coaching and my first session is on Monday) really solidified Hack Reactor’s credibility for me. Though I won’t be attending (mostly because of the cost), I’m encouraged to know that my instincts about the school were correct, and I’d be happy to be associated with their brand in any way. Which brings me to my final review…..</p><figure><img alt="fa0c76d4bd39b9bc82c8cf32b90cd846" src="https://cdn-images-1.medium.com/max/600/0*OJ96Id58I2fvxwZd.png" /></figure><p><a href="http://makersquare.com/">Maker Square</a></p><p>Maker Square was founded in Austin and now has campuses in San Francisco, LA and New York. They were bought by Hack Reactor in early 2015, so the curriculum is extremely close to Hack Reactor’s (their websites are also very similar.) A lot of my enthusiasm for Maker Square comes from knowing that they are affiliated with Hack Reactor — and also because they had made a good name for themselves before the acquisition.</p><p>A lot of my enthusiasm for Maker Square also comes because it was one of the only schools I got feedback about from a real human. My mom works in tech, so early in this process I reached out to her, and asked if she could float the names of the camps I was considering to some colleagues to get their reactions. She did one better (like she always does because my mom’s the best) and emailed the Women in Tech meetup group at her company. I got responses from 3 women, and ALL of them talked about either Maker Square or Hack Reactor. I got in touch with one of them — a former high school music teacher (!) who now works for Maps Eval at Apple. She said she was hired less than a month after finishing the program, and answered all my many questions about Maker Square. She raved about the program. And she was <em>incredibly</em> helpful and generous throughout my entire application process, staying in touch and offering me support and feedback. I have never met this woman, but she was <em>psyched</em> for me when I emailed to tell her I had been accepted. So awesome!</p><p><strong>STATS</strong></p><p>Tuition: $16,920<br>Length: 13 weeks (plus 1 month prep work)<br>Success Rate: 96%<br>Avg Salary: $106K</p><p><strong>APPLICATION PROCESS</strong></p><p>The process was very similar to the work I did to prepare for Hack Reactor. The resources they suggested were exactly the same. The only difference was that when it came time to interview, <em>they actually asked me questions about what I had studied. </em>I’m not mad about my interview with Hack Reactor — I’m actually really glad I got the shit kicked out of me — but I gotta say, working your ass off to prepare for something and then <em>nailing</em> it feels pretty good. It gave me a really positive feeling about the school.</p><p>On top of that, the person who did my interview was a woman. In fact, everyone I’ve interacted with about Maker Square so far (except the admissions director) has been a woman. Does the school appeal more to women? I don’t know why it would, but I will say that having so much positive feedback and support from women made me really excited about the program. The gender gap is closing (slowly) and it seems like Maker Square gets it.</p><p><strong>OUTCOME</strong></p><p>I’m going in September! Eeeeeeeeee!</p><p>If you’re interested in hearing more about Maker Square, follow this blog for regular (I hope) updates as I make my way through the program.</p><h3><strong>SUMMARY</strong></h3><p>The decision to go to a bootcamp is one that only you can make, and deciding <em>where</em> to go can be even harder than deciding <em>to</em> go. Throughout this process, I’ve come up with a few rules (tips/insights/wisdoms/what-have-yous) that I think could be helpful to a prospective camper, and I’d like to summarize this post by sharing those with you now:</p><ul><li>Don’t just go for the cheapest option.</li><li>This is an investment in your future. As painful as it is to part with large chunks of money, it will be far more worth it in the long-run than saving a few thousand bucks now, only to come out the other side with a sub-par education.</li><li>Challenge yourself</li><li>Computer programming is SUPER HARD. You can’t expect to actually succeed in this field without a lot of sweat. So the program you choose should be hard too. Thus, the technical interview should be hard. If you breeze through it (or they don’t even give you one) how can you be confident that their program will be rigorous enough to get you to where you need to be?</li><li>Less is more</li><li>Three stacks is too much. Better to learn how to do one thing well than do a bunch of things half-ass.</li><li>Stats are important, but not everything</li><li>I’m not gonna lie: Maker Square’s promised $106K average salary looks sooooo good. But I’m not going into this expecting that to be my outcome. Lots of things warp those numbers, and I’m not naive enough to believe that they are entirely accurate (or truthful.) But, at the end of the day, I’d rather be at the low-end of a <em>maybe</em> $106K average than a <em>maybe</em> $80K average.</li><li>Go with your gut</li><li>If you’ve put in the time and done your research, and you’re stoked about a school, chances are you’re making the right choice.</li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4d59bc0a073f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/my-bootcamp-application-process-4d59bc0a073f">My Bootcamp Application Process</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[.reduce]]></title>
            <link>https://medium.com/up-she-rises/reduce-2aa8cb483c4d?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/2aa8cb483c4d</guid>
            <category><![CDATA[code]]></category>
            <category><![CDATA[code-resources]]></category>
            <category><![CDATA[autodidactism]]></category>
            <category><![CDATA[beginning-code]]></category>
            <category><![CDATA[code-newbie]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Tue, 21 Jun 2016 22:38:22 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:25.626Z</atom:updated>
            <content:encoded><![CDATA[<p>The next higher-order function I want to tackle here is .reduce</p><p>This function can be a bit confusing (I actually only started writing this post after I realized that I had been misunderstanding what the parameters of this function actually were.) This tutorial is an attempt to clarify for myself (and you guys) how this function works. Let’s dive in.</p><p><strong>.reduce</strong></p><p>I think the name of this function is slightly misleading. EJS mentions that the function is also sometimes referred to as “fold” and I think that’s a better name for it, because it really helps to visualize this function as folding an array back on itself, one index at a time. Sort of like <a href="https://www.youtube.com/watch?v=SGPO0dmPvrs">flaking a sail</a>.</p><p>As you flake (or fold, or layer, or whatever) each index back onto the previous index, you perform some task on each index, while keeping track of the accumulated result eventually returning a single result — hence “reduce”.</p><p>Here’s what the notation looks like in JavaScript:</p><p>[code language=”javascript”]<br>array.reduce(function (a, b){<br>do something to b here, and keep track of what’s happening with a<br>}<br>[/code]<br>Let’s take a look under the hood at a very basic version of this function:<br>[code language=”javascript”]<br>function reduce(array, combiningFunction, accumulatedResult){</p><p>forEach(array, function(item){<br>accumulatedResult = combiningFunction(accumulatedResult, item);<br>});<br>return accumulatedResult;<br>}<br>[/code]<br>We are passing accumulatedResult as an argument to combiningFunction. This means we start with whatever the value of accumulatedResult is, and then every time we iterate over a new index, we perform some combiningFunction that combines the value of that new index with our accumulated result. Keep in mind — this is JUST the function that folds up the array. We still have to write the “combiningFunction” part of this — which will tell us what operation to perform on the two indexes. Let’s do that now:<br>[code language=”javascript”]<br>function sum(a,b){<br>return a + b;<br>}<br>[/code]<br>This is just one example of what we might want to do with those indexes. Here, I am adding them together, to get the sum of all the numbers in the array. Note that the combining function has to take TWO parameters, because we are operating on two indexes at a time (unlike .map or .filter, where we are dealing with one element at a time.) Here’s another common thing we might want to do with an array:<br>[code language=”javascript”]<br>function findBigger(a,b){<br>if (a &amp;gt; b){<br>return a;<br>}<br>else {return b;}<br>}<br>[/code]<br>Here, we are comparing the two folded indexes, and returning the bigger of the two. Our reduce function will run this along the entire array, eventually returning the biggest element.</p><p>One nifty thing about the built-in JavaScript version of this function is that you don’t have to indicate a starting value. If you don’t JavaScript will automatically use array[0] as the accumulatedResult (i.e. beginning), and array[1] as the first index to be tallied.</p><p>Let’s put all of this together:</p><p>[code language=”javascript”]<br>//in this example, I am leaving out the starting value<br>//-in JavaScript, reduce is optimized to handle this<br>//it will take use array[0] as the starting point and array[1]<br>//as the first item to be reduced.<br>//The version I wrote above is NOT optimized to do this <br>function reduce(array, combiningFunction)<br>var currentResult = 0; //this is our initial value<br>var i = 0; //this is the counter for our for loop<br>for(i ; i &amp;lt; array.length ; i++){<br>currentResult = combiningFunction(currentResult, array[i]);<br>}<br>return currentResult;</p><p>//define our combiningFunction — let’s sum this array<br>function sum(a,b){<br>return a + b;<br>}<br>//now, let’s call our reduce function, passing the combiningFunction and an array as arguments:<br>reduce([1,2,3,4,5], sum);<br>//15<br>[/code]<br>Our reduce function ran our sum function on every two indexes, adding them together, returning our final result 1 + 2 + 3 + 4 + 5 = 15. Neat!</p><p>But wait…there’s more!</p><p>Adding up all the numbers in an array is cool, but reduce can do WAY more than that. You can pass pretty much anything as an accumulatedResult — an array, an object, a Boolean, etc. and reduce will reduce the array down to that one thing. What does that mean? Let’s take a look:</p><p>[code language=”javascript”]<br>//let’s say we want to check all the values of an array<br>//to see if they are all truthy. <br>//We can use reduce to do this.<br>var array = [true, 1, {}] //these are all truthy values<br>array.reduce( function(status, item) {<br>return status &amp;amp;&amp;amp; Boolean(item);<br>}, true);<br>[/code]</p><p>Whaaaaat? WTF is that?</p><p>Let’s break it down.</p><p>First, let’s look at the arguments of our reduce function:<br>our first argument is an anonymous function — this is our combinerFunction. (We don’t need to pass array as an argument within the parentheses because we are calling reduce <em>on</em> array with a dot.)<br>our second argument is waaaaay down there at the bottom, outside the last curly brace — see it? It’s that little word ‘true.’ This is our accumulatedResult. It will be passed to the combinerFunction as the starting value (status), and it will be returned when reduce finishes iterating.</p><p>The trick is, along the way, that accumulated value will be altered by the anonymous function. In this case, we are calling a function that only returns when both conditions on either side of the ‘&amp;&amp;’ operator are true (if either expression is false, &amp;&amp; will return false.) The first condition is our status, which will start as true and then be updated on each iteration based on the result of the previous iteration.</p><p>So, when all is said and done, reduce will return either false or true, depending</p><p>Implementing the built-in JavaScript version of this is, obviously, much easier. Because you will usually store the array in a variable and call the reduce function using dot notation, you only have to define the combining function (making sure to pass it two parameters):</p><p>[code language=”javascript”]<br>var array = [1,2,3,4,5];<br>array.reduce(function (a,b){<br>return a + b;<br>}<br>//15<br>[/code]</p><p>or:</p><p>[code language=”javascript”]<br>var array = [1,2,3,4,5];<br>array.reduce(function (a,b){<br>if (a &amp;gt; b){<br>return a;<br>}<br>else { return b; }<br>}<br>// 5<br>[/code]</p><p>Man! My brain has been reduced to a puddle of Jell-o after all that! *drumfill*</p><p>Time to take a break, and then go practice what I’ve learned at <a href="http://reactivex.io/learnrx/">http://reactivex.io/learnrx/</a> — seriously, if you haven’t been to this site yet, get on it!</p><p>That’s all for today. Thanks, and happy whatever-you-do!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2aa8cb483c4d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/reduce-2aa8cb483c4d">.reduce</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Recipe: Keto Butter]]></title>
            <link>https://medium.com/up-she-rises/recipe-keto-butter-da525098f73a?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/da525098f73a</guid>
            <category><![CDATA[fit-girls]]></category>
            <category><![CDATA[chia-seeds]]></category>
            <category><![CDATA[girls-who-lift]]></category>
            <category><![CDATA[fitness]]></category>
            <category><![CDATA[fuel-one]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Sun, 19 Jun 2016 04:29:50 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:20.813Z</atom:updated>
            <content:encoded><![CDATA[<p>Well, I’m two-and-a-half weeks into keto now, and it’s been up and down. Saw a lot of changes very quickly, but things seem to have stalled in the past few days (probably due to my accidental night of drunkenness on Wednesday. I don’t drink anymore, so now after one glass of wine I’m pretty much like “BRINGETH THE OAK CASKS AND POUR THEM UNTO MY MOUTH.”)</p><p>Anyways.</p><p>I came up with this nifty little peanut-butter recipe and figured I’d share it. (Backstory: my boyfriend bought me a peanut butter maker for Christmas and for a while there it was like Breaking Bad levels of peanut butter in my life. I’m happy to say I’ve regained control since then and now only make it every once in a while.)</p><p>In this recipe I mixed walnuts and peanuts to cut down on carbs (peanuts are one of the higher carb nuts) and added a bit of extra protein. Here’s what you need:</p><p><em>Ingredients</em></p><p>1 cup dry roasted (not salted) peanuts</p><p>1 cup plain walnuts</p><p>1 cup peanut oil (you could use whatever oil you want, but…we’re making peanut butter)</p><p>1 tbsp coconut oil (for funsies)</p><p>2 tbsp chia seeds (if you’re nasty)</p><p>1 scoop Fuel One Whey Build (you could use whatever protein powder you like. I used vanilla because it’s what I had, but I’m sure chocolate, caramel or even peanut butter flavor would be great. You could also just leave out the protein powder if that’s not your thing.)</p><p><em>Process</em></p><p>Put it in a blender. Press button.</p><p>I would test it after you blend it and then salt it to taste. Using unsalted nuts means you can control the amount of sodium you’re adding. Don’t do what I did the first time and indiscriminately dump salt into the blender before you blend it. You’re smarter than that.</p><p>Et, voila!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=da525098f73a" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/recipe-keto-butter-da525098f73a">Recipe: Keto Butter</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[.filter]]></title>
            <link>https://medium.com/up-she-rises/filter-109ec9e4674d?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/109ec9e4674d</guid>
            <category><![CDATA[beginning-code]]></category>
            <category><![CDATA[bay-area]]></category>
            <category><![CDATA[code]]></category>
            <category><![CDATA[autodidactism]]></category>
            <category><![CDATA[career-change]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Tue, 14 Jun 2016 01:16:57 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:23.395Z</atom:updated>
            <content:encoded><![CDATA[<p>Onward and upward in our “breaking down built-in JS methods” series. If you haven’t read my previous post, where I explain what exactly it is that I’m doing here, and also break down the .reverse method, go ahead and <a href="https://upsherises.wordpress.com/2016/06/05/reverse/">check it out now</a>. I’ll wait.</p><p>Ready?</p><p>Cool, let’s press on.</p><p><strong>.filter</strong></p><p>&lt;</p><p>p class=”p1&quot;&gt;Today I want to look at the .filter method of JavaScript. Before I got into Eloquent Javascript, I knew this callback function as something that could take an array and return a new array with certain elements removed, according to whatever parameters I specified. It looks something like this:<br>[code language=”javascript”]<br>array.filter(function (element){<br>return whichever elements match the conditions I put here;<br>});<br>[/code]<br>Let’s take a closer look at the “filter” part of this. What’s actually happening when you call this function? It’s actually very simple:<br>[code language=”javascript”]<br>function filter(array, screen){<br>&lt;/span&gt;var filtered = []<br>for (var i = 0 ; i &lt; array.length ; i ++){<br>if (screen(array[i])){<br>filtered.push(array[i]);<br>}<br>}<br>return filtered;<br>}<br>[/code]<br>We pass two arguments to the filter function — an array to be changed, and a screen (or test) that will determine which elements should be pushed into a new array. We define the new array variable inside the function (filtered), and then use a for loop to use the screen argument on each element in the array, pushing the ones that pass into filtered, and finally returning the filtered array. Here’s where it gets a bit tricky: as you can see, we call our screen argument as a function in our if statement. But…what is that function exactly?</p><p>Well, in the example above, that screen function doesn’t actually exist. It doesn’t exist because we haven’t written it yet. .filter is a higher-order function, meaning it takes another function as a parameter and then calls that function at some point during its execution. In this case, all our filter function is actually doing is looping over array elements. The function that will actually be doing the filtering is the function we pass as the screen argument — once we write it.</p><p>Think of it this way: you’re really good at planning dinner parties, but you really suck at cooking. Maybe your boyfriend is the one who does the cooking (and maybe I’m giving away too much away about myself right now…) You decide to throw a dinner party, so you set everything up — invite the guests, set the table, assign the seats so that Rachel doesn’t have to sit next to Ross (because they’re ON A BREAK!) Then, on the night of the party, you call on your boyfriend to do the actual cooking (he likes it don’t worry.) In this example, you are like the filter function: facilitating the process of serving food to each of your guests, while your boyfriend is the screen argument: cooking the food you will serve. Together you make a great team! OMG you’re gonna be together foreverrrrrrrrrrr….!</p><p>&lt;</p><p>p class=”p1&quot;&gt;So at this point, we need to define our screen. Let’s say we have an array of numbers, and we want to filter for the number 13. We need to write a function that tests each element to see if it is the number 13:<br>[code language=”javascript”]<br>function test(element){<br>return element == 13;<br>}<br>[/code]<br>Easy enough. Now we just have to get our test function into our filter function. We can do that like so:<br>[code language=”javascript”]<br>console.log(filter([the array we want to test], test));<br>[/code]<br>Can you see how it works? We use console.log to call the filter function, and we pass it an array to be tested, and a function to do the testing. We’ve set up our filter function ahead of time with two placeholder parameters (array, screen), and now we are calling that function with the real parameters ([the array we want to test], test). The cool thing is, we can now define a bunch of different test functions to filter for different things, and simply pass them as arguments to the same filter function.</p><p>&lt;</p><p>p class=”p1&quot;&gt;First, let’s create an array to filter:<br>[code language=”javascript”]<br>var array = [1, 13, 275, 42, 3, 101]<br>function testAgain(element){<br>return element &gt; 100;<br>}<br>function testYetAgain(element){<br>return element &lt; 4;<br>}<br>console.log(filter(array, testAgain);<br>&lt;em style=”line-height: 1.7;”&gt; //will output an array with only elements greater than 100<br>&lt;/em&gt;console.log(filter(array, testYetAgain);<br>&lt;em&gt; //will output an array with only elements less than 4<br>&lt;/em&gt;[/code]<br>We can also define the test function as we call the filter function, like so:<br>[code language=”javascript”]<br>console.log(filter(array, function(element){<br>return element == 13;<br>});<br>[/code]<br>And, finally, we can call filter as a built-in method on an array:<br>[code language=”javascript”]<br>array.filter(function(element){<br>return element === 13;<br>});<br>[/code]<br>Man! That was a lot of filtering. I think I’m ready to stop filtering things for a while and just accept the world with open arms. I hope this was helpful to any of you struggling with higher-order functions (as I have been for the past week…)</p><p>Until next time,</p><p>Thanks! And happy whatever-you-do.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=109ec9e4674d" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/filter-109ec9e4674d">.filter</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Keto: Week One]]></title>
            <link>https://medium.com/up-she-rises/keto-week-one-34041dca681e?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/34041dca681e</guid>
            <category><![CDATA[week-one]]></category>
            <category><![CDATA[fit-girls]]></category>
            <category><![CDATA[ketogenic-diet]]></category>
            <category><![CDATA[keto]]></category>
            <category><![CDATA[fitness]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Wed, 08 Jun 2016 19:17:45 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:28.429Z</atom:updated>
            <content:encoded><![CDATA[<p>One week down!</p><p>So far, so good. I’ve stuck to my plan really well (although I did go easy on working out last week. Back at it hard this week after building a squat rack with my boyfriend and his dad!)</p><p>[caption id=”attachment_260&quot; align=”alignnone” width=”1770&quot;]</p><figure><img alt="IMG_0066" src="https://cdn-images-1.medium.com/max/1024/0*TIJaEYgcIFTUSDLW.jpg" /></figure><p><em>Aren’t they the cutest?</em>[/caption]</p><p>So far, keto’s been about what I expected. First day was fine, but by the end of day two I was getting a low-grade headache and feeling pretty tired. Studying JavaScript was basically impossible. You might as well have asked me to build a Large Hadron Collider. By the end of day three I was WIPED. By day four, things had just about evened out, and I’ve been feeling pretty normal since then. No “hallelujah, I see the light” clarity yet, but I guess we’ll see. I do feel like my mood has vastly improved over last week — last week I binged on carbs because I knew it was my last chance to do so, and ended up spiraling into a pretty depressed state by Monday. I’m a strong believer that diet drastically affects mental health, and part of my reason for taking on the keto diet is because I’ve read it can <a href="http://www.neurorexia.com/2014/02/06/quieting-the-bipolar-mind-can-a-ketogenic-diet-stabilize-mood/">help with mood stabilization</a>. My period started yesterday, and usually the last five days of my cycle would be what I call my “the world is a ghetto” phase. However, I’m actually feeling pretty good so far (fingers crossed.)</p><p>So far I’ve lost 4 lbs, according to my weigh-in this morning. I assume this is water weight. Again, my period just started, and I definitely don’t look or feel as bloated and whale-like as I usually do at this time of the month, so maybe that’s a sign things are working? A friend of mine who is also doing keto lost 14 lbs (!!) his first week, however, he’s a lot bigger than I am. If I lost 14 lbs in a week, people would start trying to buy meth from me. As with any weight-loss program, bigger people with more to lose will lose it a lot more quickly at first.</p><p>I plan on buying some <a href="http://www.walgreens.com/store/c/ketostix-reagent-strips-for-urinalysis/ID=prod19769-product?AID=11020894&amp;PID=3966477&amp;SID=54d91dc41c&amp;temp_skip_roadblock=true&amp;CID=3015400&amp;ext=3966477">Ketostix</a> today just to check whether I truly am in ketosis or not. I have been getting some <a href="https://www.reddit.com/r/keto/comments/1j1tn0/i_smell_so_bad/">keto breath</a>, however, I also have a horrible feeling I may have mucked everything up on Saturday by eating waayyyyy too many cashews at the movies…</p><p>In other news, Saturday was my cheat day, and I discovered that <a href="http://nutritiondata.self.com/facts/snacks/5362/2">pork rinds</a> are a great keto-friendly alternative to movie theatre popcorn, a bunless little bacon cheeseburger from 5 Guys makes a great cheat meal, and that you can <a href="http://www.foodnetwork.com/recipes/katie-lee/cauliflower-pizza-crust.html">make a pizza with cauliflower</a>! My boyfriend was pretty stoked about that.</p><p>Onward and upward!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=34041dca681e" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/keto-week-one-34041dca681e">Keto: Week One</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[#ImWithHer]]></title>
            <link>https://medium.com/up-she-rises/imwithher-e5fd01ed3a41?source=rss----ef0b9e1fe91d---4</link>
            <guid isPermaLink="false">https://medium.com/p/e5fd01ed3a41</guid>
            <category><![CDATA[2016]]></category>
            <category><![CDATA[hilary]]></category>
            <category><![CDATA[bernie]]></category>
            <category><![CDATA[cdn]]></category>
            <category><![CDATA[elections]]></category>
            <dc:creator><![CDATA[Lizzie Shipton]]></dc:creator>
            <pubDate>Wed, 08 Jun 2016 16:24:04 GMT</pubDate>
            <atom:updated>2016-07-26T02:17:31.583Z</atom:updated>
            <content:encoded><![CDATA[<p>I woke up yesterday to a banner alert from the BBC news that Hilary Clinton had won the democratic primary.</p><p>The thing is, I live in California, and we hadn’t actually voted in that primary yet.</p><p>I was….miffed.</p><p>The pragmatist in me has been with Hilary since day one. I honestly believe she’s a strong candidate, and that the problems people have with her stem from the fact that she has been in the system for a long time, making real, tough decisions. Playing by the rules doesn’t make her “evil.” It means she’s intelligent and experienced enough to understand how important that is. Is the system right? Maybe not. But it’s there.</p><p>The optimist in me has been with Bernie since about two months ago, when I got over my “I hate all my stupid peers buying into revolutionary rhetoric that has little substance to back it up” phase. We need Bernie. We need to seriously think about the issues his campaign has raised. We need to continue thinking about them long after this election ends. My fear is that we won’t. My fear is that many of his supporters will have forgotten their fervor by this time next year. Maybe I’m wrong. I hope so.</p><p>Yesterday, I voted for Bernie. I voted for Bernie because I couldn’t make up my damn mind, and I knew that this way I would get to vote for both candidates. What does that say about our political system? I don’t know.</p><p>What I do know is that now, we all need to get our shit together and vote for Hilary. She’s a strong choice and a good person (I truly believe this) and best of all, SHE’S NOT DONALD FUCKING TRUMP. If you are a Bernie supporter and you are reading this, and you plan on abstaining, or worse, voting Trump (WHY???) I just want to let you know that you are a seriously — dangerously — deluded, selfish and misguided person. Please. Just. Don’t. Do. It.</p><p>You don’t always get to do what you want. Sometimes, you have to do what’s right.</p><p>I’m upset that this momentous occasion — electing the first female president — instead of the triumphant, joyful celebration that it should be (that it was when we elected Obama), is becoming a miserable shitstorm. People are being dragged, kicking and screaming, into the polls to vote for this woman. Everyone already hates her. And, as a woman and a feminist, it’s honestly…disheartening. I’m not trying to say people should vote for her because she’s a woman — that is the opposite of feminism — and I totally understand why people aren’t. I’m not trying to change anything, and I don’t think anything should change. I’m just saying…it sucks. It’s unfortunate and I wish it didn’t have to be this way.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e5fd01ed3a41" width="1" height="1" alt=""><hr><p><a href="https://medium.com/up-she-rises/imwithher-e5fd01ed3a41">#ImWithHer</a> was originally published in <a href="https://medium.com/up-she-rises">Up She Rises</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>