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
81
GraphQL
skanev
0
390
Automated Testing: Getting it Right
skanev
1
54
From Novice to Expert
skanev
0
420
Inbetween Code and Profession
skanev
0
420
Clojure & ClojureScript
skanev
2
110
Extreme Programming
skanev
0
700
За смъртта на TDD
skanev
0
560
Python 0 2014
skanev
1
1.7k
Other Decks in Programming
See All in Programming
#QiitaBash TDDでAIに設計イメージを伝える
ryosukedtomita
2
1.7k
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
130
FormFlow - Build Stunning Multistep Forms
yceruto
1
150
漸進。
ssssota
0
1.8k
Devinで実践する!AIエージェントと協働する開発組織の作り方
masahiro_nishimi
6
2.9k
関数型まつり2025登壇資料「関数プログラミングと再帰」
taisontsukada
2
740
「兵法」から見る質とスピード
ickx
0
260
生成AIで日々のエラー調査を進めたい
yuyaabo
0
480
レガシーシステムの機能調査・開発におけるAI利活用
takuya_ohtonari
0
570
從零到一:搭建你的第一個 Observability 平台
blueswen
1
810
無関心の谷
kanayannet
0
160
プロダクト開発でも使おう 関数のオーバーロード
yoiwamoto
0
140
Featured
See All Featured
Writing Fast Ruby
sferik
628
61k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Producing Creativity
orderedlist
PRO
346
40k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
120
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Stop Working from a Prison Cell
hatefulcrawdad
269
20k
Making Projects Easy
brettharned
116
6.2k
Practical Orchestrator
shlominoach
188
11k
Scaling GitHub
holman
459
140k
Six Lessons from altMBA
skipperchong
28
3.8k
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