Giới thiệu Gulp, Grunt, Bower, và hỗ trợ NPM cho Visual Studio

Phát triển Web, đặc biệt là phát triển web front end, nhanh chóng trở thành phức tạp và tinh vi như phát triển back end truyền thống. Hầu hết các dự án không chỉ tải lên một số JS và CSS file thông qua FTP. Bây giờ có một front end trước quá trình xây dựng có thể bao gồm việc mở rộng của Sass và ...

Tác giả: Hoàng Hải Đăng viết 00:19 ngày 12/08/2018

group_concat()

Background One of the common problem with RDBMS is that it can not handle well has-many relation by a single query. As ActiveRecord's eage load does, we need two separate queries to load parent and child tables. I believed this as a matter of fact until I know about group_concat(). Solution ...

Tác giả: Bùi Văn Nam viết 00:19 ngày 12/08/2018

Capybara RSpec turnipを使ってエンドツーエンドテストをする

実行環境 Mac OSX 10.9.4 使うツール & gem Capybara RSpec Turnip Selenium 動かすまでに困った事 Xcodeのコマンドラインツールが古くてbundle installが失敗 // コマンドラインツールをインストール $ xcode-select --install テスト内容 example.comにアクセスして、HTMLに「Example Domain」という文字列が含まれていればテスト成功 必要なgemをインストール Gemfile source ...

Tác giả: Hoàng Hải Đăng viết 00:19 ngày 12/08/2018

Những nguyên tắc đảm bảo tính dễ đọc của method (Cyclomatic Complexity) - dành cho người mới lập trình

Nguồn : http://qiita.com/hirokidaichi/items/c9a76191216f3cc6c4b2 Người dịch : Phan Hoàng Minh Tôi muốn nói điều gì? Đây là những gì tôi biên tập lại từ các đề tài nghiên cứu dành cho người mới. Những gì viết ở đây không phải là tuyệt đối. Một điều rất quan trọng các bạn cần nhớ là tùy ...

Tác giả: Tạ Quốc Bảo viết 00:18 ngày 12/08/2018

Đa ngôn ngữ cho application

Một ứng dụng android tốt và hướng tới nhiều người sử dụng trên thế giới thì phải hỗ trợ nhiều ngôn ngữ khác nhau. Không chỉ là ngôn ngữ về văn bản không thôi mà còn về các tập tin về hình ảnh, âm thanh cũng phải vậy. Nhiều bạn lập trình android đã biết về multi language trong android. Chỉ cần tạo ...

Tác giả: Trịnh Tiến Mạnh viết 00:18 ngày 12/08/2018

Tổng quan về Redis và Nodejs trong PHP

Redis là gì? Redis là một cơ sở dữ liệu nguồn mở, lưu trữ dữ liệu dạng key/value. Redis cũng thường được gọi là một server lưu trữ cấu trúc dữ liệu do các khóa lưu trữ có thể bao gồm các kiểu dữ liệu dạng Strings , hashes , lists , sets , .. Lý do chọn Redis Redis hỗ trợ insert, ...

Tác giả: Trịnh Tiến Mạnh viết 00:17 ngày 12/08/2018

iOS Design Pattern

Design Pattern là một kỹ thuật trong lập trình hướng đối tượng, nó khá quan trọng và mọi lập trình viên muốn giỏi đều phải biết. Được sử dụng thường xuyên trong các ngôn ngữ OOP. Nó sẽ cung cấp cho bạn các "mẫu thiết kế", giải pháp để giải quyết các vấn đề chung, thường gặp trong lập trình. Các vấn ...

Tác giả: Hoàng Hải Đăng viết 00:17 ngày 12/08/2018

Material Design for Web Design

Material Design là một ngôn ngữ thiết kế trực quan của google. Nó được giới thiệu vào tháng 6/2014 tại I/O Conference và đang trở thành xu hướng thiết kế mới. Google công bố bản hướng dẫn online cho tất cả mọi người biết về Material Design và cách sử dụng, hoạt động của nó. 3 NGUYÊN TẮC CỦA ...

Tác giả: Tạ Quốc Bảo viết 00:16 ngày 12/08/2018

Chatwork SDK for PHP

This is just a non-official SDK for Chatwork API written in PHP. It may not work when Chatwork update their APIs in the feature. Homepage: http://wataridori.github.io/chatwork-sdk/ Github/English Document: https://github.com/wataridori/chatwork-sdk API: http://wataridori.github.io/chatwork ...

Tác giả: Bùi Văn Nam viết 00:16 ngày 12/08/2018

GMOクラウド VPS 上に PPTP サーバーを構築する

はじめに 現在、ベトナムのハノイで生活しているのですが、ハノイ市内は殆どのカフェやレストランで wifi を提供してくれて東京よりもネット環境が良い位に感じます。 でも、セキュリティ的にザルなのは間違い無いですし、途中経路で誰が覗いているか分かりません。野良 wifi と変わりませんね。 そんなとき、自前で VPN サーバーを構築しておけば、全ての通信を VPN 経由にすることで、安心して wifi が利用できます。また、政治的な理由で Facebook への接続が遮断されるようなときもこれがあれば安心ですね。 なお GMOクラウド VPS ...

Tác giả: Hoàng Hải Đăng viết 00:16 ngày 12/08/2018

Pass web''s data to Computer''s clipboard via Javascript

. Giới thiệu Như mọi người đã biết, ngày nay để đảm bảo an toàn, hầu hết các trình duyệt không cho phép browser truy cập trực tiếp vào computer's clipboard. Chúng ta có thể sử dụng chuột để copy 1 đoạn văn bản nào đó một cách dễ dàng, tuy nhiên để copy 1 đoạn văn bản dài hoặc copy cùng lúc ...

Tác giả: Hoàng Hải Đăng viết 00:15 ngày 12/08/2018

RailsアプリケーションがRakeから起動されたかどうかを知る方法(厳選2選)

Railsアプリケーションの起動の仕方 Railsアプリケーションは基本的にwebアプリケーションとしてunicorn等のアプリケーションサーバーから起動されるのが一般的です。 また、バッチ処理的なものもRailsのアプリケーションの一部として記載でき、モデル等を共有して処理を記述できるので非常に生産効率が高いです。 バッチ処理的なものはrakeタスクにして、Rakeから起動することも多いと思います。その場合、モデル等からunicornから起動されたのか、Rakeから起動されたのかを知りたい時等あるかもしれません。 そんな時に役立つかもしれない、RailsアプリケーションがR ...

Tác giả: Trịnh Tiến Mạnh viết 00:15 ngày 12/08/2018

ĐỊNH NGHĨA CƠ BẢN VỀ SCRIPT

Script là mã kịch bản, là bản thảo viết theo ngôn ngữ máy tính. Là một loại chương trình của máy tính, sẽ tự động hóa hoặc lược bỏ quy trình tạo file có khả năng chạy hoặc biến đổi đến ngôn ngữ máy tính. Script là chương trình mà có thể chạy ngay khi bạn viết source code. Ngôn ngữ script chính là ...

Tác giả: Tạ Quốc Bảo viết 00:14 ngày 12/08/2018

Introduction to ReactJS

Introduction to ReactJS ReactJS là 1 Javascript library mới, được Facebook phát triển và đang ngày càng được sử dụng rộng rãi. Bạn đọc quan tâm đến các đặc trưng của React có thể tham khảo ở slide sau đây.

Tác giả: Hoàng Hải Đăng viết 00:14 ngày 12/08/2018

Lazy Evaluation in Swift

Bài viết lấy từ blog nghialv.com Đối với các ngôn ngữ lập trình hàm như Haskell thì lazy evaluation dường như rất phổ biến. Nhưng đối với các lập trình viên iOS, hay lập trình viên sử dụng một số ngôn ngữ khác chúng ta lại ít chú ý đến. Khi sử dụng Swift mình thấy Swift cũng hỗ trợ khá nhiều về ...

Tác giả: Tạ Quốc Bảo viết 00:14 ngày 12/08/2018

devise で cookie からログインしたかどうかを判定する

devise Rails で認証の仕組みを実装する時に利用する devise、便利ですよね。 細かいことですが、掲題の件をどのように実装するか確認したので、自分用のメモ。 Devise::Strategies::Rememberable の authenticate! メソッドで cookie の内容を確認して認証しているので、その中で session にフラグを立てる実装にしました。 用途としては、ユーザー情報変更等の処理の前に、このフラグが立っていたら、パスワードを再入力してもらう、ということが考えられます。 require ...

Tác giả: Bùi Văn Nam viết 00:13 ngày 12/08/2018

How to Create a Responsive Website

Ngày nay với sự phát triển ồ ạt của smartphone, khái niệm responsive website đã không còn là mới nữa, thậm trí gần như nó thực sự đã thành 1 yêu cầu bắt buộc đối với các website từ lớn tới nhỏ. Trước đây để làm được việc này tương đối khó, khi phải dùng các thư viện ngoài để detect thiết bị, ...

Tác giả: Hoàng Hải Đăng viết 00:13 ngày 12/08/2018

[Write-up] Framgia CTF - The Decisions Day (2015/04/11)

Dưới đây là write-up một số task của CTF lần này, mọi người có thể comment để yêu cầu write-up cho task hoặc gửi link đến write-up của bản thân, mình sẽ cập nhật vào bài viết. Hi vọng các team đã giải được các task sẽ chia sẻ các bài write-up của mình, thanks ! BTC http://ctf.framgia.vn/task/1 ...

Tác giả: Hoàng Hải Đăng viết 00:13 ngày 12/08/2018

Viết SQL trong module một cách mạch lạc, gọn gàng

Động cơ ActiveRecord thật là tuyệt vời đúng không? Không chỉ hầu hết mọi việc chúng ta có thể chạy mà không cần viết SQL ra mà hơn nữa chúng ta có thể sử dụng chuỗi phương thức để làm điều mình muốn một cách gọn gàng. Mặt khác, nếu chú ý một chút khi chạy chương trình thì tỷ suất phát sinh vấn ...

Tác giả: Hoàng Hải Đăng viết 00:13 ngày 12/08/2018

[CakePHP] Sử dụng thư viện mPDF

Trong công việc của một developer, tôi nghĩ có khả năng bạn đã từng gặp dự án nào đó mà khách hàng yêu cầu trang web của họ có một hoặc nhiều chỗ có chức năng xuất file excel, csv, pdf ... để phục vụ cho mục đích nghiệp vụ của họ. Hoặc cũng có thể trong tương lai bạn sẽ gặp những dự án có chức năng ...

Tác giả: Bùi Văn Nam viết 00:12 ngày 12/08/2018