Xây dựng ứng dụng cho Admin với Gem "Rails Admin" kết hợp gem Devise

1. Giới thiệu Để xây dựng phần ứng dụng quản lý cho Admin không phải là một điều đơn giản và có thể mất rất nhiều thời gian của các lập trình viên. Tuy nhiên với gem Rails Admin, nó sẻ giúp cho các lập trình viên RoR có thể xây dựng được ứng dụng Admin chỉ thông qua vài bước. Bài viết lần này ...

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

Elixir trong Laravel 5.3

Xin chào các bạn. Hôm nay mình sẽ tiếp tục về series về Laravel 5.3. Và hôm nay mình sẽ giới thiệu với các bạn về Elixir trong laravel và cách sử dụng Elixir . 1. Giới thiệu Laravel Elixir cung cấp một API gọn gàng và liền mạch cho việc tạo các Gulp task cho ứng dụng Laravel. Elixir cung cấp ...

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

[Selenium IDE 02] – Một số commands thông dụng

Dưới đây là các command được sử dụng nhiều nhất khi làm việc với Selenium IDE, để test script chạy được ổn định hơn thì các bạn nên kết hợp thêm một số command waitFor ([Selenium IDE 07] – Các câu lệnh Wait) Mặc định khi đang bật chế độ record thì tool suggest cho người dùng 1 số command hay ...

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

Laravel Bash Aliases

Bash aliases là shortcut thêm vào 1 file cho phép bạn tham chiếu đến 1 lệnh khác thông qua nhiều từ dễ nhớ, từ viết tắt, hoặc các kí tự. Ví dụ, nếu bạn sử dụng Git, bạn có thể chạy git status rất nhiều lần trong ngày, vậy để tiết kiệm thời gian bạn có thể sử dụng alias gs thay vì git status, và nó ...

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

Học về Git trong 30 phút - Phần I

Git đã phát triển phổ biến trong những năm gần đây. Hệ thống kiểm soát phiên bản được sử dụng bởi các dự án nguồn mở khổng lồ như Linux với hàng nghìn cộng tác viên, các nhóm có kích cỡ khác nhau, các nhà phát triển độc lập và thậm chí cả sinh viên. Người mới bắt đầu thường rất sợ hãi bởi tất cả ...

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

Behaviour Driven Development. Có thực sự tốt hơn cho Agile? (Phần I)

Hay chỉ là 1 bước đi tự nhiên đúng hướng tiếp theo? Vài tháng qua, chúng tôi đã đặt các ngón chân của chúng tôi vào vùng biển rộng rãi chưa được biết đến của Behaviour Driven Development, viết tắt BDD. Bài đăng này khám phá một số trong những điều chúng tôi đã học được trên đường đi; Nó là ...

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

Stop Using Case Statements in Ruby

Đã bao giờ bạn nghĩ mình đã sử dụng hết sức mạnh của OOP hay là bạn đã bỏ lỡ một số tính năng nào đó? Nếu bạn đang viết code và đưa ra các quyết định dựa trên từng loại đối tượng cụ thể thì bạn đang bỏ lỡ một tính năng quan trọng của OOP: polymorphism Checking For Types Đầu tiên tôi sẽ bắt đầu ...

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

Tiếp cận công nghệ, ngôn ngữ mới cho Cốt Đờ

Đọc tiêu đề thì có vẻ thừa, vì nhiều anh Cốt Đờ bây giờ tự tin lắm, nói tao có thể học 1 ngôn ngữ mới hay một công nghệ mới chỉ trong 3 ngày tới 1 tuần là có thể làm được dự án. Đồng ý với anh là như vậy, nhưng nếu như không có Google hay Stackoverflow thì anh có dám mạnh mồm vậy không? Vậy làm sao ...

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

Sử dụng Icon SVG inline và Icon Fonts? Cách nào lợi hại hơn?

Nếu bạn đang xây dựng hệ thống icons cho website của mình thì thường có khá nhiều cách: Cách 1: Sử dụng icon .png, .jpg kết hợp với kỹ thuật css sprite image. Cách 2: Sử dụng icon fonts như Font Awesome hoặc convert icon SVG riêng của site qua font bằng các ứng dụng như IcoMoon App. Cách 3: ...

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

ActiveRecord::Base.store Ưu nhược điểm và cách sử dụng

Store là một cách đơn giản để truy cập và lưu trữ các cặp giá trị key/value vào trong model. Trang API documentation đưa ra một ví dụ về bảng User có các thuộc tính settings. "Settings" không cần phải có một model để lưu trữ, nhưng vẫn cần một phương tiện để truy cập chúng, và đây là lúc chúng ...

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

Tìm hiểu WebVR với A-Frame phần 1

Tìm hiểu Web VR với A-Frame. Thực tế ảo hay còn gọi là thực tại ảo (tiếng Anh là virtual reality, viết tắt là VR) là thuật ngữ miêu tả một môi trường được giả lập bởi con người. Các môi trường giả lập này là hình ảnh do con người chủ động thiết kế qua các ứng dụng phần mềm chuyên dụng, được ...

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

Kiểm thử Cơ sở dữ liệu với Selenium

Selenium Webdriver được sử dụng trong kĩ thuật kiểm thử ứng dụng bằng trình duyệt. Để dùng được Selenium Webdriver trong việc Kiểm chứng Cơ sở dữ liệu (CSDL) (Database Verification), bạn cần sử dụng JDBC ("Java Database Connectivity"). I. Vậy JDBC là gì? JDBC (Java Database Connectivity) ...

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

Những điều cơ bản về SQL và cách làm việc với SQL.(Phần 1)

Bài viết này nhằm mục đích hướng dẫn và tích lúy lại những kiến thức cơ bản về SQL. Tài liệu và demo được dựa trên : MySQL 5.6 Nội dung bao gồm: Ngôn ngữ SQL Ngữ pháp SQL ( Ngữ pháp cơ bản, tiêu chuẩn cho mọi loại DB ) Ngữ pháp SQL riêng của MySQL. Sau khi đã đọc hiểu bài viết này thì bạn có ...

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

Xây dựng app chat đơn giản với Firebase(Phần 2)

Tiếp theo phần 1 https://viblo.asia/p/xay-dung-app-chat-don-gian-voi-firebasephan-1-3Q75wgY25Wb , phần này mình sẽ tiếp tục đề cập đến các tính năng khi làm việc với user : Lấy thông tin của user Xác thực lại 1 user Xóa một 1 user Cập nhật thông tin 1.2.4 .Get currently user ...

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

Làm thế nào để lựa chọn chính xác được những TCs cho Kiểm thử tự động (để đạt được một Positive Automation ROI )

Hiện nay đang là thời đại của kiểm thử tự động. Hầu hết các dự án kiểm thử đều đang cố gắng chuyển các Test case (TC) thủ công sang tự động nhằm nâng cao năng suất và độ bao phủ. Một trong những bước quan trọng để bắt đầu kiểm thử tự động là lựa chọn các TC thích hợp và xác định ROI (Return of ...

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

RxSwift by Examples #2 – Observable and the Bind

Dựa theo tài liệu từ TheDroidSonroids Và tiếp theo từ phần trước: Part I ###Definitions Ở phần I chúng ta đã nói về những thứ có bản của RxSwift và RxCocoa, trong phần này chúng ta sẽ nói về bindings. Binding đơn giản chỉ có ý nghĩa là kết nối, và chúng ta sẽ kết nối Observables với Subjects. Có 1 ...

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

Mô hình phát triển phần mềm V là gì?

Một trong những hạn chế lớn nhất của mô hình phát triển phần mềm thác nước là: Các khiếm khuyết được tìm thấy rất chậm trong quá trình phát triển vì kiểm thử được thực hiện vào cuối chu kỳ phát triển. Fix bug càng chậm thì càng khó khăn và tốn kém. Để khắc phục vấn đề này, một mô hình phát triển ...

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

Top 10 đầu sách Agile Tester nên đọc

Bài viết tham khảo và dịch từ nguồn: https://www.testingexcellence.com/top-10-books-every-agile-tester-should-read/ Dưới đây là danh sách Top 10 cuốn sách mà mỗi Agile Tester nên đọc để hiểu agile workflow và các phương pháp học và thành công trong vai trò của một Agile Tester. Xin lưu ý, danh ...

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

Kinh nghiệm đi phỏng vấn cho sinh viên IT mới ra trường - Phần 2

Chả hiểu sao đang ngồi làm thì anh "Phó" Inbox bảo em vào phỏng vấn ứng viên với anh. Việc của tôi lúc này là ngồi cùng khi phỏng vấn ứng viên lần 2 và hỏi những thứ mà tôi muốn hỏi. Đại ý là thích hỏi gì thì hỏi đó. Ha Ha. Tính mình thì cũng ngựa non háu đá nên mình hỏi ứng viên te tua lắm. Với ...

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

Tại sao TEAMWORK là quan trọng

I. Thế nào là teamwork? Teamwork ngày càng trở thành kĩ năng phổ biến và cần thiết và có tác dụng nâng cao hiệu quả công việc. Vậy teamwork là gì? Teamwork là là một nhóm gồm 2 người cùng hợp tác để hoàn thành một mục tiêu chung trên cơ sở tương tác và trách nhiệm. II. Tầm quan trọng ...

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