2012年4月4日 星期三

Behind theCloud - 運用V2MOM 聚焦目標,建立一致性


這篇標題應該是我在河邊翹著腳想著如何在雲端創業~XD

身處在一家屬於雲端產業的創新公司,其實面對的是許多的不確定性,有許多新的機會也有許多新的挑戰,但對我來說最大的挑戰就是找到賺錢的Business model吧?

一直以來我都有在看一些企業管理和創業的書,公司也都會派我們去企管顧問公司上課,但是總是覺得那是傳統企業的作法,傳統的MBA,並不適用在我們這種"雲端產業"、"網路創新產業",不過這種想法似乎又太自以為是了,於是乎一直在尋找所謂雲端產業,網路創新產業的Role model,希望可以藉由這些Role model 證明那些傳統的理論是錯的,或是不適用的。

那最近看了哪些書呢? 首先是Signal37的工作大解放(ReWork),這提到的很多概念,就真的是跟傳統管理學和MBA有著很大的不同,有興趣的可以先看一下Fin寫的心得感想 [上] [下]。

我想要討論的是的Salesforce.com的 我如何在雲端創業 (Behind the Cloud ) 這本書,書裡提供了111則的公司經營教戰守則,分為九個部分(Part):

創業(將純粹的想法轉換為高成長企業)
        行銷(摒除雜音)
        活動(建立口碑、推動事業)
        銷售(激發客戶活力,加入你的業務大軍)
        技術(開發使用者喜愛的產品)
        公益(讓公司不只是追求利潤)
        國際化(針對新市場推出產品,導入模式)
        財務(集資、創造報酬,又不必出賣靈魂)
領導力(組織成功的關鍵)。

其實除了公益這個章節外,其餘的章節都屬於管理學五大領域(產銷人發財*)得範疇,只不過這本書分別針對這幾個領域提出了許多不同於傳統管理學得見解和他們創新的實務操作經驗,如果機會的話(不懶惰的話)每個章節都有許多點值得拿處來討論。
 
不過就如同我上面的排版,一個創新事業的開始就是從創業,與領導(人才招募與建立組織)開始,這也是許多創新公司最常會遇到得問題。

教戰守則#100:運用V2MOM 聚焦目標,建立一致性

V2MOM這個縮寫代表是 "願景" Vision、"價值" Value、"方法" Method、"障礙"Obstacles、"衡量標準"Measure,針對這幾個項目,必須回答以下幾個問題:

1. 願景 (你想要什麼?)
2. 價值 (對你來說,其中關鍵在於?)
3. 方法 (你要如何實現?)
4. 障礙 (可能的阻礙是什麼?)
5. 衡量標準 (如何得知目標達成)

這是一個很有趣的model 就像專案管理的WBS,也像程式的遞迴(Recursive)一樣,從公司的總V2MOM可以一直往下拆解到每個部門的W2MON,甚至到每個人,一層一層環環相扣,然後組織每一個人得目標,得結果又一層一層影響回公司的總目標。
(其實這就類似陳教授**所提倡得公司年度計畫,與工作說明書~)

最重要得是這份文件是有生命的,有時間性得,需要定期的Review與更新,並且盡可能得用到精準,這樣一來公司全體上下才會朝一致得目標邁進,這也是孫子兵法,始計提到的 "道 者 , 令 民 與 上 同 意 , 可 與 之 死 , 可 與 之 生 , 而不 畏 危 也 ",所謂的道,就是指君主和民眾目標相同,意志統一,可以同生共死,而不會懼怕危險。


(待續,下一篇來談談人才聘僱~)

* 產銷人發財-生產管理、行銷管理、人力資源管理、研發管理和財務管理
** 陳教授 - 聯聖企管陳宗賢教授

2011年11月8日 星期二

Install Xen 4.0.1 on CentOS 6

Reference document: RHEL6Xen4Tutorial
According to  reference document, I wrote a shell script to install Xen4.0.1 on CentOS 6

#!/bin/bash
# Program:
#       Install-xen4.0.1.sh
# History:
# 2011/10/20    howie YU   First release

if [ $UID != "0" ]; then
  echo " You must be root to run the script or run it with sudo"
  exit 1;
fi

if [ $# -lt 1 ]; then
  echo " Usage: ./install-xen.sh   "
  echo " if src path in ~/xen/ then =xen "
  echo " The script assumes the guest being clone is a Red Hat based system"
  exit 1;
fi
installPath=$1

chkconfig --list network
yum -y update
yum -y install screen vim wget tcpdump ntp ntpdate man smartmontools links lynx ethtool xorg-x11-xauth
yum -y groupinstall "Development tools" "Additional Development" "Debugging Tools" "System administration tools" "Compatibility libraries" "Console internet tools" "Desktop Platform Development"
yum -y install transfig wget texi2html libaio-devel dev86 glibc-devel e2fsprogs-devel gitk mkinitrd iasl xz-devel bzip2-devel pciutils-libs pciutils-devel SDL-devel libX11-devel gtk2-devel bridge-utils PyXML qemu-common qemu-img mercurial texinfo libuuid-devel
yum -y install glibc-devel.i686

echo "Remove old virtlib....."
yum -y groupremove "Virtualization"

echo "Prepare for qeum...."
wget http://download.fedora.redhat.com/pub/fedora/linux/releases/14/Everything/i386/os/Packages/openbios-common-1.0-2.fc12.noarch.rpm
wget ftp://ftp.pbone.net/mirror/download.fedora.redhat.com/pub/fedora/linux/releases/14/Everything/i386/os/Packages/openbios-ppc-1.0-2.fc12.noarch.rpm
wget ftp://ftp.isu.edu.tw/pub/Linux/Fedora/linux/releases/test/16-Alpha/Fedora/x86_64/os/Packages/seabios-bin-0.6.2-2.fc16.noarch.rpm
wget ftp://bo.mirror.garr.it/pub/1/fedora/linux/development/16/x86_64/os/Packages/seabios-0.6.2-2.fc16.x86_64.rpm
wget ftp://ftp.isu.edu.tw/pub/Linux/Fedora/linux/releases/15/Everything/i386/os/Packages/gpxe-roms-qemu-1.0.1-4.fc15.noarch.rpm


rpm -ivh openbios-common-1.0-2.fc12.noarch.rpm
rpm -ivh openbios-ppc-1.0-2.fc12.noarch.rpm
rpm -e seabios
rpm -ivh seabios-bin-0.6.2-2.fc16.noarch.rpm
rpm -ivh seabios-0.6.2-2.fc16.x86_64.rpm
rpm -e gpxe-roms-qemu
rpm -ivh gpxe-roms-qemu-1.0.1-4.fc15.noarch.rpm

wget http://dl.fedoraproject.org/pub/fedora/linux/updates/13/SRPMS/qemu-0.13.0-1.fc13.src.rpm
rpm -i qemu-0.13.0-1.fc13.src.rpm
rpmbuild -bb ~/rpmbuild/SPECS/qemu.spec

rpm -ivh  ~/rpmbuild/RPMS/x86_64/qemu-common-0.13.0-1.el6.x86_64.rpm
rpm -Uvh  ~/rpmbuild/RPMS/x86_64/qemu-img-0.13.0-1.el6.x86_64.rpm
rpm -Uvh  ~/rpmbuild/RPMS/x86_64/qemu-user-0.13.0-1.el6.x86_64.rpm
rpm -Uvh  ~/rpmbuild/RPMS/x86_64/qemu-system-*
rpm -ivh  ~/rpmbuild/RPMS/x86_64/qemu-kvm-*
rpm -ivh  ~/rpmbuild/RPMS/x86_64/qemu-debuginfo-0.13.0-1.el6.x86_64.rpm
rpm -ivh  ~/rpmbuild/RPMS/x86_64/qemu-0.13.0-1.el6.x86_64.rpm

echo "start to build xen"

wget ftp://ftp.isu.edu.tw/pub/Linux/Fedora/linux/releases/14/Fedora/source/SRPMS/xen-4.0.1-6.fc14.src.rpm
rpm -i xen-4.0.1-6.fc14.src.rpm
rpmbuild -bb ~/rpmbuild/SPECS/xen.spec

rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-licenses-4.0.1-6.el6.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-libs-4.0.1-6.el6.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-hypervisor-4.0.1-6.el6.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-runtime-4.0.1-6.el6.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-doc-4.0.1-6.el6.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-devel-4.0.1-6.el6.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-debuginfo-4.0.1-6.el6.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/xen-4.0.1-6.el6.x86_64.rpm

echo "Prepare for libvirt install...."


yum -y install xhtml1-dtds libudev-devel libpciaccess-devel  yajl-devel libpcap-devel  libnl-devel avahi-devel  parted-devel device-mapper-devel numactl-devel  netcf-devel augeas radvd systemtap-sdt-devel gnutls-utils

wget ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/en/os/SRPMS/libvirt-0.8.7-18.el6_1.1.src.rpm
rpm -ivh libvirt-0.8.7-18.el6_1.1.src.rpm
wget http://pasik.reaktio.net/xen/patches/libvirt-spec-rhel6-enable-xen.patch
cp -a ~/rpmbuild/SPECS/libvirt.spec /root/rpmbuild/SPECS/libvirt.spec.orig
cd ~/rpmbuild/SPECS/
patch -p0 < ~/$installPath/libvirt-spec-rhel6-enable-xen.patch
cd ~/
rpmbuild -bb ~/rpmbuild/SPECS/libvirt.spec

echo "Remove old libvirt....."
yum -y erase libvirt-client

echo " reinstall libvirt......."

rpm -ivh  ~/rpmbuild/RPMS/x86_64/libvirt-client-0.8.7-18.el6.1.x86_64.rpm
rpm -ivh  ~/rpmbuild/RPMS/x86_64/libvirt-devel-0.8.7-18.el6.1.x86_64.rpm
rpm -ivh  ~/rpmbuild/RPMS/x86_64/libvirt-python-0.8.7-18.el6.1.x86_64.rpm
rpm -ivh  ~/rpmbuild/RPMS/x86_64/libvirt-debuginfo-0.8.7-18.el6.1.x86_64.rpm
rpm -ivh  ~/rpmbuild/RPMS/x86_64/libvirt-0.8.7-18.el6.1.x86_64.rpm

yum -y install virt-manager virt-top virt-viewer

#
# CentOS 6 and RHEL 6 has IGMP built into the bridge-utils. To prevent unnecessary error message, we will need to get Fedora version of bridge-utils source and rebuild it.
#
#
yum -y install  libsysfs-devel

wget ftp://ftp.icm.edu.pl/vol/rzm2/linux-fedora-secondary/development/15/source/SRPMS/bridge-utils-1.2-9.fc13.src.rpm
rpm -i bridge-utils-1.2-9.fc13.src.rpm
rpmbuild -bb ~/rpmbuild/SPECS/bridge-utils.spec

rpm -ivh --force ~/rpmbuild/RPMS/x86_64/bridge-utils-1.2-9.el6.x86_64.rpm


echo "prepare for kernel build "
yum -y install xmlto asciidoc newt-devel perl-ExtUtils-Embed


rpm -ivh kernel-2.6.32-131.12.1.el6.xendom0.src.rpm
rngd -r /dev/urandom
rpmbuild -bb --with baseonly --with firmware --without debuginfo --target=`uname -m`  ~/rpmbuild/SPECS/kernel.spec

rpm -Uvh ~/rpmbuild/RPMS/x86_64/kernel-firmware-2.6.32-131.12.1.el6.xendom0.x86_64.rpm
rpm -Uvh ~/rpmbuild/RPMS/x86_64/kernel-headers-2.6.32-131.12.1.el6.xendom0.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/kernel-devel-2.6.32-131.12.1.el6.xendom0.x86_64.rpm
rpm -ivh ~/rpmbuild/RPMS/x86_64/kernel-2.6.32-131.12.1.el6.xendom0.x86_64.rpm

chkconfig ksm off
chkconfig ksmtuned off

#
# title CentOS (2.6.18-128.1.10.el5)
# root (hd0,0)
# kernel /boot/vmlinuz-2.6.18-128.1.10.el5 ro root=LABEL=/ console=ttyS0
# initrd /boot/initrd-2.6.18-128.1.10.el5.img
#
#
#
echo "ttyS0" >> /etc/securetty

echo "Finish pleas check /etc/grub.conf"
echo " kernel /xen.gz dom0_mem=4096M console=ttyS0 loglvl=all guest_loglvl=all"
echo "module max_loop=256 earlyprintk=xen"

2011年5月29日 星期日

Development engines for iPad

最近因為工作的關係,"準備"開始要研究如何開發iOS app,無奈要開發iOS最大的進入門檻就是要買一台mac,而且要學object C,但是本人就是懶,而且向來都是找阻力最小的地方鑽,所以在上網搜尋有沒有在windows 上開發iOs的solution。

於是就找到了這篇文章 Sticky suggestion - development engines for iPad

Airplay SDK

A cross platform development environment that allows you to use straight C++ to develop iPhone, iPad, Android and PSP apps. Works in Xcode on the Mac but allows you to avoid using Objective C. The PC version allows you to create iOS apps without needing a Mac! I really have to wonder why anyone would use the straight Apple Xcode SDK with an option like this. Even if you like the Xcode environment you can be cross platform with the same codebase using Airplay. Free for iOS if you make less than $100K/yr. I know someone who has been using this and he swears by it.


這個主要是以C++開發,而且要錢,先暫時不考慮

DragonFire SDK
C and C++ development for iPhone and iPad. Runs in Windows or Mac and can create iOS apps with the Windows version! This sends your code to their server to build the app on an actual Mac and then sends the app back to you. Looks like you still need to be a registered developer to actually run it on your iDevice. However, they do allow you to publish free apps through them without having to register with Apple. I assume you would only be able to run it in the simulator to test it in that case.



這個是用C and C++ 開發,範例看起來比較多,可以考慮看看

Corona
Corona is a simulator and compiler for iPhone, Android and iPad apps. It uses the LUA scripting language and includes a physics engine, sprite animation and hooks into the regular iOS stuff. Appears to be well supported, has an active forum and regular releases. It was used by that 14 year old kid who created the #1 physics puzzler. Free to use until you publish something and then the fees are quite reasonable. No royalties. [update: I have been using it and it's pretty solid. Very high level and forgiving for those of us who don't want to manage every last spec of memory. I was able to get something up and running very quickly and it's the easiest by far for actually getting your app on the iPad/iPhone. Good example code on their site and an active code exchange community.]



這個framework 是使用他自己的語言corona,但是看起來還蠻容易理解的,所以列入考慮


Appcelerator Titanium
Cross platform development environment using web technologies like Javascript, PHP, HTML5 and CSS3. Seems to be targeted at web developers. Lots of solid looking apps built with it. Appears to have pretty good access to low level functionality like GPS and camera.



目前列為優先研究對象的就是這個framework啦,因為他是用javascript和HTML5去撰寫,然後再compile成native code,他大部分的lib都是免費,只有一些特別的lib和效果要收錢,所以目前就已這個作為優先的研究對象吧