Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ruby ou Python?
Search
Lucas Arruda
May 20, 2017
Programming
58
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ruby ou Python?
Como conduzir sua carreira num mundo de hypes e flamewars
Lucas Arruda
May 20, 2017
More Decks by Lucas Arruda
See All by Lucas Arruda
How to land a job internationally and triple your income…
lucasarruda
0
68
TypeScript
lucasarruda
0
51
Other Decks in Programming
See All in Programming
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
190
dRuby over BLE
makicamel
2
390
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
170
さぁV100、メモリをお食べ・・・
nilpe
0
160
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.3k
どこまでゆるくて許されるのか
tk3fftk
0
260
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.8k
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
790
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
180
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
310
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
280
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
170
Featured
See All Featured
Docker and Python
trallard
47
3.9k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
250
Unsuck your backbone
ammeep
672
58k
Abbi's Birthday
coloredviolet
3
8.3k
Deep Space Network (abreviated)
tonyrice
0
210
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Speed Design
sergeychernyshev
33
1.9k
Making the Leap to Tech Lead
cromwellryan
135
9.9k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
210
KATA
mclloyd
PRO
35
15k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Transcript
Ruby vs Python
OU
Como conduzir sua carreira num mundo de hypes e flamewars
None
Lucas Arruda @lucasarruda
EX Avenue Code ThoughtWorks
ATUAL Desenvolvedor Independente Consultor etc
MakeSchool
Curso de Computação na prática
2 meses Para aprender a fazer apps 2 anos Pra
aprender computação de forma prática
mas…
Python ou Ruby?
Faz diferença?
Chuck Norris desarmado ou humano armado?
Pitfalls Armadilhas
Toda linguagem tem sua curva de aprendizado
Toda linguagem tem suas ferramentas específicas DSL's libs etc
Ou seja… Toda linguagem tem suas particularidades E também seus
casos de uso mais apropriados
Python, Ruby, PHP Java, C# Go, Elixir C/C++, Rust, Nim
o/a programador(a) faz a diferença
Exemplo
User.all.map(&:meals) User Load (0.2ms) SELECT "users".* FROM "users" Meal Load
(0.2ms) SELECT "meals".* FROM "meals" WHERE "meals"."user_id" = ? [["user_id", 2]] Meal Load (0.1ms) SELECT "meals".* FROM "meals" WHERE "meals"."user_id" = ? [["user_id", 3]] Meal Load (0.2ms) SELECT "meals".* FROM "meals" WHERE "meals"."user_id" = ? [["user_id", 4]] Meal Load (0.1ms) SELECT "meals".* FROM "meals" WHERE "meals"."user_id" = ? [["user_id", 5]] …
User.includes(:meals) .all .map(&:meals) User Load (0.2ms) SELECT "users".* FROM "users"
Meal Load (0.4ms) SELECT "meals".* FROM "meals" WHERE "meals"."user_id" IN (2, 3, 4, 5, …)
O que diria um dev: Junior: faço o que eu
sei fazer Não junior: eager load em tudo!
E o experiente?
Depende…
Porque?
E se houver cache das Meals???
Em que situação, view, estamos? Quem consome os dados?
Cada caso deve ser avaliado com suas particularidades
Não pode haver pré- conceito na computação
Tudo pode mudar com o contexto
Tudo é um tradeoff entre Tempo x Dinheiro x Necessidade
Sharp Knife
"Se eu tivesse apenas seis horas para derrubar uma árvore,
passaria as primeiras quatro afiando meu machado" —Abraham Lincoln
Você realmente domina suas ferramentas?
Usa scripts? Automatiza?
Domina seu editor predileto? mais um rant: Vi x
Emacs x Sublime x XPTO
Conhece ou estuda as últimas tecnologias e ferramentas?
Domina git e o processo de deploy? ou seja, cuida
da confecção até entrega?
Isso é responsabilidade sua e da sua equipe não
vale repassar para chefe, cliente / outros
Carreira
Sua carreira é sua Não é da sua empresa Não
é do seu chefe
Sua carreira vai ser conduzida por você Sem mimimi
Invista na sua habilidade técnica
Não tenha preconceito com outras linguagens
Na nossa área tudo pode ser muito relevante!
Meu exemplo:
PHP Amigos, comunidade, contatos Cursar Computação
Ubuntu Comunidade BR Ubuntu MG Amigos
Java Avenue Code Inglês bom
DevIsland (C#) Testes, Dojo ThoughtWorks Aprimorar minha técnica
Ruby Independência Trabalho remoto Oportunidades fora do BR
Python Meetups, amigos
RubyConf DevDay QCon FISL Amigos Contatos Trabalhos
Enfim… saia da toca, corra atrás Ninguém vai fazer
isso por você
Não tenha preconceitos
Nem com Javascript
Quem aqui gosta de Javascript?
mas…
Você nunca sabe quando pode conseguir aquela oportunidade foda só
por que sabe NodeJS ou ES6
não se esqueça também
das “soft skills”
Você sabe se vender para o seu chefe cliente
colega de trabalho?
Você é aquele cara foda tecnicamente mas que não cresce?
Enquanto seus colegas menos técnicos parecem estar numa posição melhor?
Você já se questionou se você sabe conversar bem, explicar
para uma pessoa não técnica? Se tem paciência se faz mais do que é pedido?
e não somente se seu código é o(log n) ao
invés de o(n)
O cliente/chefe não quer só desempenho, mas principalmente se você
entende ele. Se sabe resolver o problema dele. Se fala a língua dele.
Você está insatisfeito com sua carreira… mas não procura ativamente
mudar isso?
Ou então procura… mas seu currículo é uma sopa de
termos técnicos não explica bem suas habilidades reais e suas conquistas
É muito provável que alguém não técnico vá ler seu
currículo e descartar assim que não entender nada.
Você tem referências ou testemunhos do seu trabalho numa página,
portfólio, LinkedIn ou no próprio currículo?
A maioria das contratações se baseia muito mais em
“conheço ele e sei que ele é bom” do que “nossa, ele programa à 8 anos e sabe 4 linguagens e 6 frameworks"
Ou seja: Contatos e referências são imprescindíveis
Portanto… Você precisa sair da toca Aprender a
conversar, perguntar, questionar, procurar, ao invés de esperar oportunidades surgirem
Se você não o fizer, alguma situação da sua vida
irá te obrigar que você mude forçadamente
Exemplos ser demitido downsizing (acabou a grana) ser
jogado para escanteio (projeto ruim) etc
The Pragmatic Programmer Andy Hunt The Passionate Programmer (My
Job Went to India) Chad Fowler Don’t Call Yourself A Programmer, And Other Career Advice Patrick Mackenzie Referências
Perguntas?
Obrigado!