!!con - the creative programmer

40
@cattsmall @cattsmall The Creative Programmer !!Con 2016 – Catt Small

Upload: catt-small

Post on 20-Jan-2017

1.081 views

Category:

Technology


2 download

TRANSCRIPT

@cattsmall@cattsmall

The Creative Programmer!!Con 2016 – Catt Small

@cattsmall@cattsmall

● Product Designer, SoundCloud● Co-founder, Brooklyn Gamery● Co-founder, Code Liberation● Maker of various things!

A little about me:

@cattsmall@cattsmall

Programming culture, creativity, and my path to code.

Today we’ll discuss:

@cattsmall@cattsmall

Culture

@cattsmall@cattsmall

Programming culture

how > what + why

@cattsmall@cattsmall

Conversations with devs

I think we should use–

What should it do?

themme

@cattsmall@cattsmall

Education

The mysqlnd replication and load balancing plugin is implemented as a PHP extension.

It is written in C and operates under the hood of PHP.

During the startup of the PHP interpreter, in the module init phase of the PHP engine, it gets registered as a mysqlnd plugin to replace selected mysqlnd C methods.

At PHP runtime, it inspects queries sent from mysqlnd (PHP) to the MySQL server

If a query is recognized as read-only, it will be sent to one of the configured slave servers. Statements are considered read-only if they either start with SELECT, the SQL hint /*ms=slave*/ or a slave had been chosen for running the previous query, and the query started with the SQL hint /*ms=last_used*/. In all other cases, the query will be sent to the MySQL replication master server.

@cattsmall@cattsmall

Hierarchy

PHPJava SQL C++ASP.NET

JS C#Ruby Objective C

Python

@cattsmall@cattsmall

More hierarchy

JS

Angular EmberBackbone

Node ReactIO

@cattsmall@cattsmall

“Real programmer”I haven’t slept in weeks!

export class Just<A> extends Maybe<A> {

constructor(public value: A) { super(); };

export class Nothing<A> extends Maybe<A> {

constructor() { super(); };

fold<R>(match) { return match.nothing; }

export function of<A>(value: A): Maybe<A> {

return new Just(value);

export function zero<A>(): Nothing<A> {

return new Nothing();

export function map<A, B>(fn: (a: A) => B): (m: Maybe<A>) => Maybe<B> {

return function morphism(ma) {

return ma.fold({

just: (a) => { return new Just(fn(a)) },

export function bind<A, B>(fn: (a: A) => Maybe<B>): (m: Maybe<A>) => Maybe<B>

return function morphism(ma) {

return ma.fold({

export function zipWith<A, B, R>(fn: (A, B) => R): ((ma: Maybe<A>, mb:

Maybe<B>) => Maybe<R>) {

return function(ma, mb) {

</> </>

@cattsmall@cattsmall

Programming culture is hurting people.

@cattsmall@cattsmall

Programming culture needs to change.

@cattsmall@cattsmall

I love coding...

@cattsmall@cattsmall

I love coding...because I love creating.

@cattsmall@cattsmall

Anime fandoms

@cattsmall@cattsmall

The Big KISS

@cattsmall@cattsmall

Learning to code

@cattsmall@cattsmall

My own KISS dolls!

@cattsmall@cattsmall

KISS doll portfolio + blog

@cattsmall@cattsmall

Xanga + LiveJournal design

@cattsmall@cattsmall

Website designs

@cattsmall@cattsmall

Cross-platform products & games

@cattsmall@cattsmall

Programming can beartistic.

@cattsmall@cattsmall

Programming can becreative.

@cattsmall@cattsmall

Programming isa means to an end.

@cattsmall@cattsmall

Code has so much creative potential.

@cattsmall@cattsmall

Websites

@cattsmall@cattsmall

Apps

@cattsmall@cattsmall

Games

@cattsmall@cattsmall

Clothing

Art:Ariel Cotton www.argoncobalt.com

Photo:Brady Dale for Technically Brooklyn

@cattsmall@cattsmall

Food

Art:Ariel Cotton www.argoncobalt.com

Photo:Brady Dale for Technically Brooklyn

@cattsmall@cattsmall

Books

Art:Jie Qiwww.technolojie.com

@cattsmall@cattsmall

AI

@cattsmall@cattsmall

Robots

Credit:Boston Dynamics

www.bostondynamics.com

Credit:Pepper by SoftBank

http://www.tokyotimes.com/stores-softbank-will-run-robots/

@cattsmall@cattsmall

Programming tools

@cattsmall@cattsmall

Celebrate what you make.

@cattsmall@cattsmall

You already are areal programmer.

@cattsmall@cattsmall

In summary:● Focus on the project, not the tools.● Pick whatever language & framework will

make your project happen.● You can use code to create more than apps.● Celebrate what you’ve made! Don’t get stuck

on what you couldn’t make.● You already are a real programmer.

@cattsmall@cattsmall

Go out there & make cool stuff!

@cattsmall@cattsmall

Thank you.Questions?

Tweet @cattsmallEmail [email protected]