What I Wish I Knew Before I Started Coding

Preview:

Citation preview

WHAT I WISH I KNEW BEFORE I STARTED CODINGwith Mattan Griffel, CEO of One Month

Coding Languages are HUGE

Ruby

Coding Languages are HUGE

Ruby

And you only need to know a tiny bit of them

Many experienced developers only barely scratch the surface

Many experienced developers only barely scratch the surface(A typical developer searches Google once for every 10 lines of code they write)

50% of developers are self-taught

Did you know there are 1,025,109.8 words in the English language?

…yet the average adult knows only 20,000-35,000?

C, Java, C++, PHP, JavaScript, Python, C#, Perl, SQL, Ruby, Shell, Visual Basic, Assembly, Actionscript, Where do you start? Delphi, Pascal, Scheme, Haskell, Tcl, Backbone, Fortran, Ada, Lua, ColdFusion, Cobol, Erlang, D, Scala, Smalltalk, Ocaml , Forth , Rexx , Hadoop, Node.js, Lisp, Objective C, Swift

Web applications are applications that you access over the internet

Every application has a front-end and a back-end

The front-end is what you see

Front-end languages: • HTML • CSS • JavaScript

The back-end is what you don’t see

DatabaseRules

Web Pages

The back-end is what you don’t see

Programming languages: PHP, Ruby, Python, Java

Database languages: SQL

DatabaseRules

Web Pages

They’re all the same, just different

PHP Python Ruby

echo “Hello World”; print(‘Hello World’) puts “Hello World”

PHP Python Ruby

PHP Python Ruby

Hello World Hello World Hello World

echo “Hello World”; print(‘Hello World’) puts “Hello World”

Programming languages are just languages for humans to talk to computers

Languages started off being very computer-friendly but not very human-friendly

Example in Binary: Print “Winter is coming.”00000000 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 |.ELF............| 00000010 02 00 03 00 01 00 00 00 80 80 04 08 34 00 00 00 |............4...| 00000020 c8 00 00 00 00 00 00 00 34 00 20 00 02 00 28 00 |........4. ...(.| 00000030 04 00 03 00 01 00 00 00 00 00 00 00 00 80 04 08 |................| 00000040 00 80 04 08 9d 00 00 00 9d 00 00 00 05 00 00 00 |................| 00000050 00 10 00 00 01 00 00 00 a0 00 00 00 a0 90 04 08 |................| 00000060 a0 90 04 08 0e 00 00 00 0e 00 00 00 06 00 00 00 |................| 00000070 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| 00000080 ba 0e 00 00 00 b9 a0 90 04 08 bb 01 00 00 00 b8 |................| 00000090 04 00 00 00 cd 80 b8 01 00 00 00 cd 80 00 00 00 |................| 000000a0 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a 00 2e |Winter is coming| 000000b0 73 68 73 74 72 74 61 62 00 2e 74 65 78 74 00 2e |.shstrtab..text.| 000000c0 64 61 74 61 00 00 00 00 00 00 00 00 00 00 00 00 |.data...........| 000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 000000f0 0b 00 00 00 01 00 00 00 06 00 00 00 80 80 04 08 |................| 00000100 80 00 00 00 1d 00 00 00 00 00 00 00 00 00 00 00 |................| 00000110 10 00 00 00 00 00 00 00 11 00 00 00 01 00 00 00 |................| 00000120 03 00 00 00 a0 90 04 08 a0 00 00 00 0e 00 00 00 |................| 00000130 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 |................| 00000140 01 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 |................| 00000150 ae 00 00 00 17 00 00 00 00 00 00 00 00 00 00 00 |................| 00000160 01 00 00 00 00 00 00 00 |……..|

Example in Assembly: Print “Winter is coming.”section .text global _start

_start:

mov edx,len mov ecx,msg mov ebx,1 mov eax,4 int 0x80

mov eax,1 int 0x80

section .data

msg db ‘Winter is coming.',0xa len equ $ - msg

Example in Java: Print “Winter is coming.”

public class HelloWorld { public static void main(String[] args) { System.out.println(“Winter is coming."); } }

Example in Ruby: Print “Winter is coming.”

puts “Winter is coming.”

Now there are web application frameworks

DatabaseRules

Web Pages

Now there are web application frameworks

Web application frameworks: Wordpress, Ruby on Rails, Django

DatabaseRules

Web Pages

Web application frameworks “alleviate overhead associated with web development by providing libraries for database access, templating frameworks, and session management.”

help you build web apps really quickly

~75% of coding is Googling

Stack Overflow

+ ask someone

Everyone will tell you something different

Coding in a nutshell

INSTALLING THE SOFTWARE CAN BE HARD

This is your command center

Command Line Text Editor

Browser

The text editor is where you write your code

Sublime Text

The command line is where you

run your code

Terminal

The browser is where you see

the result

Google Chrome

GITHUB IS WHERE YOU SAVE VERSIONS OF YOUR PROJECT FILES

HEROKU LETS YOU DEPLOY YOUR APP SO THAT IT’S LIVE IN SECONDS

AND YOUR TODOS ARE IN A TASK MANAGEMENT SYSTEM LIKE PIVOTAL TRACKER

WEB DEVELOPMENT RESOURCES

HACKER NEWS IS A GREAT WAY TO EXPOSE YOURSELF TO NEW IDEAS

UPCOMING CLASSES One Month Ruby

One Month Python One Month Javascript

One Month Rails One Month HTML

BITE-SIZED EASY TO FOLLOW LESSONS

AN ONLINE COMMUNITY THAT GUARANTEES YOUR SUCCESS

INTRO TO RUBY

APIS WITH RUBY

WEB SCRAPING WEB APPS

One Month Class Structure:Week 1 Week 2 Week 3 Week 4

•How do you set up your computer to code?

•How do you write and run Ruby code?

•What are variables, functions, arrays, etc.?

•How do you connect to an API?

•What data can you get from an API?

•What can you do with that data with Ruby?

•How do you scrape from websites like Google and Amazon?

•How can you get your scripts to run automatically?

•How does web application development work?

•How can I get my code live on the internet?

SO IF YOU’RE STRUGGLING OR

FRUSTRATED(Or you just want to learn something

new for the next four weeks)

CLASSES STARTING EACH MONDAY

SECRET WEBINAR OFFER

“One Month is honestly the best place to learn programming. The teachers are phenomenal and do a great job of explaining things so people from all backgrounds can grasp the concepts.

– JORDAN GABRIEL WILLIAMS

“ Nice to have a face to the voice teaching you - almost a live classroom feel.

– MUKRRAM ALI, LONDON

“ OM is perfect for laying the groundwork to a new skill; meshes well with a super busy schedule and chasing around a 13-month old!

– TEENA BLAYDES, TEXAS

Q&ASign up for a One Month course

using our Special Offer now