#100DaysOfCode

Just finished the last project I have with Bloc.io and have decided to start another project…or projects. Actually, “Commitment” might be a better word for it. As I had started Free Code Camp before Bloc my plan is to finish that and then start with a series of projects which I will determine later what exactly they will be.

Now I found some Rules located here Rules of the 100 Days Of Code Challenge, however, I will be changing them a tad listed below.

Commitment

  • I will code for at least an hour every day for the next 100 days.
  • I will log everyday what exactly I do on this sheet located here
  • I will tweet my progress every day using #100daysofcode.

Now here is where I will be diverging. Rules state to push code to GitHub every day. However, that seems like its gamification at its lowest level. And while I am not necessarily against that in some instances at this time if I am doing Free Code Camp, Codewars Kata, or possibly little 1 off websites on Codepen.io then pushing code to Github might not be possible. I will still be coding per say but it may be in a different format.

Day 1, Done.

On to a new chapter!!!

Finding that New Career

While I am closing in on the Graduation date of Bloc, early June, I am starting to feel a little pressure to put out resumes, build a network, etc etc etc.

I hate job hunting, despise it even. So my promise is to be real and true to myself. Not hard as I am kinda blunt…to put it nicely.

Let’s just hope people take a shine to honesty…

My biggest problem is a lack of experience and some of the horror stories you hear about interviews, such as whiteboarding. So I think whiteboarding as a whole is a failed way to conduct any interview for a jr dev. I have interviewed people in other industries, mostly retail and customer service. And while going into a Tech Industry is different I still believe that any interview that is stressful will never show any person to their true potential.

Really? Why put some person in front of a whiteboard to solve a Fizz Buzz problem? They could have just memorized it that day, or the day before, or the day before that.

What I would love to see will probably not happen until such time as I can make it happen in the industry.

Bring a candidate in and see if it feels like they will ‘fit in’ to your workspace. Then look through the projects they have done (Github, Personal website, etc) and decide if they should do something like a one off. Ask them to create a button, form, template, etc.

I know I am new to the tech industry and yet I have already had 3 instances where I felt like the person was just not..in it. Keywords and snazzy language needed on the resume just to get them to look at you sideways…it made me want to take a shower after 1 talk with a recruiter.

Well, I will get off my soapbox for now. Bloc taught me large concepts and how to complete an entire project. And while I have experience with that curriculum I am going to try and do the Free Code Camp Front End Program. This will off some additional projects such as Weather API, Random Quote Machine, etc. They appear to be fun and should be fast to code up. They would also demonstrate that I will have a strong handle on Front End dev, and lets face it…anything helps.

Bloc Project chosen

Finally decided what to do with my Bloc Project which turns out to be a not-so-business like addition.

First, let me explain that I am a HUGE ARPG Gamer, ever since Commodore 64 Bards Tale, Zork, etc. Current obsession, and has been for about 5 years now, is Path of Exile, an online Multi-player ARPG.

I had a few projects that were all standard fare that I was considering for my Capstone project such as; SAAS app for vehicle estimates to be evaluated, a website that would scroll different articles (matrix style) that may help people get out of their usual ‘bubble’ and get some new experiences, an app for homeowners to keep all documentation in 1 place, a GUI reporting database that allows business owners to just hook up any database and be presented options on what report to build based on the database tables, etc…

My Mentor pointed me in a different direction though and I am actually pleased he did. I will be building something fun but will allow me to learn some new things. Bloc program teaches you JS with Angular so I will be completing this project in React. Which means I need to learn this while doing the project, should be interesting, to say the least.Basic project is going to be a Random Build Generator for Path of Exile

The project is going to be a Random Build Generator for Path of Exile that will challenge a person to use a random class, keystones, unique, etc. It will provide the information in a single page app which I have wireframed up to be something like this.

Now, you could do the entire thing with an rng function based on manually created arrays that hold all the data to make it somewhat easy.However, that wouldn’t hold up over time. Instead, I will be doing it based on searching through API provided by GGG and possibly through the Mediawiki API for icon graphics and descriptions.

However, that wouldn’t hold up over time. Instead, I will be doing it based on searching through API provided by GGG and possibly through the Mediawiki API for icon graphics and descriptions. All wrapped up in a single page React app with some graphics and allow a different way for people to be challenged.

I will probably still do some extra items if I have time such as a custom poebuilder that will highlight main routes to keystones from starter position, or search for the gems/unique’s you need and provide a ‘whisper to buy’ link like other poe trade sites.

But overall I think this is a good foray into Software development while still having a little fun.

I mean isn’t that what life is about is to enjoy yourself?

Bloc Project phase

I am nearing the end of my Bloc program and just when I start feeling like I ‘Get it’ with some concepts something rears up and hits me upside the head. This time it is right at the start of my Project phase.

You basically get to pick from a list a couple featured programs to such as the  ‘To-do list’ or another (Called Blocmarks) that allows users to send, manage and share bookmarks.

You are basically off on your own to complete User Stories that are listed before you. Such as login, Topics CRUD, User Authorization, User Profiles, etc.

Being left in the deep-end but you still have a Mentor to guide you and point you in the right direction it still forces you to try, try, and try again.

Can be frustrating at times but you always learn something new.

1st project I have decided to complete is called “Blocitoff”, app that allows users to create self-destructing to-do lists. This focuses on Backend Specialization with Ruby on Rails with a simple Bootstrap design just making sure I know the basics of CRUD and using Rspec testing.

2nd project I am still trying to work out. I want to continue with RoR but I think I should do something with JS, mainly just to cement some basic skills. If I do go the route of a Javascript project I believe I will try and do it in ES6 with React. We shall see.

Practicing every day

During a recent talk with an Alum from Bloc I was advised that I needed to ‘Think like a programmer’. The explanation was training my brain with problems through Codewars, hackerrank, codeeval, codechef, etc. Mainly any site that is reputable, has a smorgasbord of problems that allow me to think through, and solve, basic to more advanced Algorithms.

So I made it my pledge to do a couple Codewars Kata every day to change my thinking.

Today I spent a better part of an hour trying to solve a multi-dimensional array problem in Codewars titled “How many stairs will Suzuki climb in 20 years?”

I finished it, but with about 6 lines of code. Like always I look through the All solutions and Best Practices of other individuals, and viola I see that the flatten public class method pretty much solves what I was trying to do in 1 word.

Just a helpful reminder that even while struggling to complete something that may take lines of code you will always be able to learn something from the same problem later.

Failing…

Took the end of course assessment last week and failed it.

Cannot blame anyone but myself. However, I was certain that I was told/advised it would be on just a specific topic. Unfortunately, lack of studying everything else rendered me inept when it came to certain questions and when it came to actually doing code I froze up.

Feels better admitting that failing this isn’t the end of the world. No one, ever, successfully did everything right the first time. Just have to get up, dust yourself off, and move forward.

What I usually dislike about any kind of technical test now that I have had 3 of them is the questions. Book questions are fine for me.

It’s the code question, maybe it’s just because I’m new and still learning but I kinda hate these ‘whiteboard’ tests. Interviews are tough enough, both for the Interviewer and Interviewee. I admit, I don’t have experience at a coding job as of yet but I have hired employees for other companies, trained, and even the occasional firing. And while I can certainly see that there is going to be some sort of nuance in hiring for a technical position it would appear that to me, it’s broken.

For now, though I need to pass this test so I will go back and look through my incorrect answers, figure out what I need to do in the future, and continue using Codewars and other free sites to practice coming up with simple coding exercises.

New Year, New thoughts!!

After a refreshing Holiday vacation, I have been thinking about the dreaded New Years resolutions that so many people make and just let fall to the wayside. To be honest I have had my fair share of doing that also…

With my Web Developer Track in full swing again with Bloc one of my Goals is to make a weekly little post about what I have learned. Sounds easy but I have a hard time expressing myself so this will be difficult to express myself in an open forum. I like to repress those feelings and stick them in a dark hole so nobody can see them, easier for everyone to think I know what I am doing….lol.

Here’s to a New Year of Experiences and Knowledge that can help me prosper in the long run!

Update on Ubuntu Noob

So after using the VM software awhile I started to run into issues with the Windows BSOD. VM Software kept crashing my system due to several errors which after much searching I could not for the life of me fix.

At that point I decided to do a Dual Boot with Windows / Ubuntu on my computer and have used is successfully for the past week. Except for a tiny issue with the Time on my computer (I used this article to fix it) I have had no problems.

Honestly, if I didn’t have to have Windows to play a certain computer game that I am addicted too I wouldn’t use Windows anymore.

The best thing about this entire situation with Dual Booting is now I have another tool under my belt. Basically setting up an entire development on my computer from the ground up. That may not seem like much but there does seem to be a bit of a learning curve from using let’s say Cloud9 or any cloud-based development service to using your own Desktop.

I don’t have any experience with a Mac but I would have to say anyone trying to learn Web Development, at any level, should really use a Linux system. This has really helped me learn more command line than the entire Bloc course so far. The simple act of being able to change anything is liberating. Also, if something crashes, which has happened more than a couple times, it doesn’t crash the entire system. At least it hasn’t so far.

New Dev Environment

Before I start another project through Bloc I decided to take a look at my dev environment. I have been advised, and seen suggestions, that using Cloud9 permanently may not be the best thing to do. Especially while learning the entire dev process.

Considering I have always used Windows I decided to look into a couple different things.

  • Buy a Mac
    • Not feasible at this time due to $$
  • Buy a laptop and install Ubuntu
    • Again not feasible due to $$
  • Dual Boot my windows machine with Ubuntu
    • Strong contender but still have some hesitation
  • Use a Virtual Machine and use Ubuntu through that.
    • Tried it, and it works. With a 2 monitor setup can still have access to VM on 1 monitor and Windows on another without have to tab in-between.

In the end, I came to the decision to use Oracle VM Virtual Box and installed Ubuntu 16.04. Helpful instructions to install the Oracle VM was found through YouTube located here https://youtu.be/2CqmbvkyS4E?list=PLCNrI4VaIK4ZscbomUE35pnb1k4kDUGFu

Of course, YMMV and you can more than likely find many tuts available elsewhere but it was the first thing that popped up and seems to hit the majority of options.

Been running through it and will need to learn quite a few more things with this system as it is different from Windows.

Oh and it was fairly easy to install all Ruby, RoR, etc with the helpful site of http://installrails.com/ which runs through, from what I can see, pretty much everything.

 

 

1st Post on a new blog

When I first joined the Bloc Web Developer Track is was suggested that I keep a blog. Well, couple months go by and I was trucking through the program and I finally go to putting one up. Whether or not anyone reads this will be the question.

Had a friend tell me “Blog is easy just dump your mind onto the internet and someone, somewhere might actually read it.”

It is my purpose to use this blog for the remainder of my Mentorship program through Bloc as a “brain dump”. If someone finds a nugget of info for them to use then by all means, use it.