Programming insights to Storytelling, it's all here.
Experienced developers are expensive. In a world where cutting cost seems like the best option, companies try to maximize their profit by spending less and less on good talent. It is much cheaper to hire someone who just learned php a few weeks ago then a seasoned developer. But it becomes a very bad investment when the newbie introduces insecure code. The problem is, a lot of things learned from those LAMP CRUD application tutorial do not focus much on security. When this code is introduced to a commercial application, the damage can be very expensive. I like how stackoverflow users are fighting very hard to eradicate SQL injection, I am doing my part too but it seems like it is much easier to find insecure code on-line. That said, I will attempt to scare you off your feet so you know better what is the cost of SQL injection.
I write on this blog mostly to share what I learn in my career and also to improve my writing. I had very low expectation when I posted a link to a recent article I wrote on reddit. I never expected to shoot to number one in a matter of minutes in the technology subreddit. Looking at my Google analytic dashboard , The maximum I attained was over 1700 people at a time reading my blog and that was plenty to overwhelm my server.
This tutorial is a follow up the previous post Getting started with your first website. On the previous tutorial we have selected a hosting company and a operating system to run our server. We used Apache as a web server, MySQL as a database, and PHP as a programing language. The next step will be to setup an application that make use of all these technologies and create something useful. Our application will be a WordPress Blog.
Ubuntu is one of my favorite OS. It is very user friendly, perfect for surfing the web, for music, for movies and even gaming. At the same time you have all the power of Linux behind it so I can use it for working on my projects. Recently, I bought a new laptop and unfortunately I found myself returning it because it was a just a giant hardware dongle.
One of the sites I worked on was regularly getting hacked. The attacker did not leave much traces and eventually we learned how to deal with the symptoms of the attack rather than fix it. The common agreement was that maybe he was exploiting a bug in the framework. Recently, I did a deployment and didn't follow the exact procedures and we got hacked again. I got mad for getting blamed for it and decided it was time take a deeper look into the problem.
I am a web developer by trade and I program as a hobby. I love the idea that people who choose this career path are considered smart. Some of my non-tech savvy friends ask me questions like how Facebook works and they are awed when I answer: Facebook uses a giant database. In front of them I feel like a winner. The go to guy when we are talking about anything technical. But then I go back home. I open my local repository and look at my past, present, and future projects. Then I think to myself: I have absolutely no idea what I am doing.
I was recently monitoring my server logs and I noticed multiple requests to a unusual path. /humans.txt. The request returned a 404 since it didn't exist but it got my attention. A few seconds of googling revealed a very interesting idea: a website can talk to bots with the robots.txt file and talk to humans with humans.txt.
In high school I always wondered how some kids memorized all the math formulas. Especially the long ones. I am not particularly good in math but since I am terrified with the idea of giving up I kept at it until I found ways to deal with it. I couldn't memorize the formulas but knowing the first few digits of a sine and cosine of special angles (30,45,60 and so on) proved to be very useful. I loved computers since I was a kid and I was labeled the computer guy in the family. Everyone came to me (and still do) to get help with the Microsoft Word issues, Excel, modem setup, unresponsive mouse, broken screen (not that I could do much with a broken CRT monitor), driver update, unplugged cable, and so on. I may be very disorganized but one thing I can say for sure is I almost aways find a solution to the problems presented to me.