Những sai lầm kinh điển khi quảng cáo bằng mạng xã hội

Mạng xã hội như facebook, zalo, Instagram có mức độ tương tác với người dùng tương đối cao, và hiện nay nó cũng được đánh giá là mỏ vàng cho các doanh nghiệp khai thác, tiếp cận với nguồn khách hàng tiềm năng. Đó là lý do mà nhiều doanh nghiệp cửa hàng chuyển sang tiếp thị trên zalo, bán hàng ...

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

Thôi nhầm lẫn giữa agile và Agile

Một cái là tính trạng, cái kia là phương pháp. Chúng tôi làm Agile. Chúng tôi rất nhanh nhẹn. Thật không may, chỉ có từ "nhanh nhẹn"(agile) đã gây ra một vụ tai tiếng gần đây, được gọi là một số loại thuốc chữa bách bệnh, phân biệt hoặc cơ chế bán hàng giữa các ngành công nghiệp. Bài viết này ...

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

Chọn framework php phù hợp

Giới thiệu PHP là một trong những ngôn ngữ lập trình phổ biến nhất trên thế giới, với phát hành gần đây của PHP 7 đã làm cho ngôn ngữ lập trình này nhanh hơn và ổn định hơn nhiều so với các phiên bản trước. PHP được sử dụng rộng rãi trong các dự án lớn. Hiện tại, PHP có chiếm đến 80% các trang ...

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

Các kí tự đặc biệt trong Regular Expressions (phần 1)

Các mẫu có thể chứa các kí tự đặc biệt cho các mục đích tìm kiếm nâng cao mà tìm kiếm trực tiếp sẽ khó khăn như tìm một đoạn chứa một hoặc nhiều hơn một kí tự b, hay tìm một hoặc nhiều kí tự dấu cách (while space). Bảng dưới đây mô tả các kí tự đặc biệt có thể dùng với biểu thức chính quy. Kí ...

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

7 ứng dụng giúp thu gọn URL hữu ích

Trong chúng ta, những ai thường xuyên gửi báo cáo cho khách hàng qua Chatwork hay Slack chắc chắn đều đã từng phải gửi kèm theo những đường link (URL) để khách hàng tham khảo. Tuy nhiên những đường link (URL) thường có text dài loằng ngoằng nên khi gửi cho khách hàng chắc chắn sẽ gây mất thiện ...

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

Reduce trong Ruby

Reduce là một function của Enumerable, tuy nhiên với nhiều Rubyists function này rất ít khi được sử dụng. Mọi người thường sử dụng reduce khi muốn tính tổng. [1, 2, 3].reduce :+ Nhưng từ Ruby 2.4.x trở lên thì chúng ta đã có sum làm việc đó [1, 2, 3].sum Nếu vậy chẳng nhẽ reduce trở lên ...

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

UNCAPTCHA – ĐÁNH BẠI HỆ THỐNG RECAPTCHA ÂM THANH CỦA GOOGLE VỚI ĐỘ CHÍNH XÁC 85%

NGUỒN CẢM HỨNG Trên khắp Internet, hàng trăm nghìn trang web dựa vào hệ thống reCaptcha của Google để phòng chống bot (trên thực tế, Devpost sử dụng reCaptcha khi tạo một tài khoản mới). Sau khi nhóm nghiên cứu của Google chứng minh thất bại hoàn toàn của bản reCaptcha trong năm 2012, hệ thống ...

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

File Storage trong Laravel

Laravel cung cấp một hệ thống tập tin mạnh mẽ trừu tượng nhờ gói Flysystem PHP tuyệt vời của Frank de Jonge. Sự tích hợp Larvell Flysystem cung cấp các trình điều khiển đơn giản để sử dụng với các hệ thống tập tin địa phương, Amazon S3 và Rackspace Cloud Storage. Thậm chí tốt hơn, thật dễ dàng để ...

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

ReactJs - Xây dựng ứng dụng chat và deploy lên web - Phần 1

Ứng dụng này là một web app đơn giản có chức năng chat realtime giữa các người dùng, phần frontend sẽ được xây dựng bằng ReactJs và đây cũng chính là trọng tâm kiến thức mà mình muốn chia sẻ với các bạn. Còn backend sẽ là một server node.js làm nhiệm vụ gửi và nhận tin nhắn giữa các người dùng, tất ...

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

Bắt Đầu với Javascript (P6)

Functions là một trong những khối xây dựng cơ bản trong JavaScript. Một function là một thủ tục JavaScript-một tập hợp các câu lệnh thực hiện một tác vụ hoặc tính toán một giá trị. Để sử dụng một function, bạn phải định nghĩa nó ở đâu đó trong phạm vi mà bạn muốn gọi nó. Trong phần này sẽ tìm hiểu ...

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

Xử lý multi items choice trong Recycler view

Trong khi làm project, sẽ có lúc bạn cần phải xử lý việc lựa chọn nhiều item (multi items choice) từ một list các item. Khi mà số lượng item tăng lên thì một lựa chọn tốt hơn là sử dụng recycler view để chứa các item vì recycler view có cơ chế tái sử dụng (recycle) view nên cho hiệu năng tốt hơn. ...

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

Làm việc với MSSQL trong Ruby với gem Tiny_tds

Trong bài viết này mình xin giới thiệu đến các bạn gem Tiny_tds để làm việc với MSSQL server trong dự án Ruby. Cài đặt. Trước tiên, phải cài đặt FreeTDS , với MacOS thì chỉ cần chạy lệnh đơn giản thế này: brew install freetds Sau khi cài đặt xong thì có thể kiểm tra bằng lệnh tsql -C ...

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

Android Architecture Components: Paging Library

Nhiều ứng dụng của chúng ta cần load rất nhiều data information từ Database. Queries đến Database có thể mất nhiều thời gian và sử dụng rất nhiều bộ nhớ. Do đó Google đã release thư viện mới là Paging Library có thể giúp bạn sử lý vấn đề này. Main component of Paging Library là PagedListAdapter ...

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

Load ảnh SVG từ sever với Androidsvg kết hợp với Glide

Xin chào mọi người, hôm trước mình gặp 1 bài toán là load 1 file ảnh từ sever về và hiển thị lên Imageview. Nhưng ảnh đó lại là ảnh svg. Ngồi hì hục mãi, cứ ngỡ là chỉ cần Glide là có thể load được lên như ảnh thường, lỗi này cũng do mình hơi chủ quan không xem lại document của glide. Sau 1 hồi ...

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

Design Pattern - Decorator

Tiếp tục chủ đề về design pattern, pattern của ngày hôm nay là Decorator, một pattern thuộc nhánh Structural Pattern. Định nghĩa Decorator là gì? Mình xin phép bê nguyên định nghĩa từ wikipedia cho tiện. In object-oriented programming, the decorator pattern is a design pattern that allows ...

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

Giới thiệu về hệ thống gợi ý (Recommender systems hoặc Recommendation systems)

I. Tổng quan về hệ thống gợi ý Hệ thống gợi ý (Recommender systems hoặc Recommendation systems) là một dạng của hệ hỗ trợ ra quyết định, cung cấp giải pháp mang tính cá nhân hóa mà không phải trải qua quá trình tìm kiếm phức tạp. Hệ gợi ý học từ người dùng và gợi ý các sản phẩm tốt nhất ...

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

How to parse HTML file in iOS

Chắc các bạn không còn xa lạ với khái niệm crawler dữ liệu, trên mạng có những trang web chuyên đi lấy dữ liệu của các trang web khác về làm dữ liệu cho trang web của mình, những trang này không tự tạo content mà chuyên đi chôm content từ các trang khác về thành content của trang mình. Cách làm của ...

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

Cài đặt Rails app trên AWS với Elastic Beanstalk và PostgreSQL

Trong bài viết này, sẽ đề cập đến công cụ Elastic Beanstalk của Amazon trong việc cài đặt một app Rails sử dụng database PostgreSQL Amazon đã mô tả Elastic Beanstalk như sau: AWS Elastic Beanstalk makes it even easier for developers to quickly deploy and manage applications in the AWS cloud. ...

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

Action trong Rxswift

Creating an Action Action là một class chung chung được định nghĩa là class Action<Input, Element>. Input là loại dữ liệu đầu vào được cung cấp cho chức năng. Element là loại phần tử được phát ra bởi các hàm trả về. Ví dụ đơn giản nhất của một Action không có input, thực hiện một số công ...

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

Assembly and how compilers work with it

Bài viết này chúng ta cùng tìm hiểu assembly là gì và trình biên dịch tạo ra nó như thế nào. Từ đó làm tiền đề để hiểu cách thức WebAssembly hoạt động. Trong bài viết về JIT, chúng ta đã nói về cách giao tiếp với máy giống như giao tiếp với người ngoài hành tinh. Chúng ta hãy nhìn vào cách não ...

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