8

107. How to Write Seriously Good Software

 3 years ago
source link: https://www.heroku.com/podcasts/codeish/107-how-to-write-seriously-good-software?utm_campaign=changelog-news
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Hosted by Rick Newman, with guest Marco Faella.

Writing legible, functionable code is the aspiration for many programmers. Defining what that actually means is another matter altogether. Our guest, Marco Faella, has written a book on the subject. We'll explore the characteristics good software demonstrates. We're also going to give away a 40% discount code for Marco's new book!


Show notes

Rick Newman is a Director of Engineering at Salesforce Heroku. He's joined by Marco Faella, a professor of advanced programming and author of "Seriously Good Software." In Marco's view, there are of course several ways ways to characterize "good" software. Excellent software that goes above and beyond correct functionality includes code that is readable, robust, and performant. Each of these have different importance, depending on context. Robust software, for example, includes addressing issues with scalability, but only if one expects the software to be in such a high availability environment.

It's important to address these requirements from the beginning, when the software architecture is being mapped out. Marco gives the example of developing software for an external client. This client might know all the business logic and how it ought to function, but addressing the code's future evolution and maintenance are just as important, and whose responsibility lands squarely in the hands of the developer.

It can also be worthwhile to make an investment in education, learning about algorithms, data access, and other key concepts in the world of computer science. Such a foundation would allow one to adapt to the changing conditions of programming, whether those are caused by new hardware or modifications in the languages themselves.

Links from this episode

  • "Seriously Good Software" is Marco's book on the subject of writing strong code -- get a 40% discount with the code podish19

Transcript

Rick: Welcome to the Heroku Code[ish] Podcast. I am your host today, Rick Newman, and I am a Director of Engineering at Salesforce Heroku. I'm here with Marco Faella. He is a professor of advanced programming and an author of Seriously Good Software, which is what he and I are here to talk about today. Marco, welcome and thank you for joining me.

Marco: Hi, Rick. Thank you very much for having me.

Rick: Excited to hear about what we're about to talk about, Seriously Good Software. I, at least in my role and roles have encountered seriously good software, at least I thought so and I've encountered not so seriously good software. So I'm interested in hearing your perspective, especially given your background and your current role.

Marco: There are certainly many different ways to characterize good software, from my point of view, what I'm mostly interested in is having software that takes care and covers all requirements and not only the functional requirements, which are those that usually people focus on, but also nonfunctional requirements like readability, robustness, performance, various meanings of performance.

Read the full transcript


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK