My sins return to haunt me
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
I am not sure, given all that explanation, it it still qualifies as a magic number. Even the word 'sin' in heavy handed here, it's not like K&R bracing... runs and hides :laugh:
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment "Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst "I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
-
I am not sure, given all that explanation, it it still qualifies as a magic number. Even the word 'sin' in heavy handed here, it's not like K&R bracing... runs and hides :laugh:
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment "Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst "I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
jeron1 wrote:
K&R bracing
Everyone knows that Allman bracing is The One True Way.
Software Zen:
delete this;
-
jeron1 wrote:
K&R bracing
Everyone knows that Allman bracing is The One True Way.
Software Zen:
delete this;
Amen!
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment "Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst "I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
Some music with that: Bruce Springsteen & The E Street Band - The River (Live in Glastonbury, 2009) - YouTube[^]
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
Thank you very much, I'm so relieved, that I'm not the only one. I think after 30 years I can fill much more than 50 pages of such comments :-O The only excuse I have; it was always just to satisfy the customer. But that doesn't really help when you come across it again :sigh:
-
jeron1 wrote:
K&R bracing
Everyone knows that Allman bracing is The One True Way.
Software Zen:
delete this;
I prefer K&R in C and C++ I prefer Allman in C# and most other high level languages. Don't ask me why. I think it's just because I've gotten so used to *reading* code in those formats that I write it in those formats.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
I mean, at least there was a comment about it... :laugh: :laugh: :laugh:
Jeremy Falcon
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
But do you now know the "proper" way to do this and will you fix the issue?
I’ve given up trying to be calm. However, I am open to feeling slightly less agitated. I’m begging you for the benefit of everyone, don’t be STUPID.
-
I prefer K&R in C and C++ I prefer Allman in C# and most other high level languages. Don't ask me why. I think it's just because I've gotten so used to *reading* code in those formats that I write it in those formats.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix
I was a K&R guy until I started using C#. I use blank lines in my code to separate conceptual 'blocks'. It also helps reading code with my visual issues. Allman bracing provides that separation a lot of times without introducing extra vertical space. Using Allman for both languages just seems more natural for me now. One of the reasons I keep VS2008 around is the macro language. I have a macro that does 99% of the work converting from K&R to Allman, without rewrapping text and expressions like the Visual Studio reformatters tend to do.
Software Zen:
delete this;
-
Thank you very much, I'm so relieved, that I'm not the only one. I think after 30 years I can fill much more than 50 pages of such comments :-O The only excuse I have; it was always just to satisfy the customer. But that doesn't really help when you come across it again :sigh:
I've always liked something Dan Saks, onetime Secretary of the ANSI/ISO C++ Standards Committee, once said: "If you can say it in code, then do so. Otherwise, say it in a comment." To my mind that means comments should usually describe the why or the how code is doing something, and rarely what. My longer-winded comments are usually 'why'.
Software Zen:
delete this;
-
I mean, at least there was a comment about it... :laugh: :laugh: :laugh:
Jeremy Falcon
I think I had foreknowledge(*) how dotty I would be in my old age. (*) Cue the obvious Dune reference; "He who controls the spice, controls the universe!"
Software Zen:
delete this;
-
I was a K&R guy until I started using C#. I use blank lines in my code to separate conceptual 'blocks'. It also helps reading code with my visual issues. Allman bracing provides that separation a lot of times without introducing extra vertical space. Using Allman for both languages just seems more natural for me now. One of the reasons I keep VS2008 around is the macro language. I have a macro that does 99% of the work converting from K&R to Allman, without rewrapping text and expressions like the Visual Studio reformatters tend to do.
Software Zen:
delete this;
You can do that with VS Code as well. It's a bit fiddly to change the C/C++ bracing and indent styles, but nothing a little google fu can't clear up. Then you just hit "Format Document" and bob's your uncle. I guess since I'm used to using different case styles for different languages, it's not as much of a stretch for me to adapt to different bracing? For me, C and C++ just seem more "natural" in K&R and C# just seems more natural to me in Allman. Feel and flow for me - the final form is just easier for me if I do it this way. I don't know WHY C# would be different than C or C++ for me that way, except exposure. I'm so used to seeing Allman C# and K&R C/C++ that it's familiar to me. That must be it, I think.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix
-
But do you now know the "proper" way to do this and will you fix the issue?
I’ve given up trying to be calm. However, I am open to feeling slightly less agitated. I’m begging you for the benefit of everyone, don’t be STUPID.
I have reached the stage in my career (3.75 years until retirement), plus given my typical workload, that fixing this would be a poor use of my time. It works well enough and has never caused an issue. Besides, given how little love Microsoft has given WPF over the years, I doubt there is a better way to do it :rolleyes: .
Software Zen:
delete this;
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
Gary Wheeler wrote:
magic number 48
Isn't it 42?
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
-
I just came across the following comment in some code I need to modify that was written in 2008:
// This is an ugly little hack. The effect I wanted was for the text box to
// be the width of the list item, minus the space for the activity type
// graphic. I also wanted the text box to wrap, and to expand vertically if
// more space was needed. To get this to work, the MaxWidth property of the
// box must be set. Unfortunately, due to vagaries in my understanding of
// the WPF layout process, I don't know the "proper" way to do this so that
// it is based on the widths and margins of the controls involved. Hence the
// magic number 48, which is the width of the graphic, plus the margins,
// plus some fiddle-faddle.Sigh :sigh: .
Software Zen:
delete this;
-
jeron1 wrote:
K&R bracing
Everyone knows that Allman bracing is The One True Way.
Software Zen:
delete this;
-
I'd never heard of Allman bracing but having looked it up it's what I use in C and C#
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
+1
>64 It’s weird being the same age as old people. Live every day like it is your last; one day, it will be.
-
You can do that with VS Code as well. It's a bit fiddly to change the C/C++ bracing and indent styles, but nothing a little google fu can't clear up. Then you just hit "Format Document" and bob's your uncle. I guess since I'm used to using different case styles for different languages, it's not as much of a stretch for me to adapt to different bracing? For me, C and C++ just seem more "natural" in K&R and C# just seems more natural to me in Allman. Feel and flow for me - the final form is just easier for me if I do it this way. I don't know WHY C# would be different than C or C++ for me that way, except exposure. I'm so used to seeing Allman C# and K&R C/C++ that it's familiar to me. That must be it, I think.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix
Ain't it wonderful how it can work either way, and the machine doesn't care? Makes you wonder how The Brace Wars ever got started...
Software Zen:
delete this;