Monday 29 December 2014

Creative pools

One thing had tormented me for quite a long time and still does but this time to a lesser extend than before. It's Writing Highly Scalable, fault tolerant and robust Server application for my client applications. 

I develop software in various languages including Java, C/C++, Python and PHP to mention but a few and it's quite the fun you can least expect from it. Recently i tried to copy whatsapp but then Aah! I did realize that a good Programmer/Hacker/Developer doesn't necessarily need to hack and plagiarize other people's work but can be creative and invent stuff. This I learned from a great teacher. 

So I sought out my journey into the creative world and one thing I must tell you is that even though there are people who are most likely born creative, You too can be creative and it all starts with the little things around you. Identifying the small problems is the starting point and believe you me that you too can become a Zukerburg or Page if you will. You don't have to climb a tree from the branch but start from the Stem and You'll make it to the top. Slow and Steady count much as faster and steady is better. I currently work for a banking software company called Neptune Software PLC and It is amazing but I don't intend t do so for a long time. 
This therefore calls for creative thinking and exploiting alternatives around me. So I thought to myself, I'm in Africa and well much as almost every successful company is in the Silicon Valley and we are just never gonna make it to that level. Capital and resources are limited in these areas putting corruption aside. The place is a mess and even our very own people don't seem to trust the software we build (the Government inclusive #No_Offense). What choices do I have left. 

Then something pops into my mind and I realize that Trust is an issue in Africa. Trust can only be gained through loyalty and building confidence in the society. I realized that to gain the people's trust, you need to to begin by trusting yourself, and putting the people first when doing anything for them. Build Software people can count on for a long time and put Quality into this process. 

You have all the creativity you need. It's a talent not a skill. A Skill is what you'll need after the talent has positively progressed. So look around you and you'll see what you need to workout. 

Creativity and Skill are good tools especially if put together. But remember No man is an island. So you cannot run a company all by your self.

My Friends, I believe you have already seen your idea and you may not have the skill to raise it up, but it doesn't matter because someone else has the skill and if you could work together, You should progress drastically. 

I WISH YOU ALL A FRUITFUL YEAR AND MAY GOD OR WHOEVER YOU SERVER BLESS YOU.

Sunday 28 December 2014

Developers, Programmers and Hackers

To be truthful, It really depends on what perspective you look at it but from a company perspective (such as Google), I'd say that:
  • Programmer is a professional hired to produce code of a computer program. He/She can solve problems by manipulating Computer Code.
  • Hacker This is one that makes things by programming computers. In the other words, they are usually level fellows who are skillful and with detailed understanding of some sections of the software world.
  • Developer: This entity is usually considered superior to a Programmer and is formally trained. They don't just solve problems or create stuff, but they also do it following a set of design and implementation principles (Performance, security in mind).
So I'd say that all of these categories have one thing in common, They solve problems with one tool, (code) and not just code but Computer Code. A Developer solves things in a formal and organized way, a Programmer just mostly makes sure that things are working and you are guaranteed that He'll make them work, a Hacker on the other hand can create the solution and also hack the existing solution to make it better suit the problem at hand. The same reason he/she is called a Hacker because they mostly break into systems or software to control and manipulate it. The also create things because they invent techniques and tools to help them break (crack) a software (by software I include All computer Systems). 
A Programmer Ooh my, this one is whose aim is to solve a problem no matter what and he too uses Code (Ladies forgive me but i just can't keep writing he/she phrases). 
One thing I learned is that whether your a hacker or your a developer. You can't dodge being a programmer. All developer and Hackers are programmers (A person who solves problems using computer code)

Hackers are SMART and CREATIVE and that's what distinguishes them from the other two (2) categories. They invent stuff and always find a way into someone else's software.

A Developer is formally trained and disciplined. He solves problems using computer code BUT does so in a rather formal and outlined principle. He/She follows a code of conduct/principles when solving problems. 

Take a scenario like this one below:

3 Programmers (Let's call them A, B and C) were hired to find a solution to blocking out intruders and viruses from infiltrating the company's system. Each was contracted independently and neither of them knew they were working on the same project but individually. 

Programmer A gather requirements, writes down a requirements document and design as well (of course after the architecture is up) and build the software as per the plan he'd laid out. He delivers the software along with it's documentation. He ensures that his software conforms to all the standards he knows. He took 3 Weeks to deliver the product.
Programmer B, Well this one always finds a solution regardless of the situation and as the saying goes, She looks around for some firewall and antivirus software around (open source I guess or even commercial) and hacks it, changes it to suit the requirements of the company. (changes every last bit of it making improvements and adding on features). He makes sure it's build on top of the word STANDARD (and covers his tracks). She took 4 Weeks to deliver.

Programmer C. This one just went right from first principles (source code mostly from scratch) and got the software up and running. It did take a little longer than the other two but it did work. He too 5 Weeks to deliver.

Now judging the 3 Programmers before you continue reading this article can you be kind and honest enough to figure out which category (Developer, Hacker and Programmer) each of the 3 Programmers fall.

Programmer A is a .......................................................
Programmer B is a .......................................................
Programmer C is a .......................................................

From the looks of it I'd say the story isn't pretty impressive but hey, they all did one thing in common, I'd ask you to tell me what it is you think but What the hell, the both solved the problem using code. Hence the term PROGRAMMER (PROBLEM SOLVER using code of course).

Now I'm not criticizing any of the 3 categories but let's be honest, a hacker is creative and inventive (probably the best at that.) He/She is most creative of the 3 categories and with this skill, he/she can be very inventive. No doubt they are most skillful compared to the other 2 categories. 

A Developer is formally recognized and well, he follows a procedure to solve problems using code. This makes Him recognized. He is also creative and innovative.

A Programmer, well, this one is both but can also be neither of the two. Most Programmers are not very talented to be considered hackers and are not educated enough to be called Developers but they hold one thing above all the others, They are problem solvers and can be any of the others. So if your a Programmer, well, cheer up coz Solving problems using code is in it's self superior. 

Personally I'm a programmer graduating soon to become a developer. I'm also a hacker because sometimes things need a little deeper understanding and this calls for, You know!!! HACKING

Douglas as usual and I'd like to WISH YOU ALL A HAPPY AND HACKERFUL NEW YEAR and stay out of trouble!!!!