Code[ish]
At the bleeding edge of computer vision is Plainsight Technologies, a company that’s modernizing infrastructure to handle future agentic AI workloads. Join us as we speak with CEO Kit Merker on Plainsight’s vision for the future, technological goals, and the leading case studies for computer vision. Hear from host Julián Duque and Kit Merker in this new, insightful episode of the Code[ish] podcast.
info_outlineCode[ish]
We love hearing from developers who are building amazing things with Heroku, and this episode of Code[ish] is a perfect example! CEO of Australian firm reinteractive, Errol Schmidt, is here to speak with Julián about what his team has achieved and what they’re working on next. Together, they discuss why Heroku is the best tool for Ruby on Rails development, how organizations can safely integrate AI, and the importance of being able to quickly stand up proof-of-concept apps.
info_outlineCode[ish]
This week, Julián is joined by the first Spring Developer Advocate and Java champion, Josh Long! Tune in as the pair discusses Spring Boot and tools like Spring AI, Spring Modulith, Spring Cloud, and Spring Shell that build upon it. If you're a Java veteran like Josh, or returning to it after years away like Julián, this Tips & Tricks episode of Code[ish] will bring you up to speed.
info_outlineCode[ish]
Slack can be so much more than a way to chat with your colleagues. In this episode of Code[ish], we’re joined by Maria José Hernández to find out how Slack Apps and Slack AI can elevate the app into an organization-wide, personalized Work OS. In conversation with Julián Duque, Maria shares insights into the tools available for developers, and what’s included in the Slack Developer Program. Whether you’re pro-code or no-code, this episode is packed with valuable information to help you build, innovate, and improve your workday with Slack.
info_outlineCode[ish]
The Code[ish] Podcast is back! Join Heroku superfan Jon Dodson and Hillary Sanders from the Heroku AI Team for the latest entry in our “Deeply Technical” series. In this episode, the pair discuss Heroku Managed Inference and Agents—what it is, what it does, and why developers should be using it. Hillary also shares tips for new developers entering the job market, and Jon pits 10 principal developers against one hundred fresh bootcamp graduates (hypothetically, of course).
info_outlineCode[ish]
A brand-new season of The Code[ish] Podcast is on the way! Loads of insightful episodes are on the way, featuring special guests from all corners of the Heroku community.
info_outlineCode[ish]
In this episode, Ian, Laura, and Wesley talk about the importance of communication skills, specifically writing, for people in technical roles. Ian calls writing the single most important meta skill you can have. And the good news is that you can get better at it, with deliberate practice!
info_outlineCode[ish]
This episode is hosted by Alyssa Arvin, Senior Program Manager for Open Source at Salesforce, with guest Jim Jagielski, the newest member of Salesforce’s Open Source Program Office (OSPO). They talk about Jim’s early explorations into open source software during his time as an actual rocket scientist at NASA and his role in the formation of the Apache Software Foundation. Next, they discuss getting started in open source, specifically, how to find the right open source community for you to start cont
info_outlineCode[ish]
This episode of Codeish includes Greg Nokes, distinguished technical architect with Salesforce Heroku, and Lisa Marshall, Senior Vice President of TMP Innovation & Learning at Salesforce. Lisa manages a team within technology and product that focuses on overall employee success in attracting technical talent and creating a great onboarding experience.
info_outlineCode[ish]
In this episode of Codeish, Greg Nokes, distinguished technical architect with Salesforce Heroku, talks with Innocent Bindura, a senior developer at Raygun about performance monitoring.
info_outlineRobert Blumen is a DevOps Engineer at Salesforce, joined by Ev Haus, Head of Technology at ZenHub. Together, they're going over a critique over several methodologies when writing code as part of a large team. First, there's DRY, which stands for Don't Repeat Yourself. It's the idea that one should avoid copy-pasting or duplicating lines of could, in favor of abstracting as much repeated functionality as possible. Then, there's DAMP, or Don't Abstract Methods Prematurely, which is somewhat in opposition to DRY. It advises teams to not create abstractions unless they are absolutely necessary. Last on the list is WET, or Write Everything Twice. This is the idea to embrace duplication whenever possible.
Ev notes that, like many programming absolutes, the success of each strategy depends entirely on the context. DRY, for example, sounds like a really good idea, until it happens everywhere. Suddenly, a chunk of code becomes difficult to reason, as a developer jumps around various method definitions to piece together a flow. DAMP often makes sense as a counterpart to DRY, because if you abstract too early in your codebase, you may find yourself overloading methods or appending arguments to handle one-off cases. DRY is typically best suited for testing environments, where an absolutely reproducible set of explicit steps is often preferable in order to quickly understand what is occurring.
No matter the strategy you use, the core tenant is to solve the problem first. Try to accomplish the goal you need to, whether that's adding a feature or squashing a bug. Don't over optimize until you've finished what you need to, and don't think too far into the future about all the possible edge cases. The rest of the balance comes with experience. Some duplication is bad, but not all of it. Figuring out the absolute perfect solution is unlikely, so you've got to put the code out into the real world to find out what works. After that, bake some flexibility into your processes to adjust hot code paths or refactor them when needed!
Links from this episode
- ZenHub is an agile project management tool for GitHub
- Wikipedia's definition of DRY
- "Using DRY, WET & DAMP code" is Ev's article on different coding methodologies
- Codewars is a website with programming puzzles and challenges
- The Pragmatic Programmer by Dave Thomas is a popular book highlighting some of these concepts
- DRY code, DAMP DSLs by Jay Fields and DRY vs DAMP in Unit Tests by Vladimir Khorikov are more write-ups on the subject