Next-gen IDE v2 - OpenSlava 2013-10-11

50 %
50 %
Information about Next-gen IDE v2 - OpenSlava 2013-10-11
Technology

Published on March 20, 2014

Author: deors

Source: slideshare.net

Description

Slides for my talk at OpenSlava conference 2013-10-11.
Abstract: Integrated Development Environments are at the neuralgic centre of developer activities. For many of us it’s unconceivable to work in complex developments leveraging multiple heterogeneous tools for design, build and test activities without the IDE connecting them all.
IDEs are powerful tools, capable of handling many types of tasks. In many cases, IDEs are perceived as a commodity but this is a naïve approach that ignores the many brilliant features that IDEs can be used for: debugging, code generation, test automation, version control, quality assurance, task & issue management, etc.
During this talk, participants will get an overview of what IDEs mean today, for the newbie, the enterprise and the hard-core developer, will get introduced to key IDE features that every one of us should be using, and will participate on an open discussion about what next-generation IDEs should look like.

Organizers Top Media Partner Media Partner Supporter Next-Gen IDEs Jorge Hidalgo October 11, 2013

Presenter Jorge Hidalgo @_deors Accenture Delivery Center in Spain, Malaga Senior Technology Architect with 14 years of IT professional experience mostly with Java technologies across industries. Java Capability Lead at the Accenture Delivery Center in Spain. From time to time writing a blog called Dr. MacPhail’s Trance: http://deors.wordpress.com Father of two children, husband, whistle player, video gamer, sci-fi junkie, Raspberry Pi fan...

www.sli.do/openslava Ask questions online

Next-Gen IDEs Let’s poll the audience: 1: Who knows what’s an IDE? 2: Who use an IDE in a regular basis?

Next-Gen IDEs IDEs are neuralgic to development work

Next-Gen IDEs Productivity Quality Predictability

Next-Gen IDEs IDEs mean different things to different types of developers

Subject Zero Name: Lisa CV: Undergraduate student in Computer Sciences Aspirations: Learn to program, find a job, master her profession and eventually conquer the world

Enterprise Developer Name: Stefan CV: Two years IT experience working for a consulting firm Aspirations: Gain experience, lead his own developer team, become an architect, create his own startup (who knows if Facebook would buy it some day)

Hardcore Developer Name: Adam CV: 15 years IT experience, freelancer, night job contributing to open source projects, Scala and Groovy fan Aspirations: Loves to have ideas and make them reality through code, passionate about software engineering, active in blogs, developer mailing lists, stack overflow and similar. When not programming he can be found playing as a monk in WoW.

Next-Gen IDEs Another poll for the audience: 3: What type of developer do you think you are?  Learning / newbie  Enterprise developer  Hardcore developer

Next-Gen IDEs And now the poll you were waiting for: 4: Which is your favorite IDE?  Eclipse / SpringSource Tool Suite / JBoss Tools  NetBeans  JetBrains IntelliJ IDE / AppCode / WebStorm …  Oracle JDeveloper  IBM Rational Application Dev. / Software Arch.  Microsoft Visual Studio  Others

Subject Zero Name: Lisa CV: Undergraduate student in Computer Sciences Aspirations: Learn to program, find a job, master her profession and eventually conquer the world What’s in an IDE for Lisa?

What’s in an IDE for Lisa? IDEs are learning instruments • Wizards • Project examples • Skeletons • Archetypes • Code completion IDEs help to write good code and follow best practices • Static code profiling tools Invest time in mastering an IDE – is the perfect way to boost up adoption of new programming skills

Enterprise Developer Name: Stefan CV: Two years IT experience working for a consulting firm Aspirations: Gain experience, lead his own developer team, become an architect, create his own startup (who knows if Facebook would buy it some day) What’s in an IDE for Stefan?

What’s in an IDE for Stefan? IDEs are collaboration tools • Task/Issue management • Source code management • Peer/code reviews IDEs help with quality and testing • Static code profiling tools • Test automation (unit, integration) • Debugging • Monitoring and profiling

What’s in an IDE for Stefan? IDEs apply to all development phases • Gather requirements • Business processes modelling • UML • Test management Within the IDE gain complete traceability of all development work, from requirements to releases and all the other way round.

Hardcore Developer Name: Adam CV: 15 years IT experience, freelancer, night job contributing to open source projects, Scala and Groovy fan Aspirations: Loves to have ideas and make them reality through code, passionate about software engineering, active in blogs, developer mailing lists, stack overflow and similar. When not programming he can be found playing as a monk in WoW. What’s in an IDE for Adam?

What’s in an IDE for Adam? Hardcore developers don’t use an IDE!

What’s in an IDE for Adam? There is an IDEs for nearly everything • Java, Scala, Groovy… JVM languages • Web: PHP, HTML5, JavaScript • C/C++, Objetive C Ability to work on multiple projects within the same tool – ideally the one you know the best.

What’s in an IDE for Adam? Next wave of code generation tools • Spring Roo • JBoss Forge • Eclipse JET (not new but still underused) Boost up productivity • JRebel, Spring Loaded Leverage the IDE to speed up development, do more in less time and focus only on the fun part, not on the repetitive stuff.

What’s in an IDE for Adam? Next wave of collaboration tools • Cloud-based code reviews • Peer programming (even if no co-located) Cloud, cloud, cloud • Cloud IDEs: Code anywhere, anytime • Cloud application platforms • Cloud-based monitoring/profiling tools • Cloud-based performance testing tools Embrace the Cloud.

Recap • Learning instruments • Write good code and follow best practices • Collaboration tools • Quality and testing • Apply to all development phases • There is an IDEs for nearly everything • Boost up productivity • Next wave of code generation tools • Next wave of collaboration tools • Cloud, cloud, cloud

State of the Art I Let’s go one by one and check what’s the IDE state of the art

State of the Art II • Learning instruments Current: All major IDEs meet or exceed. Wish-list: • Improve documentation and step-by-step guidelines • Help both the newbie and the experienced willing to learn something new. • For extension providers (i.e. SpringSource Tool Suite, JBoss Tools, IBM Rational) I miss more specialized code templates and code snippets.

State of the Art III • Write good code and follow best practices Current: All major IDEs meet or exceed in Java/.Net with other languages catching up. Wish-list: • Java has a long “tradition” on static code analysis, but other languages need to catch up, specially for dynamic languages – there is no “compiler-safe- net”. • In JVM languages, leverage APT to “infuse” code profiling in the compiler process.

State of the Art IV • Collaboration tools Current: All major IDEs meet or exceed. Wish-list: • While IDE plug-ins are good and improving, still need to catch up to offer the same functionality that usually can be found in web clients. • What’s the point of going to go back to the browser if you are already working on the IDE? Productivity, productivity, productivity!

State of the Art V • Quality and testing Current: Unit testing support is good in all major IDEs, but support for other Q&T activities need improvement. Wish-list: • Integration/Functional/Regression testing support is limited, i.e. integrate recording tools within the same IDE. • BDD/Acceptance testing adoption is growing, but IDE support is minimal in the best case.

State of the Art VI • Apply to all development phases Current: Commercial IDEs are a bit ahead on Requirements/Analysis/Modelling support. Wish-list: • Rest of IDEs to catch-up in UML modelling and model-to-code transformations features. • Better traceability of artifacts, from requirements to release and vice-versa. • There are good ALM platforms, but features integrated within the IDE are still limited.

State of the Art VII • There is an IDEs for nearly everything Current: All major IDEs meet or exceed. Almost all major IDEs are based on open platforms with a rich community of plug-in developers. Even if ‘core’ IDE doesn’t offer support for a framework or language, it is likely that someone else is providing for that. Wish-list: • Improve “plug-in dependency hell” and installation times. • Sometimes command-line ops is still required.

State of the Art VIII • Boost up productivity • Next wave of code generation tools Current: All major IDEs meet or exceed, but these capabilities are still not widely used. Wish-list: • Extend your tool-belt and pick up good productivity tools. Every hour you save is more value for you as a professional, more value for your company/client, and it is likely that you will have more free time! • JRebel, Jet, Roo, Forge…

State of the Art IX • Next wave of collaboration tools Current: Area for further development. Good things coming out like Gerrit integration or Sonar reviews, but still much to do. Wish-list: • IDEs should allow for peer programming and collaborative development, seamlessly. • Use “social networks” to interact with peers, ask for support, interchange working code, ideas, etc.

State of the Art X • Cloud, cloud, cloud Current: Area for further development. Support for cloud platforms irregular, in many IDEs you don’t have support and need to go to command-line. Wish-list: • Working in the IDE for a cloud platform should be indistinguishable from a local server platform. E.g. Azul for Azure, Cloud Foundry support in Eclipse. • Cloud IDEs are growing in features and are a great alternatively for Cloud work. E.g. Codenvy.

Discussion www.sli.do/openslava

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

October | 2013 | dr. macphail's trance

1 post published by deors during October 2013. dr ... 2013 I participated in the first ever OpenSlava ... A journey trough IDE features and ...
Read more

Buy & Download - FDT – The Eclipse Plugin for ...

Linux builds have been tested on Ubuntu but should run on other distributions too. With the download of FDT you accept our EULA
Read more

Powerflasher FDT

FDT Standalone based on Eclipse Mars With this new release FDT Standalones are based on Eclipse Mars. Kepler and Luna based FDT Standalones are still ...
Read more

Free Technology Demo - Bugbear Entertainment presents Next ...

The Free Technology Demo contains a limited version of the playground scene that we use internally to test various features like car damage and ...
Read more

Difference between SATA I, SATA II and SATA III

What is the difference between SATA I, SATA II and SATA III? SATA I (revision 1.x) interface, ...
Read more

Ubisoft

Welcome to the official website for Ubisoft, creator of ... Welcome to a next-gen experience in a persistent and dynamic open world environment that ...
Read more

Eclipse Code Formatter for Java - NetBeans Plugin detail

Introduction This plugin helps you to apply to a common code style in a team of Eclipse JDT and NetBeans IDE users. The original formatting engine of ...
Read more

ASUSTeK Computer Inc. -Support- Driver & Tools - Z87-PRO

Driver & Tools; CPU Support; Memory/Device Support; FAQ; Warranty; Manual & Document; Driver & Tools. There are 3 download servers available on ASUS ...
Read more

The ChannelPro Network

The ChannelPro Network is dedicated to providing IT consultants, VARs and MSPs who serve the IT needs of small and midsize businesses (SMBs) the news ...
Read more