JavaScript Changes Everything (Guest Article)

Heya everyone! Today’s post will be a guest article, written by entrepreneur and fellow JavaScript enthusiast, Nathan Jean.

JavaScript Changes Everything

I remember what it was like before I taught myself how to read, write and understand JavaScript. It was a time when I had reached a ceiling with my abilities. I was a freelance graphic and web designer for 2 years, and was struggling to leaving my awful factory job.  I lacked the experience to land bigger, better budgeted, and more exciting projects. 

Those times were hard.

Learning JavaScript has impacted my life, career, and passion for web development. It has changed me as an individual, as an entrepreneur, and even how I approach problem-solving and business.

It’s been 3 years since I started my exploration into JavaScript. Looking back, I wish I would have started sooner. It has helped me learn how to better manage time, land larger projects, and become my own boss (currently my third year)!

Let’s be real. Learning JS is difficult. 

Learning can be difficult.
Learning can be difficult.

I’ll be honest. When I first started learning JavaScript, it didn’t come easy to me. I watched countless YouTube Videos, but I struggled to understand the concepts. I laugh now remembering the confusion and frustration, because I didn’t understand when to use a comma versus a semi-colon. I thought to myself many times, “Why am I even wasting my time?”

But giving up on learning JavaScript was like giving up on progressing as an individual. I had to continue.  

JS can change your career


So many doors open up for you as a developer when you understand and appreciate JavaScript. “Full Stack Developer” just has a certain ring to it. The truth is that businesses need tools. With JavaScript, you have the ability to create tools that truly help them do what they do. Not to mention, by becoming proficient with JavaScript, you are increasing your value as a professional. Learning JavaScript allows you to bring the following services to the table:

  • Creating object oriented databases
  • Building shopping carts for E-commerce
  • Developing full stack web applications
  • Dynamic and animated user interface design
  • The use of API’s in your projects
  • And much more!

How JS changes the way you think. 

The entire world starts to look different when you understand how and where JavaScript is used in modern technology. Your ability to diagnose and problem-solve improves. You begin to try and see “methods”, “variables”, “functions” in the real world for improving daily life and tasks. If we go even deeper, one could argue that programming with JavaScript is like a form of personal expression, similar to writing books, or creating art.

You can tell that I really like JavaScript. 😃  

My tips for learning JS faster

Learn JavaScript faster.
Learn JavaScript faster.

Thanks to the internet, we have instant access to awesome and free resources for learning JavaScript.

  1. Start with the basics. 
    • Learn the fundamentals, and place an emphasis on syntax. 
  2. Use flash cards.
    • Constantly run through simple examples, and be very intentional about putting the pieces together in your mind. 
  3. Ask Google.
    • Most likely, you’ll find a post somewhere on a blog or forum (such as StackOverflow) that will help you solve your problem. In addition, you can also read the documentation.
  4. Watch Video Tutorials.
    • Learn difficult concepts by watching video tutorials. There are many free programming JS lessons available on YouTube.
  5. Enroll in an online course.
    • It’s well worth the money. Again, this will save you a lot of time learning, since chances are that the course has been put together by someone who has deep knowledge in JS. 
  6. Find a Tutor
    • About a month into my journey with JavaScript, I to hire a tutor to expedite my learning. Even taking simple 1 hour lessons from a JS developer can be of great benefit. For me, I learned concepts more easily when I was taught face to face. Your tutor can serve as a mentor who can help guide you to learn the essential concepts.

Free resources to learn JS

Thanks for reading this article! I hope your journey in JS will be one of imagination, curiosity, and may your code always work perfectly the first time.

Nathan Jean
@nathanjeanshow – instagram, twitter, snapchat

Coding Life Hacks: Podcasts (Part 2)

If you haven’t done so already, please check out my previous post on podcasts!

Hey everyone! Today I’ll be giving an update about my current favorite coding podcasts.

Summary on why you should listen to podcasts:

  • Learn tips on how to be a better developer

  • Learn about the current trends in the tech industry

  • Learn tips on how to find and land jobs

  • Can listen to them anywhere(while driving, doing house chores, exercising, etc).

Alrighty, let’s get to the list of my top 3 podcasts!

Developer Tea

Developer Tea Logo
Developer Tea
  • Description: A podcast for developers designed to fit inside your tea break.
  • Host: Jonathan Cutrell
  • My thoughts: I love the advice that Jonathan gives. I’m slightly envious of his speaking ability. The frequency and the size of the podcasts are also big pluses for me. He releases podcasts 3x a week and each podcast is 10~20 minutes.

Soft Skills Engineering

Soft Skills Engineering Logo
Soft Skills Engineering
  • Description: It takes more than great code to be a great developer.
  • Hosts: Dave Smith & Jamison Dance
  • My thoughts: These two are hilarious!! They give great insight on the tech industry and provide amazing information on soft skills. In comparison to Developer Tea, their podcasts are a tad bit longer in length(20~30 min.), and are not as frequent(~one podcast a week).

Front End Happy Hour

Front End Happy Hour Logo
Front End Happy Hour
  • Description: A podcast featuring a panel of Software Engineers from Netflix, Evernote & LinkedIn talking over drinks about all things Front End development.
  • Hosts: Many.
  • My thoughts: I love the panel discussion, and that you get insights from people working at well-established companies in Silicon Valley. One of my favorite parts is when the panelists recommend products/frameworks/books/movies/etc that they’ve been using/encountered recently. Their podcasts are usually an hour long.

There you go! Thank you for taking the time to check out my post!

Do you listen to any of these podcasts? Do you have any recommendations? Please let me know by leaving a comment below!

Until next time,

I got accepted into App Academy!

Invitation from App Academy
Invitation from App Academy

Heya everyone! Today’s post is mainly an announcement.

I was invited to join App Academy’s November cohort and I accepted the offer!

Big thanks to my fam, friends, supporters, and non-supporters! I’m grateful for all of the experiences, good and bad, that have led to this point. Also, I’d like to thank all the following organizations for providing affordable education: Codecademy, Team Treehouse, freeCodeCamp, and of course, Google!

I predict that some of you may want to hear about my coding background and what I will be doing up to the start date of the program. I’ll do my best to give you guys a short summary.

My Coding Background

Coding Bootcamp?

I first heard about App Academy from my senpai, Imron, in December 2014.

I was going to graduate in half a year and had the initially planned on becoming an English teacher in Japan. However, I believed I could serve a better purpose to the world. So, I consulted my senpai, Imron.

Imron introduced me to the idea of coding bootcamps, where one can gain the practical skills necessary to land a software development position after 3 months of intensive study. Coming from the traditional context that software development jobs require a 4-year degree in Computer Science, this boot camp concept blew my mind.

From then on, I decided to take a stab at web development. In my spare time, I began dabbling in courses from Codecademy and Team Treehouse.

Codecademy Profile
Codecademy Profile
Team Treehouse First Badges
Team Treehouse First Badges

I feel that my progress in learning web development in 2015 was slow, but necessary. I went through a lot of failure and frustration(both in coding and in life events). However, through these experiences, I was starting to understand what the software developer mindset is.

Fast forward to January, 2016.

I quit a web design internship(which I won’t go into much detail in this post) in Tokyo and came back to America as a failure. At that point, I was thinking of getting a part-time job and studying web development on the side.

Starting the freeCodeCamp material
Starting the freeCodeCamp material

After a month of having no luck with searching for a part-time job, I decided to study web development full time. This time around, I mainly focused on using freeCodeCamp.

This time around, things were different. For one, I had knowledge and experience from my first slow year of learning code. So, compared to when I first started learning code, I was better at handling failure, debugging, googling, and finding answers.

In addition, I had more resources. freeCodeCamp has an amazing community. They have a reddit, forums, chatrooms, and local community groups. If I was completely stuck/needed project feedback, I could ask someone for help easily.

Lastly, I made a firm commitment to studying web development. I believed in myself, even when things have been tough(jobless, other events) since my college graduation(in June 2015). I committed at least 4 hours a day to activities related to web development(You might ask, “Why 4 hours?” – check out Gary Keller’s The One Thing or Cal Newport’s Deep Work).

Fast forward to June, 2016

Things I was already doing:

  • Contributing to the FCC Reddit and Forum.

  • Working through FCC Intermediate projects. Portfolio | Github

  • Submitting cold job apps to any web development related internships/positions.(~5-10 a week).

Things I started doing:

  • Writing this blog.

  • Attending coding meetups.

  • Listening to coding podcasts.

Near the end of July, I received the invitation to App Academy’s Jump Start program.

Initial thoughts/Explanation of Jump Start | Review of Jump Start

In the middle of August, I received the invitation to App Academy’s Bootcamp program. There you have it, the summary of my coding background.

What Now?

My cohort’s program starts in November and runs until February. We’ve been given prep work to complete before starting the program.

So, I’ll be studying the prep work. If I complete that prep work, I will most likely work on learning Rails and getting more comfortable with React. I might even check out some of the later topics found in the App Academy curriculum. I’ll probably also attend some local ruby/coding meetups in the Bay Area.

I anticipate that this program is going to be extremely difficult, so I’m going to do my best to overprepare. Wish me luck!

Well, that’s all I got. Thank you for sticking around and reading! If you have any questions/comments, please leave them in the comments below.


Jump Start for App Academy: Day 7 & 8 + Review

Heya everyone! The Jump Start program officially ended on Thursday(8/11). As usual, I’ll give a brief summary of what happened on the last two days of the program(8/10, 8/11). After that, I’ll give my own review of the Jump Start program.

Day 7


For lecture, Ryan(our instructor) did a code demo a difficult problem from a pracice assessment test. I can’t discuss what problem it was, but I can outline some of the things he did.

He broke down the complicated problem by drawing out the problem on the whiteboard. A visual representation of the problem can help free us of some of the cognitive load(keeping all of the details of a problem in our head) and help us think of how to approach the problem.

I personally need to do this(drawing out the problem) more, since it’s difficult keep all of the details straight in my own head. I often do something similar though, which is write commented pseudo-code and brainstorm the general outline of a problem.

After drawing out the problem, we thought up of helper methods to define, created and tested our helper methods, and then solved the problem. The demo was amazing, because I know I probably couldn’t have explained the problem as well as our instructor did.

Something that concerned me was that the problem took about an hour to solve(I’m guessing it’d take ~20-30 minutes to solve if one didn’t have to draw & explain for a class). Our assessments are only one hour long. So, we’d be in trouble if a problem like that occurred on an assessment test.

Interesting note

There’s a command in irb/pry(ruby REPLs) callled load 'filename.rb', which allows you to load all content from one ruby file.

This means you can load methods and variables into the REPL, and test them quickly. I prefer to copy and paste my methods into the irb, but this command will definitely come in handy in the future.

After lecture, the day resumed as usual. We did our pair programming warm-up assignment and then went to work on grinding out the algorithm sets.

Day 8 – Final Assessment

Day 8 is the most important day of Jump Start, since it is the day that we take our last assessment test. If we pass the assessment test, our chances of getting into App Academy significantly increases. However, if we don’t pass, we can still apply to App Academy through the regular admissions process.


We had a shortened lecture because it was assessment day. Ryan(our instructor) answered one student’s question and then ended lecture early so we could have more time to study for the assessment.

Assessment Test

I can’t give much details about the assessment tests, but I can say that I personally felt that this test was nearly as difficult as the first assessment test. I finished the assessment test with literally two minutes remaining before the time limit.

My biggest tip for preparing for the assessment tests is to overstudy. Run through the practice assessments and time yourself. In addition, try to get exposure to as many algorithm problems as possible.

Just to reiterate, if you pass the test, you have an increased chance of getting into App Academy. You are not guaranteed admission into App Academy. The next step differs for each candidate, but you’ll most likely have to pass a combination of technical and regular interviews.

If you don’t pass, there are no negative consequences. You can still apply to App Academy through the general admissions process.

My Review of Jump Start

Overall, I think that App Academy’s Jump Start program is fantastic. It’s a free 2-week course that prepares and evaluates if an applicant is ready to apply for App Academy.

I also took it to be a mini-preview of what life would be like studying at App Academy. You’ll be working on difficult problems, be surrounded by many competent and motivated individuals, and basically be grinding day in and day out.

In addition, the knowledge and experience you gain from this two-week program provides you with insight on whether you really want to study at an intensive coding bootcamp or not.

Perhaps, the one thing I didn’t like about the program is that it invites coders of all levels and has the same standard(assessment test) for everyone. So, imagine that your are a beginner with no prior coding experience, going up against people who have 1+ years(maybe even just 6+ months) of coding experience.

I’m not saying it’s impossible for a beginner to pass the assessment tests. It is possible. A beginner would most likely have to study ~4-6 hours before class and also need a few mentors to ask questions to when they can’t find the answer out themselves.

Yes, App Academy did explicitly state their intent on the first day of the program. For intermediate programmers, they want to streamline the application process and try to filter in those who are ready for App Academy. For beginners, they want to help them get further along on their journey towards becoming a developer.

Just a thought here, perhaps we could get this message before coming out to to San Francisco. Some applicants flew in from other states, probably with greater expactations.

Don’t get me wrong though, I still recommend this program to both intermediate programmers AND beginners.

For beginners:

  • You learn a coding language(ruby) rapidly. Of course, you don’t learn the entire language, but you learn enough to complete a multitude of algorithms.
  • You learn how to systematically approach problems.
  • You learn how to debug problems.
  • You begin to craft a developer’s mindset(getting used to failure/becoming resiliant+persistent, understanding that you need to be constantly learning, learning how to say “I don’t know” and asking for help)

If I was a beginner, these components are reason enough for me to go. I believe that some of these concepts are difficult to learn on one’s own.

For intermediate programmers:

  • You significantly increase your odds of getting into one of the most reputable coding bootcamps.
  • You will be constantly challenged to improve your problem-solving skills. Also, being around other competent programmers will also push you to step up your game.
  • You get an opportunity to work on your soft skills and communication skills.(Pair Programming)

Advice for those interested in the Jump Start program

  • Learn the basics of Ruby. Codecademy is a great start.
  • Do a ton of ruby algorithms problems. Use websites like Codewars. In addition, you could try searching for App Academy prep problems. I belive they have a problem set with ~21 problems available to the public.
  • Apply to App Academy. I got my invitation to the Jump start program because I started the application process for App Academy, one year ago. They say I was a “promising” candidate, but I’m not actually sure what “promising” meant since my application last year probably didn’t really contain any programmer-vetting material. So regardless of whether you feel ready or not, you should still apply.
  • If you’ve got a decent handle on Ruby and have started your application process to App Academy: try emailing or even better, calling them, to ask about getting into the Jump Start program.

The People

Instructors and Group/Pod Leaders

Our instructor, Ryan, was an awesome instructor. He’s very enthusiastic and is great at explaining both simple and complex problems to a large audience. I also like the fact that he is open to taking questions during the lecture, as opposed to asking people to hold onto their questions until the end.

The group leaders were pretty cool too. You primarily only interact with your group leader.

I could be wrong, but it appeared that all of the group leaders have already completed the bootcamp portion of App Academy and were actively seeking jobs. At any time during the warm-up or individual study time, you could ask your group leader questions. In addition, group leaders routinely ask if you need any assistance with an algorithm.

My Pod/Group

My group was awesome. Our group leader was Charlie. He is very helpful and has a great sense of humor as well. In addition, my group members were dope! Everyone was nice and I felt like the entire group had pretty good vibes since the first day. We were all very open to helping each other and I had no issues with anyone during the pair programming warm-ups. I’m grateful to have been a part of Team Charlie, aha.

Other Students

As I stated previously, students came from varying levels of coding experience. Some were new to programming, some had CS degrees, and some have dabbled in programming and were quick to adapt. Overall, everyone was very kind and open to helping you if you had questions.

Conclusion (aka tl;dr)

App Academy’s Jump Start program is amazing. I definitely recommend it to anyone who wants to try to get into App Academy.

Thank you for taking the time to read this! I had a lot of things I wanted to include in this review, but I chose to leave them out for time’s sake. If you have any questions/comments, please leave them down below!

Catch you later,

Jump Start for App Academy: Day 5 & 6

We are now officially halfway through the second week of the program. Our final assessment test is coming up on this Thursday(8/11). I’ll quickly summarize what happened on Monday and Tuesday.

Day 5


This lecture was pretty standard. We went over methods for numbers, hashes, and ranges. I’m not allowed to go into very great detail about what methods we learned about. However, I’m sure you can use google and the ruby documentation if you want to learn more.

Monday’s schedule was slightly different than our normal schedule. At the end of the day, we got to have a “Question and Answer” session with current App Academy Students.

Q & A Session

We(Jump Start students) received a chance to ask current students about what it’s like to be at App Academy, job search details, and advice.

I’ll take a guess that I’m allowed to talk about some of the stuff in the Q & A session as long as it doesn’t cover technical content.

Interesting Points

  • Though not desirable, it’s true that some students pull all-nighters and sleep at the facility.
  • As one can expect, they described the bootcamp as kind of a grinding process.
  • The end of the boot camp program focuses on the job search. Students are required to send 25~40 job applications out per week. If for some reason, they cannot find a job within a year, tuition is “free.”
  • If you graduate from App Academy and get a job in somewhere other than San Francisco / New York, the tuition model is slightly different. You pay a flat rate of $18,000 instead of 18% of your first year salary.
  • There’s a strike system at App Academy. You get strikes by missing roll call, failing assessments, etc. If you accumulate 10 strikes, you get flunked from App Academy.

Day 6


Our lecture covered ruby style and conventions. Not a whole lot of new content here for me, as I’ve been exposed to style practices(indentation, naming variables) before.

I definitely agree that programmers should adhere to the style conventions, to an extent. However, I believe there should be some leeway..

For example, in Ruby, code blocks can be written with curly braces(“{ }”) or with the keywords “do” and “end”.

  # example. Creating alphabet for next functions
  alphabet = "a".upto("z")
  # the following blocks do the same thing
  # BUT curly braces("{}") are usually used for single-line blocks
  alphabet.each { |letter| puts letter }
  # do and end blocks are for multi-line blocks.  So the following code does
  # not follow ruby conventions.
  alphabet.each do |letter|
    puts letter

Coming from a JavaScript background, I prefer to use the curly brace notation to define code blocks. However, in Ruby, it appears Rubyists prefer more verbose code and less code-like syntax.

I can understand both sides here, but I think that it shouldn’t matter if one uses curly braces as opposed to “do/end”. But who am I to say what should and shouldn’t be, I’m just a JavaScript guy, aha.

What I’m currently working on

I finished the curriculum’s problem sets on Sunday and have been working on problems at CodeEval and Codewars.

Codewars Sample Problem
Codewars Sample Problem

I definitely prefer Codewars over CodeEval since I’m more familiar with Codewars and Codewars is waay more user-friendly. In addition, I like to see the creative answers that others think of.

Codewars Sample Answer
Codewars Sample Answer

In addition to working on these websites, I’ve also been going over the practice assessment tests and timing myself. I can do the practice assessments, but it’s a completely differently feeling when it comes to the actual test environment. For now, I can only continue grinding away at problems and hope for the best.

Well, I got to get back to attacking more algorithms. Thank you for reading this! If you have a comment/question, leave a comment below!

Until next time,