Tag: applications

  • Don’t Make Big Tech’s Mistakes: Build Leaner IT Teams Instead

    Don’t Make Big Tech’s Mistakes: Build Leaner IT Teams Instead

    One of the biggest narratives in the U.S. concerning the current wave of tech layoffs is the fact that ‘traditional’ sectors have a prime opportunity to snap up new tech teams and IT talent. This has always been a significant challenge for sectors such as banks, insurance and manufacturing that compete with big tech for talent. In 2022, a majority of CEOs (71%) identified skills and labor shortages to be that year’s biggest business disrupter.

    And they were right to be worried. According to Salesforce, three in four workers do not have the digital skills needed by businesses to prepare for the future of work. The temptation in this environment for many traditional organizations is to enter the labor market to build larger tech teams to help drive their modernization programs. However, this may be a mistake.

    Building large, expensive, bloated tech and IT teams is not always the answer. It’s critical that traditional companies learn this lesson from big tech.

    Instead, traditional organizations should consider other avenues to drive their digital transformation ambitions with their lean resources. What does this look like?

    What is the Real Challenge you are Trying to Solve?

    Since COVID-19 hit, U.S. companies have been forced to reevaluate how they work, with remote working becoming commonplace–even for companies who couldn’t imagine themselves working remotely.

    And the challenges have grown as U.S. businesses seek growth to recover lost gains from the last few years. Evanta’s 2022 CIO Leadership Perspectives study found that CIOs rate data and analytics as their second top priority within the IT function. It is clear that business leaders see advancing organizational use of data, analytics and automation as key to reaching enterprise objectives.

    For many organizations, the biggest challenge they face is the unprecedented amount of data generated. Critically, more than 80% of all new data is unstructured and messy. This makes it difficult for data-driven companies to accurately review, gather, analyze and rely on what is mission-critical information.

    Traditional industries such as health care, banking, insurance or the public sector, have even larger concerns because data is increasingly critical to how they build value and deliver services for customers. So, it is important for their IT teams to create a single source of truth and data governance framework across their organizations to ensure the right people and senior leaders have the most accurate information to make smarter decisions.

    For instance, in the manufacturing industry, no-code database platforms can be leveraged to structure daily operational data and visualize insights through digital dashboards for quality assurance, continuous improvement and health safety.

    Additionally, at Baserow, we work with treasury customers at some of the biggest international banks that use no-code platforms to keep track of local legislation around the world by centralizing information in real-time databases available to relevant teams, including compliance.

    Modern organizations depend on their IT teams to accomplish a lot of their goals. So, it is important to provide them with the tools to focus on more complex development projects. No-code tools free your non-technical teams to address their pressing needs themselves without having to wait for budget or resource availability in the IT department.

    Have you Also Considered Upskilling Your Current Team?

    We know from the Salesforce survey that the vast majority of U.S. workers lack the digital skills to support their organizations’ ambitions and needs. This suggests that there is a wider issue within most companies at large. Do businesses need to prioritize upskilling their current team instead?

    A U.S. Gallup report found that 72% of workers are overwhelmingly interested in pursuing additional digital training to prepare them for an increasingly digitilized workplace. Is there room for no-code technologies to supplement the digital capabilities within companies?

    Enterprises are already expanding the responsibilities of application development outside their IT teams as well as increasing the productivity of their existing IT resources by automating and abstracting repetitive developer tasks. Gartner predicted that by 2025, 70% of apps will employ low-code/no-code technology. This trend aligns neatly with the business needs, such as the development of organization-specific applications and tools, because every business’s requirements are different.

    Furthermore, no-code/low-code technology enables companies to drive innovation and shorten the idea-to-market cycle times. The technology’s pre-built components make it easier for end-users and workers to intuitively assemble the templates that solve their complex needs.

    In Conclusion

    U.S. companies that need to fill the IT skills gap should consider how technology can be leveraged to boost productivity and accelerate the speed of innovation while accepting that new technical resources will continue to be expensive and scarce.

    These organizations are better off taking the lead in the democratization of IT within their teams. Only then can they keep up with the speed and agility required in today´s competitive environment.

  • Encore Platform for Running Distributed Apps in the Cloud Arrives

    Encore Platform for Running Distributed Apps in the Cloud Arrives

    Encore has made generally available a namesake backend development engine for rapidly building scalable distributed IT environments across multiple cloud platforms.

    Fresh off raising $3 million in seed funding, Encore CEO André Eriksson said the Encore platform analyzes source code to eliminate the need to manually configure, connect and set up portable cloud computing environments.

    In addition to being able to automatically setup and manage cloud infrastructure based on the metadata surfaced by static analysis tools, Encore provides access to a built-in continuous integration/continuous delivery (CI/CD) platform, previews of environments, live reloads of cloud environments, authentication, secrets management and automatic distributed tracing capabilities.

    Eriksson said the development of the Encore environment was, in part, inspired by how developers of games today routinely use an engine to build application environments rather than presenting developers with a set of text-based editing tools to build those environments using low-level boilerplate code that has to be written by developers for each application instance.

    Written in the Go programming language, Eriksson said Encore platform is based on an open source Encore Go Framework that prevents IT organizations from becoming locked into an Encore platform that today can be deployed on Amazon Web Services, Google Cloud Platform and Microsoft Azure cloud services.

    The building and deploying of distributed applications has always been a major challenge. Encore is designed to automate most of the routine tasks that DevOps teams today need to manually perform for each distributed application they support. As the number of applications being deployed across various cloud computing platforms increases, the challenges associated with managing those environments increase. Encore is designed to enable developers to easily build and deploy application code in a way that can be centrally managed by a DevOps team, noted Eriksson.

    It also takes advantage of the concurrency capabilities that the Go language enables to make it simpler to build and deploy distributed applications in a cloud-agnostic manner, said Eriksson. DevOps teams can also employ Go to extend the Encore environment within the boundary of certain limitations, he added.

    Essentially, Encore is making a case for an opinionated distributed computing environment that, in return for less flexibility, promises to make it simpler to deploy complex applications. Eriksson said Encore doesn’t see many DevOps teams looking to deploy distributed applications that span multiple cloud services, but they are being required to deploy more applications on different cloud platforms. Each cloud platform a DevOps team needs to support only serves to make the overall IT environment that much more complex to manage, he noted.

    It’s not clear to what degree IT organizations are ready to embrace a more opinionated approach to managing cloud computing environments. However, the concept of relying on one is hardly new. Platform-as-a-service (PaaS) environments have been employed for years. However, with the rise of microservices-based applications that are inherently distributed, the issue may soon be forced as IT organizations find simply no other way to keep pace with the rate at which applications are being developed and then continuously extended after they are deployed.

  • The State of Commercial and Retail App Testing 2020

    The State of Commercial and Retail App Testing 2020

    When the folks at Testlio approached me to review their “State of App Testing 2020″ report, I had some mixed feelings. These reports can sometimes be too broad; they can say what is not, but not help a team decide where to go. Still, it would only cost me five minutes of my time to see if it was worth writing about, and it came highly recommended, so I took a look. I am glad I did. Today, I’ll analyze the report itself, hit some of the highlights from the survey results and provide some analysis to help you decide if the information is relevant for you—and what you should do about it.

    First of all, the report is short. This is a feature. You won’t have to dig through 68 pages of information—six pages just doesn’t provide an opportunity to provide “fluff.” There are no long opening editorials by someone with an impressive title and list of hypothetical things that survey respondents pick between that will “become important” next year. Instead, Testlio simply anonymized its client information and re-used it to determine averages. This replaces the multiple-choice survey (which was likely filled out by someone abstracted from the work) with the actual data of the work. Testlio knows how often its customers’ applications go to production; it knows the scores of those applications in the Google and Apple stores. From that, the company can draw inferences in the relationship of shipping speed and quality. Finally, the report is grounded in a specific domain—that is, retail and business applications. The distinction between the domains is clear enough that readers won’t walk away trying something that won’t apply to their industry.

    Let’s talk about what the report says.

    In addition to Testlio’s data, the report borrows from other sources to draw a picture. One of the most important observations they made was a connection between quality, speed and customer adoption.

    Quality Matters

    I was amazed to read that 50% of users will not download an application with a 3-star rating, and 85% won’t download one with two stars. That isn’t a huge surprise, as I was recently brought into a project rescue for an application with 2.2 stars (and yes, thousands of ratings) in the Apple store. Trusting that data, that meant the application had less than half the potential users it could have—and the core reason for the app was not to sell a product but instead to promote brand loyalty.

    That data creates a strong argument for an investment in quality in mobile software. Yet, it is also a lagging indicator of quality, the result of poor quality. Put differently, app store reviews are sort of an “aww, shoot” metric. We put the software into the wild and hope it scores well. If the score is good, we have a party. If it is bad, we say “aww, shoot.” Instead of lagging metrics, the result, my interest is in leading metrics, the cause. What actions can we take to improve the scores?

    That’s when things get really interesting.

    Release Speed Matters

    The folks at Testlio grouped mobile applications into two categories: one group that released three times per month and another that released less often. (The average for the study was 2.4 releases per month.) I recently worked with a team that used something like the Scaled Agile Framework (SAFe) to manage deploys about once a quarter, with perhaps a patch in the middle.

    As it turns out, the more frequently released software had higher review scores, about 7% on average. That’s a counterintuitive result worth examining. I am not suggesting you ship twice as often. However, it does make sense that teams that ship more frequently have a small amount of change between releases. That change is likely to be more localized. A large program with teams of teams that tries to integration-test at the end—say the last sprint out of six—is likely to have a lot of uncertainty. The developer who fixes a bug is unlikely to be the one that created it; the “fix” may have unintended consequences that are difficult to test out. At the very least, be very careful about slowing down release schedules in the name of quality, as the results may be lose-lose.

    Let’s move on to device coverage.

    Device Coverage Matters

    Although they have an identical rating system, Testlio found Android OS applications across the board ranked slightly lower than their Apple iOS cousins. That is, the average score for the top 30 commercial and retail apps on iOS is 4.6 and 4.3 on Android. Personally, I think it is fantastic to have these hard numbers at the top of the field rather than opinions from a small group who responded to a survey. The challenge with this data, like the release cadences, is that you have to infer a reason. Testlio proposed three: that acceptance to the Apple Store itself is more difficult (Apple has internal tests); that as a premier brand, Apple has a “halo” effect; and that Android devices are simply too fragmented. With 24,000 different Android devices as of 2015 and too many to count now, it is likely that some older devices have some problems that could not be tested for; thus, a few bad reviews from rare models pulls down the scores.

    One thing Testlio didn’t see shrinking was the size of the test group. The top 30 clients averaged 18 testers per week, and over the time of the survey had at least eight and as many as 38 testers. These would be the people who work on all the different devices checking for compatibility, in addition to doing the human testing that is not, or should not be, automated. What is changing is how those testers are deployed, for more visual inspection, flexing with project needs, instead of a defined group that will be a bottleneck some of the time and over-capacity at others. Personally, I’m a fan of the Agile, whole-team approach, but they make a case for test augmentation with flexibility in the mobile application space, which reminds me of Jon Bach’s chapter in the book, “How To Reduce The Cost of Software Testing.” As an editor on that book, I’ll be the first to admit we picked a terrible title. At the time, we were working through the ideas that would eventually come to be known as Lean Software Testing, which seems to be what Testlio is suggesting.

    App Testing Conclusions

    There’s a fair bit more to the survey, including the amount of device testing occurring, locations for test sourcing worldwide and how distributed testing is working, especially as remote work has become the norm.

    As I said, I was pleased to see some hard data for once, and the challenge will be figuring out what we as an industry can make of it.

    What do you think? Share your thoughts below.

  • Engaging Developers in a Post-COVID-19 World

    Engaging Developers in a Post-COVID-19 World

    The time for platforms to rethink how they engage developers is now

    How we communicate, socialize, look up information, work, shop and travel have all been transformed by platform companies. COVID-19 has only increased our reliance on these platforms, as people spend more time on the internet and businesses migrate from offline to online offerings.

    These shifts present challenges to the platforms themselves. With people increasingly using low-latency applications such as teleconferencing and video streaming, there’s much more demand for data to be delivered without noticeable delays. As more and more varied businesses migrate their services online, it creates additional burdens on platform infrastructure and stretches the limits of their functionality.

    It’s a challenging environment for platform companies. But disruption also presents opportunities. The question becomes, “What do platform companies need to do to remain relevant and to improve their products and services?“

    The Importance of Developers

    There are some obvious starting points. Platform companies will need to rapidly adapt their offerings according to their evolving user base. They’ll also need to plan for commercial sustainability and make sure that they balance short-term expenditure with longer-term profitability.

    But they will not be able to do these things alone. With almost 24 million developers in the world today, external developers are central to any platform’s effort to adapt their products and expand commercial sustainability. As the technology industry continues to be subject to disruption, the developer ecosystem is ideally placed to drive expansion at a sustainable scale, enable product differentiation, reduce time-to-market and ensure relevance through product-driven growth.

    Those platforms that can successfully engage developers will stand out from the crowd and win the increasingly competitive fight for developer loyalty. Similarly, as developer ecosystems increasingly become a key differentiator, the platforms that fail to engage developers may also fail to keep up with the rapidly changing technology landscape.

    Developing Developer Partnerships

    It’s clear that platforms will need to make engaging developers a priority moving forward. The question is, how?

    For a start, organizations need to have a clear sense of which parts of their ecosystem can be opened up quickly and which integrations need to be built into the platform. With these established, the next step is to engage the developers that are best placed to help.

    At the core of engaging developers successfully is the recognition that different developers will have different priorities, needs and core skillsets. All developers need to secure ROI by engaging with the platform and its ecosystem. But their perception of value will differ. Enterprise developers, for example, rate ease of use, peer perception, strong developer tools, accurate content and enterprise-level support. Independent software vendors (ISVs), however, care most about revenue, lead generation and being pulled into deals.

    Segmentation, Segmentation, Segmentation

    Investing in areas that will attract the right developers is key to long-term sustainability. And there are a few key areas that will require especially close attention. First and foremost, developer segmentation will be absolutely vital for every platform. As the product landscape expands, platforms need to be clear which new developers may want to engage with their platform.

    By revisiting developer segmentation, new product use-cases can be included to ensure that content, support and messaging match what developers need. For example, if low-code/no-code developers are a new demographic, platforms need to extend content the scope of their help materials to include more basic explanations (including generic technology terms) and extra links to FAQs.

    On the other end, platforms also will need to invest in tools that match the needs of different developer groups. Experienced, full-stack developers using the latest languages and patterns will expect sophisticated tooling, services and frameworks as well as DevOps tools.

    Either way, continued focus on self-service will ensure cost-effectiveness by allowing platforms to manage extra usage without the need to apply extra resources.

    Scaling New Heights With the Cloud

    If transitioning critical services to the cloud isn’t already on the agenda for every platform business, it should be. A seamless service transition to cloud, with future-proofed expansion capabilities, is imperative for any platform that wants to engage developers. Why? Because as well as supporting service-based pricing, transitioning to the cloud facilitates scale and allows developers to access the platform securely from any location. Above anything else, a robust cloud infrastructure makes platforms more flexible, facilitates collaboration between platforms and developers and enhances the platform’s overall performance.

    Thriving With Developers in a Post-COVID World

    The time for platforms to rethink how they engage developers is now. Building a developer ecosystem will be vital for any platform wanting to scale at speed. If equipped with powerful tools, enabled through self-service and supported through effective educational resources, developers can be the difference between platforms that struggle in a post-COVID-19 world and those that thrive.

  • Sentry Adds Application Performance Monitoring to Platform

    Sentry Adds Application Performance Monitoring to Platform

    Sentry has extended the reach of its agentless monitoring platform to now track performance issues in addition to surfacing errors in code.

    Company CEO Milin Desai said IT organizations can now consolidate the number of monitoring platforms they employ to reduce their overall costs. Previously, the Sentry platform only identified errors in applications. The Sentry platform, he said, now provides a more holistic view of the overall health of JavaScript and Python applications without requiring IT teams to install and manage agent software in every application.

    Performance monitoring tools now make it possible to dynamically track application response times based on latency and throughput data. IT teams can analyze slow response times, increases in transactions and error rates to diagnose and fix all performance issues.

    IT teams can also set thresholds that generate alerts if performance metrics fall past a predefined tolerance level. IT teams can also drill down into transaction details within tracing waterfalls to visually highlight application programming interface (API) call times that are taking longer than expected.

    There is also a Transaction Summary View that sorts transactions based on slowest duration time, related issues and the number of users having a slow experience. IT teams can also track specific critical transactions in addition to gauging how users react to new code pushed to production.

    A Root Cause Analysis tool makes it possible to identify and drill down into differences in characteristics between outliers and normal performing transactions.

    Finally, a tracing capability makes it possible to identify the exact database query that caused an error or performance issue.

    Desai said Sentry requires developers to add only five lines of code to their application. As such, developers can take advantage of Sentry without requiring the help of IT teams to manage agent software. In some cases, however, DevOps teams are standardizing on Sentry because it enables performance and error monitoring to be pushed further left toward developers, who are in the best position to address an issue, he said.

    As applications and IT environments become more complex in the age of microservices, there is obviously a greater need for instrumentation. The debate is how best to go about achieving it. Many DevOps teams now find themselves managing a raft of agent software alongside every application that is deployed. Over time, the weight of all that agent software starts to impact DevOps processes.

    In the meantime, IT teams continue to spend more time looking for the root cause of an issue once a problem is surfaced than they do actually fixing it. As applications are developed in larger numbers, thanks in part to the rise of DevOps, it becomes more critical to resolve application issues faster. Otherwise, application developers will wind up spending most of their time debugging applications versus writing new code, which obviates the whole reason for investing in DevOps processes in the first place.

    Observability, of course, is a core tenet of DevOps for that very reason. The challenge is making sure observability is provided in the least frictionless way possible.