Innovators Dilemma

Book: Innovators Dilemma
Writer:  Clayton M. Christensen
Subject: The book investigates why great companies fails to adapt disruptive technologies.
My Rating:  4_star (4/5)

Very good book, reviews the subject objectively. Must read for managers. One thing I didn’t like is writer mostly focused on production industries. The ides are questionable when you apply to service or software industries. Lets look at important concepts of book:

Continue reading

Dijital Girişimcilik 101

Kitap: Dijital Girişimcilik 101
Yazar: Serkan Ünsal
Konu: Türkiye’de teknoloji girişimi yapmak için mutlaka bilmek gereken temel hususlar.
Benim Notum:  4_star (4/5)

Türkiye’de yapılacak bir teknoloji girişimi için giriş niteliğinde bir kitap. Genel kavramları anlatıyor ve endüstrinin genel görünümünü gösteriyor. Tecrübeli girişimciler için sıra dışı pek bir şey sunmamakla birlikte basit ve öz yapısıyla kolay okunuyor. Dolayısıyla bir göz atmakta fayda var.

dijital-girisimcilik-101
Kitaptan aldığım bazı notlar ve okuma esnasında aklıma gelen bir kaç fikir:

Continue reading

Static Blog

We are in 2015 but we still have problems with blogging, at least I have problems. What I am looking for:

  • Simple WYSIWYG editor to write posts
  • Simple GUI to manage current posts
  • Different themes to select or at least easily customize a theme
  • To get static html version of whole blog
  • Html version should work seamless in a simple server (no PHP, or database support required)
  • A bonus feature, automatically update web site when I change local version (auto export and deploy)

Unfortunately, I couldn’t find any product/service satisfying these conditions. There are lots of Jekyll like products but obviously they are failing to match first two conditions. They are not user friendly, I don’t want to deal with technical things to write a simple blog post. At the other side of spectrum, there are lots of easy web site generator services. However mostly they are closed and I don’t want to depend on a closed service. After trying lots of service/product I settled on again WordPress with HTML Output plugin. It is an old plugin but it is working.

Result:

Install a local WordPress in your PC, install HTML Output plugin, customize your theme, write your posts, export, update to server. It is not that complicated. In future, I will try to automatize export and update process, but for now lets follow the “simple is better” principle.

Papillon

Kitap: Papillon
Yazar:Henri Charrière
Konu:Yazarın biraz gerçek biraz kurgu hapisten kaçış öyküsü
Benim Notum: 3_star(3/5)


 

Bu kitaptan bende iki kopya var ve ikisi de 1970’lerde basılmış eski kitaplar. İlginç olansa ben bunların nasıl olup da benim kütüphaneme geldiğini bilmiyorum. Öğrencilik yıllarında, taşınma sırasında sahipsiz olan kitapları evlat edinmekle ilgili olabilir diye düşünüyorum. Her neyse, bu evlatlık kitaplar yıllardır kitaplıkta durmakta, okunmayı beklemekteydi. Bir fırsatını bulup bayram tatilinde kitabı okudum. Continue reading

Outliers

Kitap: Outliers
Yazar: Malcolm Gladwell
Konu: Başarılı insanların başarılı olmasında gözden kaçan bazı etkenler olabilir mi? sorusunu cevaplamaya çalışıyor.
Benim Notum: 3_star(3/5)

Kitabın bölümleriyle ilgili yorumlarımı ayrıntılı olarak paylaştım. Kitap genel olarak hoş olmakla birlikte, biraz zorlama olmuş ve bence medya tarafından fazlaca abartılmış. Ben bu kitabı okuduktan sonra yazarın başka bir kitabını okuma isteği duymadım.outliers-cizginin-disindakiler

Continue reading

Rediska Instance Problem

I am building a task module, to do time consuming jobs in background. A worker instance is constantly pooling redis db for a new task. However after first connection, somehow rediska (a php redis client) closes connection, and when I make query to db, it automatically creates a new connection using default settings. At this point new connection is not using the settings in the configuration. It is using hard coded default values. I don’t know why it is doing this but here is the solution.

Whenever you use a rediska key, explicitly tell the instance name you want to use.
$option = array("rediska"=>"use_this_instance_name");
$pointer = new Rediska_Key("job:$index:pointer",$option);

To define aforementioned rediska instance:

$options = array (
                    'addToManager' => true,
                    'name'         => "use_this_instance_name",
                    'namespace'    => '',
                    'servers'      => array(
                        array(
                            'host'   => Rediska_Connection::DEFAULT_HOST,
                            'port'   => Rediska_Connection::DEFAULT_PORT,
                            'weight' => Rediska_Connection::DEFAULT_WEIGHT,
                            'db'=>2,
                            'persistent'=>TRUE,
                            'timeout'=>0
                            
                        )
                    )  
                );
$redis = new Rediska($options);

Changing Centos Console Resolution

If you are using centos in a virtual machine or a local machine you may want to change to console resolution so that you see more than 80×25 screen. For this, you need to modify the kernel line.

vi /boot/grub/grub.conf

add/change vga parameter

kernel /vmlinuz-2.6.18-8.el5 ro root=LABEL=/ vga=0x31A

reboot
That will set the resolution to 1280×1024. For a list of possible vga codes see http://wiki.antlinux.com/pmwiki.php?n=HowTos.VgaModes

Vi Color

Default vi that comes with fresh Centos 5 install may not have color support. Adding color support is easy.
Install necessary libraries.

yum install vim-common vim-enhanced

Add an alias to use vim for vi command.
Open bash file

vi ~/.bashrc

add following line

alias vi=vim

restart shell

source ~/.bashrc

That is it!

Nginx 1.010 + PHP 5.3.8 (on Centos 5.7)

Installing nginx is straightforward, so I will not go into details, just check the nginx documentation for more.

First create a repo file.

vi /etc/yum.repos.d/nginx.repo

and add following content to repo file:

CentOS
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

To install php 5.3.8 we need extra repos (source article).

## Remi Dependency on CentOS 5 and Red Hat (RHEL) 5 ##
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
 
## CentOS 5 and Red Hat (RHEL) 5 ## 
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

Install using added repos.

yum --enablerepo=remi install nginx php php-fpm php-common

Install necessary php modules for you.

yum --enablerepo=remi install php-pear

Start Nginx

/etc/init.d/nginx start ## use restart after update
## OR ##
service nginx start ## use restart after update

Start PHP-FPM

/etc/init.d/php-fpm start ## use restart after update
## OR ##
service php-fpm start ## use restart after update

Autostart Nginx on boot

chkconfig --add nginx
chkconfig --levels 235 nginx on
#Autostart PHP-FPM on boot
chkconfig --add php-fpm
chkconfig --levels 235 php-fpm on

Now it is time to configure nginx to work with php.

vi /etc/nginx/conf.d/test.conf

put these lines into file.

server {
    server_name example.net;
    access_log /var/logs/nginx/example.access.log;
    error_log /var/logs/nginx/example.error.log;
    root /var/www/example;
 
    location / {
        index index.html index.htm index.php;
    }
 
    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass  127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /var/www/example$fastcgi_script_name;
    }
}

restart nginx

service nginx restart

create an index file to test.

vi /var/www/example/index.php
<?php phpinfo(); ?>

Easy Install Mercurial on Centos 5

Mercurial may not be present in default repo that comes with a fresh Centos 5 install. Adding RPMForge repo should solve the problem. I will copy paste necessary section from Centos wiki:

Download the rpmforge-release package. Choose one of the two links below, selecting to match your host’s architecture. If you are unsure of which one to use you can check your architecture with the command uname -i

for i386 :

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm

for x86_64:

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

The preferred rpmforge-release package to retrieve and to install in order to enable that repository is one of the two listed above.

Install DAG’s GPG key

rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

Verify the package you have downloaded

rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm

Security warning: The rpmforge-release package imports GPG keys into your RPM database. As long as you have verified the md5sum of the key injection package, and trust Dag, et al., then it should be as safe as your trust of them extends.

Install the package

rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm

This will add a yum repository config file and import the appropriate GPG keys.
Then try to install something like this

yum install mercurial

it is done.