January 2023 Summaries
10 posts from Unleash
Filter
Month:
Year:
Post Summaries
Back to Blog
Digital transformations often fail due to a combination of ambitious goals, inadequate digital dexterity among employees, and insufficient communication and engagement throughout the organization. Many companies struggle to adapt quickly, especially during the pandemic, when they faced pressure to accelerate changes without sufficient groundwork. Leaders often lack the necessary digital skills, and the broader organization may resist transformation due to a lack of understanding or motivation. Agile and DevOps methodologies can help, but they require a supportive company culture and cannot resolve deeper issues like poor collaboration and outdated processes on their own. Successful digital transformations depend on setting realistic goals, fostering digital skills, effective communication, and learning from others' experiences to avoid common pitfalls.
Jan 30, 2023
1,189 words in the original blog post.
Arif Hidayat, a software engineer at Bukalapak, created a front-end SDK for Flutter from scratch after finding no suitable existing solution for implementing feature flags in mobile apps. His efforts were methodical, starting with the minimum requirements and collaborating with the Unleash team for refinement. This initiative was warmly received by the community, including Davide Campagnola from Tutored, who found the SDK beneficial in testing new features quickly and efficiently. While the Flutter SDK has already significantly improved development processes by enabling controlled feature releases and experimentation, both Arif and Davide see room for enhancements, such as implementing more reactive components and analysis functions. The integration of Flutter with Unleash has transformed their companies' development approaches, saving significant time and allowing for more flexible and agile feature management.
Jan 27, 2023
1,011 words in the original blog post.
Investing in digital transformation is crucial for businesses to maintain competitiveness and ensure future success by integrating advanced technologies into operations. Digital transformation, which includes adopting DevOps principles, offers numerous benefits such as cost savings, improved efficiency and productivity, enhanced customer experiences, and better business analytics. By automating processes, businesses can reduce manual labor costs, improve collaboration, and accelerate time-to-market for new products or services. The adoption of digital transformation strategies also fosters a stronger company culture by promoting innovation, communication, and continuous improvement among employees. Additionally, it enhances agility, scalability, and flexibility, enabling companies to swiftly respond to changing market conditions and customer needs. Furthermore, digital transformation reduces risks and enhances security by implementing automated processes, thereby minimizing human error and swiftly addressing potential vulnerabilities. Overall, embracing digital transformation drives growth and innovation, positioning businesses to thrive in an ever-evolving landscape.
Jan 26, 2023
1,485 words in the original blog post.
Feature adoption is crucial in software development, as new features often go unused unless users are effectively informed and engaged. Successful feature adoption involves understanding the impact of changes, identifying who should be informed, and selecting the right communication channels, such as email, in-app notifications, or social media posts, without overwhelming users. Ensuring features are valuable, user-friendly, and accompanied by accessible support and training can combat user resistance and indifference. Actively involving customer-facing teams and using deprecation carefully can also aid in transitioning users to new features. Tracking adoption rates and using data to adjust strategies helps maintain relevance and engagement, while effective communication of new features can foster trust, improve user relationships, and potentially attract inactive or new users.
Jan 23, 2023
1,277 words in the original blog post.
Continuous integration (CI) is a software development practice aimed at improving the quality and speed of software delivery by encouraging frequent code changes and their integration into a shared repository. This practice helps identify and resolve conflicts early, ensuring a stable codebase. CI relies on automated build and test systems to check for errors and verify that new code meets specifications, facilitating quick issue resolution and reducing delays. It is often associated with continuous deployment and continuous delivery, forming a comprehensive CI/CD pipeline that automates various development tasks. While CI offers benefits like risk mitigation, improved feedback loops, and enhanced communication among team members, it also presents challenges such as scaling and technology adoption. Best practices for CI include frequent code commits, optimizing pipeline speed, simplifying builds, and early testing to ensure quality. The adoption of CI practices leads to faster build times, quicker bug fixes, and improved collaboration, making it a critical element in modern software delivery processes.
Jan 18, 2023
1,554 words in the original blog post.
Ioannis Papadopoulos discusses strategies for integrating feature flags into automated front-end testing, emphasizing the importance of writing tests that mirror real-world software usage and focusing on test logic over setup. At Harbr, a platform that facilitates data commerce, they use TypeScript, React, Jest, Storybook, and Unleash to manage feature flags, which are crucial for controlling feature deployment due to the diverse technical environments and commercial needs of their customers. To enhance testing efficiency and maintain seamless developer experience, Harbr employs a custom FeatureFlagProvider to wrap tests and stories, using msw.js to mock API requests and simulate different feature flag states. This setup allows for zero-configuration integration tests, even when feature flags are indirectly used, and supports visual regression testing in Storybook. Papadopoulos advises against testing implementation details and recommends using globally available defaults with the flexibility to override them for specific component tests.
Jan 16, 2023
1,180 words in the original blog post.
Unleash 4.19 introduces several new features aimed at enhancing developer efficiency and compliance, notably the change request feature that aligns with the four-eyes principle by requiring approvals for code changes in regulated environments. This feature allows grouping changes for simultaneous production deployment, providing transparency and collaboration through a change request overview page. Additionally, tags have been enhanced with tooltips and search capabilities, making them more useful in feature flag management. The update also includes a "Last seen" column for API tokens, allowing users to sort and identify infrequently used tokens for potential cleanup, thus maintaining an efficient and secure environment.
Jan 13, 2023
440 words in the original blog post.
DevOps is a mature set of practices designed to enhance collaboration between development and operations teams, leading to increased productivity and quicker software deployment. Originating from the need to address coordination issues in large companies, DevOps emphasizes iterative work, process automation, and rapid feedback to improve code quality and deployment speed. It has become popular among both large and small organizations, with the market expected to grow significantly. Key benefits include faster releases, effective teamwork, improved bug fixes, and better management of unplanned work, all of which contribute to increased customer satisfaction. Best practices in DevOps involve automation, serverless computing, private cloud usage, microservices, containerization, monitoring, GitOps, and the use of feature flags and canary releases. These practices help teams work efficiently by automating routine tasks, enhancing flexibility, and ensuring quick responses to potential issues, thereby reducing errors and improving application performance.
Jan 09, 2023
1,332 words in the original blog post.
DevOps in 2023 is characterized by trends that emphasize efficiency, security, and adaptability, with organizations increasingly integrating practices like smart scaling to balance system performance with security during expansion. In highly regulated industries, automation and tracking mechanisms are being leveraged to enhance process speed while maintaining compliance. The shift to private clouds offers companies modern cloud benefits without security trade-offs, while AI integration transforms operations through automation and predictive maintenance, allowing teams to focus on strategic initiatives. CI/CD processes are streamlining product development and deployment, reducing time to market, and microservices are replacing monolithic architectures to enhance agility. GitOps is gaining traction for its ability to combine version control with infrastructure as code, improving deployment speed and collaboration, while DevSecOps integrates security from the start of development, enhancing software reliability. Low code applications are expediting development by simplifying coding requirements, and observability practices are crucial for identifying and resolving system issues, thus improving software quality and response times. These trends highlight the evolving capabilities of DevOps, offering organizations opportunities to advance by aligning with these innovations.
Jan 03, 2023
1,110 words in the original blog post.
Feature flags with strategy constraints enhance the efficiency of using feature flags within developer workflows by allowing different rollout configurations across environments, such as enabling features for all users in QA but only for a select group in production. This approach eliminates the need for custom strategies or environment-specific prefixes in feature flag names. To utilize these constraints, developers must first upgrade and configure their client SDKs for environment-specific initializations, which are supported in various languages including Node.js, Java, Python, and Go. Strategy constraints enable the definition of activation strategies that apply only under specific conditions, such as environment, country, or customer ID, allowing for flexible and controlled feature deployment. This method supports seamless rollouts without custom activation strategies, as developers can specify constraints like a "100% rollout in development" alongside a "50% rollout in production."
Jan 01, 2023
585 words in the original blog post.