menu
阿波銘木 公式ブログ

有限会社 阿波銘木 公式ブログ

Symfonyの奏でかた

最近は阿波銘木のシステム開発にも精力的に関わっています。

 

お久しぶりです。webシステム担当です。

 

今日の東京は暑かったです。

朝から中央線が人身事故で動かなかったのが悲しかった。。。

なぜ自分はこんな日に限って早起きしたのだろうと^^;

 

まぁ、それはいいや^^

 

さてさて、

7月に当サイトのレスポンシブWebデザイン版をロンチした後は、臼・杵のページをアップデートしただけでフロントにはほとんど手を入れていません。

では、何をしてるの??と言いますとサーバーサイドの改修を行っています。

 

いつかのブログでも書きましたが当サイトはフレームワークにSymfonyを採用しています。

 

開発当初は最新版が2.3だったのですが現在はサポートも切れてしまったので(まぁサポートなどどうでもいいが^^;)現在はSymfonyのバージョンアップに注力しています。

 

現在はSymfony2.8で運用しているのですが、開発環境では3系にバージョンアップをしています。

ロンチ出来るのもまもなくではないでしょうか。

(追記:2017年09月30日により、当サイトはSymfony3.3.10での運用を開始致しました。)

まぁロンチしたところで誰も分からない部分ではありますが。。。

開発者としては最新版で運用することはとても大切なことです^^

 

また、それと平行してPHPを5系から7系にバージョンアップしました。

PHP7は無名クラスやメソッドの引数・戻り値での型付けなどの点で大きな変更があり、限りなくJavaに寄せてきたなという印象です。7.1からはNullableやvoidの指定(今までは戻り値の指定がない場合はnullが返る仕様でした)もできます。

これはJava出身の僕からするとありがたい話で、Symfonyのバージョンアップと平行して7系にどんどん寄せています。

当サイトは今現在、PHP7.1.10で運用しています。

 

本当にこの世界は移り変わりが激しいですね。

もう8年前になります。

僕が初めてSymfonyを採用したときは最新バージョンが1.2でした。

当時はSymfonyの奏でかたというブログを見ながら開発していました。とても懐かしく、そしてとても大切な時間でした。

そんなSymfonyも今では3.3までバージョンが上がっています。

そして、PHP4大フレームワーク(CakePHP、Symfony、Zend Framework、CodeIgniter)と言われていた時代も終わり、今はLaravelに人気が集まっています(僕も何度もLaravelのプロジェクトに参画しましたが確かに使いやすい)。

 

ちなみに東京ではPHPを上回る勢いでRuby(Ruby on Rails)が伸びている印象です。

現在は僕も、Ruby on Rails + React.jsの開発に携わっています。

 

アニメーション以外でjQueryを使用するのもそろそろ終わりそうです。Ajaxもaxiosのほうが推奨されてますしね。

 

 

とりあえず今の仕事が落ち着いたらプログラミング言語の勉強を一旦止めて旅行に行きたいです^^

 

最後に大好きなSymfonyのロゴ↓↓

 

 

もうすぐ選挙だ!!

 

 

desktopファーストであるという難しさ

シャレにならない暑さですね。

 

今日は電気屋さんに来てもらって水漏れしてたクーラーを直してもらいました。

こういう時は東京じゃなく北海道に帰りたいのですが北海道も暑いようで・・・。

今日も都内の一室で作業してます。

 

お久しぶりのwebシステム担当です。

 

さて、2017年07月10日に阿波銘木 公式サイトはレスポンシブWebデザイン版を正式にリリース致しました。

ここに至るまで、進捗がはっきり見えなかった時間が多かったので、どうかなーと思っていましたが、

まぁ1次フェーズとしては悪くないスピード感で対応出来たと思っています。

 

とりあえずですが。

 

この『とりあえず』というのが、なかなかにタチが悪いです。

 

阿波銘木のサイトは今までPCのみのサイトとして運営してきました。

要はPC用のページしかなかったということです(当たり前ですが^^;)。

 

主にPCからスマートフォンやタブレット用にサイトを構築するには2通りのやり方があります。

 

1つはスマートフォン、タブレット用のページを別途に作ってしまい、サーバーサイド側でUserAgentを取得し振り分ける。

 

もう一つはレスポンシブWebデザイン。

 

今回、レスポンシブWebデザインを選択したのにはいくつか理由があります。

 

・UserAgentは新しい端末が出る度に設定が必要になる可能性がありイタチごっごになる。

・1ページ当たりの管理数が多くなり1人で見切れる状態ではなくなる。

・UserAgentの異なるGooglebotごとにページをクロールする必要がないため、Googleが効率的にコンテンツを発見できるようになる。

・時代のトレンドの作りである。

 

まぁ、『Googleが推奨しているから。』と言えばそれまでなのですがww

 

ただ、レスポンシブWebデザインを採用するに当たって大きな問題がありました。

それは阿波銘木のサイトが、PCで閲覧してもらうことを基準にして作られていたというコトです。

 

レスポンシブWebデザインを採用する場合、まずは小さいディスプレイ用のレイアウトから作成する『モバイルファースト』というやり方が一般的です。

ところが阿波銘木の場合、PCからスマートフォンへという『desktopファースト』というやり方になってしまいます。

 

この場合、PCで見えるままにスマートフォンへコンバートすると必然的に文字が小さくなります。

PCで当然のようにやっていた横並びを横幅のほとんどないスマートフォン用に無理やり適応させるからです。

これは実際にサイトを見てもらったほうが早いかもしれませんね。

 

 

ですので、次のフェーズでは文字を大きくする。横並びの部分を文字サイズを出すために一部縦並びにするといった作業が中心になります。

 

上記の作業 + その他の作業も含めて2次フェーズのロンチは9月〜10月を予定しています。

 

とりあえず、頑張ります^^

 

そういえば都選はモバイルファーストでもdesktopファーストでもなく

『都民ファーストの会』が圧勝しましたね。

 

色々な意味で2017年07月10日は面白い1日でした^^

レスポンシブWebデザインって何??

今週末に東京から北海道に帰省しますwebシステム担当です。

 

今回はレスポンシブWebデザインについて。

 

今年の7月〜8月に当サイトはスマートフォンに完全対応する予定でいます。

 

このサイトはスマートフォンには優しくないよと天下のGoogle様に怒られたので実際にWi-Fiを使わずに見てみたら、マジでクソ重い(っていうか知ってたけど)www

 

とは言え、限られた時間の中での改修になるのでなかなかスムーズには進みません。

 

 

阿波銘木のサイトのPC版がリニューアルされた当時、cssのサイズはpxで指定をしていました(古い^^;)。

今はrem(root em)という考え方があります。

これはrootという文字通り、一番上の親タグのサイズを元に足し引きするというものです。

 

例えば、

html{ font-size: 15px; }

p{ font-size: 1.2rem; }

だとしたら、pタグは15px x 1.2rem = 18pxになります。
この例では親クラスの文字サイズ(font-size)を変更するだけで全ての文字サイズが変更します。

これは文字サイズ以外にも親タグで指定した要素に対して適応することが可能です。
メジャーなところでいうとwidth・height・margin・paddingとかでしょうか。

これをうまく使ってブラウザの横サイズが480pxを切ったとき上の要素をコントロールして
スマートフォン専用のページの全体バランスを整えようと思っています。

 

レスポンシブWebデザインとは上記のようなことを指します。

PC、タブレット、スマートフォンなど、複数の異なる画面サイズをWebサイト表示の判断基準にし、ページのレイアウト・デザインを動的に調整することを

レスポンシブWebデザインと言います。

 

今、流行りの作り方ですね。Googleも推奨してますし^^

もうPC用、スマートフォン用でuaを見てレイアウトを切り替える時代は終わったと言えますね(物にもよりますが)。

ただ、それ以外のレイアウトはしっかりと考えないといけません。
スマートフォンには横の概念がないので画像とかは新しく作ってもらわないといけません。

この辺はデザイナーに他のスマートフォンのサイトを見ながら勉強してもらいます。

僕自身、スマートフォンのサイトを作ること自体は簡単にできますが、内容が伴わないと意味がありませんからね。
それに暫定的に作ったとしても結局は改修に追われるワケです。


阿波銘木の話は終わり!
昨日は前々から注文していたKensington社のSlimBladeというマウスが届きました!!


マウスに10,000円は高いと思いますが、商売道具ならいくら使ってもいいと思っています。

今日、帰省するためのスーツケースを出しました。
今週の金曜日に登別に帰省します^^

docker勉強

ブログを書くのは本当に久しぶりのwebシステム担当です^^

 

と言っても阿波銘木の仕事もぼちぼちしています。

今は僕が東京の現場で仕事をしているので思うようには出来ませんが。。。

 

このブログシステムも僕が作りました(ナイショ)。

 

まぁ、エンジニアなんてそんなもんだろうと思うワケですw

 

今日はdockerの勉強をしていました。

OSはCentOSを指定したのですが、まさかまさかのsystemctlで怒られるという、とんでも事件に巻き込まれていますwww

 

いつもはvagrantで開発していたのですがGCPがdockerとの連携を強めたので、これはやらないとダメだと^^;

 

以下はDockerfile

 

-----Dockerfile-----

 

# Pull base image.
FROM centos

MAINTAINER development

# timezone
RUN cp -fp /usr/share/zoneinfo/Japan /etc/localtime

# yum update
RUN yum -y install yum-plugin-priorities
RUN yum -y update

# SELinux(入ってないっぽいのでコメントアウト)
# RUN setenforce 0

# kernel
RUN yum -y update kernel*
RUN yum -y install kernel-devel kernel-headers dkms gcc gcc-c++

# repository
RUN yum -y install epel-release
RUN curl -sL https://rpm.nodesource.com/setup_4.x | bash -
RUN rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

# wget
RUN yum -y install wget

# zip unzip
RUN yum install -y zip unzip bzip2
    
# make
RUN yum -y install make

# Git(makeで死んだのでとりあえずyumで落とす)
RUN yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker
RUN yum -y install git

#uninstall apache
RUN yum -y remove httpd

# nginx for centos7
RUN rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
RUN yum -y install nginx

# PHP7
RUN yum -y install --enablerepo=remi-php70 php php php-mbstring php-pear php-mcrypt php-mysql php-fpm

# composer
RUN curl -sS https://getcomposer.org/installer | php
RUN mv composer.phar /usr/local/bin/composer

# rbenv
RUN yum -y install readline-devel
RUN git clone https://github.com/sstephenson/rbenv.git /root/.rbenv
RUN git clone https://github.com/sstephenson/ruby-build.git /root/.rbenv/plugins/ruby-build
RUN ./root/.rbenv/plugins/ruby-build/install.sh
ENV PATH /root/.rbenv/bin:$PATH
RUN echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh
RUN echo 'eval "$(rbenv init -)"' >> .bashrc

# add Ruby version
RUN rbenv install 2.4.0
RUN rbenv global 2.4.0

# rybygames
RUN bash -l -c "gem install bundler"
RUN rbenv rehash

# node.js
RUN yum -y install nodejs

# mariaDB
RUN yum -y install mariadb-server mariadb-devel galera

# iptables
RUN yum -y install iptables-services

 

# Java
RUN yum -y install java-1.8.0-openjdk

# jenkins
RUN wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
RUN rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
RUN yum -y install jenkins

 
# postfix(SMTPはログイン後に設定)
RUN yum -y install postfix
RUN yum -y install cyrus-sasl*
RUN yum -y install telnet
RUN yum -y install mailx

#root no password(とりあえずrootだけでやってみるのでコメントアウト)
#RUN echo 'LoginGraceTime 120' >> /etc/ssh/sshd_config
#RUN echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
#RUN echo 'StrictModes yes' >> /etc/ssh/sshd_config

# docker user setup(とりあえずrootだけでやってみるのでコメントアウト)
#RUN useradd docker
#USER docker
#ORKDIR /home/docker
#ENV HOME /home/docker

#RUN mkdir .ssh
#RUN chmod 700 .ssh

# waiting port
EXPOSE 22
EXPOSE 80
EXPOSE 443

EXPOSE 3306
EXPOSE 8080

#mount
VOLUME [ '/var/www/html' ]

 

-----/Dockerfile-----

 

 

以下はdockerのimageにログインしてcommitしたいもの

 

-----docker images-----

 

# vi /etc/nginx/nginx.conf

------vi /etc/nginx/nginx.conf
# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log;
#error_log  /var/log/nginx/error.log  notice;
#error_log  /var/log/nginx/error.log  info;

pid        /run/nginx.pid;


events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    index   index.php index.html index.htm;

    upstream phpfcgi {
        server 127.0.0.1:9000;
        # server unix:/var/run/php5-fpm.sock; #for PHP-FPM running on UNIX socket
    }

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
}
------/vi /etc/nginx/nginx.conf


# vi /etc/nginx/conf.d/web.conf

------vi /etc/nginx/conf.d/web.conf
server {
    listen 80;

    server_name localhost;
    root /var/www/html/public;

    fastcgi_read_timeout 120;

    client_max_body_size 5M;


    location / {
        try_files $uri /index.php?$query_string;
    }

    location ~ \.php$ {
        fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
        include        fastcgi_params;
    }
}
------/vi /etc/nginx/conf.d/web.conf

# mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak
# systemctl start nginx
# systemctl enable nginx

# vi /etc/php-fpm.d/www.conf
user = root
group = root

# systemctl start php-fpm
# systemctl enable php-fpm

 

# systemctl start mariadb
# systemctl enable mariadb
# mysql -u root
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO administrator IDENTIFIED BY 'admin' WITH GRANT OPTION;
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit;

# iptables -P FORWARD DROP
# systemctl stop iptables
# systemctl disable iptables

# systemctl stop firewalld
# systemctl disable firewalld

 

-----docker images-----

 

 

systemctlさえ問題なければすぐに開発環境の構築に成功するのですが、こう言ったアプリケーションはなんだかんだでうまくいかないものです^^;

大きな問題ではないですが。

 

これからはvagrantよりdockerのほうが主流になると信じてdockerで環境を作ろうと思っています。

 

こぼれ話で今までJavaとPHPの開発環境で使用していたVagrantfileも載せておきます。

 

-----Vagrantfile-----

# development Vagrantfile

Vagrant.configure("2") do |config|

  # OS
  config.vm.box = "bento/centos-7.2"
  config.vm.provider :virtualbox do |vb|
     vb.gui = true
     vb.customize ["modifyvm", :id, "--ostype", "RedHat_64"]
  end

  config.vm.provision :shell, inline: <<-EOT

    # timezone
    cp -fp /usr/share/zoneinfo/Japan /etc/localtime

    # yum update
    sudo yum -y install yum-plugin-priorities
    sudo yum -y update

    # SELinux
    sudo setenforce 0

    # kernel
    sudo yum update -y kernel*
    sudo yum -y install kernel-devel kernel-headers dkms gcc gcc-c++

    # repository
    sudo yum -y install epel-release
    sudo curl -sL https://rpm.nodesource.com/setup_4.x | bash -
    sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
    sudo yum -y install wget

    # zip unzip
    sudo yum install -y zip unzip

    # Git
    sudo yum -y install wget gcc
    sudo yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker
    sudo yum -y install git
    cd /usr/local/src/
    git clone git://git.kernel.org/pub/scm/git/git.git
    cd git
    sudo make prefix=/usr/local all
    sudo make prefix=/usr/local install

    #uninstall apache
    sudo yum -y remove httpd

    # nginx for centos7
    sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
    sudo yum -y install nginx
    sudo systemctl enable nginx
    sudo systemctl start nginx

    # PHP7
    sudo wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
    sudo rpm -ivh ./remi-release-7.rpm
    sudo yum --enablerepo=remi-php70 -y install php php php-mbstring php-pear php-mcrypt php-mysql php-fpm
    sudo systemctl start php-fpm
    sudo systemctl enable php-fpm

    # composer
    cd /var/www/html/
    curl -sS https://getcomposer.org/installer | php
    sudo mv composer.phar /usr/local/bin/composer

    # mariaDB
    sudo yum -y install mariadb-server mariadb-devel galera
    sudo systemctl start mariadb
    sudo systemctl enable mariadb

    #sudo mysql -u root
    #MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO administrator IDENTIFIED BY 'admin' WITH GRANT OPTION;
    #MariaDB [(none)]> FLUSH PRIVILEGES;
    #MariaDB [(none)]> quit;

    # iptables
    sudo yum -y install iptables-services

    sudo iptables -P FORWARD DROP
    sudo systemctl restart iptables
    sudo systemctl enable iptables

    # firewall
    sudo systemctl stop firewalld
    sudo systemctl disable firewalld

 

    #Java

    sudo yum -y install java-1.8.0-openjdk

    # jenkins
    sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
    sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
    sudo yum -y install jenkins
    sudo systemctl start jenkins
    sudo systemctl enable jenkins
    sudo yum -y install cyrus-sasl*

    # postfix
    sudo systemctl start saslauthd
    sudo systemctl enable saslauthd
    sudo yum -y install telnet
    sudo yum -y install mailx
    
    #ネットワーク再起動
    sudo systemctl restart network.service
  EOT

  config.vm.network :forwarded_port, guest: 22,   host: 22, id: "ssh"
  config.vm.network :forwarded_port, guest: 80,   host: 80
  config.vm.network :forwarded_port, guest: 3306, host: 3306
  config.vm.network :forwarded_port, guest: 8080, host: 8080
  config.vm.synced_folder ".", "/vagrant", mount_options: ['dmode=777','fmode=755']

  config.vm.synced_folder "local directory', "host directory", owner: "vagrant", group: "vagrant", mount_options: ["dmode=777", "fmode=755"]
end

 

-----/Vagrantfile-----

 

これだけでは動きません。実際にはvagrantにログインしてサーバ設定してます。

 

 

参考になる方はどうぞ使って下さいwww

 

東京は今日は19度まで上がりました。

 

いよいよ春ですね。

GWに北海道に帰省したら何しようかな^^

 

 

laravel5

ご無沙汰しております。

阿波銘木のwebシステム担当です。

最近はたまの週末にちょこちょこやってるくらいですが。。。

 

現在の僕は他の仕事も担当しているため、阿波銘木の大きなシステム開発は出来ていません。

それでもちょこちょこ呼ばれてはマイナーチェンジしてます。

要チェックや(スラムダンク風に)w

 

さて、私事ではありますが、今年はlaravelでの仕事を担当しています。

基本はsymfonyをラップしたものですからsymfonyを使っていた僕からすると

 

「はいはい、なるほどね。」

 

という感じで扱いやすいです。

 

laravel自体が非常に伸びているフレームワークなので僕としても早く触ってみたかったという感じです(詳しくはこちらのグラフを見てください)。

 

PHPのフレームワークは非常に乱立しているので数年後には新しいフレームワークが人気になってるのかなと思います。

 

PHPもversion7が発表されてますしね。

 

本当にこの業界は勉強×2ですね^^;

こんな業界だって知ってたら多分やってないですw

 

北海道は冬に移っている途中です。

寒いです^^;

 

○○何かで書いてるから

本日も臼の取材がありました。

メディアの皆様にはとても感謝しております。ありがとうございます。

 

臼の取材が始まると、もう年末かーって思いますね。

今年はゆっくりしたいです。

 

さて、とある開発で最近までJavaを使っていたのですが・・・。

うーん。やっぱり手数がかかるw

そして設計に悩む。

まぁきっちり設計して共通意識もしっかりとさせるのがJavaなので手数が増えても仕方ありません。

ただ1人での開発だと「インターフェースいるかな??」って思ってしまいます。ちなみに今回はちゃんとインターフェースや抽象クラスで共通意識を持たせながら実装しました。

1人で実装したんですけど・・・。

 

まぁ特別Javaで実装する理由はなかったんですよねw

たまたま使えそうなjarがあって試してみたら「これはイケる!!」ってなっただけなので。

 

それでも色々な言語をやるのはいいことだなーと思います。

 

あまり言語のコトを言うとケンカになってしまうのでw

お酒の席で言語の話をしてると

「お前は○○なんて使ってるからそんなプログラムしか書けないんだ!!」

みたいな感じでケンカに突入します。

まーアレですね。言語は宗教に近いところがあるので・・・。

 

僕は動けば何でもいいと思ってるんですけどね(爆)

 

ただ、エンジニア同士で飲むときは言語の話はしない!!って決めてますw

 

tag : 

雑談

 

メディア

 

ローンチって何??

先日、赤ちゃん・子供をメインとしたフォトフレームのページ〜購入までのシステムをローンチしました。

 

専務が言った一言です。

 

僕『これからフォトフレームのシステムをローンチします。』

 

専務『ローンチってどういう意味?

 

僕『お客様が実際に見る本番に上げることです。。。』

 

うーん。

そう言われると僕も何となくローンチって言ってましたがイマイチ意味が分かってませんでしたw

ということで調べました。

 

こちらのサイトに書いてありました。

以下、引用させていただいております↓↓

 

ローンチとは、新しい商品やサービスを世に送り出すことである。

日本語では「立ち上げ」「公開」「開始」「発進」などの語が相当する。 

ローンチという表現は、WebサイトやWebアプリケーションを新たに公開する場合などで用いられている場合も多いが、それだけでなく、新商品や新サービスの公開という意味で一般的に用いられている。

 

だそうです。

 

エンジニアの業界は横文字が多いコトもあって当たり前のように使っていました。

とりあえず、間違っていなくて一安心です^^

 

iOS8

来週中には赤ちゃん、子ども用のフォトフレームがリリースされます。

楽しみにしていてください!!

 

 

さて、本日からiPhone6が発売となりiOSも8がリリースされました。

混んでいたのでなかなかバージョンアップ出来ませんでしたが、先ほどようやくiOS8にするコトが出来ました^^

 

ユーザビリティな部分はiOS7とさほど変わりないかと思います。

iCloud Driveはバグがあるようで、その他の部分でもしばらくは様子を見ないと分からない部分が多そうです。

またバージョンアップにも相当な時間を費やしました^^;

その辺りはAppleですから次は大丈夫だと思っています。

 

ちなみに僕もiPhone6予約してます^^

多分1ヶ月以内には届くのではないかと思っています(期待も込めて)。。。

 

元々、東京にいた頃はソーシャルゲームの開発もしていたので、OSの変化は敏感に対応しないといけないんです(それを言い訳に毎回予約させてもらってますw)。

 

来週はフォトフレーム関連のページをローンチします。

ローンチほど不安なことはありません。

『トラブルがあったらどうしよう』とか『あれ、あの部分のテストしたっけ?』とか自問自答の繰り返しです。

だからこそ安定稼働すると嬉しいんでしょうね。

 

エンジニアだけの幸せな時間かもしれません^^

 

 

 

Symfony

先日、ノートPCを購入しました。

当然ディスプレイは小さいのでもう1つ付け足してデュアルディスプレイに、

キーボードが使いにくかったのでキーボードをつなぎ、内蔵タッチパッドも使わないので

マウスをつないで。。。

結局、ノートPCは電源ボタン以外触れなくなってしまいました。

 

今回はフレームワークのお話です。

阿波銘木のサイトはSymfony2を導入しています。

SymfonyはPHPフレームワークの草分け的存在なんです。

今まで関わってきたPHP案件ではZend FrameworkやCodeIgniter、fuelPHPなんかを触ってきましたが、

なぜこのサイトにSymfonyを導入したのでしょうか?

 

それは名前がカッコイイからです^^

うん。半分くらい本気なんですが、一番の理由は最初に使ったフレームワークがSymfonyだったからです。

Symfonyは手数の多いフレームワークなのですが、マッピングや制約が厳格なため大規模開発に向いていると言われます。

このサイトは決して大規模ではないのですが、ゼロベースからの開発ということで2系を使おうと思ったワケです。

ちなみにメジャーのバージョンアップは思想まで変わっているので名前が同じだけで中身は大きく変わります。

大きな変化がなかったのはCodeIgniterくらいでしょうか。

このサイトを作ったのは約1年前なのですが、当時はSymfony2の日本語のドキュメントも充実しておらず、英語の公式ページとにらめっこしながら開発してました。

今は、日本語の翻訳も進んで非常に充実したドキュメントになっているので分からなくても比較的すぐ解決できます。

 

 

ただ最近はSymfony自体、学習コストが高いとの理由で導入しにくいという声を多く聞きます。残念^^;

 実績としてはYahoo! BookmarksやDailymotionなどがSymfonyを採用しているみたいです。

 

Bootstrapその2

前回のBootstrapでの画面作成の続きです。

細かい修正はありますがひとまず落ち着きました。

 

皆さんの目に見える部分ではないのですが、非常に綺麗に見えるようになりました^^

 

後はタグを整えて、僕が作成したベースになっているcssを修正すれば作業は終わりです。

 

来週からは久々にサーバ周りの作業になります。

また調べながらの作業です^^;

 

1つ1つ勉強だと思ってやっていきます。

 

tag : 

雑談

 

Bootstrap

もうちょっとwebからの買い物を簡単にできないかというコトでいろいろ作業してます。

 

それに伴った追加開発部分でBootstrapが使えそうだったので初めて使ってみようと思いました(今までは使わず嫌いなところがありましたので・・・)。

 

あー、これは使いやすいなーと思いましたね^^

 

とりあえず30分くらいhttp://dotinstall.com/lessons/basic_twitter_bootstrap_v4で使い方をざっくり覚えて

後はひたすら分からない部分をググるのみです。

実際、開発よりも開発するための勉強時間のほうが長かったりします^^;

 

HTMLは自分で書けるからいいやじゃなくて、やっぱりこういう便利なモノは導入するべきだなと改めて感じました。

 

そんなこんなで今週はBootstrapを導入した作業がメインになりそうです。

まだまだ勉強しないといけませんね^^;

 

tag : 

雑談

 

レコメンド機能を追加しました。

おはようございます。

昨日から社長が脱腸で入院しており、本日は静かなオフィスで作業しています。

 

さて、先ほど表札ペット商品・フォトフレームの詳細ページにレコメンド機能を追加いたしました。

 

レコメンドって何?って方もいると思いますがA○azonとかにある

『この商品を買った方はこんな商品も買っています』っていうアレです。

 

阿波銘木のはこんな感じにしてみました。

http://awameiboku.com/hyousatsu/categoryDetail/7/item/200189

 

商品が増えてきたらスライダーとか付けてもっと見れるようにしていく予定です。

 

今後はタブレット用のページの作成に入ります。

 

とりあえず朝ごはん食べることにしますね^^

 

tag : 

雑談

 
カテゴリー
最新記事
アーカイブ
カテゴリー
最新記事
アーカイブ
facebook
Twitter
Google+
TOPへ戻る