Book of Red Gate 2010 - Red Gate Software
Book of Red Gate 2010 - Red Gate Software
Book of Red Gate 2010 - Red Gate Software
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
1.<br />
3.<br />
5.<br />
7.<br />
9.<br />
11.<br />
2.<br />
4.<br />
6.<br />
8.<br />
10.<br />
12.
13.<br />
15.<br />
17. 18.<br />
19.<br />
21.<br />
14.<br />
16.<br />
20.<br />
1. SQL Compare 2. SQL Backup 3. SQL Data Compare 4. SQL Response 5. SQL Prompt<br />
6. SQL Data Generator 7. SQL Log Rescue 8. SQL Multi Script 9. SQL Object Level Recovery<br />
10. SQL Packager 11. SQL Search 12. SQL Comparison SDK 13. SQL Dependency Tracker 14. SQL Doc<br />
16. ANTS Memory Pr<strong>of</strong>iler 17. ANTS Performance Pr<strong>of</strong>iler 18. Exception Hunter 19 .NET Reflector<br />
20. Smart Assembly 21. Exchange Server Archiver
The <strong>Book</strong> <strong>of</strong> <strong>Red</strong> <strong>Gate</strong><br />
<strong>2010</strong>
This here book is a bath. So please, go natural, hop in,<br />
and gently steam yourself to the texture <strong>of</strong> dimsum.<br />
With any luck, when you get out twenty minutes later<br />
you’ll be covered in bits <strong>of</strong> <strong>Red</strong> <strong>Gate</strong> that are really hard<br />
to get <strong>of</strong>f.<br />
Friends, colleagues, future colleagues, enjoy your soak<br />
now! In The <strong>Book</strong> <strong>of</strong> <strong>Red</strong> <strong>Gate</strong>!
“I’m sick <strong>of</strong> hearing<br />
about <strong>Red</strong> <strong>Gate</strong>”<br />
One <strong>of</strong> the few negative things about working at <strong>Red</strong> <strong>Gate</strong> is<br />
that sooner or later all your friends become tired <strong>of</strong> hearing<br />
about how it’s such a great company. It’s almost an embarrassing<br />
subject to raise now, a taboo. You’re sitting in a pub<br />
with your friends, and you just can’t help yourself; you find<br />
you’re telling them about a day out building a catapult as a<br />
Celtic warrior, yet another champagne celebration, painting<br />
mugs or eggs or t-shirts, the silhouette artist, the amazing<br />
roast beef you had for lunch etc. etc. And you get ‘that look’.<br />
The look that says - You’re not supposed to rave enthusiastically<br />
about where you work. Work is a source <strong>of</strong> complaint;<br />
it’s something we tolerant begrudgingly and then bitch about<br />
over a pint. Eventually, someone will ask – “What is so great<br />
about <strong>Red</strong> <strong>Gate</strong> anyway?”<br />
It’s a good question. What makes <strong>Red</strong> Great such a great place<br />
to work? Occasionally, you try to explain, but find yourself<br />
incoherently gushing about ‘culture’ and ‘fun’ and ‘ping pong’<br />
in a wide-eyed and rather creepy evangelical manner. And<br />
people again give you ‘that look’.<br />
So, how can you explain what makes <strong>Red</strong> <strong>Gate</strong> the place that<br />
it is? It’s not just about the free lunches and table football and<br />
5
welly wanging . It’s more than painting cartoon characters <strong>of</strong><br />
everyone on the walls. It’s something other than five-a-side<br />
football, squash, running, yoga, Japanese, cooking club, massages.<br />
It’s not the crazy questions (and answers) on the white<br />
board. It’s not the occasionally bizarre forum threads about<br />
dishwasher tablets or Christmas cracker jokes. It’s deeper than<br />
great Xmas parties and Summer days out.<br />
Maybe you can find the essence <strong>of</strong> <strong>Red</strong> <strong>Gate</strong> in the way we<br />
approach our work…. How many genuinely open, collaborative,<br />
transparent companies are there, that actually practise<br />
what they preach about “no politics” and “do what works”,<br />
that are built around a spirit <strong>of</strong> restless creativity, forward<br />
momentum and optimistic evolution…. where everyone’s<br />
contribution is listened to and valued….? There I go again.<br />
I’ve drunk the Kool-aid. I’m wearing the (various) t-shirts,<br />
I’m singing the company song, I’m eating the company<br />
breakfast…<br />
The truth is, there is no way to capture the quality that makes<br />
<strong>Red</strong> <strong>Gate</strong> the company it is, any more than you can bottle<br />
sunshine. <strong>Red</strong> <strong>Gate</strong> is all <strong>of</strong> the things in this book and more;<br />
it’s greater than the sum <strong>of</strong> its parts.<br />
But (as the actress said to the bishop) what great parts there<br />
are. So, to anyone who’s curious about what makes us tick,<br />
this book is a good place to start. “What is so great about <strong>Red</strong><br />
<strong>Gate</strong>?”<br />
Everything.<br />
6
<strong>Red</strong> <strong>Gate</strong> Photo<br />
Album<br />
7
What we believe in #1/13<br />
You will be reasonable<br />
with us.<br />
9
We will be reasonable<br />
with you.<br />
We’re all trying to treat each other as we would like<br />
to be treated in the same circumstances. Sometimes<br />
the circumstances are difficult, but we will all still be<br />
reasonable.<br />
10
UI Gallery<br />
11
13<br />
"I raised an issue with <strong>Red</strong> <strong>Gate</strong> regarding<br />
functionality in their SQL Compare product…<br />
and a couple <strong>of</strong> months later the items<br />
identified had been rewritten. The new<br />
version was better than I expected. In short<br />
both the product and its authors, <strong>Red</strong> <strong>Gate</strong>,<br />
are exceptional in their field."<br />
Abbas Ali SQL Server DBA<br />
"I really appreciate so many things<br />
about <strong>Red</strong> <strong>Gate</strong>... The tools are top<br />
notch. I use at least one every single day.<br />
The pricing is very reasonable, and - best<br />
<strong>of</strong> all - is the customer support. I get quick<br />
answers to all my questions from a<br />
knowledgeable and pr<strong>of</strong>essional staff<br />
member. Such a departure from the industry<br />
as a whole. I’ll be a customer for quite a<br />
long time."<br />
Steve Gray MCDBA Vice President, 4Penny.net
"No production .NET s<strong>of</strong>tware should ever<br />
be released without being reviewed in ANTS<br />
Pr<strong>of</strong>iler – it’s just that good. Really, I love it.<br />
You guys have done great work."<br />
Matt Lavallee Director <strong>of</strong> Technology, MLS Property<br />
Information Network, Inc.<br />
"Whenever I show people any <strong>Red</strong> <strong>Gate</strong><br />
s<strong>of</strong>tware it’s like they just escaped<br />
communist Russia and have a new life<br />
to live."<br />
Scott Cowan Senior Engineer, Sportinginsider.com<br />
"<strong>Red</strong> <strong>Gate</strong>’s SQL Data Generator has<br />
overnight become the principal tool<br />
we use for loading test data to run our<br />
performance and load tests"<br />
Grant Fritchey Principal DBA, FM Global<br />
14
<strong>Red</strong> <strong>Gate</strong>'s<br />
Video Lovelies<br />
15
Code <strong>of</strong> the Year 2009<br />
Heaps <strong>of</strong> astonishingly good engineering is created and<br />
French polished by hand at <strong>Red</strong> <strong>Gate</strong> every year. We’ve<br />
decided to celebrate this and from a field <strong>of</strong> seven entrants,<br />
Neil ‘First Coder’ Davidson managed to pick the winner <strong>of</strong> the<br />
Golden Brackets Trophy 2009, “because it has lots <strong>of</strong> complicated-looking<br />
shit in it and it’s better than Rob’s solution (which<br />
I’m assuming was awesome)”.<br />
This is (part <strong>of</strong>) the code that allows us to put blue blobs on the object<br />
explorer in SQL Source Control.<br />
This bit <strong>of</strong> code is clever because the first two approaches we took to solve<br />
this problem were completely different (Rob and Elliot’s pro<strong>of</strong> <strong>of</strong> concepts),<br />
and we eventually settled on this approach because it should cause<br />
the least problems for SSMS: it already expects there to be many different<br />
kinds <strong>of</strong> builders for the different types <strong>of</strong> nodes in the tree, and therefore<br />
it shouldn’t cause SSMS to deadlock, crash, or misbehave in other ways.<br />
Finally, I like it because it has an anonymous delegate,<br />
a lambda function, a bug was found and fixed in it (follow the SOC<br />
number), it uses our own wrapping around both the C# locking and the<br />
reflection APIs, it uses the Set class from Shared.Utils, and even though<br />
it’s fairly short it provides rather a lot <strong>of</strong> the start-<strong>of</strong>-day functionality<br />
that is needed for blue blobs.<br />
Cheers,<br />
David Simner<br />
17
Type type = Type.GetType(c_TheType, true);<br />
object typeAndNodeRegistrationHelper =<br />
source.GetService(type);<br />
IList typeBuilders = ReflectionUtils.GetFieldValue<br />
(typeAndNodeRegistrationHelper,<br />
“childTypes”);<br />
if (typeBuilders != null)<br />
{<br />
LockingUtils.TryLock(typeBuilders, delegate<br />
{<br />
Set seenBuilders =<br />
new Set();<br />
for (int i=typeBuilders.Count-1; i>=0; --i)<br />
{<br />
object typeBuilder = typeBuilders[i];<br />
bool seen = false;<br />
ReflectionUtils.UpdateFieldValue<br />
(typeBuilder,<br />
“builder”, oldBuilder =><br />
{<br />
IQueryProvider proxiedBuilder =<br />
m_ObjectExplorer.GetQueryProviderProxy(<br />
oldBuilder);<br />
seen = ! seenBuilders.AddIfNotExists(<br />
proxiedBuilder);<br />
return proxiedBuilder;<br />
});<br />
if (seen)<br />
{<br />
typeBuilders.RemoveAt(i); //SOC-130<br />
}<br />
}<br />
});<br />
}<br />
Runners Up:<br />
David Connell, Simon Cooper, Andrew<br />
Hunter, Konstantin Vorozcovs<br />
(All code submissions available in the<br />
Appendix <strong>of</strong> the ebook version)<br />
18
What we believe in #2/13<br />
Attempt to do the best<br />
work <strong>of</strong> your life.<br />
19
We’d like you to achieve your own greatness and to<br />
be all that you can be. We’ll try hard to allow that to<br />
happen and we’d like you to try hard too.<br />
20
I worked for <strong>Red</strong><br />
<strong>Gate</strong> and all I got<br />
was this lousy<br />
T-shirt<br />
21<br />
red gate's 1 st<br />
joined 12/10/1999
DONT PANIC!<br />
www.red-gate.com<br />
22
Languages spoken<br />
at <strong>Red</strong> <strong>Gate</strong><br />
WW<br />
CB<br />
LL<br />
MB<br />
LH<br />
AD<br />
RB<br />
EA<br />
PS<br />
RM<br />
RL<br />
RFC<br />
KV<br />
SD<br />
French <br />
German <br />
Italian <br />
Spanish <br />
Russian <br />
Portuguese <br />
Hindi <br />
Marathi <br />
Gujrathi <br />
Korean <br />
Japanese <br />
Hungarian <br />
Latvian <br />
Bocce <br />
Australian <br />
24
25<br />
JW SC DKJ PW AH RB TS CT AD JC BR JM RC SD MT RB<br />
Algol –S, Algol 60 <br />
Assembler <br />
• 6502/Z80 <br />
• 68k <br />
• Alpha <br />
• ARM <br />
• DACTL <br />
• Mips <br />
• PIC <br />
• SPARC <br />
• Ten15 <br />
• x86/x64 <br />
Bash <br />
Basic <br />
C <br />
C# <br />
C++ <br />
Clojure <br />
F# <br />
Fortran <br />
Haskell <br />
Hope
Inform <br />
Java <br />
Javascript <br />
LISP <br />
ML <br />
MSIL <br />
Objective-C <br />
Pascal <br />
Perl <br />
PHP <br />
PROLOG <br />
Python <br />
RPG <br />
Ruby <br />
Scala <br />
Scheme <br />
Smalltalk <br />
SQL <br />
TCL <br />
VB/VBA <br />
VBScript <br />
VERILOG <br />
XSLT <br />
26
What we believe in #3/13<br />
Motivation isn’t about<br />
carrots and sticks.<br />
27
Constant oversight and the threat <strong>of</strong> punishment are<br />
incompatible with great, fulfilling work. We believe in<br />
creating appropriate constraints and then giving people<br />
the freedom to excel.<br />
28
Charity<br />
begins at<br />
work!<br />
A selection <strong>of</strong> posters<br />
from our charitable<br />
activity days<br />
29
1999<br />
1999<br />
2000<br />
2000<br />
2001<br />
2002<br />
Jun 2000 Dec 2000 Feb 2003<br />
2001<br />
2002<br />
2003<br />
2003<br />
2004<br />
2004
2005<br />
2005<br />
2006<br />
2006<br />
2007<br />
2008<br />
2008<br />
2009<br />
Sep 2005 Jul 2006 Dec 2006<br />
2007<br />
2009<br />
<strong>2010</strong><br />
<strong>2010</strong>
A Meeting without<br />
an Objective is a<br />
Chat<br />
A Chat without a Meeting is the Best Way to Get<br />
Things Done<br />
A Chicken without an Egg is God<br />
An XX without a Y is a Lady<br />
A sentence without a point is a...<br />
An X-Factor without a Y-ning contestant is a<br />
zzzzzzzzzzzzzzzzzzzzzz<br />
A meeting without seating is fleeting<br />
A camel without a hump is a llama<br />
A market without a product is a possibility<br />
A board without a chair is a narchy<br />
33
Dear Franke Kaffeemaschinen AG Evolution C<strong>of</strong>fee<br />
Machine,<br />
I’m running a major division, and I’m interested in applying<br />
some Kaizen or even Genchi Genbutsu methodologies to the<br />
functional workstream silos, but I’m not sure what metrical<br />
analyses would best leverage a productivity gain? Now I’m<br />
worried that these business ideas may have been superceded<br />
by the Korean Inhwa approach or even the Chinese emphasis<br />
on Guanxi. I really need some Zen insight to show me<br />
the right path to follow.<br />
Crocodile Shoes,<br />
<strong>Red</strong> <strong>Gate</strong><br />
Dear Crocodile Shoes,<br />
Missing c<strong>of</strong>fee outlet.<br />
Ask the C<strong>of</strong>fee<br />
Machine<br />
Franke Kaffeemaschinen AG Evolution C<strong>of</strong>fee Machine<br />
34
What we believe in #4/13<br />
Our best work<br />
is done in teams.<br />
35
We work in groups and towards a common goal.<br />
The company is more important than the team,<br />
and the team is more important than the individual.<br />
36
The <strong>Red</strong> <strong>Gate</strong> Sales<br />
Global Domination<br />
Challenge<br />
Below is the list <strong>of</strong> countries that, at the time <strong>of</strong> print,<br />
have not been sold to. Can you be the first to sell there?<br />
Andorra<br />
Anguilla<br />
Angola<br />
Antarctica<br />
Belarus<br />
Belize<br />
Benin<br />
Bhutan<br />
Botswana<br />
Bouvet Island<br />
British Indian Ocean Territory<br />
Burkina Faso<br />
Burundi<br />
Chad<br />
Christmas Island<br />
Cocos (Keeling) Islands<br />
Comoros<br />
Congo, The Democratic<br />
Republic Of The<br />
37<br />
Congo<br />
Cook Islands<br />
Cote D’ivoire<br />
Cuba<br />
Dominica<br />
Eritrea<br />
Ethiopia<br />
Falkland Islands (Malvinas)<br />
French Guiana<br />
French Southern Territories<br />
French Polynesia<br />
Federated States Of Micronesia<br />
Gabon<br />
Guinea<br />
Equatorial Guinea<br />
Guinea-Bissau<br />
Guyana<br />
Heard And Mc Donald Islands<br />
Iraq
Kiribati<br />
Lesotho<br />
Liberia<br />
Libyan Arab Jamahiriya<br />
Macau S. A. R.<br />
Madagascar<br />
Malawi<br />
Maldives<br />
Mali<br />
Marshall Islands<br />
Martinique<br />
Mauritania<br />
Mayotte<br />
Mongolia<br />
Montenegro<br />
Montserrat<br />
Mozambique<br />
Myanmar<br />
Namibia<br />
Nauru<br />
Niger<br />
Niue<br />
Norfolk Island<br />
Palau<br />
Papua New Guinea<br />
Paraguay<br />
Pitcairn<br />
Reunion<br />
Rwanda<br />
Saint Kitts And Nevis<br />
Saint Vincent And The Grenadines<br />
Samoa<br />
San Marino<br />
Sao Tome And Principe<br />
Senegal<br />
Seychelles<br />
Sierra Leone<br />
Solomon Islands<br />
Somalia<br />
South Georgia And The South<br />
Sandwich Islands<br />
St. Helena<br />
St. Pierre And Miquelon<br />
Sudan<br />
Svalbard And Jan Mayen Islands<br />
Syrian Arab Republic<br />
Tajikistan<br />
Togo<br />
Tokelau<br />
Tonga<br />
Turks And Caicos Islands<br />
Turkmenistan<br />
Tuvalu<br />
Uzbekistan<br />
Wallis And Futuna Islands<br />
Yemen<br />
Zambia<br />
Zimbabwe<br />
38
From The <strong>Red</strong> <strong>Gate</strong><br />
Menu...<br />
Roasted <strong>Red</strong> Snapper with<br />
Cherry Tomato Salsa<br />
Ingredients (serves 2)<br />
1. 2 tablespoons olive oil<br />
2. 2 tablespoons chopped fresh basil<br />
3. 1 tablespoon fresh lime juice<br />
4. 1 cup small cherry tomatoes, halved<br />
5. 1/3 cup chopped red onion<br />
6. 1 teaspoon minced jalapeno chili with seeds<br />
7. 1 teaspoon honey<br />
8. 4 x 4 ounce red snapper fillets<br />
Method<br />
1. Preheat oven to 400º F.<br />
Whisk oil, 1 tablespoon basil and lime juice in<br />
medium bowl to blend.<br />
Transfer 1 ½ tablespoons dressing to small bowl and<br />
reserve for fish.<br />
Mix remaining 1 tablespoon basil, tomatoes, onion,<br />
jalapeno and honey into dressing in medium bowl.<br />
Season salsa with salt and pepper.<br />
39
2. Lightly brush a small baking sheet with oil.<br />
Sprinkle both sides <strong>of</strong> fish with salt and pepper.<br />
Arrange fish on prepared sheet; brush with reserved<br />
1 ½ tablespoons dressing.<br />
Roast fish for about 10 minutes, until just opaque<br />
in center.<br />
Transfer fish to 2 plates. Spoon salsa alongside<br />
and serve.<br />
40
124,618<br />
Copies <strong>of</strong> SQL Compare in the wild<br />
237<br />
people hired since 2000 3<br />
57<br />
people hired in 2009<br />
from a total <strong>of</strong><br />
486 interviews<br />
3,354<br />
Job applications received last year,<br />
41<br />
congratulations new starters!<br />
minutes<br />
to<br />
evacuate the<br />
<strong>of</strong>fice during a<br />
fire alarm<br />
41,600<br />
main meals consumed per year in the Servery<br />
124<br />
Countries that <strong>Red</strong> <strong>Gate</strong> products<br />
have been sold in, and there are<br />
where<br />
<strong>Red</strong> <strong>Gate</strong><br />
products have<br />
96Countries<br />
not yet been sold<br />
9,360<br />
17,000<br />
PG Tips teabags used in the last year<br />
individual post-it<br />
notes used in the last year
1200<br />
boxes <strong>of</strong> cereal<br />
crunched in 2009<br />
24,271<br />
cups <strong>of</strong> c<strong>of</strong>fee dispensed by the SQL<br />
Servery c<strong>of</strong>fee machine in its first year<br />
£2860<br />
raised for charity last year<br />
1<br />
interview<br />
interrupted by<br />
an exploding<br />
light bulb<br />
3<br />
trophies broken<br />
accidentally by<br />
interviewer<br />
during interview<br />
75<br />
whiteboards<br />
<strong>of</strong> milk<br />
downed<br />
in 2009<br />
1piece <strong>of</strong> furniture<br />
accidentaly destroyed by<br />
interview candidates<br />
42<br />
10,000bottles
What we believe in #5/13<br />
Don’t be an asshole.<br />
43
No matter how smart you are, or how good you are at<br />
narrowly defined tasks, there is no room for you here if<br />
you’re an asshole.<br />
44
45<br />
"I was amazed before my first day about<br />
the response time to my e-mails: I sent a<br />
CV, I received an answer the following day<br />
with an exercise to do. I sent the assessment<br />
back, and again, I got an interview<br />
arranged on the following day. I came for<br />
the interview and I got told the outcome<br />
the same day. That was truly unbelievable."<br />
New Starter<br />
"Woohoooo!!!! Kim you rock!!!!<br />
Both my customer and I thank<br />
you. Keep in touch with me and I'll<br />
bring you a bottle <strong>of</strong> Napa's finest."<br />
Customer for Kim Moss<br />
"Tech support & facilities people<br />
have been ace at sorting out<br />
my equipment, s<strong>of</strong>tware and lots<br />
<strong>of</strong> other hassles I came up with"<br />
New Starter
"Have a nice weekend and take<br />
joy in the fact that it was your<br />
outstanding customer support and<br />
personal call that got you my business.<br />
Have an extra pint for a well<br />
done job! ;)"<br />
Niklas Winde for Steve Harris<br />
"Josh, you should feel good that you<br />
have helped a struggling developer get<br />
closer to his goal <strong>of</strong> world domination…<br />
Thank you for all <strong>of</strong> your help, if ever I am<br />
in Cambridge I will buy you a pint or 6!"<br />
P Gossip for Josh Robertson<br />
"Your excellent service level is<br />
highly appreciated!"<br />
Gary Smeulders for Michael Austridge<br />
"Lovely <strong>of</strong>fices, very welcoming<br />
and friendly people"<br />
Interview Candidate<br />
46
47<br />
01.00<br />
Dutch Harbour<br />
Brad McGehee<br />
02.00<br />
Juneau<br />
03.00<br />
PASS<br />
PDC<br />
04.00<br />
Steve Jones<br />
Los Angeles<br />
05.00<br />
TechEd<br />
Mexico City<br />
06.00<br />
Bob Cramblitt<br />
New Orleans<br />
Washington, D.C.<br />
07.00<br />
08.00<br />
Brasilia<br />
Buenos Aires<br />
09.00<br />
10.00<br />
Reykjavik<br />
11.00<br />
SQL Bits<br />
London<br />
PASS E<br />
12.00
urope<br />
Berlin<br />
BAFANA BAFANA<br />
Pretoria<br />
Moscow<br />
Tehran<br />
Abu Dhabi<br />
New Delhi<br />
Dhaka<br />
Bangkok<br />
Peter Yeoh<br />
Kuala Lumpur<br />
Canberra<br />
13.00 14.00 15.00 16.00 17.00 18.00 19.00 20.00 21.00 22.00 23.00 00.00<br />
Beijing<br />
Tokyo<br />
Wellington<br />
48
What our customers<br />
say<br />
49
What our staff say<br />
50
What we believe in #6/13<br />
Get the right<br />
stuff done.<br />
51
We admire people who get stuff done. While there’s a<br />
place for planning, thinking and process it is better to<br />
try - and try well - and fail than not to try at all.<br />
52
As the train glided into Cambridge station, I realized the<br />
time had come to discover the reality behind the carefullyconstructed<br />
image, surely dreamed up by marketing<br />
experts. Simple-Talk: the vociferous editorial meetings<br />
by donnish geeks in the Cambridge pub, the strange,<br />
outrageous, antics <strong>of</strong> regular writers such as Phil Factor<br />
and Robyn Page, and the beer-drinking <strong>of</strong> Tony Davis.<br />
Soon, I told myself, I’d see the reality behind the myth;<br />
the slick <strong>of</strong>fice; the quiet unhurried efficiency that had<br />
brought Simple-Talk to its present popularity, rivaling the<br />
leading sites for the industry. Regularly read by around<br />
half a million IT pr<strong>of</strong>essionals.<br />
The taxi took me to a pub, the Waggon and Horses. In<br />
walked Tony Davis, the Editor in Chief, cursing amiably<br />
in broad estuary dialect. Soon we were settling down to<br />
a large bowl <strong>of</strong> chips, and several pints <strong>of</strong> a strange dark<br />
beer called Skull-Splitter. Suddenly, in burst Phil Factor,<br />
dressed in shepherd’s costume, baying for his special jug;<br />
his white hair and walrus mustache windswept,<br />
followed soon after by Chris, the matinee idol, still<br />
bleary-eyed from his night’s thespian exertions. A strange<br />
conversation ensued, involving finite state automata,<br />
which became louder and more heated. Although regular<br />
53
customers smiled indulgently, pale faces in the distance<br />
indicated a growing nervousness about the outcome <strong>of</strong><br />
the discussion. Then, suddenly, at the door stood Alice<br />
‘The Spike’ Smith, looking at her watch and frowning<br />
at the editorial discussion.<br />
In the taxi home, I absently picked the slivers <strong>of</strong> broken<br />
bottle from my hair, reflecting on the strange way that<br />
myth and reality coincided. What a strange formula for<br />
success: an obsession with quality, plain English, technical<br />
accuracy, good presentation, animated discussions,<br />
beer and chips.<br />
Andrew<br />
504,750 registered users.<br />
14,500 visits every weekday.<br />
7,343,426 visits in last three years.<br />
Monthly visits to Simple Talk<br />
54
<strong>Red</strong> <strong>Gate</strong><br />
<strong>Book</strong>s<br />
55
Nine years.<br />
It's been nearly nine years since SQLServerCentral<br />
was started with a poor business decision on the<br />
part <strong>of</strong> Database Journal, for whom I still could be<br />
writing. I remember walking around my basement,<br />
talking on the phone with the other founders, looking<br />
for a quiet spot while the toddlers upstairs seemed<br />
to be locating the exact spot over my head before<br />
jumping up and down. I made it through the call and<br />
SQLServerCentral was born.<br />
The early days consisted <strong>of</strong> a lot <strong>of</strong> coding,<br />
constant writing and answering questions.<br />
It seemed that each <strong>of</strong> us was working two jobs,<br />
working long hours, and <strong>of</strong>ten feeling the pressure<br />
to get an article done for a newsletter.<br />
A few months into the job I felt it was a grind, and<br />
I tried something creative. Instead <strong>of</strong> putting an<br />
announcement in the middle <strong>of</strong> the newsletter,<br />
I wrote a short piece on some aspect <strong>of</strong> SQL Server.<br />
There wasn't much to it, but it became the daily<br />
editorial. I was never sure if anyone was reading it<br />
57
since I had no place for feedback. Needless to say I<br />
was stunned at the PASS Summit when quite a few<br />
people mentioned it to me. Since then I've grown to<br />
enjoy it as my favorite part <strong>of</strong> the job.<br />
Steve<br />
1,202,581 registered users.<br />
46,000 visits every weekday.<br />
27,914,300 visits in last three years.<br />
Monthly visits to SQL Server Central<br />
58
Tat's what I call a<br />
testimonial<br />
59
What we believe in #7/13<br />
Visible misteaks are a<br />
sign that we are a<br />
healthy organisation.<br />
61
What we do is very difficult, the current situation is<br />
hard to understand and the future is uncertain.<br />
Mistakes are an inevitable consequence <strong>of</strong> attempting<br />
to get the right stuff done. Unless we can make mistakes<br />
visible both individually and collectively we will be<br />
doomed to mediocrity.<br />
62
B.H.A.G<br />
“To be one <strong>of</strong> the greatest s<strong>of</strong>tware companies in the world”<br />
63
Ask the C<strong>of</strong>fee<br />
Machine<br />
Dear Franke Kaffeemaschinen AG Evolution C<strong>of</strong>fee<br />
Machine,<br />
In mscorlib on x64 machines, under System.Internal, there<br />
are three methods CommonlyUserGenericInstantiations_<br />
HACK(), NullableHelper_HACK()and SZArrayHelpers_HACK(SZArrayHelper).CommonlyUserGenericInstantiations_HACK<br />
has a lengthy implementation, which<br />
just creates an instance <strong>of</strong> all the commonly used generic<br />
types:<br />
Can you please explain what is going on with these<br />
methods?<br />
Yrs,<br />
Intrigued <strong>of</strong> .NET division<br />
Dear Intrigued <strong>of</strong> .NET division,<br />
Please wait... heating.<br />
No milk.<br />
Franke Kaffeemaschinen AG Evolution C<strong>of</strong>fee Machine<br />
64
65<br />
"SQL Prompt is one <strong>of</strong> the indispensable<br />
tools in my daily programming life. I find<br />
myself cutting through my work like a hot<br />
knife through butter."<br />
Jeremy Simmons<br />
"Thank you (and to the rest <strong>of</strong> the <strong>Red</strong><br />
<strong>Gate</strong> team) for putting on an excellent<br />
recruitment open evening yesterday<br />
afternoon. It was really interesting<br />
touring the <strong>of</strong>fices and seeing the various<br />
product demonstrations, and the<br />
opportunity to meet and talk to various<br />
<strong>Red</strong> <strong>Gate</strong> employees was invaluable.<br />
The atmosphere was really light-hearted,<br />
friendly and welcoming, and you all seem<br />
rightly proud <strong>of</strong> <strong>Red</strong> <strong>Gate</strong>, its products<br />
and its achievements. I'll be submitting<br />
my application to join <strong>Red</strong> <strong>Gate</strong> shortly!"<br />
Recruitment Evening Attendee
"I have to say you're doing a stellar job<br />
<strong>of</strong> turning this around so quickly. And<br />
you're managing to keep a calm head<br />
about you – well done!"<br />
"THANK YOU! You have saved<br />
me probably umpteen hours<br />
worth <strong>of</strong> digging and searching."<br />
Eichmann for Michael Austridge<br />
"This might just be THE BEST<br />
THING I'VE EVER SEEN.<br />
Amazing work."<br />
"Perfect. Both activations. All I<br />
can say is you guys rock!"<br />
Todd Robinson for Daniel Mooney<br />
"What a fantastic <strong>of</strong>fice and culture<br />
you have, I'd love to work here."<br />
Interview Candidate<br />
66
What we believe in #8/13<br />
No politics.<br />
67
No gossiping, no intrigue, no pussy-footing around<br />
problems and no telling people what you think they<br />
want to hear whilst privately disagreeing. We will be<br />
transparent in our dealings.<br />
68
...you realise that <strong>Red</strong> <strong>Gate</strong><br />
Towers shuts down over the<br />
Winter, and is completely<br />
isolated from the outside<br />
world?<br />
Some have found the<br />
loneliness... difficult...<br />
in the past...<br />
Very well. Your CV is excellent,<br />
so the job is yours. There are<br />
a few things you need to know<br />
to be our Winter caretaker. Are<br />
you ready to take notes?<br />
Firstly, make sure the doors<br />
are all closed. And do not<br />
let any children on the first<br />
floor. And above all... on<br />
no account enter the SQL<br />
Servery!<br />
Just don't go<br />
in there, OK?<br />
See you later in the<br />
year. Goodbye...<br />
69<br />
Got it. But why?<br />
OK. Thank you very<br />
much. I'm sure I'll<br />
love the splendid<br />
isolation here, Sir.<br />
I'm ready. Fire away<br />
I'm aware <strong>of</strong> the stories, if<br />
that's what you're referring<br />
to. I'm looking forward to the<br />
peace and quiet. I'm sure I'll<br />
get along just fine, Sir.<br />
So... This is it. The job at <strong>Red</strong> <strong>Gate</strong><br />
is mine. Just what I need to get<br />
over my recent problems...
Day 2<br />
Day 1<br />
Day 21<br />
Time to explore. Hmm...<br />
No kids coming up here.<br />
Good. Hmm, it's a long way<br />
down to reception...<br />
Hey... what's that down<br />
there in reception?!<br />
Oh. Nothing. I thought I saw<br />
something for a moment.<br />
It's so quiet.<br />
Nobody is here<br />
all quiet so far.<br />
Sure is deserted around here...<br />
Nice <strong>of</strong>fices.<br />
End <strong>of</strong> my first week.<br />
All quiet so far. This floor makes a<br />
funny noise when I trot along it.<br />
And the colour <strong>of</strong> the floor<br />
looks a little like...<br />
God, I'm bored.<br />
My name is Spider.<br />
Spider the pig.<br />
I hope I don't forget<br />
my own name.<br />
Day 7<br />
blood.<br />
70
Day 24<br />
Money in...<br />
The<br />
chocolate is<br />
teetering but<br />
not falling.<br />
Come on!<br />
Come on!<br />
I NEED my<br />
chocolate...<br />
Food supplies are still adequate.<br />
I can purchase my favourite<br />
"Porkie" chocolate bar with the<br />
money I found in my slit.<br />
Hello?<br />
press the button...<br />
Is anyone here?<br />
anyone else here?<br />
71<br />
NO!<br />
HELLO?<br />
Day 26<br />
There's definitely something<br />
down there. I can hear voices.<br />
They're saying something<br />
like "red rum... red rum..."<br />
No. Wait. They 're saying "bread...<br />
crumbs, bread...crumbs."<br />
Yikes! It sounds like someone is<br />
planning to turn me into a fried<br />
pork escalope coated in<br />
breadcrumbs!<br />
I'm Spider. Come and<br />
find me in Horses...<br />
Stupid Spider! Think!<br />
Wait.. no! I don't want<br />
them to find me!<br />
I need somewhere to HIDE!
...Hah!<br />
Later...<br />
They'll never think <strong>of</strong><br />
looking for me here.<br />
I need to calm down<br />
Maybe this film <strong>of</strong><br />
Spider-Pig will help<br />
me relax.<br />
Doh, I just photocopied<br />
my own tail. Silly Spider.<br />
72
Day 27<br />
that didn't work.<br />
I should go and work<br />
on my novel.<br />
Yes, time to do some<br />
writing. Ahh, lovely<br />
therapeutic writing.<br />
HEE HEE!<br />
What's that?<br />
73<br />
I 'M THE KING OF<br />
RED GATE<br />
IN MY SHINY<br />
SPARKLY HA T!<br />
I RULE!!<br />
I'm just the<br />
caretaker?<br />
I am NOT the<br />
caretaker.<br />
I AM TOP PIG!<br />
All work and no play makes Spider a dull piggy<br />
All workand no play makes Spider a dull piggy<br />
All work and no play<br />
makes Spider a dull piGgy<br />
All work and no pla y makesspider a dull piggy<br />
All work and no play maKes Spider a d u l l piggy<br />
All work an dno play maKes SPIDER a dull pigg y<br />
I'm going to the SQL Servery.<br />
I can hear something in there<br />
Yes, yes. I'm coming...<br />
I'm coming...
Then...<br />
Hah hah hah!<br />
I knew it.<br />
I'm NOT alone.<br />
Here's my best buddy,<br />
"K" the guy that lives<br />
on the other side <strong>of</strong><br />
the ping pong table.<br />
He's always been here.<br />
So... finally...<br />
Here they<br />
all are<br />
I'm where I<br />
belong now...<br />
frozen for<br />
all time in this<br />
mural with the<br />
others...<br />
What's that K?<br />
You say I'm not crazy?<br />
And that my serve is a<br />
"cheating serve"? I'll<br />
show you.. take that!<br />
My friends.<br />
They've always<br />
been here.<br />
always been here...<br />
always been here...<br />
74
What we believe in #9/13<br />
Do the right things for<br />
our customers.<br />
75
We believe that if we do what is right for our customers<br />
then we will thrive.<br />
76
<strong>Red</strong> <strong>Gate</strong> Clubs<br />
and Activities<br />
Sport<br />
Football<br />
Monday evenings, 5-a-side<br />
Jon.Hudson@red-gate.com<br />
Squash<br />
Tuesday lunchtimes<br />
Reka.Burmeister@red-gate.com<br />
Yoga<br />
Monday lunchtimes<br />
Cara.Creek@red-gate.com<br />
Running ~ 10km<br />
Week lunchtimes<br />
Clive.Tong@red-gate.com<br />
Running ~ 5km<br />
Tues & Thurs evenings<br />
Dominick.Reed@red-gate.com<br />
Other Clubs & Activities<br />
Tennis<br />
Cooking club<br />
PhotoClub<br />
<strong>Book</strong> club<br />
Crossword club<br />
Board games night<br />
Video games night<br />
Japanese lessons<br />
French lessons<br />
Massages<br />
Ping pong<br />
Table football<br />
Cricket nets<br />
Histon FC<br />
Poker<br />
Sketching club<br />
For further information:<br />
http://intranet/wiki/index.php/Social_Club<br />
77
Running Club - 5km<br />
Route Map<br />
Science Park<br />
Milton Tesco<br />
<strong>Red</strong> <strong>Gate</strong> S<strong>of</strong>tware<br />
Milton Country Park<br />
Route<br />
Road<br />
Key<br />
Science & Business Parks<br />
Milton Country Park<br />
Point <strong>of</strong> Interest<br />
78
Happy Tweets<br />
A small selection <strong>of</strong> what twitter is saying about us.<br />
79<br />
codypo<br />
Holy cow, I might have to propose marriage to the<br />
<strong>Red</strong> <strong>Gate</strong> ANTS Pr<strong>of</strong>iler. This is wonderful<br />
holytshirt<br />
@scottgal <strong>Red</strong>gate SQL compare, can’t beat it<br />
erikvb<br />
@ojooris #red-gate makes great tools, some <strong>of</strong><br />
which are free. Their non free tools are worth<br />
every penny IMHO<br />
julielermanvt<br />
oooh yet another tool from <strong>Red</strong> <strong>Gate</strong> that I wished<br />
I’d had for years now. Lets you search throughout<br />
db objects. http://bit.ly/2ZPFcm<br />
BobSzymanski<br />
<strong>Red</strong> <strong>Gate</strong> has the best SQL Server tools on the<br />
planet. I highly recommend their developer<br />
toolbelt.
thompsont<br />
ANTS Memory Pr<strong>of</strong>iler by <strong>Red</strong><strong>Gate</strong> has been a life<br />
saver tonight! Used it to track down a memory<br />
leak in a WCF service...woohoo!!!<br />
jonathansheely<br />
I would kill for a copy <strong>of</strong> <strong>Red</strong>gate SQL Compare<br />
right now =\<br />
hugeonion<br />
dang the @redgate pr<strong>of</strong>iling tools are cool and<br />
useful! you really should give them a try if you are<br />
a .NET developer<br />
arlynasch<br />
<strong>Red</strong><strong>Gate</strong> S<strong>of</strong>tware makes powerful tools that are<br />
easy and simply work. Why can’t more s<strong>of</strong>tware be<br />
like that?<br />
whimsql<br />
Just left <strong>Red</strong>gate booth they are made <strong>of</strong> awesome.<br />
Headed to room 2AB to learn about PowerPivot. :)<br />
#sqlbingo Having a blast at #sqlpass<br />
fatherjack<br />
Just recovered a single table from last backup<br />
without restoring the whole database. Thanks<br />
SQL Backup with Object Level Recovery #redgate<br />
80
<strong>Red</strong> <strong>Gate</strong> Pub Quiz<br />
Here’s a selection <strong>of</strong> questions from the<br />
notorious <strong>Red</strong> <strong>Gate</strong> Pub Quizzes. Can you beat Nick?<br />
General Knowledge<br />
1. Which popular card game contains exactly the same<br />
letters as a contemporary American comedy actor?<br />
2. What fictional character links Arnold<br />
Schwarzenegger, Danny De Vito, Tommy Lee Jones,<br />
Jim Carrey, Uma Thurman and Cillian Murphy?<br />
3. Where would you find the following sequence <strong>of</strong><br />
letters D-G Reg F D ?<br />
Celebrities - The following people are more commonly<br />
known by their stage names. Who are they?<br />
1. Cherilyn Sarkisian (actress)<br />
2. Frederick Austerlitz (actor)<br />
3. Laurence Tureaud (actor)<br />
81<br />
Score:<br />
Score:
Picture Round - Who, what, and where are the following?<br />
1. 2. 3.<br />
Wipeout Round - Any incorrect answers will result in a score<br />
<strong>of</strong> zero for this round!<br />
1. Which country’s national football team has the<br />
nickname Bafana Bafana?<br />
2. The name <strong>of</strong> which country is derived from the Latin<br />
word for Southern?<br />
3. How many bridges does the University boat race go<br />
under?<br />
Score:<br />
The answers to these questions are<br />
hidden throughout the book. If you<br />
use Google to cheat, Nick will be sad.<br />
Final Score:<br />
Score:
What we believe in #10/13<br />
Pr<strong>of</strong>its are only a way <strong>of</strong><br />
keeping score,<br />
not the game itself.<br />
83
Focusing purely on the numbers is a sure way to kill <strong>Red</strong><br />
<strong>Gate</strong>’s culture. We believe that if we focus on the game<br />
– building awesome products that people want to buy,<br />
and then persuading them to buy them – then success<br />
will follow.<br />
84
Lost in a Fug<br />
SQL Tools<br />
DBA Tools<br />
.NET Tools<br />
Exchange<br />
Product Support<br />
Information Systems<br />
Marketing<br />
85
Thank you,<br />
If I could change anything about <strong>Red</strong> <strong>Gate</strong>,<br />
it would be:<br />
Dear Neil & Simon,
Neil & Simon<br />
Dear<br />
fold
What we believe in #11/13<br />
We will succeed if<br />
we build wonderful,<br />
useful products.<br />
93
Shipping something amazing is better than creating<br />
something average and to budget and on time.<br />
We cannot market, sell, manage or account our way<br />
to success.<br />
94
Ask the C<strong>of</strong>fee<br />
Machine<br />
Dear Franke Kaffeemaschinen AG Evolution C<strong>of</strong>fee<br />
Machine,<br />
I’m a developer on an exciting new product here at <strong>Red</strong><br />
<strong>Gate</strong>, and I sometimes find that I have difficulty concentrating<br />
due to the level <strong>of</strong> background gunfire in my project<br />
team. I don’t want to <strong>of</strong>fend anyone by asking them all to<br />
put their weapons away, but on the other hand I’m worried<br />
that if I don’t raise the issue people will think I am too slow<br />
at coding because I can’t always focus due to the noise.<br />
What do you advise?<br />
XKCD fan, West Wing<br />
Dear XKCD fan,<br />
Drawer full. Empty drawer.<br />
Franke Kaffeemaschinen AG Evolution C<strong>of</strong>fee Machine<br />
95
Top Bug Hunters<br />
SQL Search<br />
Most Bugs: David Simner<br />
Robin Hellen<br />
SQL Prompt<br />
Best Bugs: Simon Jackson<br />
Chris George<br />
Most Bugs: Dom Reed Best Bugs: Jason Crease<br />
ANTS Memory Pr<strong>of</strong>iler<br />
Most Bugs: Michelle Taylor<br />
SQL Compare 8<br />
Most Bugs: Simon Jackson<br />
SQL Backup<br />
Most Bugs: Michelle Taylor<br />
David Connell<br />
96
Shadows <strong>of</strong> our<br />
former current selves<br />
97
What we believe in #12/13<br />
We base our<br />
decisions on the<br />
available evidence,<br />
99
not on people’s opinions, the volume <strong>of</strong> their voices<br />
or who they are. When the evidence changes, we are<br />
prepared to change our minds. We will thank, and<br />
never shoot, the messenger.<br />
100
Clive's Code<br />
Completion Challenge<br />
Perhaps you’d like to have a go at answering the following<br />
C# questions. Some have a very simple answer and<br />
some have several possible answers, but I hope at least<br />
a few <strong>of</strong> them take a little thought and maybe even<br />
teach you something.<br />
Get all the answers right, put them in an email and send<br />
them to codechallenge@red-gate.com<br />
And there’s mystery prizes on <strong>of</strong>fer. More than one<br />
available!<br />
1. I typed this into Visual Studio and it failed to<br />
compile. Which version was I using?<br />
static void Tree(T first, T second)<br />
{<br />
}<br />
static void Main(string[] args)<br />
{<br />
Tree(1, new object());<br />
}<br />
101
2. Give a test case that shows this code is broken.<br />
static int BinarySearch(IList items, int<br />
target)<br />
{<br />
int lower = 0;<br />
int upper = items.Count;<br />
while (lower != upper - 1)<br />
{<br />
int mid = (lower + upper)/2;<br />
if (target < items[mid])<br />
upper = mid;<br />
else<br />
lower = mid;<br />
}<br />
if (items[lower] == target)<br />
return lower;<br />
return -1;<br />
}<br />
3. This always throws an exception, right?<br />
A foo = null;<br />
foo.Bar();<br />
Continued over the page...<br />
102
4. Fill in the … to make this valid<br />
… x = Part1();<br />
Part2(x);<br />
5. I wrote this bit <strong>of</strong> code but before I got to run it, my<br />
friend refactored it. Was my version better?<br />
My version<br />
var results = new List();<br />
for (int i = 0; i < 5; i++)<br />
{<br />
}<br />
var j = 2*i;<br />
results.Add(() => j);<br />
results.ForEach(x => Console.<br />
WriteLine(x()));<br />
His version<br />
var results = new List();<br />
for (int i = 0; i < 5; i++)<br />
{<br />
results.Add(() => 2 * i);<br />
}<br />
results.ForEach(x => Console.<br />
WriteLine(x()));<br />
103
6. A friend told me that the following compiled, but<br />
then failed at runtime. His constructor didn’t throw<br />
an exception. Was he mad?<br />
A x = new A();<br />
104
Coding by<br />
the Sea<br />
105
106
What we believe in #13/13<br />
We count contribution,<br />
not hours.<br />
107
What you achieve is more important than how long<br />
it takes.<br />
108
A Short and <strong>of</strong>f-thecuff<br />
prehistory <strong>of</strong><br />
<strong>Red</strong> <strong>Gate</strong><br />
The best place to look for a long-term strategy might be where we<br />
were before we even started. This is a long way from being a genuine<br />
strategy but it’s a sort <strong>of</strong> building block. If we understand where we<br />
were originally, we might have a better chance <strong>of</strong> understanding<br />
where we want to go. “We were there, and now we’re wandering<br />
along in that direction and it kind <strong>of</strong> makes some sense that we<br />
might end up there.”<br />
Here is a school photo <strong>of</strong> us.<br />
This is the place where Neil and<br />
I met, aged sixteen. It’s one <strong>of</strong><br />
those envy-inducing schools<br />
called Charterhouse that mean<br />
people ignore you at parties<br />
when you’re older. This photo<br />
has about a thousand people in<br />
it yet coincidentally we’re standing<br />
next to each other. We’re the<br />
really sophisticated looking guys<br />
circled. You can imagine that<br />
the girls always wanted to know<br />
us - in fact I don’t know why all<br />
109
the girls aren’t standing around us.<br />
Neil and I had a fairly solid idea right then that we wouldn’t mind<br />
going into business together. And the reason why I had that feeling<br />
was simple. I’d set up my first business when I was thirteen that<br />
involved delivering newspapers to the people in my village.<br />
The newspaper shop only delivered newspapers six days a week so<br />
there was a hole in the market. I’d knocked on a whole load <strong>of</strong> doors<br />
and after a few weeks I had a “round” – 30-40 houses who paid me<br />
between 15 – 30p per Sunday. Usually I earned more delivering just<br />
on Sundays as the other kids did working six days a week but sometimes<br />
for weeks on end I’d be out <strong>of</strong> pocket when people didn’t pay<br />
– a 13 year old learning the difference between cash-flow and pr<strong>of</strong>it<br />
first hand. A friend expressed an interest in having a round – so I<br />
knocked on another load <strong>of</strong> doors and set him up with a round too.<br />
There was something exhilarating about it being something I’d set<br />
up for myself and it was nice having an income but the day-to-day<br />
running <strong>of</strong> it didn’t need a team and that’s what was missing.<br />
Neil’s business was a hell <strong>of</strong> a lot better than that. He was writing<br />
s<strong>of</strong>tware from the age <strong>of</strong> twelve and subsequently selling it. By the<br />
time I got to know Neil, he had assembled a small team <strong>of</strong> talented<br />
guys (story designer, author, others as needed and him) and was<br />
working on a game called Bounce (which later “inspired” Nokia to<br />
do a mobile version and put it on 40% <strong>of</strong> the world’s mobile phones).<br />
Neil worked on a business that scaled, that made the most <strong>of</strong> a<br />
talented team and that produced products that people were inspired<br />
by. Meanwhile I was saving someone from getting up a few minutes<br />
early and driving to the paper shop; all on my lonesome, in the rain.<br />
So I knew way back then that Neil was a guy to go into business<br />
110
with. We even collaborated on a brochure for a draft excluder busi-<br />
ness. Seeing my good friend in action inspired me further – one day<br />
we should go into business together.<br />
The point I’m trying to make is that it really hasn’t changed too<br />
much. The reason we’re in business together is that we want to<br />
work with people that we respect and admire and can learn from,<br />
and also to make it as easy as possible for those people to do brilliant<br />
things. So that’s what being in business together is really about :<br />
creating a company we can be proud <strong>of</strong>, and that other people can be<br />
proud <strong>of</strong> too, whether you’re an employee, a customer or a friend.<br />
So from that moment twenty years ago the notion <strong>of</strong> <strong>Red</strong> <strong>Gate</strong> was<br />
just about that really: Can we do something that makes a difference?<br />
That really uses some <strong>of</strong> our talents to the full? That other people<br />
couldn’t necessarily do? And build that company with a bunch <strong>of</strong><br />
people we really want to be with?<br />
Ten years after that initial realisation <strong>of</strong> what we really wanted to do,<br />
we did set up <strong>Red</strong> <strong>Gate</strong>.<br />
And ten years after that, we’re here, which is a place we’re pretty<br />
proud to have reached.<br />
So what about ten years from now?<br />
111
<strong>Red</strong> <strong>Gate</strong> S<strong>of</strong>tware<br />
Brand Guidelines
<strong>Red</strong> <strong>Gate</strong> S<strong>of</strong>tware<br />
Brand Guidelines<br />
The following pages contain<br />
an introduction to <strong>Red</strong> <strong>Gate</strong>'s<br />
marketing branding and style.<br />
While they are correct at the<br />
time <strong>of</strong> going to press, they<br />
are subject to change at any<br />
time.<br />
Please visit www.red-gate.<br />
com/about/Style_Guide.pdf<br />
to download a full and up to<br />
date copy <strong>of</strong> these guidelines.<br />
You can direct any other<br />
questions to<br />
marketing@red-gate.com.<br />
02
The <strong>Red</strong> <strong>Gate</strong> Logo<br />
Version Usage<br />
The <strong>Red</strong> <strong>Gate</strong><br />
logo is key to<br />
the company's<br />
appearance.<br />
03<br />
It is therefore imperative<br />
that the logo is used only as<br />
described in this document,<br />
unless express permission is<br />
granted (on a case-by-case<br />
basis) by <strong>Red</strong> <strong>Gate</strong>'s<br />
marketing department.<br />
Failure to use the <strong>Red</strong> <strong>Gate</strong><br />
logo correctly and<br />
consistently will eventually<br />
weaken <strong>Red</strong> <strong>Gate</strong>’s brand.
The presence <strong>of</strong> the <strong>Red</strong> <strong>Gate</strong><br />
logo on all marketing material<br />
is mandatory, and efforts have<br />
been made to provide a suitable<br />
logo for most potential<br />
uses.<br />
The primary version <strong>of</strong> the <strong>Red</strong> <strong>Gate</strong><br />
logo uses the strap line "ingeniously<br />
simple tools", and is acceptable for<br />
use on any <strong>Red</strong> <strong>Gate</strong> material.<br />
This version <strong>of</strong> the logo features a<br />
different strap line, and is to be used<br />
on recruitment materials only.<br />
This version <strong>of</strong> the logo should be<br />
used in recruitment materials where<br />
space is limited, or in internal<br />
documents or products such as<br />
clothing.<br />
The <strong>Red</strong> <strong>Gate</strong> logo without any<br />
strap line is to be used only on<br />
materials where any <strong>of</strong> the above<br />
strap lines confuse or conflict the<br />
overall message.<br />
There are four versions <strong>of</strong> the<br />
<strong>Red</strong> <strong>Gate</strong> logo. Please note<br />
the circumstances that dictate<br />
the acceptable use <strong>of</strong> each<br />
version.<br />
There are also different colour<br />
versions <strong>of</strong> each logo, which<br />
are detailed in a later section<br />
<strong>of</strong> this guide.<br />
04
The <strong>Red</strong> <strong>Gate</strong> Logo<br />
Clear Spacing<br />
Care should be taken to ensure that the <strong>Red</strong> <strong>Gate</strong> logo is<br />
allowed enough space from other layout elements, in order to<br />
maintain the impact and legibility <strong>of</strong> the logo.<br />
No photography, illustration, text, or any other graphic<br />
device should fall inside the clear area shown.<br />
05<br />
x x<br />
x
The <strong>Red</strong> <strong>Gate</strong> Logo<br />
Positioning<br />
Where possible the <strong>Red</strong> <strong>Gate</strong><br />
logo should always appear<br />
in the bottom right hand<br />
corner <strong>of</strong> any layout, whether<br />
for print or screen. The logo<br />
position should always take<br />
priority over other elements in<br />
the layout.<br />
If for any reason the <strong>Red</strong><br />
<strong>Gate</strong> logo cannot be placed<br />
in the preferred position, use<br />
the locations shown, or your<br />
judgement, to determine the<br />
best position for the logo in<br />
your layout.<br />
Please note that while it is<br />
<strong>of</strong>ten preferable that the<br />
margins at all sides <strong>of</strong> the<br />
logo are <strong>of</strong> an equal distance,<br />
this is not essential providing<br />
that the minimum clear<br />
space described previously is<br />
adhered to.<br />
06
<strong>Red</strong> <strong>Gate</strong> Colours<br />
For Printed Media<br />
Use <strong>of</strong> the<br />
correct colour<br />
in <strong>Red</strong> <strong>Gate</strong><br />
branding is<br />
essential.<br />
07<br />
<strong>Red</strong> <strong>Gate</strong> seeks to establish<br />
strong association <strong>of</strong> these<br />
colours with the <strong>Red</strong> <strong>Gate</strong><br />
brand in markets that we’re<br />
active in.<br />
The consistent and correct<br />
use <strong>of</strong> colour in all <strong>Red</strong> <strong>Gate</strong><br />
materials is mandatory, so<br />
that all communications<br />
materials can be instantly<br />
recognized.<br />
Shown opposite are the <strong>Red</strong><br />
<strong>Gate</strong> brand colours for use in<br />
print in both spot and process<br />
inks. Please ensure that the<br />
correct colour is used for the<br />
appropriate printing process.
Primary Colours<br />
Pantone 186<br />
Pantone<br />
Process Black<br />
Secondary Colours<br />
80% Pantone<br />
Process Black<br />
60% Pantone<br />
Process Black<br />
C: 0%<br />
M: 100%<br />
Y: 81%<br />
K: 4%<br />
C: 0%<br />
M: 0%<br />
Y: 0%<br />
K: 100%<br />
C: 0%<br />
M: 0%<br />
Y: 0%<br />
K: 80%<br />
C: 0%<br />
M: 0%<br />
Y: 0%<br />
K: 60%<br />
08
<strong>Red</strong> <strong>Gate</strong> Colours<br />
For Screen Media<br />
Shown below are the <strong>Red</strong> <strong>Gate</strong> brand colours for use on screen.<br />
It is recommended that Hex values are used where possible.<br />
Primary Colours<br />
Hex: #cc0000 R: 204<br />
Secondary Colours<br />
G: 0<br />
B: 0<br />
Hex: #464646 R: 70<br />
09<br />
G: 70<br />
B: 70<br />
Hex: #000000 R: 0<br />
G: 0<br />
B: 0<br />
Hex: #7d7d7d R: 125<br />
G: 125<br />
B: 125
<strong>Red</strong> <strong>Gate</strong> Colours<br />
The <strong>Red</strong> <strong>Gate</strong> Logo<br />
The <strong>Red</strong> <strong>Gate</strong> logo has 3<br />
colour options, which are<br />
shown below in their intended<br />
usage. Note that the colour<br />
relationship between logo and<br />
strap line must not be altered<br />
unless absolutely necessary.<br />
As our logo is most commonly<br />
used on materials created by<br />
<strong>Red</strong> <strong>Gate</strong>’s marketing department<br />
who will only use <strong>Red</strong><br />
<strong>Gate</strong>’s brand colours, the <strong>Red</strong><br />
<strong>Gate</strong> logo (and its variants)<br />
will only be provided in the<br />
colour options show below.<br />
In the event that the <strong>Red</strong><br />
<strong>Gate</strong> logo is to be used on<br />
an <strong>of</strong>f-brand colour, use your<br />
judgement to determine which<br />
colour option is the most legible<br />
for your needs, or email<br />
marketing@red-gate.com for<br />
advise.<br />
<strong>Red</strong> <strong>Gate</strong> w/ simple tools on red <strong>Red</strong> <strong>Gate</strong> w/ simple tools on black<br />
<strong>Red</strong> <strong>Gate</strong> w/ simple tools on grey <strong>Red</strong> <strong>Gate</strong> w/ simple tools on white<br />
10
The Speech Bubble<br />
For Print & Screen Media<br />
There are no hard and fast<br />
instructions for the line weight<br />
and corner radius <strong>of</strong> the<br />
<strong>Red</strong> <strong>Gate</strong> 'speech bubbles',<br />
however, some guidance can<br />
be <strong>of</strong>fered.<br />
Opposite is an example <strong>of</strong> the<br />
preferred relationship between<br />
stroke weight, corner radius,<br />
indentation <strong>of</strong> text, and font<br />
size.<br />
The small bubbles opposite<br />
show a line weight and radius<br />
that are clearly incorrect.<br />
11<br />
The preferred sizing and<br />
spacing may not always be<br />
possible when the bubble is<br />
used in web banners, and in<br />
these cases the rules can be<br />
bent slightly. <strong>Red</strong>uction in<br />
corner radius and indentation<br />
<strong>of</strong> text is acceptable.<br />
Always use your judgement<br />
and if uncertain, please ask<br />
a member <strong>of</strong> the marketing<br />
department. Details <strong>of</strong> the<br />
typographic rules applied to<br />
speech bubbles are detailed<br />
overleaf.<br />
"Since introducing SQL Backup, our<br />
backup times have decreased to just<br />
over 2 hours. This is truly unbelievable."<br />
Martin Schoombee Medikredit Integrated Healthcare Solutions<br />
(Pty) Ltd
0.5X<br />
As the diagram shows, the<br />
measurement for cap height,<br />
text indentation, and corner<br />
radius should be equal (X).<br />
Stroke weight should be one<br />
half <strong>of</strong> that measurement<br />
(0.5X).<br />
Examples <strong>of</strong> incorrect bubbles<br />
X<br />
X<br />
"Since introduci<br />
backup times ha<br />
over 2 hours. Th<br />
Martin Schoombee Med<br />
(Pty) Ltd<br />
"Since introducing SQL Backup, our backup<br />
times have decreased to just over 2 hours.<br />
This is truly unbelievable."<br />
Martin Schoombee Medikredit Integrated Healthcare Solutions (Pty) Ltd<br />
"Since introducing SQL Backup, our backup<br />
times have decreased to just over 2 hours.<br />
This is truly unbelievable."<br />
Martin Schoombee Medikredit Integrated Healthcare<br />
Solutions (Pty) Ltd<br />
12
Typography<br />
Brand Font &<br />
Typographic Rules<br />
To achieve consistency and a strong visual style for <strong>Red</strong> <strong>Gate</strong><br />
both externally and internally, a single font family has been<br />
chosen.<br />
The typeface is Helvetica Neue LT (LinoType) Std, which can be<br />
used in a variety <strong>of</strong> weights and styles which are shown below.<br />
45 Light:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj<br />
1234567890<br />
55 Roman:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj<br />
1234567890<br />
65 Medium:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii<br />
1234567890<br />
75 Bold:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii<br />
1234567890<br />
Use <strong>of</strong> Arial as a substitute<br />
for Helvetica is an acceptable<br />
secondary option<br />
13<br />
46 Light italic:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj<br />
1234567890<br />
56 Roman italic:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj<br />
1234567890<br />
66 Medium italic:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii<br />
1234567890<br />
76 Bold italic:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii<br />
1234567890<br />
Arial:<br />
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj<br />
1234567890
Typographic rules: Speech Bubbles<br />
A typographic hierarchy has been developed<br />
for use in speech bubbles. The relationship<br />
between font sizes, weights and colours should<br />
always be maintained. Specific sizes are given<br />
here as an example.<br />
Main Tesimonial Font: Helvetica Neue 75 Bold<br />
Colour: Black Font Size: 18pt Leading: 22pt<br />
Name Font: Helvetica Neue 75 Bold<br />
Colour: <strong>Red</strong> Font Size: 12pt Leading: 18pt<br />
Job Title Font: Helvetica Neue 55 Roman<br />
Colour: Black Font Size: 12pt Leading: 18pt<br />
Second line leading: 16pt<br />
Typographic rules: Basic<br />
Some more general rules that should be adhered to in <strong>Red</strong> <strong>Gate</strong><br />
materials.<br />
Alignment: Always ragged left, never justified.<br />
Quote usage: Straight only ( ' + " ) not ( ‘+ “ )<br />
Negative tracking: Permitted, but not more than a value <strong>of</strong> -40<br />
(assuming use <strong>of</strong> Adobe InDesign)<br />
Ligatures: Recommended, and placed automatically when using<br />
OpenType fonts<br />
Kerning: Pay close attention to Helvetica's 1 in particular. Values<br />
<strong>of</strong> -40 for n1 pairs, and -80 for most 1n pairs are recommended.<br />
Please note that <strong>Red</strong> <strong>Gate</strong> <strong>Book</strong>s have their own rules.<br />
For more information contact publishing@red-gate.com.<br />
14
Boring Legal Stuff<br />
Copyright <strong>Red</strong> <strong>Gate</strong> S<strong>of</strong>tware Ltd <strong>2010</strong><br />
The right <strong>of</strong> <strong>Red</strong> <strong>Gate</strong> Sotware Ltd to be identified as the author <strong>of</strong> this work<br />
has been asserted by them in accordance with the Copyright, Designs and<br />
Patents Act 1988.<br />
All rights reserved. No part <strong>of</strong> this publication may be reproduced, stored<br />
or introduced into a retrieval system, or transmitted, in any form, or by<br />
any means (electronic, mechanical, photocopying, recording or otherwise)<br />
without the prior written consent <strong>of</strong> the publisher. Any person who does<br />
any unauthorized act in relation to this publication may be liable to criminal<br />
prosecution and civil claims for damages.<br />
<strong>2010</strong> Edition edited by: Alice Chapman, Richard (Fox) Collins, Brian Harris,<br />
Dom Reed & Matthew Tye.<br />
Designed by Matthew Tye<br />
Photography by Dom Reed<br />
Additional Photography by: Andrew C, Przemyslaw Szczepanski (P 8-9); Oliver Gruener, Brian Lary,<br />
Mari Carmen Guinovart, Roger Kirby, Mac Pale, FrodoBabbs (P 12-13); Takje (P61); Scott Hansen (P 61,<br />
88, 89); Michal Koralewski (P 97);<br />
A Note on Future Editions<br />
Obviously the contents <strong>of</strong> any future edition <strong>of</strong> the BoRG will be entirely up to whoever’s editing that<br />
edition. There is however one untransgressable rule: the pig stays in the picture. So Spider’s going to<br />
need a new movie to star in.<br />
A Note on Brian’s Quiz<br />
As you may have read, the answers to Brian’s quiz are hidden throughout the book.<br />
The first to find them all (and prove it by showing me) wins £20 from my own pocket. Happy hunting!<br />
Mat