Trở thành Functional Programmer - Phần 5

Đây là bài dịch từ bài gốc ở link sau : https://medium.com/@cscalfani/so-you-want-to-be-a-functional-programmer-part-5-c70adc9cf56a#.aaslflbmu Những bước đầu tiên của việc hiểu rõ các concepts trong lập trình hàm (Functional Programming - FP) là những bước quan trọng nhất, và đôi khi là những ...

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

Writing a blog for a hosting on GitHub

For blogging There are many excellent solutions. Of all the existing platforms for blogs (engines, services, generators) Jekyll seemed to me the most stand out because of their advantages. Now I will tell you about blogging platform on Github. So what is a Jekyll - is a system generating ...

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

Weak attribute và ứng dụng thực tế trong iOS

1. Vấn đề về quản lý bộ nhớ Như đã nói ở bài trước. Những device của Apple thường có RAM dung lượng không được cao, khi một ứng dụng đang chạy mà chiếm dụng quá nhiều bộ nhớ, hoặc không kiểm soát được vòng đời của tất cả các đội tượng lưu trữ dữ liệu của ứng dụng đó thì rất có thể sẽ dẫn đến ...

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

Những vấn đề gặp phải trong kiểm thử chấp nhận sản phẩm (UAT) và giải pháp

1. Kiểm thử chấp nhận sản phẩm - User Acceptance Testing (UAT) là gì? Trong vòng đời kiểm thử phần mềm, UAT, kiểm thử alpha và kiểm thử beta là kiểm thử chấp nhận sản phẩm, được thực hiện vào cuối vòng đời khi tất cả kiểm thử chức năng, kiểm thử phi chức năng và kiểm thử hồi quy được hoàn thành. ...

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

Xử lý bigdata bằng dịch vụ EMR của AWS part 3 (sử dụng hệ thống spark)

Chào các bạn, như ở phần trước chúng ta đã cùng nhau dựng và chạy hệ thống Spark. Tiếp theo đây mình sẽ cùng các bạn dựng và chạy 1 số ví dụ áp dụng spark Chú ý: Spark có thể chạy với rất nhiều ngôn ngữ như: Scala, Python, R, Java Ví dụ 1: Đếm số từ trong 1 đoạn văn bản Đầu tiên bạn cần tạo 1 ...

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

Tạo Sitemap trong rails với sitemap_generator

I. Giới thiệu: Xin chào các bác. SEO là một công việc không thể thiếu khi ta làm website. Trong lúc làm SEO, ngoài các kỹ thuật như thêm thẻ, title, url slug ..., ta cũng cần cung cấp cho search engines 1 file sitemaps mô tả cấu trúc website của chúng ta dưới dạng xml. XML Sitemap là một ...

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

Functional Reactive Programing với Rxjs

Khi làm việc với Angular 2 nói riêng cũng như xử lý bất đồng bộ (ASYNC) trong javascript nói chung, hẳn bạn đã từng nghe tới khái niệm Fucntional Reactive Programing. Vậy FRP là gì mà thời gian gần đây hot đến vậy? Thậm chí nhiều người cho rằng nó sẽ thay thế OOP trong tương lai nữa.Trong bài viết ...

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

Guide setup Lifray framework on windown

Đây là cơ sở hạ tầng của portal (portal infrastructure) bao gồm một portal server và một porlet container. Porlet container quản lý các thể hiện của porlet và cách hiện thị các porlet trên trang portal. Bây giờ mình sẽ nói đến các bước cài đặt môi trường Liferay. Cài đặt Java và cấu hình biến ...

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

Có gì mới ở HTML 5.1

Cái nhìn sơ lược về HTML5.1 Việc HTML5 ra đời khoảng hai năm trước là một sự kiện lớn của cộng đồng phát triển web. Không chỉ vì nó chứa một danh sách các tính năng ấn tượng mới, mà còn là vì nó là bản cập nhật lớn đầu tiên của HTML kể từ khi HTML4.1 ra đời vào năm 1999. Bạn có thể thấy rất ...

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

Các kỹ năng cần thiết để trở thành một Game Tester

Trước khi bạn bắt đầu tìm kiếm một công việc Kiểm thử game, điều quan trọng là bạn cần phải biết những gì nhà tuyển dụng sẽ mong đợi từ bạn. Trong bài viết này tôi trình bày một danh sách các kỹ năng cần thiết phổ biến nhất và nền tảng giáo dục cần có cho công việc đó. Nếu bạn nghĩ rằng bạn ...

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

3 tips để cải thiện performance test suite của bạn

Chúng ta, những Rails developers luôn luôn lo lắng về việc cải thiện hiệu suất của các bộ test trong ứng dụng. Hôm nay tôi sẽ chia sẽ 3 lời khuyên mà tôi sử dụng trong dự án của mình để cải thiện tốc độ test của bạn. 1. Giảm thông số Devise.stretches Thêm phần dưới đây vào ffile spec/test ...

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

UICollectionView Prefetching Trong iOS 10

Tại WWDC 2016 Apple đã giới thiệu một tính năng mới cho class UICollectionView trên IOS 10. Giúp cải thiện trải nghiệm người dùng .Trong bài viết này mình muốn đi sâu hơn vào việc cải tiến hiệu năng và những thay đổi trong UICollectionView. Và cụ thể hơn là sử dụng nó như thế nào trong IOS 10. ...

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

Delegation trong Ruby

Trong tiếng Việt, delegate được dịch là "ủy nhiệm hàm", tuy nhiên mọi người đều không sử dụng từ này mà gọi bằng tên gốc là delegate. Delegate tương tự như con trỏ hàm trong C++ Một delegate giống như một "người đại diện" hay "đại sứ". Một delegate có thể được dùng để tạo một bao đóng ...

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

Tạo đồ thị và bảng xếp hạng thật dễ dàng trong Rails với Chartkick (Phần 2)

Trong phần trước chúng ta đã thảo luận về Chartkick- một gem tốt để biểu diễn các biểu đồ đơn giản. Ở phần này, chúng ta sẽ tìm hiểu các loại biểu đồ khác nhau mà Chartkick có nhé! Các kiểu biểu đồ Biểu đồ cột (Column Chart) Để thể hiện việc sử dụng biểu đồ cột, hãy xem có bao nhiêu vận ...

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

Nhóm điều kiện trong Ransack

Trong dự án trước của mình, mình đã gặp một trường hợp yêu cầu tìm kiếm theo điều kiện như sau: trường date của bảng A (lấy phần ngày tháng) nhỏ hơn ngày tháng nào đó, hoặc trường date của bảng A (lấy phần ngày tháng) bằng ngày tháng nào đó và trường time của bảng B (lấy phần giờ - phút) nhỏ ...

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

Decision Tree Learning

Decision tree learning is a method for finding a approximate solution using training data, in which the learned function is represented by a decision tree. In other words, Its a hierarchical data structure implemention of the divide-and-conquer strategy. It can be used for both classification, ...

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

Dùng docker để build môi trường cho ứng dụng rails(mysql, redis, sidekiq)

Bài viết này sẽ hướng dẫn sử dụng Docker Compose để cài đặt và chạy một ứng dụng rails / mysql / redis/ sidekiq. (nếu ta chưa install Docker và Docker Compose thì tham khảo tại đây ) Tạo Dockerfile Dockerfile cho ruby 2.3.1 được định nghĩa như sau: FROM ruby:2.3.1 RUN apt-get update -qq ...

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

CURD với Repository trong Laravel 5 (Part2)

Trong bài trước mình đã giới thiệu về Repository và có demo phần create, view list và show user bằng Laravel 5.3, các bạn có thể xem lại tại đây. Hôm nay mình xin demo tiếp phần update và delete ứng dụng Repository. Ok! Bắt đầu nào! Đầu tiên là update user, chúng ta tiến hành tạo phần view trước ...

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

Triển khai dịch vụ High Available với Keepalived + HAproxy trên server Ubuntu

High Available có tên tiếng Việt thân thiện là " tính sẵn sàng cao" - ám chỉ các dịch vụ, ứng dụng hoặc một thứ gì đó luôn sẵn sàng hoạt động phục vụ người dùng. Trong thời buổi công nghệ thông tin bùng phát như hiện nay, một dịch vụ có thể có đến hàng chục nhà cung cấp khác nhau. Do vậy, để tăng ...

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

iOS URI Deep Link

Deep link là gì? Deep link là các đường link cho phép chúng ta đi tới 1 tính năng, nội dung cụ thể nào đó của ứng dụng. Nội dung có thể là một màn hình, một trang hay một tab cụ thể. Ví dụ như app Twitter, với đường link twitter://timeline mở bằng Safari, iOS sẽ mở Twitter và dịch chuyển thẳng ...

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