
Guide cho Senior Engineer trong việc hướng dẫn người mới
Đây là bài dịch, bài gốc mời các bạn xem ở đây: http://silverwraith.com/blog/2017/10/the-senior-engineers-guide-to-helping-others-make-decisions Một trong những việc mà tôi thấy các Senior Engineer hay mắc phải, đó là giúp đỡ Junior Engineer tiến bộ . Lý do cho việc này, thông thường là do ...

Typescript: Class, Interface & chúng khác gì với class, interface trong C#, Java (!?)
OK. Từ trước tới giờ, nếu ai đã từng viết Javascript thì sẽ biết rằng: không giống như rất nhiều các ngôn ngữ lâp trình phổ biến hiện nay, Javascript không có khái niệm về Interface cũng như Class (update: khái niệm Class mới được đưa vào JS kể từ ES6) . Typescript, ngôn ngữ do hãng ...

Query Performance Optimization
Giới thiệu Ở các bài viết trước mình có giới thiệu qua các một số cách để tăng hiệu năng trong mysql(ví dụ: sử dụng index, thiết kế schema). Tuy nhiên như thế vẫn chưa đủ, để cho hiểu năng tốt hơn nữa thì việc cần làm là thiết kế các câu truy vấn một cách hợp lí và tối ưu nhất. Cho dù bạn có ...

Tạo Rest API với spring boot + mysql + jpa repository
Spring Boot là một dự án khá nổi bật trong hệ sinh thái Spring Framework. Nếu như trước đây, công đoạn khởi tạo một dự án Spring khá vất vả từ việc khai báo các dependency trong file pom.xml cho đến cấu hình bằng XML hoặc annotation phức tạp, tạo server cấu hình spring mvc, thì giờ đây với Spring ...

Các vấn đề về bảo mật trong các ứng dụng Web
Lần này tôi sẽ chia sẻ với các bạn về các vấn đề bảo mật trong các mô hình ứng dụng web và có sự chuẩn bị thực tiễn để tránh gặp phải chúng. Tôi hy vọng bài viết này sẽ giúp ích cho các lập trình viên hiểu rõ hơn về một số vấn đề xuất hiện đến 80% các ứng dụng ngày nay. Password Hasing Rất ...

Lập trình C cho hệ thống nhúng (P9- Standby Function- Stop mode trong V850E)
1. Khái niệm Ở trong phần trước mình đã giới thiệu về HALT mode và IDLE mode trong chức năng Standby funtion của V850E . Trong bài viết này mình sẽ tiếp tục giới thiệu về STOP Mode của chức năng này. STOP mode là mode sẽ dừng tất cả các hoạt động của các mạch bên trong ngoại trừ những tính ...

10 smart tricks hackers use to steal your cryptos
Dưới đây là một vài trick mà hacker dùng để đánh cắp private key của bạn (thông tin cần thiết cho việc đánh cắp cryptos của bạn) 1. Copy and paste Giả sử bạn nhìn thấy một địa chỉ mà bạn muốn chuyển một vài bitcoin vào đó. Bạn copy và paste địa chỉ đó vào trong ví của bạn. Nghe thì không có ...

Kiến thức nghiệp vụ phần 2: Hệ thống quản lý bán hàng
Nghiệp vụ quản lý bán hàng là phần quan trọng nhất trong mô hình vận hành một doanh nghiệp. Thường bao gồm những bộ phận chính như bên dưới: Quản lý tổng thể( Master Management) Quản lý đơn đặt hàng đã nhận( Received Order Management) Quản lý bán hàng( Sales Management) Quản lý đơn đặt ...

queue trong laravel
Cấu hình File cấu hình được lưu trong config/queue.php. Trong file này bạn sẽ muốn tìm cấu hình kết nối cho mỗi queue drivers được đi kèm với framework, bao gồm database, Beanstalkd, Amazon SQS, Redis, và synchronous driver (để sử dụng local). nếu không muốn thực hiện queue job thì để driver là ...

Quản lý Cronjobs với Laravel
Bài dịch từ trang developer.telerik.com Đôi khi ứng dụng của bạn cần chạy các nhiệm vụ quản trị theo định kỳ trên máy chủ. Cho dù bạn muốn gửi email cho người dùng của mình hoặc clean database tables vào cuối ngày, bạn sẽ cần một cơ chế lập lịch trình nhiệm vụ để làm các việc đó. Cron là một ...

Decorator in Rails
Khái niệm Decorator Như chúng ta đã biết, hệ thống RoR được xây dựng dựa trên mô hình MVC, trong đó: Model có vai trò xử lí logic và dữ liệu View nhận trách nhiệm hiển thị dữ liệu Controller là nơi trung gian điều phối dữ liệu, cầu nối giữa model và view Theo lí thuyết, model thường là nơi ...

Safe Area Layout Guide iOS 11 (Part 2)
Lời tựa Trong bài viết về iOS 11: Safe Area Layout Guide và Large Titles tháng trước, mình đã đề cập qua về Safe Area Layout Guide, trong phần này mình sẽ điểm qua một số vấn đề chúng ta gặp phải đối với Safe Area Layout Guide trên chiếc iPhone X - một flagship của Apple năm 2017. Cùng nhìn qua ...

Layout trong Android và cách sử dụng
1. Giới thiệu Để thiết kế được một UI trong android, điều chắc chắn là các bạn phải biết cách sắp xếp (layout) các phần tử view. Bài viết này sẽ giới thiệu ra một số loại layout cơ bản và thường sử dụng trong Android. 2. LinearLayout LinearLayout sẽ xếp các phần tử View con theo 2 dạng là ...

File upload using Paperclip
Ở bài trước Handling file upload using Ruby on Rails 5 API chúng ta đã cùng nhau tiềm hiểu về chủ đề "Gửi các dữ liệu JSON cơ bản được tạo ra từ các strings đến một API", và ở phần trước chúng ta đã làm việc với gem Carrierwave, tuy nhiên mình cũng có đọc một số bài trên Viblo và vẫn thấy thiếu ...

Thực hiện test website bán hàng online
Có thể nói trong khoảng 7 năm trở lại đây, đã thực sự bùng nổ một cuộc cách mạng mua sắm online mạnh mẽ. Việc có cửa hàng gần như không quan trọng bằng việc có website bán hàng. "Không gian" mua sắm không chỉ gói gọn trong 1 khu vực địa lý nữa mà trải dài trên toàn cầu. Người tiêu dùng có thể dễ ...

Tìm hiểu mô hình TDD (Test - Driven Development)
Test-driven development (TDD) là một cách tiếp cận để phát triển kết hợp test đầu tiên. Bạn sẽ viết test trước khi bạn viết đầy đủ code để hoàn thành việc test và refactoring. Mục tiêu của TDD là một cách suy nghĩ để thông qua các yêu cầu hoặc thiết kế trước khi viết code các chức năng của hệ hống ...

Waterfall vs Agile vs Scrum - Part 5: Agile vs Scrum
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: Agile có thực hiện phù hợp với outsource và các dự án offshore Phần 7: Kết hợp mô hình waterfall và scrum để thích nghi với các dự án ...

Làm ứng dụng nghe nhạc đơn giản với Rails và Amazon S3
Xin chào các bạn, trong bài viết hôm nay, mình sẽ giới thiệu với các bạn cách làm một trang web nghe nhạc, tải nhạc trực tuyến, lưu trữ nhạc trên dịch vụ s3 của amazon. Chúng ta cùng bắt đầu nhé. I. S3 là gì? Amazon S3 is "storage for the Internet". Đây là câu nói ngắn gọn nhất giải thích về ...

Why Swift Enums with Associated Values Cannot Have a Raw Value
Một enumeration — short,một enum - là một tập hợp các giá trị riêng biệt mà bằng cách nào đó thuộc về nhau, ví dụ một danh sách các sân bay: enum Airport { case munich case sanFrancisco case singapore } Theo truyền thống, mỗi trường hợp enum chỉ là nhãn cho giá trị Integer. Các ...

Action view trong rails
Sau khi đọc xong bài này mọi người sẽ nắm được: Action View là gì và cách sử dụng chúng Làm thế nào để sử dụng template, particals và layouts một cách tốt nhất Các hepler được cung cấp bởi Action View Cách sử dụng localized views Trong rails, các request sẽ được handle bởi Action ...