There is a lot of buzz around Kotlin, a new Java-based programming language that many think might eventually replace Java. But is all this talk justified, and are the predictions of replacement realistic?
Today we talk with Duncan McGregor and Nat Pryce, the authors of Java to Kotlin. They reveal to us all the advantages of Kotlin, why and when you would want to transition to it from Java, and how to facilitate the refactoring in a painless and efficient way.
When you finish listening to the episode, connect with Duncan and Nat on Twitter and check out their book Java to Kotlin.
Mentioned in this episode:
Duncan on Twitter at https://twitter.com/duncanmcg
Mat on Twitter at https://twitter.com/natpryce
Kotlin to Java, 1st edition at https://www.amazon.com/Java-Kotlin-Duncan-McGregor-ebook/dp/B09CT5KZLM
Kotlin Programming Language at https://kotlinlang.org
Joshua Bloch, Effective Java, 3rd Edition at https://www.amazon.com/Effective-Java-Joshua-Bloch-ebook/dp/B078H61SCH/ref=sr_1_1?crid=3CG84SQ8VU5ET&keywords=effective+java+josh&qid=1653917364&s=digital-text&sprefix=effective+java+josh%2Cdigital-text%2C260&sr=1-1
Corgibytes at https://corgibytes.com
We all want our code to be stable and resilient to future challenges. But we need to strike the right balance between testing our systems and the cost of failure. This is much harder to achieve than it sounds.
Today we talk with Melanie Frank, Managing Vice-President of Cyber Engineering at Capital One. Her teams innovate boldly to secure the enterprise while obsessing over excellence. Before Capital One, Melanie worked at Honeywell at NASA Goddard Space Flight Center, where she tested software that conducted scheduling, command, and control for space network communication satellites.
Drawing from her experience in the aerospace and financial industry, she tells us about the significance of testing and how to do it right for your product.
When you finish listening to the episode, connect with Melanie on LinkedIn.
Mentioned in this episode:
Melanie on LinkedIn at https://www.linkedin.com/in/melanie-frank-06b3675/
Capital One at https://www.capitalone.com
NASA Goddard Space Flight Center https://www.nasa.gov/goddard
Corgibytes at https://corgibytes.com
Empathy in Tech at https://empathyintech.com
We all strive to write an ideal code - easily readable, functional, and clean. We use many tools to achieve this. However, we often forget why we need our code to be tidy.
Today we are talking with Samuel Taggart, President of GDevCon N.A. and the owner of SAS Workshops. Sam is a natural teacher, and he enjoys sharing what he learned with others. We talk with Sam about the tools and methods that make our code clean - refactoring, retrospectives, and style guides. While they are all meant to keep us and our code in check, we forget that these tools and methods also need to be under control. Sam reminds us of a crucial question that will help us do just that.
When you finish listening to the episode, connect with Sam on LinkedIn and Twitter and visit the SAS Workshops website at www.sasworkshops.com.
Mentioned in this episode:
Samuel Taggart on LinkedIn at https://www.linkedin.com/in/taggartsam/
Samuel Taggart on Twitter at https://twitter.com/sasworkshops
GDevCon N.A. at https://gdevconna.org
SAS Workshops at https://www.sasworkshops.com
Mikado Method at https://understandlegacycode.com/blog/a-process-to-do-safe-changes-in-a-complex-codebase/
Legacy Code Rocks - Living Documentation with Cyrille Martraire at https://www.legacycode.rocks/podcast-1/episode/2fd0fdeb/living-documentation-with-cyrille-martraire
Zettelkasten Method at https://zenkit.com/en/blog/a-beginners-guide-to-the-zettelkasten-method/
Corgibytes at https://corgibytes.com
Imagine if you could compare concepts side-by-side between a programming language you know and one you don't. Well, now you can!
Today we talk with Sarah Withee, a polyglot software engineer, international tech speaker, and robot tinkerer. Sarah is also the author of Code Thesaurus, the polyglot developer reference tool. She tells us about the reasons behind the creation of the thesaurus, its continuous development, and what you can do to make the thesaurus even better.
When you finish listening to the episode, connect with Sarah on Twitter and LinkedIn and check out the Code Thesaurus project on GitHub.
Mentioned in this episode:
Corgibytes at https://corgibytes.com
Sarah in Twitter at https://twitter.com/geekygirlsarah
Sarah on LinkedIn at https://www.linkedin.com/in/sarahwithee/
Sarah’s website at https://geekygirlsarah.com
Code Thesaurus at https://codethesaur.us
Code Thesaurus project on GitHub at https://github.com/codethesaurus/
Coders spend most of their time reading rather than writing code. Yet, when you look at the undergraduate programs, boot camps, and conferences, everything seems to be dedicated to code production.
Today we talk with Felienne Hermans. Felienne is an associate professor at the Leiden Institute of Advanced Computer Science at Leiden University and the author of the book The Programmer's Brain. She also developed Hedy, a new programming language that makes it easier for kids to learn textual programming. She tells us how to help young programmers better understand both the code they are working with and their own cognition.
After you finish listening to the episode, connect with Felienne on LinkedIn and Twitter, visit her website at https://www.felienne.com, and make sure to check out her book.
Mentioned in this episode:
Felienne on Twitter at https://twitter.com/Felienne
Felienne on LinkedIn at https://www.linkedin.com/in/felienne
Felienne’s website at: https://www.felienne.com
Hedy Programming language at https://hedycode.com
The Programmer’s Brain at https://www.manning.com/books/the-programmers-brain?utm_source=felienne&utm_medium=affiliate&utm_campaign=book_hermans2_programmers_12_8_20&a_aid=felienne&a_bid=d7c7c538
Empathy in Tech at https://empathyintech.com
Some of the biggest risks for cyber security frameworks come from employees meant to maintain them. The reason for that is simple, and it couldn't be more human - people who don't feel well don't perform well.
Today we talk with Nyota Gordon, the founder, developer, and all-around do-gooder at Transition365, a cyber resiliency firm that helps cybersecurity professionals increase their leadership and life skills.
Nyota digs deep into the intersection between cyber security, resiliency, and personal wellness. She shares with us some mental health strategies that will improve our well-being and, as a consequence, our work performance.
When you finish listening to the episode, make sure to connect with Nyota on LinkedIn.
Mentioned in this episode:
Nyota on LinkedIn at https://www.linkedin.com/in/nyotagordon/
Transition365 at https://transition365.com
Brené Brown, Shame Resilience Theory at https://journals.sagepub.com/doi/10.1606/1044-3894.3483
Symantec Cyber Resiliency White Paper at https://informationsecurity.report/whitepapers/symantec-white-paper-the-cyber-resilience-blueprint-a-new-perspective-on-security
Amy C. Edmondson, The Fearless Organization at https://www.amazon.com/gp/product/B07KLT8RKM/ref=dbs_a_def_rwt_hsch_vapi_tkin_p1_i0
Charles Feltman, The Thin Book of Trust at https://www.amazon.com/Thin-Book-Trust-Essential-Building/dp/0988953862/ref=tmm_pap_swatch_0?_encoding=UTF8&qid=1646648424&sr=1-1
Empathy in Tech at https://empathyintech.com
When you finish listening to the episode, connect with Prabhjot on Twitter and LinkedIn and visit Pyze's website at https://www.pyze.com.
Mentioned in this episode:
Prabhjot on LinkedIn at https://www.linkedin.com/in/psinghsf/
Prabhjot on Twitter at https://twitter.com/psinghsf
Pyze at https://www.pyze.com
Today we talk with Clare Sudbery. Clare is a lead engineer at Made Tech, and she is the host of the Making Tech Better podcast. Clare tells why it is so important to be compassionate to ourselves and shares with us some techniques on how to achieve this.
When you finish listening to the episode, connect with Clare on Twitter and dive deeper into the subject of empathy in tech by joining our new community.
Mentioned in this episode:
Clare on Twitter at https://twitter.com/ClareSudbery
Making Tech Better Podcast at https://podcasts.apple.com/us/podcast/making-tech-better-made-tech/id1558845124
Made Tech Academy at https://www.madetech.com/careers/academy/
Self-Compassion by Dr. Kristin Neff at https://self-compassion.org
Empathy in Tech at https://empathyintech.com
Everyone wants their software system to be resilient - to continue carrying out its mission-critical tasks in the face of disruption or adversity. But resiliency has its cost, and not just in a material sense. With resiliency, your system becomes more complex and harder to maintain. That is why we always have to balance our resiliency requirement with other non-functional requirements around the system.
Today we talk with Briana Augenreich, a Senior Software Engineer at HubSpot. Briana wears many hats in the software engineering world, but she officially calls herself backend and infrastructure engineer. Briana has extensive experience working with large and complex mission-critical systems. This gives her unique insight on finding the right measure while striving for resiliency.
When you finish listening to the episode, connect with Briana on LinkedIn.
Mentioned in this episode:
Briana on LinkedIn at https://www.linkedin.com/in/briana-augenreich-93b4a191/
David Woods, The Theory of Graceful Extensibility at https://www.researchgate.net/publication/327427067_The_Theory_of_Graceful_Extensibility_Basic_rules_that_govern_adaptive_systems
We all get excited about that new, shiny code, but more often than not, our company can live without it. On the other hand, some old and boring lines of code laying around are usually the backbone of our entire business system. And while inventors tend to get all the praise, those who keep the wheels running smoothly are content with, well, the wheels running smoothly.
Today we talk with Tramaine Darby, a Senior Manager of Content, Subscriptions, and Insights Engineering at Red Hat. She tells us how to manage teams responsible for maintaining the systems that make companies run and how to defend these systems from hard-cuts and radical changes.
When you finish listening to the episode, connect with Tramaine on LinkedIn and Twitter.
Mentioned in this episode:
Tramaine on LinkedIn at https://www.linkedin.com/in/tramainedarby/
Tramaine on Twitter at https://twitter.com/tdarby4
Red Hat at https://www.redhat.com/
Making widespread changes to a codebase can be hard! Your team starts a long-lived branch that is difficult to maintain and often impossible to merge; you and your team-mates agree to improve the code slowly over time, but you all forget this agreement, and the improvement never happens. But what if there were a tool that keeps you on track to steadily improve your code without making you feel like losing control over these improvements?
Today we talk with Craig Spence, a senior engineer at Spotify and a creator of Betterer - a tool that helps with incremental improvements of big codebases and legacy systems. Craig tells us how Betterer works, how it differs from other debugging tools, and what are the plans for its improvements.
When you finish listening to the episode, connect with Craig on LinkedIn and Twitter, and be sure to check out Betterer on GitHub.
Mentioned in this episode:
Craig on LinkedIn at https://www.linkedin.com/in/craig-spence/
Craig on Twitter at https://twitter.com/phenomnominal
Betterer on GitHub at https://phenomnomnominal.github.io/betterer/docs/introduction
Touca at https://touca.io
Kubernetes with James Sturtevant
As applications grow to span multiple containers deployed across multiple servers, operating them becomes more complex. While it is possible to maintain these growing applications manually, most will reach out to an orchestrator to help them with the tasks. As applications grow to span multiple containers deployed across multiple servers, operating them becomes more complex. One of such orchestrators is Kubernetes.
Today we talk with James Sturtevant, Principal Software Engineering Lead at Microsoft. James is a coauthor of the book Kubernetes for Windows. He helped blaze the trail for Windows support in upstream Kubernetes for enterprises, and now he helps us understand how Kubernetes work and why you would want to use it.
When you finish listening to the episode, connect with James on LinkedIn, visit SIG-Windows and Kubernetes channels on Slack and grab a copy of Kubernetes on Windows.
Mentioned in this episode:
James on LinkedIn at https://www.linkedin.com/in/jamessturtevant/
Jay Vyas, James Sturtevent, Kubernetes on Windows, at https://www.manning.com/books/kubernetes-on-windows
SIG-Windows Channel on Slack at https://kubernetes.slack.com/?redir=%2Fmessages%2Fsig-windows
Kubernetes Channel on Slack at https://slack.k8s.io
The power of software is enormous, but the code can only be as good as the humans who write it. Despite popular belief, "being good" has nothing to do with character predisposition. It is a product of an intentional effort to nurture care and compassion.
Today we talk with Liz Acosta, a software engineer and a developer advocate at Stacklet. Liz's past professions as a copywriter, social media manager, and odd job freelancer give her a unique perspective on software development and enables her to help teams collaborate with empathy.
When you finish listening to the episode, connect with Liz on LinkedIn or find her on Stacklet.
Mentioned in this episode:
Liz on LinedIn at https://www.linkedin.com/in/lizacostalinkedin/
Liz on Stacklet at https://stacklet.io/blog/author/liz-acosta
Exercism at https://exercism.org
Empathy in Tech at https://empathyintech.com
Building useful software requires more than just knowing how to write code. It demands curiosity to understand the problem which the software is supposed to resolve. It also requires the willingness to understand the people - not only those who will use it but also those who are building this software with you!
Today we talk with Dawn Ahukanna, the design principal and front-end architect at IBM. She leads an integrated and consistent user-focused design across enterprise software focused on data analytics and cognitive user experiences. She shares the methods and the tools she uses when figuring out how people work - an essential piece of knowledge if you want to create the best user experience.
When you finish listening to the episode, make sure to connect with Dawn on Twitter and LinkedIn.
Mentioned in this episode:
Dawn on Twitter at https://twitter.com/dawnahukanna
Dawn on LinkedIn at https://www.linkedin.com/in/dawnahukanna
Dawn’s website at http://dahukanna.net
Working together in a team requires a lot of emotional intelligence, adaptability, and empathy. Bringing two teams working together after acquisition and a merger might seem like requiring superpowers on top of that.
Today we talk with Matt Dixon, the founder, and CEO of Front Range Systems. Matt is a tech executive helping newly acquired technology businesses create a unified culture within their workplaces. Matt gives us a sneak-peak into his practices of helping teams develop a growth mindset, adapt to new technological challenges, and become high-performing.
When you finish listening to the episode, check out the Front Range Systems website at https://frontrangesystems.com, and connect with Matt on Twitter.
TypeScript has been around for quite a while, and its popularity speaks for itself. It has never been more important to understand how to gradually and sustainably shift to TypeScript within the existing code-base.
Today we talk with Sam Lanning, an independent software contractor in the humanitarian sector with many years of experience at GitHub and Semmle. Sam's vast experience in using TypeScript to speed up coding, eliminate debugging, and reduce technical debt helps us see the benefits of this popular programming language and foresee how to transition to it.
When you finish listening to the episode, find Sam on GitHub and connect with them on Twitter and LinkedIn.
Mentioned in this episode:
Sam on Github at https://github.com/s0
Sam at LinkedIn at https://uk.linkedin.com/in/smlanning
Sam at Twitter at https://twitter.com/samlanning
TypeScript at https://www.typescriptlang.org
We often use real-life metaphors to make software development concepts more approachable and understandable, especially for the people just entering the field. Sometimes, however, the reverse approach could help a seasoned coder to cope with the real world.
Today we talk with Casey Watts, the author of Debugging Your Brain, a clear applied psychology, and a concise self-help book. The human brain is buggy, just as any legacy code is. Casey tells us about techniques that can help us refactor our thinking, speed up our thought processes and ultimately debug our brains.
When you finish listening to the episode, connect with Casey on LinkedIn and Twitter, visit his website at https://www.caseywatts.com and https://www.debuggingyourbrain.com, and check out his book Debugging Your Brain.
Mentioned in this episode:
Casey on LinkedIn at https://www.linkedin.com/in/caseywatts/
Casey on Twitter at https://twitter.com/heycaseywattsup
Debugging Your Brain at https://www.amazon.com/Debugging-Your-Brain-Casey-Watts/dp/0578755033?
Debugging Your Brain Website at https://www.debuggingyourbrain.com
Casey’s Website at https://www.caseywatts.com
Cognitive distortions at https://www.debuggingyourbrain.com/distortions/
Many programming concepts seem too complex and intimidating to outsiders. That is perhaps the main reason why writing code remains such an exclusive profession, even in the age where virtually everything depends on a written code! But does everything have to be so complicated?
Today, we talk with Sy Brand, Microsoft C++ Developer Advocate, and a specialist for compilers and debuggers for embedded accelerators. Sy is also known for their YouTube Channel - Computer Science with Sy's Cats - where they explain programming and computer science concepts with household objects and cats. After watching only a few of Sy's videos, you will feel that programming can, and should, be much more approachable and inclusive.
When you finish listening to the episode, connect with Sy on Twitter, start following their YouTube channel, and check out one of their live coding sessions at Twitch.
Mentioned in this episode:
Sy Brand on Twitter at https://twitter.com/TartanLlama
Computer Science with Sy’s Cats at https://www.youtube.com/c/SyBrandPlusCats/featured
Sy Brand on Twitch at https://www.twitch.tv/tartanllama
Ivan Čukić, Functional Programming in C++ at https://www.amazon.com/Functional-Programming-programs-functional-techniques/dp/1617293814
Writing Error Messages for Humans at https://www.flutterwave.design/writing-error-messages-for-humans/
Imagine if you could perform static analysis, find bugs, and enforce code standards in more than seventeen languages with a single tool. Imagine if you could scan your code with more than 1,000 community pre-written rules and if you could easily add your own rules to match your code perfectly. Imagine if you could then flag the issues and get results in pull requests, Slack, or anywhere else without as much as a click of a mouse.
Well, it appears that you can do all of this and more. Today we talk with Isaac Evans, an MIT alumnus, a former computer scientist at the US Department of Defence, and a founder and CEO of r2c. His company, r2c, stands behind Semgrep, a lightweight, offline, open-source, static analysis tool that profoundly improves software security and reliability to safeguard human progress.
When you finish listening to the episode, see how Sengrep can improve your code at https://semgrep.dev, or visit https://r2c.dev if you need enterprise solutions for large businesses.
Mentioned in this episode:
Isaac Evans on LinkedIn at https://www.linkedin.com/in/isaacevans/
Semgrep at https://semgrep.dev
r2c at https://r2c.dev
Brian Foote, Joseph Yoder, The Selfish Class at http://www.laputan.org/selfish/selfish.html
Richard Dawkins, The Selfish Gene at https://www.amazon.com/Selfish-Gene-Anniversary-Landmark-Science-dp-0198788606/dp/0198788606/ref=dp_ob_title_bk
Many IT industry giants (including Google, Facebook, Microsoft, Uber, Airbnb, and Twitter) employ gigantic monorepos to scale build systems and version control software. Although only recently named, monorepos have been around for several decades.
Today we talk with Darko Fabijan. Darko is the co-founder of Semaphore CI, where he and his team explore new tools and ideas that improve developers’ lives. We dive deep into the benefits and challenges the transition to and utilization of monorepos can bring to your workflow and software development practice.
When you finish listening to the episode, connect with Darko on Twitter and visit the Semaphore CI website at https://semaphoreci.com, where you will find great solutions for decluttering your workflow.
Mentioned in this episode:
Darko on Twitter at https://twitter.com/darkofabijan
Semaphore CI at https://semaphoreci.com
A big part of dealing with legacy systems is not on the level of software architecture but interior design. The code needs to be welcoming for people who use it and maintain it, free of clutter, clean and tidy.
Today we talk with Ester Daniel Ytterbrink. Ester Daniel is a coder who likes to think about how people work as a group to create great software sustainably. They have a blog (Chocolate Driven Development) where they write about software development with human interaction and psychology in focus. They tell us about the main principles of software interior design, guiding you to build more comfortable, functional, and efficient code.
When you finish listening to the episode, visit Ester Daniel's blog, where you can connect with them and get some great ideas.
Mentioned in this episode:
Ester Daniel on Twitter at https://twitter.com/edytterbrink
Chocolate Driven Development Blog at https://www.chocolatedrivendevelopment.com
Douglas Squirrel, et al, Agile Conversations: Transform your Conversations, Transform Your Culture at https://www.amazon.com/Agile-Conversations-Transform-Your-Culture/dp/B086D5RBWS/
Don Norman, The Design of Everyday Things at https://www.amazon.com/Design-Everyday-Things-Revised-Expanded/dp/0465050654/
The first step to mastering any skill is demystifying it. However, this is not easy to achieve on your own, and often masters of the craft around you are not as helpful as you would hope. It is easy to forget how it is to be a novice once we achieve expertise in some field, and this leads many of us to lose the ability to introduce the craft to the incoming forces patiently and in simple terms.
Today we talk with Sharon DeCaro. Sharon has been working as a software engineer for five years. However, this wasn't her career choice when she enrolled in the mathematics and music program at her university. Listen to Sharon as she tells us about her journey into the software industry, the hurdles she encountered, and the ways she overcame them to become a software engineer.
When you finish listening to this episode, make sure to connect with Sharon on LinkedIn.
Mentioned in this episode:
Sharon on LinkedIn at https://www.linkedin.com/in/sjdecaro/
Andrea Goulet, Carmen Shirkey Collins, Empathy Driven Software Development at https://www.empathyintech.com
We talk a lot about software on this show. But in this episode, we steer away from our usual practice and look at one piece of hardware that every computer user is in touch with the most. Yes, it is a keyboard!
Today we talk with Jesse Vincent - a software developer turned hardware manufacturer. Jesse is best known for his work with the Pearl programming language and the ticket-tracking system Request Tracker. However, since he invented one of the most comfortable keyboards on the market - now sold-out Keyboardio Model 01 - many associate him with hardware production.
Jesse doesn't hold back. He reveals many secrets of modern hardware manufacturing and how to use your software experience to organize your production process.
When you finish listening to the episode, make sure to support the production of the new Keyboardio Model 100 on Kickstarter (ends July 31, 2021), connect with Jesse on Twitter, and visit Keyboardio website at https://shop.keyboard.io.
Mentioned in this episode:
Jesse Vincent Wikipedia page at https://en.wikipedia.org/wiki/Jesse_Vincent
Jesse Vincent on Twitter at https://twitter.com/obra
Keyboardio Model 100 Kickstarter Campaign https://www.kickstarter.com/projects/keyboardio/model-100?ref=104lo3
Keyboardio website at https://shop.keyboard.io
TRON TK1 keyboard at http://xahlee.info/kbd/TRON_keyboard.html
FingerWorks TouchStream at https://ergocanada.com/products/keyboards/fingerworks_lp.html
Microsoft Natural Ergonomic Keyboards at https://en.wikipedia.org/wiki/Microsoft_ergonomic_keyboards
We seldomly dive deep into discussing any particular programming language on this show. However, today we are making an exception, and we talk with Chrissy LeMaire about PowerShell. Chrissy is a GitHub star, double Microsoft MVP, and a co-author of the book Learn dbatools in a Month of Lunches. She is currently a blue teamer who uses PowerShell to make the world more secure. Chrissy shares some neat PowerShell secrets that transform this framework from an ideal programming language for beginners to a well-rounded and powerful developing tool.
When you finish listening to the episode, connect with Chrissy on Twitter, get dbatools at https://dbatools.io and check out Chrissy’s book Learn dbatools in a Month of Lunches.
Mentioned in this episode:
Chrissy on Twitter at https://twitter.com/cl
dbatools at https://dbatools.io
Chrissy LeMaire, Rob Sewell, Jess Pomfret, Cláudio Silva, Learn dbatools in a Month of Lunches at https://www.manning.com/books/learn-dbatools-in-a-month-of-lunches
Steve McConnell, Code Complete: A Practical Handbook of Software Construction, 2nd Ed, at https://www.amazon.com/s?k=the+code+complete&ref=nb_sb_noss_2
We behave with the cloud as a subset of technology like a teen who just learned how to drive. We are at the point where capabilities have far exceeded the ability to comprehend consequences. We have the power in our hands to change our life and other people's lives both in positive and negative ways. However, we lack the experience to foresee these results.
Today we talk with Bobby Allen, Vice President of Strategic Alliances at Turbonomic and cloud therapist. He helps us understand the advantages and pitfalls of the cloud and teaches us how to assess our own needs and the risks we might face while using the technology.
When you finish listening to the episode, make sure to connect with Bobby on Twitter and LinkedIn, and visit his website at https://bobbyjallen.me.
Mentioned in this episode:
Bobby on LinkedIn at https://www.linkedin.com/in/ballen-clt/
Bobby on Twitter at https://twitter.com/ballen_clt
Bobby’s website at https://bobbyjallen.me
Turbonomic at https://www.turbonomic.com