Tặng sách kèm review

Kinh doanh / Lãnh đạo

1. Khác Biệt Để Bứt Phá (Tái Bản 2019)

Đây là quyển sách thay đổi hoàn toàn góc nhìn của tôi về tổ chức doanh nghiệp lẫn định hướng kinh doanh.
Mở ra cho tôi 1 Tư duy quản trị và vận hành mới, hoàn toàn khác biệt với các cách quản trị truyền thống.
Đây là điểm bắt đầu để tôi có định hình sự phát triển của bản thân mình.

2. Từ Tốt Đến Vĩ Đại (Tái bản 2021)

Thông dữ liệu nghiên cứu từ các đại doanh nghiệp thành công, quyển sách chỉ ra các mô hình giúp
các doanh nghiệp có thể vận hành và thành công trong lâu dài. RẤt nhiều mô hình trong quyển này được
trích suất và giới thiệu trong nhiều chương trình đạo tạo lãnh đạo lẫn quản trị doanh nghiệp

3. Bắt Đầu Với Câu Hỏi Tại Sao? ( Tái Bản )

“Golden Circle” là từ khoá rất nổi tiếng. Bằng cách trả lời câu hỏi TẠI SAO, doanh nghiệp có thể
xác định rõ mục tiêu tồn tại và đích đến của mình. Từ đó tạo ra sự thống nhất trong từ trên xuống
dưới của doanh nghiệp, giúp khai thác tối đa tiềm năng từ những nhân viên có chung giấc mơ.
Phù hợp với việc bắt đầu 1 cái gì mới, hoặc nhìn lại sau 1 thời gian vận hành.

4. Trò Chơi Vô Cực – Chiến Lược Dẫn Đầu Trong Thời Đại Khách Hàng Thông Minh

Rất hot thời gian gần đây, bằng cách dùng ngôn ngữ Game, để chỉ ra bản chất vận hành của các doanh nghiệp
Từ đó giúp người lãnh đạo nhìn lại xem mình đang hướng tới cái gì. Cực kì phù hợp khi bắt đầu tái cấu trúc,
hoặc đánh giá lại thị trường.

5. Động Lực Chèo Lái Hành Vi (Tái Bản 2018)

Giới thiệu 3 nguyên tắc cơ bản về lãnh đạo trong thời đại mới (modern leadership). CÁc nguyên tắc này là nền tảng cho
phương pháp quản trị giới thiệu trong quyển Rework. Thế giới phát triển, nhân sự cũng tiến bộ, cách quản trị
kiểu command-control sẽ ko phù hợp nếu cty muốn tiến xa. Bằng cách tập trung vào Automomy – Mastery – Purpose
chúng ta có thể tạo ra 1 tập thể mạnh và gắn kết.
Đây là quyển sách cơ bản khi ông tìm hiểu về phương pháp quản trị thời đại này

6. Tâm Lý Học Đám Đông (Tái Bản 2018)

Sách cổ, thiên về tâm lý học và triết học. Cực kì bổ ích trong kinh doanh khi quản lý tập thể lẫn
tìm ra giải pháp kinh doanh mới. Bằng việc nghiên cứu kĩ “đám đông”, các thử nghiệm sẽ có các nền tàng
cơ bản chứ ko hoàn toàn là “hên-xui” . Đồng thời, góc nhìn quản trị cũng dc nâng tầm đáng kể.

Lối sống

7. Nghệ Thuật Tinh Tế Của Việc “Đếch” Quan Tâm

Rất hay. Đặt tên được cho rất nhiều vấn đề cuộc đời: Sự nghiệp, các mối quan hệ,… Như cảm thấy mình ở trong
các tình huống mà tác giả nêu ra. Chương về cái chết là chương rất hay, nó thay đổi góc nhìn của tôi
về cái chết – cho tôi cơ hội để nhìn kĩ vào thứ mà chúng ta ko thể tránh khỏi, từ đó cách lên kế hoạch
cho cuộc đời mình cũng có ý nghĩa hơn.

8. Đi Tìm Lẽ Sống ( Tái Bản )

Kinh điển. Câu chuyện về một người mất tất cả, bị vào trại PHát xít đức. Cái chết, Mất hi vọng,
Đau đớn thể xác… đều trải qua và tồn tại đến già. Một quyển sách kinh điển, đầy đủ về nhân sinh quan,
cung cấp vốn sống để mình hoàn thiện hơn góc nhìn của bản thân. Cực kì hay và khuyến đọc.

9. Người Dám Cho Đi

Self-help. Ngắn, và có thể hơi nhảm. Tôi được giới thiệu từ 1 ng anh thú vị, nó phản ánh nguyên tắc sống
của bản thân tôi mà trước giờ tôi nghĩ chỉ có mình ngu như thế 😀 .
Hãy cứ cho đi, ko tính toán, một lúc nào đó nhân duyên tới, cơ hội sẽ tới và sẽ được nắm bắt.
Tôi recommend quyển này vì nó là nguyên tắc sống của tôi, giống như cách mà tôi giới thiệu với những người bạn mới, tôi là ai.

10. Trở Về Từ Cõi Sáng (Tái Bản)

Lại một quyển sách nữa về cái chết. Khá nổi tiếng, một bộ trông Tử Thư Tây Tạng.
Nghe hơi tiêu cực, nhưng có lẽ chỉ khi nhìn về cách mà chúng ta sẽ kết thúc – và ai cũng như ai –
thì chúng ta mới biết làm thể nào để sống cho trọn vẹn. Còn nhiều concept về chủ đề này mà có
dịp ngồi thêm tôi sẽ chia sẻ.

Advertisement

jQuery – very very newbie

jQuery detect user-interactivity by “Event” when user “click”,”mouseIn”, “mouseOut” …blah..blah..blah

http://api.jquery.com/category/events/

How to debug when coding  jQuery or JS ?

just use : console.log(x);     x is element you want to track. May be $(‘#id’), $(‘.class’)… User console tab in FireBug to find it

and : alert(y);  y is more detail then x. Maybe include val, status v.v…

 

CakePHP very small tips

Before working with “Prefix” must :

– Config in core (app\Config\core.php)  : Configure::write(‘Routing.prefixes’, array(‘admin’, ‘customer’));

– Config in route (app\Config\routes.php):

Router::connect(‘/admin’, array(‘controller’ => ‘dashboard’, ‘action’ => ‘index’, ‘admin’ => true));
Router::connect(‘/admin/login’, array(‘controller’ => ‘login’, ‘action’ => ‘login’, ‘admin’ => true));
Router::connect(‘/admin/logout’, array(‘controller’ => ‘login’, ‘action’ => ‘logout’, ‘admin’ => true));
Router::connect(‘/login’, array(‘controller’ => ‘login’, ‘action’ => ‘login’));
Router::connect(‘/logout’, array(‘controller’ => ‘login’, ‘action’ => ‘logout’));
Router::connect(‘/customer/login’, array(‘controller’ => ‘login’, ‘action’ => ‘login’, ‘customer’ => true));
Router::connect(‘/customer’, array(‘controller’ => ‘users’, ‘action’ => ‘view’, ‘customer’ => true));

About prefix authenticate. Include some code to AppController (to determain Model + Table  for Authen Login/Logout):

if (isset($this->request->params[‘prefix’]) && $this->request->params[‘prefix’] == ‘customer’) {
$this->Auth->authenticate = array(
‘Form’ => array(
‘userModel’ => ‘Customers.Customer’,
‘scope’ => array(‘Customer.del_flg’ => 0),
)
);
};

Sample for Paginate with custom fields (not from Model)

$priority = ‘(CASE ‘;
$count = 0;
foreach ($shopList as $item) {
$priority .= ‘ WHEN Order.shop_id = ‘.$item.’ THEN ‘.$count .’ ‘;
$count += 1;
}
$priority .= ‘END) as rank’;

$this->paginate[‘Order’] = array(
‘limit’=> 10,
‘recursive’=>-1,
‘conditions’ => array(
‘Order.shop_id’ => $shopList,
‘Order.user_id’ => $this->Auth->user(‘id’),
‘Order.status’ => array(ORDER_STATUS_PAID,ORDER_STATUS_POINT),
‘Order.accounting_date <>’ => null,
‘Order.del_flg’ => 0),
‘joins’ => array(
array(
‘table’ => ‘tb_shops’,
‘alias’ => ‘Shop’,
‘type’ => ‘inner’,
‘conditions’ => array(‘Shop.id = Order.shop_id AND Shop.del_flg = 0’)
)),
‘fields’=> array(‘Order.id’,’Order.shop_id’,’Order.accounting_date’,$priority, ‘Shop.mobile_booking_flg’),
‘order’ => array(‘rank’, ‘Order.accounting_date DESC’),
);
$orders = $this->paginate(‘Order’);

 

5 phút với Scrum

Scrum là gì?

Scrum là một trong các khung làm việc linh hoạt (agile framework) phổ biến nhất hiện nay. Ban đầu, Scrum được dùng để quản lý các dự án phát triển phần mềm, nhưng nó có thể được dùng trong các công việc khác với sự phức tạp, và đòi hỏi tính sáng tạo rất đa dạng.

Dựa trên lý thuyết quản lý thực nghiệm (empirical process control), Scrum sử dụng cơ chế lặp (iterative) và tăng dần (incremental) để tối ưu hóa sự hiệu quả và kiểm soát rủi ro. Scrum rất đơn giản, dễ học và có khả năng ứng dụng  rất to lớn. Để có thể dùng Scrum, chúng ta cần tiếp cận các thành tố tạo nên Scrum bao gồm ba giá trị cốt lõi (còn gọi là ba chân), ba vai trò, bốn cuộc họp, và ba công cụ (artifacts).

 

Scrum framework có gì?

Ba chân (hay giá trị cốt lõi) của Scrum

Scrum là một phương pháp linh hoạt (agile), vì thế nó tuân thủ các nguyên tắc của Agile Manifesto (Tuyên ngôn Agile). Ngoài ra Scrum hoạt động dựa trên ba giá trị cốt lõi, còn gọi là Ba chân của Scrum bao gồm Minh bạch, Thanh tra và Thích nghi.

Minh bạch (transparency)

Trong Scrum, tính minh bạch được đề cao như là giá trị cốt lõi cơ bản nhất. Muốn thành công với Scrum, thông tin phải minh bạch và thông suốt. Từ đó mọi người ở các vai trò các nhau có đủ thông tin cần thiết để tiến hành các quyết định có giá trị để nâng cao hiệu quả công việc. Các công cụ và cuộc họp trong Scrum luôn đảm bảo thông tin được minh bạch cho các bên.

Thanh tra (inspection)

Công tác thanh tra liên tục các hoạt động trong Scrum đảm bảo cho việc phát lộ các vấn đề cũng như giải pháp để thông tin đa dạng và hữu ích đến được với các bên tham gia dự án. Truy xét kĩ càng và liên tục là cơ chế khởi đầu cho việc thích nghi và các cải tiến liên tục trong Scrum.

Thích nghi (adaptation)

Scrum rất linh hoạt như các phương pháp phát triển linh hoạt (agile software development) khác. Nhờ đó nó mang lại tính thích nghi rất cao. Scrum có thể phản hồi lại các thay đổi một cách tích cực, nhờ đó mang lại thành công cho dự án.

Ba vai trò

Trong Scrum, người tham gia phát triển phần mềm được phân chia ra ba vai trò với trách nhiệm rõ ràng để đảm bảo tối ưu hóa các công việc đặc thù. Ba vai trò này bao gồm: Product Owner, Scrum Master và Team (Đội sản xuất hay Nhóm Phát triển).

Product Owner (chủ sản phẩm)

Là người chịu trách nhiệm về sự thành công của dự án, người định nghĩa các yêu cầu và đánh giá cuối cùng đầu ra của các nhà phát triển phần mềm.

Scrum Master

Là người có hiểu biết sâu sắc về Scrum và đảm bảo nhóm có thể làm việc hiệu quả với Scrum.

Team (Đội sản xuất, hay Nhóm phát triển)

Một nhóm liên chức năng (cross-functional) tự quản lý để tiến hành chuyển đổi Product Backlog item thành chức năng của hệ thống.

Bốn Cuộc họp (Four ceremonies)

Scrum định nghĩa quy tắc cho bốn lễ nghi (các cuộc họp) nhằm tạo môi trường và quy cách hoạt động và cộng tác cho các thành viên trong dự án. Các lễ nghi này diễn ra trước khi Sprint bắt đầu (Sprint Planning), trong khi Sprint diễn ra (Daily Scrum) và sau khi Sprint kết thúc (Sprint Review và Sprint Retrospective).

Sprint Planning (Họp Kế hoạch Sprint)

Nhóm phát triển gặp gỡ với Product Owner để lên kế hoạch làm việc cho một Sprint (xem thêm phần Sprint bên dưới).  Công việc lập kế hoạch bao gồm việc chọn lựa các yêu cầu cần phải phát triển, phân tích và nhận biết các công việc phải làm kèm theo các ước lượng thời gian cần thiết để hoàn tất các tác vụ. Scrum sử dụng cách thức lập kế hoạch từng phần và tăng dần theo thời gian, theo đó, việc lập kế hoạch không diễn ra duy nhất một lần trong vòng đời của dự án mà được lặp đi lặp lại, có sự thích nghi với các tình hình thực tiễn trong tiến trình đi đến sản phẩm.

Daily Scrum (Họp Scrum hằng ngày)

Scrum Master tổ chức cho Đội sản xuất họp hằng ngày để Nhóm chia sẻ tiến độ công việc cũng như chia sẻ các khó khăn gặp phải trong quá trình phát triển phần mềm suốt một Sprint.

Sprint Review (Họp Sơ kết Sprint)

Cuối Sprint, nhóm phát triển cùng với Product Owner sẽ rà soát lại các công việc đã hoàn tất (DONE) trong Sprint vừa qua và đề xuất các chỉnh sửa hoặc thay đổi cần thiết cho sản phẩm.

Sprint Retrospective (Họp Cải tiến Sprint)

Dưới sự trợ giúp của Scrum Master, nhóm phát triển sẽ rà soát lại toàn diện Sprint vừa kết thúc và tìm cách cải tiến quy trình làm việc cũng như bản thân sản phẩm.

Ba công cụ (artifacts)

Scrum sử dụng các công cụ rất đơn giản nhưng hiệu quả để trợ giúp công việc. Chúng bao gồm bản yêu cầu của chủ sản phẩm  được gọi là Product backlog, bản kế hoạch của từng Sprint (Sprint Backlog) và biểu đồ Burndown Chart.

Product backlog

Đây là danh sách ưu tiên các tính năng (feature) hoặc đầu ra khác của dự án, có thể hiểu như là danh sách yêu cầu (requirement) của dự án. Product Owner chịu trách nhiệm sắp xếp độ ưu tiên cho từng hạng mục (Product Backlog Item) trong  Product Backlog dựa trên các giá trị do Product Owner định nghĩa (thường là giá trị thương mại – business value).

Sprint backlog

Đây là bản kế hoạch cho một Sprint; là kết quả của buổi họp lập kế hoạch (Sprint Planning). Với sự kết hợp của Product Owner, nhóm sẽ phân tích các yêu cầu theo độ ưu tiên từ cao xuống thấp để hiện thực hóa các hạng mục trong Product Backlog dưới dạng danh sách công việc (TODO list).

Burndown Chart

Đây là biểu đồ hiển thị xu hướng của dự án dựa trên lượng thời gian cần thiết còn lại để hoàn tất công việc. Burndown Chart có thể được dùng để theo dõi tiến độ của Sprint (được gọi là Sprint Burndown Chart) hoặc của cả dự án (Project Burndown Chart).

Scrum vận hành như thế nào?

Product Owner tạo ra Product Backlog chứa các yêu cầu của dự án với các hạng mục được sắp theo thứ tự ưu tiên. Đội sản xuất sẽ thực hiện việc hiện thực hóa dần các yêu cầu của Product Owner với sự lặp đi lặp lại các giai đoạn nước rút từ 2 đến 4 tuần làm việc (gọi là Sprint) với đầu vào là các hạng mục trong Product Backlog, đầu ra là các gói phần mềm hoàn chỉnh có thể chuyển giao được (Potentially Shippable Product Increment). Trước khi cả nhóm cùng đua nước rút trong Sprint, đội sản xuất cùng họp với Product Owner để lên kế hoạch cho từng Sprint. Kết quả của buổi lập kế hoạch (theo cách làm của Scrum) là Sprint Backlog. Trong suốt quá trình phát triển, nhóm sẽ phải cập nhật Sprint Backlog và thực hiện công việc họp hằng ngày (Daily Scrum) để chia sẻ tiến độ công việc cũng như các vướng mắc trong quá trình làm việc cùng nhau. Khi kết thúc Sprint, nhóm tạo ra các gói phần mềm có chức năng hoàn chỉnh, sẵn sàng chuyển giao (shippable) cho khác hàng. Buổi họp Sơ kết Sprint (Sprint Review) ở cuối Sprint sẽ giúp khách hàng thấy được nhóm đã có thể chuyển giao những gì, còn những gì phải làm hoặc còn gì phải thay đổi hay cải tiến. Sau khi kết thúc việc đánh giá Sprint, Scrum Master và nhóm cùng tổ chức họp Cải tiến Sprint (Sprint Retrospective)  để tìm kiếm các cải tiến trước khi Sprint tiếp theo bắt đầu.

Các Sprint sẽ được lặp đi lặp lại cho tới khi nào các hạng mục trong Product Backlog đều được hoàn tất hoặc khi Product Owner quyết định có thể dừng dự án căn cứ tình hình thực tế. Do sử dụng chiến thuật “quan trọng làm trước” nên các hạng mục mang lại nhiều giá trị hơn cho chủ dự án luôn được hoàn tất trước. Do đó Scrum luôn mang lại giá trị tốt nhất cho người đầu tư cho dự án. Do quy trình luôn luôn được cải tiến, nhóm Scrum thường có năng suất lao động rất cao. Đây là hai lợi ích to lớn mà Scrum mang lại cho tổ chức.

Hello World !

Tôi là Tú, Sinh ra và lớn lên ở Bắc Giang City,giờ đang theo học tại trường DH Bach Khoa HN.Tôi có rất nhiều ước mơ từ ngày mới vào đại học nhưng gần như đã mai một do quá ham chơi và lười nhác.Mọi thứ cần quay lại như cũ.Tôi sẽ thay đổi.Blog này sẽ là nơi tôi chia sẻ tầm sự cũng như kiến thức của mình.Cảm ơn bạn đã quan tâm. 😡