the journey to become a solid developer

Post on 08-Feb-2017

154 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

THE JOURNEY TO

BECOME A

SOLID DEVELOPER

@_orso_ and @cirpo

solid Pronunciation: /ˈsɒlɪd/

1. Firm and stable in shape; not liquid or fluid

solid Pronunciation: /ˈsɒlɪd/

2. Having three dimensions

solid Pronunciation: /ˈsɒlɪd/

3. Not hollow or containing spaces or gaps

solid Pronunciation: /ˈsɒlɪd/

4. Dependable, reliable

What it means being a solid developer

in 2016?

Can solve problems/needs either through code and/or analysis

Is able to balance pragmatism and perfectionism

Is not averse to debugging and bug fixing

Has healthy skepticism

Has business-awareness

Has social-awareness

Is a continuous learner

Someone who

Why in 2016?

Why in 2016? Because the concept of a solid developer hasn’t been always the same

20 years ago… 1996

IN THE 90’S IT WAS CALLED ANNOYING MODEM NOISE

How was to be a dev those days?

How was to be a dev those days?

Well, most probably a lonely experience

No GrUSP

Not so many conferences

No meetups (with free pizza and beer)

No Github

THERE WERE NO...

If you wanted to learn something new...

If you wanted to learn something new...

buy a book or wait for an article on $IT_Magazine...

A bit of (PHP) history

1998 PHP 3

1999 Pear

In the meantime...

1998 PHP 3

In the meantime...

1999 Pear

2000 PHP 42003 PECL

In the meantime...

2000 PHP 42003 PECL

In the meantime...

2000 PHP 42003 PECL

In the meantime...

In the meantime...

2000 PHP 42003 PECL

2005 sf 1 / zf 12008 github

TODAY

It’s always the web, but it’s different.

Same protocol (HTTP), but several different platforms, devices, technologies and methodologies

internetlivestats.com/internet-users

3,365,312,161internet users in the world

and counting...

internetlivestats.com/

2,937,041blog posts written today

internetlivestats.com/

2,043,705 TBInternet traffic today

internetlivestats.com/

43,705 Website hacked today

today we have the opposite problem:

we have access to TONS AND TONS of information

instantly!

Manage the information overload

We are overwhelmed by informations:

blogs

We are overwhelmed by informations:

blogs

feeds

We are overwhelmed by informations:

blogs

feedstweets

We are overwhelmed by informations:

blogs

feedstweets

slack channels

We are overwhelmed by informations:

blogs

feedstweets

newslettersslack channels

We are overwhelmed by informations:

blogs

feedstweets

newslettersnewsletter of newsletter of newsletter

slack channels

We are developers and we like learning new tools, technologies, programming languages, whatever, but we are humans and every day is 24 hours for everyone of us. We cannot physically learn/know everything

“There are discoverable limits to the amount of change that the human organism can absorb.”

Alvin Toffler - Future Shock 1970

[SUGGESTIONS]

Find a community

Find a mentor

Ask for help

Again:

stick to the fact that you can’t learn everything!

Keep an eye on what’s going on around you

thoughtworks.com/radar

[BACK TO BASICS]

Most of the time it’s turning wheel.Most of the time there is nothing new, old concepts but better implementation/better hardware or new needs

So what are the basics?

So what are the basics?

it depends...

HTTP

what’s the difference between a GET and a POST?

“POST is more secure”

“The difference is that

in a GET request the parameter are in the url,

in a POST request, the parameter are in the body’s request”

how many of you knows what happens when you enter a url in the browser?

github.com/alex/what-happens-when

dotfiles.github.io

even if you’re not a devops, try to learn how/where your code runes

don’t change your editor every two days!

keep yourself trained kata hackrank codewars you name it

[BE A POLYMATH]

PHP is here to stay

Javascript as well

next?

next?

Solve the same problems

Solve the same problems

in different ways

[ BE YOURSELF BE PRAGMATIC ]

many methodologies, many technologies

What’s wrong in this code?

We ♥ DDD, Clean Code, TDD

CARGO CULT

our goal is to satisfy our clients not our ego

keep things simple

use your brain

“more unit than functional tests”

DRY is fine…

The other side of DRY is coupling

Sometimes we see code

Sometimes we see code

as an expression of our intelligence

Be pragmatic

[BE COLLABORATIVE]

Continuous learning (non unidirectional)

individuals and interaction over processes and tools

Not just the tech stuff, also the domain you’re in

Don’t be just an executor

Ask why

[GIVE BACK]

Opensource

small things matters

you should not be afraid to fail

try to find a place where failure is ok

failure is a learning opportunity...

you have to get what went wrong ;-)

so what about being a solid dev?

don’t be a dark matter developer

use your brain

Learn to choose

know your strengths

know your limits

a.k.a be yourself!

THE JOURNEY IS NOT (NEVER?) OVER

WE ARE ALL UNIQUE AND DIFFERENT

WE ARE ALL UNIQUE AND DIFFERENT

introvert

extrovert

technical

meticulousstubborn

WE ARE ALL UNIQUE AND DIFFERENT

introvert

extrovert

technicalproduct-oriented

meticulousstubborn

funny

WE ARE ALL UNIQUE AND DIFFERENT

introvert

extrovert

technical

cautious

product-oriented

meticulousstubborn

humble

funny

WE ARE ALL UNIQUE AND DIFFERENT

introvert

extrovert

technical

cautious

product-oriented

meticulous

dreamer

stubborn

humble

funny

WE

WE

ARE

WE

ARE

DEVELOPERS

top related