Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Continuous improvements of developer efficiency with modern IDE


Published on

Nowadays IDE are much more intelligent than 10 years ago when they played mainly code editor functions. At the same time number of good practices and techniques is growing from day to day and most developers don’t have time to learn them with the same pace. So it could be a good idea to use IDE as continuous learning tool. In this talk we will cover following areas of developer efficiency: automated refactorings, live templates, useful suggestions, code standards, code navigation, code generation… I hope after this talk your daily job will become much more effective.

Published in: Engineering
  • Be the first to comment

Continuous improvements of developer efficiency with modern IDE

  1. 1. Continuous improvements of developer efficiency with modern IDE Mikalai Alimenkou @xpinjection
  2. 2. Some developers are always 150% busy
  3. 3. 10x developers are NOT a myth
  4. 4. 13 years ago I wrote getters and setters for 30 fields manually, Carl! In my “modern” IDE.
  5. 5. “Competitive advantage of modern developer is in learning speed and efficiency, not in frameworks or tools!” Mikalai Alimenkou
  6. 6. 5 key ingredients of efficiency #1. Clean and well configured workspace#2. Effective navigation within workspace #3. Avoid waste repeating same actions #4. Continuously grow knowledge base #5. Inspect and adapt learning process
  7. 7. #1. Clean and well configured workspace • Configure toolbar, navigation bar, and side panels • Switch off tabs in editor • Configure line numbers and gutter icons • Use distraction free and presentation modes • Manage context in tasks • Configure plugins for external tools (command line, SSH, terminal, Docker, AWS DB, SQL, REST checker, etc.)
  8. 8. #2. Effective navigation within workspace • Search everywhere (Shift + Shift) • Show navigation bar as popup (Alt + Home) • Show side panels (Alt + 1..9) • Last viewed/edited files (Ctrl + E/Ctrl + Shift + E) • Search class/file/dir with regexp, upper case letters and ‘:’ • Bookmarks with naming option (F11/Ctrl + F11/Shift + F11) • Navigate through methods (Alt + Up/Down) • Show all methods (Ctrl + F12) • Show code in popup without navigation (Ctrl + Shift + I)
  9. 9. #3. Avoid waste repeating same actions • Live templates (Ctrl + J) • All types of autocompletion within context • Configurable copy-paste buffer (Ctrl + Shift + V) • Suggestions in any context to improve code (Alt + Enter) • Code auto formatting (Ctrl + Alt + L/Ctrl + Alt + I) • Wrap code in live templates (Ctrl + Alt + T) • Automatic refactoring options • Additional options at the bottom of action popup (static import, change type, invert condition, etc.) • Write unit tests instead of debugging • Analyze stacktrace from clipboard
  10. 10. #4. Continuously grow knowledge base • Check available refactoring options • Review code convention rules • Configure and read tip of the day • Use effective debugging techniques (conditional breakpoints, stream debugger, object markers, expressions, etc.) • Explore API with auto suggestions • Review class hierarchy to understand code better (Ctrl + H) • Search everywhere to find available options (Shift + Shift) • Adjust code style settings on context (Alt + Enter)
  11. 11. #5. Inspect and adapt learning process • Key promoter plugin to learn and introduce new shortcuts • Check productivity guide on regular basis • Use IDE Features Trainer plugin to improve IDE usage skills • Use Code Golf plugin to train on coding katas • Control mouse usage to minimize it • Subscribe to IntelliJ IDEA blog to adopt new features ASAP • Adopt pair programming
  12. 12. Senior Developers are not all the same
  13. 13. @xpinjection