Listed in: Technology
Listed in: Technology
Salesforce is looking at various work configurations across remote and in-office options in different ways. She shares, "In the past 12 months, we\'ve been thinking about what the future will look like. What do our employees want? What do our leaders want for different worker types?"
\\n\\nIn addition to the fully remote and in-office workers are flex workers who "come into office maybe one, two, three days a week to work with their Scrum teams, or maybe even one day, every other week. You come to an office to work together when it makes sense for you and your team for collaboration and other ways."
\\n\\nShe notes there\'s a lot to learn from workers like Greg, who has been working remotely for 12 years.
\\n\\nGreg notes, "It took me years to figure out how to work successfully from home and how to have home not encroach on work and work not encroach on home." After unsuccessfully working from the couch, he needed to get an office with a door. Greg stresses that remote work in the pandemic is not the same as remote work at other times. "One of my joys was going to a coffee shop, having a really good cup of coffee and sitting there without headphones on, just listening to people talk while I would write and just that background noise. And I really miss that. So I want to make sure that everybody who\'s been forced to go remote knows that the present is not a great example of remote work. It\'s a lot different, and it\'s a lot harder."
\\n\\nLisa and her team have been talking with other companies who are fully remote and stress that the experience of working fully remote during the pandemic "... isn\'t normal. We know we all want to see each other. We want to get back together at times where it makes sense." Part of this is focusing on "the things that we can do right now that we want to keep doing in the future when things start to open up."
\\n\\nGreg Nokes asserts that a remote-first work approach differs in organizations where remote work is an afterthought. He gives the example of a group of San Francisco employees sending a lunch invitation over a messaging platform, "...and then everyone in San Francisco signed off and when they signed back on, I\'m like, \\u2018What happened?\\u2019 They\'ll go, \\u2018Well, so-and-so said, where do we want to get lunch? And then we all talked about it in the coffee shop; we\'re all sitting in, and then we went to lunch together.\\u2019 And we\'re like, \\u2018that\'s not remote.\\u2019"
\\n\\nLisa Marshall shares the need for intentional inclusivity. "We all know how horrible it feels when you\'re in a meeting. And when you\'re a remote person, and others are in the room, and it\'s very hard sometimes to get a word in edgewise, it\'s difficult to hear all the common things."
\\n\\nHer team is working on organizational guidelines, including team agreements on how people want to work together. One senior leadership team has decided their weekly team meetings will be 100% remote because they found they communicate better when they\'re all online versus some co-located.
\\n\\nLisa believes the majority of the office will be flex in the future. "So we\'re looking at how do we want to configure our spaces to support the kinds of work people want to do in the office? What kind of different technologies can we use? What kind of seating arrangements around couches or different pods or other considerations for building in those spaces to be truly about collaboration versus only individual work?"
\\n\\nLisa\'s team is also focused on trying apps and tools to see what works and start rolling the tech out to other locations.
\\n\\nGreg Nokes shares, "The last year has been a tremendous inflection point. And it\'s given us the ability to re-examine what work is and how we get it done. And I think folks that are just going to go back to the way it was before are really missing out."
\\n\\nDev teams are already agile. Lisa asks how they can adapt to remote work in a way that "doesn\'t burn people out from staring at screens all the time?" She also believes that release planning will change in response to remote work by breaking it up into "smaller increments virtually to do your planning, whether it\'s two hours a day and having those chunks of time to work together."
\\n\\nFun is important, and recognizing that people can\'t work non-stop. But we\'re all pretty tired of Zoom happy hours. Salesforce recently had a paint party and magicians for parents with kids.
\\n\\nEqually important is protecting maker time, where developers need to be heads down to get things done without any meetings.
\\n\\nLisa stresses the importance of onboarding new hires. Part of this is about having fun and building relationships through hanging out virtually together, creating an opportunity for new hires to ask questions about who to go to. "And if you don\'t build that in, it\'s really hard to just accomplish that because your work is going to get prioritized based on the tasks that you have." Greg also commends the idea of cross-team get-togethers as an opportunity for diverse opinions.
' -->Listed in: Technology
According to Innocent, the absence of crash reports does not mean that software is performing well. Software can work - but not be optimal. Thus, Innocent takes a holistic view:
\\n\\n\\u201cI look at the size of my audience, and if it\'s something sizable, that gets a lot of traffic, for example, a shopping cart that gets a lot of traffic on a Black Friday. I would want to be in a comfort zone when I know that during the peak periods my application is still performing, so I tend to look at the end-user, how their experience looks like during very high peak periods. And from there I start working my way back to the technology that is supporting that application.\\u201d
\\n\\nRaygun really shines in monitoring the time spent in different functions and helping to improve the performance of highly hit endpoints. This includes performance telemetry of browser pages, the current application running, and server-side performance application monitoring. Raygun has lightweight SDKs or lightweight providers that can be injected into code. These provide a catch-all to deal with unhandled exceptions. They also encourage best practices for developers.
\\n\\nGreg asks how to track a user\'s journey through the application in order to see the endpoints being hit, and the user experience. A RAM tool can provide opt-in user information. In the case of Javascript, an SDK is integrated with code to create a session ID that follows the user through every single page that they visit. This internal ID can also be associated with crash reports.
\\n\\nOver time, Raygun can provide a complete picture of how the user session performed \\u201cfrom the point they visited your page, logged in, visited a couple of pages, and then left your application. The crash reports and the traces relating to that particular user are also tied up with that session on the Raygun side.\\u201d Innocent highlights a sampling strategy that reduces the noise of APM data.
\\n\\nRaygun also provides a birds-eye application view that provides aggregated stats on application performance: \\u201cFor the run product, you will have each page aggregated over time, regardless of how many users you\'ve had in a period of time. You want to look at the individual sessions. That information is aggregated and you\'re able to see, for example, your median, your P90, and P99.\\u201d
\\n\\nInnocent focuses on the P99 figure because \\u201cwhoever is in there has had a terrible time, and that forms the basis of my investigations. I want to know why there are so many sessions in that P99, and that P99 is probably a six or seven-second load time. I want to move that to a sub-three-second.\\u201d Innocent provides a definition of P99 for new customers undergoing the journey of performance optimization.
\\n\\nNext, Innocent asserts that decisions should be based on numbers and empirical evidence. He has found that the use of actionable data has enabled him to redesign applications and focus on the mission-critical command needed in real time.
\\n\\nInnocent concludes: \\u201cI think the life of a developer is an interesting one. We fit in everywhere situations permit, and we definitely take different routes to develop our careers. But ultimately what we should all be concerned about is the quality of the products that I produce. This definitely reflects on my capability as a software developer. What sets me apart from the next developer is not the number of cool techniques I can do with code, it\'s delivering a product that actually works and what better way of knowing what works when you actually measure things. Everybody should live by the philosophy of assuming nothing, measure everything. Everything and everything should be measured.\\u201d
\\n\\nListed in: Technology
The 5 WHYs
\\n\\nThe 5 WHYs root cause analysis is about truly getting to the bottom of a problem by asking \\u201cwhy\\u201d five levels deep. Using this method often uncovers an unexpected internal or process-related problem.
\\n\\nAccident investigation can represent both simple and complex systems. Robert explains, "Simple systems are like five dominoes that have a knock-on effort. By comparison, complex systems have a large number of heterogeneous pieces. And the interaction between the pieces is also quite complex. If you have N pieces, you could have N squared connections between them and an IT system."
\\n\\nHe further explains, "You can lose a server, but if you're properly configured to have retries, your next level upstream should be able to find a different service. That's a pretty complex interaction that you've set up to avoid an outage."
\\n\\nIn the case of a complex system, generally, there is not a single root cause for the failure. Instead, it's a combination of emergent properties that manifest themselves as the result of various system components working together, not as a property of any individual component.
\\n\\nAn example of this is the worst airline disaster in history. Two 747 planes were flying to Gran Canaria airport. However, the airport was closed due to an exploded bomb, and the planes were rerouted to Tenerife. The runway in Tenerife was unaccustomed to handling 747s. Inadequate radars and fog compounded a combination of human errors such as misheard commands. Two planes tried to take off at the same time and collided with each other in the air.
\\n\\nRobert talks about Dr. Cook, who wrote about the dual role of operators. \\n"The dual role is the need to preserve the operation of the system and the health of the business. Everything an operator does is with those two objectives in mind." They must take calculated risks to preserve outputs, but this is rarely recognized or complemented.
\\n\\nAnother component of complex systems is that they are in a perpetual state of partially broken. You don't necessarily discover this until an outage occurs. Only through the post-mortem process do you realize there was a failure. Humans are imperfect beings and are naturally prone to making errors. And when we are given responsibilities, there is always the chance for error.
\\n\\nWhat's a more useful way of thinking about the causes of failures in a complex system?
\\n\\nRobert gives the example of a tree structure or AC graph showing one node at the edge, representing the outage or incident.
\\n\\nIf you step back one layer, you might not ask what is the cause, but rather what were contributing causes? In this manner, you might find multiple contributing factors that interconnect as more nodes grow. With this understanding, you can then look at the system and say, "Well, where are the things that we want to fix?" \\nIt\\u2019s important to remember that if you find 15 contributing factors, you are not obligated to fix all 15; only three or four of them may be important. Furthermore, it may not be cost-effective to fix everything.
\\n\\nOne approach is to take all of the identified contributing factors, rank them by some combination of their impact and costs, then decide which are the most important.
\\n\\nWhat is some advice for people who want to stop thinking about their system in terms of simple systems and start thinking about them in terms of complex systems?
\\n\\nRobert Blumen suggests understanding that you may have a cognitive bias toward focusing on the portions of the system that influenced decision-making.
\\n\\nWhat was the context that that person was facing at the time?\\nDid they have enough information to make a good decision? \\nAre we putting people in impossible situations where they don't have the right information?\\nWas there adequate monitoring? If this was a known problem, was there a runbook?
\\nWhat are ways to improve the human environment so that the operator can make better decisions if the same set of factors occurs again?
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Inspired by the Weirdos project, the &yet team envisioned ways to help Heroku developers connect \\u2014 and the Wicked CoolKit was born. The kit harkens back to the earlier days of the internet, when simple, fun web widgets and tools helped people connect without all the noise of today\\u2019s mega social platforms. The initial version of the kit offers a new take on a few nostalgic web widgets, including:
\\n\\nDeveloper trading cards \\u2014 Echoing the retro joy of collecting baseball cards or playing card-based games, this widget allows developers to create their own profile card. They can specify their personal bio, coding skills, niche interests, \\u201cfeats of strength,\\u201d and more, and share it within an elegantly designed UI.
Themed stickers \\u2014 A perennial favorite, stickers are a colorful way to identify interests, such as baking or woodworking. Users can download stickers to use as they wish, or add a sticker to their trading card that links to other people\\u2019s cards that have the same sticker.
Webring \\u2014 Years ago, fans and friends would use a webring to share a collection of websites dedicated to a specific topic. The kit brings the old school webring into the modern context and allows people to easily share and access web resources.
Hit counter \\u2014 Everyone wants to know how many visitors came to their site. The old-fashioned hit counter is a fun way to track and display page visits. The higher the number, the more likely people will want to engage with the site (and the developer behind it).
The Wicked CoolKit is fully open source and available to use.
\\n\\nListed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology
Listed in: Technology