Slides from Saint-Petersburg .NEXT conference http://spb2015.dotnext.ru # .NET vs SHELL ## Vitaly Baum vitaly.baum@gmail.com @butaji # whoami 1) program manager @ bright box 2) connected car, cloud, mobile # What? 1) Habits 2) Tools 3) Demo # Writing ## IDE vs Editor 1) Lightweight 2) File System 3) Any Language 4) Any Workflow 5) Your Keybindings ## IDE vs Editor 1) Project 2) Code Knowledge 3) Debugging 4) Build System 5) Wizards, Templates ## Visual Studio ![](vs.png) ## Visual Studio ```cs class Program { static void Main() { Console.WriteLine(@"Hello World!"); } } ``` ## Visual Studio 1) Ceremonies 1.1) Time to HelloWorld 1.2) Time to Compile 1.3) Hotkeys and Extensions ## Ceremonies Land 1) Solution (new version - new format) 2) Projects (can't open until install extension) 3) Dependencies (you don't care, automagic) ## Visual Studio 1) Hardware 2) Battery Life ## Visual Studio ## F5 | CI # Addiction 1) What tools you depend on? 2) What will be the first step? 3) How convertible your skills? # Addiction ## You in 5 years # Industry ## 40 years # UNIX Principles 1) Write programs that 'do one thing' and do it well 2) Write programs to 'work together' 3) Write programs to handle 'text streams', because that is a universal interface 'Doug McIlroy, the inventor of Unix pipes # Slides Story 1) slides.md ('markdown', 'plain-text') 2) ln -s ('icloud', 'git') 3) editors ('ia writer', 'vim') 4) vimdeck slides.md -n nvim # Using Shell 1) I tend to create simplest solutions 2) I tend to work with Text, not Projects -- Think over API, is it good for memorisation? -- Do I need my own wraper? -- Is this structure show that I want to create? # Bingo! ## Processes # Bingo! ## Objects # Bingo! ## Actors # Bingo! ## Microservices # Demo Time ![](term.png) # My Env 1) fish 2) oh-my-fish ('bobthefish') 3) dark-solarized 4) vim ('scrooloose/syntastic', 'bling/vim-airline', 'kien/ctrlp.vim', 'powerman/vim-plugin-ruscmd', 'ervandew/supertab') 5) Mono 4 6) httpie, jasmine, frisby.js # VIM 1) Availability 2) Hotkeys, JK-nav 3) Undo persistence (http://vimdoc.sourceforge.net/htmldoc/undo.html#undo-persistence) 4) Scripts, Plugins # MONO vs .NET ## UI / Perfomance ## Ubuntu 14.04 .NET Portability Analyzer # THX! ' vitaly.baum@gmail.com @butaji