Posts

Showing posts from February, 2018

Week 4 - Session 2 - Group Programming Workshop - Virtual Pet

Image
blog image source Group exercise - make our own JavaScript virtual pets, where we will  able to give it a name, feed it, take it for walks. It's going to be great.   The pets were going to make will have the following features: You can give them a name They can get older As they get older, they get hungrier and less fit You can walk your pet to increase its fitness You can feed your pet to decrease its hunger You can talk to your pet to see if it needs feeding or walking Learning objectives from this exercise: What constructor function is? What an object's prototype is? Difference between an object literal and an object created using a constructor function? Difference between a function and a method? What is meant by a state? GitHub Virtual Pet exercise -  https://github.com/SharifCoding/virtual-pet

Week 4 - Session 1 - Constructor and Prototype

Image
Creating multiple objects can be repetitive/tedious. It’s easy to make mistakes when creating new objects, and storing the same method over and over for every object is inefficient. This is where Constructor and Prototype come in. Constructor - blueprint for what properties our object will have. When we create an instance of our object, it will have these properties with values set (in this case, from the parameters). Prototype - blueprint for what methods our instance objects will have access to. Any instances of the object will look to their prototype for methods. Javascript Constructors and Prototypes - http://tobyho.com/2010/11/22/javascript-constructors-and/ Stack Overflow (Trying to understand the difference between prototype and constructor in JavaScript) - https://stackoverflow.com/questions/28600238/trying-to-understand-the-difference-between-prototype-and-constructor-in-javascr Stack Overflow (JavaScript inheritance and the constructor property) - https://stackoverflow.com/

Week 3 - Session 2 - Group Programming Workshop - Till Application

Image
blog image source Group exercise - to build a till application that allows to; find an item by scanning in the barcode, add an item to the current basket, get total of items in the basket, and remove any item from a basket by scanning the barcode. Requirements: Find an item by barcode Add an item to the basket Get total of items in the basket Remove item from the basket by barcode This exercise will test the following skillsets: CLI - Git, npm, and jest. JavaScript - Arrays, and Objects. GitHub Till exercise -  https://github.com/SharifCoding/shopping-till

Test snippets of code with JS Bin

Image
JS Bin is an open source collaborative web development debugging tool specifically designed to help JavaScript and CSS folk test snippets of code, within some context, and debug the code collaboratively. What can JS Bin do? Write code and have it both save in real-time, but also render a full preview in real-time Help debug other people's JavaScript, HTML or CSS by sharing and editing urls CodeCast - where you share what you're typing in JS Bin in real-time Remote rendering - view the output of your JS Bin on any device on any platform, updating in real-time Processors, including: coffee-script, LESS, Markdown and Jade. Debug remote Ajax calls JS Bin - https://jsbin.com/ GitHub - https://github.com/jsbin/jsbin

Week 3 - Session 1 - Finding the Answers

Image
blog image source Don't worry if you get lost when programming, instead get comfortable not knowing everything but get good at asking, and finding answers to your questions. Most importantly, don’t copy and paste code examples, understand the code and the thinking behind it. As good practice, type the example line by line. U nderstand what is going on and take time to play around in Node  CLI  or the browser  dev  tools. Three tips for becoming the king of finding answers: Effective Googling - Always include the language or technology in your query e.g. “javascript get array length”. Be concise - “javascript get array length”. Exclude information that might only be specific to you.  StackOverflow - Question at the top - solutions underneath. The best answer shouldn’t always be the best answer! Check the vote counts and read the comments. Asking a tutor or each other - If you ask a tutor or another student for help, try and be as specific as you can, and provide the whole

Week 3 - Session 1 - Clean Code

Image
In general, many developers  do not write clean code,  developers job is to deliver a product that works, and on time. However the  cleaner your code, the better you'll be seen as a professional, and the easier it will be for you to make adjustments, correct bugs, and implement new features in the future. Clean code minimizes the time spent reading and attempting to understand the code, which takes up a large portion of a developer’s day to day operations.  Writing clean code not only makes the job of software developers easier, it ultimately translates into reduced expenses for the business. 5 Reasons You Should be Writing Clean Code - https://www.wlion.com/blog/5-reasons-you-should-be-writing-clean-code/

Exercise - Codewars - Achieve mastery through challenge

Image
Codewars is a community of developers, who that train on improving their development skills by training with other developers and helping each other get better through practice. Codewars -  https://www.codewars.com/ Codewars GitHub -  https://github.com/Codewars/codewars.com

"You Don't Know JS" (book series)

Image
This is a series of free ebooks diving deep into the core mechanisms of the JavaScript language. GitHub -  https://github.com/getify/You-Dont-Know-JS Kickstarter -  https://www.kickstarter.com/projects/getify/you-dont-know-js-book-series

TypeRacer – The Global Typing Competition

Image
Increase your typing speed while racing against others. The award-winning online typing competition, TypeRacer, allows people to race each-other by typing quotes from books, movies, and songs. It is the first multiplayer typing game on the web. TypeRacer –  http://play.typeracer.com/

Week 2 - Session 2 - npm and Jest

Image
npm  (Node Package Manager) is a  package manager  for the  JavaScript  programming language.  It is used to install, upgrade, configure, and remove software packages in a quickly and consistently.  It consists of three distinct components,  the website,  the registry, and  the Command Line Interface (CLI). Jest is a  JavaScript testing framework  used to test JavaScript code. It is d eveloped by Facebook and also used by Facebook to test all JavaScript code. This framework requires zero configuration and works out of the box. npm -  https://www.npmjs.com/ Jest -  https://facebook.github.io/jest/

Week 2 - Session 1 - JavaScript Fundamentals

Image
A JavaScript program is essentially a list of instructions for the computer to follow in order to achieve whatever useful thing the program is required to do.  Each instruction in a program is called a statement.  In JavaScript, statements are composed of values , operators , expressions and keywords , and end with a semicolon. Values: there are two types of values in JavaScript, literal values ( Numbers,  Strings,  Booleans,  Arrays,  Objects ), and variable values ( var, const, and let ). Operators: these are special symbols that are used to combine two values and create a new one. Arithmetic, String, Logical, Comparison, and Assignment operators. Expressions: an expression is a combination of literal values, variables, and operators, which evaluates to a single value. Keywords: these are basically reserved words that perform special actions and cannot be used as variable names. JavaScript statements can be grouped together in blocks using curly braces ({}).  Block

Exercise - The Command Line Murders

.OOOOOOOOOOOOOOO @@ @@ OOOOOOOOOOOOOOOO. OOOOOOOOOOOOOOOO @@ @@ OOOOOOOOOOOOOOOO OOOOOOOOOO'''''' @@ @@ ```````OOOOOOOOO OOOOO'' aaa@@@@@@@@@@@@@@@@@@@@""" """""""""@@aaaa `OOOO OOOOO,""""@@@@@@@@@@@@@@"""" a@"" OOOA OOOOOOOOOoooooo, |OOoooooOOOOOS OOOOOOOOOOOOOOOOo, |OOOOOOOOOOOOC OOOOOOOOOOOOOOOOOO ,|OOOOOOOOOOOOI OOOOOOOOOOOOOOOOOO @ THE |OOOOOOOOOOOOOI OOOOOOOOOOOOOOOOO'@ COMMAND OOOOOOOOOOOOOOb OOOOOOOOOOOOOOO'a' LINE |OOOOOOOOOOOOOy OOOOOOOOOOOOOO'&#

My experience with Manchester Codes

Image
I have been a Quality Assurance tester for five years, testing from a User point of view, but not from a Developer view. So the next step was to look into development.  I have come across multiple IT courses and have decided to enrol with  @MCRcodes .  This is an evening part-time coding boot camp based in central Manchester which runs for 24 weeks. Week 0 (January 2018) - Met up with Joe (Founder) for an informal interview to discuss suitability for me to enrol in the course. He has been very friendly and explained everything very clearly. Did quick JavaScript test, I initially panicked a little, however after few clues from Joe able to complete the test with ease. About MCRcodes... Week 1 to 4 (February 2018) - I have learned a lot in my first month in boot camp, most importantly is how much commitment is required to do this course. You will have to study minimum 20 hours each week, and each time you have free time, code! even if it's 30 minutes. Topics that have been cover

Week 1 - Session 2 - Command Line Interface

Image
blog image source For any software engineer, it is an essential skill to know how to use the command line interface (CLI or terminal). Installing software, using git, running your code, and even writing code are just some of the things we will be using the CLI for. A GUI (graphical user interface) is often available as a more accessible, user-friendly way of interacting with the computer, but it is crucial to be comfortable interacting directly with the computer. Learn the Command Line on Codecademy -  https://www.codecademy.com/learn/learn-the-command-line

Make your terminal and shell look great!

Image
Since you are going to be using the terminal as a developer, you should get the best from your terminal. Make your coding easy  day in day out. Badassify your terminal and shell -  http://jilles.me/badassify-your-terminal-and-shell/

Generating an SSH key and adding it to GitHub

Image
SSH (Secure Socket Shell) is a network protocol that allows us to connect securely to remote computers (servers). SSH keys are used to authenticate the user on the remote server after a secure connection has been established. Adding the SSH key to GitHub -  https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

Week 1 - Session 1 - Getting Set Up

Image
blog image source To get started it is recommended to have access to a laptop with a screen size of at least 13 inches, and with 4GB RAM, running either Mac OSX or Ubuntu. If you are a Windows user, then please install Ubuntu alongside Windows, as it's more developer friendly. We're going to need to get a few things set up now to save us time in future sessions. Installing Ubuntu - https://tutorials.ubuntu.com/tutorial/tutorial-install-ubuntu-desktop#0 - **Windows Users only - STRONGLY RECOMMENDED** Download Chrome - https://www.google.ca/chrome/browser/desktop/index.html - Ubuntu users might want to follow - https://askubuntu.com/a/510063 Installing Homebrew - https://brew.sh/ - **Mac users only** Installing Node.js and npm - https://nodejs.org/en/ Installing Git - https://git-scm.com/downloads Generating an SSH key and adding it to GitHub - https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/ Installing VSCode - https://

Exercise - Learn Git in 15 minutes?

Image
Git  is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git Tutorial -  https://try.github.io/

Why use OSX over Windows for programming?

Image
The primary reason for using OSX over Windows is because y ou can program for any platform on an OSX (Windows/Linux/OSX/iOS/Android). Also  the popularity of the iPhone / iPad, Developers must use OSX in order to develop for iOS devices. Additionally, you can run  Windows in a virtual machine or Apple Boot Camp app, having best of both worlds. Stack Overflow survey for prefer OS Bash - Programmers  prefer the Bash command line to Window’s alternatives like Powershell. You can run Bash on Windows, but the filesystem underneath isn’t the same, so it’s ultimately not the same native experience. Reliable DPI Scaling -  DPI scaling is reliable on Mac. On Windows, some apps have yet to add support. Long-term Support  -  Running old Apple machines on the latest version of macOS is common. Where this is harder to do on Windows. Peripherals  -  Apple’s small manicured hardware ecosystem helps assure long-term driver support. Managed Ecosystem = Reliability -  Apple only supports

Learn to code with Manchester Codes

Image
Learn to code with the UK’s first part-time best value coding bootcamp, Manchester Codes. Attend classes twice a week for three hours between 6.30pm and 9.30pm. Part-time learning with no loss of earnings. No prior coding knowledge is required. MCR codes mission statement: You may think that you have to be a mathematician to learn how to code - Manchester Codes is a part-time coding bootcamp which will prove to you otherwise. Over the course of 24 weeks, we will teach you the fundamentals of software development - how to make websites and applications for the web, mobile, and even Amazon's Alexa. By the end of the course, you will have learnt a new skill set and built up a portfolio that will not only make you highly attractive to employers but will allow you the freedom to go on and start your own venture. Coding is the future - a future that you can be part of, and we will be there for you every step of the way! Find out more - https://mcr.codes/