bitwix

Tangential comments about Software Development

Wednesday, August 29, 2007

City Gate House by Giles Gilbert Scott

Giles Gilbert Scott
1880-1960 Knighted 1924 RIBA President 1933-1935
It was his view that to employ an architect was an act of faith, and that once the problem was set there should be no interference with matters of design Hubert Worthington, RIBA Journal 1960
Let us aim at quality rather than novelty GGS 1933
Last of the Art-Architects. By the 1920s, architects were faced with formidable considerations of planning, construction and technlogy for which a largely artisitic training was inadequate. Some architects opted for a "mechanistic modernism", others restricted themselves to small-scale projects. GGS attempted to come to terms with the Twentieth Century but, like Lutyens, was oftern "consulting architect" applying a cosmetic treatment.

Notable Works
Liverpool Anglican Cathedral 1903-60, fininshed 1980
St Alban and St Michael (Golders Green) designed 1925, built 1932-33
William Booth Memorial College (Camberwell) 1926-29
Battersea Power Station 1929-1934 (West Half; East Half added 1944-45) : Scott was consultant when building was underway; responsible for the elaborate parapet, bases to chimneys etc
New Bodleian Library, Oxford 1935-46 "much abused"
Waterloo Bridge 1935-45 still has the temporary railings and no sculptural groups as designed; note that it is cantilevered, the arches being decorative not structural
House of Commons refurbishment 1950 "neon-Gothic"
St Michael Chester Square
Phoenix Theatre (with others) Charing Cross Road facade
King George V statue plinth at Old Palace Yard
Joshua Reynolds statue plinth at the Royal Academy
Memorial Cross at Our Lady of Victories, Clapham Park Road

Homes
4 Campden Hill
28 Tavistock Square
Chester House, Clarendon Place, Paddington (RIBA medal 1927, lived until his death) Blue Plaque 1990

City Gate House
Built 1930-31
"Associate architects" with Frank Reginald Gould Willis.
"Embarrassingly pedestrian and commercial" according to the RIBA Drawings Collection.
Scott re-designed Willis's facades (1928) in a more disciplined and severe style
Square was planned by George Dance Snr in 1751, laid out by George Dance Jnr in 1777

The Scott Family
George Gilbert Scott Snr (grandfather) : Albert Memorial, St Pancras Station, St Giles Camberwell
George Gilbert Scott Snr (father) : St Agnes Kennington, All Hallows (Pepper Street) Southwark

Web Links
Design Museum

Thursday, August 23, 2007

Bob's Not My Uncle

Here are Uncle Bob's Test-Driven Developers Practitioners Three Laws.

1 You may not write production code unless you've first written a failing unit test.
2 You may not write more of a unit test than is sufficient to fail.
3 You may not write more production code than is sufficient to make the failing unit test pass.

Robert C Martin Professionalism and Test-Driven Development in IEEE Software Magazine, Vol 24 No 3 May/June 2007.

I wanted to add encryption to a C# application, tested under NUnit. So I wrote
[Test]
public void Encrypt()
{
string output = m_sc.Encrpyt(INPUT_1);
Assert.AreNotEqual(INPUT_1, output );
}

The test failed. On to Step 3, sufficient code to make the test pass.
public string Encrpyt(string input )
{
return "_" + input;
}

Next test. Different strings get different encryptions. Passed first time.
[Test]
public void EncryptDifferent()
{
string output1 = m_sc.Encrpyt(INPUT_1);
string output2 = m_sc.Encrpyt(INPUT_2);
Assert.AreNotEqual(output1, output2 );
}

Now, decryption. A test and just enough code.

[Test]
public void Decrypt()
{
string output = m_sc.Decrypt( m_sc.Encrpyt(INPUT_1) );
Assert.AreEqual(INPUT_1, output );
}

public string Decrypt(string p)
{
return p.Substring(1);
}

That passes.

But what should I do now? How do I write a unit test that shows up the insufficiency of this encryption? And if I only write enough code to get past that test, will I have a decent level of encryption. If I encypt SECRET as ___*S*E*C*R*E*T*___ who am I fooling, other than my test which checked for a limited set of items?

No disrespect to Uncle Bob. I am not worthy to put a semi-colon on the end of his statement. I just need to know when to disobey the laws.