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
Reflections on the Craft
Search
Stefan Kanev
July 20, 2013
Programming
550
0
Share
Reflections on the Craft
My talk form VarnaConf 2013
Stefan Kanev
July 20, 2013
More Decks by Stefan Kanev
See All by Stefan Kanev
Въведение в (Machine|Deep) Learning
skanev
0
110
GraphQL
skanev
0
450
Automated Testing: Getting it Right
skanev
1
87
From Novice to Expert
skanev
0
450
Inbetween Code and Profession
skanev
0
450
Clojure & ClojureScript
skanev
2
130
Extreme Programming
skanev
0
820
За смъртта на TDD
skanev
0
630
Python 0 2014
skanev
1
1.8k
Other Decks in Programming
See All in Programming
1人1案件のプロダクトエンジニア時代に、"プロセス監督"としてチャレンジしたこと
non0113
0
310
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
6
590
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
150
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
210
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
290
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
0
100
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
160
色即是空、空即是色、データサイエンス
kamoneggi
1
160
ECR拡張スキャンでSBOMを収集して サプライチェーン攻撃の影響調査を 爆速で終わらせてみた
akihisaikeda
2
200
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
120
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
250
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
980
Featured
See All Featured
Balancing Empowerment & Direction
lara
6
1.1k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.5k
sira's awesome portfolio website redesign presentation
elsirapls
0
250
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
160
Agile that works and the tools we love
rasmusluckow
331
21k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.1k
ラッコキーワード サービス紹介資料
rakko
1
3.4M
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
170
Become a Pro
speakerdeck
PRO
31
5.9k
Transcript
Размисли за занаята Стефан Кънев http://skanev.com/ @skanev VarnaConf 20 юли
2013 Варна
Стефан
Every time
“Разчупен лед”
смях на чужд гръб
Мариян
None
Васил
Митьо
Радо
удрям ниско
None
монади
лимонади
David Chelimsky
None
None
None
Programmer
⽃⽄ Ruby, Ruby, Ruby ̆̇㽈
None
❤Programming Languages
Ruby & Python
twitter: @skanev github: skanev blog: http://skanev.com/
ЗА КАКВО ИДЕ РЕЧ?
Размисли Наблюдения
без особен ред
ВЪЗМОЖНОСТ ПРИЛОЖИМОСТ
Възможност
Приложимост
Common Lisp
Java
Fortran възможност спрямо assembly
Structured Programming приложимост спрямо GOTO
Relational Model приложимост спрямо файлове
C++ възможност спрямо C
Java приложимост спрямо C++
Разширяване Свиване
“твърде бавно”
“твърде ограничаващо”
Повечето нови технологии и подходи са реакция към съществуващи технологии
и подходи
Реакциите са стандартни: скептичност и консерватизъм
Няма значение, че сега това са едни от най-утвърдените и
най-сигурни технологии
Като индустрия, ние сме ужасно скептични към всяка нова технология
“Скептичен” е лоша дума, понеже предполага съмнение, а не отричане.
Съответно, ...
Ние сме страхливи
КРАСИВА ТЕОРИЯ ГРОЗНА РЕАЛНОСТ
Имаме страхотна теория как се правят нещата - езици, бази,
компилатори, архитектури, операционни системи
На практика, всяка стабилна система е назадничава, серия от компромиси
или просто каша
“Чукча писател, чукча не читател”
малко примери
HTML & HTTP
JavaScript DOM
None
x86
None
повечето програмни езици
None
Може би това е нормалният цикъл за най-използвания софтуер и
няма друг начин
Можем да се справим по-добре за софтуера, който ние пишем
а дано, ама надали
Ние мислим краткосрочно
ИНДУСТРИЯ НА МЕТАФОРИТЕ
Използваме много метафори да говорим за софтуер помежду си
Заемаме фрази от други сфери, понеже нямаме собствени
None
None
None
None
Метафорите са опасни - могат да ни поведат по грешен
път
В строителството, нещата трябва да стават в определен ред. Метър
грешка струва много. Планът и спецификацията са критични.
Имаме copy/paste. Ако метафоричния мост се срути, може да вдигнем
хиляда нови за секунди.
Agile не е революция - просто ни откъсва от грешната
метафора
Ние сме объркани
ПРАГМАТИЦИ VS. МЕЧТАТЕЛИ
прагматици мечтатели
Прагматиците искат предимно да свършат работата
Мечтателите искат да направят нещо красиво
Рядко някой е в крайност, но често сме близо до
тях
Не е черно-бяло - има “добри” прагматици и “лоши” мечтатели
Прагматиците рискуват да си затворят очите за новото
None
Не е лошо да си прагматик, но трябва да внимаваш
да не се затвориш за новото
Трудно е да бъдеш единия в екип от другите
Когато прагматиците надделеят, това често потиска развитието в дадена среда
Ние сме склонни към регрес
КАКВО ЗНАЧИ ВСИЧКО ТОВА?
1.Ние сме страхливи 2.Ние мислим краткосрочно 3.Ние сме объркани 4.Ние
сме склонни към регрес
None
1.Ние сме страхливи 2.Ние мислим краткосрочно 3.Ние сме объркани 4.Ние
сме склонни към регрес
☹
None
Не сме обречени. Винаги ще има хора, които да ни
дърпат напред.
Къде сме? С тях или в авангарда?
Къде е нашето community?
Какво да възпитаваме?
Страст
Смелост
Hardcore умения
Работещ софтуер
None
fin
None