InfoQ Homepage Articles
-
Where Has the Java PermGen Gone?
Prior to JDK8 class metadata and constants would live in an area called the “permanent generation”, contiguous with the Java heap. One problem was that If the class metadata size is beyond the allocated bounds your app would run out of memory. With the advent of JDK8 we no longer have PermGen. The space where it was held has now moved to native memory to an area known as the “Metaspace”.
-
Building Better Search Engines by Measuring Search Quality
Search engines are developed using standard sets of realistic test cases that let developers measure the relative effectiveness of alternative approaches. This article talks about NIST's Text Retrieval Conference (TREC) project used to create the infrastructure to measure the quality of search results.
-
Burn-Down or Burn-Out? How to Beat the Red-Sprint Agile Anti-Pattern
There are ways to obtain sustainable pace beyond scrum that can help stem the increasing number of failing scrum projects. Because executing sprints as small projects often does not lead to the desired results, it is more effective to apply a backlog-item-oriented workflow and to treat sprints as iterations.
-
Quantifying the Impact of Agile Software Development Practices
Rally Software and Carnegie Mellon's Software Engineering Institute (SEI) are researching the impact of agile software development practices using data from Rally’s Agile Application Lifecycle Management (ALM) platform. InfoQ interviewed Larry Maccherone and Jim McCurley about their collaboration, measurements from the study, conclusions from the analysis and plans for further research.
-
VRaptor MVC Framework; Powerful Simplicity
VRaptor's latest version 4 CDI MVC framework is now available. In this article we take a tour of how to use this simple but powerful framework to build web applications
-
Virtual Panel: Configuration Management Tools in the Real World
Configuration management tools are a hot topic on the DevOps community and IT organizations in general. InfoQ reached out to users of each of the major tools (Ansible, CFEngine, Chef, Puppet and SaltStack) to ask them about their experiences. Why did they choose a given tool? How was the tool introduced in the organization? These are some of the questions they answered.
-
How to Ideate? Be a Hunter
Having a hard time choosing an idea for a business? Have no ideas or worried your ideas are no good? You're in good company. Nearly every first idea is bad. It's not about the ideas but about the process. Keep at it. When you miss, learn from it and take another shot. Study your prey. Be an idea hunter.
-
Preparing for Scale: InfoQ Virtual Roundtable with Cloud Practitioners
How should organizations plan for a cloud environment and optimize it for efficiency at scale? InfoQ reached out to 3 leading cloud practitioners to uncover practical advice on this topic. Each panelist has dealt with the sometimes-messy transition from on-premises to cloud, and coached organizations through their journey.
-
Making an Impact on 7000 Orphanages
Ahmad presents a set of useful techniques that can be applied in strategic workshop or in an initial product backlog session. He tells the story of how the techniques were used in a strategy workshop held in Cairo for a NGO who seeks to raise the standards for all orphanages across Egypt.
-
Article Series: Configuration Management Tools
Configuration management is the foundation that makes modern infrastructure possible. Tools that enable configuration management are required in the toolbox of any operations team, and many development teams as well. Although all the tools aim to solve the same basic set of problems, they adhere to different visions and exhibit different characteristics.
-
Book Review: Integration Testing from the Trenches
In this important and thorough treatise “Integration Testing from the Trenches” Nicolas Frankel starts from basic definitions and develops the concepts of integration testing with a casual formalism that's intuitive and fun.
-
God-Mode in Production Code
Takipi is trying to level out the playing field between dev and prod debugging by making it just as easy to debug Java and Scala code in production as it is on your desktop. It detects errors and exceptions in server code, provides analytics to help prioritize them, and captures the source code and values of variables that caused them.