Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Професия - програмист

Minko Gechev
October 16, 2014

Професия - програмист

Презентация от програмата "Европейска международна седмица на програмирането" 2014, в СОУ "Васил Левски", гр. Троян.

Minko Gechev

October 16, 2014
Tweet

More Decks by Minko Gechev

Other Decks in Education

Transcript

  1. Минко Гечев • Професия • Разработчик • Консултант • Трейнър

    • Лектор и асистент във ФМИ ! • Образование: • СУ “Св. Климент Охридски” • СОУ “Св. Климент Охридски” ! • Хобита: • Софтуер с отворен код • Софтуерно инженерство • Математика Twitter GitHub Блог
  2. Съдържание • Програмиране. Какво е това? • Какво е да

    си програмист? • Работа на програмиста • Нужна ли ни е математика? • Как да започнем?
  3. Програмиране • Програмирането е процес, който води от формулиран изчислителен

    проблем до изпълнима програма. • Изчислителният проблем може да бъде всичко - от уеб сайт на любимата ми котка Джеси, до създаване на сложен алгоритъм за GPS система.
  4. Примери за създаване на софтуер • Създаване на уеб сайт

    • Софтуер за GPS навигация за автомобил • Софтуер за четец на пръстови отпечатаци на новия ви (не чак толкова) iPhone • Създаване на софтуер за банкомат • Софтуер за кафе машина • Разпознаване на човешки образи от снимка • Система за управление на ресурсите на голяма корпорация • Създаване на компютърна игра • Създаване на бот за автоматизирана игра на Counter Strike • “Разбиване на паролата на фейсбук” на гаджето ви • и много др…
  5. Какво представлява програмирането? • Обикновено програмирането се свежда до въвеждане

    на текст, който след определена обработка, бива изпълнен (интерпретиран) от компютъра. • “Текстът” въведен от програмистите представлява поредица от инструкции, които компютърът трябва да изпълни.
  6. Езици за програмиране • C • Java • Pascal •

    JavaScript • TypeScript • Dart • CoffeeScript • Ruby • Perl • Haskell • C# • Scala • D • C++ • JSX • PHP • F# • SmallTalk • Caml • COBOL • Fortran • Erlang • Go • Swift • Objective-C • J • ksh • Lua • Lynx • Io • Simula • NPL • Oz • Rust • Scheme • Visual Basic • R • Self • Clojure • Python • и много други…
  7. Езици за програмиране • Огромно количество • Комбинирани около няколко

    общи идеи със солидна математическа основа • Излишно и невъзможно е да се отдели време за научаване на всичките езици • В перфектния случай научете по един или няколко езика от различни “парадигми”
  8. Малко допълнителна информация… • Можем да мислим за дадено изображение

    като “решетка” от квадратчета. Всяко квадратче в решетката има някакъв цвят. Това е т. нар. растерна графика. • Цвета на всяко квадратче се се представя с три стойности: • Red ϵ [0, 255] • Green ϵ [0, 255] • Blue ϵ [0, 255] • Например черното е: (0, 0, 0), а бялото (255, 255, 255).
  9. Машинно (само)обучение • Machine learning is a subfield of computer

    science and statistics that deals with the construction and study of systems that can learn from data, rather than follow only explicitly programmed instructions… • Computer science is considered by some to have a much closer relationship with mathematics than many scientific disciplines, with some observers saying that computing is a mathematical science.
  10. Как да започнем… • Научете английски • Посещавайте часовете по

    информатика и математика • Използвайте онлайн ресурси като: • Code School • Coursera • Khan Academy • code.org
  11. Къде да уча? • Има отлични чуждестранни университети като: •

    MIT • Stanford University • University of Cambridge • University of California Berkley • University of Oxford • Technical University of Munich Но не всички са достъпни финансово (пр. една година в Stanford е около $80 000).
  12. Нивото на някои български университети е добро! • ФМИ на

    СУ • Софтуерен Университет • Технически Университет София • Нов Български Университет • Американски Университет • Университетът по библиотекознание и информационни технологии
  13. Има множество курсове и ресурси онлайн • Coursera - безплатни

    онлайн курсове от университети като Stanford, Princeton, TUM и много други. • HackBulgaria - безплатни и платени курсове по модерни технологии, използващи иновативна методология за преподаване • Telerik Academy - безплатни курсове по модерни технологии • И други
  14. –Linus Torvalds “Most good programmers do programming not because they

    expect to get paid or get adulation by the public, but because it is fun to program.”