JakartaJS - How I Learn Javascript From Basic

Preview:

Citation preview

copyright © 2016 irfan maulana for jakartajs

HOW I LEARN JAVASCRIPT FROM BASIC

SHARE JAVASCRIPT LEARNING EXPERIENCE BY IRFAN MAULANA

copyright © 2016 irfan maulana for jakartajs

About me• Name : Irfan Maulana• Work at Blibli.com as Software Development

Engineer• Has been code Javascript for at least 3 years

copyright © 2016 irfan maulana for jakartajs

Intro• Are you developer before ?• Are you new with Javascript ?• Are you developer that want learn Javascript ?

copyright © 2016 irfan maulana for jakartajs

Getting know JSJavaScript is a high-level, dynamic, untyped, and interpreted programming language.(https://en.wikipedia.org/wiki/JavaScript)

copyright © 2016 irfan maulana for jakartajs

JS popularity

Source : http://stackoverflow.com

copyright © 2016 irfan maulana for jakartajs

Reason to love JS• Its Free and (NO) need engine• Simple and Easy to learn• Lightweight and Fast to code• Front & Back side coverage• Third party library• Growth community and docs

copyright © 2016 irfan maulana for jakartajs

My stairway to JS• I am Java Developer• Spent all time in Java environment• Project idle - helping frontend with JS

Framework• Learning in hard way for getting know

JS• At least 2 years until very familiar with

JS• Quit job, and get new job by JS

experience

copyright © 2016 irfan maulana for jakartajs

Why I learn JS ?• Job responsibility, push me hard

learn• I wanna be a “rockstar” when

doing my job• JS is more young than Java• I see big opportunity in JS• Java developer with JS ability is

better

copyright © 2016 irfan maulana for jakartajs

How I learn JS from Java ?• It’s more easy If you have write some code

before• I don’t think about variable types for first• I don’t need to create protected, private or

public• I start with define all my function globally• I don’t need to think object oriented for

first• Same with Java, just different syntax (learn

syntax)• Learn back with javascript OOP

copyright © 2016 irfan maulana for jakartajs

JS Nightmare• There is no a good standard

for code convention in JS.• It’s hard to read JS structure.• Too much free role, like

same initialization, unsafe type, free passing.• Some browser support

limitation

copyright © 2016 irfan maulana for jakartajs

My some little error• Have no consistency in naming

file, structure, function, variable• Using == instead ===• Not initialize variable with its

type• Do logic without checking its

undefined or null• Create global anonymous

function in un-relevant file• Create un-reusable function with

almost same function• Have not debug it

copyright © 2016 irfan maulana for jakartajs

“Whatever your programming language,

Good algorithms are always better than super computers”

copyright © 2016 irfan maulana for jakartajs

Here some of our problem in learning new programming language…

copyright © 2016 irfan maulana for jakartajs

#1 Not enough time

We don’t give time (and sometimes the motivation) to learn.

Good motivation will lead you to spent more time in learning.

copyright © 2016 irfan maulana for jakartajs

#2 Give up

We always give up too soon, without wanna know if we can do it with some little hard work in the beginning.

All great people in your environment is start with hard work and hard learning to be like now.

copyright © 2016 irfan maulana for jakartajs

#3 Forgetting

We forget too quickly about what we learn.

Repetitive learn if you feel weak in remembering anything.

copyright © 2016 irfan maulana for jakartajs

#4 Same Mistake

Do some mistakes in leaning are normal, but when make same repetitive mistake, this is a serious problem.

copyright © 2016 irfan maulana for jakartajs

#5 Lazy to refer

We are too lazy to refer what we learn into primary sources that will make us having more good insight

copyright © 2016 irfan maulana for jakartajs

#6 Don’t Practice

We sometime like to read about technical concept, tutorial or sample of others work.But thinking that we can understand anything without doing, practice, or make some sample is a wrong way.

copyright © 2016 irfan maulana for jakartajs

My Cheat Sheet• Read code regularly with rhythm• Run through it everyday• When found a problem, try to solved

it, loop trial and error• Google it, see stackoverflow, ask your

close friend or mentor • Put in note when you found a diamond• Focus in one problem at the time• Share with other• Never stop learning• Don’t practice to hard

copyright © 2016 irfan maulana for jakartajs

You Must Try in JS• Learn Javascript basic (datatype,

function, loop, flow, etc) • Get online courses• Create your own code and learn to

debug• Build something!• Learning some library or framework• Fix your knowledge for best practice

and high performance code• Power up your skill

copyright © 2016 irfan maulana for jakartajs

Here some of my weapons…

copyright © 2016 irfan maulana for jakartajs

Learn basic concept,syntax, and best practice

• Javascript For Cats : - learn a very basic of javascript code for fresh programmer• You Don’t Know JS

- learn concept, syntax and best practice of javascript • JS Style Guide

- Javascript code convention- standard to a good code

copyright © 2016 irfan maulana for jakartajs

Javascript for Cats

copyright © 2016 irfan maulana for jakartajs

You Don’t Know JS

copyright © 2016 irfan maulana for jakartajs

JS Style Guide

copyright © 2016 irfan maulana for jakartajs

Stackoverflow• Forum Q&A for getting know problem solving from

other people that face the same problem.• If you not found anything, you can make some

question.• Usually You will get the answer in days.

copyright © 2016 irfan maulana for jakartajs

Stackoverflow

copyright © 2016 irfan maulana for jakartajs

Facebook Group• You can free to ask in public forum about some

problem here even in bahasa. • Fact, there are many a good developer that will

help you if your question is relevant.• Don’t ever post un-relevant question here.• You can found the answer just in minute.

copyright © 2016 irfan maulana for jakartajs

Facebook Group

copyright © 2016 irfan maulana for jakartajs

Toolkit• Sublime or Jetbrain WebStorm (Javascript IDE)• Firebug or Chrome Developer Console• Angular Inspector, Sencha App Inspector• JSON and XML formatter• Postman• Mobile and Tablet simulator• Github• Google Keep

copyright © 2016 irfan maulana for jakartajs

“It’s never been easy to learn something new, but there are no hard things to do when you think you can do then you do

with your best”

copyright © 2016 irfan maulana for jakartajs

If I can, You can

copyright © 2016 irfan maulana for jakartajs

Q & A• Feel free to ask

copyright © 2016 irfan maulana for jakartajs

Source Article• https://sivers.org/learn-js• http://blog.learntoprogram.tv/five-resons-javascript-important-program

ming-language-learn/• http://www.jackkinsella.ie/2011/12/05/janki-method.html • http://stackoverflow.com/research/developer-survey-2015#tech-super • https://github.com/getify/You-Dont-Know-JS• http://jsforcats.com/ • https://github.com/feross/standard/

copyright © 2016 irfan maulana for jakartajs

Contact Me• Email : mazipanneh@gmail.com• Github : /mazipan• Linkedin : /in/irfanmaulanamazipan• Facebook : /mazipanneh• Twitter : @Maz_Ipan

copyright © 2016 irfan maulana for jakartajs

THANK YOU