POPULARITY
The United Africans Transformation party is taking the Department of Basic Education to court over what it calls a failure to eliminate deadly pit toilets in schools. The party says despite promises and deadlines, thousands of learners still face daily risks. UAT demands urgent action, saying enough is enough children deserve dignity and safety, not bureaucratic excuses. The party says they are taking legal action to hold the government accountable. For more on this Elvis Presslin spoke to United Africans Transformation party leader, Dr. Bantu Mahlatsi
In this episode of the Building Better Developers podcast, Rob Broadhead and Michael Meloche dive deep into a critical—but often misunderstood—element of project management: setting deadlines. This episode goes beyond the basics of timelines and introduces the psychology, strategy, and communication needed to make deadlines effective, not stressful. Why Setting Deadlines Matters for Business Projects Deadlines define a project's rhythm. As Rob puts it, “the deadline is the finish line.” It's not just about when code is complete—it's about when the product is ready for delivery, after testing, packaging, training, and documentation. Deadlines force prioritization. Without them, projects risk becoming endless cycles of scope creep and perfectionism. But setting arbitrary or unrealistic deadlines can just as easily derail progress.
Ryan and Ben go over the new and updated UAT subclasses, give their first impressions on the 2024 Monster Manual, and discuss ongoing comfortability in your campaign. Community Pages: Forgotten Realms Subclass video; Forgotten Realms Subclass UAT; Dungeon Master Essentials miniatures and scenery humble bundle. Socials: Discord; Bluesky; Ryan's Bluesky; Ben's Bluesky
Save Family Farming's Executive Director, Ben Tindall says their Urban Advisory Team helps them decide what's agricultural topics are important and who should hear them.
Save Family Farming's Executive Director, Ben Tindall says their Urban Advisory Team helps them decide what's agricultural topics are important and who should hear them.
Summary: In this episode, James Gurd and Paul Rogers discuss the evolving landscape of technology change in ecommerce, focusing on the shift from tactical solutions to strategic decision-making. They explore the importance of ecosystems in technology selection, the changing roles in project management, and the critical need for customer leads to oversee ecommerce projects. The conversation also highlights the significance of understanding commercial considerations, managing risks, and ensuring thorough UAT processes to achieve successful technology migrations. Key takeaways: The market has shifted towards strategic decision-making in technology change. Ecosystems are now a critical consideration in technology selection. Project management roles are evolving to include more strategic oversight. There is a need for independent due diligence in technology selection. Technical discovery should not be rushed; it requires thorough exploration. Customer leads are essential for bridging the gap between agencies and clients. Understanding the timing of license fees is crucial for budgeting. UAT processes need to be well-managed to avoid surprises Agencies have become more capable in handling complex projects Contingency planning is vital for successful project execution.
¡Vótame en los Premios iVoox 2024! Jack Bauer nos interroga a todos en este especial sobre la serie de acción que revolucionó la televisión en su día y que, temporada tras temporada, subió el listón hasta límites difíciles de superar: 24. En este primer especial de dos sobre 24, los agentes de campo Rafa Pajis, Alvaro Gekko, Manuel Callejo y Antonio Runa, analizarán las primeras cinco temporadas de la saga. No seas un topo de la UAT y escucha el monográfico. Escucha el episodio completo en la app de iVoox, o descubre todo el catálogo de iVoox Originals
¡Vótame en los Premios iVoox 2024! Jack Bauer vuelve con este segundo y último monográfico de la serie 24. Rafa Pajis, Alvaro Gekko, Manuel Callejo y Antonio Runa serán los agentes de campo de la UAT encargados de la misión de analizar la sexta temporada hasta la final, Vive Otro Día, incluyendo alguna que otra película, videojuegos, cómics y un breve pero intenso vistazo a la lista de chistes con Jack Bauer como protagonista. Escucha el único podcast que transcurre en tiempo real. Escucha LODE, La Órbita de Endor. Escucha el episodio completo en la app de iVoox, o descubre todo el catálogo de iVoox Originals
[Referências do Episódio] Encrypted Symphony: Infiltrating the Cicada3301 Ransomware-as-a-Service Group - https://www.group-ib.com/blog/cicada3301/ New macOS vulnerability, “HM Surf”, could lead to unauthorized data access - https://www.microsoft.com/en-us/security/blog/2024/10/17/new-macos-vulnerability-hm-surf-could-lead-to-unauthorized-data-access/ UAT-5647 targets Ukrainian and Polish entities with RomCom malware variants - https://blog.talosintelligence.com/uat-5647-romcom/ Brazil's Polícia Federal arrested the notorious hacker USDoD - https://securityaffairs.com/169914/cyber-crime/brazils-policia-federal-arrested-hacker-usdod.html Hacker que roubou 3 bilhões de dados dos EUA foi descoberto e é brasileiro - https://www.tecmundo.com.br/seguranca/288570-hacker-roubou-3-bilhoes-dados-eua-descoberto-brasileiro.htm?ab=true& Roteiro e apresentação: Carlos Cabral e Bianca Oliveira Edição de áudio: Paulo Arruzzo Narração de encerramento: Bianca Garcia
At least six political parties have written to Chief Justice Raymond Zondo asking him to appoint a retired judge to facilitate talks on the formation of a Government of National Unity. The UDM, ACDP, ATM, PAC, UAT and BOSA say the 18 political parties that secured one or more seats in the National Assembly should be allowed to decide the make-up of government after no party garnered enough votes to constitute government on its own. Bongiwe Zwane spoke to UDM leader Bantu Holomisa
In this episode of Actualizing Success, Actualize Consulting's Partner Matt Seu, Director John Pomaranski, and Capital Markets/Mortgage Expert Mark Hanson, discuss the importance of ESG (Environmental, Social, and Governance) in the mortgage and securities market. Our experts delve into the challenges and growth opportunities of implementing ESG principles in bond issuance, strategies and processes that increase affordability and sustainability in mortgage lending, and the importance of continued learning in defining ESG standards to measure social impact. Join us for an engaging conversation about the evolving landscape of ESG in the mortgage industry and the exciting progress in ESG development.Listen to learn more about: Understanding ESG: legal aspects, different avenues, and relevance in the mortgage industry Challenges and opportunities of implementing ESG principles in bond issuance and valuation Impact of politics and privacy concerns, particularly in states with oil or gas-related economies Potential for new technologies and building processes to improve sustainability in the housing industry The crucial role of accurate data to avoid "greenwashing" and stakeholder collaboration in advancing ESG initiatives, including the MISMO community of practice and upcoming projectsAbout Matt Seu Matt is a Partner at Actualize Consulting, managing the Mortgage & Fixed Income practice. With three decades of experience in the mortgage industry, Matt is a wealth of information and a true thought leader committed to moving the industry forward through digital transformation and standardizing how the mortgage industry communicates. Before his time at Actualize, he served as a Vice President for Freddie Mac, focusing on large-scale business and technology change efforts. Matt is a two-time winner of MISMO's prestigious Outstanding Contribution Award and the 2023 Industry Titans Award. Email: mseu@actualizeconsulting.com About John Pomaranski: John is a Director at Actualize Consulting with over 19 years of experience. John's expertise includes project management, business requirements, and UAT for accounting system implementations. He specializes in financial system implementations, mortgage loan accounting and communication, and software development life cycle standards. He is the Facilitator of MISMO's ESG Community of Practice. Email: jpomaranski@actualizeconsulting.com About Mark Hanson: Mark spent over 37 years in the capital markets, primarily the mortgage-backed securities market. Over the last 12 years, Mark served as Senior Vice President of Securitization for Freddie Mac, where he led the development and implementation of the $4 trillion UMBS Single Security, joining the Freddie Mac and Fannie Mae MBS markets. Over the last 3 years Mark stood-up and advised Freddie Mac's Corporate Sustainability Office in addition to his securitization responsibilities. Thanks for listening to this episode of the Actualizing Success Podcast! We hope you enjoyed the discussion and come back for more. In the meantime, don't forget to rate this episode and leave a review to let us know how you like it. Website: www.actualizeconsulting.com If you have any questions or comments, we'd love to hear from you. You can contact us at podcast@actualizeconsulting.com.
Learn more about Michael Wenderoth, Executive Coach: www.changwenderoth.comSHOW NOTES:Create powerful resources to elevate others, your causes – and yourself. In this episode of 97% Effective, Michael Wenderoth shares how three guests created resources to power their missions and themselves – and the critical lessons you can learn from them. We look at venture capitalist Leesa Soulodre, General Partner at R3i Capital, on the communities she has created to level the playing field for underrepresented global entrepreneurs; Joy Chen, CEO of the Multicultural Leadership Institute (MLI), on how “UAT” has benefited others and taken her to the top of three industries without ever applying for those jobs; and Jewel Love, Founder of Executive Black Men, who created a powerful professional network to help Black men crack the code in corporate America. You'll leave this episode inspired. What powerful resources will you create?How most people give up their powerCreating resources to build power and serve multiple goalsGuest #1: Leesa Soulodre, General Parter at R3i Capital, on the power of creating communityWays that communities serve us: co-creation, belonging and making us smarterCreate resources that provide unique value to othersGuest #2: Joy Chen, CEO of the Multicultural Leadership Insitute (MLI), on the power of UAF (Useful Amazing Free)How a blog post catapulted her careerPowerful resources get you invitedWork at intersections that matter to become the “go to”Guest #3: Jewel Edward Love, CEO of Black Executive Men, on the power of creating a vetted networkPowerful resources and platforms grow exponentially in value over timeLessons on how to create powerful resourcesExamples of resources created by Michael's clients BIO AND LINKS:Michael Wenderoth is an Executive Coach that helps executives re-examine their assumptions about power, politics, and authenticity to get promoted, become more effective at work, and break glass ceilings holding them back. Having served 20 years in senior roles with companies across the globe, and then 7 years as a professional coach, he has helped accelerated the careers of clients from diverse industries, backgrounds, and levels of seniority, helping them get ahead – without having to sell their souls in the process. Michael is the award-winning author of Get Promoted, host of the 97% Effective career acceleration podcast, and a frequent speaker and media contributor on career advancement, leadership and navigating power and politics. His work has been featured in Harvard Business Review, Forbes, Stanford Business School Executive Education and IE Business School, where he collaborates with renowned professors, coaches, executives and experts. Michael holds an MBA from Stanford and trained as an executive coach at Columbia University (3CP). Michael on LinkedIn: https://www.linkedin.com/in/michaelchangwenderoth/Episode #45 - Leesa Soulodre, Founder and General Partner at R3i Capital: Community & The Working Mother Advantage: The Rise of Women in VC - https://redcircle.com/shows/86fcd90d-083e-4af2-9bc8-6d52fb981ae1/ep/d449d27e-ea2b-4bad-b28f-5d43fa5586ceEpisode #40 - Joy Chen, CEO at the Multicultural Leadership Institute: How "UAF" Can Increase Your Influence and Shatter Glass Ceilings - https://redcircle.com/shows/86fcd90d-083e-4af2-9bc8-6d52fb981ae1/ep/226d8209-d2db-4abb-b5a2-a1662454f725Episode #27 - Jewel Edward Love, Jr, Founder at Black Executive Men: Cracking the Code for Black Men in Corporate America - https://redcircle.com/shows/86fcd90d-083e-4af2-9bc8-6d52fb981ae1/ep/1dd24514-0311-4d09-9caa-4c3a819178ccMichael's Book, Get Promoted: https://changwenderoth.com/#tve-jump-180481ecea3Michael on X/Twitter: https://twitter.com/mcwenderothMichael on Instagram: https://www.instagram.com/wenderoth.michael/NEW: 97% Effective, now on Youtube! https://tinyurl.com/bdz53mc5NEW: Get Promoted, now on Audiobook: https://tinyurl.com/mwf2s28yAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacy
Renuncia el secretario de administración de la UAT por acoso Vecinos de Ecatepec bloquean la México-Pachuca por falta de agua Las iglesias pueden alejar a los jóvenes de la violencia: Sheinbaum
【00941】全台首檔鎖定半導體上游設備與材料廠的ETF,2/26稱王募集! 半導體不是只有護國神山,想投資真正的隱形英雄,力爭「上游」就對了!中信上游半導體(00941),帶你與科技王者中的王者同行:https://bit.ly/3Umqe2r ----以上訊息由 SoundOn 動態廣告贊助商提供---- ◎今日主題:Will教練的新菜單/UAT的居家體育課 ◎今日來賓:健身教練鄭鈺咨Will 運動清單:青春健身教室開課了! 今天Will教練帶來新菜單!:UAT的居家體育課 Will教練今天要帶大家繼續來運動! UAT訓練計畫 UAT介紹-目標設定 練就更好movebetter10鐘 練就更強move strone35 練就更好move鐘 1.站姿腿前側 4組 1.掌稱彈力帶穩定4 1.高跪姿腿前側+側彎3 2.站姿腿後側 2.橋式彈力帶開合 40秒休20秒 2.坐姿屈後側 3.站姿外旋 4組 3.彈力帶划船 40秒休20秒 3.天鵝式 左右各30秒 左右各30秒 4.手爬式 4組 4.深蹲(過頂舉手) 40秒休20秒 4.跪趴式 左右各30秒 5.跑者轉體伸展 4組 5.雙人勾腿捲腹 40秒休20秒 5.側躺胸旋轉 左右各30秒 6.躺臥腳踏車側腹 40秒休20秒 4組 練就更快movee 1.垂直小跳15休3 2.左右三步跳15休5秒3組 3.側向單腳跳15秒休5秒3組 4.小碎步跑步15秒休5秒3組 練就更久movelonger鐘 1.快腳in&out30休3 2.深蹲跳 30秒休30秒2組 教練IG:Ironpowerwill ▶朱衛茵粉專:https://reurl.cc/OG73jy ▶歡迎下載飛碟新 APP IOS:https://reurl.cc/3jYQMV Android:https://reurl.cc/5GpNbR ▶網路線上收聽(飛碟官網右下角直接按play) http://www.uforadio.com.tw/ ▶ Podcast SoundOn : https://bit.ly/30Ia8Ti Apple Podcasts : https://apple.co/3jFpP6x Spotify : https://spoti.fi/2CPzneD Google 播客:https://bit.ly/3gCTb3G KKBOX:https://reurl.cc/MZR0K4 ♫ 空中的夢想家 就愛電你UFO ♫ ‼️大臺北地區:FM92.1 ‼️竹苗、花東地區:FM91.3 ‼️中彰投、宜蘭地區:FM89.9 ‼️雲嘉地區:FM90.5 ‼️高屏地區:FM103.9 ‼️澎湖地區:FM89.7 本次飛碟小子片頭 影片製作:“邱士軒先生” 影片配樂:“BLUCOLh”創作歌曲『Bang Bang』
Im zweiten Teil dieser Doppelfolge geht es um Überwachungsstandards, die Daten senden ohne abgefragt zu werden. Rui Pinheiro (GdF) und Moritz Bürger (VC) erklären, welche Vor- und Nachteile ADS-B, UAT sowie FLARM haben und wo sie eingesetzt werden. Außerdem fragt Michael Kuppe (GdF) was es mit Multilateration auf sich hat, einer genaueren Möglichkeit zur Positionsbestimmung auf Flugsicherungsseite. Wir wünschen euch alles Gute für das neue Jahr, freuen uns wenn ihr weiterhin rein hört und nehmen jegliche Rückmeldung sowie Themenvorschläge jederzeit gerne auf: podcast@readyoufive.de.
While working with a customer recently, they mentioned that they have certain standards for their objects. They require a PK, and it's the name of the table with _PK added. They also have some standards, like CustomerName vs. CustomerNames for various data items. In fact, they have enough that they built a tool to scan their database code to ensure that changes to the QA and UAT environments adhere to these modeling standards. I wonder how many organizations have formal standards. While I've often tried to set some naming guidelines, I often haven't seen anything (or created anything) formal enough to build a tool around. I would like to, and I think it's a good idea, but it's often something that isn't handled in advance. Read the rest of Having Data Modeling Standards
Software not only has to work as it was designed, it has to be designed so it works as users want it to. User acceptance testing is that critical part of software development that ensures a solution (or an update or addition to an application) becomes a powerful tool for the end-users: functional, easy-to-use, and (hopefully) bug-free.Our guests today on the Tech Means Business podcast are Original Software, a company that makes market-leading software testing solutions, and NFI, a supplier that specializes in providing powerful software to logistics organizations worldwide.With Jenny Wilson, VP of Automation Support at NFI, and Colin Armitage, CEO of Original Software, we talk about automation, building test libraries, picking the right user testers, and some of the intricacies of UAT - user acceptance testing.Although the presence of cloud computing platforms suggests that user testing is somehow standardized, the truth is that uses of any piece of software are so different, every change, every feature, and every application needs to be tested in the right way by the right people - and at a resource cost that won't alarm the Finance Department.You can find out more about Original Software's test suites here:https://originalsoftware.com/NFI, suppliers of technology to supply chain and logistics companies, is here:https://www.nfiindustries.com/Colin Armitage is on LinkedIn:https://www.linkedin.com/in/colinarmitage/Jenny Wilson:https://www.linkedin.com/in/jenny-wilson-25842a173/And Joe Green (v2.13rc4) is here:https://www.linkedin.com/in/josephedwardgreen/
Ryan and Ben summarize the new UAT 7 and 8 playtests and talk about a player character changing classes. Links: Playtest 7; Playtest 7 summary; Playtest 8; Playtest 8 summary; Introducing maps video; Maps on D&D Beyond; Claim Lightning Keep; How to build glitch characters in Planescape; Claim Lost Mine of Phandelver.
The Software Process and Measurement Cast 774 is a re-release of SPaMCAST 436. We are on our annual holiday and will be back with new programs on October 22nd. For the next four weeks, we will feature shows from our archives. Today SPaMCAST 436 - Incrementalism, UAT and Agile, and Systems Thinking was released originally on April 3, 2017. I hope you will enjoy today's show! The original introduction - The Software Process and Measurement Cast 436 features our essay titled, , in which we answer the question of whether the state and culture of the organization or team, can have a large impact on whether a Big Bang approach or an incremental approach makes sense to change. Our second column is from Jeremy Berriault. Jeremy discusses user acceptance testing and Agile. There are lots of different ways to accomplish user acceptance testing in an Agile environment. The only wrong way is not to do UAT in Agile. Jeremy can be found at https://www.berriaultandassociates.com/ Jon M Quigley brings his column, The Alpha and Omega of Product Development, to the Cast. This week Jon puts all the pieces together and discusses systems thinking. One of the places you can find Jon is at .
The Software Process and Measurement Cast 773 will feature our essay on why as professionals we should strive to grow a little every day. I overheard a team lead complaining that their team did not need to do a retrospective, they were “darn near perfect.” The inference was that their time would be better spent doing rather than reflecting and thinking. Fixed mindsets (Review our re-read of Mindsets by Carol Dweck) are foreign to the philosophy of agile and quality. The comment hurt my heart. We will also have a visit from Jon M. Quigley who brings his Alpha and Omega of Product Development column to the podcast! Jon and I use the learning to play a new bass as a metaphor for learning technology. Re-Read Saturday News This week begin a new book on Re-read Saturday, this week! Ten years ago we started our Re-read Saturday journey. The first installment featured . We have read and re-read a lot of books. The book we begin our next ten years is L. David Marquet's, . This is not Mr. Marquet's first time in our re-read queue. In 2018 we re-read Turn the Ship Around! I think that book is universally seen as a game changer. Here is the kicker, I think Leadership is Language is more important and useful on a day-to-day basis. I can't tell how many times I have used ideas from the book in the short time I have owned it. Buy a copy of and begin reading along. Week 1: Logistics, Foreword, Introduction - Next SPaMCAST The Software Process and Measurement Cast 774 will feature a re-release of SPaMCAST 436. We are on our annual holiday and will be back with new programs on October 22nd. For the next four weeks, we will feature shows from our archives. Today SPaMCAST 436 - Incrementalism, UAT and Agile, Systems Thinking from April 3, 2017. I hope you will enjoy the show!
Because of how valuable your data is, protecting it against theft and unauthorized use is perhaps your biggest challenge. Databases need more security than the bare minimum. In this episode, Lois Houston and Nikita Abraham, along with Greg Genovese, talk about how Oracle's data-driven security features work together to create a maximum security architecture. Oracle MyLearn: https://mylearn.oracle.com/ Oracle University Learning Community: https://education.oracle.com/ou-community LinkedIn: https://www.linkedin.com/showcase/oracle-university/ Twitter: https://twitter.com/Oracle_Edu Special thanks to Arijit Ghosh, David Wright, Ranbir Singh, and the OU Studio Team for helping us create this episode. --------------------------------------------------------- Episode Transcript: 00;00;00;00 - 00;00;38;18 Welcome to the Oracle University Podcast, the first stop on your cloud journey. During this series of informative podcasts, we'll bring you foundational training on the most popular Oracle technologies. Let's get started. Hello and welcome to the Oracle University Podcast. I'm Lois Houston, Director of Product Innovation and Go to Market Programs with Oracle University, and with me is Nikita Abraham, Principal Technical Editor. 00;00;38;20 - 00;01;01;20 Hello again! In today's episode, we're going to talk with Oracle Database Specialist Greg Genovese about Oracle's Maximum Security Architecture. Hi, Greg. Thanks for joining us today. We have so much sensitive information in our databases so I get why a data thief would try to attack and steal data. But how do they actually do it? Databases don't just operate in a vacuum. 00;01;01;23 - 00;01;26;01 A database is accessed often through a firewall by users and applications. Speaking of those firewalls, if an attacker has managed to penetrate into the internal network, they may choose to go after data traveling over that network. This type of attack is much less likely to be detected than attempts to access the database directly. Another popular attack is against the underlying data files, database backups, or database exports. 00;01;26;04 - 00;01;49;19 Here again, if the attacker is successful, they may be able to steal the entire database without even having to try to log in. Oh my goodness! That sounds terrible. If none of those options work, perhaps the database has an unpatched vulnerability. In many cases, there are automated attack toolkits that help exploit these vulnerabilities. 00;01;49;21 - 00;02;18;29 And let's not forget those non-production copies of the database. What's a non-production copy of a database? In many systems, the test and development instances are effectively just clones of production and are hardly ever monitored as closely as production databases. In most cases, there are copies of database for test, development, stage, and user acceptance testing or UAT. Databases persist data into a storage medium and run on servers with operating systems and peripherals. 00;02;19;02 - 00;02;49;16 All of these are managed by administrators. And administrators are a hacker's favorite point of attack. If they can compromise an admin account, they are in with elevated privileges and in most cases zero controls over what they can do. If the attackers can't compromise an admin account, they can often compromise an end user account. Lower privileges, but often still with access to the data or able to be used as a stepping stone to get that access. 00;02;49;19 - 00;03;20;20 Also, applications make an attractive target too. They are frequently more exposed than a database or database server and often even available from outside of the corporate firewall. That's a lot, Greg. There are just so many points of attack. So then how do I keep my database safe? Securing an Oracle Database is much like securing any other system. You are protecting your data, which could be intellectual property, financial data, personal data about your customers or your staff, or most likely a combination of all three of these things. 00;03;20;22 - 00;03;44;06 Because data is valuable, you need to guard against its theft and misuse. This data is used for business purposes and that means users and applications connect to the database and you need to safeguard that data with security controls that restrict access to the data according to your corporate policy. To do this, you'll need to do three things: assess, detect, and prevent. 00;03;44;06 - 00;04;17;01 Assess, detect, prevent. Okay. But how do you assess and what are you actually assessing? Assess the system to determine its current state and develop a remediation plan. Is the system configured properly? Are patches applied regularly? How are user privileges managed? And are you enforcing these privileges? What types and how much sensitive data is the system holding? Your existing investment in the Oracle Database gives you the features and utilities you need to assess your database and identify areas for improvement and risk reduction. 00;04;17;01 - 00;04;53;21 And how do you detect and prevent? Detect attempts to access data outside of policy and identify anomalies in data access. Almost all database activity is repetitive, so anomalies are frequently a leading-edge indicator of attempted data theft. Prevent access to the data that doesn't go through the database control mechanisms, sniffing traffic over the network, reading the underlying data storage layer, or misuse of database exports and backups. Block inappropriate access to data through control mechanisms that consider the context of the access, not just the identity of the account accessing the data. 00;04;53;21 - 00;05;10;23 Oracle provides industry-leading capabilities for each of these security control objectives. Our team can help you identify the right technical enforcement for virtually any control objective. 00;05;10;25 - 00;05;40;14 Have you been wanting to earn an Oracle certification? Well, there's never been a better time than the present. Now through August 31st, you can choose from over 20 different Oracle certifications and take up to four exams for free, including foundation, associate, and professional level Oracle Cloud Infrastructure certifications. You can also learn and get certified on Oracle Cloud Applications Business Processes for Human Capital Management, Financials, Customer Experience, Supply Chain, and Procurement. 00;05;40;17 - 00;06;07;09 And did I mention this was all free? Oracle Cloud training and certifications empower you to explore limitless possibilities in the cloud landscape. Gain the knowledge and skills needed to design, deploy, secure, and operate modern cloud infrastructure and applications with confidence. You can go to education.oracle.com for more details. What are you waiting for? Get certified today. 00;06;07;12 - 00;06;34;19 Welcome back! Greg, I'm sure every database has a basic level of security, right? There are some things we expect to always be done. What we call the baseline security posture. Establishing the baseline security posture involves several types of different controls. We'll assess the system state, prevent unauthorized activity, and detect activity that is relevant to our security controls. Our first control is assessing the database configuration. 00;06;34;22 - 00;06;59;08 We want to ensure that we haven't made configuration decisions that introduce unnecessary risk into the environment. We'll also check to make sure that the database is current on all security patches. And how do we check this? For this, we have two tools available to us: Database Security Assessment tool or DBSAT and Data Safe. DBSAT is a free utility available for download via My Oracle Support. 00;06;59;08 - 00;07;23;28 Data Safe is a cloud service that is included at no additional cost with Oracle Cloud Database Services. Data Safe is also available for on-prem databases, but there is an additional cost for those. Users and applications connect to the database. We want to ensure that if they are connecting with username and password, we're practicing good password discipline. We also want to consider the use of strong authentication. 00;07;24;00 - 00;07;50;10 Your Oracle database supports Kerberos, TKI certificate, and multi-factor authentication. We'll want to make sure that those users are really able to connect to the database, identifying dormant accounts and checking to be sure we haven't granted privileges that don't make sense in our environment. Here again, DBSAT and Data Safe help by pointing out the use of such things like select any table privileges or grants of the DBA roles. 00;07;50;12 - 00;08;15;06 We should also check that database accounts are actually using the privileges we grant. Is there any way to monitor the privileges we grant? Privilege analysis monitors privilege usage, and can report on privileges that an account has which are not being used. We can then remove those unnecessary privileges, reducing the attack surface presented by those users. Note that privilege analysis is only available for Oracle Enterprise Edition Database. 00;08;15;09 - 00;08;47;03 It is not present in Oracle Standard Edition. Users are inserting and updating data and also retrieving data. That data is traveling over the network, and in most cases, we want you to encrypt the data to reduce the chances that an attacker can simply sniff the network to steal data. And are there different types of encryption? The Oracle database supports two different types of network encryption, native network encryption, which is certificate lists and usually requiring zero change to the applications to implement. And industry standard certificate-based TLS. 00;08;47;05 - 00;09;12;12 Depending on how many users connect to our database and how many databases we have, we may want to implement centralized authentication. Your Oracle database supports two types of centralized user management. One feature, Enterprise User Security, is available on all currently-supported database versions and allows the Oracle database to consult an Oracle LDAP directory for users and role membership. 00;09;12;14 - 00;09;46;13 The other feature, centrally managed users, was new in Oracle 18c and allows the Oracle database to connect to Microsoft Active Directory for users and role membership. Is there a way for us to know what users are doing? For this, we use database auditing. The Oracle database offers a comprehensive auditing capability, and you will usually want to audit database connections, especially failed logins, as well as data control language, including creation of users and privilege grants, and data definition language like creation of stored procedures, database links, and more. 00;09;46;16 - 00;10;16;06 All of these are fairly rare in most databases, so this level of auditing presents minimal performance impact. Finally, we want to make sure that we know what sensitive data resides in the database. Is the baseline security posture appropriate for the level of risk presented by the data? Or should we do more to protect our data? Here we return to DBSAT or Data Safe, which allow us to scan the database for sensitive data reporting on what types of data are found and how much of it there is. 00;10;16;06 - 00;10;41;24 All of the controls we've talked about so far are baseline. These are things we think any database should do and everything we've discussed so far can be done without additional costs, products, or options. But what if I want more than normal baseline security? Maybe my database contains personal information, financial information, intellectual property, or something else that requires more than just basic security. 00;10;41;25 - 00;11;08;13 Since that data is eventually being persisted on disk, in backups, and in exports, we'll want to protect it from attack there. Here is where transparent data encryption comes into play. If we encrypt data, that means there is an encryption key that we need to protect and distribute securely. For this, we can use Oracle Key Vault. Remember, those administrators with privileges and access to special data? We'll want to protect against them as well. 00;11;08;15 - 00;11;40;17 And for this, we'll use Database Vault. Could you tell us more about Database Vault? Database Vault lets us separate the duties of database administration from access to the data within the database. Database Vault also protects against a compromised application server, locking down application accounts so they can only access data from within the normal context of the application. When data is accessed from outside of the application, we may want to provide additional protection for high value data columns like credit card numbers or taxpayer IDs. 00;11;40;19 - 00;12;07;01 For this, we can use data redaction to hide sensitive data on the fly as it leaves the database. And for those non-production clones, the database we talked about, we'll simply remove sensitive data from them, replacing it with realistic looking "safe data" that does not present a security risk, but still allows application development and testing to continue. We can either use Data Safe or Enterprise Manager's data masking and subsetting pack. 00;12;07;03 - 00;12;30;02 We seem to have done a lot to protect the database, but is there a way to detect attempts to break in and steal data? For that, we'll configure auditing within the database and feed audit events to a centralized audit vault for analysis, reporting, and even alert generation. We'll also use database firewall to examine incoming connections and SQL statements for anomalies and violation of policy. 00;12;30;04 - 00;13;00;15 And if we choose to, we can go one step further and actually block out policy activity with the firewall. And of course, events from the database firewall flow into the audit vault server for analysis, reporting and again, alert generation. We've talked about assessing security, detecting inappropriate activity, and preventing unauthorized access to data. But there is a fourth type of database security control that is unique to databases called database-driven security. 00;13;00;17 - 00;13;27;15 These controls are used to provide fine-grained access control at the data row or column levels. Oracle database provides a variety of data-driven security features, including Real Application Security and Label Security. All these controls, working together, create the maximum security architecture or MSA. Not every database requires the full MSA, but many databases require something much more than just standard baseline security protocols. 00;13;27;17 - 00;13;52;13 Thanks, Greg, for joining us today. To learn more about Oracle's Maximum Security Architecture, visit mylearn.oracle.com and head over to the Oracle Cloud Data Management Foundations Workshop. That brings us to the end of this episode. Join us next week for a discussion on Oracle Cloud Infrastructure's Maximum Availability Architecture. Until then, this is Lois Houston and Nikita Abraham signing off. 00;13;52;15 - 00;16;33;21 That's all for this episode of the Oracle University Podcast. If you enjoyed listening, please click Subscribe to get all the latest episodes. We'd also love it if you would take a moment to rate and review us on your podcast app. See you again on the next episode of the Oracle University Podcast.
In this show, we answer the most frequently asked questions that market participants need to know about EMIR Refit, our reporting dashboard and UAT testing environment - plua the changes they'll need to make to their own data capture and workflow to meet their new reporting obligations.Join co-hosts Andrew Keith Walker and Nick Bruce, with special guests Alvaro Gascon and Victor Rodriguez Garcia from our product management team in Madrid, who have compiled the most asked questions from our Regis-TR webinars and client events, with in-depth technical insights into the new features of our reporting system and how to get the most out of it.
Episode 30 | Customer Learnings on Software Implementation ProjectsThe Big Themes:Oracle: As it relates to Oracle, customers have expressed on ravenintel.com that a particular challenge was around user acceptance testing (UAT). Specifically, one customer noted to "ensure ample time is built in for UAT and assume there will be errors and fixes that need to be done." Another customer noted that "it's essential that all key stakeholders at the operations level are included."SAP: A top challenge shared by customers who have implemented SAP software is to "challenge assumptions, and do not rely solely on your partner or vendors solution...don't assume the partner always has the right answer." It's critical that if customers don't feel confident in the assumptions being presented by the partner, they challenge it.Workday: Cusotmers have expressed that relating to implementing Workday software, a seasoned project manager is mandatory. From a project perspective, it is critical to have a system integrator (SI) involved who has "earned their stripes" with this specific implementation. Additionally, the leading SI/project manager should have the correct industry expertise, too.The Big Quote: "I think with these three softwares, the nature of them is that they offer a broad set of solutions. So we're not just looking at, you know, a single, you know, stream of implementation. Typically, these implementations are global rollouts with multiple different, you know, product functions, whether it's HCM, financials, supply chain, and things like that. So these are complex implementations that we're evaluating. They're not the, you know, 30 days up and running sort of rapid implementations that smaller software packages have. So I think there's a lot of lessons learned that we can glean from these."
Ready to elevate your cybersecurity knowledge and pass the CISSP exam? This episode is packed with insights on software development, diving into the crucial phase of integrating security into the software development lifecycle (SDLC). We uncover the secrets of design and architecture, as well as static and dynamic application security testing (SAST and DAST) to help you identify vulnerabilities and ensure compliance with coding guidelines and policies. Plus, we explore the open-source OWASP project - a game-changing initiative to improve security within software applications.But that's not all! User acceptance testing (UAT) is essential for integrating security into the SDLC, and we're here to break it down for you. Learn how UAT empowers stakeholders to validate security controls and assess the effectiveness of software security features. Together, we'll examine secure coding guidelines, standards, and threat modeling - giving you the tools to write secure and robust code. Don't miss this informative episode, and get ready to become a cybersecurity superstar!Gain access to 30 FREE CISSP Exam Questions each and every month by going to FreeCISSPQuestions.com and sign-up to join the team for Free.
#141. On this episode of Amazing Apps, podcast host Neil Benson is joined by Allan de Castro, a senior technical consultant for the Power Platform at Avanade France.They discuss their experience applying Scrum to recent projects, including the role of an architect in the Scrum framework. The episode covers key challenges such as the importance of ensuring clarity in the backlog, prioritization of sprints, and addressing technical requirements while focusing on business and added value. [00:06:23] Allan, an architect and technical lead, discusses the challenge of finding their place in a team using the Scrum framework for the first time, and navigating discussions related to technical requirements and architecture while also focusing on business requirements and added value. [00:10:15] Focus on delivering continuous testing value during sprints, even if it means sacrificing some business value.[00:11:56] Agile and Scrum framework used for new project, integrating systems and iterating for development. Customer familiarity with Agile important.[00:13:12] Capture project requirements early to avoid issues in development.[00:16:36] Business analyst helps product owner with basic questions on application building, including object lifecycle. Dynamics 365 provides out-of-the-box features, such as bulk edit mode, without development needed. It can be demonstrated in demo instead of user story.[00:19:10] To successfully execute a Dynamics 365 project using Scrum framework, it is important to ensure technical requirements are included in the backlog and fully estimated. It is also important to train the customer on Dynamics 365 and focus on prioritization during sprints. Custom development must fit into the security models provided by Dynamics. Workshops may be needed to refine new business requirements.[00:24:06] Team delivers daily or every two days into the UAT environment, with testing by a quality insurance person and a dual check by the project owner or business analyst before marking as done. UAT phases were conducted initially, but now testing is continuous without UAT phases.[00:26:13] The architecture and requirements were complicated due to unclear data sources and ongoing system construction. Agile methodology requires clear definitions before development, and cultural differences affect analysis phases. Workshop and design are necessary for identifying potential risks and managing sales territory was a major concern.[00:31:14] Ensure clear backlog, communicate dynamics to team and stakeholders, define sprint process, architect advisory role, avoid influencing sprints.[00:32:34] Dev team used Azure DevOps for backlog management, linking work items to pull requests and builds for easy tracking and communication with end users. They also suggest creating automatic task generation for consistent task patterns.I've just registered for Microsoft Power Platform Conference in Las Vegas from 3-5 October. I'd love to see you there. Visit customery.com/mppc for a $150 discount voucher to register.Support the showCONNECT
We have a secret for you. You can build the best possible tool for your end users, but they won't know how to effectively use it without adequate training. Technology tools need to be intuitive, but training on these tools still needs to be comprehensive enough so your users know where to go as soon as they access the tool for the first time. In our last episode, we hinted (ahem, declared) that UAT is not training, and in this episode we discuss what training means and how to empower your end users with effective training. Spoiler alert - this is another topic that we're all very passionate about!
User Acceptance Testing (UAT) can be ran in many different ways - from small single feature tests, to gigantic enterprise platform releases. We discuss how there are many different views on how to plan and execute successful UAT sessions, and highlight important aspects regardless of your project size. There's so much more to UAT than just identifying bugs vs. features, though sometimes that can be the most difficult part! Visit https://www.dynamicshotdish.com for more information!
01:50 - 1. O que é à certificação Salesforce Business Analyst 06:41 - 2. Para quem a certificação de Salesforce Business Analyst é recomendada? 11:06 - 3. Requisitos para a certificação Salesforce Business Analyst 1. Ter a Certificação de Salesforce Administrator 2. Salesforce recomenda para quem pelo menos 2 anos de experiência com a Plataforma 22:00 - 4. Preparação para o exame: Recursos disponíveis, estratégias de estudo, etc. 1. Trailhead 1. [https://trailhead.salesforce.com/users/strailhead/trailmixes/prepare-for-your-salesforce-business-analyst-credential](https://trailhead.salesforce.com/users/strailhead/trailmixes/prepare-for-your-salesforce-business-analyst-credential) 2. [https://trailhead.salesforce.com/content/learn/modules/salesforce-business-analyst-certification-prep](https://trailhead.salesforce.com/content/learn/modules/salesforce-business-analyst-certification-prep) 2. Vídeos 1. [https://www.udemy.com/course/salesforcebusinessanalyst/](https://www.udemy.com/course/salesforcebusinessanalyst/) 3. Practice Tests 1. [https://focusonforce.com/salesforce-certifications/salesforce-business-analyst-certification-guide/](https://focusonforce.com/salesforce-certifications/salesforce-business-analyst-certification-guide/) 28:16 - 5. Valores e peso da prova de certificação de Business Analyst 1. 200$ para aplicar, 100$ retake 60 questões 2. 72% para passar 32:40 - 6. Conteúdo do exame: Tópicos cobrados, estrutura, duração, etc. 37:00 - 1. Customer Discovery 17% 1. Estratégia de negócio 2. Compreender o que o cliente quer 3. ciclo de vida de projeto e planejamento de atividades 4. Conhecimentos em recursos do Salesforce 42:36 - 2. Collaboration with Stakeholders 24% 1. Identificar as partes interessadas no projeto 2. Dado o problema escolher a melhor técnica para resolve-ló 3. Gerenciar Prioridades 46:05 - 3. Business Process Mapping 16% 1. Definição de escopo de projeto 2. Mapeamento de processos hierárquicos 3. Analise de documentos e processos 49:17 - 4. Requirements 17% 1. Distinguir entre Requisito vs História de usuário 2. Priorização de requisitos existentes 3. Gerenciamento de versão de documentos 52:54 - 5. User Stories 18% 1. Entender o que é um User Stories 2. Comparar diferença entre critério de aceitação e definição de concluído 3. Documentação de User Stories 57:05 - 6. User Acceptance 18% 1. Plano de Teste 2. UAT e gerenciamento de resultados 3. Dado um cenário, decidir se vai para go/no-go 1:03:37 - 7. Como manter a certificação atualizada 1:06:29 - 8. Oportunidades de carreira para os detentores da certificação Salesforce Business Analyst 1:10:41 - 9. Conclusão: por que a certificação Salesforce Business Analyst é uma excelente escolha para os profissionais de negócios. Acompanhe as live em https://youtube.com/souforce Siga-nos no Instagram @souforce e também @soublox.oficial Soluções em Salesforce: https://soublox.com Ferramenta Omnichannel para Salesforce: https://chatt2.me Blog: https://souforce.cloud/blog Cursos: https://souforce.cloud/cursos Podcast: https://souforce.cloud/podcast Telegram: https://t.me/souforce
Poprvé Test Managerem aneb despotický vůdce Petr Fifka je zakladatel vzdělávací společnosti Tredgate a také aktivní člen komunity [pro:]TEST!. V QA působí už 10 let a prošel si rolemi od UAT testera, přes test leada, test automation engineera až k dnešní roli Test Managera. V dnešní epizodě Petr sdílel svou první zkušenost v roli Test Managera. O tom, jak se technicky vše relativně dařilo, ale soft skillově / organizačně byl považován za despotického vůdce. Co konkrétně dělal Petr špatně, jak sám se sebou pracoval a co by dnes doporučil všem, kteří do leaderské pozice rostou nebo v ní začínají? To vše v dnešní epizodě. Příjemný poslech.
With all of the headlines about the pending death of writing at the hands of artificial intelligence like ChatGPT, I thought it would be useful to talk about the value of reading and writing and how we inspire kids to do both. My guest to help explore these issues is Sharon Lynn. Sharon teaches writing at UAT, a technology university where the students and faculty are very familiar with chat bots. She and I discuss strategies for engaging students and her own experience writing and finding a publisher for her wonderful new book, Death Takes a Bath: A Cotswolds Crimes Mystery. More information about Sharon and her book can be found at www.TalkingAboutKids.com.
Today's guest is Aashish Atrey, ServiceNow Developer MVP & Technical Specialist at HCLTech. HCLTech is a global technology company, home to 222,000+ people across 60 countries, delivering industry-leading capabilities centered around digital, engineering and cloud, powered by a broad portfolio of technology services and products. They work with clients across all major verticals, providing industry solutions for Financial Services, Manufacturing, Life Sciences and Healthcare, Public Services and more. Aashish is a passionate ServiceNow Professional with over six years of experience in the implementation of all phases of the application lifecycle and best practices, including Requirement Gathering, Design, Development, Testing, UAT, and Deployment. He is responsible to develop ITSM/ITIL process and tools solutions which include customized responses to RFPs/RFIs for ITIL-based process consulting, process operations, and ITSM tools implementations. Aashish was a ServiceNow Developer MVP for 2021 and 2022. In the episode, Aashish will discuss: How he adds value to the community, The Tokyo release and new features that excite him, Benefits that ServiceNow are bringing to customers, What the future holds for ServiceNow, Why he loves his role and Advice on mentoring within the ServiceNow community
Začít s automation testingem je easy, ne?! Petr Fifka je zakladatel vzdělávací společnosti Tredgate a také aktivní člen komunity [pro:]TEST!. V QA působí už 10 let a prošel si rolemi od UAT testera, přes test leada, test automation engineera až k dnešní roli Test Managera. V dnešním příběhu sdílel své začátky s automation testingem aneb jak se ambiciózně a s vervou pustil do samostudia a začal své poznatky implementovat do reálného projektu a kódu. Kdy a proč se to začalo sypat? Jak na tuhle "hurá akci" zpětně Petr nahlíží a co by doporučil všem, kteří stejně jako on rádi dělají a zkouší nové technologie a přístupy? To vše v dnešní epizodě. Příjemný poslech.
Lori is a Chef, Supermom, Innovator, and Founder of Black-ology Coffee Company. She graduated from Johnson & Wales University with an Associates Degree in Culinary Arts in 2006 and is currently pursuing her Bachelor's Degree in Food & Beverage Entrepreneurship. She also has experience working with startup companies across different industries focusing on process improvement, process documentation, UAT test and her overall favorite Customer Service. Visit Show Notes
thoughtbotter Stephanie Minn joins The Bike Shed as co-host!
Today's topic is one that Jess has been thinking about and has been a hot button topic in her head for the past few weeks. UAT and QAT. She believes they get interchanged frequently and wants to address the best way to manage both UAT and QAT, where people go wrong, and learnings they've had with launches.Questions discussed in this episode: What's the difference between UAT and QAT? Who should be doing the UAT and the QAT? Do you not think that you should have a checklist for the usage UAT? How many iterations would you go through during a UAT? If you're liking the show, please make sure to subscribe and share it with your friends and/or coworkers. Follow us on Twitter: @dougdavidoff, @JessDCardenas & @demandcreator to receive updates on when new episodes publish or to get other great insights. You can also watch the video version of the show on our page. Thanks for watching and remember you can't solve your upstream problems, downstream.
Sinergeticos!
Hello And Welcome to the 27th Tech@Lunch Full Episode. The full-length episodes are 30 minutes in length that span the duration of a lunch break. This week's Lunch topic is User testing or Testing with the User. This week's episode talks about Software Testing with the User, where we talk about how you execute user testing or UATs when it comes to software testing. We look at the different ways you can accomplish this and how it can bring benefits to your software development. UAT testing is one of the pillars of software testing and will continue to be one in the years to come. So join us as we dive into UAT testing.
Daryl and Scott shared horror stories about things that did not go quite as planned and the pranks they have pulled on their colleagues. Some of the highlights: If you were an interviewer, would you hire someone who answers "I have never done anything wrong in my career" Battle scars of Daryl and Scott Two Concurrent Publish All actions could make the server hang in the early days of CRM online Daryl attached a debugger to the process on the on-prem server and everyone complained that the Dev instance was not working Using the same service principal across multiple environments and hitting API limit affects all environments Daryl almost truncated one of the tables in the UAT environment with millions of records Daryl's home renovation horror stories The worst sinking feeling that Scott had Daryl's car buying experience Inheriting a project with JavaScript without namespaces and the web resource files without extensions What do you do when you inherit the project with no source code for the plugin or the source code does not match the functionality? What is worse than having no error message for an error? What is your error handling approach for plugin development? The disadvantage of deploying the PCF Code Component or assembly compiled in debug mode to a Production environment Testing as a system administrator Things to look out for before reparenting the business unit What is the worst auto-numbering solution that you have seen? A bug in Retrieve plugin for systemuser table locked everyone out of the system Pranks that Daryl has pulled on his colleagues Be careful what you encourage by giving badges when you gamify the system Less code, fewer horror stories Got questions? Have your own tool you'd like to share? Have a suggestion for a future episode? Contact Daryl and Scott at cast@xrmtoolbox.com. Follow us on LinkedIn and @XrmToolCast for updates on future episodes. Do you want to see us too? Subscribe to our YouTube channel to view the last episodes. Don't forget to rate and leave a review for this show at Podchaser. Your hosts: Daryl LaBar: https://www.linkedin.com/in/daryllabar | @ddlabar Scott Durow: https://www.linkedin.com/in/scottdurow | @ScottDurow Editor: Linn Zaw Win: https://www.linkedin.com/in/linnzawwin | @LinnZawWin Music: https://www.purple-planet.com
¡Celebramos 2 años de Hagamos un Trueque!
How do I get good user requirements? How do I ensure that they are comprehensive? Then, how do I get them to sign off on user acceptance testing (UAT)? These are the questions we are going to answer in today's episode of Dev Questions.Website: https://iamtimcorey.com/Patreon: https://www.patreon.com/IAmTimCoreyAsk Your Question: https://suggestions.iamtimcorey.com/Sign Up to Get More Great Developer Content in Your Inbox: https://signup.iamtimcorey.com/
01:09 - Jenna's Superpower: Being Super Human: Deeply rooted in what is human in tech * The User is Everything 04:30 - Keeping Focus on the User * Building For Themself * Bother(!!) Users * Walking A Mile In Your Users Shoes - Jamey Hampton (https://www.youtube.com/watch?v=w-zYKo8f7nM) 09:09 - Interviewing Users (Testing) * Preparation * Identifying Bias * Getting Things Wrong * Gamifying/Winning (Developer Dogs & Testing Cats) * Overtesting 23:15 - Working With ADHD * Alerts & Alarms * Medication * Underdiagnosis / Misdiagnosis * Presentation * Medical Misogyny and Socialization * Masking * Finding a Good Clinician Reflections: John: Being a super human. Jacob: Forgetting how to mask. Jamey: Talking about topics that are Greater Than Code. Jenna: Talking about what feels stream-of-consciousness. Having human spaces is important. Support your testers! This episode was brought to you by @therubyrep (https://twitter.com/therubyrep) of DevReps, LLC (http://www.devreps.com/). To pledge your support and to join our awesome Slack community, visit patreon.com/greaterthancode (https://www.patreon.com/greaterthancode) To make a one-time donation so that we can continue to bring you more content and transcripts like this, please do so at paypal.me/devreps (https://www.paypal.me/devreps). You will also get an invitation to our Slack community this way as well. Transcript: JAMEY: Hi, everyone and thanks for tuning in to Episode 276 of Greater Than Code. I'm one of your hosts, Jamey Hampton, and I'm here with my friend, Jacob Stoebel. JACOB: Hello, like to be here. I'm with my friend, John Sawers. JOHN: Thanks, Jacob. And I'm here with our guest, Jenna Charlton. Jenna is a software tester and product owner with over a decade of experience. They've spoken at a number of dev and test conferences and is passionate about risk-based testing, building community within agile teams, developing the next generation of testers, and accessibility. When not testing, Jenna loves to go to punk rock shows and live pro wrestling events with their husband Bob, traveling, and cats. Their favorite of which are the two that share their home, Maka and Excalipurr. Welcome to the show, Jenna! [chuckles] JENNA: Hi, everybody! I'm excited to be here with all the J's. [laughter] JAMEY: We're so excited to have you. JOHN: And we will start with the question we always start with, which is what is your superpower and how did you acquire it? JENNA: On a less serious note, I have a couple of superpowers. One I discovered when I was a teenager. I can find Legally Blonde on TV [laughter] any kind of day [laughs] somewhere. It's a less valuable superpower than it used to be. But boy, was it a great superpower when you would be scrolling and I'm like, “Legally Blonde, I found it!” [laughter] JAMEY: I was going to ask if one of your superpowers was cat naming, because Excalipurr is very good. It's very good. [laughs] JENNA: I wish I could take credit for that. [laughter] Bob is definitely the one responsible. JAMEY: So it's your husband superpower, cat naming and yours is Legally Blonde. Got it. JENNA: Mine is Legally Blonde. [laughter] I also can find a way to relate anything to pro wrestling. JAMEY: I've seen that one in action, actually. Yes. [laughter] JENNA: But no, my real superpower, or at least as far as tech goes is that I am super human. Not in that I am a supremely powerful human, it's that I am deeply rooted in what is human in tech and that's what matters to me and the user is my everything. I'm not one of those people who nerds out about the latest advancement. Although, I enjoy talking about it. What I care about, what gets me excited, and gets me out of bed every day in tech is thinking about how I can solve a deeply human problem in a way that is empathetic, centers the user, and what matters to them. JAMEY: Do you feel like you were always like that naturally, or do you feel like that was a skill that you fostered over your career? JENNA: I think it's who I am, but I think I had to learn how to harness it to make it useful. I am one of those people who has the negative trait of empathy and when I say negative trait, there's that tipping point on empathy where it goes from being a powerful, positive thing to being something that invades your life. So I am one of those people who sitting in a conference room, I can feel the temperature change and it makes me wiggle in my seat, feel uncomfortable, get really awkward, and then default to things like people pleasing, which is a terrible, terrible trait [laughs] that I fight every day against. It's actually why remote work has saved me. But I've had to learn how to take caring about people and turn it into something that's valuable and useful and delivers because we can talk about the user all day and take no action on it. It's one thing to care about the user and to care about people. It's another thing to understand how to translate that care into something useful. When I learned how to do that in testing, my career changed and then when I learned how to translate that to product, things really started to change. JAMEY: That's amazing. JENNA: Thank you. [laughs] JACOB: I feel like so often at work I sit down at 9:00 AM and I'm like, “Okay, what do our users need in this feature, or how could this potentially go wrong and hurt our users?” And then by 9:20, everything's off the rails. [laughter] As work happens and here's a million fires to put out and it's all about things in the weeds that if I could just get them to work, then I could go back to thinking about to use it. You know what I mean? How do you keep that focus? JENNA: So part it is, I don't want to say the luck, but is the benefit of where I landed. I work for a company that does AI/ML driven test automation. I design and build experiences for myself. I'm building for what I, as a tester, needed when I was testing and let's be honest, I still test. I just test more from a UAT perspective. I get to build for myself, which means that I understand the need of my user. If I was building something for devs, I wouldn't even know where to begin because that's not my frame of reference. I feel like we make a mistake when we are designing things that we take for granted that we know what a user's shoes look like, but I know what my user's shoes look like because I filled them. But I don't know what a dev shoes look like. I don't know what an everyday low-tech user shoes look like. I kind of do because I've worked with those users and I always use my grandmother as an example. She's my frame of reference. She's fairly highly skilled for being 91 years old, but she is 91 years old. She didn't start using computers until 20 years ago and at that point, she was in her 70s. Very, very different starting point. But I have the benefit that that's where I start so I've got to leg up. But I think when we start to think about how do I build this for someone else and that someone isn't yourself, the best place to start is by going to them and interviewing them. What do you need? Talk to me about what your barriers are right now. Talk to me about what hurts you today. Talk to me about what really works for you today. I always tell people that one of the most beneficial things I did when I worked for Progressive was that my users were agents. So I could reach out to them and say like, “Hey, I want to see your workflow.” And I could do that because I was an agent, not a customer. They can show me that and it changed the way I would test because now I could test like them. So I don't have a great answer other than go bother them. Get a user community and go bug the heck out of them all the time. [laughs] Like, what do you mean? How do you do this today? What are your stumbling blocks? How do I remove them for you? Because they've got the answer; they just don't know it. JAMEY: That was really gratifying for me to listen to actually. [laughter] It's not a show about me. It's a show about you. So I don't want to make it about me, but I have a talk called Walking a Mile In Your Users' Shoes and basically, the takeaway from it is meet them where they are. So when I heard you say that, I was like, “Yes, I totally agree!” [laughs] JENNA: But I also learned so much from you on this because I don't remember if it's that talk, or a different one, but you did the talk about a user experience mistake, or a development mistake thinking about greenhouses. JAMEY: Yes. That's the talk I'm talking about. [laughs] JENNA: Yeah. So I learned so much from you in that talk and I've actually referenced it a number times. Even things when I talk to testers and talk about misunderstandings around the size of a unit and that that may not necessarily be global information. That that was actually siloed to the users and you guys didn't have that and had to create a frame of reference because it was a mess. So I reference that talk all the time. [laughs] JAMEY: I'm going to cry. There's nothing better to hear than you helped someone learn something. [laughter] So I'm so happy. [chuckles] JENNA: You're one of my favorite speakers. I'm not going to lie. [chuckles] JOHN: Aw. JAMEY: You're one of my favorite speakers too, which is why I invited you to come on the show. [laughs] JENNA: Oh, thank you. [laughter] Big warm hugs. [laughs] JOHN: I'm actually lacking in the whole user interviewing process. I haven't really done that much because usually there's a product organization that's handling most of that. Although, I think it would be useful for me as a developer, but I can imagine there are pitfalls you can fall into when you're interviewing users that either force your frame of reference onto them and then they don't really know what you're talking about, or you don't actually get the answer from them that shows you what their pain points are. You get what maybe they think you should build, or something else. So do you have anything specifically that you do to make sure you find out what's really going on for them? JENNA: The first thing is preparation. So I have a list of questions and that time with that user isn't over until I've answered them. If it turns out that I walked into that room and those questions were wrong, then we stop and time to regenerate questions because I can bias them, they can bias me, we can wind up building something totally different than we set out to do, which is fine if that's the direction we went end up going. But I need to go into that time with them with that particular experience being the goal. So if I got it wrong, we stop and we start over. Now, not everybody has to do that. Some people can think faster on their feet. Part of being ADHD is I fall into the moment and don't remember like, “Oh, I wrote myself a note, but there's also” – I just read a Twitter thread about this today. I wrote myself a note, but also to remember to go back and read that note. So [laughs] all of those little things, which are why I really hold to, “I got it wrong. We're going to put a pin in this and come. Let's schedule for 2 days from now,” or next week, or whatever the appropriate amount of time is. There have been times – and I'm really lucky because my boss is so good at interviewing users so I've really gotten to learn from her, but there have been times when she'll interview a user and then it totally turns the other direction and she goes, “Well, yes, we're not building this thing we said we were going to build. I'm going to call you again in six months when I'm ready to build this thing we started talking about.” Because now the roadmap's changed. Now my plan has changed. We're going to put a pin in this because in six months, it may not be the same requirement, or the same need. There might be a new solution, or you may have moved past that this may be a temporary requirement. So when we're ready to do it, we'll talk again. But the biggest thing for me is preparation. JAMEY: I have a question about something specific you said during that near the beginning. You said, “They can bias me and I can bias them,” and I wonder if you have any advice on identifying when that is happening. JENNA: When it feels like one of you is being sold? JAMEY: Mm. JENNA: So early in my career, before I got into tech, I worked in sales like everybody who doesn't have a college degree and doesn't know what they want to do with their life does. Both of my grandfathers and my father were in sales. I have a long line of salespeople running through my blood. If I realize that I feel like, and I have a specific way that I feel when I'm selling somebody something because I like to win. So you get this kind of adrenal rush and everything when I realize I'm feeling that. That's when I know ooh, I'm going to bias them because I'm selling them on my idea and it's not my job today to sell them on my idea. I know they're biasing me when I realize that I'm feeling like I'm purchasing something. It's like, oh, okay. So now I'm talking to somebody who's selling me something and while I want to buy their vision, I also want to make sure that it makes sense for the company because I have to balance that. Like I'm all about the user, but there's a bottom line [laughs] and we still have to make sure that's not red. JOHN: So you're talking about a situation where they maybe have a strong idea about what they want you to build and so, their whole deal is focused on this is the thing, this is the thing, you've got to do it this way because this would make my life the most amazing, or whatever. JENNA: Yeah, exactly. Or their use case is super, super narrow and all they're focused on is making sure that fits their exact use case and they don't have to make any shifts, or changes so that it's more global. Because that's a big one that you run into, especially when you're like building tools. We have to build it for the majority, but the minority oftentimes has a really good use case, but it's really unique to them. JOHN: What's the most surprising thing you've taken away from a user interview? JENNA: I wouldn't say it's a surprise, but probably the most jarring thing was when I got it wrong the first time and when I got it wrong, I was really wrong. Like not even the wrong side of the stadium, a different city. [chuckles] Like a different stadium in a different city wrong. [laughs] It caught me off guard because I really thought that what I had read and what I understood about the company that I was working with, the customer that I was working with. I thought I understood their business better. I thought I understood what they did and what their needs would be better. I thought I understood their user better. But I missed all of it, all of it. [laughs] So I think that was the most surprising, but it was really valuable. It was the most surprising because I was so off base, but it was probably the most valuable because it showed me how much I let my bias influence before I even step into the conversation. JOHN: Is there a difference between how you think about the user when you have your product hat on versus when you have your tester hat on? JENNA: Oh, absolutely. When I have my product hat on, I have to play a balancing game because it's about everybody's needs. It's about the user's needs. It's about the business' needs. It's about the shareholders' need. Well, we don't really have shareholders, but the board's needs, the investors' needs. And when I'm testing, I get to just be a tester and think about what do I need when I'm doing this job? What solves my problem and what doesn't? What's interesting about testing and not every tester is like this, but I certainly am. I mentioned that I like to win. Testing feels like winning when you find bugs. So I get to fill that need to win a little bit because I'm like, “Oh, found one. Oh, found another one. Yes, this is awesome!” I get really excited and I don't get to be that way when I'm product person, but when I'm testing person, I get to be all about it. [laughs] JAMEY: I love that. That's so interesting because to me as a developer, I get a similar feeling when I fix bugs. I feel crappy when I find bugs, [chuckles] but I get that feeling when I fix them. So it's really interesting to hear you talk about that side in that way. I like it. JENNA: Have I ever shared with you that I think developers are like dogs and testers are like cats? JAMEY: Elaborate. JACOB: Let's hear it. [laughs] JENNA: Okay. So I like dogs and cats. That's not what this is about. JAMEY: I like dogs and cats, too. So I'm ready to hear it. [laughs] JENNA: Dogs are very linear. If you teach a dog to do a trick and you reward them in the right way, with the exception of a couple of breeds, for the most part, they'll do that for you on a regular basis. And dogs like to complete their task. If they're a job, because a lot of dogs, they need jobs. They're working animals, it's in their DNA. If their job is to go get you a beer, they're going to go get you a beer because that's their job and they want to finish their job. Cats, on the other hand, with the exception of their job of catching things that move for the most part, they are not task oriented and really, a cat will let a mouse run past it if it's just not in the mood to chase it. It's got to be in the mood and have a prey drive and they don't all. So a cat, you can teach them a trick and if you reward them the right way, sometimes they'll do it and sometimes they won't. Some breeds of cats are more open to doing this than others. But for the most part, cats are much more excited about experimentation. So what happens if I knock on that glass of wall water? What happens if I push on that? What happens if I walk up behind you and whack you in the back of the head? They're not doing it because they're mean, they're doing it because the response is exciting. The reaction to their input in some way is exciting to them as opposed to finishing tasks. Because if you've ever had a cat catch a mouse, they're actually sad after they have caught the mouse. The game is over, the chase is done. It's not fun to give me the mouse; it's fun to chase the mouse. So testers are a lot like that. The chase and the experimentation are a whole lot more fun than the completion. When I find a bug, that's the chase, that's the good part of it. That's like, “Oh yeah, I tracked it down. I figured it out. I found the recreate steps.” After I found the bug, it's not as fun anymore. [chuckles] So I've got to find the next one because now I'm back on the hunt and now that's fun again. Dogs on the other hand, it's like, “Oh, I finished the task. I'm getting my reward. I get to cross this off. My list feels really good” Very different feedback. So I think that's part of it is that devs love to finish things and testers love to experiment with things. JOHN: Yeah. JAMEY: I think that's really insightful. JOHN: Yeah. [laughter] JAMEY: I'm like a I put something that I did on my to-do list so that I could cross it off and it feels like I did something kind of person. [laughter] JACOB: I think we, at least I was, early in my career kind of trained to have that mindset and trained away from no, we're not here to like experiment with the newest and coolest thing. We're just trying to ship features. We're just trying to fix bugs. We're just trying to finish the task. Please do not be overly experimental just for fun, which is an over simplification because everyone needs to be creative at some point. But I totally agree. JENNA: Well, and testers do have to balance that, too because there is such a thing as over testing and you hit this tipping point where it becomes wasteful and you move from I've delivered valuable information to now I'm creating scenarios that will never happen. Yes, a user can do pretty incredible things when they want to, but we can only protect from themselves to a point. Eventually, it's like okay, you've reached that tipping point now it's waste. [laughter] JOHN: Yeah. I remember some research that came out recently that if you call the cat and it doesn't come, it understands what you're asking for and it's like, “Nah.” JENNA: Yeah. Maka not so much. But Excalipurr, when she's sleeping, she'll hear you. That cat is out cold. She has zero interest in what you're saying, or doing. Nothing is going to disturb her well-earned slumber. [chuckles] JACOB: I'm kind of amazed how like my cat is just easily disrupted by the smallest noise when awake and then when he's sleeping, he's dead to the world just like you said. He clearly can't hear it, or if he is, there's something switched off in his brain when he's sleeping, because he's a total spaz when he is awake. [laughter] JENNA: I don't know. I think my vet could explain it better. He actually walked me through what happens in a cat's brain when they were sleeping. I don't remember why. I think we were waiting for a test to come back, or something and he was just killing time with me. But there was this whole neurological thing in their brains that looks for certain inputs and even biochemically, they're wired to certain sounds that are things that they should get awakened by and other things, it's like yeah, that matter. For some reason, though my cats have weird things that they're really tuned into. If you knock on the door, Excalipurr—we call her Purr—will go bananas. She is furious that someone has knocked on the door. Same thing if something beeps like microwave beep, the sound of if I've got a somebody on speaker phone and their car door opens and it beeps, she is mad. She could be dead asleep and she hears that and she is furious. But otherwise, nothing bothers her. She's out cold. [laughs] JAMEY: I also hate when people knock on my door so I can relate to that. JOHN: Yeah. JENNA: Don't come to my door if I'm not expecting you. JACOB: Yeah. JENNA: Also don't call me if I'm not expecting you. [laughs] JAMEY: I have exactly one person I open the door for. His name is Joe and he's our neighborhood person who comes and collects everyone's bottles and cans. But I recognize the cadence of his knocks so that I can answer the door for him and not other people. [laughter] JOHN: So you said earlier that working with ADHD, you had to develop some sort of techniques for how to handle that well in your life. Do you want to talk more about that? JENNA: I don't know if I would say I handle it well, but I handle it. [laughter] Most of the time. Typically, I do you pretty well. So I have lots and lots of alerts for myself. Because as I mentioned, I'll write myself a note, but you still have to have the – somebody said the name of it today and I forgot what it was, but there's a type of memory that tells you to like, “Hey, go look at your notes that you created for yourself,” because you can write the notes, but forget that the notes exist and never go look for them again. So I have lots of like alerts and alarms that tell me like, “Hey, go do this thing. Take your meds. Check to make sure that you have everything you need on the grocery list.” I have a couple of times a day that I have a reminder to go check my to-do list [chuckles] because otherwise, I just won't remember. I'll put the system into place and forget that the system exists and even with those helps, sometimes it'll just slip by especially I'm busy during those alerts. But I try really hard to use those. The most effective thing for me, though is definitely my medication. I was chatting about everybody before we started and I mentioned that because of supply delays and all of the rules around how early you can refill and the rules around not being able to transfer your script from one pharmacy to another and all that kind of stuff, I was without my medication for let's see Friday, Saturday, Sunday, Monday, because I didn't get it until midday yesterday and I was sick. So [chuckles] too many factors at one time that I was just not at all functional over the weekend. I forgot steps in what I was cooking. I forgot things on the grocery list. I couldn't stay awake. That was probably more being sick but. So for me, that's probably the most effective thing. Also, just as a note for those of us assigned female at birth, I that ADHD symptoms get worse [laughs] as we hit 40 and up that all of the hormonal stuff winds up interacting with how our attention is, because I couldn't figure out why my dose had to go up. I was like, “I've been on it forever. Why do we have to raise the dose?” And she's like, “Well, there's some things going on,” and I have a feeling it's all about premenopausal stuff, because for those who don't know, I'll be 40 in June. Not a teenager anymore. [laughs] So all sorts of things that I need to keep it all in balance and things that I'm learning about being in my age group and having ADHD that nobody talks about because of the assumption that ADHD is something only children have and that ADHD is something that you grow out of. When you don't grow out of it; it just kind of changes. And that it's not just men and people who are assigned male at birth that there's a lot of us out there, varying genders. We've got to talk about it more because a lot of us feel like we're wandering the wilderness, trying to figure out what's on in our heads. [laughs] JOHN: Yeah. I remember hearing recently that ADHD and ADD present differently in AFAB people and so, it goes underdiagnosed because of that. It doesn't show up in the classical symptom lists in the same way. JENNA: Yeah. So the classic symptom list was developed around pre-pubescent and puberty age boys and in girls, it doesn't tend to present as not being able to sit still. Although, there's still definitely some of that. It presents more in being like a Chatty Cathy as they say like, “Oh, they talk all the time.” So it presents differently and as we get older and all of the other like stuff starts to factor in, AFAB tend to get identified instead as borderline personality disorder, or bipolar as opposed to ADHD, or even anxiety as opposed to ADHD. Because when you feel like your brain is going a mile a minute, it makes you anxious. So they give you an anti-anxiety medication instead of dealing with the fact that you feel like you can't keep up with your thoughts. There are so many different factors there, but we're learning a lot more about the presentation of ADHD and autism in people who are assigned females at birth. JOHN: Yeah. I don't know a ton about the history of the diagnosis and everything, but I can assume well, because it's the society we live in that there's a giant pile of sexism going on in there, both in who is studied and who they cared about succeeding in classical schooling and the work environment and all sorts of biases up and down the hierarchy. JENNA: Absolutely. There's both, the medical misogyny, but also the socialization because there's an expectation of good girl children and the behavior that girl children should display. So we are socialized to force ourselves to sit even if it means sitting on your hands. You're socialized to doodle instead of wiggling because good girls sit still. So there's all of that kind of stuff that plays into it, too. Even things like if you develop a special interest, which typically people associate with autism, but certainly has some crossover with ADHD because they're very closely related. You learn to either hide that special interest so you just don't talk about it, or you become that person that has the weird quirky thing because ADHD girls are always quirky, right? [chuckles] They're a quirky girl. There's no neurodivergence there. They're just quirky. They're just different. I guess, in many ways, I was kind of lucky because my mom taught autistic, intellectually disabled, and other disabled early childhoods. So she identified early, like kindergarten, that I was probably ADHD. I was dealing with it like really early. Also, she had this kind of belief about raising kids without gender, but also not doing it very well. So I wouldn't say it was a successful thing. [laughs] So let me tell you, we didn't have girl toys and boy toys. We had building blocks and stuff like that. We weren't allowed Barbies. We also weren't allowed Hot Wheels. Very gender in neutral things. But when, as a teenager, I dressed really androgynous, I was told to put on a dress because she is a girl. So I don't know. [laughter] It didn't really work. But I think that a lot of that played into me being identified really early. I'm probably getting off track, but the benefit of is that I learned a lot about it from an early age and I was able to develop systems that work for me from an early age. Most people who are assigned female at birth don't get the benefit of that. My hope is that our kids, I don't have any kids, but to the people my age that have kids, my hope is that their children are being identified earlier so that they are able to get those systems in place and be more successful in the long term. JACOB: I'm autistic and sometimes I think about the fact that I think that my white male privilege let me get away with some of the less great behaviors that came naturally to me and did not force me to develop masking skills until much later in my life. So when you were talking about that, I can sort of relate to that by the opposite that that's making a lot of sense to me, that I could see how all these sort of societal pressures to sit still and behave weren't put on me. I was just encouraged to just be a weird individual and be myself and how that wasn't put on me in places where maybe it probably should have been. So that makes a lot of sense. JENNA: I have to say, though, I think I've forgotten how to mask COVID has definitely killed masking for me. I have completely forgotten how to make small talk. [laughs] JACOB: Yeah, me too. JENNA: [laughs] I can't do it anymore. I've also forgotten how to fix my face. I was never great at fixing my face. Everything I'm thinking, feeling wears on my face, but I'm even worse at it than I used to be. [laughs] JAMEY: I also struggle with fixing my face, but I've actually been finding that I love wearing face masks in public because I can interact with someone without having to worry about what my face is doing and it takes a lot of the pressure off me, I feel. JENNA: I think it does. So I have resting friendly face. [laughter] For those of you who've never met me in person, I am 4' 10”. I'm really short. I'm also kind of wide. I'm fine with it. But little ladies in the grocery store will ask me to help them reach things because I look friendly and approachable. [laughter] But I can't reach them any better than they can! [laughter] Sometimes they're taller than me. So face masks have allowed me to blend in more, which is really nice because I get less of random people coming up to talk to me. People will joke that I make a friend everywhere I go because people just start talking to me and I don't really care. I'll talk to them, that's fine. What I really laugh at is since I can't fix my face, I will put on a plastered-on smile and somebody will be like, “You are really mad at me right now, aren't you?” I'm like, “No, everything's fine. I'm super okay with this,” and they're like, “Yeah, you are furious so we're going to stop.” [laughs] Like I can manage an angry smile without meaning. [laughter] JAMEY: It's interesting what you said about people talking to you randomly, because I also I tend to be that, the kind of person that people talk to randomly in general. I've been having an interesting experience recently where I've been on testosterone for about a year and a half and I'm like finally hitting the point where the way people perceive me in public is different than it used to be. That got cut down dramatically immediately and in a way where people's eyes slide off of me in public. I'm not there in a way that never used to happen to me and it was really interesting realization for me to realize how much of that was the socialization that people think they're entitled to a woman's time and attention. It's not exactly what you were talking about, but it made me think of it and I've been thinking about it a lot lately. [laughs] JENNA: But it's true. It's really true. I think everyone who's perceived as a woman gets it, but gets it in different ways. I tend to get it from people who feel like I'm a safe place to go to. So little old ladies talk to me, little kids talk to me. Now to be fair, bright pink hair, little kids think I'm great. [laughter] Especially when my tattoos are showing, too. The parents are usually like, “Okay, okay. Leave them alone.” [laughter] But I'm also—no offense to anyone who identifies as male in the room—the person that men don't typically stop and talk to, or even notice. I remember I was taking four boxes of nuts to my coworkers and I think it was Fat Tuesday, or something so I was bringing in these special donuts from my favorite donut place around the corner. I had four boxes of donuts and this guy doesn't grab the door, or anything. Just leaves me to try and push the door open with four boxes of donuts. But then granted, she was gorgeous, beautiful blonde starts walking the other direction. He notices her right away, grabs the door, and opens it for her. It's like oh, okay. I've had that happen quite a few times and not to sound dramatic here, but that's part of the reality of living in a fat body that you do get overlooked by others. So the little old ladies tend to tend to gravitate towards me and then other women, men gravitate towards them. I think no matter, what women experience this and people who are perceived as women, because I do identify as non-binary. But let's be honest, people in the broader world perceive me as a woman. We all get it. We just get it very differently and in different ways, but I can't think of a single woman who hasn't experienced it in some way. JAMEY: Definitely. JOHN: Yeah. I've read so many rants frankly from women who have absolutely loved masking well in public because they don't get told to smile and they don't present as female as normal. So they don't fit into that category as much and so, they don't get that same attention. I look very male so no one ever does that to me, but I can imagine what a relief that must be. JENNA: I definitely think it is for some women, especially in super public spaces. JAMEY: I feel like I derailed from ADHD and I want to bring it back. [laughter] I did have a question I was going to ask anyway. So I'm bringing it back to that, which is that I feel like these conversations, like the conversation we're having right now about ADHD, is something that I've been seeing happening more, especially about ADHD and adults. I think it's just something that people have been talking about more the past few years in a way that's positive. I know a lot of people who were like, “Oh, I got diagnosed recently as an adult. I started on medication and I never realized this was what was making my life so hard and my life is so much easier now.” I have several friends that are like really thriving on that currently. So I guess, my question for you is that as someone this whole story you told about being aware of this much younger and being able to make all these coping mechanisms and things like this. What would your advice be to someone who's now, as an adult, realizing this about themselves and then coming to grapple with it? JENNA: Let me preface with this. I'm not one of those people who says medication is the only way; there are lots and lots of ways to manage ADHD symptoms. But I feel like the most beneficial thing you can do for your is to find a clinician that listens to you, that believes you, that doesn't dismiss your experiences because there are as many different presentations of ADHD as there are people who are ADHD. If you've met one ADHD person, you've met one ADHD person; we all have different traits. So finding somebody who is willing to hear you, listen to you, and partner with you, as opposed to try and dictate to you how to manage, how to cope is critical. Part of that is arming yourself with all the information that you can. But the other part of it is being a really, really good self-advocate and if you aren't comfortable with that kind of self-advocacy, finding somebody that's willing to partner with you to help be your advocate. I know a lot of people in the fat community who have personal advocates for medical appointments, because they feel like they're not heard when they go to the doctor. Same thing for us as people who are neurodivergent. We don't get heard all the time and if you feel like your clinician isn't hearing you and because there is a real barrier to getting a new one many times—oftentimes we're stuck with someone. Finding that person that's willing to walk with you is huge. It is really easy to find yourself in a situation where you lose control of your decision-making to a provider who makes the decisions for you, but is clever enough to convince you you're making the decision yourself. That's my biggest advice is don't fall into that trap. If something feels wrong, it's wrong. If a medication doesn't work for you, it doesn't work for you. There are multiple different types of medications, classifications of them, and different brands for a reason is because we all need something different. Like I went through Ritalin, Adderall, finally to Vyvanse because Ritalin and Adderall weren't working for me. Adderall worked, but it raised my heart rate. Ritalin made me feel manic. My provider listened to me when I said I feel manic. I feel out of control, and she's like, “If on the lowest dose you feel out of control, this is not a way to go.” I have a friend who has been pushed off of taking stimulants because she has a history of addiction. She has a history of addiction because she's ADHD and she was self-medicating. It took four different providers to finally get to somebody who said, “Yeah, the stimulants are what worked for you.” The non-stimulant options weren't working, but she had to go and demand and demand and demand and it was the only way to get heard. So I probably got on a tangent there, but self-advocacy, finding someone who will work with you, and getting an advocate if you don't get hurt. JAMEY: I think that advice will be really helpful for people. So thanks. JOHN: Yeah. JENNA: I'm always very worried that I'm going to cross a line and upset somebody, but it just is, right? JACOB: I don't know what line that would be. I feel like everything you said was just really empowering and I wish someone said that to me 10 years ago, honestly. JENNA: I hope it's helpful, but I've had people who haven't realized that even though they're an adult, because they're neurodivergent that they are forever a child. JACOB: Yeah, I know. JENNA: So their opinion, their experience doesn't matter, it's invalid, and those are the folks that sometimes get really upset when I talk about self-advocacy. That's a big personal journey to realize that hey, you are a grown up. You make these decisions. [laughs] You are allowed to be an adult now. In fact, you need to be an adult now. JAMEY: That's also very insightful, I think. JOHN: Yeah, and interestingly, it ties in with – so my company had an event for Black History Month. We're a healthcare company, we have a lot of clinicians of color and they put together a panel discussion about Blackness in a healthcare context and literally one of the panelists was talking about how do you cope with there's still prejudice, there's still people joining medical school right now that believe that Black people don't experience pain as strongly as other people. How do you deal with that? They said almost literally the same thing. You take advocates with you to your medical appointments so that you can have more opinions. You can have someone to help fight for you, someone to help make those arguments, and point out things that you might not be noticing at the moment about how the provider is acting, or just to give you that moral support to actually voice your like, “Hey, what, wait, wait, wait, this is not right. Let's back up and talk about this again.” So I think that advice is important in so many intersections that I'm glad you laid it out like that. JENNA: It's a really interesting conversation that I wound up having. I've had sleep problems my whole life and by the way, if you're ADHD and you have sleep problems, you're not alone. It's a pretty common symptom [chuckles] to have disrupted and disordered sleep partly because our brains get bored and then we wake up. Our brains don't know how to focus on sleep. Interesting study that somebody's undertaking. But my neurologist that I see for sleep asked me to be part of a panel conversation with a team of doctors and they basically asked me questions about being ADHD and having sleep issues. And one of the things that these doctors had never really considered is that I know enough about my own body and my own sleep to know why all of the things that they've suggested haven't worked. One of them was like, “Did you try having more potassium?” I remember I just stopped myself and I said, “Listen, my parents have told me stories of how I wouldn't sleep as an infant.” We're talking about somebody who was sleeping 2, or 3 hours a night as a toddler. This is not a new thing. This is not insomnia. This is not stress related, stress induced sleep loss. This is a chronic medical condition. I said, “If you think that I haven't tried more potassium, having peanut butter at night, turning off devices an hour before bed, not watching TV before bed, not reading before bed, using the sleep training apps, going for a sleep study. If you think I haven't done this stuff, I don't know how to help you, because if you think I've made it this far in my life without trying anything, we have a whole another conversation to have.” It's the same thing. I'm going to say this and it's going to sound really hurtful to providers, but they think that we were born yesterday and until that change, we just have to keep proving them wrong. JAMEY: I think that you won't probably hopefully hurt the feelings of providers who aren't like that. Because my suspicion is that providers who aren't like that are like, “God, I know.” [laughter] JENNA: I hope so. I hope so because they're patients, too. I really wonder what it's like for them to go to a doctor. JAMEY: Yeah. I didn't want to totally derail into a different conversation again, but I just want to kind of note that this all really resonates with me also as a trans person, because I know way more about trans healthcare than doctors do. [chuckles] So I go in and I say, “This is what we're going to do because I know all about this,” and my doctor's pretty good. He listens to me and he works with me, but he says like, “Cool, I don't know anything about that so sounds good,” and it's just wild to me that I have to learn about all of my own healthcare to do healthcare. JENNA: Yeah, which that's a whole another conversation about how important it is to – like we talk about diversifying tech, which is important, but we also have to diversify the community. Until there are trans clinicians, until there are more Black clinicians, until there are more assigned female at birth clinicians, we are going to continue to find ourselves in these situations and we're going to continue to find ourselves in dangerous situations. I think about—getting off track for a second because that's what I do. I live in Cleveland. Well, I don't live in the city of Cleveland, but Cleveland is my nearest metro area. I'm 10 minutes outside of the city. Cleveland has one of the worst infant and maternal mortality rates for Black women in the country. We also have some of the lowest numbers of Black OB-GYNs in the country. There is a direct correlation there. No offense to my white men, friends, but all of these white men sitting here in their ivory tower guessing at how they're going to solve this problem while at the same time women like Serena Williams nearly die in childbirth because they don't listen to her. It's like, so you're going to come up with these solutions when you're not even listening to some of the most educated and informed patients that you have? It's why there's a whole coalition of Black women in Cleveland that have started a doula organization that they're becoming doula to support other Black women in the city because they don't feel like the medical community is here for them. It's the exact same thing. Like until we have this diversity that's so needed and required, and reflects patients, people are going to die. JAMEY: Yeah. On the flip side of that, when you do have a provider that shares your background in that way, it's so empowering. My new endocrinologist is trans and the experience is just so different that I couldn't have even fathom how it was going to be different beforehand. [chuckles] JENNA: That's amazing, though. That transforms your care, right? JAMEY: Yeah. Totally. JENNA: But it all comes back to what I said about how I care deeply about the human [chuckles] because this is all the human stuff. [chuckles] JOHN: Yeah. JAMEY: So what we like to talk about here on Greater Than Code, the human stuff. JENNA: That's why I love Greater Than Code. [laughs] I can't help myself, though. Whenever I say human stuff, or think about human stuff, I think about Human Music from Rick and Morty. [laughter] That whole thing has always stuck out in my mind. [laughs] Just look up Human Music from Rick and Morty and you'll get a giggle. [laughs] JAMEY: I think it's a great time to do reflections. What do you think? JOHN: Yeah, I can start. I think there's probably a ton I'll be taking away from this. But I think what struck me the most is right at the beginning when you were talking about your superpower, you talked about yourself as a super human, not super human, but as a just super human, just you're really human. All of us are, but we don't think of ourselves that way. I just love that framing of it as just that I'm here as a human and I'm leaning into it. I really like thinking that way and I'll probably start using that term. JACOB: I related really hard to the forgetting how to mask situation since COVID. I don't know if that's a full reflection, or not, but I relate really hard to that. JAMEY: I feel like in a way my reflection is so general, I think it's so great to talk about stuff like this. I think that it's really important. Like I was kind of saying about we have more people realizing things about theirselves because people are just more are open about talking about this kind of topics. I think that that's really amazing and I think that when people like Jenna come on shows like Greater Than Code and we can provide this space to have these kind of conversations. That, to me feels like a real a real privilege and I almost can't come up with a more specific reflection because I hope people will listen to the whole show. [chuckles] JENNA: What's been really amazing is getting to talk about whatever just feels stream of consciousness in this conversation has connected a lot of dots for me, which is really neat because outside of tech, for folks who don't know, I'm a deacon at my church, which is also a very human thing because I provide pastoral care to people who are in the hospital, or who are homebound, or who are going through crisis, or in hospice care, or families who have experienced a loss. All of these things interconnect—the way that I care for my community, the way that I care for my broader community because I have my church community, I have my tech community, I have my work community, I have my family. All of these very human spaces are the spaces that are most important to me. If you are my friend, you are my friend and I am bad about phone calls and stuff, but you are still somebody who's on my mind and if something happens, I'm your person. You just message me and I'm there. It all interconnects back to all of these like disparate ideas that have just coalesced in one conversation and I love that and that makes my heart very full. JAMEY: Thank you so much for coming on the show. Is there anything that you want to plug? JENNA: So I have a couple of talks coming up. At InflectraCon, I am doing a risk-based testing talk and Agile Testing Days, I am doing a workshop on test design techniques. If you came to CodeMash, it's that workshop, it's fun. Support your local testers! That's my big plug. Support your testers! [laughter] JAMEY: Think about them as the experimental cats. I think that will be helpful for people. [laughter] JENNA: Yes! [laughter] JAMEY: Thank you so much. This was great! JOHN: Yeah, I loved the last line of your reflection. That was beautiful. JENNA: Aw, thank you. Special Guest: Jenna Charlton.
Chad talks to Benjie De Groot, co-founder, and CEO of Shipyard. Shipyard manages, creates, builds, and deploys ephemeral environments. Benjie talks about how Shipyard became a funded company, discovering who their ideal customers are, and building out the core team so Shipyard can accelerate and figure out their next steps in how to bring it to the masses. Ephemeral Environments (https://ephemeralenvironments.io/) Shipyard (https://shipyard.build/) Follow Benjie on LinkedIn (https://www.linkedin.com/in/bueller/). Follow Shipyard on Twitter (https://twitter.com/shipyardbuild), LinkedIn (https://www.linkedin.com/company/shipyardbuild/), or GitHub (https://github.com/shipyard). Follow thoughtbot on Twitter (https://twitter.com/thoughtbot), or LinkedIn (https://www.linkedin.com/company/150727/). Become a Sponsor (https://thoughtbot.com/sponsorship) of Giant Robots! Transcript: CHAD: This is the Giant Robots Smashing Into Other Giant Robots Podcast, where we explore the design, development, and business of great products. I'm your host, Chad Pytel, and with me today is Benjie De Groot, co-founder, and CEO of Shipyard. Benjie, thanks for joining me. BENJIE: Thanks for having me. CHAD: Why don't we start by if you don't mind sharing a little bit about what Shipyard is and does? BENJIE: Sure. At the core of what Shipyard is working on is ephemeral environments; not everybody knows what that means. That is changing a bit. But essentially, what we're focused on is on every pull request or commit for a feature; Shipyard manages, and creates, and builds, and deploys ephemeral environments. So that's a disposable one-off on-demand environment that any stakeholder in your internal company can use. And we focus on the tooling around that, on build pipeline, and then security around that. And then all kinds of other cool features that are necessary that pop up. CHAD: Cool. So as a developer, I'm familiar with the concept of developing locally, putting up my pull requests. And also, we deploy a lot of stuff to Heroku. So I'm familiar with some of the infrastructure that Heroku might give. How did you arrive at saying like, this is a thing that I want to work on and believe should exist? BENJIE: That's a great question. I actually am also a developer; that's my background. And throughout the course of my career, I've always been on the technical side of the company. And what that's translated to, because of passion, to be honest, is always taking on a DevOps type role, so throughout the course of my career, a lot of responsibility. I mean, I started off writing Bash scripts, went to Puppet, did Chef for a while, did Ansible. Somehow I went back to Bash scripts for a lot of this stuff. Then this company called DoCloud popped up, which obviously became Docker, and I kind of got obsessed with that. And then I had a bunch of friends at Google, and they were telling me about this creepy thing called Borg, and that became Kubernetes. And so, my career has kind of happened throughout that entire process. And throughout, DevOps has kind of been my passion. Along with my co-founder, Peter, I was a high-priced Kubernetes consultant in the New York ecosystem just a few years ago. And a lot of companies were trying to make the transition to Kubernetes. And Peter and myself came in and helped people that were struggling to find DevOps resources. And what that always kind of looked like was there was some bespoke version of a deployment system that was perfect for the person that wrote it. But obviously, it wasn't good enough for me and Peter, for Peter and myself. CHAD: [laughs] BENJIE: And so we would rewrite it, and it would be great. But then, eventually, we'd move on, and someone else would rewrite it. And there were a few instances where we ended up going back to companies and just reimplementing what we had already done. And throughout that process of being this consultant, we kept running into this ephemeral environment thing and building the same tooling over and over and over again. So Peter and I, on a weekend, kind of got, "Oh, let's make a tool for ourselves." So we did that. And we made this exoskeleton to help our consulting business. And as things progressed, we kept just adding features, and it was really fun, and it was great. And then some of our customers or clients saw that. And they were like, "Hey, can we click that button?" And we were like, "I guess." And so slowly, it turned into a product that was very duct tape-y and glued together, but it worked great. And to be frank, I had been through the VC process on the technical side in the past and didn't want to go through that again, the hamster wheel of need to raise more and more money and so very, very averse. And was very set on a really nice lifestyle consulting business, and hell was going to have to freeze over for us to take any VC dollars. And then I don't know if you heard, but in March of 2020, hell froze over, and [laughter] there was a little pandemic. And at the same time, we got some pre-emptive term sheets, yadda, yadda, yadda. Next thing you know, we're a funded company building out a really cool product. So that's the origin story of where Shipyard came from. CHAD: Really cool. I definitely want to come back to what building the product for you has been like, and the funding, and where you go from here. But let's come back to the product itself. As a developer, my normal workflow is I'm working locally. I'm able to run the application that I'm working on locally here on my computer. I put up a pull request on GitHub. I ask my team to review it. Once it gets reviewed from a code perspective or a design perspective and gets a thumbs up, I merge it back into the main branch. And I deploy it to a staging server, at which point I would ask my stakeholder, my client, whatever, "Hey, this thing you're expecting it's on the staging server for you to check out." And everyone else on the team is doing the same thing. So where does Shipyard come in, and why is it better than that? BENJIE: So where Shipyard comes in, it's after the local development but before you get to staging or really before you get to production because, in practicality, a lot of people turn Shipyard into their staging servers. But what happens is through webhooks, we hook into your GitHub. And we see that there's a new commit that comes in. And we automatically build and deploy a fully ephemeral environment for that feature. And what that gets you is a few things. One paradigm that we're seeing a lot of is when you make that PR, a lot of end-to-end test suites are being run automatically using Shipyard ephemeral environments. And what that gives you is, in some instances, before you even have a code review, you're passing the suite of tests. And what that gives you is you save a lot of time. If there's just a dumb migration error or some typo or something like that, you're not wasting human capital or human energy on those environments. And the other instance there that gets really interesting is by bringing up these environments earlier on, product stakeholders and QA stakeholders can do their jobs earlier on in the process. And so you can avoid a lot of merge conflicts. So like, you merge something, and maybe there's an edge case that you hadn't tested for, and the code review didn't pick up. Well, all of a sudden, staging is broken. And some other team member that's using the same process you were now they're blocked. Or the client can't see that environment, and there's some other type of problem. But really, we didn't invent this paradigm. This is what FAANG does. There's a reason why I can't remember the last time that Gmail itself a button broke, or there was bad CSS, or bad HTML, same thing with Facebook, same thing with Netflix. Obviously, we all know about –- CHAD: There's the obvious DNS outages. BENJIE: [laughs] Right. I was going to say we all know about AWS, especially in December of 2021. That was a tough month. But yeah, from a UI/UX and controllable release perspective, this greatly increases your internal stakeholders' ability to get their hands on features earlier, find problems, and then get those back to developers. And the other thing, and maybe this is a question for you. But have you ever been in a situation where you built something, and it doesn't actually get reviewed for a few weeks? And then there is a bug, and you have to go back, and context switch off of what you're working on and go back and put a whole other mental model in place to go back and remember why did I use a switch statement here? That's a bad example but something to that effect. CHAD: [laughs] Yeah. Well, I really try to avoid that scenario by having tight feedback loops, but sometimes it's unavoidable. It might be you finish something right before a holiday or going away or something like that; that can happen. So it's happened to me before, yeah. BENJIE: Right. And how do you get your product people or your UAT teams...when do they get to touch the feature that you're working on? CHAD: It's usually not until after a code review when it's been merged into main and deployed to staging. BENJIE: So that's kind of how we make that feedback loop tighter. And what we've seen in practice actually is a lot faster, more reliable releases. And there's a significant increase in the cadence of releases that can happen and a higher quality of those releases. CHAD: You mentioned that some customers end up even getting rid of staging. And so that's really exciting and interesting to me. When they do that, what does the overall picture look like? Is the code merge manual? Or do you have customers that are doing continuous deployment off of a thumbs up from the person reviewing it in the ephemeral environment and getting that automatically merged, and then maybe canary deploy or something to production? BENJIE: Yeah, that's a great question. The thing to keep in mind here is that the majority of our customers are larger, and they have bigger teams because obviously, this is a collaboration platform ultimately. And so there's more value for the more complex teams and more stakeholders. So we don't have anybody at this moment that I know of; there could be, doing LGTM is good enough. So there's always a manual component. But what it looks like from a staging perspective is that your main branch is actually ostensibly your staging environment, and so all the ephemeral environments are sort of dev environments that are shareable. And then when you merge because a code review passes, and QA checks, and UAT, then it gets automatically built into the main branch and the main environment. And then some people do QA. They'll final pass a QA or a final end-to-end test there. And then there's also a manual promotion to production as well. That's the typical pattern we've seen. CHAD: Cool. One of the things that when I've used...sometimes a problem even with staging. But when I've used or been on projects with some ephemeral environments, getting good data in those environments can sometimes be a challenge. Is that something that Shipyard helps with? Or what's your recommended approach to that problem? BENJIE: So that was one of the biggest problems we had early on. We put a lot of work into that. We apply the same git branch model to data. So the way that we do that is basically if you...oh, by the way, I forgot to mention something. We use Docker Compose as our application definition. So we extrapolate from Docker Compose and transpile into best practice Kubernetes YAMLs. So there is a little bit of inferring and magic we do in certain places. And one of the places we do that is if you have a named volume...sorry, am I getting too technical, or is this --? CHAD: Not for me. And in fact, I have follow-up questions about [laughs] why you have that approach of converting. BENJIE: We will dive into that in a second. And I have a whole bunch of redhead friends that make fun of me about Compose all the time, but I stick to my guns on that one. But I'm happy to talk about that. At high level, if you indicate to Shipyard this is a persistent volume that we want to make sure that child environments get, then we will do an instant snapshot. And we will actually provide that to the generated child ephemeral environment. And ostensibly, what that does is it allows you to test data migrations as well on these ephemeral environments. Now, to go back to your initial question, we encourage...and we're working on some partnerships actually with some interesting companies. But we encourage people to specifically have their main data set on main be ostensibly a copy of whatever the good data set is. But obviously, you're responsible for pulling out your own PII and all the confidential stuff there. But the key thing here is you're maintaining one environment with the right data on it. And then all of the subsequent generated ephemeral environments inherit that and can then change that. CHAD: Yeah, that's cool. That solves a real pain point that I've had in the past when trying to work this way. BENJIE: One company that I think is really interesting around this space is Tonic.ai. And we're actually working on some stuff with them, I think. But we share an investor, so that's why I know them, for disclaimer purposes. But they're great. And they have some really cool tooling around mapping your database to PII and automatic detection of certain types of information that you don't want pushed into your staging servers and to your developers' hands. So that's one to check out, too, if you're looking for data help. CHAD: Cool. So do you want to get back to this Docker question? Why that approach of converting the Docker Compose into YAML for Kubernetes? BENJIE: So this is quite a controversial topic. CHAD: [laughs] BENJIE: But I will tell you where it came from. Hearkening back to our origin story, what we saw was we saw a pattern of a lot of companies going a little bit too all-in in Kubernetes; let's just put it that way, where every single one of the developers is running minikube or even K3s or K3d or whatever. And all of a sudden, the DevOps people and the SRE people in the organization are spending most of their time supporting developers in local development environments. So early on in that consulting game, we realized we don't want to do that. So if you want to work with us, we think you can use Docker Compose for most things. Now, that's obviously not always the case. There are some companies and applications that have hundreds of microservices. So obviously, Docker Compose is not a very realistic fit for those people. But the majority of people can pretty much encapsulate their application in Docker Compose. So that's one thing. The other thing is I mentioned to you that I'm a DevOps engineer for years. I'm sick of new YAML formats or specifications. So I have a saying, "Not another YAML, I say nay." My co-founder, Peter, hates when I say that, but whatever, I like it. CHAD: [laughs] BENJIE: So that's another piece of this. And then the biggest thing here is that we look at Docker Compose as rabbit ears on a television set. So you know, like a 98-year-old grandmother can somehow stand on one foot and hold the antenna the right way, and it's static. The picture is perfect, and they can watch...I don't know why I'm saying Jay Leno. I don't think it's on the air anymore. CHAD: [laughs] BENJIE: Sticking with the grandma reference, humans are really good at figuring out stuff like that. [laughs] And that's kind of what Docker compose is. It's kind of like if you can make it work locally, Shipyard is going to take care of the rest and clean up a bunch of stuff for you. So that's how we look at it. Admittedly, we do have some Helm stuff we're working on and some Kustomize (with a K) stuff. And there are a whole lot of other interesting things out there. But frankly, we haven't run into problems with our current approach. And when we have tried to ingest raw manifests and stuff like that, other issues tend to arise. So we use Compose as a funnel to be very opinionated about our Kubernetes deployments. CHAD: Well, I'm a big believer in, especially in early days having opinions about things. And it sounds like, with this particular opinion, you not only can help people at different stages and say that "This is good enough," but you're also casting a wide net for what people can do. You're not cutting people off because they already use Kustomize or something like that. BENJIE: Yeah. And a lot of it is about accessibility. And so it's proven to be a pretty interesting thing. We didn't think that we were going to go this far with it. [laughs] We really thought that we were going to get in trouble soon. But it's pretty cool how it's going. And also, I will do a shout-out to the Docker Compose community. They're picking up some steam here. I think a lot of people are realizing that it's a pretty good spec for most use cases. So I know that Docker released somewhat recently you don't have to do Docker-Compose anymore. It's just Docker Compose. And there are all kinds of Compose specifications stuff that I think is worth checking out. Mid-roll Ad I wanted to tell you all about something I've been working on quietly for the past year or so, and that's AgencyU. AgencyU is a membership-based program where I work one-on-one with a small group of agency founders and leaders toward their business goals. We do one-on-one coaching sessions and also monthly group meetings. We start with goal setting, advice, and problem-solving based on my experiences over the last 18 years of running thoughtbot. As we progress as a group, we all get to know each other more. And many of the AgencyU members are now working on client projects together and even referring work to each other. Whether you're struggling to grow an agency, taking it to the next level and having growing pains, or a solo founder who just needs someone to talk to, in my 18 years of leading and growing thoughtbot, I've seen and learned from a lot of different situations, and I'd be happy to work with you. Learn more and sign up today at thoughtbot.com/agencyu. That's A-G-E-N-C-Y, the letter U. CHAD: So to get a little bit meta for a minute, how do you use Shipyard on Shipyard? BENJIE: The ultimate dog food. That is one of the biggest selling points to our own engineering team when recruiting. We've got a pretty spectacular team that comes from some pretty awesome companies. And people sometimes ask me, "Hey, how did you get these engineers?" And honestly, I think the answer is dogfooding. Because what we're building is what every DevOps engineer sets out to build every time they start their job, in my opinion. You always want this ephemeral type of elastic environments are only on when you need them to be on. I didn't discuss this, but we also have functionality that we call SLV or Since Last Visit. So we know the last time someone went to one of these environments, and we'll turn it off for you. And then, obviously, it's very quick to turn it back on when needed. So there are cost savings. There are all kinds of stuff there. But ultimately, we're building the ultimate DevOps tool. And so we use Shipyard to run Shipyard. We use it in our QA process. We use it in our end-to-end testing process. And we also use it in our production process as well. We have some of our...we do have a production offering, and we use that ourselves for our stuff. So it's a very recursive conversation around that. And sometimes, when I'm actually doing a demo for various people, the only way to show or the only good demo I have of certain functionality is to actually show the Shipyard organization itself in Shipyard. And I get very recursively tied up, and people get confused. And it's always a bad idea. CHAD: [laughs] Yeah, you have to queue the Inception music. BENJIE: Yeah, exactly. We're at the third level. We're at the ice palace or whatever, ice hideout at this point. That's from the movie Inception for those that don't know what we're talking about. CHAD: [laughs] Yeah, that's really cool. I imagine that...sometimes when I'm working on a project, and you get down to the instrumentation level, to those levels, it can be difficult to run the system on the system. Have there been particular challenges? It's not just a normal web app; I guess is the way of saying that. What Shipyard is isn't just a normal web app. BENJIE: Yeah, one of the things that we do is that we have a pretty robust security posture, so every single one of our customers gets their own cluster. And so our security model is using the hypervisor basically, which, by the way, for anyone looking at Kubernetes, forget Shipyard for a second. Please understand that if you're in a shared namespace anything, our back is great, but don't do it. There's a CVE around on the corner, I promise you. Don't do it. Anyway. CHAD: [laughs] That's a good PSA for people. BENJIE: Yeah, right? [laughs] Yeah. So some of the cool challenges we've had is we early on, we definitely had some stuff where if we did a bad release, we would break our own ability to fix our own releases. So that was that way early on. We figured that one out very early. I think that was even before we were a product even. That was just a few sleepless nights of Peter and myself being like, oh God; we got to fix this so that we don't screw up this client's website. So that's been interesting. I mean, that was really it. And my co-founder, Peter, is listening to this, and he's like, there are 4,000 different things I've fixed over the last few years that were a problem around this, and I can't bring them up. But there's a lot, and I don't know what they are. And Peter is very good at fixing them. So that speaks to my co-founder and the rest of the team. CHAD: So you mentioned that March of 2020 happened, hell froze over. And you found yourself thinking you're going to take a different path and fundraise and become a funded company. How difficult did you find fundraising in that environment, or was it easy? BENJIE: It was real tough at the beginning there. For one, I have no idea what I'm doing. [laughter] That's just the truth. Maybe I should say that in the past tense. I had no idea what I was doing. I still feel like I have no idea what I'm doing. But like I said, I come from a technical side, and I'm a bit of an engineer. So if a VC asked me a question and the answer is yes, but I have to qualify it with some weird edge case that I came up with. That's not a great look for these types of pitch meetings. So I would suggest people not overengineer answers to questions, yes or no works very often. So it was challenging. But also, at the time, I'll say that there was definitely some predatory term sheets going around because this was really early, and we had no idea. And I was a fool...I wasn't a fool, but I had no idea. We're running this consulting company, and I'm like, oh my God, all my customers are funded. They're all going to go away. We had some pretty large customers. It was very irrational looking back. But it was a crazy time. Also, I should mention that we're in New York. So things were heightened a lot more also in March of 2020. It was very intense, and so I had to learn a lot. And basically, the realization like, oh, if the world becomes remote, software is just going to go crazy had not seeped into my brain quite yet in March or April. So did a lot of learning that way. We were very fortunate to have some really helpful people along that path and eventually figured it out. I will say, funny story, I literally didn't have a pitch for three months. I would just do a demo and talk about stuff. And then a friend of mine was like, "Oh, what's your pitch?" And I was like, "I do a demo, and I talk about it." So he's like, "Dude, you got to have a pitch." So that helped a lot once I figured out [laughs] that I needed a pitch. CHAD: It did help. So you recommend people have a pitch. BENJIE: I would say that that is a positive, yes. Having a pitch is helpful. I know that that's a ridiculous statement here, but I literally didn't have...I just didn't think about what's my pitch? CHAD: Well, I think it's simultaneously a ridiculous thing but also there exist in the world things that people do just because that's the way that they're done. And so it's valid, I think to say, "Do we really need that? Can we get by without it?" And if the lesson learned there is actually there's a reason why people do it and it is valuable, that's a valuable lesson. It's too bad you had to go through it to discover it. BENJIE: Well, yeah. I look back fondly at that. And I wouldn't say I was being contrarian. I was just kind of being a jackass, frankly. But I learned a lot. And honestly, in the end, I couldn't be happier. I'm pretty anti-VC. Everyone knows that about me. I like to make fun of them and all these things. But I couldn't be happier with our investors, and they've been unbelievably supportive. And so that's been a super positive. The one thing I would say to anyone listening to this podcast that has to go out and raise money is you got to get really good at letting things roll off your shoulder. As an engineer, it's really hard for me to deal with any level of rejection because I'm like, oh, it works, or it doesn't work. Oh, you found this edge case that I didn't think about? Oh, you got me, but I'll fix it now, and now it's fine. That's not the way that fundraising works. You have certain conversations, and you feel super positive. And then, all of a sudden, you don't hear back from this person for weeks at a time. You have other conversations where you think that it was the worst thing that you've ever done. And the next day, you get a term sheet. I had one pitch...this is when I knew how to do a pitch. This was a few months in. I had this one pitch, and it was all virtual, and it was very early days in our remote world. And there were four partners on this call and a few associates or whatever. And I do the pitch, but everyone is muted on Zoom for 45 minutes. Now, it's pretty clear from our conversation that I talk a lot. So it's not the end of the world. But I had no idea what was going on. And I just thought that I had bombed it. It was horrible, all these things. And the next day, I got an email, and it was three introductions to amazing opportunities. And two of them actually panned out. We didn't end up going with that fund. But I just thought it was hilarious that I was convinced that I shouldn't be doing this, and it was the opposite. So you never know. That's the other thing I learned is you literally can never know what's going to come of any particular meeting in the VC fundraising world. CHAD: So how long did it take you from the point that you decided you were going to do this and you were going to start trying to fundraise to actually getting the investment in the bank? BENJIE: Probably four to six months. We obviously had some opportunities, but as we went through this process, realizing that having the right partner for the next 7 to 10 years was really important. And we ended up with our lead. I can't believe I'm talking positively about a VC on a podcast but whatever. CHAD: [laughs] BENJIE: Our lead, Owen Davis from Contour Venture...Contour is like this New York fund that they do everything, but no one knows their name. Oh, he's going to love that I said that but whatever. CHAD: [laughs] BENJIE: They're great. He's great. And he's the dream investor for us to lead. And then we have other...and I'll mention Shruti over at Array and the folks at Heavybit and Work-Bench as well. They're all in this round, and it all came together. And I was a little picky. So we kind of took our time. And I suggest that if you have that luxury, which we did because we already had a successful consulting business, make sure you know who you're getting into business with for sure. And we got very lucky with that. CHAD: So how much time while you were fundraising did you personally work on that as opposed to other things for the product or the business? BENJIE: I should have probably put a little bit more time to the fundraising. To be honest with you, I would say I probably put 50% to 60% of my energy into the fundraise, and then the 40% was all building product. As an engineer, you have a really frustrating call, or you think you're doing well, and then you're not, or vice versa. So for me, I would retreat into building. And so I probably retreated into building a little more than I should have to be frank, [laughs] but it worked out in the end. CHAD: While you were doing that, you supported yourselves from the consulting revenue. BENJIE: Yeah, for the most part. We still had active clients. So we converted most of those...actually all of those into Shipyard customers. And they were very supportive in that process, by the way, doing due diligence calls for us. They were all very helpful. CHAD: And how did you decide how much money you should be seeking to raise? BENJIE: Ultimately, that was something I struggle with just because I really want to know what I'm going to do and what the plan is. And one of the lessons that I've learned as a CEO now is your job is basically to make unbelievably important, critical decisions with little to no data and just hope you're making the right one and then adjust quickly if you're not. So understanding when you've made the wrong decision. But ultimately, to answer your question, I built out a spreadsheet. I had a wish list of engineers that I knew or positions that we needed to fill, probably underestimated some of the product marketing needs that we would need to do. But built out a model and then figured, hey, how can we get there in 18 to 24 months to get to the next round? Because you really do have to be making sure that you can...I mentioned the hamster wheel early on; maybe that's too negative of an analogy there. But you have to be thinking about your next round. And so you have to get to what metrics you want to hit. And you just work backwards from there. CHAD: At what point along the way...you mentioned earlier that your customers tend to be larger companies. At what point along the way did you discover who your ideal customers were? BENJIE: I think we're still discovering that. We're still figuring that out. But for me, this tool Shipyard, and I've seen it, if you start using a tool like Shipyard from day one, the gains and the benefits are just insane. We had one company that started off from scratch with us. And within two months, they had extremely robust software development lifecycle, production deploys, all kinds of stuff. And they've been going now for years...not years but a year a half or so with us and super successful. So I always wanted to be like, oh, startup X with two engineers you should use us. And the more we talk to them, the more conversations we had. We're just like, this is not a DevOps priority. DevOps is not the priority. CHAD: Especially in those early days, I feel like there's such a tendency, especially from engineers, to say, "Oh, that's not that complicated. I can do that," or "We don't really need that. Let's piece together this." BENJIE: Yeah, that's exactly right. So then, as we started to talk more and more and understand what people were doing, we just fell into this ICP or Initial Customer Profile of more complex teams that are really facing these problems. I mean, specifically, when you get to a certain size, a bad release costs you a lot of money, customer success, customers that are leaving you, frustrated sales execs, frustrated product people, frustrated QA people. So it's when you get to these more complex levels is when you need this type of tooling. Now, one thing Shipyard released actually very, very quietly, but you know, it's released. We released a 30-day free trial. It's kind of like our light tier, so people can start doing it. And we're starting to see some people at the earlier stage companies starting to do this, which is exciting to us. But our goal as a company is absolutely to figure out how to get this to the masses because ephemeral environments is the paradigm of the future. I mean, it's the paradigm of the present with the big tech companies. And it's now coming down to the rest of us. And so instead of having to hire five DevOps people to build the system out for you for six months, you hire one DevOps person, and that DevOps person shifts into an SRE role, not entirely, but their concerns are more about reliability of the actual site rather than reliability for developer environments or QA environments or staging environments. So we think that's really powerful. One thing that I probably should have mentioned way sooner is we have a community site that we've donated, and we're more than happy to have some pull requests come in. We've had a few. ephemeralenvironments.io, yeah, I don't know how to spell ephemeral either, but you can Google it. It will come up. CHAD: [laughs] BENJIE: ephemeralenvironments.io, and it goes through the different use cases of ephemeral environments and where there's value there. So that's kind of the goal with all this. CHAD: So what are you working on now? And what is the next stage for the company, I guess also from a product perspective? But also, you mentioned that hamster wheel. [laughter] You're coming up on 18 months of being on that wheel, right? BENJIE: We are. One thing is we've had some success, so our revenue is pretty solid, but no rest for the weary. But we're probably going to go out and bring in some more capital pretty soon. And the reason for that, because that's always the important thing to me, is that we have some pretty spectacular design partners, some pretty big logos, all these things. The product is there. The product is killing it. I couldn't be more proud of the product and the team. We've also started to build out the core team and couldn't be more proud of that. And so now we need to accelerate and figure out our next steps and how to bring this to the masses. And ultimately, the vision of Shipyard is to make all this stuff move a lot faster, bring velocity to teams, and all that stuff. And we believe that ephemeral environments are a huge component of that. So we're probably in the next few months going to probably go out and look at our financing options. I will say that the market has been a little insane. So I feel like all the education that I got in 2022 is probably out the window because some of these valuations and other stuff seems like it's a frothy market, as they say, but we'll be doing that. And we're really going to probably double down on figuring out what the community needs and where the value is for the community, so both with ephemeralenvironments.io. But also, there are some really cool internal tools that we've built that solve some of the issues within the Kubernetes ecosystem. Okay, that's a strong word. They help a lot. I'm never going to say I've solved anything in Kubernetes. CHAD: [laughs] BENJIE: But they help a lot with understanding why the state of your application is maybe not where you want it to be. And so, we'd like to probably contribute a bit more back to CNCF, in particular, but open source in general. So continue to build the team to work on that. And then, obviously, pushing forward with product and some pretty cool stuff we have on the roadmap that we're really excited about. CHAD: Awesome. Well, I wish you all the best with that. If folks want to find out more about Shipyard, follow along with you, get in touch; where are the best places for them to do that? BENJIE: Really, shipyard.build is our website. And that is probably the best place to try it and also to contact us. Our Twitter is @shipyardbuild twitter.com/shipyardbuild. Personally, I'm not a fan of Twitter. So I personally don't use Twitter, but we do as a company. And I think that our Twitter and our website are probably the best things to reach out to, and obviously, sales@shipyard.build you can send an email there. But I think you'll probably find the information you're looking for on the website. And if not, please let us know what's missing. CHAD: And you mentioned the free trial. So I feel like that's a great thing for people who want to get more into the product; they can give it a try, right? BENJIE: Yeah. And one thing to note about the free trial the reason that it's kind of cool is it's your own cluster. You get your own cluster. It's completely single tenant. It's pretty dope. It's pretty cool. And you can really take it for a spin. I would suggest, I mean, we've had a lot of success with companies that are using Docker Compose already to just dive in there and get their application running. But I would say that we have some pretty cool starter apps as well. They're linked in our docs and our GitHub. Just seeing the power of this through our starter applications has also been a great experience for a lot of people. So I'd suggest taking a look at that. Oh, and I should plug a podcast that I'm a co-host of, Kubelist. I do that with Marc Campbell from Replicated, where we interview CNCF open-source projects all the time. That's why I got to be careful pretending like I'm solving anything. There are a lot of options in the Kubernetes landscape. CHAD: Wonderful. You can subscribe to the show and find notes and a full transcript of this episode at giantrobots.fm. If you have questions or comments, email us at hosts@giantrobots.fm. And you can find me on Twitter @cpytel. This podcast is brought to you by thoughtbot and produced and edited by Mandy Moore. Thanks for listening and see you next time. ANNOUNCER: This podcast was brought to you by thoughtbot. thoughtbot is your expert design and development partner. Let's make your product and team a success. Special Guest: Benjie De Groot.
ESG in the Mortgage Industry Episode Description: In this episode, Senior Manager John Pomaranski and Partner Matt Seu discuss ESG (Environmental, Social, and Governance) and what it means for the future of the mortgage industry. Listen to learn:- The global presence of ESG and how this affects the mortgage space.- The demand for ESG securities and the effects on the greater mortgage landscape from primary mortgage markets to the commercial and multifamily space. - What the MISMO Community of Practice does and how to get involved. About John Pomaranski, PMP:- Senior Manager at Actualize Consulting with over 18 years of experience. John's expertise includes project management, business requirements, and UAT for accounting system implementations. He specializes in financial system implementations, mortgage loan accounting and communication, and software development life cycle standards. He is a member of MISMO's Community of Practice.- Email: jpomaranski@actualizeconsulting.com About Matt Seu: - Partner at Actualize Consulting with over 31 years of experience. He is a Subject Matter Expert in mortgage technology platforms and products. Prior to his time at Actualize, he served as a Vice President for Freddie Mac where he focused on large scale business and technology change efforts.- Email: mseu@actualizeconsulting.com Thanks for listening to this episode of the Actualizing Success Podcast! We hope you enjoyed the discussion and come back for more. In the meantime, don't forget to rate this episode and leave a review. Links & More Info:Website: www.actualizeconsulting.comIf you have any questions or comments, we'd love to hear from you. You can contact us at podcast@actualizeconsulting.comMISMO's Community of Practice: www.mismo.org/get-started/participate-in-a-mismo-workgroup
Alexander Pugh is a software engineer at Albertsons. He has worked in Robotic Process Automation and the cognitive services industry for over five years.This episode originally aired on Software Engineering Radio.Related LinksAlexander Pugh's personal siteEnterprise RPA Solutions Automation Anywhere UiPath blueprism Enterprise "Low Code/No Code" API Solutions appian mulesoft Power Automate RPA and the OS Office primary interop assemblies Office Add-ins documentation Task Scheduler for developers The Component Object Model The Document Object Model TranscriptYou can help edit this transcript on GitHub.[00:00:00] Jeremy: Today, I'm talking to Alexander Pugh. He's a solutions architect with over five years of experience working on robotic process automation and cognitive services. Today, we're going to focus on robotic process automation. Alexander welcome to software engineering radio. [00:00:17] Alex: Thank you, Jeremy. It's really good to be here. [00:00:18] Jeremy: So what does robotic process automation actually mean? [00:00:23] Alex: Right. It's a, it's a very broad nebulous term. when we talk about robotic process automation, as a concept, we're talking about automating things that humans do in the way that they do them. So that's the robotic, an automation that is, um, done in the way a human does a thing.Um, and then process is that thing, um, that we're automating. And then automation is just saying, we're turning this into an automation where we're orchestrating this and automating this. and the best way to think about that in any other way is to think of a factory or a car assembly line. So initially when we went in and we, automated a car or factory, automation line, what they did is essentially they replicated the process as a human did it. So one day you had a human that would pick up a door and then put it on the car and bolt it on with their arms. And so the initial automations that we had on those factory lines were a robot arm that would pick up that door from the same place and put it on the car and bolt it on there.Um, so the same can be said for robotic process automation. We're essentially looking at these, processes that humans do, and we're replicating them, with an automation that does it in the same way. Um, and where we're doing that is the operating system. So robotic process automation is essentially going in and automating the operating system to perform tasks the same way a human would do them in an operating system.So that's, that's RPA in a nutshell, Jeremy: So when you say you're replicating something that a human would do, does it mean it has to go through some kind of GUI or some kind of user interface?[00:02:23] Alex: That's exactly right, actually. when we're talking about RPA and we look at a process that we want to automate with RPA, we say, okay. let's watch the human do it. Let's record that. Let's document the human process. And then let's use the RPA tool to replicate that exactly in that way.So go double click on Chrome, launch that click in the URL line and send key in www.cnn.com or what have you, or servicenow hit enter, wait for it to load and then click, you know, where you want to, you know, fill out your ticket for service. Now send key in. So that's exactly how an RPA solution at the most basic can be achieved.Now and any software engineer knows if you sit there and look over someone's shoulder and watch them use an operating system. Uh, you'll say, well, there's a lot of ways we can do this more efficiently without going over here, clicking that, you know, we can, use a lot of services that the operating system provides in a programmatic way to achieve the same ends and RPA solutions can also do that.The real key is making sure that it is still achieving something that the human does and that if the RPA solution goes away, a human can still achieve it. So if you're, trying to replace or replicate a process with RPA, you don't want to change that process so much so that a human can no longer achieve it as well.that's something where if you get a very technical, and very fluent software engineer, they lose sight of that because they say, oh, you know what? There's no reason why we need to go open a browser and go to you know, the service now portal and type this in when I can just directly send information to their backend.which a human could not replicate. Right? So that's kind of where the line gets fuzzy. How efficiently can we make this RPA solution? [00:04:32] Jeremy: I, I think a question that a lot of people are probably having is a lot of applications have APIs now. but what you're saying is that for it to, to be, I suppose, true RPA, it needs to be something that a user can do on their own and not something that the user can do by opening up dev tools or making a post to an end point.[00:04:57] Alex: Yeah. And so this, this is probably really important right now to talk about why RPA, right? Why would you do this when you could put on a server, a a really good, API ingestion point or trigger or a web hook that can do this stuff. So why would we, why would we ever pursue our RPA?There there's a lot of good reasons for it. RPA is very, very enticing to the business. RPA solutions and tools are marketed as a low code, no code solution for the business to utilize, to solve their processes that may not be solved by an enterprise solution and the in-between processes in a way.You have, uh, a big enterprise, finance solution that everyone uses for the finance needs of your business, but there are some things that it doesn't provide for that you have a person that's doing a lot of, and the business says, Okay. well, this thing, this human is doing this is really beneath their capability. We need to get a software solution for it, but our enterprise solution just can't account for it. So let's get a RPA capability in here. We can build it ourselves, and then there we go. So there, there are many reasons to do that. financial, IT might not have, um, the capability or the funding to actually build and solve the solution. Or it it's at a scale that is too small to open up, uh, an IT project to solve for. Um, so, you know, a team of five is just doing this and they're doing it for, you know, 20 hours a week, which is uh large, but in a big enterprise, that's not really. Maybe um, worth building an enterprise solution for it. or, and this is a big one. There are regulatory constraints and security constraints around being able to access this or communicate some data or information in a way that is non-human or programmatic. So that's really where, um, RPA is correctly and best applied and you'll see it most often.So what we're talking about there is in finance, in healthcare or in big companies where they're dealing with a lot of user data or customer data in a way. So when we talk about finance and healthcare, there are a lot of regulatory constraints and security reasons why you would not enable a programmatic solution to operate on your systems. You know, it's just too hard. We we're not going to expose our databases or our data to any other thing. It would, it would take a huge enterprise project to build out that capability, secure that capability and ensure it's going correctly. We just don't have the money the time or the strength honestly, to afford for it.So they say, well, we already have. a user pattern. We already allow users to, to talk to this information and communicate this information. Let's get an RPA tool, which for all intents and purposes will be acting as a user. And then it can just automate that process without us exposing to queries or any other thing, an enterprise solution or programmatic, um, solution.So that's really why RPA, where and why you, you would apply it is there's, there's just no capability at enterprise for one reason or another to solve for it. [00:08:47] Jeremy: as software engineers, when we see this kind of problem, our first thought is, okay, let's, let's build this custom application or workflow. That's going to talk to all these API APIs. And, and what it sounds like is. In a lot of cases there just isn't the time there just isn't the money, to put in the effort to do that.And, it also sounds like this is a way of being able to automate that. and maybe introducing less risk because you're going through the same, security, the same workflow that people are doing currently. So, you know, you're not going to get into things that they're not supposed to be able to get into because all of that's already put in place.[00:09:36] Alex: Correct. And it's an already accepted pattern and it's kind of odd to apply that kind of very IT software engineer term to a human user, but a human user is a pattern in software engineering. We have patterns that do this and that, and, you know, databases and not, and then the user journey or the user permissions and security and all that is a pattern.And that is accepted by default when you're building these enterprise applications okay.What's the user pattern. And so since that's already established and well-known, and all the hopefully, you know, walls are built around that to enable it to correctly do what it needs to do. It's saying, Okay. we've already established that. Let's just use that instead of. You know, building a programmatic solution where we have to go and find, do we already have an appropriate pattern to apply to it? Can we build it in safe way? And then can we support it? You know, all of a sudden we, you know, we have the support teams that, you know, watch our Splunk dashboards and make sure nothing's going down with our big enterprise application.And then you're going to build a, another capability. Okay. WHere's that support going to come from? And now we got to talk about change access boards, user acceptance testing and, uh, you know, UAT dev production environments and all that. So it becomes, untenable, depending on your, your organization to, to do that for things that might fall into a place that is, it doesn't justify the scale that needs to be thrown upon it.But when we talk about something like APIs and API exist, um, for a lot of things, they don't exist for everything. And, a lot of times that's for legacy databases, that's for mainframe capability. And this is really where RPA shines and is correctly applied. And especially in big businesses are highly regulated businesses where they can't upgrade to the newest thing, or they can't throw something to the cloud.They have a, you know, their mainframe systems or they have their database systems that have to exist for one reason or the other until there is the motivation and the money and the time to correctly migrate and, and solve for them. So until that day, and again, there's no, API to, to do anything on a, on a mainframe, in this bank or whatnot, it's like, well, Okay. let's just throw RPA on it.Let's, you know, let's have a RPA do this thing, uh, in the way that a human does it, but it can do it 24 7. and an example, or use cases, you work at a bank and, uh, there's no way that InfoSec is going to let you query against this database with, your users that have this account or your customers that have this no way in any organization at a bank.Is InfoSec going to say, oh yeah. sure. Let me give you an Odata query, you know, driver on, you know, and you can just set up your own SQL queries and do whatever they're gonna say no way. In fact, how did you find out about this database in the first place and who are you.How do we solve it? We, we go and say, Okay. how does the user get in here well they open up a mainframe emulator on their desktop, which shows them the mainframe. And then they go in, they click here and they put this number in there, and then they look up this customer and then they switch this value to that value and they say, save.And it's like, okay. cool. That's that RPA can do. And we can do that quite easily. And we don't need to talk about APIs and we don't need to talk about special access or doing queries that makes, you know, Infosec very scared. you know, a great use case for that is, you know, a bank say they, they acquire, uh, a regional bank and they say, cool, you're now part of our bank, but in your systems that are now going to be a part of our systems, you have users that have this value, whereas in our bank, that value is this value here. So now we have to go and change for 30,000 customers this one field to make it line up with our systems. Traditionally you would get a, you know, extract, transform load tool an ETL tool to kind of do that. But for 30,000 customers that might be below the threshold, and this is banking. So it's very regulated and you have to be very, very. Intentional about how you manipulate and move data around.So what do we have to do? okay. We have to hire 10 contractors for six months, and literally what they're going to do eight hours a day is go into the mainframe through the simulator and customer by customer. They're going to go change this value and hit save. And they're looking at an Excel spreadsheet that tells them what customer to go into.And that's going to cost X amount of money and X, you know, for six months, or what we could do is just build a RPA solution, a bot, essentially that goes, and for each line of that Excel spreadsheet, it repeats this one process, open up mainframe emulator, navigate into the customer profile and then changes value, and then shut down and repeat.And It can do that in one week and, and can be built in two, that's the, the dream use case for RPA and that's really kind of, uh, where it would shine.[00:15:20] Jeremy: It sounds like the. best use case for it is an old system, a mainframe system, in COBOL maybe, uh, doesn't have an API. And so, uh, it makes sense to rather than go, okay, how can we get directly into the database?[00:15:38] Alex: How can we build on top of it? Yeah,[00:15:40] Jeremy: we build on top of it? Let's just go through the, user interface that exists, but just automate that process. And, the, you know, the example you gave, it sounds very, very well-defined you're gonna log in and you're going to put in maybe this ID, here's the fields you want to get back.and you're going to save those and you didn't have to make any real decisions, I suppose, in, in terms of, do I need to click this thing or this thing it's always going to be the same path to, to get there.[00:16:12] Alex: exactly. And that's really, you need to be disciplined about your use cases and what those look like. And you can broadly say a use case that I am going to accept has these features, and one of the best ways to do that is say it has to be a binary decision process, which means there is no, dynamic or interpreted decision that needs to, or information that needs to be made.Exactly like that use case it's very binary either is, or it isn't you go in you journey into there. and you change that one thing and that's it there's no oh, well this information says this, which means, and then I have to go do this. Once you start getting in those if else, uh, processes you're, you're going down a rabbit hole and it could get very shaky and that introduces extreme instability in what you're trying to do.And also really expands your development time cause you have to capture these processes and you have to say, okay. tell me exactly what we need to build this bot to do. And for, binary decision processes, that's easy go in here, do this, but nine times out of 10, as you're trying to address this and solution for it, you'll find those uncertainties.You'll find these things where the business says, oh, well, yeah. that happens, you know, one times out of 10 and this is what we need to do. And it's like, well, that's going to break the bot. It, you know, nine times out of 10, this, this spot is going to fall over. this is now where we start getting into, the machine learning and AI, realm.And why RPA, is classified. Uh, sometimes as a subset of the AI or machine learning field, or is a, a pattern within that field is because now that you have this bot or this software that enables you to do a human process, let's enable that bot to now do decision-making processes where it can interpret something and then do something else.Because while we can just do a big tree to kind of address every capability, you're never going to be able to do that. And also it's, it's just a really heavy, bad way to build things. So instead let's throw in some machine learning capability where it just can understand what to do and that's, you know, that's the next level of RPA application is Okay. we've got it. We've, we've gone throughout our organization. We found every kind of binary thing, that can be replaced with an RPA bot. Okay.Now what are the ones that we said we couldn't do? Because it had some of that decision-making that, required too much of a dynamic, uh, intelligence behind it. And let's see if we can address those now that we have this. And so that's, that's the 2.0, in RPA is addressing those non-binary, paths. I would argue that especially in organizations that are big enough to justify bringing in an RPA solution to solve for their processes. They have enough binary processes, binary decision processes to keep them busy.Some people, kind of get caught up in trying to right out the gate, say, we need to throw some machine learning. We need to make these bots really capable instead of just saying, well, we we've got plenty of work, just changing the binary processes or addressing those. Let's just be disciplined and take that, approach.Uh, I will say towards RPA and bots, the best solution or the only solution. When you talk about building a bot is the one that you eventually turn off. So you can say, I built a bot that will go into our mainframe system and update this value. And, uh, that's successful.I would argue that's not successful. When that bot is successful is when you can turn it off because there's an enterprise solution that addresses it. and, and you don't have to have this RPA bot that lives over here and does it instead, you're enterprise, capability now affords for it. And so that's really, I think a successful bot or a successful RPA solution is you've been able to take away the pain point or that human process until it can be correctly addressed by your systems that everyone uses. [00:21:01] Jeremy: from, the business perspective, you know, what are some of the limitations or long-term problems with, with leaving an RPA solution in place?[00:21:12] Alex: that's a, that's a good question. Uh, from the business there, isn't, it's solved for. leaving it in place is other than just servicing it and supporting it. There's no real issue there, especially if it's an internal system, like a mainframe, you guys own that. If it changes, you'll know it, if it changes it's probably being fixed or addressed.So there's no, problem. However, That's not the only application for RPA. let's talk about another use case here, your organization, uses, a bank and you don't have an internal way to communicate it. Your user literally has to go to the bank's website, log in and see information that the bank is saying, Hey, this is your stuff, right?The bank doesn't have an API for their, that service. because that would be scary for the bank. They say, we don't want to expose this to another service. So the human has to go in there, log in, look at maybe a PDF and download it and say, oh, Okay.So that is happens in a browser. So it's a newer technology.This isn't our mainframe built in 1980. You know, browser based it's in the internet and all that, but that's still a valid RPA application, right? It's a human process. There's no API, there's no easy programmatic way to, to solution for it. It would require the bank and your it team to get together and, you know, hate each other. Think about why this, this is so hard. So let's just throw a bot on it. That's going to go and log in, download this thing from the bank's website and then send it over to someone else. And it's going to do that all day. Every day. That's a valid application. And then tomorrow the bank changes its logo. And now my bot is it's confused.Stuff has shifted on the page. It doesn't know where to click anymore. So you have to go in and update that bot because sure enough, that bank's not going to send out an email to you and saying, Hey, by the way, we're upgrading our website in two weeks. Not going to happen, you'll know after it's happened.So that's where you're going to have to upgrade the bot. and that's the indefinite use of RPA is going to have to keep until someone else decides to upgrade their systems and provide for a programmatic solution that is completely outside the, uh, capability of the organization to change. And so that's where the business would say, we need this indefinitely.It's not up to us. And so that is an indefinite solution that would be valid. Right? You can keep that going for 10 years as long, I would say you probably need to get a bank that maybe meets your business needs a little easier, but it's valid. And that would be a good way for the business to say yes, this needs to keep running forever until it doesn't.[00:24:01] Jeremy: you, you brought up the case of where the webpage changes and the bot doesn't work anymore. specifically, you're, you're giving the example of finance and I feel like it would be basically catastrophic if the bot is moving money to somewhere, it shouldn't be moving because the UI has moved around or the buttons not where it expects it to be.And I'm kind of curious what your experience has been with that sort of thing.[00:24:27] Alex: you need to set organizational thresholds and say, this is this something this impacting or something that could go this wrong. It is not acceptable for us to solve with RPA, even though we could do it, it's just not worth it. Some organizations say that's anything that touches customer data healthcare and banking specialists say, yeah, we have a human process where the human will go and issue refunds to a customer, uh, and that could easily be done via RPA solution, but it's fraught with, what, if it does something wrong, it's literally going to impact.Uh, someone somewhere they're their moneys or their, their security or something like that. So that, that definitely should be part of your evaluation. And, um, as an organization, you should set that up early and stick to it and say, Nope, this is outside our purview. Even we can do it. It has these things.So I guess the answer to that is you should never get to that process, but now we're going to talk about, I guess, the actual nuts and bolts of how RPA solutions work and how they can be made to not action upon stuff when it changes or if it does so RPA software, by and large operates by exposing the operating system or the browsers underlying models and interpreting them.Right. So when we talk about something like a, mainframe emulator, you have your RPA software on Microsoft windows. It's going to use the COM the component operating model, to see what is on the screen, what is on that emulator, and it's gonna expose those objects. to the software and say, you can pick these things and click on that and do that.when we're talking about browser, what the RPA software is looking at is not only the COM the, the component object model there, which is the browser, itself. But then it's also looking at the DOM the document object model that is the webpage that is being served through the browser. And it's exposing that and saying, these are the things that you can touch or, operate on.And so when you're building your bots, what you want to make sure is that the uniqueness of the thing that you're trying to access is something that is truly unique. And if it changes that one thing that the bot is looking for will not change. So we let's, let's go back to the, the banking website, right?We go in and we launch the browser and the bot is sitting there waiting for the operating system to say, this process is running, which is what you wanted to launch. And it is in this state, you know, the bot says, okay. I'm expecting this kind of COM to exist. I see it does exist. It's this process, and it has this kind of name and cool Chrome is running. Okay. Let's go to this website. And after I've typed this in, I'm going to wait and look at the DOM and wait for it to return this expected a webpage name, but they could change their webpage name, the title of it, right. They can say, one day can say, hello, welcome to this bank. And the next day it says bank website, all of a sudden your bot breaks it no longer is finding what it was told to expect.So you want to find something unique that will never change with that conceivably. And so you find that one thing on the DOM on the banking website, it's, you know, this element or this tag said, okay, there's no way they're changing that. And so it says cool the page is loaded. Now click on this field, which is log in.Okay. You want to find something unique on that field that won't change when they upgrade, you know, from bootstrap to this kind of, you know, UI framework. that's all well, and good. That's what we call the happy path. It's doing this perfectly. Now you need to define what it should do when it doesn't find these things, which is not keep going or find similar it's it needs to fail fast and gracefully and pass on that failure to someone and not keep going. And that's kind of how we prevent that scary use case where it's like. okay. it's gone in, it's logged into the bank website now it's transactioning, bad things to bad places that we didn't program it for it, Well you unfortunately did not specify in a detailed enough way what it needs to look for.And if it doesn't find that it needs to break, instead of saying that this is close enough. And so, in all things, software engineering, it's that specificity, it's that detail, that you need to hook onto. And that's also where, when we talk about this being a low-code no-code solutions that sometimes RPA is marketed to the business.It's just so often not the case, because yes. It might provide a very user, business, friendly interface for you to build bots. But the knowledge you need to be able to ensure stability and accuracy, um, to build the bots is, is a familiarity that's probably not going to be had in the business. It's going to be had by a developer who knows what the DOM and COM are and how the operating system exposes services and processes and how.JavaScript, especially when we're talking about single page apps and react where you do have this very reactive DOM, that's going to change. You need to be fluent with that and know, not only how HTML tags work and how CSS will change stuff on you in classes, but also how clicking on something on a single page app is as simple as a username input field will dynamically change that whole DOM and you need to account for it. so, it is it's, traditionally not as easy as saying, oh, the business person can just click, click, click, click, and then we have a bot. You'll have a bot, but it's probably going to be break breaking quite often. It's going to be inaccurate in its execution.this is a business friendly user-friendly non-technical tool. And I launch it and it says, what do you want to do? And it says, let me record what you're going to do. And you say, cool.And then you go about you open up Chrome and you type in the browser, and then you click here, click there, hit send, and then you stop recording. The tool says, cool, this is what you've done. Well, I have yet to see a, a solution that is that isn't able to not need further direction or, or defining on that process, You still should need to go in there and say, okay, yeah.you recorded this correctly, but you know, you're not interpreting correctly or as accurate as you need to that field that I clicked on.And if you know, anybody hits, you know, F12 on their keyboard while they have Chrome open and they see how the DOM is built, especially if this is using kind of any kind of template, Webpage software. It's going to have a lot of cruft in that HTML. So while yes, the recording did correctly see that you clicked on the input box.What it's actually seen is that you actually clicked on the div. That is four levels scoped above it, whereas the parent, and there are other things within that as well. And so the software could be correctly clicking on that later, but other things could be in there and you're going to get some instability.So the human or the business, um, bot builder, the roboticist, I guess, would need to say, okay, listen, we need to pare this down, but it's, it's even beyond that. There are concepts that you can't get around when building bots that are unique to software engineering as a concept. And even though they're very basic, it's still sometimes hard for the business user to, they felt to learn that.And I I'm talking concepts as simple as for loops or loops in general where the business of course has, has knowledge of what we would call a loop, but they wouldn't call it a loop and it's not as accurately defined. So they have to learn that. And it's not as easy as just saying, oh Yeah.do a loop. And the business will say, well, what's a loop.Like I know, you know, conceptually what a loop could be like a loop in my, when I'm tying my shoe. But when you're talking about loop, that's a very specific thing in software and what you can do. And when you shouldn't do it, and that's something that these, no matter how good your low code, no code solution might be, it's going to have to afford for that concept.And so a business user is still going to have to have some lower level capability to apply those concepts. And, and I I've yet to see anybody be able to get around that in their RPA solutions.[00:33:42] Jeremy: So in your experience, even though these vendors may sell it as being a tool that anybody can just sit down and use but then you would want a developer to, to sit with them or, or see the result and, and try and figure out, okay, what do you, what do you really want this, this code to do?Um, not just sort of these broad strokes that you were hoping the tool was gonna take care of for you? Yeah.[00:34:06] Alex: that that's exactly right. And that's how every organization will come to that realization pretty quickly. the head of the game ones have said, okay, we need to have a really good, um, COE structure to this robotic operating model where we can have, a software engineering, developer capability that sits with the business, capability.And they can, marry with each other, other businesses who may take, um, these vendors at their word and say, it's a low code meant for business. It just needs to make sure it's on and accessible. And then our business people are just gonna, uh, go in there and do this. They find out pretty quickly that they need some technical, um, guidance to go in because they're building unstable or inaccurate bots.and whether they come to that sooner or later, they, they always come to that. Um, and they realize that, okay, there there's a technical capability And, this is not just RPA. This is the story of all low-code no-code solutions that have ever existed. It always comes around that, while this is a great interface for doing that, and it's very easy and it makes concepts easy.Every single time, there is a technical capability that needs to be afforded. [00:35:26] Jeremy: For the. The web browser, you mentioned the DOM, which is how we typically interact with applications there. But for native applications, you, you briefly mentioned, COM. And I was wondering when someone is writing, um, you know, a bot, uh, what are the sorts of things they see, or what are the primitives they're working with?Like, is there a name attached to each button, each text, field, [00:35:54] Alex: wouldn't that be a great world to live in, so there's not. And, and, as we build things in the DOM. People get a lot better. We've seen people are getting much better about using uniqueness when they build those things so that they can latch onto when things were built or built for the COM or, you know, a .NET for OS that might, that was not no one no one was like oh yeah, we're going to automate this.Or, you know, we need to make this so that this button here is going to be unique from that button over there on the COM they didn't care, you know, different name. Um, so yeah, that is, that is sometimes a big issue when you're using, uh, an RPA solution, you say, okay. cool. Look at this, your calculator app. And Okay. it's showing me the component object model that this was built. It that's describing what is looking at, but none of these nodes have, have a name. They're all, you know, node one node, 1.1 node two, or, or whatnot, or button is just button and there's no uniqueness around it. And that is, you see a lot of that in legacy older software, um, E legacy is things built in 2005, 2010.Um, you do see that, and that's the difficulty at that point. You can still solve for this, but what you're doing is you're using send keys. So instead of saying, Okay.RPA software, open up this, uh, application and then look for. You know, thing, this object in the COM and click on it, it's going to, you know, it can't, there is no uniqueness.So what you say is just open up the software and then just hit tab three times, and that should get you to this one place that was not unique, but we know if you hit tab three times, it's going to get there now. That's all well and good, but there's so many things that could interfere with that and break it.And the there's no context for the bot to grab onto, to verify, Okay. I am there. So any one thing, you could have a pop-up which essentially hijacks your send key, right? And so the bot yes, absolutely hit tab three times and it should be in that one place. It thinks it is, and it hits in enter, but in between the first and second tab, a pop-up happened and now it's latched onto this other process, hits enter. And all of a sudden outlook's opening bot doesn't know that, but it's still going on and it's going to enter in some financial information into oops, an email that it launched because it thought hitting enter again would do so. Yeah.That's, that's where you get that instability. Um, there are other ways around it or other solutions.and this is where we get into the you're using, um, lower level software engineering solutioning instead of doing it exactly how the user does it. When we're talking about the operating system and windows, there are a ton of interop services and assemblies that a, uh, RPA solution can access.So instead of cracking open Excel, double-clicking on Excel workbook waiting for it to load, and then reading the information and putting information in, you can use the, you know, the office 365 or whatnot that, um, interop service assembly and say, Hey, launch this workbook without the UI, showing it, attach to that process that, you know, it is.And then just send to it, using that assembly send information into it. And the human user can't do that. It can't manipulate stuff like that, but the bot can, and it it's the same end as the human users trying. And it's much more efficient and stable because the UI couldn't afford for that kind of stability.So that would be a valid solution. But at that point, you're really migrating into a software engineering, it developer solution of something that you were trying not to do that for. So when is that? Why, you know, why not just go and solve for it with an enterprise or programmatic solution in the first place?So that's the balance. [00:40:18] Jeremy: earlier you're talking about the RPA needs to be something that, uh, that the person is able to do. And it sounds like in this case, I guess there still is a way for the person to do it. They can open up the, the Excel sheet and right it's just that the way the, the RPA tool is doing it is different. Yeah.[00:40:38] Alex: Right. And more efficient and more stable. Certainly. Uh, especially when we're talking about Excel, you have an Excel with, you know, 200,000 lines, just opening that that's, that's your day, that's going to Excel it, just going to take its time opening and visualizing that information for you. Whereas you, you know, an RPA solution doesn't even need to crack that open.Uh, it can just send data right directly to that workbook and it that's a valid solution. And again, some of these processes, it might be just two people at your organization that are essentially doing it. So it's, you know, you don't really, it's not at a threshold where you need an enterprise solution for it, but they're spending 30 minutes of their day just waiting for that Excel workbook to open and then manipulating the data and saving it.And then, oh, their computer crashed. So you can do an RPA solution. It's going to be, um, to essentially build for a more efficient way of doing it. And that would be using the programmatic solution, but you're right. It is doing it in a way that a human could not achieve it. Um, and that again is. The where the discipline and the organizational, aspect of this comes in where it's saying, is that acceptable?Is it okay to have it do things in this way, that are not human, but achieving the same ends. And if you're not disciplined that creeps, and all of a sudden you have a RPA solution that is doing things in a way that where the whole reason to bring that RPA solution is to not have something that did something like that. And that's usually where the stuff falls apart. IT all of a sudden perks their head up and says, wait, I have a lot of connections coming in from this one computer doing stuff very quickly with a, you know, a SQL query. It's like, what is going on? And so all of a sudden, someone built a bot to essentially do a programmatic connection.And it is like, you should not be who gave you this permissions who did this shut down everything that is RPA here until we figure out what you guys went and did. So that's, that's the dance. [00:42:55] Jeremy: it's almost like there's this hidden API or there's this API that you're not intended to use. but in the process of trying to automate this thing, you, you use it and then if your, IT is not aware of it, then things just kind of spiral out of control.[00:43:10] Alex: Exactly. Right. So let's, you know, a use case of that would be, um, we need to get California tax information on alcohol sales. We need to see what each county taxes for alcohol to apply to something. And so today the human users, they go into the California, you know, tobacco, wildlife, whatever website, and they go look up stuff and okay, let's, that's, that's very arduous.Let's throw a bot on that. Let's have a bot do that. Well, the bot developers, smart person knows their way around Google and they find out, well, California has an API for that. instead of the bot cracking open Chrome, it's just going to send this rest API call and it's going to get information back and that's awesome and accurate and way better than anything. but now all of a sudden IT sees connections going in and out. all of a sudden it's doing very quickly and it's getting information coming into your systems in a way that you did not know was going to be, uh, happening. And so while it was all well and good, it's, it's a good way for, the people whose job it is to protect yourself or know about these things, to get very, um, angry, rightly so that this is happening.that's an organizational challenge, uh, and it's an oversight challenge and it's a, it's a developer challenge because, what you're getting into is the problems with having too technical people build these RPA bots, right? So on one hand we have business people who are told, Hey, just crack this thing open and build it.And it's like, well, they don't have enough technical fluency to actually build a stable bot because they're just taking it at face value. Um, on the other hand, you have software engineers or developers that are very technical that say, oh, this process. Yeah. Okay. I can build a bot for that. But what if I used, you know, these interop services, assemblies that Microsoft gives me and I can access it like that.And then I can send an API call over here. And while I'm at it, I'm going to, you know, I'm just going to spin up a server just on this one computer that can do this. When the bot talks to it. And so you have the opposite problem. Now you have something that is just not at all RPA, it's just using the tool to, uh, you know, manipulate stuff, programmatically.[00:45:35] Jeremy: so, as a part of all this, is using the same credentials as a real user, right. You're you're logging in with a username and password. if the form requires something like two factor authentication or, you know, or something like that, like, how does that work since it's not an actual person?[00:45:55] Alex: Right. So in a perfect world, you're correct. Um, a bot is a user. I know a lot of times you'll hear, say, people will be like, oh, hi, I have 20 RPA bots. What they're usually saying is I have 20 automations that are being run for separate processes, with one user's credentials, uh, on a VDI. So you're right.They, they are using a user's credentials with the same permissions that any user that does that process has, that's why it's easy. but now we have these concepts, like two factor authentication, which every organization is using that should require something that exists outside of that bot users environment. And so how do you afford for that in a perfect world? It would be a service account, not a user account and service accounts are governed a little differently. A lot of times service accounts, um, have much more stringent rules, but also allow for things like password resets, not a thing, um, or two factor authentication is not a thing for those.So that would be the perfect solution, but now you're dragging in IT. Um, so, you know, if you're not structurally set up for that, that's going to be a long slog. Uh, so what would want to do some people actually literally have a, we'll have a business person that has their two factor auth for that bot user on their phone.And then just, you know, they'll just go in and say, yeah.that's me. that's untenable. So, um, sometimes what a lot of these, like Microsoft, for instance, allow you to do is to install a two factor authentication, application, um, on your desktop so that when you go to log in a website and says, Hey, type in your password.Cool. Okay. Give me that code. That's on your two factor auth app. The bot can actually launch that. Copy the code and paste it in there and be on its way. But you're right now, you're having to afford for things that aren't really part of the process you're trying to automate. They are the incidentals that also happen.And so you have to build your bot to afford for those things and interpret, oh, I need to do two factor authentication. And a lot of times, especially if you have an entirely business focused PA um, robotic operating model, they will forget about those things or find ways around them that the bot isn't addressing, like having that authenticator app on their phone.that's, um, stuff that definitely needs to be addressed. And sometimes is only, found at runtime like, oh, it's asking for login. And when I developed it, I didn't need to do that because I had, you know, the cookie that said you're good for 30 days, but now, oh, no. [00:48:47] Jeremy: yeah. You could have two factor. Um, you could have, it asking you to check your email for a code. There could be a fraud warning. There's like all sorts of, you know, failure cases that can happen. [00:48:58] Alex: exactly. And those things are when we talk about, uh, third-party vendors, um, third-party provider vendors, like going back to the banking website, if you don't tell them that you're going to be using a bot to get their information or to interface with that website, you're setting yourself up for a bad time because they're going to see that kind of at runtime behavior that is not possible at scale by user.And so you run into that issue at runtime, but then you're correct. There are other things that you might run into at runtime that are not again, part of the process, the business didn't think that that was part of the process. It's just something they do that actually the bot has to afford for. that's part of the journey, uh, in building these. [00:49:57] Jeremy: when you're, when you're building these, these bots, what are the types of tools that, that you've used in the past? Are these commercial, packages, are these open source? Like what, what does that ecosystem look like?[00:50:11] Alex: Yeah, in this space, we have three big ones, which is, uh, automation anywhere UI path and, blue prism. Those are the RPA juggernauts providing this software to the companies that need it. And then you have smaller ones that are, trying to get in there, or provide stuff in a little different way. and you even have now, big juggernauts that are trying to provide for it, like Microsoft with something like power automate desktop.So all of these, say three years ago, all of these softwares existed or all of these RPA solution softwares existed or operated in the same kind of way, where you would install it on your desktop. And it would provide you a studio to either record or define, uh, originally the process that was going to be automated on that desktop when you pushed play and they all kind of expose or operate in the same way they would interpret the COM or the DOM that the operating system provided. Things like task scheduler have traditionally, uh, exposed, uh, and they all kind of did that in the same way. Their value proposition in their software was the orchestration capability and the management of that.So I build a bot to do this, Jim over there built a bot to do that. Okay. This RPA software, not only enabled you to define those processes, But what their real value was is they enable a place where I can say this needs to run at this time on this computer.And it needs to, you know, I need to be able to monitor it and it needs to return information and all that kind of orchestration capability. Now all of these RPA solutions actually exist in that, like everything else in the browser. So instead of installing, you know, the application and launching it and, and whatnot, and the orchestration capability being installed on another computer that looked at these computers and ran stuff on them.Now it's, it's all in the cloud as it were, and they are in the browser. So I go to. Wherever my RPA solution is in my browser. And then it says, okay, cool. You, you still need to install something on the desktop where you want the spot to run and it deploys it there. But I define and build my process in the provided browser studio.And then we're going to give you a capability to orchestrate, monitor, and, uh, receive information on those things that you have, those bots that you have running, and then what they're now providing as well is the ability to tie in other services to your bot so that it has expanded capability. So I'm using automation anywhere and I built my bot and it's going, and it's doing this or that.And automation anywhere says, Hey, that's cool. Wouldn't you like your bot to be able to do OCR? Well, we don't have our own OCR engine, but you probably as an enterprise do. Just use, you know, use your Kofax OCR engine or Hey, if you're really a high speed, why don't you use your Azure cognitive services capability?We'll tie it right into our software. And so when you're building your bot, instead of just cracking open a PDF and send key control C and key control V to do stuff instead, we'll use your OCR engine that you've already paid for to, to understand stuff. And so that's, how they expand, what they're offering, um, into addressing more and more capabilities.[00:53:57] Alex: But now we're, we're migrating into a territory where it's like, well, things have APIs why even build a bot for them. You know, you can just build a program that uses the API and the user can drive this. And so that's where people kind of get stuck. It's they they're using RPA on a, something that just as easily provides for a programmatic solution as opposed to an RPA solution.but because they're in their RPA mode and they say, we can use a bot for everything, they don't even stop and investigate and say, Hey, wouldn't this be just as easy to generate a react app and let a user use this because it has an API and IT can just as easily monitor and support that because it's in an Azure resource bucket.that's where an organization needs to be. Clear-eyed and say, Okay. at this point RPA is not the actual solution. We can do this just as easy over here and let's pursue that. [00:54:57] Jeremy: the experience of making these RPAs. It sounds like you have this browser-based IDE, there's probably some kind of drag and drop set up, and then you, you, you mentioned JavaScript. So I suppose, does that mean you can kind of dive a little bit deeper and if you want to set up specific rules or loops, you're actually writing that in JavaScript.[00:55:18] Alex: Yeah. So not, not necessarily. So, again, the business does not know what an IDE is. It's a studio. Um,so that's, but you're correct. It's, it's an IDE. Um, each, whether we're talking about blue prism or UiPath or automation anywhere, they all have a different flavor of what that looks like and what they enable.Um, traditionally blue prism gave you, uh, a studio that was more shape based where you are using UML shapes to define or describe your process. And then there you are, whereas automation anywhere traditionally used, uh, essentially lines or descriptors. So I say, Hey, I want to open this file. And your studio would just show a line that said open file.You know, um, although they do now, all of them have a shape based way to define your process. Go here, here. You know, here's a circle which represents this. Uh, let's do that. Um, or a way for you to kind of more, um, creatively define it in a, like a text-based way. When we talk about Java script, um, or anything like that, they provide predefined actions, all of them saying, I want to open a file or execute this that you can do, but all of them as well, at least last time I checked also allow you for a way to say, I want to programmatically run something I want to define.And since they're all in the browser, it is, uh, you know, Javascript that you're going to be saying, Hey, run this, this JavaScript, run this function. Um, previously, uh, things like automation anywhere would, uh, let you write stuff in, in .NET essentially to do that capability. But again, now everything's in the browser.So yeah, they do, They do provide for a capability to introduce more low level capability to your automation. That can get dangerous. Uh, it can be powerful and it can be stabilizing, but it can be a very slippery slope where you have an RPA solution bot that does the thing. But really all it does is it starts up and then executes code that you built.[00:57:39] Alex: Like what, what was the, the point in the first place? [00:57:43] Jeremy: Yeah. And I suppose at that point, then anybody who knows how to use the RPA tool, but isn't familiar with that code you wrote, they're just, they can't maintain it [00:57:54] Alex: you have business continuity and this goes back to our, it has to be replicable or close as close to the human process, as you can make. Because that's going to be the easiest to inherit and support. That's one of the great things about it. Whereas if you're a low level programmer, a dev who says, I can easily do this with a couple of lines of, you know, dot net or, you know, TypeScript or whatever.And so the bot just starts up in executes. Well, unless someone that is just as proficient comes along later and says, this is why it's breaking you now have an unsupportable business, solution. that's bad Juju. [00:58:38] Jeremy: you have the software engineers who they want to write code. then you have the people who are either in business or in IT that go, I don't want to look at your code.I don't want to have to maintain it. Yeah. So it's like you almost, if you're a software engineer coming in, you almost have to fight that urge to, to write anything yourself and figure out, okay, what can I do with the tool set and only go to code if I can't do it any other way.[00:59:07] Alex: That's correct. And that's the, it takes discipline. more often than not, not as fun as writing the code where you're like, I can do this. And this is really where the wheels come off is. You went to the business that is that I have this process, very simple. I need to do this and you say, cool, I can do that.And then you're sitting there writing code and you're like, but you know what? I know what they really want to do. And I can write that now. And so you've changed the process and while it is, and nine times out of 10, the business will be like, oh, that's actually what we wanted. The human process was just as close as we could get nothing else, but you're right.That's, that's exactly what we needed. Thank you nine times out of 10. They'll love you for that. But now you own their process. Now you're the one that defined it. You have to do the business continuity. You have to document it. And when it falls over, you have to pick it back up and you have to retrain.And unless you have an organizational capacity to say, okay, I've gone in and changed your process. I didn't automate it. I changed it. Now I have to go in and tell you how I changed it and how you can do it. And so that, unless you have built your robotic operating model and your, your team to afford for that, your developer could be writing checks bigger than they can cash.Even though this is a better capability. [01:00:30] Jeremy: you, you sort of touched on this before, and I think this is probably the, the last topic we'll cover, but you've been saying how the end goal should be to not have to use the RPAs anymore And I wonder if you have any advice for how to approach that process and, and what are some of the mistakes you've seen people make[01:00:54] Alex: Mm Hmm. I mean the biggest mistake I've seen organizations make, I think is throwing the RPA solution out there, building bots, and they're great bots, and they are creating that value. They're enabling you to save money and also, enabling your employees to go on and do better, more gratifying work. but then they say, that's, it that's as far as we're going to think, instead of taking those savings and saying, this is for replacing this pain point that we had to get a bot in the first place to do so.That's a huge common mistake. Absolutely understandable if I'm a CEO or even, you know, the person in charge of, you know, um, enterprise transformation. Um, it's very easy for me to say, ha victory, here's our money, here's our savings. I justified what we've done. Go have fun. Um, and instead of saying, we need to squirrel this money away and give it to the people that are going to change the system. So that, that's definitely one of the biggest things.The problem with that is that's not realized until years later when they're like, oh, we're still supporting these bots. So it is upfront having a turnoff strategy. When can we turn this bot off? What is that going to look like? Does it have a roadmap that will eventually do that?And that I think is the best way. And that will define what kind of processes you do indeed build bots for is you go to it and say, listen, we've got a lot of these user processes, human processes that are doing this stuff. Is there anything on your roadmap that is going to replace that and they say, oh yeah you know, in three years we're actually going to be standing up our new thing.We're going to be converting. And part of our, uh, analysis of the solution that we will eventually stand up will be, does it do these things? And so yes, in three years, you're good. And you say, cool, those are the processes I'm going to automate and we can shut those off. That's your point of entry for these things not doing that leads to bots running and doing things even after there is a enterprise solution for that. And more often than not, I would say greater than five times out of 10, when we are evaluating a process to build a bot for easily five times out of 10, we say, whoa, no, actually there's, you don't even need to do this.Our enterprise application can do this. you just need retraining, because your process is just old and no one knew you were doing this. And so they didn't come in and tell you, Hey, you need to use this.So that's really a lot of times what, what the issue is. And then after that, we go in and say, Okay.no, there's, there's no solution for this. This is definitely a bot needs to do this. Let's make sure number one, that there isn't a solution on the horizon six months to a year, because otherwise we're just going to waste time, but let's make sure there is, or at least IT, or the people in charge are aware that this is something that needs to be replaced bot or no bot.And so let's have an exit strategy. Let's have a turn-off strategy. When you have applications that are relatively modern, like you have a JIRA, a ServiceNow, you know, they must have some sort of API and it may just be that nobody has come in and told them, you just need to plug these applications together.[01:04:27] Alex: And so kind of what you're hitting on and surfacing is the future of RPA. Whereas everything we're talking about is using a bot to essentially bridge a gap, moving data from here to there that can't be done, programmatically. Accessing something from here to there that can't be done programmatically.So we use a bot to do it. That's only going to exist for so long. Legacy can only be legacy for so long, although you can conceivably because we had that big COBOL thing, um, maybe longer than we we'd all like, but eventually these things will be. upgraded. and so either the RPA market will get smaller because there's less legacy out there.And so RPA as a tool and a solution will become much more targeted towards specific systems or we expand what RPA is and what it can afford for. And so that I think is more likely the case. And that's the future where bots or automations aren't necessary interpreting the COM and the DOM and saying, okay, click here do that.But rather you're able to quickly build bots that utilize APIs that are built in and friendly. And so what we're talking about there is things like Appian or MuleSoft, which are these kind of API integrators are eventually going to be classified as RPA. They're going to be within this realm.And I think, where, where you're seeing that at least surfaced or moving towards is really what Microsoft's offering in that, where they, uh, they have something called power automate, which essentially is it just a very user-friendly way to access API. that they built or other people have built.So I want to go and I need to get information to service now, service now has an API. Yeah. Your, IT can go in and build you a nice little app that does a little restful call to it, or a rest API call to it gets information back, or you can go in and, you know, use Microsoft power automate and say, okay, I want to access service now.And it says, cool. These are the things you can do. And I say, okay, I just want to put information in this ticket and we're not talking about get or patch or put, uh, or anything like that. We're just saying, ah, that's what it's going to do. And that's kind of what Microsoft is, is offering. I think that is the new state of RPA is being able to interface in a user-friendly way with APIs. Cause everything's in the browser to the point. where, you know, Microsoft's enabling add ins for Excel to be written in JavaScript, which is just the new frontier. Um, so that's, that's kind of going to be the future state of this. I believe. [01:07:28] Jeremy: so, so moving from RPAs being this thing, that's gonna click through website, click through, um, a desktop application instead it's maybe more of this high, higher level tool where the user will still get this, I forget the term you used, but this tool to build a workflow, right. A studio. Okay. Um, and instead of saying, oh, I want this to click this button or fill in this form.It'll be, um, I want to get this information from service now. And I want to send a message using that information to slack or to Twilio, or, um, you're basically, talking directly to these different services and just telling it what you want and where it should go.[01:08:14] Alex: That's correct. So, as you said, everything's going to have an API, right? Seemingly everything has an API. And so instead of us, our RPA bots or solutions being UI focused, they're going to be API focused, um, where it doesn't have to use the user interface. It's going to use the other service. And again, the cool thing about APIs in that way is that it's not, directly connecting to your data source.It's the same as your UI for a user. It sits on top of it. It gets the request and it correctly interprets that. And does it the same thing with your UI where I say I click here and you know, wherever it says. okay. yeah. You're allowed to do that. Go ahead. So that's kind of that the benefit to that.Um, but to your point, the, the user experience for whether you're using a UI or API to build up RPA bot, it's going to be the same experience for the user. And then at this point, what we're talking about, well, where's the value offering or what is the value proposition of RPA and that's orchestration and monitoring and data essentially.we'll take care of hosting these for you. we'll take care of where they're going to run, uh, giving you a dashboard, things like that.[01:09:37] Alex: That's a hundred percent correct. It's it's providing a view into that thing and letting the business say, I want to no code this. And I want to be able to just go in and understand and say, oh, I do want to do that. I'm going to put these things together and it's going to automate this business process that I hate, but is vital, and I'm going to save it, the RPA software enables you to say, oh, I saw they did that. And I see it's running and everything's okay in the world and I want to turn it on or off. And so it's that seamless kind of capability that that's what that will provide. And I think that's really where it isn't, but really where it's going. Uh, it'll be interesting to see when the RPA providers switch to that kind of language because currently and traditionally they've gone to business and said, we can build you bots or no, no, your, your users can build bots and that's the value proposition they can go in.And instead of writing an Excel where you had one very, very advanced user. Building macros into Excel with VBA and they're unknown to the, the IT or anybody else instead, you know, build a bot for it. And so that's their business proposition today. Instead, it's going to shift, and I'd be interested to see when it shifts where they say, listen, we can provide you a view into those solutions and you can orchestrate them in, oh, here's the studio that enables people to build them.But really what you want to do is give that to your IT and just say, Hey, we're going to go over here and address business needs and build them. But don't worry. You'll be able to monitor them and at least say, yeah okay. this is, this is going.[01:11:16] Jeremy: Yeah. And that's a, a shift. It sounds like where RPA is currently, you were talking about how, when you're configuring them to click on websites and GUIs, you really do still need someone with the software expertise to know what's going on. but maybe when you move over to communicating with API, Um, maybe that won't be as important maybe, somebody who just knows the business process really can just use that studio and get what they need.[01:11:48] Alex: that's correct. Right. Cause the API only enables you to do what it defined right. So service now, which does have a robust API, it says you can do these things the same as a user can only click a button that's there that you've built and said they can click. And so that is you can't go off the reservation as easy with that stuff, really what's going to become prime or important is as no longer do I actually have an Oracle server physically in my location with a database.Instead I'm using Oracle's cloud capability, which exists on their own thing. That's where I'm getting data from. What becomes important about being able to monitor these is not necessarily like, oh, is it falling over? Is it breaking? It's saying, what information are you sending or getting from these things that are not within our walled garden.And that's really where, it or the P InfoSec is, is going to be maybe the main orchestrator owner of RPA, because they're, they're going to be the ones to say you can't, you can't get that. You're not allowed to get that information. It's not necessarily that you can't do it. Um, and you can't do it in a dangerous way, but it's rather, I don't want you
For episode 400, Scott and Wes talk about web dev horror stories - 2021 edition! LogRocket - Sponsor LogRocket lets you replay what users do on your site, helping you reproduce bugs and fix issues faster. It's an exception tracker, a session re-player and a performance monitor. Get 14 days free at logrocket.com/syntax. Mux - Sponsor Mux Video is an API-first platform that makes it easy for any developer to build beautiful video. Powered by data and designed by video experts, your video will work perfectly on every device, every time. Mux Video handles storage, encoding, and delivery so you can focus on building your product. Live streaming is just as easy and Mux will scale with you as you grow, whether you're serving a few dozen streams or a few million. Visit mux.com/syntax. Linode - Sponsor Whether you're working on a personal project or managing enterprise infrastructure, you deserve simple, affordable, and accessible cloud computing solutions that allow you to take your project to the next level. Simplify your cloud infrastructure with Linode's Linux virtual machines and develop, deploy, and scale your modern applications faster and easier. Get started on Linode today with a $100 in free credit for listeners of Syntax. You can find all the details at linode.com/syntax. Linode has 11 global data centers and provides 24/7/365 human support with no tiers or hand-offs regardless of your plan size. In addition to shared and dedicated compute instances, you can use your $100 in credit on S3-compatible object storage, Managed Kubernetes, and more. Visit linode.com/syntax and click on the “Create Free Account” button to get started. Show Notes 02:54 - Hi guys, love the show. I wanted to share with you something that happened just the other day (Oct 4th), I was starting my new job today at a large tech company. They use React for everything (even DNS!, don't ask me how, it's complicated). I figured I'd celebrate my first day and push some code to prod, (how hard could useEffect be right?) Next thing you know, they ended up bringing in a guy with an angle grinder to get access to the server cage. 04:15 - No one from Denver can buy 06:38 - Bug accidentally gives $90 million to users https://www.cnbc.com/2021/10/01/defi-protocol-compound-mistakenly-gives-away-millions-to-users.html 08:34 - Share Pointy Knives Hi! I'm a developer at a consulting firm in Sweden, writing C# on the backend and using React with either JavaScript or TypeScript and hosting things in Azure 99% of the time (and 1% in SharePoint). I was in my last week at my last job before I was due to start my new job. Worked 12 h/day to keep up with all the handovers etc. to colleagues so they would have a chance to continue working on the solutions I have taken care of. One project was a process tool hosted in SharePoint Online. The guy who would oversee it had -1% experience with SharePoint (which I pointed out to my bosses). But to make things a bit easier, I wrote a deploy script to ease things a bit. Starts the terminal and runs the script towards the acceptance environment. Umpteen million errors appear… Which is strange, because there would only be about 20 commands (which can cause errors like these). I log into the environment to double check if I now accidentally entered the wrong values in the script (which looked okay according to me). But I get a 404 error when I try to reach the environment… I log into the admin interface; I discover that the site is gone… Also checking the trash can, there are no things there. Very strange. I find that I'm in a different folder than the one where I saved my script… In that folder there is an old deploy script that was used when the project was started a thousand years ago (which was not used after the project was “finished”). The first thing the script does is force delete the site and then try to create a new empty site… The site is gone with lists and everything (lists are a SharePoint thing, think of it as sql-lite), there are no backups of the acceptance environment (although it is very important). I just feel a little panicked about how I'm going to solve this. However, I remember testing a tool six months ago to copy entire environments. Where the first attempt was made on the acceptance environment. Finds the cloned environment and can use the same tool to clone it back. It took only 8-12 hours of work to create all the new things done in the environment in the last 6 months instead of X number of hours to build everything from scratch. Once I updated a feature that saves accessories on orders (same solution). However, I failed to add all the new fields to the production environment. Which meant that accessories were not saved at all… Which was discovered after a week… I fixed the error in 5 minutes and the sellers had to contact x number of customers to double check what kind of accessories they would have for their orders… 11:22 - External HD One time I needed to format a server. It was an outdated Windows server. I selected all the files and copied and pasted to an external hard drive. My drive was pretty fast and it took like a minute. I was like: “Wow! That's a great external hd”. Formatted the server and, as soon as I realized it didn't copy 10% of the files, I had that face. We all know that face. Anyways. Tried to restore the files using some HD recovery tools but they were all corrupted, not by the formatting itself but for the installation of the new OS. My boss was pissed! I was very young so I blame it on the server. I'm not proud of it. But why the heck they would ask a developer to format a server in the first place? By the way, my birthday is on Halloween. Spoooky. 13:07 - Hey Loser I was testing new code to automate mass-mailings to our customers. Who knows what demon drove me but I wrote the “test” mailings like ransom notes: “Dear loser! Fork over all your $$$ or else!” Well, all was looking great and I wa s feeling pretty pleased with myself. Progress bars were sliding and counters were spinning. But I could hear a rising commotion from the marketing guys behind me. Phones ringing, voices raised. Turns out I had moronically wired myself to the production database! Even worse for me, I'd only been at the company a month or two. I thought my goose was cooked and the Big Boss was plenty mad, but I owned up right away and apologized. We put out a cover story that we'd been hacked and all was forgiven. 15:01 - HE HATE ME I was part of the developer team that accidentally leaked the 8 cities the XFL, an alternate football league, a week before their press conference. ewrestling.com/article/wwe-ac… We were using Contentful and Gatsby. A junior dev entered the information into the prod space instead of the UAT space and when we released some bug fixes, it picked up the contact us content update. I found out after seeing stories pop up in Google News when I was about to go to sleep. Was taking the content down when we started getting calls from the CIO of the WWE. The league went bust because of COVID. 19:23 - I Don't Have Memory of This I had two pretty bad code changes that only showed their problems when they went live in production. Around 6 years ago, I was running into a large performance issue with some of our queries running slowly against this giant DB. We were using JPA/Hibernate and we had a bunch of joins that were done lazily. I switched a few of them to eager so that they would create a single SQL statement instead of a bunch (or thousands). The change worked fine on my dev environment, QA, and staging. Staging was supposed to be representative of production. So we went live and within minutes the entire system went down because of out of memory errors. We quickly switched back to the lazy joins. We found out that staging had more memory and fewer DB records than production though they were supposed to be exactly the same. 21:05 - Your Performance is Slowing us down Back when VMWare was becoming a thing, like 2010 or so. I was working at an ecomm site and we were seeing slow performance between the app server and some data services. I decided to build a little multithreaded logger that could track when a query to Oracle Financials was running too slow and generate a warning. Oracle Financials was doing the credit card transactions, orders, and all the rest of the sites DB work. The code had no impact on my dev, QA, and staging environments. We were hitting well over our minimum number of concurrent users. We deployed it to production and then the system got slower and slower, but never crashed. Again, production and staging were set up differently. Staging was a bare-metal server. Production was running on an ESXi server on a host that was split 4 ways. The multi-threaded code meant to detect performance degradations was slowing the whole system down when it tried to synchronize data across threads. I was pretty embarrassed by both these two issues. It went to show that production is its own special thing and that you really don't know if your server-side code is really going to work until it starts running there. 23:15 - Dead Button Way back when mainframes were king, a guy I worked with pushed a button in, that if released, would immediately take down the entire company. He stood there for 4 hours, holding the button in, until we could let it crash after business hours. We gave him a chair after 2 hours. 25:12 - No Deploys on Fridays I was a junior dev working on our company's website. They were HTML + nunjucks templates that were later being integrated with the backend using some Python witchcraft. There was also a metric ton of JS libraries added (like Babra for page transitions, threejs for a cool interactive animation on the landing page etc.). Didn't really get much of all this package.json stuff at that seniority level. So after running yarn or npm or whatever, and seeing some warnings about a couple packages being outdated, I decided to update some of them. It ran great locally, but I didn't build the prod version, as I didn't know there could be any differences. I was working on some minor feature (or maybe even some minor bug) and the PM decided there's no time for code review. So I pushed it to the repo, the backend guy did his integration, and launched it on prod. As it turned out, there were some breaking changes in one of the libraries I decided to update. It crashed the entire site. On Friday. At 4:30PM. And that, kids, is why you don't deploy on Fridays. 27:33 - Stupid Selfie Horror story for you Wes. I work for one of the biggest retailers in the UK and we were working on an app that would go on a ‘media wall' in their flagship store in London. Basically a giant 200-inch screen in the middle of the store that social content can go on. Turns out that I left my local Dev version connected to the production API when I uploaded a couple of stupid selfies of my big head in the office. Get a call the next day to ask why my face is on the medial wall. 28:37 - Soda I was a computer operator back in the late 1960's, operating a Honeywell mainframe. The consoles were huge, about the size of a dishwashing machine, with the console typewriter and printer inset in the middle, on top. I had a soft drink on the console, next to the typewriter mechanism. We were told never to bring a drink into the room but we all did it, especially on third shift. Long story short, someone called my name, I turned around and knocked the glass of soda into the console. Had to be completely replaced – machine was down for two days. My boss was not happy. 31:22 - Oof A bigger horror story. I had my own software company in the 90's and was in Singapore, customizing my software package for Johnson & Higgins Insurance Brokers – I had their Asian contract for my Insurance Broker/Accounting package. I spent a good 40 hours on Saturday and Sunday, making all the changes they asked for, getting ready for a demo on Monday morning. I finished up about 4am on Monday morning and was cleaning up my files. All this work was done on a Novell server. Print files had an extension of .prt and I had a ton of them in the main directory from all of the testing I had done. I was cleaning out old files, getting ready to back everything up and I thought I would delete all of the print files. I mistakenly keyed in erase *.prg, instead of erase *.prt (or whatever the delete command was – can't remember it now). Programming files have a .prg extension – I had deleted all of my updated files from the weekend. In desperation I called Novell in Utah, hoping they could help me recover the files, but no-go. The demo Monday morning was not fun. 33:24 - Young Dev I was a young dev right out of college. My first job was at a child support company where we had desktop apps that would handle case information more efficiently than using Excel. My first project was to write a POC that would later be implemented into a new, bigger app that consolidated all the “POCs” for various parts of the child support process. For some odd reason, I still don't know why to this day, my boss wanted me to write this “new” app on top of an old app with a bunch of legacy code. I never understood why but as a young dev fresh out of school, you tend to just do what you're told. In school, I mainly used PHP/HTML/CSS for learning how to work with a database; this job however used C#/.NET for their desktop apps so I was doing a lot of learning as I went. I remember finally learning how to connect to the database and run some SQL after fighting with this old pile of legacy code. In early versions, I chose to handle creates/updates for these records in the same function. My young, dumb self wrote a try catch statement that would attempt to create the record and if it failed, it would try to update the record. Before the first production release, I updated the flow to handle creates/updates in separate functions - but never removed the update in the catch block of the original function now used for creates only. Somehow I, or any PM/QA, never failed on a create and hit this catch block while testing. Fast-forward probably 9-12 months later, I got a ticket to investigate why every case's data looked the same in Production. I login to the app, search a few case numbers and sure enough, every case's data is the same. I began freaking out as I had no clue how this could've happened. I mean it had never happened in all the dev work, testing, and months of live Production use. After I investigated with a senior dev, we realized the try block had failed and the update query in the catch block ran for that record - we also realized that I left off the where clause in the related SQL query to specify which record needs updating - so ALL records got updated with this data. Thankfully, we kept regular back-ups and were able to restore the data to a recent timeframe without users losing a ton of work. We commented out that database update call and redeployed the code ASAP. Also the senior dev was cool about it and was like “hey, it happens to all of us at some point”. Let's just say I've learned a ton since then and definitely steer clear from writing code like that. You live and you learn I suppose. 38:40 - Where Wolf Here's my development tale of terror: One night I was burning the midnight oil trying to get caught up on a never-ending workload. At the time I was working for an online travel booking site. It was after 11, and the last thing I had to do for the night was to rename one of the hotels in our production database. So I wrote my query: UPDATE hotels SET name=‘Some Hotel Chain'; One problem, I FORGOT THE WHERE CLAUSE. Suddenly, over 5,000 hotels in our production database all had the same name. This was around 2003, so well before the time of point-in-time restores, and we were only backing up the database every week at that point. I was panicking. Fortunately, I had a dump of the production database that I had created only a couple of hours earlier sitting on my local hard drive. So thankfully, I was able to restore almost all of the hotel names, save for a couple that signed up after that data dump, and my boss was none the wiser. That's when I learned that working late hours is not worth it, because at some point you are so tired that you can no longer make good decisions. 41:19 - I Want Your Job When I first started out I worked for a consultancy and they trained us in sales meetings to help managers get promoted because we were coming in to make them “look good”. This was okay b/c obviously, we were coming in as a contractor; however, after being laid off due to 9/11 (yes, this was about 20 years ago), I was looking for a new job and during an interview when asked where I'd like to be in X years, I mentioned to the hiring manager that I wanted to eventually do what he was doing. Well, I guess he didn't take it that I wanted to make him get promoted to then take his spot. Safe to say I didn't get hired.
El Mtro. Francisco Burgoa, Coordinador de la Licenciatura en Comercio Exterior de la UAT y Director de Burgoa Consulting, te invita para que Hagamos un Trueque en este episodio para platicarnos sobre La realidad de la Clasificación Arancelaria en las operaciones de comercio exterior.Síguenos en nuestras redes sociales: En Instagram @tlcmagazinemexico, en Facebook@TLCMagazineMexico, déjanos un comentario o mensaje si hay algún tema de tu interés para platicarlo en compañía de un experto y así poder despejar todas tus dudas.
Welcome to the Big Kat Lounge Podcast Episode 57 with Faisal Alvi. Today's guest comes from Mississauga, Ontario, Canada where he is helping clients achieve their strategic project goals and objectives. When you have a project charter, scope statement and objectives are some of the things that will help you in writing your statement of work. This document needs to have requirements or some level of scope. From a milestones project management perspective it doesn't need to be complicated. There is the initializing the project where the teams are introduced. The planning stages (pre-requirements). The socializing of the requirements with stakeholders followed by the completing of the business requirement document that will be a good map for developers to be designed as a project service. We highlighted upon the importance of meeting milestones to produce results. Your success will come when the outcome is producing a result oriented decision. Through the development cycle you can show the demos, so the testers or UAT folks can run their scenarios to put it into market. Agile is used so much in the industry, as it's a fundamental methodology. It was a blast to talk with Faisal and learn about the various project management skills that we can all implement in our lives. To follow Faisal Alvi's journey head to LinkedIn: https://ca.linkedin.com/in/falvi
#5amMesterScrum Show 651 Live - Sprint Review is UAT Change your Paradigm - Today's topic: (1) User acceptance testing UAT should be either your Sprint Review or during the Sprint. I was coaching a PO the other day and the PO took on this challenge to make the goal of using the Sprint Review and get the UAT feedback in the Sprint and not a month later. I challenge anyone to tell me why it can't be. Hey if you are making software that takes more than two hours for the customer to use then you are doing something wrong! Please like and subscribe and share 5amMesterScrum. Please send me your topics. You are are doing Great Please Keep on Sharing. 5am Mester Scrum #5amMesterScrum #scrum #agile #business #scrummaster #agilecoach #coaching #philadelphia #philly #sprint #review #UAT #acceptance #testing #customer 5am Mester Scrum Show 651 went live on Youtube Wednesday 6/23/2021 from Philadelphia, PA Happy Scrumming, Social Media: - search 5amMesterScrum or #5amMesterScrum and you should find us and if not please let us know LinkedIn, Youtube, Facebook, Instagram, Twitter, TikTok Podcasts: (search 5amMesterScrum)
I was joined by Susan Andrews, Recruiting Manager for a company called Penumbra. Susan is a recruitment enthusiast and candidate experience Manager with over 15 plus years of full life cycle recruiting experience across a variety of disciplines and environments including agency, corporate and professional services firms throughout the United States.She's got relevant experience as it relates to ATS Integrations whether that's UAT, remediation, end user training and she has a variety of experience developing and implementing a best sourcing and recruitment practices and a variety of processes and recruitment techniques all while designing and facilitating training classes across different functional areas.Susan earned her bachelor's degree from the University of Texas at Austin and she's currently one of the recruiting managers at a company called Penumbra. If your not familiar with Penumbra, it is a global medical device organization headquartered in Alameda, CA, that designs, develops, manufacturers and markets novel products that address challenging medical conditions in markets with significant unmet need in both the neuro and vascular space.During our conversation, Susan and I discussed her role as an Internal Recruiter from responsibilities of an internal recruiter, to favorite social media platforms that she uses for recruiting.Some key highlights we discussed:-As a Corporate Recruiter, she constantly has a significant work load on her desk. How does she stay organized?-What is one thing she thinks Hiring Managers misunderstand about an Internal Recruiter's role & responsibilities?-What social media platforms is she using these days for recruiting?-Which seem to be the most effective for engaging prospective candidates?-Are job postings giving the ROI they are meant to give? At all levels, or just lower level positions?-What is one of the most common mistakes she sees candidates making?...and so much more
#5amMesterScrum Show #619 Live - Logs and Notes, Good Tips to support your #Agile #Coaching Journey and #UAT Sprints good or bad How about get it Done in an Hour? - Today's topics: (1) Just sharing a good practice of logging experience for future #agile coaching programs and (2) I was watching Agile for Humans yesterday and they spoke about how evil UAT testing is as a gate and I would agree, but I have different take. Bringing UAT into a Sprint is a Great Shift Left journey for you and I share a Sprint Review idea to get UAT Done in an hour. Please like and subscribe and share 5amMesterScrum. Please send me your topics. You are are doing Great Please Keep on Sharing. 5am Mester Scrum #5amMesterScrum #scrum #agile #business #scrummaster #agilecoach #coaching #philadelphia #philly #agilemindset #team #tools #tips #UAT #customer 5am Mester Scrum Show #619 went live on Youtube at 638am EST Thursday 5/13/2021 from Philadelphia, PA. Happy Scrumming, Social Media: - search 5amMesterScrum or #5amMesterScrum and you should find us and if not please let us know LinkedIn, Youtube, Facebook, Instagram, Twitter, TikTok Podcasts: (search 5amMesterScrum)
Links: https://www.duckbillgroup.com/blog/aws-cost-allocation-guide-tagging-best-practices/ https://www.duckbillgroup.com/blog/aws-cost-allocation-guide-identifying-your-costs/ TranscriptCorey: If your mean time to WTF for a security alert is more than a minute, it's time to look at Lacework. Lacework will help you get your security act together for everything from compliance service configurations to container app relationships, all without the need for PhDs in AWS to write the rules. If you're building a secure business on AWS with compliance requirements, you don't really have time to choose between antivirus or firewall companies to help you secure your stack. That's why Lacework is built from the ground up for the Cloud: low effort, high visibility and detection. To learn more, visit lacework.com. Jesse: Hello, and welcome to the AWS Morning Brief: Fridays From the Field. I'm Jesse DeRose.Amy: I'm Amy Negrette.Tim: And I'm Tim Banks.Jesse: This is the podcast within a podcast where we talk about all the ways we've seen AWS used and abused in the wild, with a healthy dose of complaining about AWS for good measure. Today, we're actually going to talk about a very specific listener question that we didn't get to last week, but really, we had so many thoughts on this topic that we wanted to break it out into its own episode. So, today we're going to be talking about tagging, and the importance of tagging, and how tagging can be used. And when I say tagging, specifically we're talking about user-defined cost allocation tags. The original question that I'll read off was from [Aaron 00:00:58].Aaron asks, “Is tagging over-recommended as a cost reporting mechanism? I recently took on managing my company's AWS bill and when talking to AWS and reading third-party blog posts about cost management, a solid tagging strategy is often extolled this step zero for understanding AWS costs. Based on what I know about AWS so far, this approach seems like it may work for some aspects of cost management, but does not seem to be a sound strategy for more formal cost reporting, like budgeting or calculating total spend for a given product or cost center. To me, these activities require complete or near-complete accuracy the tags just don't seem to be able to provide since there are some costs like data transfer that aren't tagged, and the fact that the tags are not retroactive—” that's a big one that I can say is super frustrating for me. “Is there something I'm missing here? Is there in fact, a way to use these tags to ensure that 100% of an AWS account's costs are in fact attributed back to a specific cost center accurately? It seems drastically simpler to embrace a multi-account strategy where each account is simply billed to whatever cost center makes sense to the organization.” So, Amy and Tim, again, the main question here is, is tagging over-recommended as a cost reporting mechanism?Tim: The simple answer is no, it is not over-recommended. And the question makes a lot of good points around some of the heartaches and some the problems that come with tagging, specifically about tags not being retroactive, but, if you're going to make changes to reflect changes in the past, I mean, you know, I don't really have a good answer for that, if we're being honest. But if we're talking about going forward, tracking costs from this point forward, tagging is going to be a much more concise solution than using multi-account strategy. That said, there are a lot of reasons you should use multi-account strategy and tagging together. Multi-account strategy and tagging strategies should definitely be an ‘and' situation, not an ‘or' situation. That's like pizza or steak. No. It's both pizza and steak.And I feel like because there are a number of non-cost reasons to use multiple accounts, especially in AWS, the biggest concern of which are service limits, right? Service limits, as you know, are done by account by region, so, if I have a service limit of S3 buckets that I can create—and I think that the hard limit is, like, one thousand—once I need that one thousandth and one S3 bucket, I have to create another account. That account can still be production, it can still be for all the same things that I've used for anything else, but I had to add another account so I can spin up S3 buckets. So, how do I track those, what those buckets are for, what those costs are going to be? I'm going to track those with tags.And I'm going to track those tags from the payer account, or from up in the organization. So, as you set up multiple accounts, you can have—even if they're all production, they still need to be tagged. Even if they're all dev, they still need to be tagged. If you're using the account vending machine style stuff from Control Tower where you spin up a sandbox account, you run some stuff, and then you throw it away, tagging is going to be the best way to track those costs, not just the fact that this account is named a certain thing. Names are arbitrary; they don't really reflect necessarily what they're going to be for, accounts can come and go.So, I don't necessarily like the use of name. Plus, sometimes it's hard to do that if you're doing, like, [unintelligible 00:04:21] various countries and things like that, various languages. Different things can impart different meanings. Tags also still probably use language problems, but they are arbitrary values. You know you're going to try and lump these all together; that's all that matters.So, I definitely think that, if we're using tagging, tagging is going to let you be more concise with your costs, it's going to let you apply costs across different accounts more readily, it's going to let you apply costs across different cloud providers, especially if you use one of the CMP tools like CloudHealth, or Cloudcheckr, or something like that and you run production workloads from a single cost center across multiple clouds, you're going to want to tag those in those tools, so, that way, you can keep a consistent track and more concise tracking of costs, versus just using account names. Account names after a while is going to just become unmanageable when it comes to tracking costs.Amy: I totally agree. And one of the big things that I harp on, especially on this podcast, is that if you're worried that it's not going to be as explicit as other billing methods, you will still at least have that data. You will still know per resource—if it's properly tagged—who it's supposed to be charged to and who owns it. You would make that decision on an architectural level, you should also make it for your bill, just to make sure that if you ever need that information in the future, you can go get it. You're not going to get it—since they don't happen retroactively, then you may as well do it as early as possible.Jesse: Yeah. It's super frustrating that a lot of this information is not available retroactively. And while I understand the technical limitations to that, I can't harp enough why starting to tag resources early is super, super critical to understanding that spend, and using that tagging setup, that tagging policy, to better understand your spend in a number of different ways. But again, I also want to call out that, like, I've been saying everything about tagging related to spend, there are other ways that tags can be beneficial to your organization. I've seen organizations where security needs to know, are all of the containers that were running patched to a certain level?Are all of the AMIs that we're running patched to a certain level? Tags can do that; tags can help you understand what resources are using a certain AMI version, or a certain container version, or other security pieces that are important for security to know and be able to understand that all of these resources are patched to the latest available version of whatever we're looking at. One of the things that we talk about a lot in this podcast is having conversations with other teams because I feel like cloud cost management is not just an engineering responsibility. It's a responsibility of finance, and product, and security, and IT because there's all sorts of different groups that may ultimately be using the cloud. And that's kind of important for everybody to be on the same page in terms of how you're using the cloud. And so it's not just about tagging so, you can know the cost of something, but tagging so that you can know all these other important things like security, like product details, like maybe IT details, all these other different use cases for different departments that are also involved in cloud usage.Corey: This episode is sponsored in part by ChaosSearch. You could run Elastic Search or Elastic Cloud or Open Search, as they're calling it now, or a self hosted out stack. But why? ChaosSearch gives you the same API you've come to know and tolerate, along with unlimited data retention and no data movement. Just throw your data into S3 and proceed from there as you would expect. This is great for IT operations folks, for App performance monitoring, cyber security. If you're using ElasticSearch consider not running ElasticSearch. They're also available now on the AWS market place, if you prefer not to go direct and have half of whatever you pay them count toward your EDP commitment. Discover what companies like Hubspot, Clarna, Equifax, Armor Security and Blackboard already have. To learn more visit chaossearch.io and tell them I sent you just so you can see them facepalm yet again.Tim: Yeah. I think there's this idea that comes, I think, from very legacy data center operations where you're going to use an account name to, kind of, specify what it does and where it comes from in the same way that you would use, like, a host naming scheme to define what a computer is and what it does and things like that. And I think that can be practical, but sometimes it's often short-sighted, especially as an organization grows, and you create more accounts, and you bubble up other accounts [unintelligible 00:08:21] accounts. It comes time to sign the EDP and you need to have a master payer account, you acquire some other accounts and things like that, and then all of a sudden, whatever naming schemes they used is now integrated into what your naming scheme is. And that becomes, maybe, unmanageable.So, I've always preferred to have account names. I mean, if you need to have it specified, understand it's going to just be for humans to, really quick, find it, but I'm just as content to have an account name be a UUID and then have some other kind of method for looking at what it does or assigning billing to it. Because in the end, like I said, I prefer to use tagged resources to define what they are and where they go. They are obviously going to be exceptions made for things that are, like, dev, test, UAT, or something like that, where [unintelligible 00:09:06] are different, but we're still talking about changes on an account, and then you make the changes on the account as you need. And then if it's for production, then obviously those accounts can be tagged as production. They don't have to necessarily be named production.Amy: Right, and I think, security boundaries and resource permissions aside, if you're just looking at trying to track costs to a resource, an account ID is really just one piece of information as opposed to tags, where you can just overload it with as much information as you need.Jesse: Absolutely. Now, one other thing that I do want to talk about is we're talking about a lot of good use cases for tags. We should also talk about some of the not-so-good use cases for tags, or some of the not-so-great best practices for tags that we have seen. Amy, I know specifically you had some examples that you want to talk about.Amy: Yes. [laugh]. So, this comes from having to do data normalization, back in the day. First thing you never want to do when developing your tag strategy is you want it to just determine things like casing, or whether or not you're allowed to use spaces because I've seen in different places, not just on resource tagging, but also the way information is meta-keyed, where they have their key name identical to a completely different key name, like you have ‘product owner' except ‘product owner' is capitalized in one instance and not capitalized in another instance, and these are considered to be different things within the system. Whether or not that's your intention, they will show up as different things on some visualizations. On other visualizations, they will get normalized and turned into the same thing. So, it really depends on what it is that you want your reports to look like and what you want these resources to be able to tell you.Jesse: Yeah, that's a really great point that one of the things that we haven't potentially touched on for this episode, and is covered in a number of other podcast episodes and blog posts in general is a good tagging strategy is equally as important as tagging coverage. Knowing that the tags should all be uppercase or all lowercase, or use these types of characters and not those types of characters is equally as important as making sure that those tags are applied accurately across all of your resources. So, as you are talking about tagging, as you are thinking about tagging, even in the multi-account situation, it is important to think about, what are the best practices? What are the standards that you want for your tagging? And again, this may not be a conversation that you have in a silo by yourself; this may be a conversation that you have with a number of other teams because there may be a number of other teams that need certain information from tags and need to use certain letters or special characters. And you need to incorporate all of that; you need to include all of that in the tagging policy that you create.Tim: I think it's also important, though too, that with most analytics tools, even if it's just, you know, Cost Explorer within AWS Console, you can still aggregate those tags together, especially if you're doing costs, you can absolutely aggregate multiple cases and things like that. CloudHealth, I know you can select multiples or anything that matches a pattern regardless of case and do it that way. So, it is possible to work around those mistakes. It's not a, “Oh, we didn't have our tagging schema set up correctly, so, throw your hands up and give up.” It's just something else you have to consider, and hopefully, you can normalize going forward.Jesse: Yeah, absolutely.Amy: And really, the other thing is to make sure that the tags that you choose makes sense for what you're doing. So, if you are tagging the environment and that is the only tag that you put on a resource, then just know that when you start pulling things up in Cost Explorer or Cost and Usage Report, that's the only thing you're going to see. So, you're only going to see things split up between your production account and your dev account; you're not going to be able to see what service is actually costing you more money, or what storage, as associated to a team, has suddenly decided to grow beyond the usual predictive usage patterns.Jesse: Yeah, we have some recommendations we can make if you are just getting started on your tagging journey, and I will make sure that information is shared in the [show notes 00:13:53]. But ultimately, again, it becomes a strategy conversation. It becomes a question of what are you trying to accomplish? What are the goals that you're trying to accomplish? What is the information that you want out of tagging? Because that's ultimately going to drive what you tag and why you tag.All right, that'll do it for us this week, folks. If you've got questions you'd like us to answer, please go to lastweekinaws.com/QA, fill out the form and we'd be happy to answer your question on a future episode. If you've enjoyed this podcast, please go to lastweekinaws.com/review and give it a five-star review on your podcast platform of choice, whereas if you hated this podcast, please go to lastweekinaws.com/review. Give it a five-star rating on your podcast platform of choice and tell us what are the most important things that you focus on in your tagging strategies? What are the things that you tag for your company?Announcer: This has been a HumblePod production. Stay humble.
This is a Podcast that is meant for Mature Audiences with a good grasp of reality. Multiple topics are discussed, form your own opinion and do your own research. If you are easily "triggered" this podcast is not for you. “A society doesn’t have to be uniform in order to be united” - An Unidentified Black Male On this episode of "Tha Block is hot podcast", Tim and Fame are joined by Special guest David Mendez and discuss God and UAP’s, UFO’s, UAT, and starting an open mic. Follow us on: Instagram: @thablockishotpodcast , @Itstimreddhoes @suh.foo Twitter: @_thablockishot Discord: Tha Block is Hot Podcast Send us an email @:Thablockishotpodcast@gmail.com --- Support this podcast: https://anchor.fm/unidentified-blackmale/support
Today's question is all about User Acceptance Testing (UAT). UAT is an anti-pattern in Scrum. There...we said it. It's just a bad idea. You're creating a phase gate that makes your agile practices look a lot like a waterfall. All of this and more are discussed in today's episode of Your Daily Scrum with Todd Miller and Ryan Ripley. How does your Scrum Team handle UAT concerns? Let us know in the comments! This is one of those Scrum Master interview questions about Scrum that can throw you off. Do you understand how UAT creates a phase gate that slows down your Scrum Team? These Scrum Master day in the life questions can be tricky. Perhaps some Scrum Master training could help? Want to learn more about Scrum? Buy Fixing Your Scrum: Practical Solutions to Common Scrum Problems - https://amzn.to/3fMpH5a Join Ryan and Todd in a Professional Scrum Master course: https://www.scrum.org/agile-humans And make sure you subscribe to the channel! DISCLAIMER: Links included in this description might be affiliate links. If you purchase a product or service with the links that I provide, I may receive a small commission. There is no additional charge for you! Thank you for supporting the channel so we can continue to provide you with free content each week! FTC DISCLAIMER: This video is not sponsored by anyone. Sharing Scrum knowledge to help you grow as a Scrum Practitioner and to solve complex problems. #scrum #agile #professional scrumSee omnystudio.com/listener for privacy information.
Project Management and our Full Site process are the names of the game in this episode of Southern Fried eCommerce. Eric and Jay peel back the curtain on how our project management team assists their clients to build their new websites. EYStudios Project Managers, Chris Kosiba and Ivonna Gonzalez bring their years of project management experience to the conversation providing valuable insight and their love of all things nerdy.Topics for this episode include: What clients need to do to prep for the onboarding process.How discovery differed from scope creation during the sales process.Navigating scope changes and what to expect.Our team's quality assurance (QA) testing vs the client's user acceptance testing (UAT).The exciting go-live process Don't Forget To Subscribe, Rate & Review! Check us out online at eystudios.com. Also, be sure to follow us on social media for more updates from the studio @eystudios.
To learn more about UAT visit: www.umbraappliedtechnologies.com *Be here Tuesdays and Thursdays for new podcasts on each Subsidiary within UAT Group. *Leave us your feedback below. Help us understand what you'd like to know more about. Don't forget to subscribe to our Youtube Channel, Facebook and Twitter for all of the latest UAT Group Updates. www.facebook.com/umbraappliedtech www.youtube.com/channel/UCLRE8eYy9eTUBiTbMHCYhng twitter.com/UmbraAppliedTec
Dentro de poco llegará la 6ta Enmienda al Sistema Armonizado a México, por lo que decidimos traer un tema que sabemos no te querrás perder: Las enmiendas a la Nomenclatura y los negocios internacionales, tema que Francisco Burgoa, Coordinador de la Carrera de Comercio Exterior de la UAT y Director de Burgoa Consulting nos explica y relaciona una con la otra.
ANUL 2020 PENTRU APL ȘI CALM – PROVOCĂRI, REALIZĂRI ȘI NOI ORIZONTURI! Mai multe provocări și mai multe realizări. Astfel va rămâne anul 2020 în memoria reprezentanților autorităților publice locale din Republica Moldova. În cadrul emisiunii „La Înălțime cu CALM” vorbim cu directorul executiv al Congresului Autorităților Locale din Moldova Viorel Furdui despre cum a fost pentru autoritățile locale și CALM anul care tocmai s-a încheiat și care sunt dezideratele din noul an. De asemenea, aflăm de la primarii municipiilor Comrat și Ceadîr-Lunga Serghei Anastasov și Anatoli Topal ce i-a motivat pe consilierii municipali să voteze în unanimitate pentru aderarea acestor UAT la CALM.
In this architect tip, we’re going to be talking about Versionable Architecture Diagrams! As always here at Clear Measure, we are a software architecture company, and our goal for you is to be able to move fast, deliver quality, and run your systems with confidence! Having architecture diagrams that work for you as part of that. Now we want to have beautiful diagrams just like this one, but doing them in Visio, it just is hard. So, let's get into it. The first thing that we need to do in order to get started with these types of diagrams in this method in a versionable fashion is to install a few chocolatey components. And it's really easy. You can download the files. If you've ever used chocolaty before, you just run these components, make sure you're in a power shell window that's running as an administrator. After that happens, you open up VS code and install the PlantUML extension. We already have it installed here, so it's ready to go. And immediately after that, you can start creating your own diagrams with PlantUML. Now you can use PlantUML, wrong or you can use some C4 extensions, which we'll talk about. Now, it starts with your development process. And if you've gotten into our onion DevOps patterns, then this will be very familiar with you. But this is essentially describing a DevOps pipeline for a particular application or for a particular team. We have our git repository; our integration build, that kicks off a series of environments that we have with our TV environments or multiple or UAT manual testing, environment production, pushing telemetry over to Azure, application insights, and then all of the deployments, getting the deployable packages from Azure artifacts. So we want to describe this, but we don't want to mess with Visio or any of the diagramming tools and so we can do it in text. And this is that diagram in text and we're using the helpers the Azure plant, UML extensions and you can get those on GitHub. We define an actor, which is a developer, and we just start using the symbols and their objects. And these are methods essentially. And so we're using the symbols were defining the structure and then we're defining the process. The actors, the developer makes a change and pushes to Azure DevOps. And you can see each of the different objects is related either forward or backward with the single hyphen or double hyphen. And we can describe what they're actually doing. The text that we use to describe them is the text that is painted on the arrow between the symbols. And so the text on the left is translated easy, super easy versionable it's all text. And so the next type of diagram is the system level diagram. Example is if you're developing a new system, you already have an ERP system that a supplier uploads a file to and you want a customer to receive a text message. So we're kind of sketching out this new application that might have to consume some messages from our ERP system. OK, that's the system boundary. And so the system level diagram for this new application is going to be really, really simple. We define two persons. And again, we're using the C4 extensions defined by Simon Brown. And there's several supporters of Riccardo's, one of those that has some extensions out there for pommel and you can call it plantUML, you can call it pommel. But we're defining our extensions or defining the relationship between extensions. And that's it. We just hit Alt D and run the diagram. Easy as pie. We can change the layout left to right and it just kind of realigns and does its best to guess the direction of the diagram. But that's it for the system level. OK, so now that we've done the system level, maybe we want to zoom in to how we're going to structure this new application. The next level is the container level in C4, the container diagram. So we have this new application. Let's zoom in and then we try to figure out what is going to comprise that new application. We still have our ERP system, still have Twilio, still have the customer and the supplier. But now we're going to make the decision like, oh, maybe we'll use Blazor Web Assembly as a client. Maybe we'll use a .Net Core API running on the server. Maybe we'll use a SQL Server database. So we're now we're starting to define the architectural elements of how this new application is going to come to be. And in the same way, we just look at the text on the left and is very, very straightforward. We have a key new level, which is the system boundary. And within the system boundary, we've elevated one of our external systems to the system boundary. Then we have some containers for each piece that make up the new system and then relationships between them again, REL is short for relationships. So what do we need to dig in even more? We're going to zoom in again and start defining maybe some patterns for how we're going to implement Blazor, how we're going to implement the logic on the back end in the .Net process that's calling our database and running. So here we can see that we're describing a synchronous application bus and we have some command handlers and we have some query handlers and those are talking to the database. Maybe one of the command handlers calls out to the SDK or the API of the Twilio service in order to send the text message. And so that's great. Real clear level of understanding by this diagram for what we intend the structure of the code to come out to be. And in the text on the left, the definition of this diagram, again, super straightforward. We have a container boundary for the application, the .NET Core application that's running on the server. And we're breaking that up into components and relationships between it. And so, again, you can just define in text all of these symbols. And if you are familiar with markdown for documents, it's the same. So once again, to review, install a few dependencies via chocolatey. These are the three things that we need for the VS code extension to be able to generate these diagrams. Alt D is the hotkey in order to make the diagram pop up, hold down the alt key and press D and you can have system level diagrams and diagrams at various levels working for you. Hope this helps. Happy diagramming!
Join us for this great conversation with Sheri Hall as she shares her expertise from years of experience as a certified peer specialist. Sheri Purpose Hall also shared with us one of her poems that gave Janell chills and left Heather speechless. Sheri Hall is a goal-oriented manager, a certified peer specialist in Kansas and Missouri, and an artistic creative with over ten years of experience in non-profit operations, arts administration, advocacy, community organizing, and team development. She has extensive experience with Fortune 500 and international companies in user acceptance testing (UAT), vendor management, and business analytics. She is the Interim CEO of Poetry for Personal Power. Sheri started with P3 as a Sponsored Artist in 2012. During her time with the agency, she has worked to solidify relationships with community partners, developed a peer support program for the organization with an agency certification curriculum; developed agency processes; and assisted in writing grants that have yielded over $750,000 in agency funds. Artistically, Sheri Purpose Hall is a highly decorated writer and performance artist and founder of East of Red ArtHouse. She has four books: “Mélange du Femme Noir” (2019), "Black Girl Shattered" (2017); “Chosen for Both” (2015); and a workbook "Writing Wrongs: Writing to Heal" (2016) which won an award from Bike for the Brain. She is the 2020 National Spoken Word Awards Female Artist of the Year, 2019 Charlotte Street Generative Performing Artist Awardee and previous 2-year Studios Resident, and an Arts KC Inspiration Grant recipient (2017/2019). She has also represented Kansas City at the Women of the World Poetry slam (2017/18), at the National Poetry Slam (2015/16/17/18), and most recently at Rustbelt Poetry slam (2019). For more information check out: https://www.poetryforpersonalpower.org/ https://www.spokenpurpose.com/
Yeni serimizin ikinci bölümü ile karşınızdayız. Bu bölüm product manager nedir? Ne yapar? Gibi soruları Kurtuluş ile cevaplıyoruz. (00:00) - (18:35) Kurtuluş kimdir? Nasıl product manager oldu?(20:15) - Product owner vs Product manager(24:29) - UAT ve QA nedir?(36:50) - Ürün içindeki dönüşüm noktalarını nasıl takip ediyorsunuz?(1:01:00) - Smoke test(1:03:08) - Barış nasıl bir insan?(1:08: 27) - Kapanış• Kurtuluş Yıldız Linkedin hesabı:https://bit.ly/2ZLF5GF . • UAT: User Acceptance Testing, Kullanıcı kabul testi. Kullanıcıların, uygulamayı “kabul” etmeden önce, söz konusu uygulamanın gereksinimlerini ne ölçüde karşılayıp karşılamadığını ölçen süreçQA: Kalite Güvence Testi, üretilen üründeki hataları veya kusurları önlemenin ve müşterilere çözüm veya hizmet sunmada sorun veya problemleri önlemenin bir yoluhttps://bit.ly/3msJwQt . •Smoke test: Duman testi, bir ürünün herhangi bir ortama yazılımın dağıtılması sonrasında, ana fonksiyonlarının kontrol edilmesi amacıyla yapılan test•Firebase:https://bit.ly/3hCRfrF . •Mixpanel:https://bit.ly/2GXY8H9 .•Jobs to be done bölümü:https://bit.ly/2FlJZ60 . •Justmop Product Manager iş ilanı:https://bit.ly/2FACCrL .•Justmop'un diğer iş ilanları:https://bit.ly/2FBNQfD .
El subdirector ejecutivo de PAMI, Martín Rodríguez Alberti, describió cuáles son las acciones que desarrollan desde la obra social de jubilados y pensionados y resaltó: "Liberamos las trabas que puso el macrismo para el acceso a medicamentos gratuitos". En comunicación con el equipo de Rezo por vos, señaló que, a seis meses de la medida, "esa es una de las más importantes que tomó el Gobierno nacional". "Uno cada cuatro de nuestros afiliados antes antes no consumía los medicamentos que tenía que consumir porque los tenía que pagar y no contaba con ese dinero", precisó. Además, se refirió a la puesta en marcha de la tercera unidad de aislamiento transitoria (UAT) de la obra social destinada a la atención de pacientes con síntomas leves del nuevo coronavirus en el partido bonaerense de Hurlingham. "Son unidades con capacidad para albergar a 50 pacientes, personas mayores afiliados de PAMI, de casos leves de COVID", dijo.
If you're managing infrastructure, see how to gain more control over pre-production test environments by shifting to Azure and taking advantage of our dev/test subscription —you pay for infrastructure use only. Join Microsoft dev/test expert, Steven Murawski as he reviews great ways to get started with Azure Dev/Test. Assess the cost of spinning up a Dev/Test environment for your organization at https://aka.ms/azuredevtestpricing Watch a step-by-step overview with Jeff Woolsey who details the full Azure Migrate process at https://aka.ms/mechanicsazuremigrate Try out DevTest Labs for yourself at https://aka.ms/azuredevtestlabs
If you're managing infrastructure, see how to gain more control over pre-production test environments by shifting to Azure and taking advantage of our dev/test subscription —you pay for infrastructure use only. Join Microsoft dev/test expert, Steven Murawski as he reviews great ways to get started with Azure Dev/Test. Assess the cost of spinning up a Dev/Test environment for your organization at https://aka.ms/azuredevtestpricing Watch a step-by-step overview with Jeff Woolsey who details the full Azure Migrate process at https://aka.ms/mechanicsazuremigrate Try out DevTest Labs for yourself at https://aka.ms/azuredevtestlabs
In this episode, Jeffrey Palermo is speaking with Michael Washington, an ASP.NET and C# programmer! Michael has extensive knowledge in process improvement, billing systems, and student information systems. He also is the founder of two websites, AiHelpWebsite.com and BlazorHelpWebsite.com — both fantastic resources that help empower developers. Michael resides in Los Angeles, California, with his son Zachary and wife, Valerie. Together, Jeffrey and Michael speak about Blazor in-depth. They discuss the current state of Blazor; Oqtane, a modular application framework for Blazor; server-side Blazor apps; Radzen, a low-code, RAD solution; his books on the topic of Blazor; and his advice, tips, recommendations, and resources for Blazor as well. Topics of Discussion: [:38] Be sure to visit AzureDevOps.Show for past episodes and show notes. [:46] About Jeffrey’s current promotions and offers. [1:26] About today’s episode with Michael Washington! [1:52] Jeffrey welcomes Michael to the show. [2:00] Michael introduces himself and speaks about his websites. [2:51] With so many technologies coming out, what is it about Blazor that attracted Michael? [4:30] Does Michael see a thread that connects the Blazor community with certain other technologies? [8:15] Michael explains what Oqtane is. [10:25] Michael shares his thoughts on why Blazor caught the attention of the community whereas something like ASP.NET MVC did not. [14:31] Is Oqtane in production? And will Oqtane work with the release Blazor? [16:36] Are there currently any server-side Oqtane apps in production? [18:30] Michael shares how easy it is to update Oqtane. [21:15] A word from Azure DevOps Podcast’s sponsor: Clear Measure. [21:40] Jeffrey shares some quick announcements. [23:30] Michael talks about the DevOps Pipeline experience and gives his thoughts on how someone who doesn’t want to use the in-app installer experience on production (but they have a test automation environment and a UAT manual test environment before they get to production), gets the installer experience to work when they’re promoting it using Azure Pipelines? [26:00] Michael speaks about what Oqtane is constantly evolving to address. [27:47] Beyond the quickstarts in Blazor, what has Michael had to think specifically about? Are there any “gotchas?” And what are some of the challenges as someone who has put multiple Blazor apps in production? [30:30] Michael speaks about his books on the topic of Blazor. [32:47] Michael shares some information about Lightswitch and the difference between it and Blazor. [33:38] Michael gives his opinion on how Lightswitch was positioned and why it ultimately didn’t work out. [35:46] Radzen: a Lightswitch-like alternative for Blazor. [38:10] Michael highlights the importance of productivity. [42:15] Why Michael focuses so much on Oqtane. [44:32] Michael speaks about the scalability and performance of Blazor server-side apps. [48:40] Are there any UI controls that Michael has found for Blazor that are really awesome and complete at this stage? [50:50] Michael recommends some go-to resources for those who want to get started with Blazor. [51:57] Jeffrey thanks Michael for joining the podcast! Mentioned in this Episode: Azure DevOps Clear Measure (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! bit.ly/dotnetdevopsebook — Click here to download the .NET DevOps for Azure ebook! bit.ly/dotnetdevopsbookforcommunity — Visit to get your hands on two free books to give away at conferences or events! Jeffrey Palermo’s Youtube Jeffrey Palermo’s Twitter — Follow to stay informed about future events! Jeffrey@Clear-Measure.com — Email Jeffrey for a free 30-point DevOps inspection (regularly priced at $5000!) — Spaces are limited! AiHelpWebsite.com BlazorHelpWebsite.com Blazor.net github.com/Oqtane An Introduction to Building Applications with Blazor: How to get started creating applications using this existing easy to use Microsoft C# framework, by Michael Washington Blazor Succinctly, by Michael Washington Radzen Telerik Syncfusion WebView for .NET 5 Microsoft Silverlight Oqtane .NET Nuke ASP.NET MVC Angular Vue React “Advanced Blazor Templating,” by Michael Washington NuGet ADelfHelpDesk.com Visual Studio Lightswitch EF Core Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.
Tired of working hard on a project only to have sneaky bugs get in the way at the final UAT? In this episode, I'm joined with DPM expert and product coach Michael Luchen where we discuss the power of a quality management plan in order to get things done right and improve product and process.
FINRA ingests up to 100 billion trading data records daily that need to be obfuscated securely when moving them. This data replication and obfuscation supports production data analysis, setup environments for user acceptance testing (UAT), and troubleshooting production issues. With the automated, one-click solution, FINRA teams can leverage the pipelines and within hours (versus days) get data for analysis, development, and testing. The solution is serverless, leveraging AWS Step Functions, AWS Lambda, Amazon ECS/AWS Fargate, Amazon SNS, and Amazon SQS. FINRA plans to open source this by the end of this year so attendees will be able to adopt the solution.
This week, Jeff Hollan is joining the podcast! Jeff is a Principal Program Manager on the Azure Functions team. He is always developing and shipping solutions on the latest and greatest tech, and is passionate about speaking at conferences around the world — he truly lives and breathes all things serverless! Jeff will be sharing tons of information about Azure Functions and the landscape of serverless on this episode! He shares how to start with going serverless and navigating the many different ways to do it, and gives his recommendations on where to get started with Azure Functions if you’ve never written a function before. Jeffrey and Jeff also trace through the DevOps lifecycle for a function — really digging as to not miss any important details! Topics of Discussion: [:40] Be sure to visit AzureDevOps.Show for past episodes and show notes! [:48] Jeffrey gives a few quick announcements. [:55] About today’s guest, Jeff Hollan. [1:13] Jeffrey welcomes Jeff to the show! [1:31] Jeff shares his career journey up to this point in time. [3:22] Jeff speaks about what is new in serverless as well as the options that people should be paying attention to these days! [4:55] Without Visual Studio, can a function just be PowerShell? [6:25] With there being so many different ways now to do serverless, how do you even choose? [9:17] Can you write some code as an Azure function but then install it as a regular Windows service inside of an on-premise VM? [11:06] When would Jeff say not to use Azure Functions and would alternatively recommend something else? [13:58] What is the deployable package format that is best for deployability to an Azure function resource in Azure? [18:30] A word from the Azure DevOps Podcast’s sponsor: Clear Measure. [19:00] Jeffrey gives some more announcements and lets you know where to get a hold of his book, .NET DevOps for Azure. [20:50] Jeff shares the recommended way of creating Azure resources for the environments. [23:26] In Jeff’s opinion, is it a better pattern to deploy the command lines for tweaks and modifications to your Azure functions’ resource at the same time you deploy the application changes? Or, is it better to have a separate pipeline? [25:11] Does the slot concept work the same way as Azure Websites or are there any differences? [28:00] For those who haven’t used slots before, Jeffrey asks Jeff: ‘If someone has a production environment, a UAT environment, and two other environments, are they creating one Azure function with 8 slots or do they need a separate Azure function per environment? Is there a general rule of thumb? [30:55] Jeff speaks about when and why functions can go cold. [32:25] With Azure Functions, what are the configurations to choose to just play around with it for as-close-to-free as possible? [34:05] Jeff speaks about what’s coming down the pipeline that people should be keeping an eye out for! [35:34] If you’ve never written a function, Jeff recommends some go-to resources to get started with! Mentioned in this Episode: Azure DevOps Clear Measure (Sponsor) Microsoft Ignite 2019 Party with Palermo - Microsoft Ignite Conference 2019 (Eventbrite) Special pre-release offer that expires Nov. 2nd: email Jeffrey at Jeffrey@Clear-Measure.com and tell him who his very first guest on the podcast was then he’ll send you a free e-book copy! .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Pre-order on Amazon here! bit.ly/dotnetdevopsebook — Click here to download the .NET DevOps for Azure ebook! bit.ly/dotnetdevopsbookforcommunity — Visit to get your hands on two free books to give away at conferences or events! Jeffrey’s .NET DevOps Bootcamp (Oct. 28-30th, in Lakeway, TX) Jeffrey Palermo’s Youtube Jeffrey Palermo’s Twitter — Follow to stay informed about future events! .NET Conf 2019 Jeff Hollan’s Blog Jeff Hollan’s Twitter: @JeffHollanAzure Functions Python Docs.Microsoft.com Microsoft Learn Azure Functions Channel on Youtube Azure Functions on Twitter Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.
Today’s episode in a panel discussion on Value, Success, and Joy with John Riley, An Agile coach and consultant (https://www.readysetagile.com/), and Jeffrey Cochran, Human Resource consultant (https://www.hrperspectives.org/) in terms of self, family, business, and your customer. At the core the customer focus answers the question “Who’s the customer and what problem do they have that needs solved?” The importance of collaboration and negotiation are discussed along with the damaging effects unresolved personal biases can have. This rolls into a shared vision within the team and with the customer so that a balance can be found between scope, time, and budget. Product development is an important component making Agile methodologies ideal for providing incremental deliverables the customer can examine and determine the appropriate path for solving the problem. This leads to the creation of an agreed-upon mission statement which increases the odds of success for Human Resource efforts especially with regards to talent acquisitions. The conversation moved to the foundational relationship between product management (the Iron Triangle) and project management (the Triple Constraint) which together provide a basis for weaving all the intangibles together leading to the creation of a realistic plan, effective execution, and maximum value for the customer. An important consideration here is products are ever-evolving while projects have specific end-dates. This means collaboration with the customer and between product and project management is essential to avoid confusion. Agile methods are ideal in such situations. The importance of the 3 Pillars of Agility, transparency, inspection, and adaptation, were discussed. This is important in product development because some of the pieces of the puzzle are firmly designed, e.g., labor law, limits of the technology used, etc., and others are more fluid requiring constant experimentation and, again, close collaboration with the customer. Examples of the latter being screen design, product feature layout and ergonomics, and the ultimate feature set the product contains. This increase in complexity makes vulnerability among all the stakeholders involved a key consideration. Honesty, transparency, and authenticity are critical if the collaboration is to be successful. The conversation moved to the importance of vulnerability and collaboration to increase the probability of experiencing joy and thriving. This especially is required so that the team can fail forward fast in determining exactly what the customer needs to solve their problem. It also pushes on the client to do their part in creating a User’s Acceptance Test (UAT) that becomes the hub around which all work is performed and gauged for adequacy. The situation can get dicey if the UAT evolves over time. Stress can go up putting pressure on each individual’s ability to trust. An example was presented when hubris, arrogance, and a lack of honesty, humility, and team work are used to solve problems...France’s attempt to build the Panama Canal. A minimum of 30,000 workers died and France was brought to the edge of bankruptcy. This is on contrast to America’s approach where, among other things, Dr. Walter Reed went in and determined solutions needed for the public health issues present. To encourage the listener the podcast closes with Jeffrey, John, and Gary each giving their individual sense of Value, Success, and Joy. For Human Resource concerns contact Jeffrey Cochran at: https://www.hrperspectives.org/ 565-8073 jcochran@hrperspectives.org For Agility needs including coaching contact John Riley at: https://www.readysetagile.com/ 664-9606 john@readysetagile.com You can contact me, Gary Monti, at: https://www.ctrchg.com/ 614-388-8917 gary.monti@ctrchg.com This episode is sponsored by the Business Agility Midwest Conference, November 6-7, 2019, Columbus, OH. You can access the conference web site directly for any comments or questions, https://businessagilitymidwest.com/, or you can contact me at https://www.ctrchg.com/contact/ In line with Business Agility and dealing with complex situations, you can download my free e-book MINDSET – 5 SIMPLE WAYS TO LOOK AT COMPLEX PROBLEMS and learn how to find a simple vantage point from which you can resolve challenges. Your feedback is important. Choose from the following options: place a review in iTunes, click on “leave a comment” below, send any comments along with your name and the show number to support@ctrchg.com or call us at 614-388-8917 and leave a message including your name, the podcast number and podcast title. Listen to future episodes for our reply.
On this week's episode of To The Top Talk- we recap this past week's game against UAT, preview the upcoming game against the UTEP Miners and anticipate the repeal of prohibition at MM Roberts Stadium. #SMTTT
Talking DevOps with Microsoft today. Special guest Michael Levan, a DevOps professional and Cloud Engineer. Twitter: @TheNJDevOpsGuy Blog: https://www.thelifeofanengineer.org ARM What is ARM? ARM is a configuration management tool that has a JSON syntax. It allows you, in a programmatic way with the use of functions to write your software-defined-infrastructure. These functions are anything from concatenating to creating random values. You define your infrastructure by calling certain API's for your resources. These API calls are for anything from VMs to storage accounts to function apps. ARM is a configuration management tool much like Ansible and Chef. AKS What is AKS? AKS is an Azure-hosted Kubernetes service. This service allows you to tie your Kubernetes micro-service infrastructure into Azure. Azure hosts the master node for you (where the Kubernetes API is) and allows you to manage your workers. Azure What is Azure? Azure is a cloud based platform to host your infrastructure vs using standard on-prem. Azure DevOps What is Azure DevOps? Azure DevOps is an entire toolset of DevOps tooling. Azure DevOps can also be used to deploy things in ESXi and AWS. Despite the name, it's not just for Azure. Azure DevOps is comprised of; A ticketing system A wiki CI CD Test plans Azure Repos (Like Github) PowerShell What is PowerShell? PowerShell is a programming/scripting language that is used to automate your deployments. Anything from building Docker settings to deploying VMs to building full-fledged automation solutions for your entire infrastructure .NET Framework What is the .NET Framework? The .NET framework is what is under the hood of PowerShell. Because of this, you're able to use assemblies (DLLs), namespaces, classes, and methods of the .NET framework to incorporate into your automation-based PowerShell tooling Git What is Git? Git is a distributed version control system to track your source code (commits, pushes, pulls, history, etc.) of your Dev, UAT, and Production code base. Github/Azure Repos What is Github/Azure Repos? This tooling is where you store your source code and use Git to interact with your source code (for DVC) VSCode What is VSCode? VSCode is an IDE/script editor to write your code. VSCode also has extensions that allow you to tie into services from Azure to PowerShell to Python to YAML etc. https://github.com/AdminTurnedDevOps/WebAppTesting/blob/master/New-Smoketest.ps1 https://www.thelifeofanengineer.org/2019/08/devops-tooling-in-microsoft-realm.html https://github.com/AdminTurnedDevOps/WebAppTesting/blob/master/New-Smoketest.ps1
As the number and types of systems registrars offices interact with or manage has increased, the need for structured user acceptance testing (UAT) has also increased. Understanding the need and creating an extensible, repeatable, collaborative process will go a long way to making your life simpler when the need for testing rolls around (and it will). Guests: Tara Sabbagh, Associate Registrar at American UniversityPaula Palhus, Assistant Registrar at American UniversityJoe Papari, Director of Enrollment Services for Student Systems and Technology at Southern Methodist University Key Takeaways: User Acceptance Testing (UAT) is critically important to ensure the continued functioning of all of the systems we use in our day-to-day work from ERPs to niche applications; UAT is increasingly part of the role of the registrar, not outside the scope of our work; establishing best practices for UAT is important for ongoing success; a strong relationship with your IT shop makes a big difference! References and Additional Reading:There are many, many search results for “user acceptance best practices” (over 40,000,000 in 0.36 seconds according to Google) and I encourage you to explore or refine that search. Here are some high-level results that provide good, basic overviews for the process but are not specific to higher education nor the registrar’s office specifically:Usersnap: Fundamentals on setting up your user acceptance testing workflowWhat Is User Acceptance Testing (UAT): A Complete Guide What is User Acceptance Testing (UAT)? with Examples
Today is July 22nd, 2019 and it's an all new Human Factors Cast hosted by Nick Roome, Blake Arnsdorff with special guest Jeff Olson. HUMAN FACTORS NEWS 35 Injured on Air Canada Flight to Australia After Aircraft Hits 'Sudden Turbulence' https://gizmodo.com/35-injured-on-air-canada-flight-to-australia-after-airc-1836296050 Video Captures Delta Air Lines MD-88 Engine Failing Mid-Flight Before Emergency Landing https://gizmodo.com/video-captures-delta-airlines-md-88-engine-failing-mid-1836232799 To Reduce Hospital Noise, Researchers Create Alarms That Whistle and Sing https://www.nytimes.com/2019/07/09/science/alarm-fatigue-hospitals.html A hospital introduced a robot to help nurses. They didn’t expect it to be so popular https://www.fastcompany.com/90372204/a-hospital-introduced-a-robot-to-help-nurses-they-didnt-expect-it-to-be-so-popular It Came From Reddit Posted byu/bigfatbeard Seeking resources and insights on conducting a UAT (User Acceptance Testing). Hi everyone, I am conducting my first UAT in a couple of months and would to hear from those who have been a part of a UAT or conducted a UAT. I have found a couple of resources, but they are focused on the definition of UAT and the process. I am looking for insights, materials, tips, dos, and don'ts. I've moderated User Testing sessions in the past, but I feel this (UAT) may be a bit more involved. Posted byu/theUnknown I feel like I'm not learning enough at my internship. I'm a final year design student. I'm currently working at a design firm and it's one of the best in the country. But I haven't learnt a lot. I was supposed to work on a design project but I was assigned a research project that was more experimental and vague than I'd hoped for. My learning has been quite meagre and I'm disappointed because I turned down offers from one of the top 3 companies in the world and one of the fastest growing startups - they both paid a lot more and the name would've been a huge plus. I chose this because one of my design idols is a client here and this firm is moving very quickly. But over the last 2 months, I've effectively learnt nothing. I've realised that one. I'm quite poor and I do have to continue working. So, I now have 3 options ahead of me - stay at this firm and switch to a design project. I'll work on it for 6 weeks. I could switch to the project that includes my design idol or work on a new project with 2 good designers. switch to the start up that's doing really well. they offer more money and I know they tend to expect a lot of hands on work stop everything, resume my education at university (which sucks) and freelance In the future, I'd like to work at a small start-up and make a great product and build a great team. I know these sound like lofty goals but I do believe that I can do it. What will help me get there? Support us on Patreon: https://www.patreon.com/humanfactorscast Follow us on LinkedIn: https://www.linkedin.com/company/humanfactorscast Follow us on Twitter: http://www.twitter.com/HFactorsPodcast Follow us on Facebook: https://www.facebook.com/HumanFactorsCast Follow us on Soundcloud: https://www.soundcloud.com/HumanFactorsCast Follow us on YouTube: https://www.youtube.com/HumanFactorsCast Our official website: https://www.humanfactorscast.com Follow Nick: https://www.twitter.com/Nick_Roome Follow Blake: https://www.twitter.com/DontPanicUX Video/photo editing by Offlineable: https://www.youtube.com/user/offlineable Join us on Slack: https://bit.ly/2KDael9 Take a deeper look into the human element in our ever changing digital world. Human Factors Cast is a podcast that investigates the sciences of psychology, engineering, biomechanics, industrial design, physiology and anthropometry and how it affects our interaction with technology. As an online source for human factors, psychology, and design news, Human Factors Cast is your essential resource for new, exciting stories in the field.
Helping us move from awareness to action this week are three students from the University of Advancing Technology (UAT). Each year, students participate in the Innovation Challenge, creating projects to impact the world! You can find out more about UAT, the Innovation Challenge, Perimeter83 and what’s happening at UAT at UAT.edu, LinkedIn, Facebook, Twitter and Instagram. Please subscribe to the show and leave a review! Thank you to PADT Inc for their partnership through sponsorship! Interested in starting your own podcast? Click HEREFor templates of letters/emails and or talking points referenced in the show, or simply to say “hi” email us at contact@GeorgeGrombacher.com.
Regardless of how would you execute delivery of your digital product, inhouse or by contracting, the value of estimating delivery efforts is essential to the two most influential parameters to your business - time and money. Additionally, estimated cloud hosting costs for dev, UAT and production environments are good to have, as well as minimum expected support engagement if the product requires such an effort. I keep stating that planning is everything. Project management methodology, as agile and as lean as it gets, should not influence the fact that there must be solid metrics against execution of a digital product. Even when contracting a team on TnM basis, expectations should be set for at least the next delivery iteration. Subscribe, share this, pass it on, let me know what you think. New episodes at least every Tuesday at 12:00 PM EST. -- Download our use case app MeetMe@ on the App Store: https://itunes.apple.com/us/app/meetme-live-meeting-points/id1356522025?mt=8 Download our use case app MeetMe@ on Play Store: https://play.google.com/store/apps/details?id=engineers.london.meetme&showAllReviews=true -- Ivan Trajkovic is founder of Ivan Agency, a consulting firm for digital product concepting, innovation and execution. Ivan is also founder of a consulting firm for software engineering Engineers Ltd and an in-house digital production studio Engineers London Limited. Ivan partners with entrepreneurs, startups and established brands to envision and enhance their digital power through innovation of existing and creation of new digital products for Mobile, Wearables, OTT, Web, Emerging Tech, IoT and AR/VR. Realizing a realistic market need for advisory services in IT industry, Ivan’s companies focus on all phases of digital product lifecycle - from idea to execution and continuous innovation. -- Subscribe to my channel here: https://www.youtube.com/channel/UCVGgp0NMcELX4f0HRfCqImg -- Follow me online here: Instagram: https://www.instagram.com/ivan_agency/ Twitter: https://twitter.com/ivan_agency Medium: https://medium.com/@ivan_agency Facebook: https://www.facebook.com/ivan.agency/ Podcast: https://anchor.fm/ivanagency LinkedIn: https://www.linkedin.com/in/ivantrajkovic/ Ivan Agency Website: https://ivan.agency/ Engineers Ltd Website: http://enginee.rs/ Engineers London Limited Website: https://engineers.london/
Dr. Natasha Vita-More, a Professor at UAT, Executive Director at Humanity+, Inc., Author and Co-Editor: The Transhumanist Reader, a Lead Science Researcher: Memory Project from the United States and a design producer whose works concern the science, technology, and social implications on humanity and our future participates in Risk Roundup to discuss – Technology Trends and […] The post Technology Trends and Future of Humanity appeared first on Risk Group.
Jason Pistillo is the president of the University of Advancing Technology in Tempe, Arizona. Our conversation takes us from Jason building his first computer game at the age of eight, to becoming a network engineer at 21, to his 23-year career at UAT. He has been recognized as a leader in business and was most recently given the East Valley Institute Technology's "Sam and Olga Bender Award" for being a strong community partner over the past decade. We cover a wide range of topics ranging from building a "fast, fun, friendly and smart" culture, instituting rigorous hiring practices, maintaining motivation and focus, investing in the community, and empowering staff. Jason also discusses why their culture of vulnerability among staff has made their team stronger, and so much more. SELECT LINKS FROM THE PODCAST University of Advancing Technology Contact Jason via email Ballet Arizona YouTube video Valley Leadership YPO Leading Geeks by Paul Glen Alignment For Success by Katherine Halpin The Fifth Discipline Fieldbook by Peter Senge S*** My Dad Says by Justin Halpern Arizona Chamber of Commerce and Industry Contact us at the podcast: contact@azoriginals.net
To release software to your customers, you'll probably need several development environments. To allow a team to make changes to software without disrupting paying customers, we need a way to isolate them. Software developers and engineers working on an agile software development team need an environment where they can make changes under development. The development environment might be a copy of a website, database, or API on their computer. This is sufficient for a product with a minimal footprint. In a larger and more complex software product, cloud or server resources in a datacenter may be needed to support development environments. In addition to a development environment, most teams need somewhere separate from development and production to do additional testing. This can be known as the "test", "user acceptance" (UAT), or "staging" environment and allows the team to more closely inspect a version of the software slated to release. The final environment that is always required is production itself - or the place where your paying customers use the software. In addition to a development, test, and production environment - there are two other environments that can be fairly common. One of these is a demo environment, who's purpose is to provide a playground or sandbox where a limited audience can "kick the tires" of the software without disrupting the development team. The other common environment is a capacity test environment, who's purpose is to determine whether a potential release of the software will stand up to a real load. Capacity test environments should have the same hardware or cloud processing power as production, to provide testing results that are representative of real traffic on the same computing power. Regardless of which environments your company or team uses to release software, you'll need configuration management to automate releases through these environments. I'll talk about configuration management tomorrow, and how you can use it to make sure releases of the software in a given environment don't accidentally point to the wrong environment's resources. You can also watch this episode on YouTube. Related resources: Continuous Delivery - Are You Missing The Big Picture? Visit me at JaymeEdwards.com Find me on Facebook at JaymeEdwardsMedia Find me on Twitter as @jaymeedwards
The Software Process and Measurement Cast 436 features our essay titled, Change Fatigue, Tunnel Vision, and Watts Humphrey, in which we answer the question of whether the state and culture of the organization or team, can have a large impact on whether a Big Bang approach or an incremental approach makes sense to change. Our second column is from Jeremy Berriault. Jeremy discusses user acceptance testing and Agile. There are lots of different ways to accomplish user acceptance testing in an Agile environment. The only wrong way is not to do UAT in Agile. Jeremy blogs at https://jberria.wordpress.com/ Jon M Quigley brings his column, The Alpha and Omega of Product Development, to the Cast. This week Jon puts all the pieces together and discusses systems thinking. One of the places you can find Jon is at Value Transformation LLC. Re-Read Saturday News This week we wrap-up our re-read of Carol Dweck’s Mindset: The New Psychology of Success (buy your copy and read along). In the wrap-up, we discuss overall impressions of the book and suggest a set of exercises to reinforce your growth mindset. The next book in the series will be Holacracy (Buy a copy today) by Brian J. Robertson. After my recent interview with Jeff Dalton on Software Process and Measurement Cast 433, I realized that I had only read extracts from Holacracy, therefore we will read the whole book together. Every week we discuss a chapter then consider the implications of what we have “read” from the point of view of both someone pursuing an organizational transformation and using the material when coaching teams. Visit the Software Process and Measurement Cast blog to participate in this and previous re-reads. Next SPaMCAST The next Software Process and Measurement Cast will feature our discussion with Steven Adams on our recent re-read of The Five Dysfunctions of a Team by Patrick Lencioni (Jossey-Bass, Copyright 2002, 33rd printing). Steven provides insight and some ideas on how to get the most from the re-read feature! Shameless Ad for my book! Mastering Software Project Management: Best Practices, Tools and Techniques co-authored by Murali Chematuri and myself and published by J. Ross Publishing. We have received unsolicited reviews like the following: “This book will prove that software projects should not be a tedious process, for you or your team.” Support SPaMCAST by buying the book here. Available in English and Chinese.
Learn how to automate your functional, regression, and UAT testing to reduce time and increase quality with CapIO, the end-end testing tool for ServiceNow. Dave Slusher, ServiceNow Developer Evangelist and automated testing guru, asks Roger the questions you want the answers to if you’re in QA or DevOps. Q&A with Roger Enriquez, Integration Architect at Cerna Solutions
Software Process and Measurement Cast number 309 features our essay on Agile user acceptance testing. Agile user acceptance testing (AUAT) confirms that the output of a project meets the business’ needs and requirements. The concept of acceptance testing early and often is almost inarguable, whether you are using Agile or any other method. AUAT generates early customer feedback, which increases customer satisfaction and reduces the potential for delivering defects. While implementing an effective and efficient AUAT isn’t always easy it most certainly is possible! The essay begins: The classic definition of a user acceptance test (UAT) is a process that confirms that the output of a project meets the business needs and requirements. UAT in an Agile project generally is more rigorous and timely than the classic end of project UAT found in waterfall projects. In waterfall projects, the UAT is usually the last step in the development process. The problem with that classic scenario is that significant defects are found late in the process, or worse, the business discovers that what is being delivered isn’t exactly what they wanted. Agile projects provide a number of opportunities to interject UAT activities throughout the process, starting with the development of user stories, to the sprint reviews and demos, and finally the UAT sprints at the end of a release. Each level provides a platform for active learning and feedback from the business. Listen to the rest of the essay! Next SPaMCAST 310 features our interview with Michael Burrows. This is Michael’s second visit to the Software Process and Measurement Cast. In this visit we discussed his new book, Kanban from the Inside. The book lays out why Kanban is a management method built on a set of values rather than just a set of techniques. The argument is made that Kanban leads to better outcomes for projects, managers, organizations and customers! Buy and read the book before the interview! Upcoming Events DCG Webinars: Agile Risk Management – It Is Still Important! October 24, 2014 11:230 EDT Has the adoption of Agile techniques magically erased risk from software projects? Or, have we just changed how we recognize and manage risk? Or, more frighteningly, by changing the project environment through adopting Agile techniques, have we tricked ourselves into thinking that risk has been abolished? Upcoming Conferences: I will be presenting at the International Conference on Software Quality and Test Management in San Diego, CA on October 1. I have a great discount code!!!! Contact me if you are interested. I will be presenting at the North East Quality Council 60th Conference October 21st and 22nd in Springfield, MA. More on all of these great events in the near future! I look forward to seeing all SPaMCAST readers and listeners that attend these great events! The Software Process and Measurement Cast has a sponsor. As many you know I do at least one webinar for the IT Metrics and Productivity Institute (ITMPI) every year. The ITMPI provides a great service to the IT profession. ITMPI’s mission is to pull together the expertise and educational efforts of the world’s leading IT thought leaders and to create a single online destination where IT practitioners and executives can meet all of their educational and professional development needs. The ITMPI offers a premium membership that gives members unlimited free access to 400 PDU accredited webinar recordings, and waives the PDU processing fees on all live and recorded webinars. The Software Process and Measurement Cast some support if you sign up here. All the revenue our sponsorship generates goes for bandwidth, hosting and new cool equipment to create more and better content for you. Support the SPaMCAST and learn from the ITMPI. Shameless Ad for my book! Mastering Software Project Management: Best Practices, Tools and Techniques co-authored by Murali Chematuri and myself and published by J. Ross Publishing. We have received unsolicited reviews like the following: “This book will prove that software projects should not be a tedious process, neither for you or your team.” Support SPaMCAST by buying the book here. Available in English and Chinese.
Hi guys! That’s me – Robby from AccentAdventure.com – and this time around we’re going to learn how to pronounce the following American phrase properly: WHAT’S THE MATTER WITH YOU? The main focus here is on the sound created by the double TT in the middle of the word “matter” – it’s the so called FLAP T sound – and it’s actually much closer to the letter D than T! That’s the reason why I’ve transcribed the flap T sound with the letter D or with a two letter combination TD in my American Pronunciation learning program Accent Genie, and as you can see in the screenshot below – the FLAP T sound in the word “fitting” is transcribed with the two letter combination TD (just because in this case it’s not as close to D as in the word “matter”). But anyway – going back to today’s phrase WHAT’S THE MATTER WITH YOU? – it basically becomes “What’s the maDer with you?” because Americans transform the double TT into a sound which is much closer to D (with a little hint of “R” in it probably). If you want to get it just right, however, please watch the video above where I’m looking at this phrase in depth and I’m also giving you a few useful tips on how to get the FLAP T sound just right. Other things that you have to watch out for when practicing this phrase are the W sound in the word WHAT’S and you also have to make sure to put stress on the first syllable of the word “matter”. So this is how you pronounce this phrase when speaking with American accent (the underlined syllable indicates the stressed syllable): Uat’s the maDer with you? Is it all a bit too confusing? Well, watch the video above and keep practicing till you get it right – practice is what makes one perfect, don’t you ever forget that! ;-) And of course, if you’re REALLY serious about your American accent and English pronunciation improvement in general, you definitely want to check out the Accent Genie program which is all about learning the American pronunciation in a fast and effective manner. Chat soon, Robby
In this episode, James talks about security testing... scratch that, testing. There really is no difference between security testing and regular testing. The app is functioning in a way it was not designed to. QA can do this. Developers can do this. Listen to find out some of the ways that we can help move this forward to get our internal teams testing better.
Do your software projects stumble over the deployment hurdle? If so, you are not alone. Many software projects struggle achieving consistent deployment across their environments -- from Test to UAT to Staging to Production. Successful deployments must account for differences between environments; coordinate development teams and environment owners; balance schedule pressures; and create the requisite audit trail. When these challenges are compounded by error prone, inconsistent and inefficient manual processes, achieving a consistent deployment can seem impossible. The cost of this struggle is lost time, late breaking defects, and uncertainty. In this podcast, we go beyond the whys of consistent automated deployments and examine best practices, helpful tools and common pitfalls encountered when seeking consistent deployments across environments. Speakers, Eric Minick and Kimberly Gist.
Allen Amis is a costume and prop builder working out of Chandler, Arizona. He got his start when Star Wars costuming ignited his passion for building and weathering sci-fi armor. He's won awards and accolades for his ability to bring artistic concepts and renderings to life as wearable costumes and displayable props. His most famous costume, The Samurai Boba Fett, is a show-stopper that even took a prize at Star Wars Celebration, the largest Star Wars convention in the US, and was featured in IO9, Geek Tyrant, and more. He recently finished a full-set Mass Effect Commander Shepard armor, Borderlands masks for an upcoming UAT fan film, finished a Fallout-inspired Mandalorian armor set for the Artmor Charity Auction, Appeared in the widely popular cosplay calendar MenvsCosplay, and has appeared in his Samurai Boba Fett in the hugely popular "Bohemian Rhapsody: Star Wars edition" paradoy video created by the Digital video team at UAT. He's always eager to help fans get their start on bringing their favorite costumes to life, and does several panels and talks throughout the year on the building process. You can catch Allen displaying and even wearing some of his creations at local Comic Book Conventions, Art Walks, and Charity functions throughout the year.
Bio: Evan Sprague has a Bachelor of Arts in Digital Video from UAT, as well as over five years of his career working the marketing agency circuit, Evan was able to bring that knowledge of customer interaction into his current role as Digital Artist/Archivist at Intel Corporation in Chandler, AZ, where he work in the Story, Art, and Sound department under Intel Studios. Additionally, Evan has assisted with several projects head up by Senior DV Instructor Paul DeNigris, contributing minor vfx work for 2011's Flight of the Melvin, as well as matchmoving and matte painting work for DeNigris' thesis film Parallax (2011) and the upcoming Mass Effect fan film Red Sand. Presentation: Was recorded at the University of Advancing Technology Tech Forum Spring 2012