CategorySoftware Engineering

Why Should You Learn to Program?

Writing programs or (known as programming) is a very rewarding and fun way of writing a poetry. Nope maybe not writing a poetry but a fun and rewarding activity. 🙂

There are many reasons for writing programs. You can make your living or you can solve a difficult data analysis problem just to have fun or even after learning enough you can help others to solve difficult problems. Actually, we are pretty much surrounded by computers in our daily lives. Most of us using laptops, desktops or cellphones every day. We can think of those devices as personal assistants because they can take care of many things for us with just a few clicks.

There are operating systems and set of applications that turns hardwares into a Personal Digital Assistant. These operating systems and applications are added to hardware by programmers.

The only thing that we need to do is knowing how to talk with those assistants. We need to know what language they are speaking. After learning how to talk with these devices we could tell a computer to do tasks on our behalf.

Aspects of Software Quality

  • Correctness

This first step is the degree which software adheres to its specific requirements. It also addresses one of the most important concers that I wrote in Software Quality. Right needs – Right Solutions which means developing the appropriate solution. At each step while developing a software, we have to make sure that we are addressing the problem as defined in the requirements. Then we can provide a right solution for the problem.

Continue reading

Software Quality

Hello World!

After loosing my latest server I started to write from the beginning. 🙂 In this very precious first post I’ll explain some key points about Software Quality and Software Engineering. Let’s directly dig into the topic and start with an example;

Imagine a bridge built by workers. Also again imagine the same bridge designed by engineers and built by workers. Which one you would choose? This is same as comparing coders with Software Engineers. Software Engineering focuses on controlling the development process and achieving constantly good results.  You may ask What is Software Engineering or what are the goals of Software Engineering? The meaning of Software Engineering is the study of the techniques and theory underline the development of high-quality software.

Continue reading

Installing and Configuring Symfony 3

What is Symfony?

Symfony is set of PHP libraries. There are about 30 libraries that makes up the Symfony Framework and you can use each of these libraries individually in your non-Symfony projects as well.

Let’s Setup First Project

In order to work with Symfony without Composer, first you need to install the Symfony installer. Copy and paste the following command into your terminal.

sudo curl -LsS -o /usr/local/bin/symfony

Copy and paste the following command to adjust some permissions.

sudo chmod a+x /usr/local/bin/symfony

Right now if you type “symfony” command in your terminal, you will see bunch of options that comes with Symfony installer.

Let’s create our very first project.

symfony new <project_name>

After exucitng the last command the installer will download the project.

Now run the following command to run the builtin web server.

php bin/console server:run

Start your browser and type


Now if you configured everything correctly you should see the welcome page.

Setup PHPStrom with Git VCS

PHPStorm is probably the best editor for Symfony projects. PHPStorm is not Free. However if you are a student visit and download the complete PHPStorm editor for free. If you are not a student you can still download PHPStorm with 1 month of trial.

First thing is installing the Symfony plugin.

In preferences click the plugins option -> Browse Repositories and search for Symfony plugin.

Symfony Plugin | PHP Storm

Click on the Install Button and restart PHPStrom. After restarting go to the preferences menu and search for Symfony to find Symfony plugin item, then mark the Enable Plugin For this Project option. Remember that you will need to do this once for each project.  Also make sure that the urlGenerator.php and Translation Root Path are set to var directory as follows

Enable Symfony Plugin for PHPStorm

Now it is time to setup git with PHPStorm

Open up a terminal window and type

git init
git add .
git commit -m "First Draft" 

Hopefully your commit is more clever than mine!

Installing LEMP Stack on Localhost Along with PHP-FPM on MAC OSX

Welcome to WordPress. This is your first post. Edit or delete it, then start writing!

At the end of this tutorial you will be able to setup and configure LEMP stack on MAC OSX with PHP-FPM.

Step 1: Update your XCode from App Store

Step 2: Install and update Homebrew

/usr/bin/ruby -e "$(curl -fsSL"
brew update
brew doctor

Make sure you don’t get any major errors after running brew doctor command. Small warnings are okay.

Continue reading