- There is serious academic study of legacy code accumulation, mission creep and feature bloat in the halls of computer science.
- Some claim that Google’s refusal to play by basic marketing rules may hurt it in the long run. I think this remains to be seen. I would argue that Google’s unconventional behavior is part of it’s success.
- As if pop-ups aren’t bad enough, now some marketing weasels are using JavaScript to install software without prompting the user at all. All the more reason to simply turn JavaScript off or at least use the latest version of Internet Junkbuster.
- On another hand, the Folsom anti-spam tool works by collaboratively filtering junk e-mail in a peer-to-peer network of mail servers.
-
Recent Posts
Recent Comments
- Pace Arko on What Bernie Sanders Means to Me
- Pace Arko on Udra: My RPG Campaign History in Several Parts
- Hinky on Udra: My RPG Campaign History in Several Parts
- Pace Arko on Bragging Rights?
- John Wisniewski on Bragging Rights?
Archives
- May 2018
- January 2018
- December 2017
- November 2017
- September 2016
- August 2016
- July 2016
- June 2016
- May 2016
- April 2016
- March 2016
- February 2016
- January 2016
- November 2015
- October 2015
- September 2015
- August 2015
- June 2015
- May 2015
- April 2015
- March 2015
- September 2013
- May 2013
- April 2013
- March 2013
- November 2012
- October 2012
- September 2012
- July 2012
- April 2012
- March 2012
- January 2012
- December 2011
- November 2011
- October 2011
- September 2011
- August 2011
- July 2011
- June 2011
- January 2009
- September 2008
- July 2008
- April 2008
- March 2008
- February 2008
- December 2007
- November 2007
- October 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- September 2006
- August 2006
- July 2006
- January 2006
- December 2005
- November 2005
- October 2005
- September 2005
- August 2005
- July 2005
- June 2005
- May 2005
- April 2005
- March 2005
- February 2005
- January 2005
- December 2004
- November 2004
- October 2004
- September 2004
- August 2004
- July 2004
- June 2004
- May 2004
- April 2004
- February 2004
- January 2004
- December 2003
- November 2003
- October 2003
- September 2003
- August 2003
- July 2003
- June 2003
- May 2003
- April 2003
- March 2003
- February 2003
- January 2003
- December 2002
- November 2002
- October 2002
- September 2002
- August 2002
- July 2002
- June 2002
- May 2002
- April 2002
- March 2002
- February 2002
- January 2002
- December 2001
- November 2001
- October 2001
- September 2001
- August 2001
- July 2001
- June 2001
- May 2001
- April 2001
- March 2001
- January 2001
- December 2000
- October 2000
- May 2000
- February 2000
- January 2000
- August 1999
- July 1999
- June 1999
- May 1999
Categories
Meta
Most people think that a structures lateral strength is the most important variable in seismic design. This is not the case! Of utmost importance is controllling drift (displacement) and providing sufficient ductility through proper detailing. Yeah man… What a forgbarg.
Regarding Mr. Farlops concept of how great it would be if humans could be power by solar energy: Did you ever think how bad the farts would smell? Talk about silent-but-deadly!
Holy Cow! I am besieged by mutants!
Gailileo ain’t that smart
RE: Galileo’s Work on the Strength of Materials.
All of Galileo’s work on the mechanics of materials is included in the first two dialogs of his book “Two New Sciences”.
The following is based on his observations on the descrution of a Venitian arsenal. In that text, he states “It is clear that, if the cylinder breaks, fracture will occur at the point B where the edge of the mortise acts as a fulcrum for the lever BC, to which the force is applied; the thickness of the solid BA is the other arm of the lever along which is located the resistance. This resistance opposes the separation of the part BD, lying outside the wall, from that portion lying inside. From the preceding, it follows that the magnitude of the force applied at C bears to the magnitude of the resistance, found in the thickness of the prisim, ie, in, the attachment of the base BA to its contiguous parts, the same ratio which half the length BA bears to the length BC.” [1]
Huh? with a crappy analysis like that its amazing he got anything right.
Whatever Galileo. (gal pal) — translated he said that the breaking strength of a cantilever beam is 3 times what we now know as the “correct theoretical solution” (he assumed a bending stress distribution constant with depth)
Just goes to show you that the smartest people ain’t always right.
[1] Stephen P. Timishenko, “History of strengths of Materials”
Do you see the bug??
// novice function to remove all trailing
// white space from a null-terminated
// string
void ClearEnd(char *pt)
(
int i;
assert(pt != NULL);
for(i=strlen(pt)-1; isspace(pt[i]) && i>=0; i–) ;
pt[i+1] = ‘�’;
return;
)
It’s been a long while since I messed around with C++ but let me see:
1) We declare a function “ClearEnd” and use an address variable to aim it at a string in memory somewhere.
2) We initialize a counter.
3) Don’t quite understand the assert statement but, I am guessing it prevents the loop from triggering if there is nothing in the memory address.
4) For loop is started with the following conditions:
a) The strlen function gets the integer value of the length of the string in that memory address.
b) The loop counter is set to the value one less than the value derived from strlen. I assume this takes care of the zero offset.
c) The isspace function finds all the whitespace characters (tab, space, nonbreaking space, linefeed, etc.) at the end of the string.
d) The conditional which terminates the loop holds that as long as there is whitespace at the end and the loop counter is greater than or equal to zero keep cycling the loop.
e) As the loop cycles, decrement the counter by one for each iteration.
5) Line 12 doesn’t make sense to me. Is it the one that does the cutting of whitespace? It seems to state that address variable starts the end of the string and replaces each whitespace character with zero. Or is ‘�’ a special way of saying NULL? And if we point the address variable to NULL it doesn’t point at anything and thus loop fails?
6) The function, after terminating the loop returns control back to main or some other block of code.
How’s that?
in Response to Mr. Farlops analysis:
[1] The assert makes sure the user of the library doesn’t pass a NULL pointer, That is, an invalid memory address. This function (or macro) is only used when a -DDEBUG is used for compile. It’s a debug statement. (the analysis in item 3 above is correct)
[2] Line 12 puts the end of the string at the last white-space character.
[3] the bug is that if the string consists of all white-space characters, isspace(pt[0]) is true and the counter i decriments to a value of -1. Then on the next loop, isspace(pt[-1]) is evaluated. It is a bug to attempt to read memory that the current process did not allocate. It may generate a GPF because one may attempt to read protected memory. Bounds Checker by Numega will catch this. I swear by it. That is the hard-to-find bug.
Post your fix?