Wednesday, December 16, 2015

My last coaching client just got a Junior Dev paid internship

Hey All, So I am either lucky, or good at getting people hired :-)  The last Coaching client that I currently have just got offered a paid 3 month junior dev internship at a company in Baltimore MD.  I really am sad to not have anymore coaching clients at the moment :-( 

I will update the testimonials section of my blog with each of the last 3 coaching clients stories by the first of the year. 


Here are some of the thoughts and things I have learned over the past 6 of months coaching:


1. I think that I could really help people who already know how to code but haven't been able to land a job.  I think I could help them land a job in 1 month.  Email me if you want to hear more.


2.  I love coaching people to land jobs.  I really get SO excited to help people break into the coding world. It's thrilling to hear how excited they are when they actually get the coveted job offer!  Coaching is my passion, I want to keep doing this for as long as people will keep hiring me to help them get hired.


3.  People don't value free coaching.  I offered to coach 4 people for free, to give back and help them land jobs.  All 4 of them quit within 2 - 3 months of starting coaching.  No matter how much I screened people, no matter how motivated and passionate they said they were, not one even completed the 4 months of coaching.  No matter how many emails I sent or how many hours I spent helping them they all quit.  I never would have guessed this would happen and this is something that shocked me.


4.   Every person who has paid me to coach them has landed a job and none of them took longer than 4 months.  Not bragging, just a true fact that I am proud of.


5.  The biggest problem I see is that there are too many resources and people just think if they take a ton of tutorials, some company is going to hire them.  They have no plan for how to actually get hired.  Everyone should read this article:

Why Emotionally Intelligent People Are More Successful

Basically it talks about what I have observed as the key to landing a QA or coding job:

The Carnegie Institute of Technology carried out research that showed that 85% of our financial success was due to skills in “human engineering”, personality, and ability to communicate, negotiate, and lead. They found that only 15% was due to technical ability. 




6.  The ultimate key to getting hired is being truly remarkable and standing out from the crowd, it's that simple.



Keep coding peeps, you can do this!!!

Thursday, December 3, 2015

If you are going to learn Javascript do this first...

I have stated many times that Ruby is the best programing language for beginner's to learn.  People continue to tell me that they absolutely must  learn Javascript.

OKAY, I give up!

If you are 'dead set' on learning Javascript as a beginner, then you need to help yourself and make things easier.  First, Javascript is not as easy as Ruby.  There are many more 'gotchas' in Javascript.  Javascript is 'less clean' than Ruby.  If you are learning Javascript right now, you will more than likely be learning it because of Node and SPA applications.   If you are learning it to use with Node, you will be writing asynchronous javascript, you will be dealing with promises, you will be scratching your head A LOT :-)

Get the Webstorm IDE.  When I only used Ruby I loved Sublime Text 3 text editor.  When you are dealing with Javascript, you should take ALL the help you can get.  Everything you can do with an IDE you can pretty much do with Sublime if you install enough packages and tweak enough of the custom settings.

I started noticing myself tweaking Sublime more and more, until I finally thought to myself: "Why am I making my text editor into an IDE???"  I think you pretty much need an IDE if you are a beginner learning Javascript, do yourself a favor and get Webstorm it is specifically made with Javascript in mind.  I use it everyday at work, it is really amazing and I wouldn't go back to Sublime.

Also if you are going to learn Javascript, learn how to leverage Javascript libraries like:

Underscore
http://underscorejs.org/

lodash
https://lodash.com/

Ramda
http://ramdajs.com/0.18.0/index.html


No company is going to have you writing triple nested loops, if you find yourself writing them, stop and learn how to use a library :-)

Yes, people will say you should spend your whole life learning plain Vanilla Javascript before ever using a library and leveraging their methods.  I say don't spend 2 years of your life coding in your parent's basement learning Vanilla plain Javascript :-)

Learn to use the libraries and built in methods. Again, no company wants you writing multiple nested loops, that some other poor developer will one day have to try and figure out after you've left.

If you can find a method, use it.  If you can't, then write your own it's that simple.  If people email me saying they want to hear more about learning Javascript, I will write a blog post on how to easily pass Free Code Camp's Bonfires.

Keep coding peeps, you can do this!

-Josh

Wednesday, December 2, 2015

Former Blacksmith helps people land coding jobs

Hey guys I just had to let you know that my coaching client in Denver just got hired as a Test Automation Engineer!  His first day is on December14th.  I'll probably give him a week to get settled in at his new job before 'spilling the beans' on his journey/story.  Expect another update near Christmas time.  I love coding and my current role as a Software Engineer in Testing, but I love just as much helping people land there first coding position.

I also think people who are learning how to code would almost be better off landing a QA role instead of a web development role as their first professional position at a company. 

Most companies are slowly moving away from manual testers and more and more will not hire QA Engineers unless they have at least some level of coding ability.  If you land an entry level QA role you will more than likely start writing automation scripts using Selenium early on in your QA career.

I think a great way for beginner's to move toward a development role is by learning QA well, and then writing automation for a web application.  Testing may not sound as 'sexy' as web development, but it makes you look at a web application in an entirely different way than a developer does.

There are also many hats that QA's can wear, for example you may start off doing only manual/functional testing of an application, until you have more product knowledge.  You may then start working on the automation team ( assuming you know how to code ).  Other QAs do some security testing of the application, using security tools and plugins like:  XSS Me, Burp, and Tamper Data, among others.

The point is if you are new to learning how to code, there is a lot to learn.  Why not take some of the pressure off of becoming a full blown web developer as your first position, and learn to code in smaller 'bite sized' chunks?  Learn how to code, then land a QA job.  If you still want to be a developer after 6 months to a year, talk to your company about moving into a junior developer position.  The key is learning to code, and then finding a good fit for want you ultimately enjoy doing with that coding skill set.

I personally like doing automation and find it challenging and fun.  I think 'noobs' should not turn there noses up at the idea of starting off in a QA position.  Who knows you just might love it :-)

Keep coding peeps, you can do this!

-Josh

Sunday, November 29, 2015

Why I switched to an IDE instead of Sublime text editor, and you should too!

Yes I know, I have always been a huge fan and supporter of Sublime Text 3 text editor and all of the various plugins, but I am moving away from text editors in general and here's why.

NOTE: When I say IDE's, I really don't mean just any IDE, I mean Webstorm for Javascript, and Rubymine for Ruby.  If you are using other IDE's like Eclipse, then I think there isn't nearly the advantage that Webstorm and Rubymine give you.


IDEs do more than text editors, even Sublime Text 3 with all the plugins I had installed.
IDEs help you code easier and faster and have more code intelligence with refactoring and which files you changed on Git in an easier format.

Honestly though there is really only one reason that I switched to IDEs in the past year.  This is something that most people will never actually admit, but really is one of those 'dirty' truths of the real world:

If you are dealing with a huge code base that is crappily written or are working with 'spaghetti style' written code, an IDE will save you SO much time and frustration.  This is the main reason I switched. The ability to simply hit 'command + b' and follow spaghetti code quickly to see where it goes and try to wrap your brain around it as quickly as possible.  Now you may be thinking that this is stupid to switch to an IDE because you deal with crappy code everyday, but as much as you people want to deny it, it is the reality.

The other reason I switched to an IDE is that it made finding errors much faster and the colors changed on the methods depending on whether or not the method had issues (like I had a typo).  In a nutshell speed and convenience to deal with crap code written by many people over many years is why I switched to an IDE.  If you only deal with code written by 'code angels' then please by all means stay with a text editor.

After saying the above, let me be clear that I absolutely LOVE Sublime Text 3 and use it to open files from the command line or use VI if I am SSHing to a server.

The above is 100% true.  There are 2 types of coding that I've seen since getting into tech, the real world coding that I see in the 'wild' and then there is the tutorial code.  The code written when people are giving a tutorial and are able to spend an unlimited amount of time to refactor the code.  That is not to be negative, just to say the reason why I switched to Webstorm and RubyMine.

The real reason people don't want to switch to an IDE is that most IDEs actually suck.  If you want an awesome IDE they cost too much money.  The only way around that is to hack the IDE which I don't do and don't recommend.  The other method is to use a 30 day trial version on a Virtual Box and then simply keep resetting the date back every 30 days so that you have in essence an unlimited trial version. I also do not recommend that method either.

My RubyMine IDE and Webstorm IDE are 100% legit and I did not spend any money to get the IDE legal registrations.  I am not going to tell you how I did this, only know that I did absolutely NOTHING unethical and in fact 100% legal to accomplish my goal of getting 2 IDEs for free and registered in my name 'Joshua Kemp'.

The reason I am not going to tell you how I did it is simple, it's NOT rocket science what I did and also I want you to realize that actually the reason you are still using a text editor is because of the cost.  If it weren't for the cost, then you would be using the latest and greatest IDE.

If that is the case, then you should NOT let the money issue stand in your way, you need to pony up the money and pay for the IDE license or figure out another legal way.  I really recommend a good IDE and think every beginner learning to code should use one.

Keep coding peeps, you can do this!

-Josh


Tuesday, November 24, 2015

Cody Hired!!!

Hey guys, first apologies for not blogging in so long, trust me when I say I have been busy.  The past 2 months have probably been THE busiest months of my entire life.  My brother Cody got hired 2 weeks ago, I wanted him to let him get settled in as a contractor for Fuji Film here in Durham as a Software Engineer in Testing, before telling you :-)

He is loving his new job and new life, coming from working retail jobs for the past 6 years, to actually writing code and getting paid far more money!  Let's just say he is way above cloud 9!!!  There is soooo much that I want to write about and will in the coming weeks.  I been so busy, that I have only been able to keep up with helping my coaching clients and working full time.  I apologize to the people I have not emailed back and will try to do so tomorrow :-(

I just want to really encourage people that you can learn how to code regardless of your background, If you are willing to work extremely hard and put in the time.  Coding is like anything, if you practice it you will get better and better.  Even if you come from a retail, painting, hotel management or Blacksmith background, you can learn to code and get hired!

I have more to share later this week in some up coming posts about some things that I have changed my opinion on.  I think it will be helpful to other people who are starting out on this 'learning to code' journey.

Keep coding peeps, you can do this :-)

-Josh

Tuesday, October 13, 2015

Why horse shoeing and coding are very similar

Let me tell you a dirty secret that no one else will.  No one in real day to day life writes their best code.  I will tell you something else, the last 2 days of a sprint the code quality of a developer always drops.

Why is that???  Because the scrum master will be yelling at people to:  "Just get it done, and close the story!!!"

Now I can hear everyone with a righteous indignation, saying they would never ever write anything but perfect code, no matter what.  Well, let me share with you what no one else will.  I have had famous developers whisper to me when no one else is around that the hardest part about coding is not writing code.  The hardest part is unrealistic time lines and never having enough time to write the code the right way the first time.


What does this have to do with Horse shoeing???.... they are practically identical!


When I first started learning how to shoe horses, all I cared about was being a Blacksmith and making beautiful handmade horse shoes.  It would take me hours at first to make horse shoes, gradually I got better and faster.  I started competing in local Blacksmith completions and I actually started placing a 3rd place Ribbon every now and then.

Guess what though?  No one cared.  Not one of my clients cared.  When I arrived to shoe their horses and would try to make my own shoes, it would take longer.  No one wanted to wait for me to make my own horse shoes, when I could buy them for $10.  No one wanted to pay me more for the longer amount of time it took.

To make more money shoeing horses, you simply buy the shoes and never make your own, it takes too long.  I learned that there was "competition horse shoeing", and then there was "real world horse shoeing" that is what 95% of people actually did day in and day out to make money and pay the bills.

Just like in development every manager says: "They want quality code" but, when it really comes down to it, they just want some code written as fast as possible so they can close the story and meet the deadline."

Horse owners say they want the best quality horse shoeing job, but they really just want some horse shoes on their horse for the cheapest price.

See the similarities yet?  This post is a little depressing, but actually it's also very inspiring if you are a junior or noob developer.  Guess what, if you know coding basics, have an upbeat personality, and work well with others you can get hired fast!

This is very sad news if you are a senior developer who really wants the business team or scrum master to really appreciate the quality code they write.  They don't and they won't.  There I told you what the coding boot camps won't, I de-glamorized the learning to code movement :-)  Am I a traitor?  No, I still love coding, it's a great field, it's just not quite as sexy as it's made out sometimes :-)

Keep coding peeps, you can do this!!!



Sunday, September 20, 2015

Why you should never finish Free Code Camp

Yes, obviously Free Code Camp is popular. It's supposed to make things easier for you to learn how to code.  My problem is the length of time, do you realize it will probably take you roughly 1.5 years or more to actually complete Free Code Camp. Here is a link to their wiki: Free Code Camp Wiki.  That is simply the required course work at Free Code Camp, you still have to actually go out and land a job.  I think 90% of people who are still working full-time will take at least 2 years to finish the course work.

I know when I was first learning how to code, I was working full-time shoeing horses all day to support my wife and 2 children.  When the children were in bed and my wife went to sleep, I would study every night from 10pm - 1am (or until I feel asleep on the couch).  On the weekends I would make up for whatever hours that I hadn't been able to study during the week.

I did this every day without fail for 9 months and 2 days a total of 827 hours.  When I began coaching people how to get entry-level QA jobs, I thought people would easily be able to put in at least 21 hours per week. The biggest surprise has been how few people actually week in and week out actually put in 3 hours of studying every day!

This is why I think Free Code Camp will take the average person who still has bills to pay and a job at least 2 years to complete.  I am a very driven and passionate person and still had a tough time at the end of the day, after wrestling horses to find the energy to study. I was barely able to keep up that level of discipline for 9 months.  I think the average individual will not be able to do this. I have helped 30+ people land jobs, and I would be willing to take a guess and say that probably only 1% of the people who start Free Code Camp even finish the first 800 hours of the course much less land a job.

To me it's cool to have Free Code Camp, it gets better and better.  I think most of the smart people who are taking Free Code Camp, learn enough to get hired and then learn on the job from there.  To start off and actually spend 2 years just working through the curriculum is not the best use of your time in my opinion.

It doesn't matter how good the curriculum is, if the end goal is to land a job in the industry, you should try to land a job as soon as you possibly can.  Sure 2 years of training will prepare you better than someone with 6 months of training.  BUT what if the person who studied the Free Code Camp material for 6 months got a job at a company and gained real world experience for the next 18 months???

Which person would be more marketable and likely to land a job? The person who has studied online for the past 2 years and has hopefully done some pro bono work as the course recommends, or the person who has 18 months of real world experience?

If the goal is to land a job in some coding capacity and not purely academic, than you should never try to finish Free Code Camp.  If you argue the point that you should be really proficient at coding before getting hired, then why not just go get a Computer Science degree and do Free Code Camp??? The truth is you could spend your entire life studying if you wanted.  I think it's better to find a job as soon as possible and learn real world experience.

Don't just start Free Code Camp because of all the SPA ( Single Page Application ) JavaScript app hype that is going around now. You aren't going to make $100K a few months after joining Free Code Camp.  Join Free Code Camp and go through the material, skip something if it is poorly done or doesn't teach you in a manner that you understand.  Always keep your focus on getting good enough at coding to 'get your foot in the door at a company'.

The truth is JavaScript is not easy for novices to learn which is one of the reasons why so many people do not finish.  Ruby is much easier, I highly recommend it for novices. JavaScript is a great language if you consider that most of the language was written in 10 days. BUT any language written in 10 days is going to be 'buggy', and JavaScript is no exception.  There are lot of 'gotchas that throw beginners for a loop.

My advice is to start with the end in mind. Learn from Free Code Camp, do the Bonfire Challenges (they are amazingly well done) but do them in Ruby. Copy the JavaScript code into your text editor and then learn how to convert it to Ruby and solve the coding challenge.

Would you rather study for 6 months and then land a job? Or study for 2 years, and then try to land a job?  50% of landing an entry-level coding job are real coding skill and technical abilities, the other 50% is a combination of: Marketing, Networking, and Interviewing. Never forget that, don't be naïve and think that all you have to do is simply write the code.

Keep coding peeps, you can do this!!!

Tuesday, September 15, 2015

Cody Hired???

Tomorrow is Cody's last day staying at my place and sleeping on the blow up air mattress :-)


IS HE HIRED???


no.



Cody has a final interview with one company tomorrow, so technically he still could get hired within the 30 day challenge.  BUT I doubt they would tell him he got the job the same day as the interview.  The good news is Cody has lots of job leads, phone screens, and has been called in for several sit down interviews.  I am sure he will land a job soon, I will let you know when he does!

Cody is attending the Ruby D Camp in Northern Virginia ( thanks to David Bock! ), he will then be returning to the RTP area.  He has decided to get a place in the area and has asked me to continue coaching him.


I told you about my coaching client in Denver that was trying to get hired, well he had his technical interview yesterday and it went well.  With any luck he will be brought in for a final interview, I will let you know more as things progress :-)


Do I feel like a failure for not getting Cody hired in 30 days?

no.  Maybe I should, but I don't.  Cody is amazing at coding, but weak on people skills and the ability to read social cues.  I've been preaching this message for a while now and will continue to preach it until I am blue in the face.  Most people who are trying to land a job, only focus on coding and technical abilities!  Only 50% of the equation of landing a job is technical ability!!!  My brother Cody is in the top 10% of people who know how to code.  He is truly amazing, one of those people who is a natural 'coding savant', but that is not enough on it's own.

There is a recent article out on how to learn Javascript in 5 months and land a job.  The article is basically a list of Javascript tutorials.  It shows why these tutorials are best and will teach you all the Javascript you need, in order to land a job as a developer.  The article then abruptly ends.


This is the problem with the whole "learning how to code movement".  There are tons of free resources, lots of cool books and videos that promise to teach you how to code.  Yes, some are better than others, I won't get into that now.  But here's the thing, How do you actually go about landing a job???  Are you going to apply for a senior developer position online?  Everyone is chasing this "pot of gold at the end of the rainbow", they think just as soon as I can really code, THEN I'll get an awesome high paying coding job!


Guess what, Cody can code circles around you!  I have been coaching him every day for 29 days, and although I think he will get hired soon, it has taken ALOT of work and creativity to get him this close to the goal, and he can code!  


Don't believe me???  Have you been reading Reddit and Quora reviews and watching coding boot camp videos for too long?  Here's what you do if you want to see the truth :-)
Just for the heck of it, let's act like a magical "coding fairy" waved a wand.  Now you have just graduated from the best coding boot camp on the planet and can really code!!!


Now what???  Okay, you may begin your job search.


What, no one is knocking down your door???  No one knows who you are, or what you've even done.  You need to start thinking with the end in mind NOW, and not when you actually need a job.  There is no one day, today IS the day.  Make small deposits everyday in all areas, not just coding:

Technical ability
Marketing
Networking
Interviewing Skills

Don't neglect any of the above if you want to actually land a real paying job.  Of course if you just want to code in your parent's basement and put cool stickers on your computer, you can do that too :-)

Keep coding peeps, you can do this!!!

Wednesday, September 9, 2015

Cody - Final Week

Well we are down to the wire, this is the start of Cody's last week.  I promised he could stay at my place for 30 days, his last day is September 16th!  The good news is Cody has more job leads than ever and is actively pursuing them all.


The other coaching client I told you about who is starting to actively try to get hired, has a 2nd interview at a well known company.  He passed his first interview and is facing the technical interview tomorrow.  I am sure he will have at least one more interview after tomorrow's assuming all goes well :-)  I will let you know how things go for him.


As for me, there are soooo many things that I want to say, that I can't about what I am doing and where I am working :-(  That is the problem with getting hired, it puts a lid on some of the things you would otherwise be able to say and blog about.  I can tell you that I am using Javascript, and Protractor to test a SPA ( Single Page Application ) Angular app.


I find Protractor to be very 'buggy', and to have poor stack trace error messages.  SPA apps in general seem to have about twice as many bugs as a REST app.  I am also noticing that tests are slower to run, as you have to run them through a longer flow to set the 'cookie'.  With a REST app you can simply go to a specific URL and test a single page.  I think long term, SPA apps are not going to be as cool and sexy as they are now.  Once more people actually work on them, and see some of the common issues with maintaining SPA apps.


I am thinking of incorporating the Underscore Library or Lodash Javascript library into my testing framework.  I am not sure If I am allowed to add those libraries or not, but I think it will be cleaner and easier to use some of those built in methods.  I will have to check with some people before I just add a new code library :-)


It feels weird to see how things are changing in our industry with the rise of SPA apps.  One encouraging thing though regardless of what type of coding you do, is seeing how good the job market is.   If you can code and have been doing so for a while.  Every week I get someone asking me to work at company 'X', and why it is a better company than the one I am currently working at.

What's funny to me is if you go on Dice.com, and search for jobs.  You will get soooo many more for jobs for mid level developer positions than junior developer positions.  It's even more obvious when you search for senior developer jobs versus mid level developer jobs.  When you first try to get hired, it will be at a junior level.  The problem is finding a junior position, it can be done, it just takes some work and 'know how'.   It is cool to see once you've been coding for a few years, and have held a couple of positions, how much easier it is to land another job.


I think after 2 -3 years of coding experience, you will have a pretty safe job.  You will be able to move to just about anywhere in the U.S. and land a job without too much difficulty.  If you are struggling to find your first job stick with it, things do get better down the road :-)


Keep coding peeps, you can do this!!!

Tuesday, September 1, 2015

Cody Halftime - Survive and Advance!

So my little bro has been sleeping on my Air mattress in my living room for 2 weeks now.  No job yet, but lots of job leads!  I'll keep you posted on how things turn out with this "coding thriller" :-)


My coaching client in Denver just started interviewing, he has 2 - 3 phone screens so far for this week.  We will see if the mock interview training sessions and my secret interviewing techniques pay off!  I also decided to double my coaching prices in the next 10 days.


WHY???

Simple.  I love coaching and think I am really good at it, but the key to my success in helping people change their lives, is time.  Coaching people to land jobs in a short amount of time, is only possible because of the amount of contact and time I spend with them.  If you look at other online bootcamps or programs, they simply give you course work material and a "mentor" that you can email weekly.  I talk to all of my students almost everyday if not multiple times a day.  I don't want to have a course that I give to people, I want to know all of my students on a very close level.

I absolutely love coaching!  But, like I said it is a ton of time so I only want to focus on a few people and not try to take on tons of clients.  So I'm doubling my prices :-)


Anyway in other news, working at the new huge corporation job has been challening in a good way.  It is soooo different than when I worked at ZipList where there was 15 - 16 people in the office and shoes were very optional.  Every Friday was Happy Hour followed by a round of "office golf"!

I love that I have a mid level engineer position at a massive corporation.  It's been great in the span of 2.5 years to have been at a small Start up ( 15 - 20 employees ), a small company ( 100 employees ) and now a large corporation with over 40,000 employees.


The good news is, all of these companies no matter the size all want the same thing.  People who have experience, know some common software tools and can code.  They aren't only after degrees or stuff like that, if you can code you can land a great job fast!

Several people have left comments, and several people have emailed me asking why I am using Javascript, when I like Ruby more and am better at Ruby?  The reason is simple:

I don't recommend learning Javascript as a first language for complete beginners, but Javascript is super popular right now, and if a company is willing to pay me good money to code in it, why not???
My old boss at ZipList told me:

"The best thing you can do is to land a job with a technology you don't know.  You'll get paid and 2 years later you will have a whole new set of skills that you can use to land your next job."


Bottom line, if a company will pay you to use a technology that you aren't very good at, take it!  When I first interviewed at ZipList I totally bombed the interview, I failed 80% of the questions most of which were related to HTML and CSS ( my weakest areas at the time ).

I somehow got the job and then went on to make 500+ of ZipList's partner site's Headers ( they were called "white label" sites, basically just the top of a website ) like:

Rachael Ray
Martha Stewart....

Guess what?  I got really good at Html ( Haml ) and Css ( Scss ).  I think my current position is similar, I'm not as green as I was with Html and Css, but the principle is still the same.  If you get to write code everyday you will have to improve or else get fired :-)


Alright peeps, I hope you are making progress learning to code and landing a junior job!  None of this is rocket science, it simply takes time.  Keep coding peeps, you can do this!

Sunday, August 23, 2015

Cody Coaching update - 23 days left!

September 16th is fast approaching.  Last time I gave you an update Cody had 1 job lead,  I am pleased to say that he has 4 job leads 6 days into the coaching program.  Of course non of those job leads matter if we can't turn one of them into an official job offer!  Follow along and watch as Cody lands an entry level QA position!

One of the scariest things for people learning how to code is simply having the courage to set a goal and announce the date publicly that you will achieve your goal.  I feel the same way myself, trust me I have the same evil voice in my head that constantly tells me I can't do something or am a failure.  There is no cure for it, the best thing I have found is to simply push through the voice and achieve the goal anyway.  It also helps to surround yourself with very encouraging supportive people in your life.

People who start coaching with me are always surprised by how hard it is to actually study 3 hours a day for 4 months straight.  Learning to code is only 50% of the equation, the other 50% is how to actually go about getting a job.  If you think you want to learn how to code, I recommend simply coding everyday for 3 hours a day for a week and see how you feel.  If you fail that challenge, you don't need a coding boot camp, you need to decide if you have the willpower to learn how to code.

Another coaching client in Denver who is going to start interviewing this Monday, I'll let you know when he actually lands a job :-)  I am impressed with how hard he has worked everyday to be starting to interview 34 days after starting coaching with me.

With coding, you don't have to be a genius you just to want to learn and realize that the journey will be long and hard.  If you think writing 4 - 5 commands and generating a Rails app with get you hired, you are only kidding yourself.  Everything good in life takes effort, usually way more effort than you originally think.

The good news is the reward.  After getting kicked in the face by a donkey I promised myself that one day I would carry around in my head all the knowledge and skills I would need to make money.  Never again would I have to lift my 72 pound anvil in and out of the truck multiple days a day, I would only need the Internet and a computer.

One of the reasons I never moved away from the Northern Virginia area 7.5 years ago when I was first married was I would have to restart my entire farrier practice from scratch in another state.  I've been in Apex North Carolina for 5 weeks now and love it!  I never could have made this kind of a move with most other types of jobs.

If you are learning how to code, keep on keeping on!  Don't slow down, or think that you can't get hired.  Companies are hungry for passionate people who know the basics of coding and want to grow!

Keep coding peeps, you can do this!

Tuesday, August 18, 2015

Coaching Cody Countdown - 29 Days

Remember I told you that I had finally convinced my younger brother Cody ( who is a natural coding "savant" ) to quit his crappy retail job and to move down to the RTP North Carolina area?

Well so he finally did, and as I promised you all that I would let you know how it goes.  I am giving myself 30 days to get him hired.  I've been super busy so I didn't get to write a blog post yesterday, so I will start on Cody's 2nd day.

I have given Cody a QA coaching plan, and daily actionable steps to take, while I am at work.  In the evenings, I review with him how his day went and what areas we need to "tweak".  So far I am happy to say he has 1 QA job lead for this Thursday.

I have received more emails than lately, alot of them are from students at a very well known coding boot camp.  The students say that they liked the experience and training, but they weren't able to land a job after graduating.  They now are faced with having to pay back the loan and try to find a job.

I think we are hitting a new era with coding boot camps, they are so popular, prevalent, and generally excepted.  Boot camps no longer seem to have same level of pressure that they once had to actually get their students jobs at the end of their 12 weeks of training.

I agree 4 college is mainly a waste of time if you want to learn how to code.  Why though do you skip 4 years of college and replace it with 3 months of coding school?  The problem with college has been that they don't actually make you "job ready" at the end of 4 years.  I wonder if coding boot camps are starting to head that way as well, as they are becoming more mainstream.  Will they become a place to simply learn coding skills, but not actually get you a paying job at a I.T. company?

Either the coding boot camp industry is changing, or I am simply getting more emails from former coding boot camp students, that simply can't get hired.  Am I the only one seeing this?

Anyway, I am loving the RTP area and loving my job using Javascript everyday as a Software Engineer in Test :-)   I will keep you all up to date with Cody's progress and anything else that I think will be beneficial.


Keep coding peeps, you can do this!

Monday, August 10, 2015

How coding bootcamps are ripping people off

50% of all the emails I recieve are from people who are brand new to coding, and are struggling with how to learn the vast amount of knowledge required to become a web developer.  Their email starts off with why they don't think they can learn to code on their own, and why they need a coding bootcamp.  They go on to say that if they find the "right bootcamp, they can be making $80K  - 12 weeks from now!"


 I get so many emails that tell the same horror story about going to a coding bootcamp, and then being shocked and depressed when they couldn't land a job afterwards.  They ask for my advice and how they can stop waiting tables at the local restaurant.


Case in point, one of my QA coaching clients asked me to look into a coding bootcamp for them called Betamore.   https://betamore.com/academy/front-end-web-development/ To the unexperienced eye who knows nothing about coding, and who doesn't actually know what companies are looking for in a web developer.  Betamore looks fine.


Here's the deal, I am going to help you cut through all the coding bootcamp hype.

Ready?  Let's go!

First off let's get clear on the objective.  What's the objective?  To land a paying web developer position!  It doesn't matter whether or not it's front end with Javascript or back end with Ruby on Rails.

Here's what you are not paying for:

You are not paying for a college education.
You are not paying to learn how to make websites.
You are not paying to just have a good time.
You are not paying to learn how to code.


Let me walk you through what in my opinion is a bad or certainly not a good bootcamp.  If you go to Betamore's site, you can see the typical "red flags".  First any bootcamp that doesn't really help you land a coding job, is not worth wasting your time on.  You can learn to code on your own, no need to drop a crap load of money on that.  You can go to local meetup groups yourself, you don't need to pay money for that.


On Betamore's site, you will notice that they make sure not to promise you a web developer job.  They will however put statistics on their site, about how much the average web developer in Baltimore makes: $87,000.  They also put on their site that the course is best suited for business owners.  They also promise to teach you how to make websites, not web apps.  Of course 'noobs' don't know the difference yet.


Here's an assignment for you, learn the difference between a website and a web app.  Don't feel bad, I didn't know the difference when I first started learning how to code.  Companies will pay for people who know how to make web apps, not websites.  If a coding bootcamp promises to teach you how to make websites, you should run!  If you find conflicting messages on the coding bootcamps website, ...run!  If you aren't sure if you can get a job after attending the bootcamp...run!  Right now wherever you are, you aren't sure if you can get a coding job, why pay a bunch of money to still be unsure???


If the course only has 6 hours of classroom teaching per week, for a grand total of 60 hours of in person instruction.  Ask yourself: "how are you going to be job ready in anything with only 60 hours of training???"  I'm sorry to be picking on Betamore, I'm sure for someone it's a good choice, just not for developers.  We've hit a coding bubble, 3 years ago I applied to the only coding bootcamp in the world for their 2nd ever camp.  I was one of 60 applicants that was chosen out of a pool of 600.  I never went to the bootcamp because I couldn't scrape up the money, I'm glad I didn't.  If you want to learn how to code, it will take lots of time and hard work and that's not a bad thing if you love learning.


Hopefully this post saves someone money and helps them cut through the coding bootcamp hype.   I'm sure I'll get a bunch of mean emails, so what.  If you want to go to a coding bootcamp, that's fine just be clear on what it is that you are actually getting.

If you want a great free online course look at Epicodus' free online coding bootcamp coursework:  Epicodus

Or for Javascript check out Free Code Camp, again I don't think this is the best way for beginner's, but check these places out before going to a coding bootcamp :-)

Friday, August 7, 2015

How to know if you are good enough at coding to get hired?

I still suck at coding.  Yes, I'm hired at a "mid level" Software Engineer in Test position, but what does that really mean?  I got addicted to fishing on my 12th birthday.  I couldn't stop, I would do anything to go fishing.  Whatever it took to get my parents to take me fishing I would do, no questions asked.

I sucked at fishing.

All day, I'd hardly get a bite.  I didn't care, just seeing other people catching fish told me that I could do it too.  Without bragging I can honestly say that I am in the top 5% - 10% of people who fish.

What happened?  How did I get better?  How did I finally know I was good enough???  I didn't.  I just slowly started catching fish.  By my 16th birthday, I placed 7th in a fishing tournament with over 100 other contestants.  The truth is you will never feel ready.  Someone will always be better than you, faster at coding and quicker at solving problems, so what?!!

Do you like coding?  

Do whatever it takes to code.  Write lots of terrible bad code, make every mistake you can possibly make as soon as you can.  Start interviewing, you will never be ready for that either.  You will never not be nervous interviewing.  You need to have a hiring manager laugh at you when he reads your resume.  You need a senior developer to laugh at you because your brain simply stopped working and you can't write a for loop .

You know how to tell if you are good enough??? 

When a company hires you.

You don't have to be good enough for every senior developer who has been coding for 20 years.  I've never been "qualified" on paper for any position I have ever gotten.  I have had 50% of the skills the company needed so I interviewed, that simple.

I've failed interviews because I didn't draw a 3D cube like the interviewer wanted.  Who cares.  If in the back of your mind you wonder if you are good enough, start interviewing!

If you fall on your "coding face" in 3 interviews, learn what areas you are weak on and then try again.

Everyone in their minds is amazing.  Everyone has hit the game winning home run.  How do you know if you are any good at coding?  How do you know if you are ready to interview?

Everything is simply theory until you make it happen.

Sunday, August 2, 2015

How come nerds can code, but can't actually land a coding job???

I love coaching people and helping them land jobs.  My dream is to to switch to coaching full time down the road :-)

I mainly get questions and emails from 2 different types of people.  1 group is brand new to coding, and has only ever written the command:

'rails new <app_name_here>'

and now would like to get hired making $80K.


The other group is the 'nerd group' they are amazingly talented and gifted people who can really code.  Unfortunately this group tends to be living in their parents basements, and working low paying jobs.


Why is that???


 The reason is simple and actually a fairly quick fix.  50% of landing a coding job is technical ability.  The other 50% is a combination of these skills:

People Skills
Marketing/Networking
Interviewing Skills

I have a couple of clients that I am coaching that I think will be landing a job very soon.  I will post about it on the blog when they actually land their first coding job!  I really would love to talk to and help more people who are in the nerd category.  They are honestly easier to coach and to get hired.  Once I show them the above non technical skills and how to actually implement them in real life, they are a quick hire.

I have a really good friend who is a full blown nerd, he has 20x times the coding ability and aptitude that I have, yet makes $21K less than I do.  Nerds typically have a very hard time getting interviews, and when they get an interview have a difficult time, socially navigating the interview process.  When nerds fail an interview, they inevitably focus on improving their technical skills to an even higher level.  In reality they really need to focus on the social non technical skills.

Also coding ability is all relative, each company is different.  I've been told I suck at coding, I've been told I was at a "mid level" coding ability by a hiring manager, after breezing through their technical interview.

If the goal is to actually land your first paying coding job, then don't worry about being the best at coding.  Be proficient at what you do, and then focus on the above 3 skills.  If you know how to code but keep failing the interview process, this is what you need to fix.

On this note I am going to be putting my money where my mouth is.  I've mentioned in the past how talented my younger brother Cody is, and how he is a real life coding savant ( he laughs at coding challenges that I think are difficult ).   I've tried for years to help him and give him advice on how to land a coding job, all to no avail.  He has always worked a crappy retail job by day and then by night codes.

I've finally convinced him to come move into my apartment in North Carolina and let me coach him into landing his first coding job.  He won't be starting coaching until the 16th of August.  Follow along to see him finally break through and land a coding job :-)


I've given myself only 30 days to land him a job, so my deadline is September 15th, 2015!

If you are a nerd and can code, but haven't been able to actually land a coding job, send me an email at: joshuakempcoaching@gmail.com


Keep coding peeps, you can do this!

Wednesday, July 29, 2015

How to accomplish your goals

I was home schooled my entire life.  We were "that weird home school family", you know, the one that pulls up in an old 15 passenger van, then piles out dressed like a bunch of Mennonites, but who aren't actually Mennonites.

Every Wednesday we would go to McDonalds for 99 cent Happy Meal night, we would order 12.  When I was 14 I picked up a crappy looking local newspaper that had even worse looking comic strips inside it.  I read the comics and said to myself: "These are terrible, I can do better."

I didn't know how to use the Internet, so I asked my younger brother Cody to email the editor, and see if I could drop off some of my comics by her office.  For the next 3 years I wrote comics every 2 weeks for 3 local newspapers.  I even started writing a fishing advice column.  I thought I had found my purpose, I thought I could be a full blown comic artist like Charles Schulz.

I read Charles Schulz's autobiography, I read every article I could find about how to become a comic strip artist.  I won the local Library Art Contest, and had to give a speech - I choked.

Everyone believed in me, everyone said I would be great.  At 17 I went to Staples and bought 8 manila envelopes.  I drew 2 months worth of comic strips and submitted them to all of the comic syndication companies, and anxiously waited.

I handled every form rejection letter fine as they rolled in, until one editor took the time to write: "What the hell?!!" next to my name.

I gave up, I went from being called "exceptional", to an editor telling me I sucked!  It took me a while to get over that rejection, I had made it "my everything".  I mowed lawns all Summer long, and stopped drawing comics.

I apprenticed with a 62 year old racist Blacksmith named Eddie, when I was first learning how to shoe horses.  He would yell and cuss at me, flip off any black person he saw when he drove down the road, and say: "I hate those N*^&%$!".  I was 20 and felt sooo much guilt ever second I was working for Eddie.

I prayed and prayed that I would have enough courage to leave him.  3 months later I finally did.  The amount of relief and joy that swept over me is hard to even describe.  I'm glad I quit Eddie, but I didn't give up on my dream to become a Blacksmith/Farrier.

After I got kicked in the face by a horse and then started learning how to code.  I finally landed a coding phone interview and the interviewer basically laughed at me and said: "Is there something I don't understand about your resume?  You are applying for a developer position???"

He then followed that up with asking me to design a relational database over the phone.  The entire rest of the interview revolved around databases, not a single question that did not involve databases or database design.  I didn't get the job, but I didn't give up.

I refused to give up even after failing interview after interview.  My 8th final interview I was told: "I had exceptional enthusiasm, passion, and would be a GREAT addition to the team!"  My dream became true, because I didn't give up.

I have a million more stories like this, all of them for me have been the same:  "Don't give up no matter what on something that you want, don't take it personal when people say you suck or laugh in your face, don't do things that you don't really want to do."

If you know how to code, you can get a job anywhere, I can help you make that happen.  You can do it on your own without my help as well if you want it bad enough.  Only do it if you really want to.  Don't believe the hype, there are no unicorns.  If you want to learn how to code and land your first job, it really feels great when you finally land your first job!

Keep coding peeps, you can do this!

Monday, July 20, 2015

What to do if you can't find a coding mentor...

Let's face it, we all know having a real life in-the-flesh mentor is the best thing for learning how to code - quickly, and correctly.


However that is not unfortunately always possible.  Stumbling along learning on your own is tough, and frankly not much fun.  Thankfully, I recently discovered a way that everyone can have their own virtual built in Ruby mentor!  :-)


Wouldn't it be nice if someone could help you with proper code indentation?

Wouldn't it be nice if a friend could point out "bad" coding habits right away, like unused variables?

Wouldn't it be nice if someone looked over your shoulder and not only showed you the "ruby way" to code, but would actually change the code for you, if you wanted???

This isn't a scam I will show you how to make all these wishes come true!


Here's how:

From your command line ( also called the terminal ) run this command:

'sudo gem install rubocop'

you will be prompted for your computer's admin password.


NEXT:

Install the 'rubocop' Sublime Text 3 plugin using package control on Sublime Text 3.  If you don't have Sublime Text 3 installed I highly recommend it.  Here's a link to Sublime Text 3

Now install 'sublime linter' plugin, just as we did before.  We will then install the 'ruby lint' plugin from Sublime's package control.

Finally we will install 'beautify ruby' using package control as before.  That is all you need installed to have your own built in virtual mentor!  In the video below I will show you how these 3 packages can become an amazing coding mentor.  Using these 3 coding tools you will be able to code faster and have 50% less coding 'bugs'.

In the video I show how to turn off some code warnings that you don't want by making a rubocop.xml file and configuring it.

 I will also show you how to check for errors from the command line using 'rubocop'.  Also how to automatically correct all of those errors!

Lastly I will show you how to customize the Sublime user package settings to automatically format your code every time you save the file :-)




Keep coding peeps, you can do this!


Sunday, July 12, 2015

3 ways to write code, which one should a "noob" pick?

There are basically in my opinion 3 ways to write code:

  • Bare Metal programming
  • Traditional programming
  • Easy-Lazy programming



Talk to an old programmer with a beard using Linux and he will talk about why all young coders really can't code and are really just "script kiddies".  

These programmers typically tell coding "noobs" to learn how to program using only “bare metal” programming.  "bare metal" coding is basically never using built in methods of the programming language.  A strict "bare metal" coder typically will try and only use if statements and loops to solve any and all coding challenges.  They prefer to write all of their own methods, and scoff at people who use built in methods.  The upside of learning to code this way is that you really can code, and don’t need to rely on any language's built in methods, you simply do it all yourself.  

The downsides of writing code using the "bare metal" coding method are many.  Writing code will be far more complex and with a much higher chance for overall “bugginess”.  Learning to code this way will also take much longer for a beginner to learn.


The traditional programmer will use a combination of “built in” methods and some of the “bare metal” style of coding to write code that gets the job done.  There is nothing really wrong with writing code like this, in fact it's very popular and is a fairly good happy medium.  Use the tools of the language whenever possible, and only write your own methods when you can't find a built in method.


The “Easy Lazy programmer” NEVER writes their own methods unless they absolutely have to.  When confronted with a coding challenge they will ALWAYS FIRST look to see if the language has a built in method to use.  If they can’t find a built in method in the language, they will look at using a library.  For example if we use the Javascript programming language as an example, we would look through the 4 most popular Javascript Libraries starting with:

‘jQuery’ jQuery Library
‘Underscore’ Underscore Library
‘lodash’ lodash Library
‘Ramda’ Ramda Library

If after looking through those libraries there wasn’t a method you could use to solve the coding problem, then and only THEN would the Easy-Lazy programmer write their own method to solve the problem.  The cons of writing code this way are that some coders will say that you can’t really code because you rely on as many of the helper methods as possible, and don’t write all of your code from scratch.

The upsides of writing your code the Easy-Lazy way are many:  Employers love it, as they want a code base that is less complex so that any programmer coming in behind you will be able to easily understand what the code is doing.  The Easy-Lazy method of writing code is much faster, cleaner,  requires less code, which makes for less complexity and overall easier to understand what the code is doing.



I see the value in “bare metal” coding, lots of older senior coders write code this way, BUT as a beginner learning how to code and solve coding challenges, you shouldn’t try to invent the wheel.  Try to solve the coding problem in the easiest, most tried and true way first.  Once you get better at basic coding, do more "bare metal" programming in your free time.  


I will say that using a Library does make the code run a little slower, I think most companies are fine with this, but I'm sure that in some cases you would want to avoid using libraries do to slowness.  The above is what I recommend for absolute beginners learning how to code.  This is not a blanket statement for never improving your own personal coding abilities.

Keep coding peeps!

Monday, July 6, 2015

Shoot for the coding stars baby!

Hey peeps, a lot has happened since we talked last, I was hired to work for the ettain group doing some really cool things that I can't say right now :-)  I am moving to the RTP North Carolina area on July 24th, and starting my new job the following Monday!  I also will be speaking at the Triangle Ruby Brigade meetup group on July 14th at 7pm.  If you are in the RTP area, come on out and say hi :-)

My wife and I have wanted to move to the RTP area for some time and are so excited to be finally making that dream a reality!  I plan on becoming part of the local tech scene, if you are in the RTP area, I hope we get to meet.  I've been busy these last few weeks getting everything set up and finalized for the move, but I plan on continuing to put out awesome blog posts as always.  I love the lifestyle you can live when you know how to code, I love how you can literally move anywhere in the country and land a great job.  Never let anyone discourage you with learning how to code, if you are willing to put in the time and work hard, your dreams can really come true!


Until tomorrow peeps, keep coding :-)


Monday, June 29, 2015

Free Code Camp Review

I have always promised honesty and transparency with this blog.  Last time I gave a review about Free Code Camp, I wasn't super supportive.  I talked about how the back 2/3 or the course material were basically unusable and very frustrating.


I am happy to tell you that I have been back to Free Code Camp this past week and looked at their new material and played around with it, and can honestly say it is way better!  If you want to become a Javascript developer and don't want, or can't pay $17,780 to go through Hack Reactor, then I think Free Code Camp is the best option to become a front end Javascript developer.


My biggest issues with Free Code Camp were towards the end of the map, I didn't like their Node courses and instead got a free trial to Team Treehouse and took all of the Node courses that Treehouse had.  I still want to encourage you to always think outside the box and customize the learning to code process to whatever fits your own individual learning style and needs.


I think the best thing about Free Code Camp that I am seeing is the fact that they are constantly trying to improve and make the course material better, which takes time.  In my book I mention that Free Code Camp has the best algorithm challenges for beginners that I have ever used and highly recommend using the Bonfire challenges, even if you don't want to take the rest of the Free Code Camp course.


For someone on the fence about taking the course I would keep in mind, that if you are just starting the course now, by the time you get to the back of the course material, it will have improved and gotten better and better.  I remember taking One Month Rails when it was first offered on Skillshare years ago - it sucked!  But, over time it improved and got better to the point where I now recommend it to everyone :-)


Here's the deal, as long as you are 100% sure that you want to be a Javascript developer and can put in the required time of 1,600 hours, then I highly recommend Free Code Camp.  You need to be committed and driven to complete the course, the good news is they have an online chat room where you can ask for help and get unstuck.


All in all Free Code Camp has improved, I see them really trying to make things better and feel that they are serious about making you well rounded as a developer and want people to come out of the program able to land a job.


Keep coding peeps, you can do this!

Wednesday, June 24, 2015

How to finally land a coding job: The 80/20 rule for learning to code.

When will you stop dreaming and land a coding job?




I couldn't stop throwing up, I could hear my heartbeat pounding in my ears, the radio said we had set a Virginia heat record for the day.  I had just finished shoeing 16 large draft horses, I had changed my clothes twice and still my pants and shirt were dripping with sweat.  The inside of my thighs were raw and starting to bleed.

I was about to drive home, but my client insisted that I call my wife to come pick me up as I shouldn't be driving.  I laid down in the shade, took the garden hose and turned it on and tried to cool off.  When my wife pulled up I was having a hard time saying the 's' sound, She helped me into the car, handed me an ice cold Gatorade, and insisted I drink it.  3 minutes later I vomited it all out the window onto another car.

I remember thinking how proud I was of myself as a provider as I handed my wife over $1,000 from my pocket, most of it consisting of now sweaty cash.  It also started to dawn on me that I couldn't keep doing this long term as a career, this was my 4th heatstroke in the past 3 years.


4 years later I would be sitting in one of the tallest buildings in Reston writing front end code for ZipList, the A/C was so cold my glasses would sometimes start to fog :-)  Looking back I can see that I had no idea of how to break into the I.T. world, and had no clue on what skills I needed to learn.  Having helped 30+ people in the past 2 years land QA and coding jobs, I think I can offer some keys to actually learning how to code and actually landing a job whether it's in QA or as a developer.


First know what skills are required to know for the position you want, than only focus on learning those skills.  If I wanted to land a junior Ruby on Rails position, here is what I would focus on:


Http - Know how to do a GET and POST, then an UPDATE and DELETE.

Ruby - Focus on the 20% most used core of the Ruby language.

jQuery - Skip pure Javascript, use jQuery for everything you can for now.

Rails 4.0+ - Forget Rails 3, it will only make Rails 4 seem more confusing.

Html - You need to know the basics.

Css - Know enough to be dangerous.

Sublime Text 3 Plugins - Double your coding efficiency by installing the 30 most useful plugins.

Postgres - You will be using Active Record, but you need to be able to use the database from the command line and know what's going on.

5 MOST Popular Rails Gems  - Devise, Cancan, Paperclip, Twitter-Bootstrap-Rails, Better errors...

Git - Only learn the 8 - 10 most used commands,  this is all you need for 90% of real life work.

Rvm - For keeping track of your Ruby versions.

Brew - For installing everything in an orderly way that won't conflict with other installed programs, you'll thank me later for this :-)

Firebug/Chrome Dev Tools - Learn how to find Html elements using either tool, you will need to do this everyday once you are hired.

Make a Rails app to demo - Don't make the next Facebook, make something that uses a real API like Flickr, that's what I did.

Regular Expressions - Don't stress over it, simply understand the basics for now, when in doubt use Rubular.

Unix - Don't be afraid of the command line, start doing everything from the command line, leave GUIs behind, from now on.


Anything not on this list, skip for now, you will need other skills down the road, but first learn these skills if the goal is to land a junior RoR job.  Don't play with other languages or cool new things that you see on Hacker News, stay focused on the most important areas that you need to learn and understand them well.


What do I mean: "focus on the 20% most used core of the Ruby language???"


Here's what I mean in 4 simple steps:


  • Never write your own custom Ruby methods unless you absolutely have to, always start by looking in the Ruby docs for a method that will accomplish what you are trying to do.

  • Focus on knowing Arrays and Strings, you can accomplish 90% of problems with those 2 data structures.

  • The bottom line is always try to find the easiest, simplest way to solve the problem first before trying to wad into Ruby knowledge that is way over your head.

  • If you can complete the first 30 of these challengesFree Code Camp Challenges you are at a junior dev level of algorithm proficiency, if you can do more, great!  The challenges are written in Javascript, so you will need to figure out how to convert them to Ruby :-)

  • Find a mentor or coach that will help you 10x your learning speed, I was able to meet up with local devs for coffee every other week or so, make sure you have someone who can help you get unstuck and give you clarity and focus on what is important to learn for where you are at in your Ruby knowledge base.


I am not saying do a poor job or become a crappy developer, what I am saying is focus on the most important areas, and land your first job.  6 months at a real job is worth 2 years on your own, you will learn faster than you ever thought possible. 

Don't wander around learning anything and everything that looks shiny and cool like I did.  It took me longer than it should have when I was trying to change careers from a Blacksmith/Farrier to a junior dev.  Whether you want to become a QA Engineer, a junior RoR dev, or a Mean stack Javascript developer, focus on the most important areas for the job that you are trying to get first!  


If you want to know more about the coaching I offer check out: QA Coaching




Keep coding peeps, you can do this!










Tuesday, June 23, 2015

How to use RVM and how to trouble shoot install issues with Sublime Text 3

Hey Guys!  Another day is in the books, I've heard several people asking about how confusing RVM is and also issues with getting Sublime Text 3 to install packages and symlink correctly.  I remember being confused by RVM, but actually it's really simple once you understand what it is doing.  Let me know in the comments what you think and if you want to see another video of me showing you how to do something :-)












Keep coding peeps!  You can do this!!!

Saturday, June 20, 2015

The most useful Unix command of all

Hey guys, had an awesome week at work, I love coming to the end of the work week, knowing that I have grown my skills more than they were last week :-)

With that in mind, I thought I would show you one of if not my favorite Unix command that I love using everyday!  I don't want to say the word Ninja, but you will feel like you almost have a super power when using Unix.  Grep is one of the most powerful and useful Unix commands when you understand how to use it properly.

Lots of beginners don't use Grep, because they think it is confusing and miss out of the full potential and time savings of using Grep in their day to day work.  In the video below, I will show you how to use the Faker gem, how to troubleshoot in irb, how to write a super simple Ruby loop and create 1000 names of fake data.  Next I will show you the power of Grep, and search through the data and extract the name we want and write it to a file.

The video below is 7 minutes long, but watching it will save you 7 minutes a day or more once you understand and harness the power of grep :-)







Talk to you all tomorrow :-)  Keep coding peeps!

Thursday, June 18, 2015

Why you should use Brew and Sublime Text 3

Hey guys, going to hit the bead early tonight :-)  No 1:30 a.m. stuff, thought I would show you some of my Brew and Sublime Text 3 secrets and why you should use them too!







Keep coding peeps, I'll talk to you tomorrow :-)





There is no luck, only grit.

It's 1:26am here in Northern Virginia.  I am exhausted, I want to go to bed, but I promised myself that I would write a post tonight, which got me to thinking.

All of the most successful people I know have all overcome challenges, and have worked really hard for what they have.  It also got me to thinking about one of my QA coaching students Georgi, she is studying like crazy!  4+ hours a day, I can't believe the learning progress and speed she is making, I was no where near as fast as she is.

Which made me think even further about success whether it has been in coding or my own personal life.  When I was learning how to shoe horses, all of the older farriers would always refer to me as: "Hey BOY!... get over here!"  They would play tricks on me so that I would accidentally pick up a hot horseshoe, ( because they put a hot horseshoe in with the cold horseshoes ).  I eventually had to leave the one farrier I was apprenticing with because he literally would only have me work on the most dangerous horses.  But I never gave up on my goal of learning how to shoe horses, and I eventually did and had my own business for 7.5 years, 1 year netting over $115K after taxes.

That never would have happened if I had given up.  My success had very little to do with luck and a whole lot to do with never quitting, even when I thought I would pass out from heat stroke.  Coding is no different, fighting the urge to simply watch T.V. and instead open your computer and try to write some code.

That's why I love working with Georgi, I love her work ethic.  I woke up yesterday and saw an email from her that had been sent at 1:30am in Spain time.  Don't ever give up peeps, you guys can do this, if you have to go at a slower pace, okay, just don't ever stop.  It's a lot harder to get going again from a stand still.  Everyday, open your computer and write something in your text editor, anything :-)

Good night, I talk to you tomorrow :-)


Tuesday, June 16, 2015

Basic Unix commands Video: What's the difference between copy and move?

I used to struggle with this simple command on Unix, and know that others do as well.  Sometimes the simplest things can seem confusing or complicated until you finally "get it", then it all makes sense.


In a nutshell: Copy 'cp'  and Move 'mv' do virtually the same thing Copy just keeps the file in 2 places.


I know that sounds simple, but it's good to be clear with the basics, whenever you use copy you will have 2 copies of the file.  When you use move, you will only have 1 version of the folder or file and simply move it to some other location.

This becomes confusing when you see the most common use for the move command which is actually used to rename files.  Maybe they should have a command called 'rename' instead of move.

I'll show you some examples in the video below, hopefully you will walk away from this video with better clarity of Move and Copy.  Don't get discouraged when you are new to Mac and Unix, there are so many terminal commands.  The truth is that you really only use about 12 - 15 on a daily basis, you don't have to learn ALL of Unix on day 1 :-)






Hope this helps, if you want me to make a certain video, suggest it in the comments below :-)
Keep coding peeps, you can do this!




Monday, June 15, 2015

Announcing QA Coaching and Videos Page

I am launching a 4 month QA coaching program later this week, details to follow.  I am also excited to be adding a Videos tab to my blog.  The Videos page will NOT be like other places that you have seen videos on learning how to code.

I will be adding new videos every week, the videos are not going to be very "wordy".  I am not going to talk a lot about things that have absolutely nothing about learning how to code.  I want these videos to get right to the point, very little if any introduction when I record each video.  The point is not to be rude, but to make progress and learn as absolutely quick as possible.


All the students are doing well, and keeping on my toes to try and push them as fast as possible :-)  I look forward to helping you learn how to code and learn coding tools easier through these videos.  If you want to know how to do something, put a comment on the Videos page and I will try to make a video that address your concern :-)

Check out the: "How to make a Gist from the command line" video I just put up here: Video Page

Keep coding peeps!

Tuesday, June 9, 2015

The Computer Scientist who can't code

I have a confession to make:  I can't really code.

Sure I can make little ruby scripts that go out and scrape a site and then kick off a build depending on what the data returns back.  What I mean is, I'm okay.  I'm not good at coding, I'm still learning and know enough to get the job done, although it may not be very pretty or the best way to do the task or script.

The bottom line is everyday I love learning more about coding and figuring things out.  I'm just not that good yet, give me another 10 years and maybe I'll know what I'm talking about :-)

I met a Computer Scientist who has a full blown CS degree from a respectable college and she can't code! ( I won't say where I met her or how, to keep her identity anonymous ) She was embarrassed when I asked her a question I was struggling with and she had no clue what I was talking about or suggestions of how to fix it.  I felt bad as she mumbled that she didn't really know how to code and her face blushed red.  She went on to explain how she knew a lot about computers, but not really about coding.

I quickly tried to make her feel better by showing her how my code really wasn't that good and wasn't actually written the "ruby way".

Later, I thought to myself:

"How do you get a CS degree and not be able to code???"

How can I ( a former Blacksmith ) with no college education whatsoever with only a couple of years of playing with code,  code way better than someone with a CS degree?  How does that happen?

I felt better about my coding abilities, not that I'm any good.  I just see that my efforts to get better most be working at least a little bit.

My next thought was:

"Why did you get a CS degree if you didn't love coding?"

I don't have the answers to these questions, only that I think people shouldn't love getting a degree, but instead should love learning how to code.  Also I think I will stop apologizing for my lack of formal credentials even if I'm not very good at coding just yet.  I am going to embrace where I am on the learning to code journey even if I still have a long way to go :-)


QA Coaching UPDATE:

It is with a heavy heart that I must tell you both of my QA coaching students that I was coaching for free, have dropped out after 1 week :-(  Both quit for various reasons, and I wish them all the best of luck with what they are doing.  Both had to drop out for similar reasons though:

They couldn't put in the minimum required 21 hours per week of studying.

I have already filled the 2 free 4 month QA coaching slots with 2 new people Georgi and John.  I will say that if these 2 people drop out, I won't be doing anymore free QA coaching sessions.  I wanted to show people real live examples of how to land an entry level QA job in 3 - 4 months putting in 21 hours a week of studying.

Yes it is hard work, but you'll have the basics of coding down and your first job.  I think that is well worth the effort.  I am going to be starting a paid QA coaching program in the next few weeks for anyone who wants to land an entry level QA job in 3 - 4 months AND can put in the required 21 hours of studying per week!

Keep coding peeps, you can do this!!!




Thursday, June 4, 2015

Qa student update, Monthly Google Hangout?

Hey all!

I'm sooo excited to give you an update on the first 4 days of the QA coaching with Roger and Dexter :-)
They are both doing very well, Roger is leading the charge and is further along then Dexter, but both are doing well.  One issue that students come across and realize when they actually get started trying to get hired, and study, is how hard, and how much effort it takes to put in 21 - 30 hours per week!

I think that hit home this week, but I feel impressed with the 2 students I picked and their chances of landing a QA job within the 4 month timeline.  Roger is having some issues with his computer and ordered another one online last night.  Dexter was borrowing a Mac and is now purchasing his own. We are doing our first Google Hangout tomorrow so wish us luck :-)

I've gotten several emails from people asking me to coach them in the past 3 days.  So I wanted to clarify and throw some ideas out to you.  My original plan was to officially launch a QA Coaching 4 month bootcamp  ( or whatever you want to call it ).  With the goal to have 100% of students land entry level QA jobs by the end of 4 months or else I won't consider my coaching a success.

People have been emailing me and saying: "How much would you charge me to help me get a QA job? " Here's the deal, I don't know.  So I put it to you guys:

Would you mind shooting me an email with what you think would be reasonable to charge someone for 4 months of QA coaching.  Assuming at the end of 4 months the student does in fact land a job making $50K.  I really want feedback on this, and will not be offended, no matter what you say in the email, I just really want your opinion on this.

Lastly I want to help beginners new to coding by doing a monthly Google Hangout.  I'm not charging a penny or anything like that.  If I get 10 emails from people saying that they would like to be on the 1 hour Google Hangout with me, then I'll do it.  If I don't get at least 10 people interested, I won't host the Hangout, simple as that :-)

I was thinking of helping beginner's get their dev environment set up, since 33% of people new to learning how to code quit while still trying to get it set up.

I thought I would cover some topics like this:

Brew
Sublime Text 3 
Plugins
Basic Unix Commands
Basic Regex

Stuff like that, I'm not going to be making a Rails app online or anything like that, just troubleshooting and answering questions.  Well, that's all I've got, let me know if this is something you guys want me to do.  I'll do the Google Hangout on a first come basis.  Whoever sends me an email first, will be in the first Hangout, so I am fair to everyone :-)


Keep coding peeps!  You can do this :-)

Monday, June 1, 2015

How to get an entry level qa job

Learning to code is fun, but can you get a a dev job with your new found coding skills?  Maybe, maybe not.  Here's how to land an entry level QA job in 3 - 4 months.

First things first, forget all of the things that you read online from QA training companies that tell you that in order to land an entry level QA job you need more degrees or training certificates!  Nothing could be further from the truth!  Here's what you really need:


Ability to market yourself
People skills
Interviewing skills
technical skills


In that order!  Everyone trying to get hired does it all wrong, they only focus on the technical skills.  Yes you need technical skills, but when trying to land an entry level QA job, it's a lot more on who you are than what you know.  I am sure this will tick of a whole bunch of people who have master's degrees and still can't get a job, but the truth is the key to landing an entry level QA job is not that hard if you are willing to think outside the box.


Most people trying to land an entry level QA job wake up, jump online and check their email for any replies to the resumes they sent out the day before.  Then they go onto Dice, Indeed, Monster, and Craigslist.com, and spam the heck out of any and all jobs that are even close to what they want.

Guess what?


That method no longer works, you are just 1 resume on a pile of thousands, everyone is doing it wrong, stop fighting for the 13% - 17% of jobs listed online, and instead focus on tapping into the 80%+ of jobs in the hidden job market!


HOW? ... I'm glad you asked :-)


How are you remarkable???  If you start talking about your degrees and education, you just failed.  Let me rephrase the question:

"How are you remarkable WITHOUT mentioning your degrees, or education?"

You can't stand out from the crowd when you are wearing camouflage.  You need to find out what it is that makes you unique and then flaunt it!  Don't be obnoxious, but be proud of the fact that you were self employed for 7.5 years and used to be a Blacksmith, don't try to hide that!

The above is really the key to getting hired, but I'll give you 7 practical ways to actually get noticed and hired for entry level QA job.


1. Learn the basics of programming.
2. Learn Ruby it's the easiest and best scripting language out there.
3. Join local meetup groups and attend regularly.
4. Write a basic testing tool.
5. Give a short presentation at a local meetup group ( 5 - 10 minutes ) and show other coding "noobs" how you made your testing script.
6.  At the end of your talk mention that you want to get a QA job, and to keep you in mind.
7.  Repeat steps 1 - 6


IF you actively ADD VALUE to a local community and know the basics of coding, know how to interview and don't treat people like a butt, you will land an entry level QA job in no time!

I've helped over 30+ people land entry level QA jobs and junior dev jobs using mainly the above steps, along with some coaching from me.  MOST people that don't get hired, don't get hired because they only do 2 or 3 of the 6 steps above.  You can't get hired if you aren't willing to get up in front of a group of 50+ people and give a short talk! 


You don't need another degree or certificate to get hired as an entry level QA Engineer.  Most of the skills you will learn on the job and will be taught be the lead QA Engineer.  95% of people will read this article and agree, BUT will wake up tomorrow and spam job boards, don't let that be you!  If you want massive positive change in your life, it takes effort, it takes being willing to crawl out of your shell!  If you need help I will be offering a 4 month QA coaching package soon for people who are serious and want to land an entry level QA job in 4 months or less! : http://joshuakemp.blogspot.com/p/coaching.html

Keep learning to code, you can do this!!!

Sunday, May 31, 2015

Free 4 month QA coaching winners!

The winners of the 4 month free QA coaching program are:

1.  Dexter of San Francisco, CA is an entrepreneur which is one of the things that impressed me about him, his site is pretty cool too :-)  http://diyelectricskateboard.com/

2.  Roger of Vacaville, CA is a 54 year old printer repairman, who wants to show the world that not only young people can land I.T. jobs!

Both of these peeps assure me that they aren't quitters and will put in the 21 hours minimum of studying each week.  I am SO excited to help them land QA jobs in 4 months or less!!!


Follow along with the blog for updates of Dexter and Roger as I coach them along and they land their QA jobs 4 months from now:

October 1st!  ( affectionately known as D-DAY )

I'm sorry I couldn't pick more people to coach for free, there were a lot of great people who applied!


I'm also excited to announce the re-launch of my book: "No Degree, No Problem"

It took me 3 years to write this book.  It wasn't the writing that took so long... It was the learning.  I had to work at 2 companies, read hundreds of emails from people learning how to code.  Now with 4x  the content as the original version, this is the fastest, easiest way to land a Ruby on Rails position!

Special thanks to Emily Foster, owner of Raven Brooke Studios, for designing and making the new cover for the book.  I couldn't be happier and highly recommend you to like her Facebook, and to check out her shop :-)



I LOVE IT!

I rarely ask for retweets or mentions, but this is the time I will ask for a mention or retweet on Twitter or Facebook :-)  Check out my book if you are serious about landing a Rails position!

Keep coding peeps!  You can do this!!!


Thursday, May 28, 2015

4 Days left to apply for the free 4 month QA Coaching to land a job making $50K

I didn't intend on writing this post, but I've received several emails from people now asking why I haven't responded back to them.  Here's the deal, if I have not responded to your email, send it again.  I don't know if something is acting up with my Gmail or what caused it.  Just know that I have already received a ton of great applicants, but want to make sure you get a chance to apply as well.

Above all, I just want to make sure that people don't think I am rudely ignoring them :-(
So far I've gotten applications from New York to San Francisco from Spain to Georgia, I love it! 


I was tempted to close the application process because I have so many good people to choose from, but I thought that wouldn't be fair.  May 31st in the afternoon I will email the winners, till then you can apply.  Remember don't just talk about your college degree,  find a way to prove how remarkable you are, if your degree was so amazing, you wouldn't need my help to land a job :-)

I can't wait to get started with this program and show people all over the world that this isn't rocket science and you can get hired for an entry level QA job in 3 - 4 months :-)

Keep coding peeps!