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
Трикове за продуктивност
Search
Stefan Kanev
May 25, 2013
Programming
0
140
Трикове за продуктивност
Презентацията ми от OpenFest Gabrovo
Stefan Kanev
May 25, 2013
Tweet
Share
More Decks by Stefan Kanev
See All by Stefan Kanev
Въведение в (Machine|Deep) Learning
skanev
0
75
GraphQL
skanev
0
360
Automated Testing: Getting it Right
skanev
1
49
From Novice to Expert
skanev
0
420
Inbetween Code and Profession
skanev
0
370
Clojure & ClojureScript
skanev
2
100
Extreme Programming
skanev
0
600
За смъртта на TDD
skanev
0
500
Python 0 2014
skanev
1
1.6k
Other Decks in Programming
See All in Programming
Realtime API 入門
riofujimon
0
150
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
350
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
6
2k
Creating a Free Video Ad Network on the Edge
mizoguchicoji
0
120
[Do iOS '24] Ship your app on a Friday...and enjoy your weekend!
polpielladev
0
110
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
210
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.3k
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
200
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
Outline View in SwiftUI
1024jp
1
340
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
Remix on Hono on Cloudflare Workers
yusukebe
1
300
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
How GitHub (no longer) Works
holman
310
140k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Music & Morning Musume
bryan
46
6.2k
A better future with KSS
kneath
238
17k
Typedesign – Prime Four
hannesfritz
40
2.4k
GraphQLとの向き合い方2022年版
quramy
43
13k
Gamification - CAS2011
davidbonilla
80
5k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
The Language of Interfaces
destraynor
154
24k
Transcript
Трикове за продуктивност Стефан Кънев http://skanev.com/ @skanev OpenFest Габрово 25
май 2013 Габрово
Здравейте, аз съм Стефан
3
Аз не ползвам Cloud - хоствам в автомобила си
productivity |prɒdʌkˈtɪvɪti| noun the ability to maximize the amount of
work done while minimizing the effort expended
Ruby Programmer Bias DISCLAIMER
абстрактно vs. конкретно
The Productive Programmer Accelaration Focus Automation Cannonicality
Конкретни неща в 4 области
1. Принципно 2. Работа 3. Програмиране 4. Инструменти
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
1. Принципно
1 3 списъка: To Do, Later, Review
1. Неща, които трябва да се свършат 2. Неща, които
да се погледнат по-късно 3. Неща, които да се следят периодично
Всяка сутрин избирайте по 3 неща, които да свършите днес
Аларми и таймери 2
Ако имате час при зъболекаря, найстройте аларма вместо да гледате
часа
По този начин се абстрахирате от часовника
Seinfeld календари 3
None
Ефективен начин за създаване на навик
None
Алтернативи: Lift
Научете се да учите 4
Всеки учи различно. Открийте кое работи най-добре за вас.
Пример за разлики: visual, aural, tectile
The Dreyfus model of skill acquisition
None
Водете бележки религиозно 5
Забравяте повече, отколкото си мислите
Иронично, но записването на нещо помага за запомнянето му
Изградете си собствена система за водене на бележки
Тефтери Mindmap-ове Wiki-та Evernote
Минимизирайте decision fatigue 6
Вземането на решения е уморително
None
http://lifehacker.com/5944198/president-obamas-productivity-tactics
Какво да правя сега? Да отворя ли Twitter? Кога да
си тръгна от работа? Това днес или утре? Как да се облека днес?
2. Работа
Ползвайте два браузера 7
Работа Лични неща
Дори минималното усилие да пусна Firefox намалява разсейването
9GAG Facebook под контрол
Елиминирайте прекъсванията 8
No Instant Messengers
Един единствен приятел, невиждан от година, може да развали целия
ден.
Може да ползвате втори account, само за работа.
Изключете известияна на Twitter
The Pomodoro Technique 9
None
None
5 мин 25 минути 1 2 25 минути 5 мин
3 25 минути 5 мин 4 25 минути 15 минути
I have found Jesus!
Вече мога да се фокусирам за 25 минути!
Дори да не ми се работи, трябва само да пусна
таймера.
Работния ми ден става по-предвидим
The ToDo List 10
None
Сетя ли се за нещо друго, записвам го в списъка
и продължавам със задачата
Преглеждам списъка, когато съм приключил със задача
Няма нужда да се натоварвам с помнене на неща.
Имам подобен списък за всякакви неработни идеи.
None
Проверявайте си пощата в определени часове 11
Проверяването отнема неясно време
Може да ви разсее дългосрочно
Например по два пъти дневно - сутрин и след работа
За важните неща има други канали
Поддържайте добра скорост на писане 12
Писането може да бъде bottleneck, ако пишете бавно
Минимална скорост: 80wpm Добра скорост: 100wpm
Очевидно, но: трябва да пишете с десет пръста, без да
гледате клавиатура
Харесайте си произволна програма за touch typing и прекарвайте с
нея по 10 минути/ден
3. Програмиране
Selenium macros 13
Дори да не пишете тестове, може да ползвате Selenium да
разцъквате приложението, което правите
Не е нужно да пазите скриптовете - трийте, когато сте
готови
Selenium IDE може да записва макроси
Shell aliases 14
Създайте си alias-и за всички команди, които изпълнявате често
Git също има alias-и
OH MY ZSH https://github.com/robbyrussell/oh-my-zsh
Научете всички shortcut-и 15
Всяка работна среда има “бързи клавиши”, които вдигат производителността драматично
4 ZSH KEYS M-_ M-q M-h M-e
TDD workflow 16
Усвоете добре TDD workflow
None
Намалява decision fatigue
Continuous testing
Guard/Watchr 17
Ползвайте Guard за всякакви неща, за които ще минe: compilation,
lint, static check
Радикална идея: git pull при всяко минаване на тестовете
None
Минимизирайте времето за чакане 18
Build-овете трябва да са бързи
Пускането на приложението трябва да е бързо
Тестовете трябва да са бързи
Deployment-а трябва да е бърз
Бавните елементи от билда са симптоп за нездрав проект
Научете се да дебъгвате 19
Дебъгването може да е “пътешествие в заешката дупка”
Разучете инструменти за debug-ване
Изградете подход за debug-ване
None
Кеширайте неща локално 20
Кеширайте всякакви development ресурси (документация) локално
$ man wget
Spike-вайте при неяснота 21
spike |spʌɪk| verb a small test-free time-boxed throw-away exploratory solution
Когато не познавате технологиите добре, писането на тестове е трудно
Не се привързвайте към написания код - втората версия ще
е по-добра
Оставете счупен тест преди да станете 22
НЕ го слагайте във version control
Страхотен начин да си спомните как да продължите работата от
предния ден
4. Инструменти
Автоматизирайте с Make/Rake 23
Слагайте Rakefile-ове навсякъде. Правете Rake задачи за всичко.
Автоматизирайте всичко, което иначе бихте вършили на ръка
SICP/EOPL
Овладейте възможностите на bash/zsh 24
Създавайте bash/zsh скриптове/функции постоянно
$ install-key fmi.clojure.bg
Научете се да можете да си свършите работата с shell
OH MY ZSH https://github.com/robbyrussell/oh-my-zsh
Създавайте си dotfiles 25
$ find ~ -iname '.*' -maxdepth 1
Повечето инструменти могат да се конфигурират либерално
$ git lol $ git la
.tmux.conf
GitHub!
Овладейте скриптирането на текстовия си редактор 26
Инвестицията в текстовия редактор се отплаща многократно
Vim Emacs SublimeText
Shims/jigs 27
Пишете малки one-off скриптчета когато имате да свършите нещо
None
None
None
Когато можете, сглобявайте неща “от кол и въже”
Пазете ги някъде. Ще са ви полезни
Правете си малки приложения 28
Правете си малки приложения, които да ви улесняват живота
None
sinatra, dancer, web.py redis, mongodb twitter bootstrap
Разучете добре съществуващите инструменти 29
В духа на нещата досега, ако владеете много инструменти може
лесно да ги сглобявате в по-големи
Git
ImageMagick
GraphViz
curl
tmux
Midnight Commander
$ git catchup
Гледайте какво правят другите 30
https://github.com/search?q=dotfiles dotfiles в GitHub
Play by Play https://peepcode.com/screencasts/play-by-play ScreenCasts Destroy All Software https://www.destroyallsoftware.com/screencasts
None
None