Live data from Hacker News

Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

news.ycombinator.com

51–60 of 71 posts

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#51
post #41

Heck, I still use stuff I picked up from Writing Solid Code. That book hasn’t aged as well, but it had some parts that are still quite relevant, today. I always thought that Rapid Development was better than Code Complete . I’ve probably read all of McConnell’s stuff (and I’ve taken a lot of Construx courses). At one time, I was quite the fanboi. A lot of folks around here don’t seem to like him, which I find odd.

I liked /Rapid Development/ too. It misses out on things like the Unix philosophy and worse-is-better, which are sort of previous incarnations of the agile/lean stuff that is very popular today. I would assume the author just hadn't had much exposure to those ideas so they weren't even considered for inclusion. (Besides, they tend to not be researched so actively because they don't leave as many paper trails.) Other…

McConnell has never really been a fan of “purist” Agile.

Construx eventually developed a curriculum around a fairly “corporate-friendly” version of Scrum, that I never found that appealing.

The way I write code, these days, makes Agile look like Orthodox religion.

However, it’s highly dependent upon me, being who I am, and a lifetime of habit and personal process. It would probably not scale well.

McConnell has always been about introducing process, metrics, and rigor to software development. I don’t think he’d be thrilled with the way I do stuff.

WFM. YMMV.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#52
post #13

I read it last year and I think it's still relevant. I had planned to write on the topic. In his book, Steve McConnell advocates for PPP = Pseudocode Programming Process Basically, he says you should outlines the structure of your code first, before writing your actual code. IMHO this is even more relevant in the age of AI assisted programming. Pseudocode Programming Process is becoming Prompt Programming Process. Th…

Interesting. I always do that when programming something non trivial. I found it very helpful to sort the threads and clear my thoughts and capture what I don't know but I thought I knew.

I then keep the pseudo code as comments in code and go from there.

But I don't know others are doing the same. I'm a pretty mediocre programmer so I have to do it a lot.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#53
post #38
post #13

I read it last year and I think it's still relevant. I had planned to write on the topic. In his book, Steve McConnell advocates for PPP = Pseudocode Programming Process Basically, he says you should outlines the structure of your code first, before writing your actual code. IMHO this is even more relevant in the age of AI assisted programming. Pseudocode Programming Process is becoming Prompt Programming Process. Th…

Does anyone actually do this? I have never seen people write pseudo code as part of the programming process. Diagrams, comments, tests, stubs sure, but never really pseudo code.

Yes all the time, how else?

I mean if it's just a few lines, a change to existing code, etc, you can jump straight in with actual code.

But if it's a new object/module etc, start by writing some function names, and some rough structure within them, etc. All in IDE/editor. And I wouldn't call it pseudo-code, just a rough outline.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#54
Regarding coding practices:

I work as a data engineer and I always wanted to enforce some rules for the team:

1. DAGs must have a section that describes what it does and have link to jira ticket and documentation if applicable. Stakeholders should be named too.

2. DAGs must have a created by and modified by section with a summary of what they did. Yes we can track changes in GitHub but if we do a lift and shift upgrade of Composer instances all trackable changes are gone.

3. Comment the sql queries wherever hacky. There is no way I know why the original author put up some conversions in the code.

4. Every etl should check source data before and check loaded data after. Put up some test cases there. For critical processes, failure should always trigger emails and slack message sent to at least two places: DE team and related stakeholder team. God there are SO MANY cases we can get rid the trouble to pick and clean the data because we did not reject obviously wrong source data.

5. Think about potential errors. If you have to SUM a column of large integers, watch for overflows. If your column is nullable, watch for unexpected nulls. Such and such.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#55
post #38
post #13

I read it last year and I think it's still relevant. I had planned to write on the topic. In his book, Steve McConnell advocates for PPP = Pseudocode Programming Process Basically, he says you should outlines the structure of your code first, before writing your actual code. IMHO this is even more relevant in the age of AI assisted programming. Pseudocode Programming Process is becoming Prompt Programming Process. Th…

Does anyone actually do this? I have never seen people write pseudo code as part of the programming process. Diagrams, comments, tests, stubs sure, but never really pseudo code.

I studied systems engineering and the first class about algorithms and data structures started using pseudocode, then Pascal. And they still do today.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#56

It's in the same group as Pragmatic Programmer, Refactoring, Patterns of Application Architecture and the Gang-of-Four book for me. Still recommended for junior programmers as they're all teaching the core of good design. However seeing as the better frameworks/languages/IDEs have internalised a lot of the learnings and that the specific conventions may be outdated - so just follow the recommendations for your platfo…

I feel like understanding why a framework does things in some way makes it easier to wrap my head around it.

There's a book about modernizing PHP applications that when you read it you feel you are reading about symfony's architecture.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#57
post #2

Good coding practices don't change much, so yes it is still relevant.

Agree, but sometimes looking for recent books with the same underlying message is better than going through the classic. I read the mythical man month recently and the examples often involving OS/360 development are brutally outdated. I couldn't relate and I had to force myself to finish.

I find it surprising that you thought Mythical Man Month was "brutally outdated"

Bentley's Programming Pearls, by that standard, is also "brutally outdated" - but the point of the book is not "how do I make this work in early 1980s technology"

The point of PP is "ask the right question"

The point of MMM is "add resources when necessary; be brutally minimalistic about how many resources are added"

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#58
post #57

Earlier quoted context omitted.

Agree, but sometimes looking for recent books with the same underlying message is better than going through the classic. I read the mythical man month recently and the examples often involving OS/360 development are brutally outdated. I couldn't relate and I had to force myself to finish.

I find it surprising that you thought Mythical Man Month was "brutally outdated" Bentley's Programming Pearls , by that standard, is also "brutally outdated" - but the point of the book is not "how do I make this work in early 1980s technology" The point of PP is "ask the right question" The point of MMM is "add resources when necessary; be brutally minimalistic about how many resources are added"

I said the examples are brutally outdated, not the message. The book is filled with acronyms and names I didn’t know because they are 60 years old.

I’d rather read a 2023 version if I could.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#59
I would still recommend it. Well actually I would recommend Code Complete II as it is the be updated version. I met Steve McConnell in person and have read most of his books. I've found them to be gems.

There is a lot of value in reading different things even if you aren't sure about the value to see what you pick up. Sometimes you will learn something or see a situation you never would have expected.

Re: Ask HN: Is "Code Complete" by Steve McConnell still a recommended read?

#60
post #57

Earlier quoted context omitted.

I find it surprising that you thought Mythical Man Month was "brutally outdated" Bentley's Programming Pearls , by that standard, is also "brutally outdated" - but the point of the book is not "how do I make this work in early 1980s technology" The point of PP is "ask the right question" The point of MMM is "add resources when necessary; be brutally minimalistic about how many resources are added"

I said the examples are brutally outdated, not the message. The book is filled with acronyms and names I didn’t know because they are 60 years old. I’d rather read a 2023 version if I could.

The acronyms and names are basically irrelevant to the point, though :)

If anything, having "outdated" acronyms and names may actually make the message stronger - because you don't need to be distracted by what they "are", you can just accept they exist[ed] :)

Post reply on HN