Các loại Subject trong RxSwift

1. Khái niệm: Subject trong RxSwift hoạt động như vừa là một Observable , vừa là một Observer . Khi một Subject nhận một .next event thì ngay lập tức nó sẽ phát ra các emit cho các subscriber của nó. 2. Khái quát: Trong RxSwift, chúng ta có 4 loại Subject với các cách thức hoạt động ...

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

Tìm hiểu Event trong Laravel

Xin chào anh em, cũng đã khá lâu mình mới lại viết bài chia sẻ về những điều thú vị trong Laravel. Để tiếp tục series Laravel và những điều thú vị này , hôm nay mình sẽ cùng tìm hiểu và chia sẻ về Event trong Laravel nhé. Event là sự kiện , là một hành đông hay một tác vụ nào đó xả ra ở một ...

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

Học nghề lập trình phần mềm

Trong bài viết “Dạy lập trình hiện nay rất tệ: Tại sao chúng ta cần quay lại cách đào tạo 1.000 năm về trước”, Rob Walling đã đưa ra một lý lẽ để thuyết phục ngành giáo dục nên từ bỏ kiểu đào tạo truyền thống thiên về lý thuyết và chuyển qua đào tạo theo hình thức học ...

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

Thống kê nhanh 6 hướng đi cho lập trình viên

Đây là một bản thống kê ngắn gọn của Free Code Camp với hơn 15000 lượt tương tác. Trong đó có 6503 lập trình viên mới vào nghề trả lời câu hỏi “Bạn chọn con đường nào cho sự nghiệp của mình? Đây là 6 hướng đi phổ biến nhất Full-stack developer Front-end ...

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

Ba lý do các Mobile Marketers nên vui mừng vì Pokemon Go

Trước cơn sóng ào ạt của trò chơi thực tế ảo – Pokemon Go, trang info.localytics.com đã tổng hợp 3 lý do tại sao các Mobile Marketers nên vui mừng vì sự thành công của Pokemon Go. Trên tất cả, đây cũng chính là những kinh nghiệm quý báu để các dev app tận dụng tối đa tất cả tiềm năng ...

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

SendGrid - Dịch vụ MAIL

1. Dịch vụ Mail - SendGrid API là gì? SendGrid là 1 trong những dịch vụ nổi tiếng trong việc cung cấp email giao dịch (transaction email). Sendgrid cung cấp giải pháp email dựa trên nền tảng đám mây thay thế cho hệ thống email truyền thống của bạn, do đó bạn không cần phải xây dựng, quy mô và ...

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

Linux bắt nguồn từ đâu ?

1. Mở đầu Linux, chắc hẳn đây là cái tên mà nhiều bạn đã biết tới, nhưng xung quanh đó vẫn còn nhiều khái niệm mơ hồ và nhiều điều chưa được tường tận, có phải nó là một hệ điều hành không ? Đặc biệt, đối với nhiều người dùng phổ thông, đây lại là một cái gì đó huyền bí, nhất là màn hình ...

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

Nếu cho rằng nỗ lực sao chép Snapchat Facebook thật vụng về, bạn không biết chuyện gì đang xảy ra rồi

Từ trước đến nay, Zuckerberg chưa bao giờ phản ứng nhẹ nhàng trước cạnh tranh cả. Có vẻ như Facebook đã chính thức tuyên chiến Snapchat Facebook cần phải cướp đi từng người dùng một nếu muốn cản bước tiến của Snapchat. Bởi lẽ đó, việc các tính năng sao chép của Facebook ...

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

Xuất bản ứng dụng trong Java

Các bạn có biết một trong những công việc mà chúng ta cần phải thực hiện khi đã xây dựng hoàn chỉnh một ứng dụng (phần mềm) là gì không? Đó là xuất bản ứng dụng này thành file .exe để người dùng cuối (end-user) có thể dễ dàng sử dụng mà không cần quan tâm nó được viết ra như thế nào. ...

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

Lỗi code khiến Google Doc chặn kết nối từ nhiều người dùng

GOOGLE vừa mới fix một lỗi của Doc, vốn ngăn cản người dùng truy cập tài liệu của họ trong vòng 24 giờ vừa qua. Lỗi xuất hiện khi vài Google Docs user phát hiện ra mình bị khóa không được phép truy cập vào các file Doc mà không hề nhận được bất kì lời cảnh báo nào ngoại trừ ...

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

Tìm hiểu candeactive trong angular 5 và ứng dụng handle khi click nút back của trình duyệt

Xin chào mọi người, hôm nay mình xin được chia sẻ với các bạn làm thế nào để handle sự kiện ấn nút back của broswer. Ví dụ khi ấn nút back của trình duyệt sẽ hiện lên một modal để xác nhận yes/no. Để làm được việc này chúng ta cần sử dụng candeactive. 1. Tìm hiểu candeactive. Candeactive sẽ ...

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

Họp stand-up có thực sự cần thiết ?

Nếu đã từng làm việc trong các dự án được quản lý theo phương pháp Agile, có lẽ ai cũng quen thuộc với khái niệm stand-up meeting . Hãy lắng nghe thử 1 chia sẻ cá nhân của 1 product manager về vấn đề này nhé. Hiện tại tôi là 1 technical product manager quản lý 1 đội ngũ kỹ sư bên dưới. ...

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

PSR-1: Chuẩn viết code cơ bản

Các file PHÁI dùng các thẻ <?php và <?= . Các file PHẢI dùng duy nhất UTF-8 không BOM cho code PHP . Các file NÊN hoặc định nghĩa kí hiệu (lớp, hàm, hằng số, vv.) hoặc đưa ra tác dụng (e.g. sinh ra output, thay đổi .ini settings, vv.) nhưng KHÔNG NÊN làm cả 2. Các ...

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

Lập trình viên có nên làm thêm giờ thường xuyên không?

Luôn có quá nhiều công việc phải hoàn thành trong các dự án phần mềm, quá nhiều chức năng cần thực hiện, quá nhiều lỗi để fix. Sẽ có những ngày bạn ko bắt kịp tiến độ trong backlog, thiếu thời gian để code, hay chật vật với những bugs siêu khó. Thậm chí, bạn phải phung phí thời gian ...

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

Tạo một Scrollable UIStackView sử dụng Auto Layout trong Swift

Như tiêu đề của bài viết, chúng ta sẽ từng bước tạo ra một Scrollable UIStackView sử dụng Auto Layout Mục tiêu của bài viết: Làm quen với UIScrollView để tạo ra một scrollable UI hiệu quả Xây dựng UI sử dụng Auto Layout thông qua code. Giờ ta sẽ đi vào chi tiết các bước thực hiện để tạo ra ...

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

Cách bind list dữ liệu tới RecyclerView với Android Data Binding

Với ứng dụng phát triển theo mô hình MVVM, Android Data Binding là cách tốt nhất để cập nhật dữ liệu đến giao diện người dùng. Nếu bạn chưa biết hoặc chưa từng sử dụng Android Data Binding, Bạn có thể tham khảo về nó ở link chính thức của Google developer về Android Data Binding ở đây: Data Binding ...

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

PSR-2: Hướng dẫn mẫu code đẹp

Hướng dẫn này là mở rộng của PSR-1, tiêu chuẩn code cơ bản. Mục đích của hướng dẫn này là nhằm giảm thiểu sự không khớp nhau giữa các tác giả khi biên dịch code, bằng cách đặt ra các quy chuẩn và kỳ vọng khi định dạng code PHP. Các quy tắc về phong cách ở đây có nguồn gốc từ sự tương đồng giữa ...

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

[Laravel 5.6] HTTP session

Giới thiệu Từ khi các ứng dụng lập trình có sử dụng giao thức HTTP trở lên "stateless" hơn, thì session cung cấp một cách để lưu trữ thông tin của các user qua nhiều request. Để giải thích cho từ "stateless", mình cũng phải đi lần mò theo kiểu what does stateless mean? Rồi, http stateless what ...

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

Background Execution Limits

Bất cứ ứng dụng nào khi chạy dưới background đều sử dụng một lượng resource nhất định (vd: RAM). Điều này có thể ảnh hưởng xấu đến trải nghiệm người dùng, đặc biệt với những app sử dụng một lượng lớn resource như game hoặc xem video. Để cải thiện vấn đề này, android 8.0 áp đặt một số giới hạn cho ...

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

Một số điều bạn nên biết khi sử dụng và thiết kế DB

Làm nghề lập trình chắc chắn ai cũng từng làm việc với Database . Đặc biệt là Back-end những người làm việc và tương tác trực tiếp với Database . Nhưng vẫn có những điều về Database ta không biết đến hoặc có những điều ta đang dùng nhưng không biết tại sao ta lại dùng như vậy. Bài viết này ...

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