Welcome!

Java IoT Authors: Elizabeth White, Pat Romanski, Zakia Bouachraoui, William Schmarzo, Yeshim Deniz

Related Topics: Java IoT, Microservices Expo

Java IoT: Interview

Thinking, Speaking & Dreaming Technology: Q&A with Michael Hüttermann

Agile development, books, development environments and more.

JetBrains Academy Board MemberWelcome to the first in a series of interviews dedicated to learning more about JetBrains Development Academy Experts.  In this interview we have a conversation with Academy Board Member Michael Hüttermann. Michael is Cologne JUG leader, author, senior coach, consultant, and freelancer for Java/JEE, SCM/ALM and agile software development.

Members of the JetBrains Academy are recognized experts in various areas of software development. They contribute to Java and .Net communities by advocating development best practices through formal and informal publications and meetings, and serve as a versatile source of expertise.

Michael HuttermannQ: Hello Michael, can you tell us who you are, where you are from and what is your passion?
A: My name is Michael Hüttermann and I am from Cologne, Germany. I’m an independent developer, coach and author for Java/JEE, SCM/ALM and agile software development, including strategies and tooling. I’m a community guy. The JetBrains Academy is one community where I’m involved. The Academy fosters the community around JetBrains products and best practices, and accelerates communication and knowledge transfer. It is an interface between developers interested in or using JetBrains products, and JetBrains, its’ product teams and evangelists.

Q: You have two new books hitting the market; can you tell us a bit more about them?
Book TitlesA: My book "Agile ALM" delivers an agile approach to application lifecycle management, covering and integrating major project phases like build, configuration, release, test, requirements management and delivery. It is a comprehensive, practical "one-stop shop" that consists of advanced strategies and real world use cases, and how to implement them with best-of-breed tools. The German book "Fragile Agile" is about the Agile Manifesto, its four value pairs and 12 principles. It explains the message of the manifesto and discusses best practices as well as many widespread misunderstandings and adoption smells (and how to do better). It arrives on the market at a good time as the 10th anniversary of the manifesto is coming soon.

Q: Who is the target audience of your books?
A: "Agile ALM" is for developers, testers, technical leads, and all IT people who want to improve their development process along all development phases. People with Java skills will profit most from the book, especially those who already use or plan to use the tools introduced. "Fragile Agile" is for developers, decision makers, and all people involved in software engineering. It is a controversial and entertaining discussion.

Q: It has been quite some time since you wrote your previous book, "Agile Java-Entwicklung in der Praxis.” Has your view on agile practices evolved since then? And why did you again write books about agile development and strategies?
A: Ultimately, Agile has become mainstream. Many small, mid-sized and large companies, Agile Java Entwicklung in der Praxix buchas well as projects, apply agile strategies, or even use agile process models and methods. It is crucial to deliver high quality software, deliver on time, and implementing requirements the customers want. More than ever, I‘m convinced of agile strategies and environments being critical in this regard. But what I also say in my books, it is not enough to claim to be agile. Teams which are claiming to work agile often aren’t. In some cases those teams are still performing better than traditional teams however there is still room for improvements in many teams.

Q: What role does tooling play and in particular JetBrains’ IntelliJ IDEA?
A: Tooling is very important. For many people it is still a big surprise that the Agile Manifesto states exactly that. It is essential to choose the tool that best fits your requirements and your process.  One concrete aspect of working the agile way is to set up and run productive environments. Especially those tools are of big interests that accelerate your work flow, improve collaboration, and help sharing information. Talking about IDEs in particular, it is the major difference between a plain ASCII editor and a smart IDE. The wise IDE anticipates your intentions and is doing much more than just enabling editing text files. IntelliJ IDEA often acts as a hidden, magic guy who already knows what you want to achieve, and helps you to do so. Another important aspect is barrier-free development, integrating languages and bridging different project phases. For instance, it should not matter, whether you are working on a Java file, or any other artifact type. IntelliJ IDEA is excellent in this regard, too, because of its great support for different languages and artifact types. Also, its integration capabilities are of big value. An example for a nice integration is its bridge to component repositories like Nexus or Artifactory.

Q: How do best practices fit into the mix?
A: Best practices are important, because you don’t want to start on a green field again and again, making all the same errors, repeatedly. Look at the agile development; it is all about best practices. Moving closer to software development itself, best practices also apply to design and code. Although development (in the narrow sense) does not depend as much on patterns as e.g. software architecture does, it is of big importance during daily work nevertheless. A good IDE should help you in detecting design and code smells.  Look at IntelliJ IDEA’s 600+ inspections for detecting smells. That’s a big help for sure.

BP

Q: IntelliJ IDEA 10 EAP is now available.  Have you had a chance to take it for a spin and if so what are your first impressions?
A: Sure, I’ve already tried the first EAPs. Again, enhancements and bug fixes were added in all areas, thus everybody will benefit, and much more stuff is on the run before the final release, I’m sure. Examples of what I like particularly are: further improvements for editing XML like introducing or refactoring namespaces easily, the handy database table editor and viewer, or further features for using marked objects while evaluating expressions during debugging.

EAP 10

 

Q: What is your take on the evolution of the IDE and direction of features? Where is tooling headed in the future?
A: On one hand, IDE tooling continues its movement to even more integration and smart one-stop shop solutions. On the other hand, tooling will further enable slicing according to your needs, by simple configuration, or provide scoped solutions. This is Quote-MHthe reason both ways are interesting, a full-fledged IDE that can be integrated with lot of other tools, as well as a targeted, light product that serves a special target audience or domain. Both product categories profit from each other by interchanging a platform or basic features. Alternatively, you take the tool and switch off features that are unnecessary for you, being still able to extend the product with plugins on-demand though. JetBrains’ product strategy fits nicely into this, and I think, this more coarse-grained orchestration of features, together with a configuration to align the package with your requirements, is more helpful for many end users, compared to providing a thin platform, and adding a lot of fine-grained plug-ins, with its version nightmare. Eclipse is doing that as well meanwhile, by providing packages and release trains.

Q: Can you share with us your favorite feature, or a feature that you like most at the moment?
A: That is a tough question, because there are many excellent and very helpful features. Of course there is the support for many frameworks and languages. For me and my daily work the main benefit of IntelliJ IDEA is that it allows you to work with the keyboard exclusively most of the time. This way, together with an intuitive usage of the IDE, you can work in a very productive way. But there are so many small and almost hidden concrete features that are so helpful. What I like particularly are the many options the code completion offers. It is not limited to the “normal” completion everyone knows. IntelliJ IDEA also suggests suitable class names or statements for completion, not mentioning its helpful ability to complete statements containing chained method calls.

Q: When you are not thinking, speaking, or dreaming about technology what are you doing?
A: Actually, as a work-life balance, I write books, and attend and speak at conferences.  That is what makes it fun. Besides that, football is very interesting for sure, and having drinks with good friends.

Thank you Michael for your valuable time. You can learn more about Michael by visiting huettermann.net and keep up-to-date with his latest activities at twitter.com/huettermann.

More Stories By Robert Demmer

Robert Demmer is responsible for Developer Programs at JetBrains. He has more than 15 years experience in business consulting, communications, community engagement, marketing and advertising.

IoT & Smart Cities Stories
Atmosera delivers modern cloud services that maximize the advantages of cloud-based infrastructures. Offering private, hybrid, and public cloud solutions, Atmosera works closely with customers to engineer, deploy, and operate cloud architectures with advanced services that deliver strategic business outcomes. Atmosera's expertise simplifies the process of cloud transformation and our 20+ years of experience managing complex IT environments provides our customers with the confidence and trust tha...
With the introduction of IoT and Smart Living in every aspect of our lives, one question has become relevant: What are the security implications? To answer this, first we have to look and explore the security models of the technologies that IoT is founded upon. In his session at @ThingsExpo, Nevi Kaja, a Research Engineer at Ford Motor Company, discussed some of the security challenges of the IoT infrastructure and related how these aspects impact Smart Living. The material was delivered interac...
Intel is an American multinational corporation and technology company headquartered in Santa Clara, California, in the Silicon Valley. It is the world's second largest and second highest valued semiconductor chip maker based on revenue after being overtaken by Samsung, and is the inventor of the x86 series of microprocessors, the processors found in most personal computers (PCs). Intel supplies processors for computer system manufacturers such as Apple, Lenovo, HP, and Dell. Intel also manufactu...
Darktrace is the world's leading AI company for cyber security. Created by mathematicians from the University of Cambridge, Darktrace's Enterprise Immune System is the first non-consumer application of machine learning to work at scale, across all network types, from physical, virtualized, and cloud, through to IoT and industrial control systems. Installed as a self-configuring cyber defense platform, Darktrace continuously learns what is ‘normal' for all devices and users, updating its understa...
At CloudEXPO Silicon Valley, June 24-26, 2019, Digital Transformation (DX) is a major focus with expanded DevOpsSUMMIT and FinTechEXPO programs within the DXWorldEXPO agenda. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throug...
OpsRamp is an enterprise IT operation platform provided by US-based OpsRamp, Inc. It provides SaaS services through support for increasingly complex cloud and hybrid computing environments from system operation to service management. The OpsRamp platform is a SaaS-based, multi-tenant solution that enables enterprise IT organizations and cloud service providers like JBS the flexibility and control they need to manage and monitor today's hybrid, multi-cloud infrastructure, applications, and wor...
Apptio fuels digital business transformation. Technology leaders use Apptio's machine learning to analyze and plan their technology spend so they can invest in products that increase the speed of business and deliver innovation. With Apptio, they translate raw costs, utilization, and billing data into business-centric views that help their organization optimize spending, plan strategically, and drive digital strategy that funds growth of the business. Technology leaders can gather instant recomm...
The Master of Science in Artificial Intelligence (MSAI) provides a comprehensive framework of theory and practice in the emerging field of AI. The program delivers the foundational knowledge needed to explore both key contextual areas and complex technical applications of AI systems. Curriculum incorporates elements of data science, robotics, and machine learning-enabling you to pursue a holistic and interdisciplinary course of study while preparing for a position in AI research, operations, ...
Codete accelerates their clients growth through technological expertise and experience. Codite team works with organizations to meet the challenges that digitalization presents. Their clients include digital start-ups as well as established enterprises in the IT industry. To stay competitive in a highly innovative IT industry, strong R&D departments and bold spin-off initiatives is a must. Codete Data Science and Software Architects teams help corporate clients to stay up to date with the mod...
In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and simple way to introduce Machine Leaning to anyone and everyone. He solved a machine learning problem and demonstrated an easy way to be able to do machine learning without even coding. Raju Shreewastava is the founder of Big Data Trunk (www.BigDataTrunk.com), a Big Data Training and consulting firm with offices in the United States. He previously led the data warehouse/business intelligence and Bi...