Save 37% off PRO during our Black Friday Sale! »

Learn to Program in 10+ Years (HackConf 2016)

Learn to Program in 10+ Years (HackConf 2016)

Efd2550fb5f3059d815e731ecd61b701?s=128

Bozhidar Batsov

October 18, 2016
Tweet

Transcript

  1. None
  2. ЙО!

  3. None
  4. Hack

  5. Conf

  6. Hack

  7. Conf

  8. Hack

  9. Conf

  10. Божидар

  11. @bbatsov

  12. None
  13. None
  14. None
  15. 2^5

  16. None
  17. None
  18. Как да се научим да програмираме за 21 дни Божидар

    Бацов
  19. None
  20. Научете за променливи, константи, масиви, низове, изрази, твърдения, функции,… Ден

    1 - 10
  21. Научете за потока на изпълнение на една програма, основи на

    ООП,… Ден 11 - 21
  22. Програмирайте ударно за кеф. Забавлявайте се в процеса, но не

    забравяйте да се учите от грешките си. Ден 22 - 697
  23. Общувайте с други програмисти. Работете по проекти с тях. Учете

    от тях. Ден 698 - 3648
  24. Научете висша теоретична физика и формулирайте консистента теория на квантовата

    гравитация. Ден 3649 - 7781
  25. Научете биохимия, молекулярна биология, генетика,… Ден 7782 - 14611

  26. Използвайте познанията си по биология, за да направите елексир на

    младостта. Ден 14611
  27. Използвайте познанията си по физика, за да направите машина на

    времето и да се върнете в ден 21. Ден 14611
  28. Убийте младото си “аз” и заемете мястото му. Ден 21

  29. Все още не е открит по- прост начин да се

    научите да програмирате за 21 дни…
  30. Как да се научим да програмираме за 10 години Божидар

    Бацов
  31. 9 години Emacs

  32. 1 година всичко останало

  33. None
  34. Как да се научим да програмираме за 10+ години Божидар

    Бацов
  35. Защо се занимаваме с програмиране?

  36. None
  37. None
  38. None
  39. Софтуера управлява живота ни

  40. Програмистите решават проблеми посредством софтуер

  41. Ние създаваме софтуер

  42. Ние сме модерните богове

  43. None
  44. Правете нещо, което обичате

  45. Аз обичам да програмирам!

  46. None
  47. Apprentice Journeyman Master

  48. Чирак Калфа Майстор

  49. None
  50. A long time ago in a galaxy not far away….

  51. 1997

  52. None
  53. None
  54. 1998

  55. None
  56. None
  57. None
  58. None
  59. None
  60. Убеден бях че не знам почти нищо за програмирането

  61. 3 lvl Dev Knight

  62. 3/100

  63. Плафон и половина

  64. None
  65. None
  66. Слаба учебна програма отказва всеки

  67. Сега всички имате достъп до страхотни образователни ресурси онлайн

  68. Khan Academy

  69. Coursera

  70. edX

  71. 2003

  72. None
  73. None
  74. None
  75. None
  76. None
  77. 2004

  78. None
  79. None
  80. None
  81. Technical support

  82. Средата е супер важна

  83. Повечето книги за програмиране издадени в България не стават

  84. None
  85. None
  86. None
  87. None
  88. None
  89. None
  90. Уиндоус не е единствената операционна система

  91. Системното програмиране под Unix е забавно

  92. FreeBSD е най-великата операционна система

  93. None
  94. None
  95. Тунинговането на операционната ти система е супер забавно

  96. Компилирането на ядро е мега яко

  97. vim е странен, но готин редактор

  98. None
  99. Не ограничавайте процеса на учене до рамките на работния ден

  100. less is more

  101. more is more

  102. Поддръжката е една супер неблагодарна работа

  103. Не отивай пиян на работа

  104. 10 lvl Dev Knight

  105. 2005

  106. Systems Programmer

  107. Средата е важна

  108. FTP не става за version control

  109. Правилните инструменти те правят по-продуктивен

  110. None
  111. Emacs

  112. GNU/Linux

  113. Gentoo

  114. Необходима е стратегия за развитие

  115. None
  116. Развивай се в много посоки

  117. Виж какво те кефи най-много

  118. 23 lvl Dev Knight

  119. 2006

  120. C++ Programmer

  121. Средата е важна

  122. Emacs е велик

  123. None
  124. None
  125. None
  126. Трябва да можеш да дебъгваш ефективно

  127. Огромните С++ приложения се компилират бавноооооо

  128. None
  129. Трябва да можеш сам да се ориентираш в кода

  130. Това, за което са те наели, не значи нищо

  131. Понякога просто се налага да правиш нещата, които са важни

  132. None
  133. Постоянното тунинговане на операционна система е загуба на време

  134. None
  135. В голямата фирма нещата се случват бавно

  136. Пренаписванията на проекти са опасни…

  137. …и обикновено не свършват

  138. Ефективното планиране е важно

  139. Екипите, в които има само тесни специалисти, са неефективни

  140. Programming is thinking, not typing. —Casey Patton

  141. Но не е лошо и да можете да пишете като

    хората…
  142. None
  143. Механичните клавиатури са велики

  144. None
  145. Leopold FC 660C

  146. Караокето е най- висшата форма на team building

  147. None
  148. Да ходиш с колежка е лоша идея

  149. 32 lvl Dev Knight

  150. Професионална криза

  151. None
  152. All programming and no play make Bozhidar a dull boy.

    Стара народна мъдрост
  153. None
  154. 2008

  155. Java Programmer

  156. Средата е важна

  157. Прагматично програмиране

  158. Pair programming кърти, чисти и извозва

  159. Базови добри практики • Прилична документация • Автоматизирани тестове •

    Continuous integration • Code review • Планиране на работата • Ретроспективи
  160. Трябва да се инвестира в хората

  161. Java програмистите са Джедаи

  162. C програмистите са Сити

  163. Широк спектър задачи - от десктоп приложения до Java Enterprise

  164. Swing > HTML + CSS

  165. Различни проблеми, различна оптимална технология

  166. Groovy, Scala, Ruby

  167. За да израстваш трябва да поемаш отговорности

  168. Консултантската работа не става

  169. 51 lvl Dev Knight

  170. Преподавател

  171. None
  172. Уменията да презентираш са важни

  173. Не разбираш нещо, ако не можеш да го обясниш

  174. Научаваш повече отколкото хората, на които преподаваш

  175. Индивидуалният подход дава много добри резултати

  176. Голяма част от студентите не знаят защо са на курса

    ти
  177. Партитата на курсовете са топ забавни

  178. None
  179. OSS Developer

  180. 0 -> 1

  181. None
  182. None
  183. Emacs… отново

  184. Когато един проект ти е присърце мотивацията ти е епична

  185. Разпределените екипи работят

  186. Винаги има някой по-умен от теб, от който да учиш

  187. Четенето на добър код е един от най-добрите начини да

    се учиш
  188. Чувството някой да ползва твой проект е невероятно

  189. Да комитваш в Emacs е по-яко от да правиш секс

  190. Абсолятно!

  191. 2011

  192. Technical Lead

  193. Средата е важна

  194. Ти си голям фактор в изграждането и

  195. Средата в start-up-ите е уникална

  196. Продуктова компания > Ишлеме софт

  197. Трябва да научиш това- онова за мениджънт на хора и

    проекти
  198. Трябва ти да се научиш да разпознаваш добри попълнения за

    екипа ти
  199. Трябва да имаш стратегия за развитие на тима

  200. По-голям фокус върху архитектурни решения

  201. Повече време отделено на проучване

  202. Не трябва да си гъз

  203. None
  204. 67 lvl Dev Knight

  205. 2013

  206. CTO

  207. Средата е важна

  208. Ти създаваш средата

  209. Ти избираш технологиите

  210. Най-добрата технология не винаги е технология, която познаваш

  211. Познато != Просто

  212. Познато != Оптимално

  213. Занимаваш се с всичко…

  214. …освен с програмиране

  215. 81 lvl Dev Knight

  216. Равносметката

  217. Програмирам от 18 години

  218. Програмирам професионално от 12 години

  219. В период на около 5 години регистрирах огромни темпове на

    развитие
  220. Бат Божо, колко зле беше миналата година… — Бат Божо

  221. None
  222. Продължавам да научавам нови неща почти всеки ден

  223. Технологиите са развиват стремглаво

  224. Ако не се развиваш в крак с тях ще гледаш

    прогреса им само отстрани
  225. Рецептата за успеха

  226. 500 мл хъс

  227. 800 гр добра среда

  228. 5 кг практика

  229. 20 Разнообразни и разнородни проекти

  230. 3 с.л. забавления

  231. Пече се на бавен огън 10 години

  232. None
  233. Felina twitter: @bbatsov github: @bbatsov http//batsov.com http://emacsredux.com HackConf 2016 София

    Сити, България 16.10.2016