Kiểu biến In và Out của Kotlin
Nếu bạn đã từng định nghĩa generic trong Kotlin, bạn sẽ để ý nhiều lần, nó sẽ đề xuất sử dụng từ khoá in và out để định nghĩa generic. Nó khiến chúng ta bắt đầu bối rối khi sử dụng, vậy tại sao? Đây chính là cách để định nghĩa contravariance và covariant . In và Out Out (covariant type) ...
Regular Expressions: RegEx không hề khó như những gì bạn thấy (II)
Bài viết này là phần tiếp theo của phần trước. 3. Lặp lại phép match để tìm ký tự lặp lại Giả sử bạn được cho một chuỗi, và bài toán cho bạn là tìm hiểu xem liệu có ký tự nào bị lặp lại trong string không. Đây là giải pháp cho cho ký tự lặp lại ngay sau lần xuất hiện đầu tiên: let e=/(w)1/; ...
Android Telephony Api thực hiện gọi điện và giám sát cuộc gọi
Trong bài lần này mình sẽ giới thiệu cho các bạn các về Telephony Api của Android với các ý sau: Tạo cuộc gọi trên thiết bị android Giám sát cuộc gọi đến và đi từ thiết bị. Trong android để tạo cuộc gọi bạn có thể sử dụng intent với 2 action là ACTION_DIAL và ACTION_CALL. Cả 2 actino này ...
Two Factor Authentication with Laravel 5
1. Giới thiệu Xác thực hai yếu tố (2FA), thường được gọi là Xác minh hai bước, là một quá trình bảo mật trong đó người dùng cung cấp hai yếu tố xác thực để xác minh họ là ai. Xác minh hai bước cung cấp thêm một lớp bảo mật khiến cho kẻ tấn công khó truy cập vào thiết bị và tài khoản trực ...
Developer nên trả lời thế nào cho câu hỏi "Hãy giới thiệu về bản thân" trong khi phỏng vấn?
Một trong những câu hỏi quen thuộc mà developer thường đụng phải trước tiên trong các buổi phỏng vấn đó là: Câu hỏi cân não #1: Hãy giới thiệu về bản thân mình / Hãy nói cho chúng tôi nghe về bạn? Bất cứ câu hỏi nào được đặt ra từ Nhà Tuyển Dụng, Người Phỏng Vấn (Recruiter/Interviewer) cũng ...
Tìm hiểu về Scout trong Laravel
Laravel Scout cung cấp một giải pháp đơn giản , dựa trên các giải pháp để tìm kiếm full-text cho Eloquent trong models của bạn. Sử dung model quan sát, Scout sẽ tự động giữ những chỉ mục tìm kiếm của bạn đồng bộ với các bản ghi trong Eloquent . Hiện nay, Scout đi kèm với Algolia driver. Tuy ...
[Android] Firebase invites
I.Giới thiệu Firebase cái tên đã quá quen thuộc với các bạn rồi nhỉ. Nhắc đến Firebase người ta hay nghĩ về Firebase Authentication, Firebase Realtime Database, Firebase Storage ... các tiện ích rất tiện lợi đầy mạnh mẽ và thiết thực. Nhưng với cái tên Firebase Invites thì mọi người không thấy ...
Software Project Process: Kanban
Phần 1: Agile là gì? Phần 2: Waterfall là gì? Phần 3: Scrum là gì? Phần 4: Agile vs Waterfall. Con đường nào phù hợp với bạn Phần 5: Agile vs Scrum. Phần 6: Kanban Ở công ty thấy có dự án các bạn ấy dùng Kanban, một cách triển khai agile nên tôi thử tìm hiểu xem sao. What Is Kanban? Kanban ...
Tổng quan về Kotlin, "Swift của lập trình viên Android"
Kotlin là một ngôn ngữ lập trình mới từ JetBrains. Nó xuất hiện lần đầu tiên vào năm 2011 khi JetBrains công bố một dự án mới có tên là "Kotlin". Giống như Swift, Kotlin là một ngôn ngữ mã nguồn mở. Giống như Java, C, và C++, Kotlin cũng là một ngôn ngữ kiểu tĩnh, "statically typed programming ...
Rails hosting: Heroku hay AWS?
Đây là bài dịch, bài gốc mời các bạn xem ở đây: https://rubyroidlabs.com/blog/2017/02/heroku-aws Lựa chọn giữa Amazon Web Services và Heroku để lưu trữ ứng dụng của là một câu hỏi phổ biến dành cho developer. Hãy cùng tìm hiểu xem đâu là lựa chọn phù hợp. Khi ứng dụng gần hoàn thành, đến ...
Swift Codable With Custom Dates
Làm cách nào để bạn decode một file JSON có nhiều định dạng ngày khác nhau? Nếu bạn may mắn bằng cách sử dụng một dateDecodingStrategy có thể là đủ. Thật không may, nó có hỗ trợ giới hạn cho định dạng .iso8601 và bạn chỉ có thể thiết lập một giải pháp tại một thời điểm vì vậy nó không giúp ...
Mã xấu (Code Smells) và Refactor hướng đến người lập trình chuyên nghiệp
Khi mới bắt đầu làm quen về lập trình việc đầu tiên tôi hướng đến là việc thực thi của đoạn lệnh mình vừa tạo ra cùng kết quả mình mong muốn, mà quên đi việc làm sao cho đoạn lệnh đó được sử dụng sau này, và tôi luôn phải tự mình mò mẩn trong đống code mình vừa tạo ra và tự hỏi bản thân "method này ...
Developer nghĩ gì về JavaScript năm 2017
Đây là bài dịch, bài gốc mời các bạn xem ở đây: https://medium.freecodecamp.org/i-just-asked-23-000-developers-what-they-think-of-javascript-heres-what-i-learned-9a06b61998fa Gần đây, tôi đã công bố kết quả của cuộc khảo sát JavaScript hàng năm cho năm 2017, được thu thập từ hơn 23.000 ...
Oauth 2 authentication
Chắc nhiều bạn đã nghe đến khái niệm oauth. Về cơ bản thì oauth là một phương thức chứng thực, mà nhờ đó một web service hay một application bên thứ 3 có thể đại diện cho người dùng để truy cập vào tài nguyên người dùng nằm trên một dịch vụ nào đó. Các trào lưu cũng như sự lan rộng của khái ...
Tích hợp realtime database trong Firebase vào Android
Firebase là một dịch vụ API để lưu trữ và đồng bộ dữ liệu real-time (thời gian thực). Điều này có nghĩa là bạn không cần phải lo lắng về backend server, cơ sở dữ liệu, hay các thành phần real-time (socket.io). Firebase hoạt động trên nền tảng đám mây được cung cấp bởi Google nhằm giúp các lập ...
Sử dụng công cụ fio và IOPing để kiểm tra khả năng hoạt động của ổ cứng
Một trong những yếu tố ảnh hưởng đến hiệu suất hoạt động của server hay PC đó là tốc độ đọc/ghi của ổ cứng. Có rất nhiều công cụ được sử dụng để kiểm tra tốc độ đĩa cứng, ví dụ như lệnh "dd", tuy nhiên "dd" không chỉ ra rõ được thi tiết về khả năng hoạt động của ổ cứng. Ở đây chúng ta sẽ có một ...
Xử lí N+1 với polymorphic associations
Chắc mọi người đã quá quen thuộc với vấn đề N+1 và dùng eager loading để xử lí, nhưng hôm trước mình có gặp một trường hợp hơi rắc rối đó là xử lí eager loading polymorphic associations , google thì cũng ra được một cách, không biết có phải là hay nhất hay ko, nhưng cũng xin phép chia sẻ với mọi ...
Download file pdf in Rails with gem pdfkit
1. Giới thiệu Download file pdf là 1 tính năng được nhiều người ưa chuộng, nó thuận tiện để in các biên lai, hay các thông tin về order,.. Hôm nay mình sẽ giới thiệu cách export ra file pdf bằng gem PDFKit trong rails. Đây là link github của của gem PDFKit 2. PDFKit Add gem PDFKit in rails ...
Một vài tips sử dụng Sublime Text
Sublime Text 3 là một text editor khá mới, tuy miễn phí mà mạnh mẽ, hỗ trợ rất nhiều tính năng thú vị. Các điểm mạnh của Sublime Text có thể kể đến như: Miễn phí (thực ra là bản unregistered, thỉnh thoảng hiện sẽ ra pop-up thông báo bạn đang dùng thử và nhắc bạn mua bản chính thức nhưng bạn có ...
Cây tiền tố trong ruby
Cây tiền tố (prefix tree hay còn gọi là trie) là một cấu trúc dữ liệu giúp bạn tổ chức một danh sách các từ và cho phép tìm kiếm nhanh chóng một từ bắt đầu bằng một tiền tố cụ thể. Ví dụ bạn có thể tìm kiếm tất cả các từ trong từ điển mà bắt đầu bởi ca như cat hay cape. Hãy xem hình mẫu dưới đây: ...