September 2021 Summaries
10 posts from Harness
Filter
Month:
Year:
Post Summaries
Back to Blog
Harness has introduced a series of new features and enhancements across its Continuous Delivery (CD), Continuous Integration (CI), and Feature Flags (FF) platforms, including deployment freeze windows, API support for approvals, and a Node.js SDK for Feature Flags. The updates aim to improve automation and visibility in the DevOps process, with features such as event notifications and support for common build tools like Gradle. Additionally, Harness University has launched new Cloud Cost Management courses, and the company is engaging its community through various events and webinars. Upcoming developments include enhancements in CI/CD, cloud cost management, and security features like GitOps and a proxy relay for Feature Flags. The company's efforts reflect a commitment to continuous improvement and community involvement, with a focus on optimizing cloud spend and enhancing DevOps capabilities.
Sep 29, 2021
1,293 words in the original blog post.
Harness has launched "Plugtoberfest," a new initiative that coincides with the global open-source event Hacktoberfest, to foster the creation of plugins for Drone/CIE, thereby enhancing the Continuous Integration ecosystem with community-driven innovations. This initiative aligns with Harness's commitment to open-source, which began with its acquisition of Drone in 2020, a pioneer in Continuous Integration. Hacktoberfest, established in 2014, is a month-long celebration that promotes participation in open-source projects, offering incentives such as event swag or tree planting for contributors who fulfill the requirement of submitting at least four valid pull requests. Plugtoberfest specifically encourages the development of Docker container-based plugins that perform a variety of tasks within pipelines, such as deploying code or sending notifications. Participants can submit their plugins to the Drone Plugin Registry and engage with the community through various channels, including community Slack and social media, to share their work and join discussions.
Sep 29, 2021
287 words in the original blog post.
The blog humorously explores the diverse and quirky personalities found within the engineering community by categorizing engineers into unique types, while subtly promoting Harness's software solutions for CI, CD, Feature Flags, and Cloud Cost Management. It concludes the mini-series by describing three engineer types: The Cthulhu, known for their long tenure and eccentricity; The Always Anxious, characterized by their high stress levels and rapid work pace; and The Unexpected, who defies typical engineering stereotypes with their fitness enthusiasm and surprising work quality. This light-hearted series aims to entertain and uplift engineers, emphasizing their valuable contributions to the world.
Sep 27, 2021
553 words in the original blog post.
Engineering leaders can improve predictability and reduce scope creep by evaluating Product Managers' output quality using five key proxies: the frequency of requirement changes, the clarity of acceptance criteria, prioritization of technical debt, attention to security and platform features, and balancing investments across product, security, and platform capabilities. These measures help create a healthier balance between innovation and technical debt, resulting in more predictable releases and reduced team burnout. Predictability in engineering is challenging due to the tension between business demands and the need for well-planned sprints. Scope creep often arises from unplanned changes, categorized as bug creep or feature creep, with feature creep being a sign of poor product management. Consistent feature creep indicates potential management issues, as product management success can be difficult to measure. By focusing on clear requirements, acceptance criteria, and technical debt, and by ensuring proper investment balance, engineering leaders can better assess the quality of a Product Manager's work.
Sep 23, 2021
1,104 words in the original blog post.
Microservices communication can become confusing due to the ambiguous use of terms like "upstream" and "downstream," leading to misunderstandings in technical discussions. The article highlights how these terms, often used to describe data flow between services, lack precision because they can be interpreted differently depending on the context. This ambiguity arises because data flows bi-directionally in HTTP interactions, similar to ocean tides rather than a single stream. To address this, the author suggests using terms based on the relative roles of services, such as "supporting service" and "client service," which provide clearer communication by focusing on service relationships rather than data direction. This approach has improved the author's ability to hold precise and efficient conversations about microservices interactions. Additionally, the text briefly introduces the Split Feature Data Platform™ as a tool for feature management, enabling safe and controlled feature deployments, A/B testing, and efficient team collaboration to enhance software development processes.
Sep 14, 2021
886 words in the original blog post.
Effective REST API design involves mastering key principles to create intuitive and efficient interfaces that facilitate smooth system integration. Although REST is widely considered a standard for APIs, it is more of an art form that emphasizes consistency in design, which is crucial for ease of use. Consistent paradigms throughout an API, down to naming conventions, make it easier for developers to learn and adapt. REST APIs revolve around resources, which should be stable and clearly defined, with resource names being plural nouns to represent the pool of that resource type. Unique IDs and type fields are essential for identifying resources reliably and offering future flexibility. While hypermedia links (HATEOAS) are often considered the next level of REST, they are less practical in modern API consumption, though enabling users to traverse resources through stable links remains important. Adhering to standards such as those for JSON and HTTP is vital, particularly in the correct use of status codes and HTTP methods. Ultimately, building great APIs involves a focus on completeness and consistency across the API and with other APIs, ensuring developers have the tools to extend functionality beyond initial use-cases.
Sep 09, 2021
2,559 words in the original blog post.
Harness enhances AWS EKS-Anywhere by providing a seamless and consistent deployment experience for business-critical applications, leveraging artificial intelligence and machine learning for application validation and rollback. AWS EKS-Anywhere allows customers to run Kubernetes clusters on their own hardware in various datacenter configurations, and Harness supports this with its intelligent software delivery platform. By combining the flexibility of Harness' platforms with the AWS EKS and EKS-A ecosystem, users can deploy applications with confidence in velocity, governance, quality, and efficiency. Harness integrates with existing metrics and logging tools, ensuring successful deployments and allowing rollbacks if necessary, and continues to develop AWS-specific capabilities to enhance the EKS-Anywhere experience.
Sep 08, 2021
432 words in the original blog post.
Enhancing Developer Experience (DX) is crucial for creating efficient and productive teams by minimizing context switching and decision fatigue, which in turn reduces ramp-up and onboarding times while fostering innovation. DX is akin to User Experience (UX) but focuses on internal users, primarily software engineers, and emphasizes usability, findability, and credibility as its core pillars. Good DX allows developers to concentrate on essential tasks without accumulating technical debt, thereby supporting innovation, iteration, safety, and velocity. As technology evolves, the expectation for seamless and intuitive enterprise systems grows, highlighting the importance of a positive DX in maintaining the next generation of software and platforms. The Harness Platform exemplifies this by integrating these pillars to facilitate a smooth transition from idea to production, further nurturing an innovation pipeline as engineers move across projects and companies to enhance their skills and productivity.
Sep 08, 2021
1,274 words in the original blog post.
Harness transitioned from Jenkins to its proprietary Continuous Integration (CI) solution, significantly enhancing developer efficiency by eliminating frequent outages and managing over 100,000 builds effectively. The migration addressed common Jenkins pain points, such as master management issues and lack of container-native features, by incorporating modern functionalities like Docker-based architecture and Test Intelligence. This new CI tool, Harness CI, not only resolved these issues but also introduced innovative features such as intelligent test selection, which reduced test cycle times by 25% and led to substantial infrastructure cost savings. The migration process included a phased approach with gap analysis and focused on critical pipelines, ensuring a smooth transition without major disruptions. The successful deployment of Harness CI reduced developer frustration and improved productivity, as it streamlined onboarding processes and eliminated Jenkins-related maintenance burdens.
Sep 01, 2021
1,381 words in the original blog post.
JUnit and TestNG are prominent Java testing frameworks, with JUnit being more widely adopted due to its integration in many Maven archetypes and its influential role in Test Driven Development. Despite JUnit's popularity, TestNG offers more advanced features such as test grouping, parallel execution, and extensive parameterization options, which make it more versatile for complex testing scenarios. Both frameworks support integration with continuous integration tools, enhancing automation and efficiency in software release cycles. They differ in their reporting capabilities, with TestNG providing default HTML reports, whereas JUnit relies on plugins to generate reports from its XML output. The frameworks also support various complementary libraries for mocking and assertions, such as Mockito and Hamcrest, which enhance test readability and functionality. While JUnit benefits from a larger community due to its long-standing presence in the Java ecosystem, TestNG maintains a robust, albeit smaller, user base. Both frameworks are essential in modern software development, helping teams to create reliable and efficient testing processes.
Sep 01, 2021
1,950 words in the original blog post.