top 17 tips for new web developers

Post on 09-Apr-2017

102 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Top Tips for New Web Developers17 Things you should be doing (but probably

aren’t)

@mycareerscore

1SyntaxMatters

Programs should be written for people to read, and only incidentally for machines to

execute

“”Structure and Interpretation of Computer Programs"

by Abelson and Sussman

Indentation

Block 1

Block 2

Block 2, continuation

Block 3

In some languages (like Python) indentation defines

scope

Block 1, continuation

CommentsCode Tells You

How,Comments Tell You

Why

“”Jeff Atwood

Pro Tip: Spend time picking Good Names

2Be Modular

I choose a lazy person to do a hard job. Because a lazy

person will find an easy way to do it

“”Bill Gates

RecycleIf you write clean, modular

code you will be able to recycle functions and help

maintain a clean application.

3Stay Focused

Jumping rapidly across languages or

frameworks early on will give you the

illusion of progress, rather than true

mastery.

Don’t Do It.

4Version Control

When stuff breaks, and trust me it will. You’ll be glad you had that lovely little reset afforded by

version control.

Git itGit will allow you to not only timestamp your code, but

avoid stepping on toes while working with others.

try.github.io

5Organize Your Learning

One thing is for certain, software development requires career-long

learning.

Don’t Lose KnowledgeCareerscore will provide you

with tools to easily save and organize resources you find. It will also help you

understand how what you’re learning connects to jobs.

careerscore.com

6Keep It Real

Observe the work of people who built

software that you use every day.

CommunityMeet with others online through Reddit, Slack

channels or Careerscore. For in-person events try Meetup

Pro Tip: Browse and read

open-source code

7Debugging

Work Backwards

Start from the faulty line and rollback from there,

questioning your assumptions

8Master Your Tools

ShortcutsLookup the cheat sheets for

your text editor and for navigating your computer

files and browser.

9Know Computer Science Basics

How Basic?That depends on your goals.

You’ll likely need fundamentals of object-oriented programming, data structures, design

thinking and algorithms for many interviews.

10

Read The Damn Specifications

RFCs (Remote Function Calls) from the IETF

(Internet Engineering Task Force) will be your go-to resources for many web

technologies.

11

Understand The Web

Internetvs

Webvs

HTTP

The Internet is a massive network of networks, a networking structure.

The Web is a way of accessing information over

the medium of the internet or simply put is the information-sharing model that is built on

top of the internet.

The Web uses HTTP (and other languages) to transmit

data.

Pro Tip: Try outFiddler to see HTTP requests in real-time

It’s also great for debugging, if you’re into that sort of thing.

telerik.com/fiddler

12

Dealing With Exceptions

At some point, you need to draw the line

between anticipating issues and pushing your

code live.

AutomatedTesting

BUT automated testing can save you time in the long run,

things like unit tests, integration tests, etc.

13

Unicode Fundamentals

Homework:Read Joel Spolsky’s Blog

Post: The Absolute Minimum Every

Software Developer Absolutely, Positively Must Know About Unicode

and Character Sets (No Excuses!)

14

Careful Code Copying

Exercise Safe

Copy/PastaRemember, once you take

someone else’s code and add it to your own, you become

responsible for it.

15

Security

Start Day 1Know the security protocols for the application you’re

working on, regardless of the language and framework

you’re using and be driven by requirements.

16

Maintenance

Maintenance

Takes Time

Don’t underestimate the time you will need to maintain and refactor your code. You wouldn’t

expect your car to run perfectly forever without

servicing it now and again. The same goes for software.

17

Devops

AutomateDevops can be a world on it’s own and increases in complexity with

larger teams and more technologies. Where you can, use tools to automate the

process once you understand how it works.

Development Quality Assurance

Operations

Devops

Visit careerscore.com to find the best career

resources

newt@careerscore.com

top related