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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Stefan Kanev
July 20, 2013
Programming
0
540
Reflections on the Craft
My talk form VarnaConf 2013
Stefan Kanev
July 20, 2013
Tweet
Share
More Decks by Stefan Kanev
See All by Stefan Kanev
Въведение в (Machine|Deep) Learning
skanev
0
100
GraphQL
skanev
0
440
Automated Testing: Getting it Right
skanev
1
80
From Novice to Expert
skanev
0
440
Inbetween Code and Profession
skanev
0
440
Clojure & ClojureScript
skanev
2
130
Extreme Programming
skanev
0
800
За смъртта на TDD
skanev
0
620
Python 0 2014
skanev
1
1.8k
Other Decks in Programming
See All in Programming
CSC307 Lecture 14
javiergs
PRO
0
480
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
1k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
3
1.1k
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.5k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
240
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
170
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
190
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
490
AWS Infrastructure as Code の新機能 2025 総まとめ 〜SA 4人による怒涛のデモ祭り〜
konokenj
10
3.4k
ロボットのための工場に灯りは要らない
watany
11
3k
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
120
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
300
Featured
See All Featured
How to make the Groovebox
asonas
2
2k
Bash Introduction
62gerente
615
210k
Prompt Engineering for Job Search
mfonobong
0
200
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
150
AI: The stuff that nobody shows you
jnunemaker
PRO
3
450
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
80
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
560
30 Presentation Tips
portentint
PRO
1
260
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