FC_SDT035.qxp_Layout 1 4/20/20 12:13 PM Page 1
MAY 2020 • VOLUME 2, ISSUE NO. 35 • $9.95 • www.sdtimes.com
IFC_SDT032.qxp_Layout 1 1/17/20 3:29 PM Page 2
Instantly Search Terabytes
www.sdtimes.com EDITORIAL EDITOR-IN-CHIEF David Rubinstein drubinstein@d2emerge.com NEWS EDITOR Christina Cardoza ccardoza@d2emerge.com
dtSearch’s document filters support: ‡ popular file types ‡ emails with multilevel attachments ‡ a wide variety of databases ‡ web data
SOCIAL MEDIA AND ONLINE EDITORS Jenna Sargent jsargent@d2emerge.com Jakub Lewkowicz jlewkowicz@d2emerge.com ART DIRECTOR Mara Leonardi mleonardi@d2emerge.com CONTRIBUTING WRITERS Jacqueline Emigh, Lisa Morgan, Jeffrey Schwartz
2YHU VHDUFK RSWLRQV LQFOXGLQJ ‡ efficient multithreaded search ‡ HDV\ PXOWLFRORU KLW KLJKOLJKWLQJ ‡ forensics options like credit card search
Developers: ‡ 6'.V IRU :LQGRZV /LQX[ PDF26 ‡ &URVV SODWIRUP $3,V IRU & -DYD DQG NET with NET Standard / 1(7 &RUH
.
.
.
‡ )$4V RQ IDFHWHG VHDUFK JUDQXODU GDWD FODVVLILFDWLRQ $]XUH $:6 DQG PRUH
CONTRIBUTING ANALYSTS Enderle Group, Gartner, IDC, Intellyx, Ovum
ADVERTISING SALES PUBLISHER David Lyman 978-465-2351 dlyman@d2emerge.com SALES MANAGER Jon Sawyer jsawyer@d2emerge.com
CUSTOMER SERVICE SUBSCRIPTIONS subscriptions@d2emerge.com ADVERTISING TRAFFIC Mara Leonardi adtraffic@d2emerge.com LIST SERVICES Jourdan Pedone jpedone@d2emerge.com
Visit dtSearch.com for ‡ KXQGUHGV RI UHYLHZV DQG FDVH VWXGLHV ‡ IXOO\ IXQFWLRQDO HQWHUSULVH DQG developer evaluations
The Smart Choice for Text Retrieval® since 1991
dtSearch.com 1-800-IT-FINDS
REPRINTS reprints@d2emerge.com ACCOUNTING accounting@d2emerge.com
PRESIDENT & CEO David Lyman CHIEF OPERATING OFFICER David Rubinstein
D2 EMERGE LLC 80 Skyline Drive Suite 303 Plainview, NY 11803 www.d2emerge.com
003_SDT035.qxp_Layout 1 4/17/20 5:19 PM Page 3
Contents
VOLUME 2, ISSUE 35 • MAY 2020
FEATURES
COLUMNS 8
News Watch
The dev manager’s dilemma: To code or not to code
28
GUEST VIEW by Rajesh Raheja Is service mesh really needed?
29
ANALYST VIEW by Rob Enderle Three smartphone trends worth watching
30
INDUSTRY WATCH by David Rubinstein COVID-19 has exposed lack of planning
Increasing serverless capabilities are pushing architecture to market maturity
page 10
Monitoring The second of Three ParTs
Application Performance Monitoring:
page 6
APM, AIOps and Observability
page 16
Low-code is the heart of modern software development
page 22 Software Development Times (ISSN 1528-1965) is published 12 times per year by D2 Emerge LLC, 80 Skyline Drive, Suite 303, Plainview, NY 11803. Periodicals postage paid at Plainview, NY, and additional offices. SD Times is a registered trademark of D2 Emerge LLC. All contents © 2018 D2 Emerge LLC. All rights reserved. The price of a one-year subscription is US$179 for subscribers in the U.S., $189 in Canada, $229 elsewhere. POSTMASTER: Send address changes to SD Times, 80 Skyline Drive, Suite 303, Plainview, NY 11803. SD Times subscriber services may be reached at subscriptions@d2emerge.com.
004-5_SDT035.qxp_Layout 1 4/17/20 5:17 PM Page 4
4
SD Times
May 2020
www.sdtimes.com
NEWS WATCH CollabNet VersionOne, XebiaLabs and Arxan form Digital.ai Following its acquisition of XebiaLabs, CollabNet VersionOne has announced it is forming a new software company. Digital.ai will provide end-toend intelligent value stream management, software delivery and application security. Digital.ai is backed by TPG Capital, and on “a mission to revolutionize how enterprises create, measure, deliver, secure, and continuously improve digital products that provide value, fuel revenue growth, and
enable innovation in today’s rapidly changing world,” according to its announcement.
GitHub free for teams Private repositories with unlimited collaborators are now available to all GitHub accounts, and all of the core GitHub features are available to everyone. “This means teams can now manage their work together in one place: CI/CD, project management, code review, packages, and more. We want everyone to be able to ship great software on the platform developers love,” GitHub wrote in a blog post.
People on the move
n The open-source solution provider Red Hat has announced Paul Cormier is now the company’s president and CEO, effective today. Cormier succeeds Jim Whitehurst, the now president of IBM. IBM acquired Red Hat in July of last year for $34 billion.
n Mitchell Baker has been appointed permanent CEO of Mozilla Corporation. Baker has been the company’s interim CEO since December 2019. The company conducted an external candidate search over the last eight month, but concluded Baker is the right candidate at this time. n Cloud Foundry Foundation announced its CTO Chip Childers is assuming the role of executive director. Childers will replace Abby Kearns, who accepted an executive role elsewhere. “We as a Foundation are turning the page to a new chapter: raising the profiles of our technical contributors, highlighting the community’s accomplishments and redefining the Cloud Foundry platform as the best Kubernetes experience for enterprise developers,” said Childers. n The Apache Software Foundation has announced a new board of directors. The new board includes: • Shane Curcuru (re-elected Director) • Bertrand Delacretaz (former Director) • Roy Fielding (former Director) • Niclas Hedhman (new Director) • Justin Mclean (new Director) • Craig Russell (re-elected Director) • Sam Ruby (former Director) • Patricia Shanahan (new Director) • Sander Striker (former Director)
Teams that need advanced features like code owners and enterprise features such as SAML or personalized support can upgrade to one of the paid plans.
Eclipse Foundation offers VS Code alternative The Eclipse Foundation just released version 1.0 of an opensource alternative to Visual Studio Code called Eclipse Theia. Theia is an extensible platform that allows developers to create multi-language cloud and desktop IDEs, allowing them to create entirely new developer experiences. According to the Eclipse Foundation, the differences between Theia and Visual Studio Code are that Theia has a more modular architecture, Theia was designed from the ground to run on desktop and cloud, and Theia was developed under community-driven and vendor-neutral governance of the Eclipse Foundation.
Outreachy awarded IBM Open Source Community Grant IBM has announced Outreachy is the winner of its $50,000 Open Source Community Grant. IBM started awarding quarterly grants last October as an effort to promote nonprofits dedicated to education, inclusiveness and skill building. Girls Who Code were awarded the first IBM Open Source Community Grant. Outreachy provides an internship and mentorship program in the open source and free software community for groups that face underrepresentation, systemic bias and/or discrimination in the technolo-
gy industry. The internships are done remotely, which according to IBM will become essential as people are forced to work from home due to the COVID-19 pandemic. Interns are provided a $5,500 stipend for a threemonth internship and an additionally $500 to travel to conferences or events.
Stackery expands serverless offering Stackery announced the expansion of its serverless security and CI/CD capabilities that enable teams to automate delivery best practices. This includes additional audit capabilities, scoped IAM permissions, and secrets management for automated verification and deployment pipelines. “Our heritage is around the design and development capabilities. We’ve always had some set of deployment capabilities because if you’re building applications, you have to be able to send them somewhere. We’ve found that the customers that use us at the most scale were using our deployment capabilities to define their environments and then protecting them with Stackery,” said Tim Zonca, the CEO of Stackery. “The new capabilities build on that.”
Docker creates Compose Specification community Docker announced that it is creating a new open source community to develop the Compose Specification and more flexibly support cloud-native platforms such as Kubernetes and Amazon Elastic Container Service (Amazon ECS) in addition to existing Compose platforms. The Compose Specification
004-5_SDT035.qxp_Layout 1 4/20/20 10:58 AM Page 5
www.sdtimes.com
is a developer focused solution for defining cloud and platform agnostic container-based apps.
CodeStream 7.0 introduces Live View Collaborative IDE provider CodeStream has announced a new version of its platform. CodeStream 7.0 includes updates to code reviews and a Live View that shows what everyone is working on. Updates to code reviews include the ability to request code reviews right from the IDE, notifications when code reviews are initiated, the ability to do code reviews within the IDE, and the ability to search for code reviews. According to CodeStream, these new features are currently available in the JetBrains and VS Code editors, and they are working to add support for additional editors. The Live View provides a snapshot of what every team member is working on. In this view, the repositories in which developers have made changes are shown below their name. Users can also hover over repo entries to see a list of files that have been changed, along with the line number additions and deletions.
IntelliJ IDEA 2020.1 released The first major update of IntelliJ IDEA is now available. IntelliJ IDEA 2020.1 features Java 14, dataflow analysis assistance in the debugger, LightEdit mode, and more. The new features for Java include full code insight support for Records and Pattern Matching for the instance of the operator, as well as the ability to download and set up
May 2020
SD Times
GitLab open sources core DevOps features GitLab announced that 18 of its features are moving to open source including related issues, export issues, issue board focus mode, and service desk. “This marks a major milestone in our efforts to empower the community to collaborate more robustly and to take our single tool for the DevOps lifecycle to the next level,” Sid Sijbrandij, co-founder and CEO of GitLab wrote in a blog post.
a JDK build right from the IDE, and new Java inspections to analyze date-formatting cases and search for additional redundant method calls.
NativeScript 6.5 announced with experimental KotlinJS The latest release of the cross-platform app development framework NativeScript is now available. Version 6.5 expands the functionality of the ‘Tabs’ and ‘BottomNavigation’ components by providing means for creating them programmatically. The new release also includes new styling properties and experimental KotlinJS support. The team explained it continues to support Kotlin on the front-end side of app development, but is also introducing experimental support for writing NativeScript apps with KotlinJS. The Kotlin program-
The full 18 features are: 1. Connect related issues together 2. Export issues from GitLab as a CSV and receive the CSV as an attachment to your default notification email. 3. Issue board focus mode 4. Service desk 5. Web Terminal for Web IDE 6. File syncing to the web terminal 7. Design Management 8. Code quality 9. Conan (C/C++) repository 10. Maven (Java) repository 11. NPM (node) registry 12. NuGet (.NET) repository 13. Canary deployments 14. Incremental rollout 15. Feature flags 16. Deploy boards 17. Support for multiple Kubernetes clusters 18. Network policies for container network security
ming language is a statically typed programming language designed for the Java Virtual Machine, Android, browsers and native solutions. KotlinJS aims to transpile Kotlin to JavaScript.
ConnectALL’s Universal Adapter patent pending ConnectALL has announced its Universal Adapter has reached patent pending status, and is currently under review by the U.S. Patent Office. The Universal Adapter was designed to interconnect software tools and manage flow across the software development ecosystem. “With the Universal Adapter, ConnectALL has the ability to connect to any tool, any solution…anything you use. That is a game-changer because it doesn’t matter what solution you are using,” said Lance
Knight, COO for ConnectALL. “The universe has opened way up with what this Universal Adapter can do.”
Swift 5.2 now available Swift, the programming language for macOS and iOS, has just released a new update. According to the team behind the language, Swift 5.2 focuses on improving developer experience, with improved compiler diagnostics and code completion, debugging reliability, handling of dependencies, and tooling. Swift developer John Sundell wrote that “while Swift 5.2’s total number of new language features might be relatively small, it does include two new capabilities that could potentially have quite a big impact on Swift’s overall power as a functional programming language.” z
5
006-8_SDT035.qxp_Layout 1 4/17/20 5:16 PM Page 6
6
SD Times
May 2020
www.sdtimes.com
Increasing serverless capabilities are pushing architecture to market maturity BY JAKUB LEWKOWICZ
erverless adoption has been growing rapidly as the market begins to mature and as enterprise applications continue to shift in the direction of containers and microservices. The most prominent cloud providers including Amazon — which is at the forefront with its AWS Lambda offering — IBM, Microsoft, Google, and others have already released serverless computing capabilities and continue to add more serverless functionalities.
S
In this year’s The State of Serverless report, Datadog found that half of all AWS users have adopted AWS Lambda. In addition, the report found that close to 80% of large enterprises with AWS and the vast majority of AWS Containers users have adopted Lambda as well. Despite the name, serverless doesn’t denote the lack of servers, but rather the ability to build and run applications without thinking about servers, a concept praised by many developers. The primary benefits of serverless are agility, simplicity and cost. With serverless, developers can focus on their code and the platform takes care of the rest. This can reduce the time from idea to production significantly, according to Sachin Pikle, the product strategy director at Oracle. “It’s a different paradigm. With a serverless functions-as-a-service (FaaS) offering, developers can write code using their favorite programming language, deploy and run it without having to provision, manage, or scale servers,” Pikle said. “It can be a massive productivity boost for developers — you can
do a lot more with a lot less.” In addition, serverless applications are easier to design and implement as complex concerns like multi-threading, scaling, high availability, and security are pushed to the serverless platform. Serverless applications, over the long haul, enable cheaper costs as organizations only pay for the resources used, and nothing for idle resources since pricing is based on the actual amount of resources consumed by an application, rather than on pre-purchased units of capacity, according to Pikle. Oracle found that the most common serverless use cases are event-driven governance, security policy enforcement, data ingestion, log ingestion, running untrusted code in a secure and isolated manner, functions as web and mobile API back-ends — especially for SaaS extensions, reacting to business events in SaaS applications, and machine learning. Most serverless applications are event-driven, use managed services, and trigger code automatically. For instance in serverless, uploading an image file to an Object Store bucket
can trigger an image resize function, or operational alerts for high memory or high CPU usage can trigger the platform to increase the memory or CPU of the virtual machine, and several others, Pikle explained. “Like anything else, serverless has its pros and cons. It’s ideal for short-running, event-driven, spiky workloads,” said Pikle. “Looking at several organizations that have successfully adopted serverless, their pros definitely outweigh their cons.” Another reason why serverless has picked up so much momentum is that there is a growing ecosystem of tools that are being built into the platforms of the large cloud providers. A growing number of languages are also being supported, according to Arun Chandrasekaran, a distinguished analyst at Gartner.
Operational simplicity “The biggest thing drawing users to serverless is operational simplicity because a lot of things like setup integration, provisioning management, a lot of that is abstracted away from the con-
006-8_SDT035.qxp_Layout 1 4/17/20 5:17 PM Page 7
www.sdtimes.com
sumer of the service, which is the developer,” Chandrasekaran said. As serverless architectures mature, they have been able to minimize the issue of provision concurrency, in which there was a performance penalty when a function was called a second time, causing a “cold start.” The introduction of API Gateways was able increase performance twofold to vastly minimize the latency caused by cold starts. The growing maturity of these architectures also expanded its appeal for different use cases. “[Serverless] infrastructure is so mature and so scalable right now. Most invocations of service compute are for data processing jobs, whereas most projects are for APIs right now, whether that’s building out a REST API, GraphQL API, or even a microservice or monolithic application,” said Austen Collins, the founder and CEO of framework provider Serverless Inc. Collins said that compute is only about half of the picture of the value that can be derived from serverless. The other half comes from all of the managed serverless cloud services that integrate with those functions, he said, and this is what really expands the possibility of use cases. “At the end of the day, what makes serverless serverless is the rich integrations that serverless frameworks have with data sources, so for example, take
Lambda and the rich integrations it has with DynamoDB. And secondly, it has the whole scalability aspect like autoscaling. Trying to imitate that scalability in a data center is just not possible,” Gartner’s Chandrasekaran said. The term serverless has evolved significantly in terms of how the marketplace and vendors are trying to define it. “Serverless kind of became a moniker in 2015 when Amazon launched Lambda as a service. When people said serverless they specifically meant serverless functions, which is a way for you to do application development where you’re decomposing applications into serverless functions and running it in a function as a service environment,” Chandrasekaran said. “Today, serverless is a bit broader, particularly in terms of how vendors talk about it. For example in AWS, a lot of other services such as SQS or Athena, are looped into serverless.” However, he added that functions as a service is still the most prominent manifestation of serverless today. At times in the industry, the terms serverless and functions as a service are used interchangeably. However, there is an important distinction between the two. Serverless refers to an environment where people don’t worry about what happens below the application layer. By contrast, when talking about FaaS or FaaS software, it refers to the software that makes running a serverless environment possible, according to Al Gillen, the group vice president of software development and open source at IDC. “Think of FaaS as the enabling service, whereas serverless is the composite offering,” Gillen said. “Serverless environments are much more akin to database stored procedures and triggers. Think of it as your bank account. When your bank account goes negative a dollar, it triggers an action where it freezes the ability to pay any more checks out of that account and sends off a message saying you’ve overdrafted or you’re negative and then it pulls up ‘incurs late fee.’ Those things only happen with a certain set of conditions and generally speaking, that’s how serverless environments are set up to operate as well.”
May 2020
SD Times
However, while serverless offers tremendous cost and scalability benefits, it does have limitations for certain super low-latency use cases. Also as a new technology, it comes with certain challenges regarding implementation. One of these challenges is a major skills gap in knowing how to build cloudnative applications.
A different mindset “Serverless requires a fundamentally different mindset in terms of some of the best practices that they need to know for building more decomposable or composable applications, and that’s challenging for a lot of traditional organizations because they just don’t have enough skills and enough developers that are really trained in these new cloud-native ways,” Gartner’s Chandrasekaran said. Some organizations find themselves overwhelmed in trying to coordinate their move to serverless, prompting them to seek out serverless framework and third-party tooling. continued on page 8 >
No great database story for serverless Despite its effectiveness in a variety of use cases, serverless has not been adopted for databases because traditional databases place limits on scalability. A lot of traditional databases require you to establish a connection. Unfortunately, when you have stateless compute like AWS Lamda that could just scale massively in parallel, every single one of those functions, if it scales massively, is going to try to establish a database connection to MySQL or PostgreSQL and they’re just gonna crash that database,” Serverless’ Collins said. To solve this, HTTP APIs need to be a part of these database technologies so that serverless compute can just scale massively and interact with an API. It’s a data gateway concept where you have to have some middleware in between your serverless compute and your database, and provide that functionality, Collins explained.
7
006-8_SDT035.qxp_Layout 1 4/17/20 5:17 PM Page 8
8
SD Times
May 2020
www.sdtimes.com
< continued from page 7
“I think everybody wants to use serverless cloud infrastructure and they want to use all of these next-generation cloud services that are available. Unfortunately, a lot of teams have trouble putting all of those pieces together to make a whole application,” said Serverless’s Collins. Additionally, not all applications are ideal for serverless environments. The application logic must be capable of being packaged as discrete functions and the applications themselves need to be event-driven. There is an application pattern and you need to really identify the right types of workloads that will fit into that pattern. Chandrasekaran added that it is tough to predict the performance in a serverless environment, which makes it less appealing for super low-latency transactional workloads. As serverless continues to grow, new trends around emerging capabilities have surfaced. Gartner’s Chandrasekaran said the first notable trend serverless providers will continue to improve on is support for more languages, better security monitoring, application debugging, and local testing. Startup companies will handle many of these additional capabilities in the future. Also, there is a focus on opensource projects that allow organizations to deploy serverless not just in the cloud, but also at the edge. Startups are also working to tackle one of serverless’s biggest pain points up until now: stateful workloads. “We have started to see some startups that are briefing us on more stateful workloads that could potentially run on serverless function environments. However, it’s very early to say because most of these startups are in beta or other very early stages,” Chandrasekaran said. Another trend is that there are vendors that are trying to propagate more open standards. Google is one of the key ones in this space with its project Knative, a serverless kernel that runs on top of Kubernetes. “Things that are built on Knative are typically pretty portable from one Kuber-
One insurance company’s take on serverless Branch Insurance, an Ohio-headquartered insurance startup that bundles home and auto insurance online, started developing using serverless starting in 2018 and said the use of serverless streamlined their development process. “The biggest benefit of serverless is that it gives us true infrastructure as code in a way that all of our developers can understand and maintain pretty easily, which is no small feat,” said Joseph Emison, the cofounder and CTO of Branch Insurance. “The standard problems that plague the majority of development teams in the world, we don’t have at all. So things like ‘it works in this environment and not that environment, or in order to deploy this thing. I have to do this manual thing every time. And if I forget, it breaks or it doesn't work.’ All of our developers from junior to senior have no problem implementing new infrastructure.” Emison said insurance has a sort of simplicity to it that makes it very easy to use a lot of automated and managed services and tooling such as things like Amazon App Think or Amplify. “Let’s say you had two teams, one that’s traditionally building an application using Ruby on Rails or JavaScript circa 2012, and the other team is building that same application on AWS Amplify. The AWS Amplify team can build maybe a thousand lines of code in two weeks and the other team could spend two years and write four hundred thousand lines of code and those are two very different worlds,” Emison said. Another reason that is causing insurance companies to look into serverless is that the industry has a whole lot of pain around very old systems and they haven’t been updating them successfully. “I think that the older and creakier your systems are, the more benefits you’re getting in rewriting them,” Emison said. However, AWS’s standard tooling just wasn’t enough to coordinate developers, prompting the company to adopt a serverless platform and architecture visualization tool called Stackery that offered Branch Insurance the cross-account viewing and additional functionalities that it was seeking. “Amazon tooling didn’t do it for us because it didn’t have a good cross-account view. One of the things that turns out is the best way to run your organization when you're using serverless or using serverless services, is to have every developer have his or her own account, every environment has its own Amazon account, so there’s this massive benefit in running them all identically. Amazon tends to only think within one account at a time,” Emison added. z
netes environment to another, making it attractive,” IDC’s Gillen said, adding that the more universal serverless solutions that can be cross-cloud, the better. Overall, serverless is going to increasingly take over the mainstream as different types of services are increasingly adding serverless capabilities, according to Serverless’ Collins. “We think the future cloud is going to be focused on outcomes where you’re going to have managed services, serverless services, API as a service that solve business problems and give you immediate outcomes. These are solutions where you don’t even need to think about the
infrastructure at all,” Collins said. Also, if the economy is headed towards a deep recession, organizations are going to be looking at doing more with less and that’s going to involve a lot of engineering teams potentially outsourcing a lot of what they do in-house over to the cloud providers. “I think it is a remarkably recession-proof architecture,” Collins said. “All in all, what we’re looking at here is a second wave of cloud as it evolves to be an abstraction over infrastructure,” Collins said. “Software is eating the world, cloud is eating software, and serverless is eating cloud.” z
Full Page Ads_SDT035.qxp_Layout 1 4/17/20 12:11 PM Page 9
GET THE
ELEPHANT OUT OF THE ROOM
Bad address and contact data that prevents effective engagement with customers via postal mail, email and phone is the elephant in the room for many companies. Melissaâ&#x20AC;&#x2122;s 30+ years of domain experience in address management, patented fuzzy matching and multisourced reference datasets power the global data quality tools you need to keep customer data clean, correct and current. Tell bad data to vamoose, skedaddle, and Get the El out for good!
Data Quality APIs
Global Address Verification
Global Email
Identity Verification
Global Phone
Geocoding
Demographics/ Firmographics
U.S. Property
Matching/ Deduping
Activate a Demo Account and Get a Free Pair of Elephant Socks! i.Melissa.com/sdtimes
Integrations
www.Melissa.com | 1-800-MELISSA
010-014_SDT035.qxp_Layout 1 4/17/20 5:21 PM Page 10
10
SD Times
May 2020
www.sdtimes.com
The dev manager’s dilemma:
To code or not to code BY CHRISTINA CARDOZA
T
here is very little difference between an engineering manager and traditional business manager. Both types of managers need to be able to organize, motivate and help teams as well as meet business goals in a cost-effective way. The difference is the work that is being managed. According to Lorenzo Pasqualis, vice president of engineering at DreamBox Learning, to be an effective manager, you need to be a domain expert in whatever it is you are managing. “An engineering manager needs to understand the work of software engineers and guide them through a career path that is very technical. Without that programming background, it is unlikely that an engineering manager could gain the respect of their [team] and lead them appropriately,” he said. Yoav Cohen, CTO and co-founder of the data security startup Satori Cyber, also explained that an engineering manager “that is viewed by his or her team as not technical enough would find it hard to drive the team to deliver extraordinary results due to lack of credibility.” However, Cohen noted that there is a fine balance between having that technical knowledge and knowing when to use it.
technology, it is very rare that they will be able to consistently produce production-quality code and excel as a leader. “The reason is that the two types of work are very different,” he said. “Coding requires intense uninterrupted concentration, while management requires dealing with constant interruptions and context switching. Being able to do both is not something that a lot of people can do in practice.” Instead of coding as part of a team, Pasqualis recommended managers code in their free time. If an engineering manager takes on the same tasks as the team as part of their everyday responsibilities, it creates a confusing dynamic, according to Richard Wong, vice president of engineering at Coursera. Wong found that when managers code, they will only spend time on the interesting tasks and leave the less interesting, more tedious stuff to the team. That can cause the team to feel very unsatisfied. “A manag-
Cohen believes managers should still be able to code though, just not 100% of the time. According to Cohen, coding can help managers understand their teams better as well as the work. Some tips he has for continuing to code while managing include: 1. Setting up the development environment on their laptop. “This alone will surface a lot of workarounds, tribal knowledge, and technical debt,
“Coding requires intense uninterrupted concentration, while management requires dealing with constant interruptions and context switching. Being able to do both is not something that a lot of people can do in practice.” —Lorenzo Pasqualis, vice president of engineering
To code or not to code According to Scott Berkun, author of “Making Things Happen: Mastering Project Management,” how hands-on a manager needs to be really depends on the size of the team. If it is a team of six to 10 people, there should be enough programmers on the team to do the work without the manager stepping in. Pasqualis explained that while coding is a way for managers to stay close to the
at DreamBox Learning
er’s contribution is not as big as the damage they can do to their team,” he said. “Many people don’t like the managers they work for, and the reasons are pretty consistent... they don’t feel like they are trusted, they aren’t given work that is challenging or interesting, and they don’t feel like their boss looks out for them,” Berkun added.
especially around developer productivity,” said Cohen. 2. Picking easy tasks like fixing a typo in the user interface. This will help managers experience the end-toend process of committing code and how it makes its way into the product, according to Cohen. 3. Taking on less critical tasks in
010-014_SDT035.qxp_Layout 1 4/17/20 5:21 PM Page 11
www.sdtimes.com
the backlog. “Pick something small, around two hours of uninterrupted work, which you might be able to get done in 1-2 days, depending on how busy your calendar looks like. Get help from your team members if needed, they’ll jump on the opportunity to deliver more value,” said Cohen. “The role of management should maximize the impact of the company by understanding what are the most important goals of the company and how to contribute to those goals,” said Wong. “One skill that is hard is that even if managers aren’t coding, they definitely have to have good empathy for technical challenges associated with engineers. If they don’t understand it they need to be able to ask and learn about it.”
How technical should managers be? While it is possible to manage a software development team without having an extensive programming skillset, Cohen believes in order to truly be a successful engineering manager they need to have a programming background. As you go higher up the corporate ladder, Pasqualis explained the need to have a programming background will
go down, even if the company has a software division. “It is probably possible for a CTO or maybe even a VP of engineering to be more high-level, assuming that there are several layers of middle management under them that are deeply technical,” he said. But for managers directly involved in the software engineering team, they “should have substantial background, and be experts in the field the team operates in,” said Cohen. According to Berkun, having technical understanding is not the same as knowing how to code. It is more about understanding how decisions are going to impact the people coding. “You don’t need to have a computer science degree to have that kind of awareness of aptitude,” he said. For managers that don’t have a software development background, Cohen explained the team will need to be set up in a way to compensate for that. “One way to do that is to introduce technical leaders that are not managers to take on more of the technical leadership work, leaving the manager to focus on people management,” he said. The most successful non-technical
May 2020
SD Times
manager relies on their domain expertise in other fields such as quality assurance, project management and product management, Cohen added. “I believe that people management principles are applicable and transferable across many fields, and engineers are not unique in that respect,” he said. However Cohen does note that the speed in which technology is evolving is different on a software development team than other teams, and managers need to be able to lead their teams not only from people skills, but from their technical skills. Managers should be constantly keeping up with the latest tools, frameworks and technologies. This doesn’t mean they have to read every single book and blog post to understand what is going on, according to Wong. Instead, they should delegate and have team members assigned to go out, find what is going on in a particular area, and come together to share their research and findings. “Then the leadership will be able to understand the trends and make decisions on behalf of the team,” said Wong.
How to transition from programmer to manager Since manager and developer roles are very different, not every developer is going to be well suited for a managerial position, and they should really take into consideration the different roles and responsibilities before taking the leap. When you have a programmer move into management, you get a Peter Principle effect, Berkun explained. “Someone may have been a great programmer, but now you ask them to be a manager that is more about communication, setting goals, dealing with politics, which they may not have any aptitude for at all. They are put into that role because they were good as an individual contributor and that happens way too much in organizations.” said Berkun. “In many organizations, the only way to get promoted is by moving into management, even though a developer doesn’t really like it and isn’t really good at it, that is the only path they are given.” continued on page 14 >
11
010-014_SDT035.qxp_Layout 1 4/17/20 5:22 PM Page 12
12
SD Times
May 2020
www.sdtimes.com
BY CHRISTINA CARDOZA
N
ew and improved methodologies are always switching up the way software development teams work, but to keep up with the pace of evolution, the team structure is not the only change that needs to happen. Team members need to develop new skills and sometimes even transition to new roles. “The engineering teams definitely have to become cross-functional, but at the same time there is a lot of clarity around what every single engineer and piece of the puzzle is supposed to accomplish,” said Daniel Zaltsman, senior manager of community, partnerships
ware anymore. It’s not just an operation person standing up infrastructure or a system administrator doing certain workload balancing, she explained. “It is really a combined effort of multiple skills across multiple individuals,” she said. The key skills that make up a hybrid DevOps human include human, process, knowledge and automation skill as well as technology skills such as cloud infrastructure skills, and functional skills such as IT operations, process and framework skills. The report also saw a transition from T-shaped humans to E-shaped humans. The T-shaped human has specialized
with the T,” Oehrlich said. Groll likes to think the “E” in Eshaped human stands for everyone. Security, testing, infrastructure, and development is everyone’s responsibility. “You don’t have to be a security expert, but you need to know enough to secure your code. It reminds everyone you need to be able to be more expansive. You have to expand your skills and your lens in terms of what role you play,” she said.
Value stream changes The other most common transformation happening in the industry right now is
Defining development roles in today’s modern software world and developer relations at DigitalOcean. The type of transformation an organization is going through is going to dictate the skills, tools and technologies necessary for a software development team.
DevOps changes DevOps has been an ongoing transformation with new techniques being applied to make the life cycle more efficient. The DevOps Institute recently released its 2020 Enterprise DevOps Skills Report, and found for the second year in a row that in order to successfully work on a DevOps team, the “DevOps human” needs to be hybrid. “In the old days, you would have been a software engineer. How you self-identify would be your core competency, and for two years now with this report what we are seeing is there is definitely an evolution where you have to supplement your core competencies with other skills like security, testing or process knowledge,” said Jayne Groll, CEO of the DevOps Institute. In fact, Eveline Oehrlich, research director at the DevOps Institute, believes the word developer needs to be eliminated from our vocabulary because it’s not just a developer developing soft-
knowledge as well as broad general knowledge. Oehrlich thinks about these types of humans as chefs. No matter what skill level you are, you have to have some capability or knowledge of cooking. For instance, you need to know how to turn the stove on or how to boil water. “You might have some end-to-end perspective on the different cuisine you can cook, but you’re missing a few things such as experience. Either you have no experience or you have experience. Having expertise either from a trained activity or from being on the job allows you to explore things. You are not afraid of failing, you explore and learn from that and you also have the responsibility of execution. You have to deliver. That is the E part of it. The experience combined
the move towards value stream thinking. According to Dominica DeGrandis, principal flow advisor at Tasktop, organizations are starting to think in terms of how to manage work and how to deliver what their customers are really looking for quickly. She explained this is a shift from a project to a more product-centric way of working. “With a value stream thinking approach, we are bringing the work to the people. The work that needs to be done for products, features, functionality and business value to improve,” she said. “Design, build and deliver the product. Own it and maintain it continually. That is a whole new world for a lot of organizations.” Here, in this new way of working, DeGrandis is seeing the rise of the val-
010-014_SDT035.qxp_Layout 1 4/17/20 5:22 PM Page 13
www.sdtimes.com
ue stream architect role. Value stream architects understand the necessity of building a resilient and secure system, they study the bottlenecks and then help teams address any problems. Unlike product managers who focus on the prioritization of the work or feature design, value stream architects look at why a product is being built, what are the outcomes they want to produce, and then look at the priority features that need to be worked on, according to DeGrandis. The other role she sees necessary in the new value stream world is “product journey champion.” According to DeGrandis, this person is doing things like systems thinking at scale, providing coaching advice, and helping practitioners adopt value stream thinking. “They are a dedicated coach, a champion, that is internal to enterprises
and helping move forward this way of working,” she said. When looking to add new roles or trying to figure out what skills are necessary, “always start with the customer and what is missing, causing delays, and where you are not realizing as much business value as you could with customers,” said DeGrandis.
General changes DigitalOcean’s Zaltsman believes that while we do have these hybrid roles, there is a shift around specific roles that an engineer plays, which translates into job descriptions. For instance, he no longer sees titles like full stack developer, instead he sees front-end developer, back-end developer and sometimes specifying the technology stacks they work with, such as JavaScript developer.
“All of these engineering teams are coming together and providing very clear roles as part of a specific product that they will be working on,” he said. According to HackerRank’s recent Developer Skills 2020 report, the top skills and tools today include JavaScript, Python, Java, C#, Angular, React, Spring and Django. When it comes to learning new languages, the top languages to learn are Go, Python, Kotlin, TypeScript and R. CloudBees’ vice president of engineering Susan Lally sees product ownership coming more to the forefront of software development teams. “It is increasingly more clear that the effectiveness of the team comes back to the effectiveness of its product owner in internalizing the product vision from product management and making it actionable,” said Lally. Zaltsman explained engineering managers should work with their product counterparts to define exactly what they are trying to accomplish, and leverage the technical expertise available. They can help provide guidance on what technologies will be used to build out the product and identify other opportunities. “An engineering team should include an even balance between engineering and product. There is a product manager who works directly with an engineering manager, and then the engineering manager oversees a slew of engineers and this whole group is oriented around a specific product,” said Zaltsman. Additionally, Zaltsman sees the developer relations team being closer to the engineering team, where in the past they were put with the marketing team. The developer relations team can be advocates for developers as well as an extension to the team to help evangelize and bring back product feedback. “It is important to recognize these supporting teams specifically oriented around the product or service being delivered,” he said.
Building a modern software team Engineering manager roles are also changing to be more like coaches, according to Zaltsman. Not only are
May 2020
SD Times
they required to spend time doing people management work, but they have to dive in and try to understand deeper problems to support their engineers with the different technical decisions they have to make on a daily basis. “That doesn't mean they are coding every single day, but they are finding they have to get their hands dirty with whatever problems their teams are running into,” said Zaltsman. As the coach or leader, the manager has to put together their team. A team is made up based on the technology stacks being used and what they want to do going forward, according to CloudBees’ Lally. “Successful software development teams are a group of software professionals who share a single vision of where they are going and a deep understanding of customer needs and opportunities to improve how they live or work,” said Lally. Lally explained that teams should start small and support a lean approach in order to move quickly, experiment and adjust. “Product managers play key roles in connecting ideas and opportunities to potential customers and then bringing this all back to the development team to internalize. Engineers bring ideas to life in code, bringing a passion for the problem space and practices that continually improve the quality, quantity of the code they deliver,” Lally said. Tasktop’s DeGrandis uses a skills matrix to find the right people for a team. She separates the skills and knowledge needed for the team, and then lists the people who have those skills to see where the gaps are. If there is only one person on the team that has a certain skill or domain knowledge, then managers need to figure out how to cross train people. “Jobs changing isn’t anything new. Jobs are always changing. There are all new roles as technology expands and grows, which can make people fearful of those roles, but there is a lot of opportunity out there,” said DeGrandis. “Look to see what customers are not happy about and how you can reduce those concerns.” z
13
010-014_SDT035.qxp_Layout 1 4/17/20 5:22 PM Page 14
14
SD Times
May 2020
www.sdtimes.com
< continued from page 11
Passionate about leading The prime candidates for managerial roles are engineers who are passionate about leading people and are able to positively influence others, according to Cohen. “Identify those people who have potential and have conversations with them to make sure this is something they are passionate about,” he said What ends up happening if you put a developer who isn’t well-suited to be a manager in that position, is they become micro managers because they know they can just jump into the code, look around, and fix things, according to Berkun. Developers also have a certain style of getting things done and expect their team members to follow that same style when they become managers. “When the team deviates from their behavior, they think the team is not doing a good job without seeing the actual outcome, how they collaborate, or the final impact of the work,” said Wong. In order to let the team and team members become successful, the manager has to let people make mistakes, embrace different working styles, and understand how different types of people working differently can result in the same impact. Additionally, Wong explained that it is hard for someone to give up something they were really good at and do something they aren’t so familiar with. They have a natural tendency to do things themselves because they know they can do it faster and better than the people on their team. “The problem, though, is even if you can get it done faster, if you don’t give people the opportunity to learn, grow and even make mistakes, they will always take longer to get the job done,” said Wong. “The switch to focus from just technology to technology and people is perhaps the biggest barrier for a software developer to become an effective engineering manager. Engineering managers, to be effective leaders, need to be able to define reality for others and communicate complex ideas with simple words. Moreover, they need to be able to hire great people and create an environment where those people can thrive and grow,” Pasqualis added. z
Pitching Tuesdays
While managers need to ensure work is getting done and teams are operating smoothly, it is still important to allow team members to be able to contribute or express their ideas. According to Sergei Anikin, CTO of cloud-based sales software company Pipedrive, managers and leaders need to give team members the time and opportunity to step outside the status quo and create freedom of thought, or a “culture of choice.” He explained too often team members are undermined or ignored when they try to bring new ideas to the table. One way Pipedrive enables team members to contribute is through “Pitching Tuesdays.” “Every Tuesday, across our organization, team members from every level have an open forum to propose projects/initiatives (missions) and present them to the entire company. The best and most pressing ideas are put into action. The team members who propose the mission then work to coalesce an appropriate group to address the challenge,” Anikin said. “The team members for each mission are naturally attracted to the projects they find most interesting and compelling. They are invested in the project and motivated to discover a solution. With team members choosing projects they are most passionate about; we have created a ‘culture of choice.’ ” According to Anikin, Pitching Tuesdays have enabled his company to define a culture, serve as a training ground for leaders, and explore new ideas. It is especially important that leaders go into something like Pitching Tuesdays with an open mind. “Managers are using Pitching Tuesdays to grow and become better managers. Remember, Pitching Tuesdays are a focal point to drive our self-managing, agile organization,” said Anikin. “And, the journey from a traditional hierarchical management structure to decentralized, self-organizing teams requires a lot of confidence and commitment and deep understanding of reasons behind the change.” Some ideas that have come out of Pipedrive’s Pitching Tuesdays includes Leadbooster, a conversational bot that engages with web visitors in order to find leads and help book meetings. “Because our development team is connected to the product team and customers, we were able to identify this need with Pipedrive customers. As a result, our entire Prague team engaged and developed this capability over a period of months, including testing and feedback from customers,” Anikin explained. In addition, Pitching Tuesdays led to Hovercards, a capability that allows Pipedrive users to hover over information and see details without having to navigate away from the current view. “In a Pitching Tuesday session, the development of Hovercards started like all missions begin — with a problem statement. The problem is always from the customer's point of view,” said Anikin. “Great leaders understand they can control the effort, but cannot control the outcome. To get the best effort and an opportunity for the best outcome, senior leadership will support and encourage a joint team effort through commitment and buy-in.” z — Christina Cardoza
Full Page Ads_SDT035.qxp_Layout 1 4/17/20 12:14 PM Page 32
016-021_SDT035.qxp_Layout 1 4/17/20 5:24 PM Page 16
16
SD Times
May 2020
www.sdtimes.com
aPM, aIops and observability
Monitoring The second of Three ParTs
016-021_SDT035.qxp_Layout 1 4/20/20 12:38 PM Page 17
www.sdtimes.com
May 2020
SD Times
BY DAVID RUBINSTEIN
M
onitoring your applications comes in many forms. There’s traditional application performance management, which begat AIOps, which begat observability. But are there really any differences? If so, where are they? Some believe these are marketing terms used to differentiate tools. Others point to it as more of an evolution of monitoring. All that said, the performance of your application can be critical to your organization’s bottom line — whether that’s represented financially, or by increased membership, or the number of users on your site. The key reason for the changes in monitoring is that software and IT architectures are much more distributed. Monolithic applications and architectures are being rewritten as microservices and distributed in the cloud. This, now, requires automation and many companies are also adding machine learning to help in the decision-making process. These two properties define AIOps, though traditional APM vendors are adding automations to their solution sets. Stephen Elliot, program director of I&O at research firm IDC, said thinking back 10 years ago, application performance was very much about the application itself, specific to the data tied to that app, and it was a silo. “I think now that one of the big differences is not only do you have to have that data, but it’s a much broader set of data — logs, metrics, traces — that is collected in near real-time or real-time with streaming architectures,” Elliot said. “Customers now have broadened out what they expect in terms of observability versus the traditional APM view,” he continued. “And they’re increasingly expecting more integration points to collect different pieces of
data, and some level of analytics that can drive root cause, pattern matching, behavioral analysis, predictive capabilities, to then sort of filter up, ‘Here’s where the problem might be, and maybe, here’s what you should do to fix it.’ They need a lot broader set of data that they trust, and they need to see it in their own context, whether it’s a DevOps engineer, a site reliability engineer, cloup ops, platform engineers.” AIOps not only looks at the application itself, it takes into account the infrastructure — how the cloud is performing, how the network is performing. The intelligence part comes in where you can train the system to reconfigure itself to accommodate changing loads, to provision storage as needed for data, and the like. But, before declaring the holy grail of monitoring has been found, Gartner research director Charley Rich cautioned, “Just be aware... APM is a very mature market. In terms of our hype cycle, it’s way past the bump in hype and moving into maturity. AIOps, on the other hand, is just climbing up the mountain of hype. Very, very different. What that means in plain English is that what’s said about AIOps today is just not quite true. You have to look at it from the perspective of maturity.”
What is not quite true about AIOps? “Oh, that it just automatically solves problems,” said Rich, who is the lead author on Gartner’s APM Magic Quadrant, as well as the lead author on the analysis firm’s AIOps market guide. “A number of vendors talk about self-healing. There are zero self-healing solutions on the market. None of them do it. You know, you and I go out and have a cocktail while the computer’s doing all the work. It sounds good; it’s certainly aspirational and it’s what everyone wants,
but today, the solutions that run things to fix are all deterministic. Somewhere there’s a script with a bunch of if-then rules and there’s a hard-coded script that says, ‘if this happens, do that.’ Well, we’ve had that capability for 30 years. They’re just dressing it up and taking it to town.” But Rich emphasized he didn’t want to be dismissive of the efforts around AIOps. “It’s very exciting, and I think we’re going to get there. It’s just, we’re early, and right now, today, AIOps has been used very effectively for event correlation — better than traditional methods, and it’s been very good for outlier and anomaly detection. We’re starting to see in ITSM tools more use of natural language processing and chatbots and virtual support assistants. That’s an area that doesn’t get talked about a lot. Putting natural language processing in front of workflows is a way of democratizing them and making complex things much more easily accessible to less-skilled IT workers, which improves productivity.” Indeed, many organizations today are gaining greater event detection, correlation and remediation through the use of AI and machine learning in their monitoring. But to achieve that, organizations have to rethink the tools they use and the way they monitor their systems. Is AIOps a better way to do things? Machine learning makes monitoring tools more agile, and through selflearning algorithms they can selfadjust, but that doesn’t necessarily make them AIOps solutions, Rich said. “Everybody’s doing this,” he pointed out. “ We in the last market guide segmented the market of solutions into domain-centric and domain-agnostic AIOps solutions. So domain-centric might be an APM solution that’s got a lot of machine learning in it but it’s all continued on page 18 >
17
016-021_SDT035.qxp_Layout 1 4/20/20 12:07 PM Page 18
18
SD Times
May 2020
www.sdtimes.com
< continued from page 17
focused on the domain, like APM, not on some other thing. Domain-agnostic is more general-purpose, bringing in data from other tools. Usually a domain-agnostic tool doesn’t collect, like a monitoring tool does. It relies on collectors from monitoring tools. And then, at least in concept, it can look across different data streams, different tools, and come up with a cross-domain analysis. That’s the difference there.”
Changing cultures One of the things pundits tell us is required to implement many new technologies is a change in culture, as if that were as simple as changing a pair of socks. Often, when they talk about culture change, they are really talking about learning new skills and reorganizing teams, not really changing the way they work. In the case of monitoring, Joe Butson, co-founder of consulting company Big Deal Digital, sees automation in AIOps enabling a shift from the fingerpointing often associated with incidents to a healthier acceptance that problems are going to happen. “One of things about the culture change that’s underway is one where you move away from blaming people when things go down to, we are going to have a problem, let’s not look for root cause analysis as to why something went down, but what are the inputs? The safety culture is very different. We tended to root cause it down to ‘you didn’t do this,’ and someone gets reprimanded and fired, but that didn’t prove to be as helpful, and we’re moving to a generative culture, where we know there will be problems and we look to the future.” AIOps is driving this organizational culture change by adding automation to their systems, which allows companies to respond in a proactive way rather than reacting to incidents as they occur, Butson explained. “It’s critical to success because you can anticipate a problem and fix it. In a perfect world, you don’t even have to intervene, you just have to monitor the intervention
Monitoring tools need to evolve People have come to expect a certain level of performance from their applications, whether using a consumer application, such as a retail website, or using a business application to get their jobs done. But most monitoring solutions have not adapted to this collapsing of the consumer and business worlds into one, making it difficult for businesses to see how their applications are presenting to customers and employees. Twenty years ago, businesses ran all of their applications in their own data centers, behind firewalls, under their complete control. The internet was just a transport, a way for users’ machines to talk to back ends. There wasn’t business being transacted. And, the experience wasn’t great. Because applications were local and under company control, monitoring also was local. There was packet analysis and netflow analysis and of course data analysis. Nik Koutsoukos, director of marketing for experience monitoring solution provider Catchpoint, fast-forwards to today. “I’m sitting in my condo — I work from home most of the time — and I’m using my company laptop and accessing all the applications I need as an employee. They’re in the cloud or they’re SaaS. The transport I’m using is 100% internet. I’m not using some wired infrastructure; I’m not going through some corporate firewall. My world as a consumer, and my world as an employee, have completely collapsed. It’s the same world.” But Koutsoukos went on to say that while application architectures and deployments have evolved, monitoring tools have not. “The focus is still on local telemetry, on packet, collecting packets and data from wherever you can, while most of the applications and hosting environments and transport right now is outside the control of IT. If I go to my IT guy, and I say, ‘Listen, my Office 365 experience is really sucky right now. What’s going on?’ What are they going to look at? What telemetry, what data, and where are they going to get it from? The internet? You’re going to go to your service provider and you’re going to whine to them and complain that you’re not meeting your SLAs because Office 365 performance in Maine is really sucky for my employees. You have no data to prove it; you have no data to hold them accountable.” z —David Rubinstein
and new resources are being added as needed,” he said. “You can have the monitoring automated, so you can autoscale and auto-descale. You’d study traffic based on having all this data, and you are able to automate it. Once in a while, something will break and you’ll get a call in the middle of the night. But for the most part, by automating it, being able to take something down, or roll back if you’re trying to bring out some new features to the market and it doesn’t work, being able to roll back to the last best
configuration, is all automated.” Further, Butson said, machine learning empowers organizations to remove the human component “to a very large case.” Humans will still be reviewing the assumptions made behind the automations, but, he noted, “Every month, every year, machine learning is taking out more of the guesswork because of the data.” Similarly, application monitoring runs on a certain set of assumptions as to how an application should behave, how the network should perform, and other metrics the organization deems as critical. So you have those assumptions, but then, Butson asked, how do you deal with the anomalies? “You prepare for the anomalies,” he said, “and that’s a different kind of culture for all of us.”
The human element Gartner’s Rich said what people want is the algorithms to adapt to what you’re continued on page 21 >
Full Page Ads_SDT035.qxp_Layout 1 4/17/20 12:12 PM Page 19
Full Page Ads_SDT035.qxp_Layout 1 4/17/20 3:28 PM Page 20
016-021_SDT035.qxp_Layout 1 4/20/20 12:07 PM Page 21
www.sdtimes.com
May 2020
SD Times
digital experience monitoring: an outside-in view Gartner research describes three things that are required for a solution to be categorized as application performance monitoring: application discovery, diagnostics and tracing; data analysis; and digital experience monitoring. Digital experience monitoring, or DEM as it is sometimes called, is different from the other types of monitoring because it takes an outside-in view of the application, looking at what the customer or end user is seeing to see if the application is delivering what the customer wants and expects. In a world where businesses are transforming into digital operations, knowing what the customer is seeing is most critical, because a poor experience will impact a company’s reputation and bottom line. “Experience management is the ultimate goal of monitoring,” said Mehdi Daoudi, founder and CEO of DEM platform provider Catchpoint. Visibility into all aspects “That’s the only way to know that of performance is key, you’re doing something that matters. said Daoudi. The CEO is not going to care how many of your CPUs are in use 90 percent of the time.” Two critical factors in digital experience monitoring are where you monitor from, and what you look for. You have to monitor where the user is. “It’s even more important today with this virus crisis than ever before, because the amount of people, where they are, has just exploded,” Daoudi said. With more people working remotely than ever, it’s important to know what the experience is like for the user base. So issues like reachability are important. Can the network handle the increased loads? Can the ISP deliver transactions to the customer? “If you monitor from your data center, you’re blind to the internet, you’re blind to geographic latency,” Daoudi said. The other critical factor is what to monitor, and Daoudi said you have to monitor the end result. “Imagine if you had a restaurant today, and you’re having a critic come to your restaurant. He’s not going to go into the kitchen to see how you prepare the food, he’s going to order the soup, or salad, a main
< continued from page 18
doing and analyze the current situation. This, he said, is a legitimate want, but no one really has yet. “It’s very hard because you don’t get all the signals that say, ‘this is the problem.’ You have to infer that from a lot of data, and then look at the past and look at topology, and come up with, ‘this is the best solution we can recommend to do this based on what you’ve used — then run the solution, rate itself and then improve it the next time. That cycle of continuous improvement is just not there.” Further, he said, as you think about
dish and a dessert, and he’s going to taste it. Did it taste good? And he’s going to look at the presentation. The plate is clean and it looks good. And they charge $50 bucks for that dish.. Is it worth it? It’s about the end result.” Catchpoint takes a two-pronged approach to gather data on the user experience. One, Daoudi said, is the synthetic approach. Catchpoint has robots in 850 locations that simulate the user running in the last mile, and pays people at home to host a Catchpoint device, which provides the digital ‘mystery’ shopper experience. Catchpoint also has its robots run in data centers, “because it gives you that clean lab environment view,” Daoudi explained. “You can see, OK, I’m in Los Angeles, connected to Comcast, how does it look to try to launch a Zoom conference. How does it look to make a DNS query to Akamai. How does it look to load Salesforce.com?” The second part is having customers put beacons on their web pages and web applications to provide a much larger data set, allowing Catchpoint to see “literally every single human transaction,” Daoudi said. Returning to the restaurant example, the ‘mystery shoppers’ are like the food critic, tasting the food. The beacons provide the look into the kitchen, to see how things are running, and how the food is being prepared. In beta is a solution for employee experiences, with robots installed in the offices of Catchpoint customers and a browser application endpoint that customers install. Daoudi explained: “And so now, we’re seeing what Dave is doing, what John is doing, and we can see, who’s having a bad day with Salesforce? Is it just Dave because he’s on Long Island? Are other things happening on Long Island? Is the entire East Coast having problems with Zoom? We’re trying to get that visibility from as many perspectives as we can.” The point of all this, he said, is to be customer-centric. It means IT working as a partner with the business. “Monitoring for the sake of monitoring is a stupid thing; it’s a waste of money,” Daoudi said. “If you go and spend a gazillion dollars on an APM tool or something, and you are not able to answer, ‘why is my business impacted in Germany,’ then it’s a waste of time and money. It’s important for the IT leaders to make this great transformation.” z —David Rubinstein
it, would you want machine to do that? Risk is the key determining factor in how much automation organizations will enable. “If it’s a password change, someone says they want to update their password, sure, the machine can do that. If the solution is ‘boot the server,’ like we do with Windows, or start up a new container, there’s no risk. But if the solution is ‘reconfigure the commerce server.’ and the downside might be we can’t book any orders today, would you want the machine doing that? No.” IDC’s Elliot said it’s a matter of trust. Teams have to trust that the algorithm is
going to do what it says it’s going to do correctly. “You can see the aspirations, and some tools emerging that are driving automated decision-making. For example, resizing a reserve instance on AWS, or shutting a reserve instance down, or potentially maybe moving storage automatically. There are different tasks that can be done automated that can be trusted and can be executed via policy. We are seeing that, and expect more of it down the road as customers get comfortable with replacing some of these manual tasks with automated, event-driven decision-making.” z
21
022-26_SDT035.qxp_Layout 1 4/17/20 5:26 PM Page 22
22
SD Times
May 2020
www.sdtimes.com
Buyers Guide
Low-code is the heart of modern software development
BY JENNA SARGENT
L
ow-code tooling has long been seen as a way to get business users involved in the development process, or to help developers augment and speed up their own development process. Now those two groups are working together and using low-code at the heart of modernization efforts. Though often low-code is talked about as a way for business users to develop applications, when low-code first started it was all about developers, John Rymer, vice president and principal analyst at Forrester, explained. Low-code allowed developers to speed up their development life cycles because not as much manual work was needed. About two or three years into its lifespan is when low-code branched off to focus on empowering business
users, Rymer explained. Today, business users are actually using low-code to work alongside developers. Business is moving faster than ever and competition is at an all-time high. On top of that, organizations are realizing that they simply don’t have enough developers to accomplish everything they would like to accomplish, and low-code is a way for them to close that skills gap. “People started to see that if they really wanted to deliver all of the software they needed to digitize their operations, there was just no way in hell they were gonna do it by relying solely on developers,” said Rymer. “There are just not enough developers in the world, and a lot of our clients can’t find the developers they need, and so some of that work they concluded was going to be best done by business people, given that they had the
right tools, the right platform, the right training, and the right support.” Organizations are using low-code to build complex applications. “Low-code can be used to solve very complex problems,” said Mike Hughes, product evangelist at OutSystems. “A lot of people don’t believe that still. They kind of relegate it to toy apps or more of the case tools back in the 80s and 90s. But the reality is that organizations are running their business on low-code platforms now. The level of sophistication of what’s being built is rising.” In their most recent low-code Magic Quadrant, Gartner predicted that more than half of development over the next few years would be done using low-code solutions. “No-code and low-code are kind of converging into just platforms that allow organizations to move faster,” said Hughes. “And the sophistication of
022-26_SDT035.qxp_Layout 1 4/17/20 5:26 PM Page 23
www.sdtimes.com
what you can build, the upper limits are being pushed all the time to where hand-coding for very, very sophisticated applications may not be the only viable approach. Low-code can solve that problem too.” Organizations are not just using lowcode to create new applications, but also to modernize their legacy applications. As legacy systems start failing to meet the need of the business today, they need to be extended and adapted. Jay Jamison, chief product and technology officer at Quick Base believes that low-code can provide that extension and adaptability. According to Rymer, about 15% of organizations that Forrester has spoken with are using low-code to take on mission-critical projects, such as reinventing core business systems like billing, scheduling, and payments. He believes that in the next few years we’ll see more and more of that trend.
Cross-functional teams are key to low-code success One crucial element of successful lowcode implementation is the colocation of business and IT teams. According to Hughes, in traditional software development, business would define a need and project and IT would go scope out that project. They might return with an application 18 months later with little to no communication with the business team in that time, and by the time they delivered the application, the need had changed, making the application no longer relevant or necessary. “We’ve seen the need to be more agile,” said Hughes. “But low-code increases the pace so much that it does create pressure on the business now to be able to provide input on a much more regular basis.” Organizations have to think about how they can better align their business and IT teams, and in some cases remove the distinction between the two altogether. “Some of our customers would not even say that they have business in IT anymore,” said Hughes. “It’s just they have teams working on products, cross-functional teams, some have more of a business side, some have more of a technical side. But they’re
May 2020
SD Times
How does your company help organizations streamline development? Mike Hughes, product evangelist at OutSystems Today, many organizations are saddled with loads of technical debt and are unable to adapt at the speed the business needs. The developer skill sets required to deliver the digital experiences customers expect are either impossible to find or prohibitively expensive. OutSystems believes it is possible to deliver great digital experiences with the agility organizations need and the talent they already have. We do this by abstracting customers from the complexity of setting up a modern cloud application platform. Our technology allows organizations to focus on quickly creating unique digital experiences that cover the widest range of use cases and channels (such as portals, mobile apps, AI chatbots, and more) and will never become legacy. Products and services can be continuously delivered and updated with the agility the business demands. Built-in automation across the entire app delivery life cycle ensures apps are not only quick to create but also quick to change based on customer feedback. Unlike no-code platforms, OutSystems low-code allows any app to be scaled as needed with built-in security. Meaning, there are no walls, no need to change to different technology and rewrite when an app needs to scale. And finally, you are able to tackle the talent challenge head-on. Our platform empowers developers to deliver technology outcomes that would have required many more people and specialized skills, and also enables tech-savvy business users to contribute to the delivery of digital assets. Built-in governance ensures IT always remains in control. We describe this as software with no limits.
Jay Jamison, chief product and technology officer at Quick Base Quick Base unites business and IT teams on a common platform, enabling almost anyone within an organization to develop applications safely and securely to support their unique processes. When more people get involved with development, the entire organization benefits from better utilization of resources and faster delivery of applications. Traditional development cycles can be very time-consuming and expensive. By contrast, low-code applications maximize efficiency by enabling quick development and ongoing iteration from all corners of an organization. The result is that IT and professional developers can prioritize time and effort on broader initiatives that most require their expertise, while business users, commonly known as citizen developers, can quickly develop tools for their unique needs and easily update those tools in response to changing needs. Quick Base’s low-code platform empowers this continuous innovation while at the same time managing risk, standardizing governance of low-code applications on one platform rather than across many point solutions. Businesses can speed up innovation and simultaneously reduce IT burdens and risks through safe, secure and sustainable citizen development. Ultimately, not only is the overall development process streamlined and more impactful, but organizations also end up creating a culture of innovation and rapid process improvement, allowing them to be more agile, evolving to meet fast-changing market conditions. Learn more at QuickBase.com. z
making decisions together.” These cross-functional teams should, according to Jamison, include both subject matter experts at the edge of the business that know what the problem is they are trying to solve, and IT professionals that have knowledge around data security, user security, and management and governance of applications.
Jamison also recommends these cross-functional teams take the time to discuss what the process is today and what the ideal state of the process should be down the line. “What we find is customers will often say ‘hey I want to go get this application built right away and I want to move super fast,’ which we continued on page 26 >
23
Full Page Ads_SDT035.qxp_Layout 1 4/17/20 12:13 PM Page 24
2020 has ushered in a new reality Can your IT team help your enterprise go digital and adapt?
Visit outsystems.com/low-code to learn why low-code is key to delivering on the new digital imperatives of:
Remote work
Business continuity
Restarting operations
022-26_SDT035.qxp_Layout 1 4/17/20 5:27 PM Page 25
www.sdtimes.com
May 2020
SD Times
A guide to low-code tools n
FEATURED PROVIDERS n
n Outsystems: OutSystems is the most complete low-code development platform for building enterprise solutions that drive real business value. Recognized as a leader by both Gartner and Forrester, OutSystems technology gives our customers the speed of SaaS with the flexibility of coding, within a single platform that is purpose-built for scalability, security and performance. Thousands of happy customers worldwide trust OutSystems to get new digital innovations to market much faster at a fraction of the cost. n Quick Base: Quick Base is the low-code platform for continuous process innovation at enterprise scale. As the first platform to support safe, secure and sustainable citizen development, Quick Base helps more than 6,000 customers, including over 80percent of the Fortune 50, continuously perfect the processes that make their businesses unique. Quick Base is a leader in the Forrester Wave: Low-Code Platform For Business Developers. Visit QuickBase.com to learn more.
n AgilePoint: AgilePoint NX is a low-code development platform that allows both developers and “citizen programmers” to easily implement and deploy cross-functional/cross-organizational business apps into digital processes across multiple environments and cloud platforms. n Alpha Software Corporation: Alpha Software offers the only unified mobile and web development and deployment platform with distinct “no-code” and “low-code” modes. The platform materially accelerates digital transformation by allowing line-of-business professionals to work in parallel with IT developers. n Altova’s MobileTogether provides developers with the tools needed to build complex mobile applications quickly and easily. With MobileTogether, developers can create apps without having to manually write code, without needing to sacrifice quality. It uses a combination of drag-and-drop components and easy-tounderstand functional programming, making it easy for developers to use it to build sophisticated mobile apps. n Appian: Appian’s platform allows teams to quickly build unified views of business information from across existing systems, and lets them create optimized processes that manage and interact with their data. Abandon the need for code with drag-and-drop, declarative, visual development for all aspects of app dev — UX design, process design, rules design, and more.
n Caspio: Using visual point-and-click tools, business developers can execute the entire application design, development and deployment process, allowing them to rapidly deliver a minimum viable product and continue iterating as the market requires. The platform also offers built-in security controls, governance and compliance — such as HIPAA, FERPA, FIPS 140-2, and the EU General Data Protection Regulation. n Dell Boomi: Dell Boomi is a provider of cloud integration and workflow automation software that lets organizations connect everything and engage everywhere across any channel, device or platform using Dell Boomi’s industry leading lowcode iPaaS platform. The Boomi unified platform includes Boomi Flow, low-code workflow automation with cloud-native integration for building and deploying simple and sophisticated workflows to efficiently drive business. n K2: K2 offers an established platform that excels across mobile, workflow, and data. K2’s core strength is support for building complex apps that incorporate mobile, workflow, and data. The company provides a data-modeling environment that allows developers to create virtual data views that bring multiple systems of record together into a single view. This allows developers to create an abstract view of the data. n Kintone: Teams can run, test and iterate on processes, and efficiently manage
tasks with Kintone’s no-code workflow automation tool. The platform features branched workflows, no-code application building and trigger-based notifications with built-in collaboration at every step of the way. Teams can navigate databases quickly and easily, diving into their data with easy-to-use and quick-to-configure views, filters and reports. Developers can also take application customization and workflow automation to the next level with Kintone’s open APIs and Javascript. n Kony: The Kony AppPlatform delivers speed without compromise, accelerating development with reusable components and real-time collaboration tools to keep projects on track and team members aligned. A rock-solid centralized code base powers all devices and operating systems, integrating with 100% of the native OS for true native experiences while streamlining support and minimizing maintenance. n Mendix: Mendix is a low-code, highproductivity platform that enables enterprises to transform how they innovate and compete with applications. Building apps on Mendix is easy, fast and intuitive with the use of visual models, enabling a wide continuum of people, from developers to business analysts, to build robust applications without the need for code. With model-driven development, business leaders and IT have a shared language to build applications rapidly. n Microsoft: Microsoft enables users to create custom business apps with its PowerApps solution. PowerApps features a drag-and-drop, citizen developer-focused solution designed to build apps with the Microsoft Common Data Service. PowerApps can be used with Microsoft Flow, the company’s automated workflow solution, for data integration. Build apps fast with a point-and-click approach to app design. Easily connect your app to data and use Excel-like expressions to easily add logic. Publish your app to the web, iOS, Android, and Windows 10. n Nintex: Nintex helps enterprises automate, orchestrate, and optimize business processes. With the company’s intelligent process automation (IPA) solutions, IT pros and line of business employees rely continued on page 26 >
25
022-26_SDT035.qxp_Layout 1 4/17/20 5:27 PM Page 26
26
SD Times
May 2020
www.sdtimes.com
< continued from page 25 on the Nintex Platform to turn their manual or paper-based processes into efficient automated workflows and to create digital forms, mobile apps, and more. n Oracle: Oracle Autonomous Visual Builder Cloud accelerates development and hosting of engaging web and mobile applications with an intuitive browserbased visual development on the same enterprise-grade cloud platform powering Oracle SaaS Applications. Create business objects, add process automation, integrate external systems and, when needed, leverage standard Javascript to create amazing apps faster. n Pegasystems: The Pega low-code application development platform allows business and IT to collaborate in realtime, using visual models to capture business requirements, quickly iterate and scale apps while ensuring nothing gets lost in translation. Pega automatically generates the application and its documentation audit trail, all leading to a 75 percent reduction in development costs. n Salesforce: The Lightning Platform anchors this low-code customer base, and includes tools like Heroku and Salesforce DX as well as partnerships (with continuous delivery tool vendors) that address coders. Salesforce’s mobile low-code platform helps customers extend customer data managed by the vendor’s softwareas-a-service (SaaS) CRM apps while blending and aggregating it with data from other systems of record. n Sencha: Sencha Ext JS provides everything a developer needs to develop data-intensive web applications. The framework includes a powerful library of 115+ pre-tested, integrated, and professionally supported components and tools to simplify. n ServiceNow: The Now Platform accelerates the digitization of manual business processes by enabling anyone to rapidly build, test, and deploy applications that automate work across the enterprise. n Xojo: Xojo is a cross-platform development tool for building native apps for desktop, web, mobile and Raspberry Pi. Xojo applications compile to machine code for greater performance and security. It uses native controls so apps look and feel right on each platform. z
COVID-19 will be a forcing function for low-code adoption While low-code was already on a path of future growth, the current global pandemic is having an impact on many parts of businesses. Product evangelist at OutSystems Mike Hughes believes that the pandemic will act as a forcing function for organizations to take the digital leap. “I would also expect that low code will be viewed as one of those ways of enabling organizations to become more digital very very quickly. So organizations that perhaps have been just saying ‘well, we can do this next year or perhaps in two years,’ there’s now a very strong forcing function,” said Hughes. According to Forrester principal analyst John Rymer, low-code has the potential to also directly help with the pandemic, as new systems are needed to track testing, both initial tests to determine if someone is COVID-19 positive and antibody tests to determine immunity in the population. “They’re going to have apps that they need for vaccinations and all that stuff,” said Rymer. “This is needed now. You can’t take six months or three months to deliver this. They need it now. And so they’re turning to low-code for these kinds of solutions. In the financial sector and in the government sector, there’s new government support here in the US. There are no systems in the US to distribute those payments that are included in the [stimulus] bill to how many million people. Those have to be built fast. This is a moment for low-code to really shine or not.” z
< continued from page 23
can do,” said Jamison. “But often in moving super fast, what’s great is it starts to draw out conversations with customers saying ‘Hey, we want to adapt the application to add this component or change this flow slightly.’ And so that works great in the sense of getting something stood up quickly and iterating very fast based on what new requirements are uncovered.” In addition to these cross-functional teams being able to provide input on projects at a faster pace, the increased speed of development also requires that teams have the ability to measure success quickly, Hughes explained. “You need to understand what are the metrics you’re trying to hit and how quickly you can move,” he said. “If you think about the journey of a consumer, for example, how do you optimize that journey? You need almost immediate feedback on their experience.”
Governance is baked in One thing that is important to consider when dealing with low-code solutions is how your organization is going to handle governance. If you’re enabling business users to create applications on their own, then you need to be sure that IT has a way to centrally manage that. Shadow IT continues to be a big issue within organizations, with a recent
survey revealing that 62% of respondents had created at least one account without telling IT. According to lowcode platform providers, however, governance is often baked into the solutions. For example, in OutSystems’ platform there are controls that allow admins to create users and groups and assign them permissions. Jamison explained that governance has to be a mix of a “people, process and technology-oriented solution,” and that it’s not a one-size-fits-all approach. For example, he has seen governance models range from a centralized model where IT builds the applications and governs and manages them, to organizations where low-code tools are pushed to the edges of the organization and only data principles and management are governed by IT. Another part of governance is governance over application architecture. Low-code solutions provide a lot of control over architecture, so it’s important that there’s oversight so that users are not creating “architecturally inappropriate structures,” said Hughes. “You aren’t generating bad code, but people can make architectural decisions that perhaps are not optimal... So being able to have a visual representation of the technical debt within your portfolio is critically important from a governance point of view as well,” said Hughes. z
Full Page Ads_SDT035.qxp_Layout 1 4/17/20 12:13 PM Page 27
028_SDT035.qxp_Layout 1 4/17/20 5:29 PM Page 28
28
SD Times
May 2020
www.sdtimes.com
Guest View BY RAJESH RAHEJA
Is service mesh really needed? Rajesh Raheja is senior vice president of R&D and Engineering at Boomi, a Dell Technologies business.
S
ervice mesh is regularly pitched as the silver bullet for developing services, but in reality, it only addresses specific operations, security and traffic policies, not every possible aspect. As enterprises move away from monoliths to microservices and cloud-native applications, it’s vital to have secure and easy-to-implement integrations that free up developer time for more critical work. Service mesh makes it unnecessary to re-implement infrastructure logic (e.g. routing, logging, etc.) inside the microservice, thereby keeping it truly agile to change. Thought service mesh was a cure all for your infrastructure woes? Before you invest, I’ve dived into what is actually true about the technology and what is simply hype, helping you determine whether service mesh is a fit for your development cycle or one you should pass on for now. Fiction: You don’t have to change anything in your microservices to implement service mesh. While service mesh allows enterprises to retrofit their applications with an infrastructure layer without rewriting the entire code, there are some changes you’ll need to make, especially if you didn’t build the applications with cloud-native design considerations in mind. Service mesh doesn’t magically make an application cloud-native — it only supports infrastructure to help manage microservices and won’t solve a poor microservices topology. The onus is still on the developer to ensure microservices are built using the right development principles in the first place, following modern cloud-native, API management and DevOps CI/CD best practices. Resist the urge to re-build commodity infrastructure components (logging and monitoring) and leverage commercial or commodity OSS projects instead of having each service team build it from scratch in the name of autonomy. Overall, service mesh is like having the best dashboard and controls in a car (e.g. having a “Sports” mode). However, the service mesh won’t be leveraged if the engine itself (i.e. the microservice it is managing) isn’t built for it. To get the best outcomes, the microservice design needs to be done right, and it likely means you’ll need to modify your already existing code.
In many cases... an effective API strategy for your microservices is what your enterprise should really be focused on.
Fact: Service mesh can’t replace your API management needs. Service mesh, as well as orchestration technologies like Kubernetes, could replace some API management functionality, but not every API management need. The API gateway is the main area of overlap between API management and service mesh, which introduced the concept of ingress gateways. The API gateway and service mesh both govern security (access control and authentication), traffic management (rate limiting and throttling) and routing to APIs. Fiction: Service mesh is consistent across its deployment. There is a lack of standardization across service mesh implementation, with some vendors creating their own meshes and opinionated distros, though there are some headways in standardization. For example, Microsoft and HashiCorp are working on a service mesh interface for the industry. With service mesh you also run the risk of cloud vendors locking you into their service mesh. This runs counter to the initial concept of service mesh, which was for it to function with multi-cloud, but hopefully standardization will enable service mesh to truly support multi-cloud environments. Fact: Service mesh requires deep knowledge of underlying tech to implement. Though service mesh will ultimately make microservice implementation a breeze, it still requires deep knowledge of the underlying tech like Kubernetes, Docker, Istio etc. For many companies, it’s difficult to find and cultivate the right skill set. Without the right knowledge and expertise, you’ll end up with a poorly implemented service mesh. Service mesh is still a nascent technology — it’s continuously developing and developing fast. Overall, service mesh is all about improving time to value and ease of development, like what middleware used to do, but leaping into the tech without understanding it will do more harm than good. More important than implementing the latest technology is making pragmatic decisions on what’s going to be microservices vs. mini service vs. a major capability that’s simply exposed via a service interface via a facade. Don’t try to boil the ocean. In many cases, API management and an effective API strategy for your microservices is what your enterprise should really be focused on. And in these cases, service mesh is simply overkill. z
029_SDT035.qxp_Layout 1 4/17/20 5:29 PM Page 29
www.sdtimes.com May 2020 SD Times
Analyst View BY ROB ENDERLE
Three smartphone trends worth watching A
few months ago, before the COVID-19 pandemic broke out, the near-term future of the smartphone seemed obvious. We were moving to foldable devices with the only question being whether these devices would unfold to get to tablet size (Samsung) or fold down to fit better in your pocket (Samsung, Motorola). But with the collapse of most of the events that would have promoted these new designs, the market appears to have lost interest. Instead, the focus now seems to be on security and third-party products like Blackberry Protect. And, rather than buying a new phone, the focus is on figuring out how to make one already in use last longer. Finally, health applications appear to be on the rise, which should promote accessories like the smartwatch, with sensors that monitor things like your temperature and heart rate, over phones. Let’s take each in turn.
Security When a lot of people are stuck at home, a significant number of folks turn to find ways to scam others. We have seen a sharp uptick in phishing attacks, and apps that contain malware that does similar things to what we’ve seen in PCs for decades. Part of the reason for this is that while before people often were safer behind enterprise-grade firewalls, now they are mainly working from home and their home network protection not only isn’t as good, they appear to be using their smartphones for more things because of the inability of many companies to provide them with laptop computers. Suddenly products like Blackberry Protect for Mobile are getting a lot of attention as companies struggle with assuring their users aren’t exposing their companies to the increasing number of outside threats. This change suggests we should see moves by the major OEMs to promote unique security features, and I don’t see this increased focus on security decreasing any time soon.
phone in use longer or move down the market to conserve cash if they can’t put off replacing their phone. It is interesting to note that high-end phones may hold reasonably well because the wealthy traditionally haven’t been as impacted by events like this. Still, the middle and lower classes tend to get walloped. Part of the cause for these declines is a pullback on marketing by the OEMs to conserve cash, and this will undoubtedly happen across segments. But some OEMs may hold marketing and thus, assuming that marketing is effective, get a more significant portion of this reduced TAM (Total Available Market). This trend should open the door to potentially substantial share shifts between vendors and become a real test for Apple, which has reduced marketing over time and has, in the past, been able to weather these storms reasonably well. Now, this could be partially offset by the 5G rollout, but only if that rollout is aggressively marketed, and people see their current phones as obsolete. And substantial subsidies upfront could also significantly offset this downward trend.
When money is tight... people tend to try to make what they have last longer.
Wearables On the other hand, there appears to be increased interest in wearables, particularly if they can be used to improve the early identification of someone who is infected with the virus. Most wearables currently don’t do this well yet but expect that by year-end, this will be a new target for this class, and depending on how capable these new smartwatches are, this should dramatically increase demand for this class of device. Also, we should see an influx of alternative wearables like headsets that also monitor the health of the user. There is an apparent demand for wearables that monitor and can accurately report on health.
Smartphone sales decline When money is tight during a recession or a depression, people tend to try to make what they have last longer. This suggests a decline in phone sales, particularly in the mid-range of the market, because people will tend to either leave their
Rob Enderle is a principal analyst at the Enderle Group.
Wrapping up The economic downturn is having a significant impact on buying behavior. Expect a greater interest in security applications and wearables that monitor health, and reduced demand for new phones. z
29
030_SDT035.qxp_Layout 1 4/17/20 5:28 PM Page 30
30
SD Times
May 2020
www.sdtimes.com
Industry Watch BY DAVID RUBINSTEIN
COVID-19 has exposed lack of planning David Rubinstein is editor-in-chief of SD Times.
O
ver the years, we’ve written a lot about disaster planning and recovery, the need for backing up systems and business continuity. While many large organizations have their data in redundant locations — either their own data centers or cloud-provided regions around the world, smaller organizations have looked at disaster recovery in the same way they looked at their mother when she said to eat their vegetables or brush their teeth. They’ll do it when she’s looking, but the second she turns her head, the dog gets the broccoli. This is why many companies have been caught with their proverbial pants down during this pandemic. And, although many also have gone all-in for the cloud, there are other things to consider when it comes to remote work — things I wish I had thought of in advance of all this. As I head into the second week of working from home, I’ve learned some valuable lessons that I’d like to share, but may come too late for those of you now established at home. First, where you set up your workstation is critical. I have an office in the basement of my house that abuts my boiler room. Critical problem No. 1 — the cell service in my basement sucks. When I receive calls, I have to walk away from my computer and climb a flight of stairs to have a conversation. So, you’re probably thinking, if the WiFi is good, just use Slack or Zoom or Teams or Meet to have conversations. That leads to problem No. 2, which is something I can’t really do anything about now. Due to the adjacency of the boiler to my workspace, the oil burner is as likely as not to kick in during an interview, making hearing the other person really hard. Another problem with that is I do recordings for our “What the Dev?” podcast, and have had to pause the conversation for two minutes or more while the burner is on. (When SD Times was starting up 20 years ago, and our offices were next to a firehouse, I had a similar problem with sirens. Weird.) If you’re using a VPN to connect to your office, you might find horrible response times. The natural inclination is to contact the tech guys and blame latency on VPN overload. My tech guy ran a speed
There are other things to consider when it comes to remote work — things I wish I had thought of in advance of all this.
test on my computer and found inbound and outbound packets were being delivered very slowly. It’s not the VPN, he said, it’s your internet. He asked if I am the only person on it while connected to the office. I thought for a second, and realized I have two children at home who are streaming class sessions, and doing Zoom meetings of their own with friends and colleagues. In this time of novel coronavirus, you can’t take away internet use from the kids, or they will really have nothing to do. You could reach out to your ISP and upgrade your service for the duration, but that cost can quickly escalate. If you have to live with the service you have, try the best you can to perhaps limit the hours during the day that they can stream. Give them lunch time, and maybe an afternoon break around 3 or 3:30 for a half-hour or so. There literally is NOTHING as maddening as having to wait, and wait, for a process to complete because of a slow connection. Work you could finish in 15 minutes in your office now takes 45 minutes to an hour. Experts will tell you that when you work at home, you should try to stick closely to the schedule you’re on when you’re going to an office. That’s good in theory. After a week of not shaving, and putting on clothes twice, it’s clear that it’s simply too tempting NOT to stick closely to the schedule you’re on when you’re going to an office. There are simply too many distractions at home. It’s funny... When I’m in the office, I complain about all the distractions that keep me from doing my actual work. There are the phone and email interruptions, people in the office who need you at any second to help solve a problem. There’s the coffee maker and office snacks. All kinds of solicitors coming in from the local fire department, phone service providers, water suppliers, and more. I guess the best takeaway I have learned from working at home for a couple weeks is that you really need to be disciplined to do it effectively. You have to keep your head down and just grind. If your company’s plan is to return to an office when this passes, grinding is how we get through it. If, though, the company sees how much happier employees are working from home, and how much they can save on an office, there’s still time to avoid the pitfalls that have befallen me for not being prepared. z
Full Page Ads_SDT035.qxp_Layout 1 4/17/20 12:14 PM Page 31