Articles

Misconfigurations are the leading cause behind security incidents in Kubernetes-orchestrated or otherwise containerized environments. Without proper configuration in place, applications would run into problems ranging from noncompliance and inconsistencies to performance bottlenecks, security vulnerabilities, and functionality failure. Therefore, configuration management is a critical component in a software development lifecycle for maintaining systems in a desired, consistent state.

According to Red Hat’s State of Kubernetes Security report, misconfigurations were the leading cause behind security incidents in Kubernetes-orchestrated or otherwise containerized environments. Without proper configuration in place, applications would run into problems ranging from noncompliance and inconsistencies to performance bottlenecks, security vulnerabilities, and functionality failure. This would make cloud-native systems unstable and cause them to become a liability to businesses. For this reason, configuration management is a critical component in a software development lifecycle for maintaining systems in a desired, consistent state. However, the way configuration management is done has been evolving over the years. This post traces the history of configuration management, focusing on how GitOps handles this critical aspect of running cloud-native applications today.

Source de l’article sur DZONE

Step Functions, the serverless finite state machine service from AWS. With DynamoDB, Lambda, and API Gateway, it forms the core of serverless AWS services. If you have tasks with multiple steps and you want to ensure they will get executed in the proper order, Step Functions is your service of choice.

It offers direct integrations with many AWS services, so you don’t need to use Lambda Functions as glue. This can improve the performance of your state machine and lower its costs.

Source de l’article sur DZONE

Todoist is a to-do list app that 25 million people rely on every day to keep their lives organized. As part of the Doist design team’s goals for 2021, we aimed to redesign the Todoist Android app to take advantage of the latest Google Material Design guidelines.

In this post, we cover the design decisions and processes behind redesigning the Todoist Android app for Material Design. We explore the Design and Android team’s collaboration practices that brought the app update to life, which resulted in winning the Material Design Award 2021 in the large screen category. Let’s get started!

Opportunity

When we started the project, our design implementation on Android was ready for a major overhaul. The last milestone redesign on Android was initiated after the release of the first Material Design guidelines in 2016. Since then the team successfully worked on continuous improvements to the Android app, but we saw the opportunity to improve Todoist on Android on a more holistic level.

We set out to clean up instances of older UI components, colors, and text styles and update them with the latest Material Design components. We observed that some interactions and navigational patterns had become inconsistent with what users were expecting on newer Android devices and were eager to modernize this experience. With new hardware and software changes in mind, we set out to make the experience on larger phones and tablets even better, so Todoist could take full advantage of the latest generation of devices. Material 2 and 3 provided an incredible new framework to rethink the current app experience. With this in mind, we set out to challenge what a modern Android app should look like and innovate on top of the default user experience.

Solution

The team set itself the goal of redesigning our Todoist Android app and aspiring to make it the best-designed productivity app on Android. The project was ambitious and scheduled to take several months to complete. We set ourselves the following targets while working on the project:

  • Review the current implementation and older design specs.
  • Study the latest Material Design Guidelines and assess what is relevant for our project.
  • Research great Material Design apps and case studies and learn from their execution.
  • Define the new Todoist Android app design language and document the changes.
  • Design and development work together to assess the proposed solution and implementation.
  • Test an early version of the new app internally to gather feedback and make adjustments.
  • Invite beta testers to the new app to gather feedback and make adjustments.
  • Refine the app and address core issues before launching to the public.

Review

The project was kicked off by reviewing the current Todoist Android app implementation, noting down what areas needed to be fixed and what was up to date. While reviewing, we took screenshots of the app implementation for reference. This way we could easily see the current state of the app and compare it to the new design proposals that would be created. Once the review process was finalized, we had a comprehensive overview of the current state of the app and the layout, component, and styling changes we wanted to make.

Study

We continued the project by studying the latest Material Design Guidelines, assessing the components and practices that were most relevant to Todoist.

When the project kicked off in February 2021, Material 2 was the most recent version of their design system. Since Material 2 had already been released for quite some time, we anticipated that design changes to Material would be announced soon at the Google I/O event in May 2021. Rather than wait, because we expected the changes to be iterative, we pushed ahead with our work.

We identified 25 components and UI patterns that we wanted to change across the app. The changes included buttons, forms, menus, sheets, navigation drawer, app bar, system bars, text and color styles, and more. We started by creating a table view in a Dropbox Paper document with the component changes and references links to Google’s Material Design Guidelines.

This components list was a starting point for discussion to plan the scope and complexity of the changes. Close async discussions between the design and development team in Twist and Dropbox Paper comments helped us make decisions about scope and complexity early on and set a solid foundation for the project.

Research

In the initial Material Design study, we also researched inspiring Material Design apps, Material studies, Play Store apps, and Google Workspace apps to learn from their execution.

We started out by studying the Material Design Award Winners 2020 and tested out the products that were showcased. The showcased winners struck a good balance between implementing the Material Design Guidelines while maintaining their own product’s brand within the system. This balance between Google’s guidelines and the Todoist brand was also key for us to get right and so we strived to find this mix across the work we created and implemented in the project.

Along with the MDA winners, we researched the Material Studies that Google produced to showcase what apps could look like with branding and Material Design guidelines applied. It was a great reference to see how far components could be customized while maintaining the core platform principles. The Reply case study in particular offered valuable insight to us as its content type and layout came closest to Todoist. It showcased how components like the app bar, navigation drawer, and large screen layouts worked while being customized.

We continued our research by searching the Google Play store for inspiring app examples. Google Tasks, Press, Periodic Table, and Kayak stood out to us as the level of polish and quality of the apps were on par with the experience we were aspiring to create.

Sometime later in the project when Material You was released (more on that later), we stumbled upon the Google Workspace apps blog post which previewed Material 3 changes that Google was introducing to their own products. It offered a great glimpse at what was to come before the Material 3 Design Guidelines were officially released. This post sparked new internal discussions and further design explorations that we considered for future Todoist Android updates.

Design Spec

As we started to define the new Todoist Android app design language and document the changes, we opted to create a design framework, focusing on creating components rather than designing every screen in the app. This allowed us to consistently apply the design system in the app. We did so by using the previously defined component list that we created during the review and study process.

Core screens from different areas of the app were chosen to demonstrate how the components could be applied. We chose to mock up the Todoist project view, navigation drawer menu, project view edit screen, settings, and project detail view, among others. These screens gave us a good overview of how buttons, forms, drawers, lists, and other components would work together and in different states; selected, pressed, disabled, etc.

During the project, we were transitioning our Doist design system to Figma and started creating our first components in the new Doist Product Android Library. We started by using some components from the Material Design UI kit – Components library from the official Google Figma resource file and added them to our Doist design system. We then continued to build up the Product Android Library file with our Todoist-specific components such as task list & board views, detail views, sheets, colors, typography, etc.

We continued by documenting color and typography changes that were based on the Material Design guidelines. The design team opted to implement a new Design Token framework that would share the same values between our design system and the development implementation. The development team would output the values they had in the current implementation and the design team would analyze which values were needed and which could be merged, changed, or deleted. This informed the new Design Token color and typography system which we then documented and discussed with the team to implement. Later in the project, we were happy to see a similar token system introduced by Material 3 in the latest guidelines which validated our thinking and principles behind the new design system.

The design documentation expanded to hold other edge-case mockups that could sit alongside the design system. We documented different responsive screen experiences between phones and tablets against the previous implementation. Additional sections were created to document the motion that should be used for certain components and screens by referencing existing Material Design guidelines examples or prototyping custom motion in Principle and After Effects. The design spec also touched on haptic feedback that should appear on touch targets, how dark mode should work across the new components, documenting Todoist themes within the new design language, and more.

Design Implementation

At Doist, the benefit of the squad is that cross-team collaboration is built into the make-up of the team. Designers, developers, support, and product managers work together in a squad to deliver the project. This close collaboration from the start is key to bridging the gap between scope, estimations, design, development, and delivery. The squad discussed their findings on a daily basis and came up with the best plan of action together.

Designers started by creating components in Figma and shared them with developers in Dropbox Paper. We used screenshots to document the current implementation next to the new designs and linked to the default Google Material Design components. This allowed the team to compare all references in one place. Developers shared their feedback, adjustments would be brainstormed together as the designs were iterated.

Designers on the project would share their work in progress on a weekly basis with the rest of the design team in a design review Twist thread. Here details about the designs were discussed, alternatives mocked up and bigger picture plans made. Design reviews brought up topics like FAB (Floating Action Button) placement, theme options, accent color usage on components, consistency with other platforms, navigation options, and shadow elevation. After thorough discussions and alternative mockups were presented, the design team aimed to find the right balance between Material Design and Todoist brand guidelines. The development team, also part of the design reviews, gave their feedback on the solution and raised technical complexities early on.

Eventually, the design was stabilized and consistencies updated across components and mockups. The design spec was kept up to date so the development team could always review the latest designs in Figma.

Testing

As soon as the development process started, the Android team provided early screenshots and videos in Twist threads while they were implementing the design spec. This practice allowed us to review the app implementation early and often. Designers could review the development work and share feedback in Twist, which resulted in getting the implementation to a high quality. Alongside Twist discussions, the team set up a Todoist project to track ongoing issues and fix bugs. Designers logged new issues, developers would solve them and share the new implementation for designers to review.

When the team had the first stable version of the Android app, we shared it internally at Doist to get more insight and feedback. Other Doisters could access the redesign via a feature flag that could be turned on in the app settings and test the new version for however long they wanted. The feature flag system allowed people to give us early feedback on the design decisions we made and report bugs. Feedback was submitted by the wider team through a dedicated Twist thread and designers and developers could discuss how best to address the feedback during the active project implementation.

After we refined the app implementation further and addressed early feedback we opened up the app update to our beta users. Here users had access to the new Android redesign and were able to give us feedback. Our support team gathered feedback and shared it with us in a dedicated Twist thread. The squad aimed to analyze every comment and looked for patterns where we could make tweaks and improvements to the user experience.

As part of these tweaks, we made changes to how the bottom bar and navigation drawer worked. Some users reported frustrations with the way the new bottom navigation and menu drawer worked. In its first implementation, the drawer was half raised when opened and had to be swiped up to be raised again to see the full content list. This was an issue for some users as it was slower to get to the content below the list. So we decided to fully raise the drawer by default when opening. We also made it easier to open the navigation drawer by sliding up from the bottom app bar. This was a small shortcut but it enabled users to get to their content faster.

Material You

While we were in the testing phase and about to wrap up the project, Google unveiled Material You, and sometime later the Material 3 Guidelines were published. With the newly announced resources, we went back to study the latest guidelines and references we could find to see where the Todoist Android app redesign fits in and which adjustments we might need to make now or in the future.

Dynamic Color was a big new feature that was announced as part of the Material You update. As Todoist supports many different themes the Material You Dynamic Color feature seemed like a good fit for our product. We decided to prioritize this feature and implement Dynamic Color light and dark themes as part of our Todoist theme settings options.

To implement Dynamic Color, the development team started off by creating a demo prototype that utilized the Dynamic Color system and showcased how we could select from a range of color choices that the system defined based on the wallpaper choice. From there, we tried to incorporate system behavior in our design mockups. We designed a range of different color mockups and components to see which ones could fit with which components. We then came up with a color system that worked for the Todoist app and the new themes. These new Dynamic Color themes would sit alongside our current theme options in the Todoist app settings. From here users could choose between Dynamic Color Light and Dark themes.

Along with Dynamic Color, the team also created a customizable bottom app bar, allowing users to set up the app in a way that’s most convenient to their workflow. The location of the Dynamic Add Button can be changed to the center, left, or right corner of the screen. The order of the Menu, Search, and Notification buttons can be rearranged to best fit the ergonomics of the user’s dominant (left or right) hand and optimize their navigation patterns.

Launch

As critical beta feedback was addressed and stability tweaks were made, the squad felt ready to release the new Todoist Android app to the public. The team logged the issues that could not immediately be addressed for future reviews and updates.

The design and marketing team readied the launch by creating What’s New banner artwork and copy that are displayed within the app when launching the update. The Doist marketing team also created release notes and shared the app update announcements on our social channels. The brand and product design team worked together to create custom image assets and copy that summarised the project work in a simple and beautiful way.

What’s Next: Material 3

After a successful launch of the redesigned Todoist for Android app, Google contacted Doist to announce that Todoist was selected as the Material Design Award 2021 winner in the Large Screen category. The team was excited to be recognized for their hard work and it felt like we achieved the goal we had set out to accomplish.

Internally, designers and developers continued to study and discuss the Material 3 updates. The design team started exploring mockups and design changes inspired by Material 3 and Google’s Workspace app updates. Some of our current Todoist explorations include changing the FAB styling, updating the app bar, further removing elevation shadows, and more. Here is a preview of what a future Todoist update could look like.

We hope these insights into Doist’s design process and collaboration practices have sparked your interest. Thank you for reading and stay tuned for future design updates!

Takeaways

  • Study the Material guidelines, Material Design winners, Material studies, and Google Workspace apps to make informed design decisions when designing your next product or app update.
  • Evaluate which Material Design components and practices are right for you and implement them into your product.
  • Carefully balance the Material Design guidelines with your brand guidelines to create a unique and consistent experience between your product and the platform it lives on.
  • Collaborate with your Android developers early and often to ship app updates efficiently and increase the design implementation quality.
  • Use design components and build a design system along with practical mockups to create an efficient design spec.
  • Consider how the latest Android features fit into your product and which have the most impact on your users before deciding to implement them.
  • Test and review builds with your internal team and external beta users to get valuable feedback and make adjustments before releasing them to the public.
  • Create announcement artwork to showcase your latest app or feature update along with a clear description to share in-app and on social media.

Source

The post Case Study: Redesigning Todoist for Android first appeared on Webdesigner Depot.

Source de l’article sur Webdesignerdepot

With microservices architecture becoming the de facto standard for web applications now, effective debugging and anomaly detection calls for a system that is observable — which means, the internal state of an application can be inferred by observing and tracking the metrics, traces, and logs.

Observability is all about data exposure and easy access to information required to find issues when the communications fail, internal events do not occur as expected or events occur when they shouldn’t. Here, you’ll learn and know about different microservices monitoring tools and how to monitor microservices. Let’s take a look!

Source de l’article sur DZONE

As I’m becoming a senior developer in terms of age, I’ve transitioned from one language to another. One of my main interests has always been clean, easy-to-understand UIs (User Interface). That journey started for me with Director (to create multimedia CD-ROMs), Flash website animation, and Flex Rich Internet Applications (= « Flash on steroids »). When I started developing with Java over 10 years ago, we had some projects with the early versions of Vaadin and JavaFX. As I went on with serverside applications, I only continued with JavaFX for some personal and side projects and loved the way you can create a UI both with XML (FXML actually) and code, exactly the same approach I loved with Flex. Since then, my love for Java and JavaFX only grew and it’s still my major programming environment.

But JavaFX has one missing piece: running it in the browser… Yes, JPRO can do this, but it needs a license and a dedicated server. And yes, there are some projects ongoing to bring JavaFX fully to the browser, but they are ongoing and not mature yet… Let’s look at another approach: Vaadin Flow and run it on a Raspberry Pi to control a LED and show the state of a button.

Source de l’article sur DZONE


Stream-Aligned and Platform Teams

The 2021 State of DevOps report identifies two types of teams as the way high-maturity teams organize themselves: stream-aligned teams and platform teams. The idea of a « platform » or « internal developer platform » is fundamental to GitOps. While a GitOps pipeline begins with committing code to a Git repository, it is made possible by a platform that paves the way for that new code to move in an automated way from the repository to a production environment.

The platform is how the Ops team provisions resources such as cloud services, storage, service meshes, and security and monitoring tools in a ready-made template. These templates are created even before they are needed and made available to any developer within the organization. The big shift due to this is that developers need not raise a ticket for the resources they need: they can pick a ready-made template and deploy their code in a matter of minutes. From the Ops side, they have peace of mind knowing they have configured this template and that it follows security protocol by default. It does not require developers to separately configure security for deployments.

Source de l’article sur DZONE

Data junkies rejoice, this is the episode for you. 

On this week’s episode of Dev Interrupted, Einat Orr, co-founder and CEO of Treeverse, sits down with us to talk about the state of data… where it’s been, where it’s going and why having bad data might be worse than having no data at all.

Source de l’article sur DZONE

In the video below, we take a closer look at the State Design Pattern in Java. This tutorial includes an introduction, real-time examples, class/sequence diagram, and implementation. Let’s get started!

Source de l’article sur DZONE

Yesterday’s creativity won’t keep pace with tomorrow’s requirements; businesses need speed and agility without sacrificing creative quality.

“The creativity that was needed in the past is not the creativity that is needed today,” according to Matthew Rayback, a creative director at Adobe. He’s not talking about the function of creativity but rather about the process of creative management in a marketing context. 

What is needed today? Speed and agility without sacrificing quality. 

Why? Because the pace of change has accelerated. As Rex Salisbury, a deal partner for the venture firm a16z noted early in the pandemic, “Businesses of all kinds are experiencing two years’ worth of digitization compressed into months.”

This accelerated digital transformation has put pressure on marketing teams to turn campaigns around faster. In turn, that places pressure on creative teams to generate the requisite creative for those campaigns. Leaders need to sharpen their awareness of the unfolding creative management trends to keep pace. To that end, below are five such trends to watch in 2022. 

1. In-House Creative Teams Continue to Grow

Companies have been building in-house creative teams for the better part of a decade. A 2018 study by Forrester Research and the In-House Agency Forum (IHAF) found the number of in-house teams has grown 22% in the last ten years or so. As The Wall Street Journal reported, more than half of advertisers (64%) have shifted their creative organizations to an in-house team.  

According to a more recent version of that same study, the in-housing movement didn’t stop throughout the pandemic. It revealed, “80% of respondents said they have brought more marketing assignments in-house since the onset of the pandemic, with 50% saying the increase was directly triggered by the events of the past two years.”

Businesses seem well-satisfied with the results because the urge to in-house is poised to grow beyond creative teams. For example, a recent survey by the customer intelligence company Axciom found about 50% of respondents believe the “in-housing is currently a top marketing objective, and 40% expect it will remain a top priority in the coming years.”

2. Outside Agencies Hired for Specialized Skills

Despite the in-housing trend, there is still opportunity for agencies, consultants, and freelancers, particularly those with specialized skills. Even the consumer-packaged goods giant Proctor & Gamble, a leading example of brands bringing marketing and creative teams in-house, still needs outside service providers.

Indeed, while in-house creative teams produce the lion’s share of creative work, the vast majority (86%) also continue to partner with agencies and freelancers; according to our own research, published in our 2021 Creative Management Report, which was facilitated by Lytho (formerly inMotionNow) and based on a survey of 400 creatives and marketers. 

When the survey asked creatives why they hire outside resources, the top reason was access to specialized skills (60%). That was followed in a distant second by a need for increased capacity (44%), help with developing strategy (24%), and, lastly, to get work done faster (20%). 

“It is very unusual for an in-house team to have no outside resources that they lean on,” wrote Alex Blum of Blum Consulting Partners, Inc. in a written assessment of the survey results.

He says there are two primary ways to partner with agencies. “First, for overflow capacity. There is always a need for more creative resources, and agencies can offer that flexibility without the cost of maintaining larger teams,” he wrote. “Second, in-house teams can divide areas of ownership with an agency based on the skill sets they have in-house.”

3. The Creative Process Evolves

Marketing today is dominated by an insatiable thirst for fresh content, produced and polished by creative teams. The demand for that content continues to explode. 

What does this portend for creative teams? Despite adding headcount, creative requests exceed the creative team’s capacity to produce it – even as lead times shrink. Matthew Rayback, the creative director at Adobe, suggested the creative process must evolve. 

He likens creatives to an auto factory, where “creatives used to be the assembly line to make a single car.” However, today, creatives are tasked with creating more cars, each with unique adjustments such as personalization. 

“The assembly line we built can’t accommodate that speed or volume,” he says. So the whole factory – the entire creative process – must be overhauled to adapt. 

4. Quantitative Measurement Drives Creative Priorities

Current methods for measuring the value of creative teams center on outputs. That is to say, the metrics tracked tend to quantify the number of creative projects in progress, the rounds of review, and the number of projects completed over time. 

These metrics are important, but alone they are insufficient. A complementary way to prioritize large volumes of creative requests is focusing on those tasks most likely to move the business needle. The barrier to achieving this is that most creatives aren’t kept informed as to the outcomes of marketing campaigns fueled by their creative efforts. This must change.

With the growing demand for content, the margin of error for applying creative resources to projects that don’t correlate to business results shrinks. Marketing organizations must build a feedback loop that brings quantitative results back to the creative team. In turn, creative teams must learn to use the data to drive their work priorities in collaboration with marketing. 

5. Creative Resource Management Becomes Essential

Resource management is both a leadership concept and technology (or a combination of technologies). It’s a means to plan, track, collaborate and measure creative operations, including people, processes, and budgets.  

Traditionally, planning and tracking of all things creative and marketing occurred in a spreadsheet. It works well when the future is generally predictable – yet cliché as it may be to say it – we are living in a state of uncertainty. 

Like many trends over the last 18-24 months, the global pandemic “forced virtual experiences, disrupted marketing channels and campaigns, and accelerated companies’ transition to digital marketing,” according to Forrester. The research firm calls resource management “essential” because it helps move “planning from static spreadsheets to a dynamic and real-time environment.” 

Final Thoughts

Yogi Berra paraphrased an old Danish proverb when he said, “It’s tough to make predictions, especially about the future.” Even so, the pandemic has accelerated trends that were already underway, and these five trends are good examples. More than just watching them, creative and marketing leaders should take steps now to get ahead of them.

 

Featured image via Pexels.

Source

The post 5 Creative Management Trends to Watch in 2022 first appeared on Webdesigner Depot.

Source de l’article sur Webdesignerdepot