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
Dodging the meteor
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Florian Gilcher
October 19, 2012
Programming
300
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dodging the meteor
Rethink your self-teaching to avoid becoming a dinosaur!
Florian Gilcher
October 19, 2012
More Decks by Florian Gilcher
See All by Florian Gilcher
A new contract with users
skade
1
530
Using Rust to interface with my dive computer
skade
0
310
async/.await with async-std
skade
1
810
Training Rust
skade
1
150
Internet of Streams - IoT in Rust
skade
0
120
How DevRel is failing communities
skade
0
130
The power of the where clause
skade
0
700
Three Years of Rust
skade
1
230
Rust as a CLI language
skade
1
250
Other Decks in Programming
See All in Programming
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
2
620
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
400
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
140
TAKTでAI駆動開発の品質を設計する
j5ik2o
6
1.2k
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
130
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
570
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
120
Claspは野良GASの夢をみるか
takter00
0
190
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
5.4k
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
340
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
540
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Google's AI Overviews - The New Search
badams
0
1k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
160
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
We Have a Design System, Now What?
morganepeng
55
8.2k
Abbi's Birthday
coloredviolet
2
8k
ラッコキーワード サービス紹介資料
rakko
1
3.6M
KATA
mclloyd
PRO
35
15k
Facilitating Awesome Meetings
lara
57
7k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
230
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Transcript
None
$ cat .profile | grep export export GIT_AUTHOR="Florian Gilcher" export
GIT_AUTHOR_EMAIL="
[email protected]
" export GITHUB_NICK="skade" export APP_NET_NICK="skade" export GITHUB_ORGANIZATIONS="asquera,padrino" export TWITTER_NICK="@argorak" export TM_COMPANY="Asquera GmbH"
http://asquera.de
“How did you learn all this?”
How do accomplished programmers foster their learning environment?
I decided to pass the question around.
How do you learn?
Whats your favourite trick?
Learning is a skill like any other.
It can be learned.
“I believe consistent, regular and hard work is a sure
way to become better at a skill.” – Michal Taszycki, http://programmingworkout.com
Learning by doing.
Get into a habit!
-- clear the table DELETE * FROM table;
How much time does it take you to get back
to a learning project from last week?
Anything above 1 minute is too much.
No need for an elaborate system.
Only one that works.
# purely for reading # and compiling src/ # things
I actually work on Code/
After every major update, I make sure that everything compiles
and works.
vagrant, ruby, java, Haskell Platform, TexLive, erlang, postgres VMs, Riak
VMs, CouchDB VMs...
Setup time drags you down.
Find ways to make that possible for all kinds of
things.
Be your own favourite ops guy.
“Its like going to the gym: I never go in
the evening if I didn’t pack my things the day before.”
Now that we’re time-efficient, we still need the time.
Work and learning effort are completely different beasts, don’t mix
them.
Work: time constraints, deadlines, product goals.
Learning: freeform, failure as default mode, no pressure.
Work-Life Balance
Work-
Work-Learn-
Work-Learn-Pastime Balance
Don’t allow anyone to control that balance.
“Learn the stuff you need for work at home.” –A
former boss
Now that work is ruled out, where to look next?
“I got more conscious about how I consume media.”
“I started skipping things aggressively.”
Media consumption
Information epidemic?
TV, YouTube, Hacker News, Twitter, yourfavouriteblog
Get used to writing off things.
Game boring? Skip! TV show bad? Switch of the TV!
Don’t switch it on without knowing whats running in the
first place.
The essence of focus is to do everything very consciously.
Superchargers
I. Vocabulary
“I read a lot of literature, but skip implementing for
a while.”
It allows you to digest new material or read code.
It allows you to talk to people actually working on
the described things.
Knowing your vocabs allows you to think about them.
It breaks your personal filter bubble.
II. A taste for quality
“Even when just messing around, I strictly apply all best
practices I know.”
class Fuck def args 'bla' end end
class MyClass def foo 'bar' end end
“I don’t care, its just demo code.” – sadly, another
former boss
If your code is messy, your brain is messy.
Keeping your code clean will get easier and easier with
every time.
Its easier to show to other people and helps you
communicate with peers
III. Learning Hydra
“I usually learn many things in parallel.”
Always have tasks of different interests and difficulty levels around.
Enlightment can strike at random.
“Free” time is learning time!
IV. Take huge strides
“When I want to learn a new technology, I always
set an ambitious goal: the problems popping up along the way are part of the exercise.”
You get exposed to unpredicted problems.
GOOD!
Only planning small steps can make you wander off in
the wrong direction.
V. Go nuts!
Build the mad things! For fun and no profit at
all!
Can JRuby be embedded into JRuby?
Hell, yes!
It might yield a system where you have 2 different
classes called “Object”...
... but you learn a lot about JRuby internals.
VI. Pass your knowledge along
“I’ve always helping others with my skills.”
Explaining to others exposes flaws in your own thinking.
You haven’t understood what you cannot explain.
Start answering questions on mailing lists, boards, twitter, stackoverflow.
But do it in a proper, detailed way.
VII.
Every once in a while...
Disconnect your ethernet cable
Disconnect your ethernet cable Disconnect your Wifi
Disconnect your ethernet cable Disconnect your Wifi Turn your phone
in flight mode
VII. Go offline
It forces you to work with what you have.
It forces you to find solutions for what you don’t
have by yourself.
Google == Training Wheels
Google is a great helper, but you should work without
helpers once in a while.
Dodging the Meteor?
In 5 or 10 years, none of us will program
like today.
I come from planet LAMP...
...which is now mostly empty.
What will hit Planet Ruby/Rails?
Haskell?
Clojure? Scala?
Be on the lookout!
Constant learning is the only thing that keeps you from
becoming a dinosaur.
Google == Training Wheels
Big thanks to: @paulca, @aq, @johnashenfelter, @brennandunn, @ernestomiguez, @myabc, @febeling,
@catimogen, @zebel, @Xylakant, @mmack, @bascht, @wikimatze, @cypher, @mehowte
None