45 tips giúp bạn code bá hơn

CHÚ Ý 1 . Bài viết phục các bạn làm việc trực tiếp với Ruby on Rails. CHÚ Ý 2 . Like và thả tim ủng hộ nếu bài viết có ích với bạn. Trong nghề lập trình, có những người code rất tốt, nhìn những dòng code của họ thể hiện sự rõ ràng, mạch lạc và có chút “tinh tế” Vậy làm sao để làm ...

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

Một số lưu ý khi đặt tên hàm tên biến theo chuẩn của apple

Việc đặt tên hàm, tên biến cho chuẩn mực là hết sức quan trọng trong quá trình bảo trì một sản phẩm. Kinh nghiệm, trình độ của một lập trình viên phần nào thể hiện qua cách đặt tên hàm tên biến. Vậy làm thế nào để đặt tên hàm, tên biến cho chuẩn mực? Chúng ta hãy cùng tìm hiểu xem, người thầy của ...

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

Học Javascript part 2

Operators Ở bài viêt này mình sẽ giới thiệu 2 operators là Arithmetic và Equality **1. ** Arithmetic Operators Sử dụng với integers, floating-point numbers hoặc characters. Bao gồm các dạng sau: Phép cộng (+) : console.log("3 + 4 = " + (3 + 4)); // in ra màn hình 3 + 4 = 7 ...

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

BEST RASPBERRY PI HƯỚNG DẪN TỰ ĐỘNG HÓA NHÀ

Raspberry Pi hệ thống tự động hóa nhà dựa trên Internet of Things Internet of Things là công nghệ xu hướng nhất hiện nay mà đứng bên cạnh wearables và robot. Nó là một khái niệm rất đơn giản, nơi các thiết bị trong nhà của chúng tôi hoặc bất cứ nơi nào họ đang có, có khả năng giao tiếp với nhau ...

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

Java concurrency part 1 + part 2

Java platform cung cấp khả năng xử lý multi-threading ở mức low-level, cho phép các developer viết các chương trình chạy song song xử dụng các keywords: synchronized, volatile, wait(), notify() và notifyAll(). Tuy nhiên việc xử lý concurrency ở mức low-level này khó sử dụng khi, hoặc sử dụng không ...

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

Local Storage

1.HTML Local Storage là gì ? Với local storeage web applications có thể lưu trữ dữ liệu tại trình duyệt của user,đây là một tính năng hưu ích trong HTML5 Trước HTML 5,dữ liệu của ứng dụng phải lưu trữ trong cookies,Local Storage thì bảo mật hơn và có thể lưu trữ nhiều dữ liệu mà không ảnh hưởng ...

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

Code Refactoring

Một lần làm xong dự án thì thấy tự dưng phía khách hàng thuê hẳn một "cao nhân" không biết từ đâu về viết lại code cho cả dự án.Kỳ lạ là tên này không hề hiểu nghiệp vụ dự án, cũng chưa từng làm với framework của dự án nhưng vẫn viết lại đống code của dự án ầm ầm.Hỏi ra mới biết là làm refactoring ...

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

Tìm hiểu về OpenGL ES 2.0(tiếp)

Ở phần trước chúng ta đã tìm hiểu sơ lược về OpenGL ES là gì và các khái niệm cơ bản của OpenGL ES 2.0 như Vertex Shader, Primitive Assembly, Rasterization, Fragment Shader.Trong phần tiếp theo này chúng ra sẽ tìm hiểu một ví dụ nho nhỏ có tên "Hello Triangle" nhé. 1.Hello Triangle Dưới ...

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

Cách tạo độ khó cho game

Chơi game cũng là một kĩ năng, nó đòi hỏi trình độ cần thiết để hoàn thành một màn chơi. Chính vì vậy nó có người chơi giỏi và người chơi kém. Do đó khi ta tạo một game, chúng ta cần để ý và nhắm đến kĩ năng của người chơi , các khái niệm “dễ” và “khó” trong màn chơi của ...

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

Phong cách làm việc với khách hàng Nhật - 5W1H

Nhân cơ hội 1 sáng tương đối rảnh, ngồi nghe 2 ông bên cạnh chém gió và tranh cãi nhau về một sản phẩm đang được phát triển. Vấn đề thực ra cũng không phức tạp, chung quy lại chỉ có 1 điểm, chức năng đó có trong sản phẩm hay không và nếu người dùng muốn theo nhu cầu thì cần lắp thêm hay thay thế? ...

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

Android với xác thực SMS tương tự ứng dụng WhatsApp - Phần 2

Trong phần 1 của bài viết này, chúng ta đã học được làm thế nào để tạo ra các API REST cần thiết cho ứng dụng này. Trong phần này chúng ta sẽ xem làm thế nào để xây dựng ứng dụng Android tương tác với các API để nhận được các tin nhắn SMS và xác nhận các tin nhắn đó. Dự án này sẽ sử dụng thư viện ...

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

Khi nào có thể kết thúc việc kiểm thử (Các tiêu chí kết thúc việc kiểm thử phần mềm) Phần 1

Trong bài viết này, tôi muốn giải quyết câu hỏi mà nhiều Tester luôn đặt ra trong mỗi dự án: “ When, where and how to stop Testing? ” 1.Khi nào thì việc kiểm thử là đủ? Để trả lời những câu hỏi này, chúng ta sẽ phải phân tích các hoạt động kiểm thử từ đầu đến cuối. Hãy xem xét ...

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

Redux cho người mới bắt đầu - Part 2 First Project

Mở đầu Tiếp nối bài viết về Redux cho người mới bắt đầu, trong bài viết này chúng ta sẽ cùng nhau thực hiện một Todo app để tìm hiểu cách sử dụng redux trong một project thực tế. Trước khi bắt đầu cùng nhìn lại 1 lần các nhân vật ở kì trước : Setup Trong bài viết này mình sẽ sử ...

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

Bitcode - Vũ khí của Apple

Bitcode một khái niệm không mới, nhưng chắc còn nhiều bạn mơ hồ về khái niệm này. Vậy nó là cái gì? tại sao khi build app (iOS) lại hỏi là có bật bitcode hay không? Bitcode - Về cơ bản thì đây là một thứ cho phép App Store tối ưu hóa ứng dụng cho từng loại thiết bị trước khi chúng được người dùng ...

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

Pagination in Django

Django cung cấp một vài class hỗ trợ bạn trong việc quản lý dữ liệu được phân trang. Điều đó có nghĩa là, dữ liệu sẽ được tách thành nhiều trang cùng với các link "Trước / Sau" ("Previous / Next" link). Bạn có thể xem mô tả của các class này ở file django/core/paginator.py . NOTE : Chú ý, bài ...

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

Xây dựng service cho ứng dụng mobile với ASP.Net Core

Tạo một ứng dụng ASP.Net Core Tạo một ứng dụng ASP.NET Core trong Visual Studio. Chọn Web API và chọn No Authentication Chúng ta sẽ thay đổi cổng mặc định thành 5000 trong file Program.cs như sau: var host = new WebHostBuilder ( ) . UseKestrel ( ) . UseUrls ( ...

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

Gem Warden

1.Rack middleware Trong rails nói đến authenticate mọi người thường nghĩ ngay đến "Gem devise" một công cụ đắc lực vô cùng tuyệt vời cho chức năng này. Nhưng hôm nay, tôi sẽ giới thiệu đến các bạn "Gem warden", một dependency của devise. Để hiểu về warden, chúng ta sẽ bắt đầu với Rack ...

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

Kanban vs Scrum vs XP – an Agile comparison

Scrum là gì? Scrum là một phương pháp quán lý dự án được phát triển bởi Jeff Sutherland và Ken Schwabe vào thập kỷ 90. Scrum chia nhỏ tổ chức ra thành các team. Các team sẽ chia các features thành các task nhỏ để dễ dàng deliver, quản lý một khối lượng công việc trong một khoảng thời gian xác ...

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

Thêm và xóa field với Rails Nested Forms and AngularJS (Phần 2)

Giới thiệu Ở phần trước chúng ta đã thực hiện bược tạo Plan có các field con là Poll bằng AngularJs và Rails. Giả sử khi tạo ta gặp lỗi cần render lại trang new hoặc ta muốn update Plan vừa tạo thì làm sao để các field vẫn được điền đúng giá trị. Chúng ta cùng tìm hiểu trong phần này. Validate ...

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

Tấn công DDos - WPpingback và cách phòng chống

Trong thời gian vừa qua, website của pycon.vn vừa bị tấn công DDOS, cách thức tấn công là sử dụng WPpingback để tấn công. Trong bài viết này, tôi xin đề cập một vấn đề về hình thức tấn công này: giải thích, demo bằng python. hướng khắc phục. Nguyên nhân và lý do: Mời các bạn xem hình sau: ...

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