What is Reiki?

This past week I completed my Reiki Level 1 course at The Reiki School in Philadelphia. For the past 12 weeks I made heartfelt connections with my classmates, I have developed more of a loving relationship with myself, and now have another self-care tool in my wellness tool-belt. However, Reiki is relatively new and is not as well known as other self-care practices such as yoga or meditation. So, what exactly is reiki?

A quick google search could give you the answer, but I though I would offer my own definition, what reiki means to me. For me, reiki is a form of meditation. Reiki is administered through touch. I start by resting my hands on my head and then make my way down to my legs, stopping for a couple of minutes at each body part. I place extra intentions when I am at the parts of the body which correspond with chakras . Sometimes I’d have physical releases- headaches would subside during a self-reiki treatment, or emotional releases- thoughts arising that despite uncertainty and life transitions ahead of me “everything will be okay”, but most of the time reiki was a time for me to relax. Relaxing is revolutionary in our day of age. When there’s always a screen to consume or money to be made, doing nothing can be very challenging. I admit that some mornings I didn’t want to practice reiki, I thought, “I should get my day started instead,” but by prioritizing reiki I prioritized being instead of doing.

In addition to developing a reiki self practice, I also got to practice reiki on others. Towards the end of our training we had clinics, in which we practiced on clients for 60 minutes. I won’t go into too much detail for the sake of privacy of the clients I saw, but all of the clients I saw were visibly more relaxed after the reiki session, and they told me so to boot! At the very least the clients were able to be in a space where nothing was expected from them, where they could be in a space of non-doing.

I am looking forward to doing reiki level training 2 so I am qualified to have regular clients (after completing reiki level 1 it’s recommended to only practice on friends and family) and volunteer at hospitals that offer reiki services.

Comment below if you have any questions are would like to share what reiki means to you!

What’s an API?

Before attending Flatiron’s online coding bootcamp, I worked as an Operations Analyst for a clean tech company. Although writing SQL queries were the closest I got to actual coding, I was constantly surrounded by tech jargon. I remember hearing lots about API’s. They seemed fragile, complex, hard to define. However, after adding Javascript onto an existing rails project, and enabling internal API use, I have a clearer understanding of what an API is and its use.

What’s an API?

An API is an end point to request data. The data is typically in JSON (Javascript Object Notation) format, reading like a dictionary with its key value pairs, making it very intuitive to read. Data is processed from the endpoint through the browser and can be viewed in the console before it is added to the desired destination, or page. Viewing the data in the console is very helpful because you can play around with the data with Javascript in the browser’s console— testing code to access the points of data that are important to your application.

Internal vs External API’s:

I always thought as API’s as exclusively external. My goto example of an external API is Google Maps. For example, my local pizza shop has Google Maps embedded into the user interface of their website. Luigi’s connects to Google Map’s API so pizza lovers can see the restaurant location when they go onto the site.

However, in the context of my project, I wasn’t in need of external API’s, I wanted to render data that was available within my application. The theme of the project was to render data via AJAX. For example, after a user click ‘View Class Plan’ the class plan will be rendered from the API endpoint, and there will not be a page refresh.

The API endpoint looked like this:

I then wrote the following code in order to render the data from: http://localhost:3000/yoga_classes/6/yoga_class_data and append it to the yoga_classes index page: http://localhost:3000/yoga_classes

$(function() {
    $(".js-more").on('click', function(){
        let id = $(this).data("id");
        $.getJSON("/yoga_classes/" + id + "/yoga_class_data", function(data) {
        $("#body-" + id).append("<p>" + data["class_plan"] + "</p><p> Created by: " + data["user"]["email"] + "</p>")
      });
    });
  });

Breaking down the code:

  • Line 2: is saying for class “js-more”, which was assigned to the “View Class Plan” button, when the user clicks the button the following should happen…
  • Line 3: assigns a variable id to the yoga_class id so that in line 4 the yoga_class_data URL can be dynamic.
  • Line 4: is where the magic happens. The JQuery method $.getJSON takes two arguments the, the dynamic /yoga_class_data url and a function…
  • Line 5: that function takes in data (which represents JSON data of a yoga_class) as an argument and appends (adds) the class plan and user to the class ID body-[id], this case body-6, which is located underneath the yoga class title on the page http://localhost:3000/yoga_classes.

Note: I also used Active Model Serializers gem which grants the backend ability to serialize data with the necessary attributes and relationships. .

When Learning and Applying Something New, Pace Yourself:

At the end of each module for Flatiron’s Online Software Engineering Immersion course we are required to build a project which culminates everything we learned the 3 works prior. We cover so much material in 3 weeks that when project time comes around I don’t feel comfortable with the material initially. Each project week I look over the scope of the project and immediately the requirements seem daunting. The Javascript, APIs, and AJAX section was no different. Instead of remaining in a state of resistance I decided to breakdown the project. We had 5 requirements, so my goal was to complete a requirement per day, leaving two extra days for pesty bug fixes or more time in case a certain spec took longer to tackle. This proved to be a great method. I managed to finish my project in 4 days. If I was able to meet my requirement for the day, I continued working. I find that learning happens best when spread out over multiple sessions, so working on a requirement (each requirement tackles a slightls different concept) over 2 separate days solidified my learnings.

Learning a second language was tough, but I learned why it’s necessary. AJAX requests make it quicker for a user to interact with my app. It gives the user the ability to request more data without having to load a new page, which is the modern experience of the web. I’m looking forward to how the concepts of AJAX apply to Redux and React, the last module for the coding bootcamp!

P.S. here’s a walkthrough of the app described above!

Blending Wellness & Tech

When I socialized my decision to attend a coding bootcamp, colleagues, friends and family alike asked me, “So, what’s the similarity between yoga and tech?” To the external world these were two evident interests of mine, however, personally, I couldn’t articulate what those similarities were. So I began asking myself, what are the similarities between wellness and tech? Over the past few months as I have been maintaining a coding, yoga, meditation and reiki practice, I have come to find some common threads amongst these seemingly different topics.

Let Curiosity Lead the Way

Often times I find myself following my curiosity, not trying to force anything out of a given interest. For example, while I was going through my yoga teacher training, I didn’t put the pressure on myself to become a yoga teacher. Instead, my yoga teacher training served as a catalyst of exploration into other wellness practices which were exposed to me during the training, such as mediation, reiki, and journaling. If I had been fixated on becoming a yoga teacher, I may have been all consumed and not given space to deeply explore related and complementary interests.

Similarly, I often get asked what my plans are after Flatiron’s coding bootcamp.I am keeping an open mind. Right now, I am fixated on learning the art of code, building projects, and having fun with being a beginner. I am keeping myself open as to what can come along the way.

Discipline

Every morning before I leave my apartment, I meditate for 15 minutes. This has been a daily routine of mine for a year and a half, and honestly, I meet resistance most days. “I’m too tired”, “My mind is too scattered”, or “I have to get going, I don’t have time”. I feed myself excuses, yet I still sit in order to show up for myself. Daily practice is so important because the benefits of meditation cumulate after many sessions.

Similarly, with coding, on days I don’t feel sharp it’s easy to try and procrastinate and think, “Oh, I’ll do it tomorrow when I feel better.” But the truth is, we can’t control the ebbs and flows of how we feel, we have to work towards our goals even when we aren’t feeling our best. One day I was lamenting to my friend Mary about how I didn’t complete all of the coding lessons I had set out to do that day. In response, she quoted Morgan Harper Nichols, “If today was one of those days, that’s okay. Whether you accomplished everything or not, you are well on your way.” I go back to his quote when I come up short on my learning goals, or if I had a scattered meditation session, to remind myself that I did make progress.

They Depend on One Another

Why wellness needs tech…

For yoga, specifically, I’ve thought of several projects to build that would make my life as a yoga teacher easier. For example, a web application that has all of my yoga class plans which I can refer back to for inspiration. Because currently, all of my class plans are in various journals stacked in my closet which is very inefficient and takes me 15 minutes to find a specific class plan, if I’m lucky.

Why tech needs wellness…

In tech the term ‘burnout’ pops up a lot. I believe wellness practices offsets stress, and improves the overall quality of one’s life. My personal wellness practices ‘fills my cup’ and allows me to show up in the world to be my best self. In the context of Flatiron’s full-time bootcamp, I’ve had to prioritize my wellness practice in order to handle the load of the program.

In all, I don’t think I’ll ever have a concise answer to “What are the similarities between wellness and tech?” , because the answer will continue to evolve as I move through my coding and wellness journeys. I’m looking forward to asking myself this question in a few months or in a few years, to see how my answers have changed.

Let me know your thoughts on the overlap of wellness and tech, I would love to hear from you!

Yoga Warmup for Meditation

My morning meditation practice is my morning coffee. Yes I need to have my caffeine fix as well, but if I had to choose between the two meditation would have to win! I find that if I can start off the day in a calm and centered way, I can find trails and bits of the same relaxed state throughout the rest of my day. However, some days finding the discipline and will to sit still can be tough. In order to relax the body and prepare my mind for meditation, sometimes I do a mini yoga flow! Below is a 10 minute yoga flow and 10 minute meditation.

What is a Framework?

While I was learning Javascript on my own, I began exposing myself to all the resources I could. Using FreeCodeCamp as my guide, I browsed the internet for other supplemental resources to add context to what I was learning. Eventually, I began reading about Javascript frameworks “Learn Angular vs. Vue”, I couldn’t wrap my head around what a framework actually was. I was under the impression that frameworks would make learning how to code “easier”.

Fast forward 2.5 months into my coding bootcamp, and I am learning the ropes of Rails. So, now that I’ve learned and built a project using a framework, how would I define a framework to a total code newbie? Frameworks, and in this case Rails, didn’t make learning how to code any easier, but it did lay out a lot of groundwork so I could hit the ground running with building my web application. Frameworks use abstraction (high level code) in order to provide a foundation to build off of. For example, typing rails new unicorn creates a directory which provides a standard layout of how to organize the files within your application named unicorn. Also, Rails comes with generators in which you can create tables from the command line, instead of having to create a file in your text editor and write out the code in the file in order to create a table. Not to mention, the infamous scaffold generator, which creates CRUD functions for a model by typing out one line in the command line!

In short, you can think of a framework as a piece of software built because someone identified that there was similar code/ patterns that had to get built out each time a new application is built. In the context of Rails, David Heinemeier Hansson put in the legwork in order to make it more efficient for other developers to build an application. There’s even extensive and fantastic documentation to demonstrate how to use the framework https://guides.rubyonrails.org/.

I remember bringing this topic of “What is a framework?” up with one of my instructors. I first told him what my initial idea of a framework was— training wheels, since frameworks do a lot of the work for you. However, this setup is not trivial. It’s important to understand Ruby well before jumping into Rails, so you are able to understand and have context with the magic (really abstraction) of Rails. My instructor opposed my analogy, and instead, he said think of using frameworks as standing on the shoulders of giants. Well said.

Back to the Drawing (White) Board

The project I built using Ruby on Rails is a private group class tracker for a yoga studio.

Sounds like a mouthful, I know, but I noticed that the yoga studio I work for has a niche problem. Local organizations such as universities, non-profits, corporations etc. request for a yoga teacher to come onsite to teach a class. Most of the time, these requests are inconsistent. For example, an organization will want a class for their “Wellness Week” which only happens a couple of times per year. Since requests are inconsistent, the same client will have a different teacher each time. The teacher assigned for this offsite class has no idea what kind of class to plan. What kind of practice do the participants want? What is the space like? It would be nice if they could take a look at the class plan from the previous class, that was perhaps taught by a different teacher! That’s where my web application comes into play!

My enthusiasm for my idea fueled the creation of the project, however this was the toughest project yet. Here’s what I learned:

The importance of having a clear vision for your project before you get started.

I had to restart my project twice! I had to restart my project because both times my domain was not clearly defined from the get-go, which made building complicated (lesson learned!). However, each iteration of my project led to my final product, which I’m very proud of. While I shared with my friends and family about my tribulations, I compared my process to something they were familiar with, writing a thesis paper.

The first step is to clearly construct a thesis statement, in coding world this would be constructing our domain models and defining relationships. The thesis statement steers the ship as you’re writing the paper. Similarly, your models and relationships can create the backbone of your Ruby on Rails application. If you write a thesis paper without properly researching a topic, as you’re writing, you may have a change of heart with your beloved thesis statement. Now that you’re reading additional sources and are really diving into the topic, perhaps you want to change your stance. So you go back to the drawing board and rewrite a thesis statement that better represents your positioning now that you have new information. You have to start your paper all over again. Similarly, as I began to bring my project to life, I realized there was a better way to represent my project— different from the models and relationships than what I had set up. Since I wanted to change the infrastructure of my project, I had to restart my project.

Knowing when to let go if a certain idea isn’t working out.

It’s tough to abandon a project after spending a lot of time on it. I spent 4 days on my first iteration, knowing most of the time that I wanted to restart it and take it in a different direction. I was so resistant to restarting, but once I took action and restarted, I felt a surge of momentum because I knew it was aligned with my vision. To make myself feel better about my situation, I thought about how artists record entire albums that never get released and fall to the wayside. Authors write novels that never get published. Although these pieces never make it to the public, I bet these creative pursuits influenced other pieces that eventually did reach a broader audience. Similarly, my failed projects influenced the success of the final version of my project.

Get to know the gems you’re using.

Since I restarted my project twice, I can now set up Devise and enable Omniauth using Facebook with confidence. This was my first time using both Devise and Facebook Omniauth. Typically when I use a gem for the first time I find a blog or video to guide me through step by step. The downside of this method is that I blindly follow step my step without internalizing or completely understanding what’s happening. For this project I was able to set up Devise and enable Facebook’s Omniauth three times, so now it’s solidified in my brain. It got me thinking, that for future projects when I’m using a new gem I should make sure I really know what the gem is doing, so when if I run into a bug I’m better equipped to resolve the issue.

Nested resource show page

A feature of the app I was excited to implement was to view the history of classes by client. This would help the user zoom in on which templates to research and take ideas from.

Each class would be represented by a link that would then take the user to a nested resource show page, which would have all the available information about the class.

The code behind this feature was fairly simple, yet important to break down.

<p>History of Classes:</p>
<% @client.yoga_classes.each do |yoga_class| %>
  <%= link_to yoga_class.title, client_yoga_class_path(@client, yoga_class)%>
<% end %>

In my client model I defined the relationship that a client has_many yoga_classes. This then gave me access to call on an instance of a client and a list of their associated yoga_class objects which are assorted in an array. Then, I called an iteration on each yoga_class to create a link for the specific yoga_class. With link_to, the first part of the link is what the name of the link is, and the second piece is the path the link takes. So, I named each link the title of the yoga_class. Then, I used the route helper (route helpers are a piece of magic given by Rails) client_yoga_class_path(@client, yoga_class) so that a specific class would be nested underneath the client. @client was the first argument of the path because the helper needs to know which client_id will have all of its associated yoga_classes listed. Then, the url needs to know which yoga_class to route to based on the yoga_class id attribute. This helper is constructing the following template of the url: /clients/:client_id/yoga_classes/:id. As you can see in the screenshot above, the yoga_class has a client_id of 5 and an id of 4.

Just getting started….

Building the private group class tracker application taught me A LOT. I have a lot of ideas about what kind of future implementations I want to build for the app- like duplicating a template, since there should be a template representing each time a teacher taught a yoga class. Also, I’m looking forward to learning JavaScript and React to enhance the UI of my application. This is just the beginning!

The Halfway Mark!

Last week marked the halfway point for completing Flatiron’s Online Software Engineering program. The program moves so quickly that it’s hard to stop myself and think, wow, I can build entire web applications when two and a half months ago I was learning the elementary basics of Ruby. The minimal coding experience I had coming into the program (I have taken some courses on HTML, CSS and began teaching myself Javascript) as well as previously working on the tech team of a startup gave me sufficient context as to what I was getting myself into. However, the program’s curriculum is so curated that what I’ve learned in the past 2.5 months probably would have taken me years to learn on my own. Since I’m at the halfway mark, I thought I would share the obstacles I faced and my method of overcoming them.

When to Stop Working

I love the flexibility of learning on my own terms. However, with this comes an undefined start and stop time. You can never be finished with learning how to code. This concept of limitless knowledge is what attracted me to the subject, but as a human being who has relationships, other responsibilities, and a desire for a hefty self-care practice, I had to draw a line with when to stop coding. I make sure to stop learning by 8 p.m. each night. I drew this line because I am unable to sleep well if I have screen time late into the night. I have found that when I cross this boundary, I wake up several times throughout the night and I don’t feel as well rested for the next day. I also set boundaries for when I start in the morning as well. I don’t start coding until 9 a.m. after I have my morning routine of activities that sustain my coding practice— like meditation, yoga, and journaling.

Getting into a Routine and Schedule

This is related to my learnings above, but it’s important to identify when and where you get your most work done. When I first started the program, I stuck with the 9-5 routine I was familiar with. This was problematic because I was rushing to get to my computer by 9 a.m. to begin learning for the day (note: a racy mindset is not good for learning…) and some lectures were getting scheduled post 5 p.m. I learned I had to be less rigid with my schedule. I learn best during the day, so I made sure to do schoolwork for 11 a.m.-4 p.m., and threw in learning time at other parts of the evening depending upon when the live lectures were or how I was feeling.

Also, I learned to be less rigid with where I decided to do my schoolwork. As part of the program, Flatiron gives you access to a WeWork space. I take full advantage, I spend 30 hours a week there. However, if I have an hour and a half lecture to watch or am feeling unwell, it doesn’t make sense to force myself to remain in an environment that isn’t supportive to my learning. Also, on weekends I got to coffeeshops to work as a change of environment and to be around different people.

Meeting with Others to Talk About Code

Flatrion gives you great resources to meet with others. 1:1’s with your cohort lead, pair programming sessions, and organized Study Groups. However, it’s up to you, as the student, to take advantage of these resources. I was on top of creating agendas for my cohort 1:1’s to best make use of the time and was meeting with my partner for pair programming. However, in the beginning of the program, I wasn’t attending Study Groups live. Since the Study Groups were recorded, I figured I could learn just as much at a time that was more convenient for me. But as I was watching the recorded versions I realized I wasn’t experiencing the ‘magic’ of a live lecture. The possibility of getting called on to answer a question, or having an opportunity to ask questions you have are components of what makes a Study Group truly special. This type of interaction helps cement concepts. I stopped perceiving Study Groups as optional and started fitting them into my daily schedule. To enhance my communication with code, I also began meeting with a classmate outside of who I was paired with for Pair Programming. Having additional practice with sharing what I was learning has been super helpful since this program is primarily self-driven.

I’m motivated to take on the second half of this rigorous program. I’d like to think that I’m a bit wiser about my plan of attack to finish up the program strong. Whenever I feel stuck and like I’m going nowhere (I feel this AT LEAST several times a week…) I watch this video by Flatiron’s CEO and founder Avi Flombaum:

I love this video because he doesn’t believe his bootcamp is an easy quick fix to learn how to code (wouldn’t that be nice if that actually existed??) but he does believe that continuous small steps will lead to progress and success.

Hip Opener Sequence

“The morning wind spreads its fresh smell. We must get up and take that in, that wind that lets us live. Breathe before it’s gone.

Sorrow prepares you for joy.

It violently sweeps everything out of your house, so that new joy can find space to enter. It shakes the yellow leaves from the bough of your heart, so that fresh, green leaves can grow in their place. It pulls up the rotten roots, so that new roots hidden beneath have room to grow. Whatever sorrow shakes from your heart, far better things will take their place.”

― Rumi

Ah, hip openers. They’re grounding, sweet, infinite but also uncomfortable and jarring. We come up against unexamined parts of ourselves. Often times in my classes I queue that we store unsaid words or unexpressed emotions in our hips. Where did I get this from? I truly believe that we hold memories and experiences in our bodies. Hip openers may bring up feelings of grief. The grief doesn’t have to be linked to its source, but after a yoga class or a personal practice if grief comes up move through it. Journal about it. Talk to a friend. Often times after the grief passes through, a raw and peaceful feeling may arrive, similar to the dessert of a good cry.

I made this video for my friend Alison, but wanted to share it with you all as well! Enjoy this sweet 30 minute hip opener sequence, perfect for decompressing after a long day.

My First Sinatra Application

I built my first web application! That other people can log into and use! Our project’s requirement was to build a web application using Sinatra as our Framework. I felt like a baby taking their first steps on their own. I was slow and wobbly, but with my earnest attitude I persisted.

My application is named My Book Collection. With My Book Collection you can view all of your books in one application. If you’re anything like me, you have books in different places. I have books in my living room, in my bedroom, and even at my friends’ houses. It can be tough to keep track of where all my books are, especially if I loaned them to a friend. You can view all of your books on a single page with My Book Collection and click on a book to review the book’s status (if it’s on loan, read, unread etc), as well as the book’s author and genre.

My Process:

Before I started coding, I wrote out user stories in my journal. How I expected the app to function, what I wanted the app to accomplish etc. This gave me a clear vision and limited the decision making I had to make while coding. Specifically, I only wanted users to interact with the app if they were logged in. Similarly, I knew I wanted users to have the capability to edit their own book collection.

Main Takeaways:

How to deploy an app on Heroku.

Heroku is a platform where users can deploy their web applications on the web so other people can use it. It took some time to successfully connect my GithHub account with Heroku. When I use a new platform I tend to take the process very slowly to ensure I’m not just mimicking steps but rather understand the process. I envision myself using Heroku for many projects in the future, so understanding how to upload a web application this time around is helped out my future self.

Taste of Ux/UI.

Although my main focus with this project was to understand the backend and how my objects interacted with each other, I had some moments of considering the user experience of my application which was new for me. When I am working on my labs, I’m not as focused on the Ux because my name isn’t tied to the project. However, My Book Collection is completely my own! For example, initially, I had a delete button too close to the edit button. I imagine users will want to edit their books often, it would be frustrating to delete a book when all you wanted to do was update its status! Therefore, I increased the white space between the edit and delete button.

ActiveRecord CRUD.

ActiveRecord comes with many helpful methods to call on objects in order to create, read, update, and destroy objects. This documentation here https://guides.rubyonrails.org/active_record_basics.html was a great reference. I ran the rubygem Tux so I could create and play around with objects in my terminal to test my application’s onjects to make sure they were interacting with one another correctly. Alternatively, I could have created seed data to have for my app, but I wanted to play around with ActiveRecord’s CRUD methods to get more comfortable with them since I was planning to include them in my code. The method that was the most fun to use was the .where method. Calling .where on an object is the SQL equivalent to saying:

Select * from table where column_name = 'condition'

This was helpful because I only wanted users only see their own books. I then added the .each method in order to iterate over each book so it could be listed separately on the user’s page.

<h1>Here are all of your books:</h1>
<%Book.where(user_id: current_user.id).each do |book|%> 
<ul>
  <li>Title: <a href="books/<%=book.id%>"><%=book.title%></a>
    <p>Author: <%=book.author%><br>
    Genre: <%=book.genre%></p>
  </li>
</ul>
<%end%>

Don’t be intimidated by errors.

The instructors at Flatiron try to reinforce the fact that most of the time code is going to be broken. For the most part, I’ve embraced this and this mentality helps when other things besides code aren’t working projects. For example, I ran into an error with Shotgun, which is a RubyGem that let’s you run your application on your local server and updates changes you make in your code in real time, so you don’t have to stop, code, save, and run the application.

The error caused my browser to look like this:

This was in my terminal:

Set SINATRA_ACTIVESUPPORT_WARNING=false in the environment to hide this warning.
objc[1464]: +[__NSPlaceholderDictionary initialize] may have been in progress in another thread when fork() was called.
objc[1464]: +[__NSPlaceholderDictionary initialize] may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.

Luckily, I googled my error and found that other people had the same issue and there was a Issue thread on Shotgun’s GitHub repository, link here: https://github.com/rtomayko/shotgun/issues/69. I ran through all of the suggested resolutions, and ultimately I had to update my Mac’s software to Mojave and then install macOs’ Xcode which added components to get Shotgun up and running. It probably took me 3 hours to resolve this issue, between the software updates, trying out different resolutions, and talking to my fellow cohorts to see if they had any ideas. However, this experience taught me that I’m not alone with the issues I experience. There are very generous people out there who have run into the same error and decided to write about it! Also, I was proud of myself for remaining level headed and persisting in order to solve my problem.

As always, I learned a TON about ActiveRecord and Sinatra by building my app. It reinforced my foundation which is important for our next section… Rails!

P.S. here’s a walkthrough of the app!

A Day in the Life of a Remote Full-Time Bootcamp Student and Part-time Yogi

While I was researching coding bootcamps to attend, finding an online program was not a requirement on my list. I was primarily looking for a program that had solid reviews, which is why I chose Flatiron. Living in Philly, I wasn’t willing to move to a city which had a Flatiron campus, so I opted for the online program. Doing the course online has its benefits, primarily in the realms of flexibility. As a part-time yoga teacher and yoga studio manager, I am able to balance all aspects of myself with the program’s flexibility, though it isn’t easy. This is what a typical day looks like!

6:15 a.m. – 9:15 a.m. I get up, meditate for 15 minutes, journal, and make myself a hearty breakfast. I do a couple of labs at my apartment before I head out for the day.

9:30 a.m. -11 a.m. I head to a yoga class. Yoga keeps my spirits high, body feeling good (unfortunately coding requires a lot of sitting), and mentally relaxed. I switch between a vinyasa practice (aerobic) and a yin practice (slower pace, poses are held for 3-5 minutes at a time).

11 a.m. – 11:30 a.m. I walk 30 minutes to the WeWork in downtown Philly. I get a WeWork pass as a student of Flatiron, and I take full advantage. With a kitten who is constantly walking on top of my keyboard or playing with my charger cords, it’s best for me to get out of the apartment.

11:30 a.m. – 4 p.m. I eat lunch as soon as I get to WeWork and simultaneously map out what I want to get accomplished for my learning session! I work through 45 minute sprints, and take a 10 -15 minute break. This is the time of day I get most of my work done, doing labs and catching up on recorded lectures. Also the time of day I drink lots and lots of WeWorks complementary tea and fruit water!

4 p.m. – 4:30 p.m. I walk home! An hour of walking a day may seem like a lot but it helps me clear my mind and transition from activity to activity. Plus, I love listening to podcasts! Lately I’ve been listening to CodeNewbie, Yogaland, Seek Treatment and Living Open!

4:30 p.m. – 5:00 p.m. I decompress, meditate again, eat dinner or relax before the 5 p.m. lecture we have on most days!

5:00 p.m. – 6:00 p.m. lecture

6:00 p.m. – 7:00 p.m. tie up loose ends for the day. Finish any labs I was working on, answer emails for my manager role.

7:00 p.m. – 9:00 p.m. relaxation before I fall asleep. I love to read, write, anything that doesn’t involve a screen.