Never Compromise Who You Are

Prelude

What do you mean, Andrew?

*full disclosure, I wrote most of this post somewhat inebriated and angry at the "system". I've since redacted some of the more incomprehensible rage-speak, so hopefully this still makes sense-ish.

I mean don't fucking compromise yourself. There's a few things that we can control in this ridiculous life of ours, and one of them is the kind of person we are. At different times in our lives, many of us (myself included) feel like we're not entirely sure that our actions are in line with who we want to be as a person. We make conscious decisions that end up leaving us feeling as though we should have acted differently, despite maybe knowing that 'Should' is harmful and avoidable.

It's taken me a really long time to be comfortable with who I am as a person. And I theorize that the reason we struggle with such a conceptualization of "self" is because it is something relatively fluid. We get stuck in a mental rut of thinking that we are the way we are, and that there's no way to change who we are fundamentally, despite that being the opposite of reality.

This post is going to be half a small diatribe against the idea that we are fixed-personality beings and why we should learn to be comfortable exerting effort to cultivate the personality we desire, and half a summary of the learnings I've experienced over the last two weeks at General Assembly's Web Development Immersive course.

On Your Own

Fighting against the flow

The purpose of this section is to explain how hard it can be to stay true to yourself in a world that's constantly telling you to be different and change who you are. I know I suffer a lot from this, particularly in social environments where I feel I must be accepted, and I end up agreeing with sentiments that otherwise I'd be embarrassed to admit to others.

One of the most inspiring moments in the last year was when a close friend of mine and I were having a discussion about how we felt about a particular band that we disagreed about. Halfway through changing his opinion to align with mine, he backed up and said "you know what, no, I'm going to say I like it, I really like them."

Wait. A. Goddamn. Minute.

It was that easy? Because right after he said that I had somewhat of a quarter-life crisis in that I could have just said I liked something different the entire time.

So I encourage you to look at those moments where you feel you are agreeing with someone simply out of desire to align with each other's interests, and really check in with yourself. You can still be on great terms with someone if you don't agree with them, and in some cases it's even better for the relationship. It allows you freedom to hold opinions, and more often than not, I find that I end up respecting someone who is willing to not budge on their opinion when I go after it, and a good debate wins out over a conversion any day. I don't feel this messes with my core values at all, and I get to hear the other side, instead of further polarizing myself into a box of my beliefs where I believe that everyone shares them.

So at the beginning of my blog I worked really hard to come up with some initial values. Tl;dr: I care about Self-Improvement, Family, Balance, and Integrity. These are the foundational columns that I use to help me make decisions in life more quickly and with more confidence. It helps me get rid of the "what-if"s and the "shoulda"s. I work really hard to update and check in with these periodically to make sure that I'm acting in tune with them, and I'll often on how I could have reacted to situations differently with one of my core values as the base tenet.

So with that, I just want to say that you can work on creating the kind of personality you want. You may fake it for a while, but try to use that as a tool for convincing your mind to believe that these changes are in fact happening. To summarize:

  • Think about your core values
  • Don't be shitty and lie a lot
  • Try not to compromise what you believe in, it'll deteriorate your enjoyment of the one life we have to live (#YOLO).

Node & Project 3

Excitement Builds

So I've got a really awesome team I'm working with right now, and we're working to build a mock-e-commerce site called Nozama. I've learned a shit-ton over the last few weeks, and the majority of that learning has come from breaking things and figuring out how to translate knowledge from my Rails App building strategy into the new stack's building strategy.

Our stack is currently using the following techs:

  • Database: MongoDB: Cute NoSQL database, our first time using one of these. I really like the flexibility, and have heard it's good for doing lots of scaling. I'm enjoying it thoroughly, but would love to get a better grasp on how to create some of the interactions like within a relational database.
  • Middleware: Mongoose (to create and manage our models and schemas) and Express to use as our routing for http requests and creating a RESTful API. These have been a blast to learn, and there's a lot of interesting stuff going on in middleware. I've particularly enjoyed learning how to build my own routes basically from scratch, and how to really modularize our app and routes.
  • Front-End: This is still going to be heavily JavaScript (I'm really loving it still, wondering when the honeymoon phase is supposed to die out). One of the really cool things we added, however, was the use of views and Jade templating for our HTML & CSS. I also really like the idea of using SASS and I can't wait to start diving into some more front-end work, since I know that's one of my weakest areas.

So this project is supposed to have a working API, have users be able to make purchases, view their orders, etc., and our team has a week to build it. That means that this weekend is going to be crazy fun, and feel a little bit like the hackathons I've attended thus far.

Silly Lessons Learned:

I figured I'd give you a little insight into silly things I've done, or just interesting problems I've had during the last little bit.

  1. This week I ran into a weird scoping issue where I tried to create some variables to reference within a jQuery listener (.on('click')), but without referencing the aforementioned variables in my .done section of an Ajax request, I wasn't able to access any of the temporary variables. I was told by an instructor that this seems to be a way that JavaScript tries to save memory, and doesn't act like a normal function's scoping rules. Very confusing, but good to know going forward.

  2. Importing a file into your main app's directory means that anything that's run that includes that file will be run at the main app's directory. E.g. I had a module imoprted for routing that was in the app_name/routes folder and when I invoked a filesystem readFile command with a ../ in the argument, it yelled at meand said it couldn't find the module. I of course ended up yelling back and trying to explain to it that it needed to go up one level and then back down into a different folder, but it wasn't having any of my shit. Turns out it was right.

Final Words

So thanks again for tuning in this week. I think I might actually start a podcast with beginner stuff. I know there's quite a dearth of information these days, but with so many formats of consumption, I'm sure someone might find it useful to hear the kinds of problem that an aspiring junior deveoloper can encounter. Definitely hit me up on twitter if you feel like this would be something you'd be interested in, and even better, if you'd like to be a guest or something.

Of course, I'm always open to hearing what people might want to learn about. The next post will include a lot about the job search and other trials and tribulations that go along with pruning through your GitHub repositories to make sure everything's beautiful as well as the resources you can utilize to get as many offers as possible, or at least the strategies I've been employing.

Until Next Time,
-CL