that article is not technically correct.
(1) TLS handshake itself does not make your connection secure, what makes it secure is what happens after the handshake. Handshake is needed to negotiate parameters, necessary to establish secure communication.
(2) After connection establishment, TLS essentially does two things: encrypts the data [confidentiality] and computes message authentication code (which is secure version of hash function), which is used to detect tampering with data [integrity] (note, contrary to what the article you link said, in Internet you cannot prevent anybody from changing your packets on the way. Integrity allows you to detect if packet was tampered with, and act accordingly). So, to answer your question, connection becomes secure because the content of the packet is encrypted and can only be decrypted by the other communication partner. The other partner can also verify that the packet was not tampered with on the way.
(3) Both encryption and message authentication codes (MAC) requires that client and server know corresponding keys (encryption key and key used to compute the MAC).
(4) There are basically two kinds of encryption schemes: symmetric encryption schemes and assymetric (or public key) encryption. Symmetric encryption requires the same key to both encrypt and decrypt the message, and this key needs to be known to both communication parties. This is usually referred to just key. Assymetic encryption uses two keys: public key to encrypt and secret key or private key to decrypt. Public keys are, well, public, in that you can just publish it. This way everybody can send you an encrypted message and be sure (well, in cryptographic terms) that you will be the only person who can decrypt and read it.
In order for two parties to communicate encrypted messages they can either communicate with symmetric cryptography, while somehow exchanging the key beforehand or with assymetric cryptography, where each party publishes its public key and the other party uses this key to encrypt the message to the other party.
The issue is that the existing algorithms for public key crypto are couple orders of magnitude slower than for symmetric crypto. This is why the common solution is to use public cryptography to exchange the symmetric keys and then use symmetric encryption for the actual payload. Exchanging symmetric keys is what handshake is accomplishing.
Note however: I believe that the prase "cliend generates private key" actually means that the client generates a symmetric key and sends it to the server. If you are talking about public key crypto, private keys are NEVER sent anywhere. Also, this is also technically incorrect. Due to some specific attacks on the handshake, and other properties, the secret key is generated from data generated by both the client and the server in a quite complicated procedure. The main point is that as a result of TLS handshake, both the client and the server can compute secret keys used to encrypt and integrity-check payload later.
(5) as explained in the other answer certificates are used for a different thing, called authentication. The idea is that the server gets an equivalent of a notary to sign him a ID, so that when the client connects to the server it can be sure that it indeed talks to the right server (its a network, there are ways somewhone can reroute client's packets not to the server, the cliend is intended to connect to). Well, how secure this is is a long story, so its a good idea to check the certificate before you insert your credit card data.
(6) P.S. there are also two ways to accertain message integrity: digital signatures which are public key schemes and message authentication codes, which are symmetric schemes. Digital signatures are basically inverse of the encryption, one signs with their private key, and everyone else can verify the signature with the public key, and be sure that the person who knows private key was the one who signed the message, and also that the message is not tampered with. Message authentication codes use symmetric key, so you can be sure that the other person who computed the code, also knows the key. Assuming that only your communication partner and you know the key, you can be sure that the code was created by your communication partner and thus the message was not tampered with by someone else. TLS use symmetric codes, and the key is computed based on data, exchanged during handshake. Digital signatures are used in certificates.