last data update: 2011/10/14, 09:40

Website loading time

during the test: 10.13 s

cable connection (average): 10.13 s

DSL connection (average): 10.13 s

modem (average): 10.13 s

HTTP headers

Information about DNS servers

makinggoodsoftware.comSOAns1.bluehost.comroot.box428.bluehost.com200906070286400 7200 3600000 300 IN 43200
makinggoodsoftware.comTXTv=spf1 a mx ptr include:bluehost.com ?allArrayIN14400
makinggoodsoftware.comA69.89.31.228IN14400
makinggoodsoftware.comMX0makinggoodsoftware.comIN14400
makinggoodsoftware.comNSns2.bluehost.comIN43200
makinggoodsoftware.comNSns1.bluehost.comIN43200

Received from the first DNS server

Request to the server "makinggoodsoftware.com"
You used the following DNS server:
DNS Name: ns2.bluehost.com
DNS Server Address: 69.89.16.4#53
DNS server aliases:

HEADER opcode: REQUEST, status: NOERROR, id: 54924
flag: qr aa rd ra REQUEST: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 2

REQUEST SECTION:
makinggoodsoftware.com. IN ANY

ANSWER SECTION:
makinggoodsoftware.com. 14400 IN TXT "v=spf1 a mx ptr include:bluehost.com ?all"
makinggoodsoftware.com. 86400 IN SOA ns1.bluehost.com. root.box428.bluehost.com. 2009060702 86400 7200 3600000 300
makinggoodsoftware.com. 14400 IN A 69.89.31.228
makinggoodsoftware.com. 86400 IN NS ns1.bluehost.com.
makinggoodsoftware.com. 14400 IN MX 0 makinggoodsoftware.com.
makinggoodsoftware.com. 86400 IN NS ns2.bluehost.com.

SECTION NOTES:
ns1.bluehost.com. 14400 IN A 74.220.195.31
ns2.bluehost.com. 14400 IN A 69.89.16.4

Received 251 bytes from address 69.89.16.4#53 in 80 ms

Received from the second DNS server

Request to the server "makinggoodsoftware.com"
You used the following DNS server:
DNS Name: ns1.bluehost.com
DNS Server Address: 74.220.195.31#53
DNS server aliases:

HEADER opcode: REQUEST, status: NOERROR, id: 18069
flag: qr aa rd ra REQUEST: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 2

REQUEST SECTION:
makinggoodsoftware.com. IN ANY

ANSWER SECTION:
makinggoodsoftware.com. 14400 IN MX 0 makinggoodsoftware.com.
makinggoodsoftware.com. 14400 IN TXT "v=spf1 a mx ptr include:bluehost.com ?all"
makinggoodsoftware.com. 86400 IN SOA ns1.bluehost.com. root.box428.bluehost.com. 2009060702 86400 7200 3600000 300
makinggoodsoftware.com. 86400 IN NS ns1.bluehost.com.
makinggoodsoftware.com. 14400 IN A 69.89.31.228
makinggoodsoftware.com. 86400 IN NS ns2.bluehost.com.

SECTION NOTES:
ns2.bluehost.com. 14400 IN A 69.89.16.4
ns1.bluehost.com. 14400 IN A 74.220.195.31

Received 251 bytes from address 74.220.195.31#53 in 80 ms

Subdomains (the first 50)

Typos (misspells)

nakinggoodsoftware.com
kakinggoodsoftware.com
jakinggoodsoftware.com
mzkinggoodsoftware.com
mskinggoodsoftware.com
mwkinggoodsoftware.com
mqkinggoodsoftware.com
majinggoodsoftware.com
maminggoodsoftware.com
malinggoodsoftware.com
maoinggoodsoftware.com
maiinggoodsoftware.com
makunggoodsoftware.com
makjnggoodsoftware.com
makknggoodsoftware.com
makonggoodsoftware.com
mak9nggoodsoftware.com
mak8nggoodsoftware.com
makibggoodsoftware.com
makimggoodsoftware.com
makijggoodsoftware.com
makihggoodsoftware.com
makinfgoodsoftware.com
makinvgoodsoftware.com
makinbgoodsoftware.com
makinhgoodsoftware.com
makinygoodsoftware.com
makintgoodsoftware.com
makingfoodsoftware.com
makingvoodsoftware.com
makingboodsoftware.com
makinghoodsoftware.com
makingyoodsoftware.com
makingtoodsoftware.com
makinggiodsoftware.com
makinggkodsoftware.com
makingglodsoftware.com
makinggpodsoftware.com
makingg0odsoftware.com
makingg9odsoftware.com
makinggoidsoftware.com
makinggokdsoftware.com
makinggoldsoftware.com
makinggopdsoftware.com
makinggo0dsoftware.com
makinggo9dsoftware.com
makinggoossoftware.com
makinggooxsoftware.com
makinggoocsoftware.com
makinggoofsoftware.com
makinggoorsoftware.com
makinggooesoftware.com
makinggoodaoftware.com
makinggoodzoftware.com
makinggoodxoftware.com
makinggooddoftware.com
makinggoodeoftware.com
makinggoodwoftware.com
makinggoodsiftware.com
makinggoodskftware.com
makinggoodslftware.com
makinggoodspftware.com
makinggoods0ftware.com
makinggoods9ftware.com
makinggoodsodtware.com
makinggoodsoctware.com
makinggoodsovtware.com
makinggoodsogtware.com
makinggoodsottware.com
makinggoodsortware.com
makinggoodsofrware.com
makinggoodsoffware.com
makinggoodsofgware.com
makinggoodsofyware.com
makinggoodsof6ware.com
makinggoodsof5ware.com
makinggoodsoftqare.com
makinggoodsoftaare.com
makinggoodsoftsare.com
makinggoodsofteare.com
makinggoodsoft3are.com
makinggoodsoft2are.com
makinggoodsoftwzre.com
makinggoodsoftwsre.com
makinggoodsoftwwre.com
makinggoodsoftwqre.com
makinggoodsoftwaee.com
makinggoodsoftwade.com
makinggoodsoftwafe.com
makinggoodsoftwate.com
makinggoodsoftwa5e.com
makinggoodsoftwa4e.com
makinggoodsoftwarw.com
makinggoodsoftwars.com
makinggoodsoftward.com
makinggoodsoftwarr.com
makinggoodsoftwar4.com
makinggoodsoftwar3.com
akinggoodsoftware.com
mkinggoodsoftware.com
mainggoodsoftware.com
maknggoodsoftware.com
makiggoodsoftware.com
makingoodsoftware.com
makingoodsoftware.com
makinggodsoftware.com
makinggodsoftware.com
makinggoosoftware.com
makinggoodoftware.com
makinggoodsftware.com
makinggoodsotware.com
makinggoodsofware.com
makinggoodsoftare.com
makinggoodsoftwre.com
makinggoodsoftwae.com
makinggoodsoftwar.com
amkinggoodsoftware.com
mkainggoodsoftware.com
maiknggoodsoftware.com
makniggoodsoftware.com
makigngoodsoftware.com
makinggoodsoftware.com
makingogodsoftware.com
makinggoodsoftware.com
makinggodosoftware.com
makinggoosdoftware.com
makinggoodosftware.com
makinggoodsfotware.com
makinggoodsotfware.com
makinggoodsofwtare.com
makinggoodsoftawre.com
makinggoodsoftwrae.com
makinggoodsoftwaer.com
mmakinggoodsoftware.com
maakinggoodsoftware.com
makkinggoodsoftware.com
makiinggoodsoftware.com
makinnggoodsoftware.com
makingggoodsoftware.com
makingggoodsoftware.com
makinggooodsoftware.com
makinggooodsoftware.com
makinggooddsoftware.com
makinggoodssoftware.com
makinggoodsooftware.com
makinggoodsofftware.com
makinggoodsofttware.com
makinggoodsoftwware.com
makinggoodsoftwaare.com
makinggoodsoftwarre.com
makinggoodsoftwaree.com

Location

IP: 69.89.31.228

continent: NA, country: United States (USA), city: Provo

Website value

rank in the traffic statistics: 1 093 302

There is not enough data to estimate website value.

Basic information

website build using CSS

code weight: 0.01 KB

text per all code ratio: 58 %

title: Making Good Software

description:

keywords: good software, good code, Alberto G, Alberto Gutierrez, Best Practices, making good software, agile

encoding: UTF-8

language: en-US

Website code analysis

one word phrases repeated minimum three times

PhraseQuantity
the70
is43
to42
and30
of27
in21
that17
it16
for16
are16
be11
you11
not10
architecture10
design9
your9
development9
with9
as9
some9
like9
The8
if8
code8
from8
architectural7
This6
bad6
which6
there6
by6
at6
decisions6
element6
they6
Software6
any6
also6
very5
should5
or5
software5
going5
change5
agile5
project.5
feedback5
then4
most4
much4
complete4
Good4
only4
one4
have4
make3
project3
other3
allows3
new3
its3
but3
too3
Agile3
transparency3
produce3
In3
extreme3
estimation3
beautiful3
all3
may3
many3
same3
has3
an3
necessary,3
them3
customer,3
Deliver3
this3
good3
making3
These3
principles3
up3
Alberto3
about3
Continuous3
usually3
application3

two word phrases repeated minimum three times

PhraseQuantity
of the9
in the9
to be5
of your5
architectural element5
with the4
that the4
the development4
are going4
going to4
the architecture3
the feedback3
by Alberto3
is the3
architecture is3
for the3
if it3
is not3
code is3
as you3
there is3
to have3
feedback and3
and transparency3
are the3
the most3
to produce3
allows for3

three word phrases repeated minimum three times

PhraseQuantity
are going to4

B tags

U tags

I tags

images

file namealternative text
homer-simpson-doh
chicken dance
dollar
bug
[Google]

headers

H1

Making Good Software

H2

Home - About - Subscribe

My 7 principles to design the architecture for a software project.

1.- Start with the minimal necessary architecture.

2.- Consider the specifics of your project: Constraints and risks.

3.- Grow as you need.

4.- Deliver continuously.

 5.- Require a customer.

6.- Avoid waste.

7.- Maximise feedback and transparency

Agile: The good, the bad and the ugly.

The Good.

The Bad.

The Ugly.

Managing crises effectively in software development projects.

Top 10 basic java advices.

1.- Make the classes that contain the logic of your application stateless.

2.- Use unmodifiable beans as much as you can.

3.- Try to have your classes matching one of the following categories.

4.- Avoid static methods.

5.- Use composition over inheritance.

6.- Design in layers.

7.- Avoid child to parent, or child to sibling relationships.

8.- Keep the invariants to be maintained by the programmer to a minimum.

9.- Avoid side effects in methods.

10.- Test.

10+1.- Your judgement must be above everything.

Top 7 programmers bad habits

1.- The all code is crap, except mine, attitude.

2.- The “I fix that in a second” catastrophe.

3.- The “That will only take a second” misconception.

4.- The ego spiral.

5.- “It wasn’t me!”

6.- The demotivated genius.

7.- The premature programmer.

Progamming a chess engine with Java (I) – Finding where a piece can move.

The Chess Board class

The Chess Analiser

Tying everything together

Source code

10 characteristics of a robust application or service.

1.- Transactions.

2.- Database access.

3.- Multithreading.

4.- Logging and auditing.

5.- Exception management.

6.- Invariants.

7.- Disabling/Enabling/Swapping services or modules.

8.- Ubiquity and low coupling.

9.- Self diagnosis.

10.- Documentation.

What is the mission of any software developer?

What is important in an application?

The mission

The obsession with beautiful code, the refactor syndrome.

Update

Solving Sudokus with Java and tree data structures

Dynamic tree building to find a solution

H3

Home - About - Subscribe

My 7 principles to design the architecture for a software project.

1.- Start with the minimal necessary architecture.

2.- Consider the specifics of your project: Constraints and risks.

3.- Grow as you need.

4.- Deliver continuously.

 5.- Require a customer.

6.- Avoid waste.

7.- Maximise feedback and transparency

Agile: The good, the bad and the ugly.

The Good.

The Bad.

The Ugly.

Managing crises effectively in software development projects.

Top 10 basic java advices.

1.- Make the classes that contain the logic of your application stateless.

2.- Use unmodifiable beans as much as you can.

3.- Try to have your classes matching one of the following categories.

4.- Avoid static methods.

5.- Use composition over inheritance.

6.- Design in layers.

7.- Avoid child to parent, or child to sibling relationships.

8.- Keep the invariants to be maintained by the programmer to a minimum.

9.- Avoid side effects in methods.

10.- Test.

10+1.- Your judgement must be above everything.

Top 7 programmers bad habits

1.- The all code is crap, except mine, attitude.

2.- The “I fix that in a second” catastrophe.

3.- The “That will only take a second” misconception.

4.- The ego spiral.

5.- “It wasn’t me!”

6.- The demotivated genius.

7.- The premature programmer.

Progamming a chess engine with Java (I) – Finding where a piece can move.

The Chess Board class

The Chess Analiser

Tying everything together

Source code

10 characteristics of a robust application or service.

1.- Transactions.

2.- Database access.

3.- Multithreading.

4.- Logging and auditing.

5.- Exception management.

6.- Invariants.

7.- Disabling/Enabling/Swapping services or modules.

8.- Ubiquity and low coupling.

9.- Self diagnosis.

10.- Documentation.

What is the mission of any software developer?

What is important in an application?

The mission

The obsession with beautiful code, the refactor syndrome.

Update

Solving Sudokus with Java and tree data structures

Dynamic tree building to find a solution

H4

H5

H6

internal links

addressanchor text
Making Good Software
Home
About
Software Development Theory
My 7 principles to design the architecture for a software project.
with 4 comments
Stop waiting to the end of the project to start QA!!! (And other QA principles)
My ten development principles
How to determine the cost and schedule of a software project? The mythical BPUF (Big planning upfront)
Magic architecture
Design Integrity, surgical teams and Legos
Software Development Theory
Agile: The good, the bad and the ugly.
with 5 comments
Good, empowered programmers make good software
All code sucks, pushing too hard to produce beautiful code is pointless
The ideal situation is a healthy balance where some informal design and thinking are performed before coding, then some coding, then some more design and so on
Accurate software estimation is impossible
Are you doing agile or are you doing waterfall with some agile practices?
The obsession with beautiful code, the refactor syndrome.
Waterfall vs Agile: Development and Business
Agile dogmas: You shall never do any design.
Demystifying agile, top 7 myths.
Software Development Theory
Managing crises effectively in software development projects.
with one comment
Forget about requirements, Software Development is all about inputs, outputs and actions.
Are you using too many technologies in your projects? The 7 anti-patterns for technologies, frameworks and other technicalities in software development.
Top 3 considerations to deal with uncertainty in software development.
Software development: Engineering or Craftsmanship?
Planning killed the software star.
Software Development Theory
Top 10 basic java advices.
with 5 comments
How to create a good domain model. Top 10 advices
How to create services in Java
How to manage Exceptions in Java. 4 basic considerations.
Solving Sudokus with Java and tree data structures
Progamming a chess engine with Java (I) – Finding where a piece can move.
Popular
Software Development Theory
Top 7 programmers bad habits
with 20 comments
here
here
estimations in software development for non trivial solutions are impossible
Big egos are one of the biggest non technical issues for any programmer
basic considerations when making decisions
peer reviews
Programmers top 10 sentences
5 top non-technical mistakes made by programmers
The four golden rules to be a better software developer.
The obsession with beautiful code, the refactor syndrome.
Top 4 mistakes hiring new programmers
Software Development Theory
Progamming a chess engine with Java (I) – Finding where a piece can move.
without comments
solve any Sudoku using tree data structures
the tree library that I created for the Sudoku resolver
How to create services in Java
Solving Sudokus with Java and tree data structures
Design Integrity, surgical teams and Legos
Waterfall vs. Agile: QA and Management
Top 10 basic java advices.
Software Development Theory
10 characteristics of a robust application or service.
with 2 comments
Robustness
some basic considerations regarding exceptions
The 7 characteristics of simple code (KISS)
The pyramid of code quality, the 5 characteristics of good code.
How to manage Exceptions in Java. 4 basic considerations.
Robustness, the forgotten code quality.
Top 10 basic java advices.
Software Development Theory
What is the mission of any software developer?
with 5 comments
The average Software Developer versus the good Software Developer.
What makes a great Software Developer?
The most important skill of a software developer.
The four golden rules to be a better software developer.
Software Developer = Craftsman + Private Investigator
Software Development Theory
The obsession with beautiful code, the refactor syndrome.
with 16 comments
Robustness
Complete disregard for any sort of documentation, design or analysis.
All code is crap
10 commandments for creating good code
5 practices to create good code.
The pyramid of code quality, the 5 characteristics of good code.
Types of code. How to rate your code from A to F.
How to write readable code? 5 Tips to improve your code readability.
Software Development Theory
Solving Sudokus with Java and tree data structures
with one comment
Java and tree data structures
Java and tree data structures.
Progamming a chess engine with Java (I) – Finding where a piece can move.
How to create services in Java
How to manage Exceptions in Java. 4 basic considerations.
Top 10 basic java advices.
My 7 principles to design the architecture for a software project.
Agile: The good, the bad and the ugly.
Managing crises effectively in software development projects.
Top 10 basic java advices.
Top 7 programmers bad habits
Top 7 programmers bad habits
Demystifying agile, top 7 myths.
10+1 things they never teach in college about programming.
My ten development principles
The best bug tracking system. Don't raise bugs, write an automated test!
The four golden rules to be a better software developer.
Programmers top 10 sentences
3 tips to know how good is the candidate you are interviewing
5 top non-technical mistakes made by programmers
How to write readable code? 5 Tips to improve your code readability.
September 2011
July 2011
June 2011
May 2011
April 2011
March 2011
January 2011
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009

external links

addressanchor text
Subscribe
decorator pattern
the strategy pattern
Sagrada Familia Cathedral
seppuku, (aka harakiri),
“en passant” movement
http://subversion.assembla.com/svn/making-good-software/tags/mgsChess/blog20110515/
https://subversion.assembla.com/svn/making-good-software/trunk/mgsTrees