Tôi sẽ không từ bỏ, tôi sẽ quay trở về "nhà".Tham khảo link này nhé: https://www.ted.com/talks/elizabeth_gilbert_success_failure_and_the_drive_to_keep_creating?language=en
Nguyễn Duy Phong
Đây là non nước tại Tràng An cổ (nay là Ninh Bình), năm xưa Đinh Bộ Lĩnh đã ngự trị nơi đây.
Tuesday, April 19, 2016
Elizabeth Gilbert: Tôi sẽ không từ bỏ.
Một câu nói tâm huyết từ cô Elizabeth Gilbert:
Monday, April 18, 2016
Symbolic Link với Yii2 asset
"Symbolic Link" - Khi muốn truy cập nhiều folder với cùng nội dung.- Trước tiên, nói về Symbolic Link. Nói riêng trong windows, khi bạn có 1 main-folder tại "D:\F01", còn lại các folder khác sẽ được "link" đến nó (D:\F02, D:\F03...), các link-folder này vẫn được truy cập hoặc chỉnh sửa nội dung trong đó theo "path" riêng (D:\F02, D:\F03,...), KHÔNG chuyển "path" đến F01 như dạng Shortcut nhé!!! Sau chỉnh sửa, nội dung main-folder sẽ y chang thế, đó chính là lúc bạn nhờ đến Symolic Link. Đọc tài liệu sau để rõ hơn, trong đây cũng có link cài đặt trong Windows:
+ http://www.howtogeek.com/howto/16226/complete-guide-to-symbolic-links-symlinks-on-windows-or-linux/ (Hướng dẫn khá kỹ)
- Thứ 2, yii2 liên quan gì đến đây? Đó là khi thực thi, yii2 lấy các asset trong 1 khu vực main-folder tại "vendor", sau đó cho vào 1 khu vực tạm "\yii2_starter_kit\backend\web\assets". Khi sửa code thì sửa trong main-folder, vào nó được đồng bộ đến khu-vực-tạm như mô tả. Sau đây là bức hình mô tả:
- Thứ 3, Cài đặt cho yii2 asset:
Tìm file trong web-app "...\common\config\main.php" , thêm component "assetManager", gắn giá trị TRUE cho thuộc tính linkAssets:
'assetManager' => [
'class' => 'yii\web\AssetManager',
'linkAssets' => true,
'appendTimestamp' => true
],
Saturday, March 19, 2016
Quy tắc lập trình cơ bản của riêng Phong
Trong quá trình viết code, mình tự lập ra vài quy tắc cơ bản cho riêng mình như sau:
+ Đoạn LOCs nào dùng ở nhiều nơi (>2 nơi) thì tùy theo FW, CMS chịu khó tạo function, module, plugin,... j j đó để tái sử dụng.
+ Đặt tên biến nên có tiếp đầu ngữ nói lên loại dữ liệu: strName, arrAllNames, intCounter... Không nhất thiết đó phải là một loại dữ liệu cụ thể, thường gặp, nên linh động chút, vì cũng có thể là một loại cấu trúc dữ liệu tự định nghĩa, loại model nào đó giao tiếp database,...
+ Khi lập trình, thấy cái gì quy về chức năng, thủ thuật nhỏ cũng nên comment để đọc sau, trong khoảng 100 LOCs mà không thấy comment nào thì cũng nên xem lại.
+ Đoạn LOCs nào dùng ở nhiều nơi (>2 nơi) thì tùy theo FW, CMS chịu khó tạo function, module, plugin,... j j đó để tái sử dụng.
+ Đặt tên biến nên có tiếp đầu ngữ nói lên loại dữ liệu: strName, arrAllNames, intCounter... Không nhất thiết đó phải là một loại dữ liệu cụ thể, thường gặp, nên linh động chút, vì cũng có thể là một loại cấu trúc dữ liệu tự định nghĩa, loại model nào đó giao tiếp database,...
+ Khi lập trình, thấy cái gì quy về chức năng, thủ thuật nhỏ cũng nên comment để đọc sau, trong khoảng 100 LOCs mà không thấy comment nào thì cũng nên xem lại.
Bộ source khủng cho yii2
- Bộ source khủng cho yii2: Yii2 Starter Kit (viết bởi: Eugene Terentev)
- Trong đây có nhiều tiện ích như: có 2 app: frontend và backend; có dùng admin theme AdminLTE cho backend; nhiều quyền truy cập (webmaster, manager...) dựa trên RBAC của yii2; có migration; đa ngôn ngữ; Content Management (for Article, Category...) - quản lý nội dung; có các Components filesystem, maintenance; có các Widgets: menu, carosel; v.v... Và còn nhiều cái hấp dẫn, tha hồ tìm hiểu các tiện ích trong đấy.
- Link liên quan:
+ Link github: https://github.com/trntv/yii2-starter-kit
+ Demo frontend: http://yii2-starter-kit.terentev.net/
+ Demo backend: http://backend.yii2-starter-kit.terentev.net/ (webmaster / webmaster)
- Trong đây có nhiều tiện ích như: có 2 app: frontend và backend; có dùng admin theme AdminLTE cho backend; nhiều quyền truy cập (webmaster, manager...) dựa trên RBAC của yii2; có migration; đa ngôn ngữ; Content Management (for Article, Category...) - quản lý nội dung; có các Components filesystem, maintenance; có các Widgets: menu, carosel; v.v... Và còn nhiều cái hấp dẫn, tha hồ tìm hiểu các tiện ích trong đấy.
- Link liên quan:
+ Link github: https://github.com/trntv/yii2-starter-kit
+ Demo frontend: http://yii2-starter-kit.terentev.net/
+ Demo backend: http://backend.yii2-starter-kit.terentev.net/ (webmaster / webmaster)
Sunday, March 6, 2016
Link tạo app(ID+Secret) kết nối của các website HOT.
Dưới đây là link đi đến các site phổ biến, cho phép tạo app (ID+Secret) để kết nối, thao tác trên public-resource của họ. Thông tin thêm về cái gọi là public-app này: Cho phép tùy biến thêm các tính năng chưa sẵn có, tích hợp để tăng thêm sự hữu dụng, tăng sự kết nối, làm đa dạng theo từng dịch vụ bên dưới.
+ E-commerce platform:
Shopify: https://app.shopify.com/services/partners/api_clients
Haravan: https://app.haravan.com/services/partners/apiclient#/list
Bizweb: https://developers.bizweb.vn/services/partners/api_clients
Amazon: https://developer.amazon.com/public/apis/manage/developer-publishing/creating-and-submitting-a-new-app-using-the-developer-publishing-api#Submitting (submit App)
Ebay: https://developer.ebay.com/base/membership/signin/
Paypal: https://developer.paypal.com/developer/applications/
+ Social networks, big place
Google: https://console.developers.google.com/project
Facebook: https://developers.facebook.com/apps/
Twitter: https://apps.twitter.com/app/new
Microsoft: https://account.live.com/developers/applications/create
+ Others (tool, productive app, programming )
Github: https://github.com/settings/applications
LinkedIn: https://www.linkedin.com/secure/developer
Slack: https://api.slack.com/applications/new
Flickr: https://www.flickr.com/services/apps/create/ (Yahoo)
Pinterest: https://developers.pinterest.com/apps/
+ E-commerce platform:
Shopify: https://app.shopify.com/services/partners/api_clients
Haravan: https://app.haravan.com/services/partners/apiclient#/list
Bizweb: https://developers.bizweb.vn/services/partners/api_clients
Amazon: https://developer.amazon.com/public/apis/manage/developer-publishing/creating-and-submitting-a-new-app-using-the-developer-publishing-api#Submitting (submit App)
Ebay: https://developer.ebay.com/base/membership/signin/
Paypal: https://developer.paypal.com/developer/applications/
+ Social networks, big place
Google: https://console.developers.google.com/project
Facebook: https://developers.facebook.com/apps/
Twitter: https://apps.twitter.com/app/new
Microsoft: https://account.live.com/developers/applications/create
+ Others (tool, productive app, programming )
Github: https://github.com/settings/applications
LinkedIn: https://www.linkedin.com/secure/developer
Slack: https://api.slack.com/applications/new
Flickr: https://www.flickr.com/services/apps/create/ (Yahoo)
Pinterest: https://developers.pinterest.com/apps/
Thursday, February 25, 2016
Gửi ajax đến site khác
- Có bao giờ bạn viết js ajax từ 1 domain01 lấy data của 1 domain02 khác? Nếu gặp rắc rối, đây là cách giải quyết, thử qua 2 bước như sau:
- Bước 1: Chỉnh sửa responde-header bằng cách cấu hình trong file .htaccess của web-app ứng với domain02 như sau:
<IfModule mod_headers.c>
Header add Access-Control-Allow-Origin: *
</IfModule>
- Bước 2: Viết js thế nào? => Chỉ cần thêm tham số "crossDomain: true" khi gửi ajax. Xem VD bên dưới:
$.ajax({
url: 'http://[URL_CỦA_BẠN]',
crossDomain: true, // chú ý!
type: 'GET',
success: function(data){
// làm cái gì đó đi!
}
});
- Tham khảo:
+ http://www.webdevdoor.com/jquery/cross-domain-browser-json-ajax (khuyên dùng)
+ http://stackoverflow.com/questions/1653308/access-control-allow-origin-multiple-origin-domains
- Bước 1: Chỉnh sửa responde-header bằng cách cấu hình trong file .htaccess của web-app ứng với domain02 như sau:
<IfModule mod_headers.c>
Header add Access-Control-Allow-Origin: *
</IfModule>
- Bước 2: Viết js thế nào? => Chỉ cần thêm tham số "crossDomain: true" khi gửi ajax. Xem VD bên dưới:
$.ajax({
url: 'http://[URL_CỦA_BẠN]',
crossDomain: true, // chú ý!
type: 'GET',
success: function(data){
// làm cái gì đó đi!
}
});
- Tham khảo:
+ http://www.webdevdoor.com/jquery/cross-domain-browser-json-ajax (khuyên dùng)
+ http://stackoverflow.com/questions/1653308/access-control-allow-origin-multiple-origin-domains
Wednesday, February 24, 2016
Tăng tốc với PageSpeed Module
- Một nguồn mở làm tăng tốc độ load website, phát triển bởi Google.
- Hiện thấy hỗ trợ Debian/Ubuntu; CentOS/Fedora, chưa thấy tài liệu nào nói có thể dùng trên Windows.
- Xem hình bên dưới: 1 nội dung script được giảm dung lượng với PageSpeed, từ 1327 bytes còn 710 bytes (giảm gần 45%).
- Tham khảo: pagespeed/module
- Hiện thấy hỗ trợ Debian/Ubuntu; CentOS/Fedora, chưa thấy tài liệu nào nói có thể dùng trên Windows.
- Xem hình bên dưới: 1 nội dung script được giảm dung lượng với PageSpeed, từ 1327 bytes còn 710 bytes (giảm gần 45%).
- Tham khảo: pagespeed/module
Subscribe to:
Posts (Atom)