Trần Ngọc Minh Notes

Stay hungry, stay foolish!

Min Joo

Trần Ngọc Minh

jQuery Mobile: Thanh điều hướng (navigation bar)

Thanh điều hướng Trong bài trước, chúng ta đã làm quen với các nút trên vùng header và footer. Tuy nhiên, với jQuery Mobile, chúng  ta có thể tạo các thanh điều hướng, một công cụ hiệu quả hơn so... Continue Reading →

Programming languages: Python predicted to overtake C and Java in next 4 years

Open-source language Python is already one of the most popular programming languages among developers. It ranks in third place behind mainstays Java and C, according to programming language index Tiobe. Read more >

Java Magazine May/June 2019

May/June 2019 digital edition of Java Magazine is now available. Read more >

Learn git concepts, not commands

An interactive git tutorial meant to teach you how git works, not just which commands to execute. So, you want to use git right? But you don't just want to learn commands, you want to understand what you're using? Then... Continue Reading →

Practical Deep Learning for Coders

Welcome! If you’re new to all this deep learning stuff, then don’t worry—we’ll take you through it all step by step. We do however assume that you’ve been coding for at least a year, and also that (if you haven’t... Continue Reading →

Machine Learning: Một vài khái niệm cơ bản trong thống kê (Statistic)

Thống kê là một phần rất quan trọng trong Machine Learning. Trong bài viết này sẽ đề cập đến các khái niệm cơ bản nhất trong thống kê thông qua các công thức toán học và lập trình dùng Python.... Continue Reading →

CodeNewbie founder talks about her immigrant story and her journey into tech – Podcast Interview

In this week's podcast, I interview Saron about her childhood, and her winding path into tech as an adult. Read more >

Web of Knowledge

A post about software development, history, surveillance, knowledge, and climate change. Read more >

Feynman: Chuyện thật như đùa

Đây là cuốn sách thứ hai của Richard Feynman mà tôi đọc sau khi bị cuốn hút bởi cuốn đầu tiên “Ý nghĩa mọi thứ trên đời”. Và cuốn sách này, giống cuốn đầu tiên, đã không làm tôi thất... Continue Reading →

Discover books recommended by thought leaders

Discover books recommended by thought leaders such as Bill Gates, Barack Obama, Richard Branson, ... Read more >


Visual Studio IntelliCode allows you to add the power of artificial intelligence to your code. Enabling IntelliCode is super easy, and I’m going to show you exactly how to do this. Read more >

Introducing TensorNetwork, an Open Source Library for Efficient Tensor Calculations

Many of the world's toughest scientific challenges, like developing high-temperature superconductors and understanding the true nature of space and time, involve dealing with the complexity of quantum systems. What makes these challenges difficult is that the number of quantum states in these systems is exponentially... Continue Reading →

How to choose which programming language you should learn in 2019

Thanks to the internet, anyone in the world can access world-class resources to learn how to code for little or no money. While that’s great for anyone who wants to become a software developer, it also creates a challenge — especially if... Continue Reading →

TensorFlow: Hàm mất mát (loss function) trong Linear Regression

Hàm mất mát L1 và L2 Một trong các cách tiếp cận dùng để giải quyết bài toán Linear Regression là sử dụng hàm chi phí (cost function) hay cũng có thể gọi  là hàm mất mát (loss function). Để... Continue Reading →

What’s New In DevTools (Chrome 76)

Hello! Here's what's new in Chrome DevTools in Chrome 76. Read more >

Introducing the Try .NET Global Tool – interactive in-browser documentation and workshop creator

If you find yourself learning C# and .NET and come upon the "Run your first C# Program" documentation you may have noticed a "Try the code in your browser" button that lets you work through your first app entirely online,... Continue Reading →

An Exercise Program for the Fat Web

When I wrote about App-pocalypse Now in 2014, I implied the future still belonged to the web. And it does. But it's also true that the web has changed a lot in the last 10 years, much less the last 20 or... Continue Reading →

Advanced Data Structures

Data structures play a central role in modern computer science. You interact with data structures even more often than with algorithms (think Google, your mail server, and even your network routers). In addition, data structures are essential building blocks in... Continue Reading →


Today W3C and the WHATWG signed an agreement to collaborate on the development of a single version of the HTML and DOM specifications. The Memorandum of Understanding jointly published as the WHATWG/W3C Joint Working Mode gives the specifics of this collaboration. This... Continue Reading →

Python in Visual Studio Code – May 2019 Release

We are pleased to announce that the May 2019 release of the Python Extension for Visual Studio Code is now available. You can download the Python extension from the Marketplace, or install it directly from the extension gallery in Visual Studio Code.... Continue Reading →

A new look for Google Search

Our goal with Search always has been to help people quickly and easily find the information that they’re looking for. Over the years, the amount and format of information available on the web has changed drastically—from the proliferation of images... Continue Reading →

TensorFlow: Cholesky Decomposition (Phân tích ma trận Cholesky)

Các thuật toán trong Machine Learning (ML) chia thành 3 nhánh là supervised learning (tạm dịch: học giám sát), unsupervised learning (tạm dịch: hoc không giám sát) và reinforcement learning (tạm dịch: học tăng cường). Linear regression (tạm dịch: Hồi... Continue Reading →


Data science technical interviews, like other technical interviews require plenty of preparation. There are lots of subjects that need to be covered in order to ensure you are ready for a data science interview. Before we get started. We want... Continue Reading →

Introducing new ways to keep your code secure

We’re all part of a deeply interconnected community, where the software we write builds on the work of others. Ninety-nine percent of new software projects depend on open source code. This extensive code reuse helps everyone build better software faster... Continue Reading →

Internet of Things and the Modern Web

Home Assistant is world's biggest open-source home automation platform. It supports over 1000 devices and services, and it is used everywhere: homes, boats and museums. Today I want to talk about our UI, what we're trying to solve and how we solve it. Before we dive into... Continue Reading →

Sử dụng Git và GitHub trong Visual Studio (từ 2017 trở lên)

Làm quen với Git và GitHub Tải và cài Git (https://git-scm.com/ ) Tạo tài khoản GitHub (https://github.com/ ) Học GitHub cơ bản https://guides.github.com/activities/hello-world/ Học Git cơ bản https://git-scm.com/docs/gittutorial Kết nối đến tài khoản GitHub từ Visual Studio Mở dự án... Continue Reading →

Sử dụng Git và GitHub trong Android Studio 3.X

Làm quen với Git và GitHub Tải và cài Git Tạo tài khoản GitHub Học GitHub cơ bản Học Git cơ bản Kết nối đến tài khoản GitHub từ Android Studio Mở ứng dụng cần chia sẻ File > Settings... Continue Reading →

Always deliver your very best, always check

We created this collaborative space for sharing checklists that help ensure software quality, guide you through crisis and other helpful stuff for devs 😉 Read more >

Systems Thinking as important as ever for new coders

I was at the Microsoft BUILD conference last week and spent some time with a young university student who came prepared. I was walking between talks and he had a sheet of paper organized with questions. We sat down and went through... Continue Reading →

Đại gia Gatsby

Giấc mơ Mỹ và “Đại gia Gatsby” Nhà văn Francis Scott Key Fitzgerald (1896 - 1940) được xem là một trong những tác giả văn học lớn nhất thế kỷ 20, thành viên của “Thế hệ Lạc loài” (Lost Generation).... Continue Reading →


Python Tutor (created by Philip Guo) helps people overcome a fundamental barrier to learning programming: understanding what happens as the computer runs each line of code. Read more >

PHP in 2019

Do you remember the popular "PHP: a fractal of bad design" blog post? The first time I read it, I was working in a crappy place with lots of legacy PHP projects. This article got me wondering whether I should... Continue Reading →

Các tiểu trình (threads) và lớp AsyncTask trong Android

Khái niệm tiểu trình (thread) là một trong những khái niệm nền tảng giúp chúng ta hiểu được các dịch vụ Android (Android services) - là các tiến trình (processes) chạy ngầm và không có giao diện người dùng (xem... Continue Reading →

Introducing TensorFlow Graphics: Computer Graphics Meets Deep Learning

The last few years have seen a rise in novel differentiable graphics layers which can be inserted in neural network architectures. From spatial transformers to differentiable graphics renderers, these new layers leverage the knowledge acquired over years of computer vision... Continue Reading →

TensorFlow: Kiểu dữ liệu (data types) và Lazy loading

Kiểu dữ liệu Giống như Python, TensorFlow cũng trang bị cho mình một tập hợp các kiểu dữ liệu dùng cho các mục đích khác nhau. Bảng dưới đây trình bày các kiểu dữ liệu trong TensorFlow: Các kiểu dữ... Continue Reading →

Kotlin is now Google’s preferred language for Android app development

Google today announced that the Kotlin programming language is now its preferred language for Android app developers. “Android development will become increasingly Kotlin-first,” Google writes in today’s announcement. “Many new Jetpack APIs and features will be offered first in Kotlin. If you’re starting a... Continue Reading →

Intelligent Productivity and Collaboration, from Anywhere

Developers today are encountering an overwhelming amount of complexity due to the growing emphasis on time-to-market, and a broader variety of technologies being used than ever before (e.g. polyglot apps, microservices). Additionally, teams are becoming more geographically distributed, which increases the... Continue Reading →

Introducing .NET 5

Today, we’re announcing that the next release after .NET Core 3.0 will be .NET 5. This will be the next big release in the .NET family. There will be just one .NET going forward, and you will be able to use it... Continue Reading →

jQuery Mobile: header và footer

Header Trong các bài viết trước về jQuery Mobile, chúng ta có thể dễ dàng thêm header của trang dùng thuộc tính data-role trong thẻ div như sau: Kết quả Chúng ta có thể làm cho header đẹp hơn bằng... Continue Reading →

What do companies expect from Python devs in 2019?

Jointly with our team, we took 300 job specs for Python developers, scrapped from StackOverflow, AngelList, LinkedIn, and the websites of some fast-growing tech companies worldwide. From all these descriptions, we extracted the skills which were mentioned the most frequently,... Continue Reading →

Getting to Know Python 3.7: Data Classes, async/await and More!

If you're like me, or like many other Python developers, you've probably lived (and maybe migrated) through a few version releases. Python 3.7(.3), one of the latest releases, includes some impressive new language features that help to keep Python one... Continue Reading →

Mindset – The new psychology of success

Khái niệm quan trọng nhất của cuốn sách là Mindset. Mindset chẳng qua là 1 tập hợp các niềm tin tồn tại trong đầu óc chúng ta. Các niềm tin này có thể là tích cực hay tiêu cực về... Continue Reading →

TensorFlow: Các hàm toán học, vector và ma trận

Các hàm toán học cơ bản Khi làm việc với machine learning, chúng ta phải thực hiện rất nhiều các thao tác toán học như cộng, trừ, nhân, chia, lũy thừa, v.v. TensorFlow cung cấp một tập hợp các hàm... Continue Reading →

Computer Graphics from scratch

This book will not teach you how to use OpenGL or DirectX; instead, it can teach you how OpenGL and DirectX work. In practice you won’t write a software renderer for production use, but understanding how and why a renderer works will let... Continue Reading →

Web Components will replace your frontend framework

Remember when document.querySelector first got wide browser support and started to end jQuery's ubiquity? It finally gave us a way to do natively what jQuery had been providing for years: easy selection of DOM elements. I believe the same is... Continue Reading →

jQuery Mobile: các thuộc tính data-title, data-prefetch và data-transition

Thuộc tính data-title Sao chép các đoạn mã từ tập tin test.htm trong bài liên kết và hiệu ứng Ajax và lưu thành tập tin jQueryMobileDemo.html, sử dụng lại tập tin contact.html. Thực thi tập tin jQueryMobileDemo.html vừa tạo trong... Continue Reading →

Ten Lessons I Learned While Teaching Myself to Code

I learned a ton, and now I very frequently write code to help me in my job as a journalist and book author. I’ve written little scripts and programs that make my work and personal life easier. I’ve also discovered... Continue Reading →

Steve Jobs – Những bí quyết đổi mới và sáng tạo

Cải cách, đổi mới, sáng tạo Cải cách – đổi mới – sáng tạo cùng có nghĩa chung là phương pháp làm việc mới đem lại sự thay đổi tích cực. Nó làm cho cuộc sống tốt đẹp hơn. Chuyên... Continue Reading →

7 web development practices challenged

There are many myths in the software business that have led to wrong best practices. In this post I will address 7 of these best practices and explain on which wrong assumptions they are based. I'm worried about the state... Continue Reading →

Best JavaScript Bloggers To Follow In 2019

Here I simply list the authors that I think are very good at writing about JavaScript. They are all strong personalities, achievers and what’s the most important JavaScript community influencers. Feel free to put everyone on this list into your favorite RSS... Continue Reading →

CS224n: Natural Language Processing with Deep Learning

Natural language processing (NLP) is one of the most important technologies of the information age, and a crucial part of artificial intelligence. Applications of NLP are everywhere because people communicate almost everything in language: web search, advertising, emails, customer service,... Continue Reading →

Gimli: A Visual Studio Code extension enabling smart visual tools for front-end developers.

Unlike other visual development platforms, Gimli is targeted towards front-end developers. Gimli is not a “no-code” solution. Instead it tries to combine visual tools often found in “no-code” solutions with your Visual Studio Code development environment. Read more >

Tensor, biến (variable) và placeholder

Tensor Đơn vị cơ bản trong TensorFlow là các tensor. Một tensor là một vec tơ hay một ma trận - chẳng qua là một danh sách các vectơ. Các tensors có thể được khai báo với các biến hay... Continue Reading →

Bạn không cần jQuery nữa đâu

Ngày nay, môi trường lập trình front-end phát triển rất nhanh chóng, các trình duyệt hiện đại đã cung cấp các API đủ tốt để làm việc với DOM/BOM. Bạn không còn cần phải học về jQuery nữa. Đồng thời,... Continue Reading →

Lập trình cơ sở dữ liệu trong Android (Phần 2) – Content Provider

Content Provider trong Android Ở phần 1, chúng ta đã tìm hiểu cách lưu trữ dữ liệu của một ứng dụng trong cơ sở dữ liệu SQLite. Trong trường hợp này, dữ liệu là “tài sản riêng” của ứng dụng... Continue Reading →

Machine Learning: Full-Text Search in Javascript (Part 1: Relevance Scoring)

Full-text search, unlike most of the topics in this machine learning series, is a problem that most web developers have encountered at some point in their daily work. A client asks you to put a search field somewhere, and you... Continue Reading →

Kubernetes Learning Resources

Resources for learning Kubernetes: https://docs.google.com/spreadsheets/d/10NltoF_6y3mBwUzQ4bcQLQfCE1BWSgUDcJXy-Qp2JEU/htmlview

All you need to know about hyphenation in CSS

Earlier this month I was invited to give an evening lecture at the Typography Society of Austria (tga) in Vienna. I was honoured to do so, as it meant following in the footsteps of such luminaries as Matthew Carter, Wim Crouwel, Margaret... Continue Reading →

The RedMonk Programming Language Rankings: January 2019

This iteration of the RedMonk Programming Language Rankings is brought to you by IBM. From Java to Node.js, IBM remains at the forefront of open source innovation. Try our code patterns to help build the future of open source. Read more >

Suy tưởng

Marcus Aurelius Antoninus Marcus Aurelius Antoninus (121 -180): Hoàng đế La Mã từ năm 161 – 180, là người cuối cùng trong năm vị vua hiền của đế quốc La Mã. Cuốn Suy tưởng của ông được coi là một... Continue Reading →

jQuery Mobile: các liên kết và hiệu ứng Ajax

Hiệu ứng Ajax Trong tập tin test.html ở bài Thêm nhiều trang đến một tập tin HTML dùng jQuery Mobile, chúng ta đã tổ chức nhiều trang trong cùng một tập tin và thực hiện liên kết giữa các trang... Continue Reading →

Java Magazine: March / April 2019

In this issue, we examine three leading frameworks for microservices: Javalin, which is a very lightweight, unopinionated web framework; Micronaut, which handles all feature injection at compile time and so loads extremely fast; and Helidon, which is a cloud native... Continue Reading →

Web scraping with Electron

Web scraping is a technique for extracting content from websites in order to archive data in a structured way. Be careful, however, to respect the terms of use of the website concerned. Read more >

Web Design 3.0: When Your Web Design Really Matters

We love web design, and it is our passion. Web design is a part of our life. Since 2000, we have watched what is happening in the web design world every day. We are involved in the web design process,... Continue Reading →

Learning to Learn

There’s been a lot of talk recently about whether or not you need a degree to be in tech (spoiler: you don’t). But please don’t take this to mean you don’t need any kind of education to be in tech,... Continue Reading →

Infer.NET – Thư viện dành cho những người đam mê xác suất

Khi nói tới Machine Learning (ML) chúng ta thường nghĩ tới ngôn ngữ Python hay R và các thư viện liên quan như TensorFlow, Keras, Scikit-Learn, v.v. Nhưng những người chuyên sử dụng các ngôn ngữ của Microsoft như C#... Continue Reading →

JSON with Sqlite

The json1 extension (currently) stores JSON as ordinary text. Backwards compatibility constraints mean that SQLite is only able to store values that are NULL, integers, floating-point numbers, text, and BLOBs. It is not possible to add a sixth "JSON" type.... Continue Reading →

GrapesJS: Free and Open Source Web Builder Framework

GrapesJS is an open-source, multi-purpose, Web Builder Framework which combines different tools and features with the goal to help you (or users of your application) to build HTML templates without any knowledge of coding. It's a perfect solution to replace... Continue Reading →

Trực quan hóa dữ liệu dùng TensorBoard

Khi làm việc với TensorFlow, trong nhiều trường hợp, chúng ta cần trực quan hóa dữ liệu dưới dạng các hình ảnh, lược đồ, sơ đồ, v.v. để có thể hiểu dữ liệu, sửa lỗi, và tối ưu chương trình... Continue Reading →

Trí tuệ giả tạo – Internet đã làm gì chúng ta

Dấu hiệu thay đổi Mở đầu cuốn sách, tác giả Nicholas Carr đã có những trăn trở: Vào khoảng năm 2007, một ý nghĩ nghi ngờ vào thiên đàng thông tin của tôi. Tôi bắt đầu nhận ra mạng internet... Continue Reading →

Seven Myths in Machine Learning Research

We present seven myths commonly believed to be true in machine learning research, circa Feb 2019. Read more >

Summary: How to Start a Startup (YC)

How to Start a Startup (YC) >

Reinforcement Learning [Ebook]

An introduction to Reinforcement Learning. Download PDF >

Nhập môn TensorFlow

Giới thiệu TensorFlow là thư viện Machine Learning mã nguồn mở được Google giới thiệu năm 2015. Kể từ thời điểm đó đến nay, TensorFlow đã phát triển với tốc độ chóng mặt và trở thành thư viện ML phổ... Continue Reading →

Thêm nhiều trang đến một tập tin HTML dùng jQuery Mobile

Dùng data-role và id Trong bài Phân vùng với jQuery Mobile, chúng ta đã làm quen với thuộc tính data-role giúp việc phân vùng hiệu quả hơn với jQuery Mobile. Thuộc tính data-role cũng hữu ích trong việc thêm nhiều... Continue Reading →

Refactoring: Improving the Design of Existing Code (Phần 4)

Move Method Giả sử chúng ta có lớp Phanso chứa các thành phần của một phân số như sau (C#): Để hiển thị một phân số, chúng ta có thể viết mã như sau trong phương thức Main: Ở đây, chúng... Continue Reading →

33 chiến lược của chiến tranh

Chiến tranh, bên cạnh nghĩa đen mà ai cũng biết, hàm ý về những xung đột hiếu chiến trong cuộc sống hàng ngày mà chúng ta không thể làm ngơ hay kiềm chế được. Điều chúng ta cần không phải... Continue Reading →

Tôi là ai – và nếu vậy thì bao nhiêu?

Tôi là ai? Nếu bạn đã từng say mê với cuốn tiểu thuyết lịch sử triết học phương Tây “Thế giới của Sophie” thì cuốn sách Tôi là ai -  và nếu vậy thì bao nhiêu? là một nhập môn... Continue Reading →

Refactoring: Improving the Design of Existing Code (Phần 3)

Extract Method Một chương trình được hình thành bởi rất nhiều các phương thức (method) và đối tượng đầu tiên chúng ta cần tập trung là các phương thức chứa nhiều lệnh. Refactoring các phương thức chứa nhiều lệnh nghĩa... Continue Reading →

Animating CSS Grid

Sử dụng các thuộc tính grid-template-columns và grid-template-rows của CSS Grid trong Firefox Nightly https://codepen.io/ngocminhtran/pen/GPVKNw Source: css-irl.info

Microsoft recommends switching to iPhone or Android as it prepares to kill off Windows phones

Microsoft says anyone who still uses its Windows 10 mobile platform — once called Windows Phone — should switch over to an iPhone or an Android phone. A change to the Windows 10 Mobile support page was first spotted by... Continue Reading →

Blockchain Theory

COSC 841: Doctoral Seminar: Blockchain Theory (Spring 2019) Georgetown University Prof. Calvin Newport Tuesday, 2:00 to 3:40 pm Car Barn 170 (subject to change) Read more >

Phân vùng với jQuery Mobile

Thuộc tính data-role Một trong những lưu ý quan trọng khi thiết kế một trang web dùng ngôn ngữ HTML là phải chú ý phân vùng. Điều này không những giúp người thiết kế web có thể dễ dàng trong... Continue Reading →

Nghệ thuật tinh tế của việc “đếch” quan tâm

Quá trình tự nhận thức Việc tự nhận thức giống như một củ hành có nhiều lớp bên trong. Lớp vỏ đầu tiên của củ hành tự nhận thức là sự hiểu biết đơn giản về cảm xúc của một... Continue Reading →

Refactoring: Improving the Design of Existing Code

Refactoring: Improving the Design of Existing Code (Phần 2)

Testing Trước khi bắt đầu Refactoring, chúng ta phải xây dựng những chương trình có thể kiểm tra và phát hiện các lỗi của chương trình một cách nhanh chóng và hiệu quả. Như vậy, có 3 bước cốt lõi... Continue Reading →

PHP Apprentice – An online book for learning PHP

PHP Apprentice is an online, open source book about the PHP programming language. PHP is one of the most popular platforms for building websites and web services. It is a great language that is easy to learn and allows you... Continue Reading →

Refactoring: Improving the Design of Existing Code (Phần 1)

Giới thiệu Thế giới phần mềm luôn thay đổi với tốc độ chóng mặt và những người gia nhập thế giới lập trình có một danh sách dài các việc cần làm để trở thành một nhà lập trình thực... Continue Reading →

New year, new GitHub: Announcing unlimited free private repos and unified Enterprise offering

Today we’re announcing two major updates to make GitHub more accessible to developers: unlimited free private repositories, and a simpler, unified Enterprise offering. Read more >

Sử dụng thư viện jQuery Mobile

Giới thiệu Giao diện web hiện đại phải có khả năng thay đổi theo kích thước màn hình từ máy tính bàn (desktop) đến máy tính bảng (tablet) và điện thoại di động (smartphone) – tức là responsive web.  Bạn... Continue Reading →

Những người tiên phong (The Innovators)

Giới thiệu Trong khoảng hơn một thập kỷ tính từ đầu những năm 1970, mạng và máy vi tính cá nhân phát triển độc lập với nhau. Đến cuối thập kỷ 80, chúng mới bắt đầu xích lại gần nhau... Continue Reading →

Nhập môn CodePen

Giới thiệu Nếu bạn đang làm việc hay học thiết kế web ở mức front-end thì CodePen là môi trường hấp dẫn giúp bạn có thể học hỏi và chia sẻ kiến thức một cách hiệu quả. Giao diện CodePen... Continue Reading →

Advancing AI (MSDN Magazine January 2019)

If you’ve been reading MSDN Magazine the past couple years, you know we’ve aggressively pursued artificial intelligence (AI) and machine learning (ML) as topics of inquiry. From early introductions to Cognitive Services in 2016, to in-depth explorations of the ML.NET... Continue Reading →

Microsoft totally changed how it interviews software developers to make sure candidates have the actual skills to do the job

Under the five-year reign of CEO Satya Nadella, Microsoft has made major strides in reforming its once-cutthroat corporate culture — an effort that's even seeped into how it interviews software developers. John Montgomery, partner director of program management at Microsoft,... Continue Reading →

CS 188 | Introduction to Artificial Intelligence Fall 2018

This course will introduce the basic ideas and techniques underlying the design of intelligent computer systems. A specific emphasis will be on the statistical and decision-theoretic modeling paradigm. By the end of this course, you will have built autonomous agents... Continue Reading →

A Recap of Frontend Development in 2018

The world of frontend development moves fast. Very fast. This article will recap the most important frontend news, notable events, and trends in JavaScript for 2018. Read more >

Magic Grid – A simple, lightweight Javascript library for dynamic grid layouts.

Creating a dynamic grid layout has never been easier. With Magic Grid, all you have to do is specify a container and listen for changes. A few other configuration options are available for convenience but it's all very simple. Read... Continue Reading →

How To Be a Programmer: A Short, Comprehensive, and Personal Summary

To be a good programmer is difficult and noble. The hardest part of making real a collective vision of a software project is dealing with one’s coworkers and customers. Read and download PDF >

TensorFlow Lite is for mobile and embedded devices

TensorFlow Lite is the official solution for running machine learning models on mobile and embedded devices. It enables on‑device machine learning inference with low latency and a small binary size on Android, iOS, and other operating systems. Read more >

Grow Your Technical Skills with Google

Whether you’re a student or an educator, newer to computer science or a more experienced coder, or otherwise interested in software engineering, we hope there’s something for you here in Google’s Guide to Technical Development. We’ve carefully curated a collection... Continue Reading →

A-Frame – A web framework for building virtual reality experiences

A-Frame can be developed from a plain HTML file without having to install anything. Read more >

Sapiens – Lược sử loài người

Câu chuyện lịch sử Cuốn sách là câu chuyện về lịch sử loài người, được kể lại một cách hấp dẫn và lôi cuốn bởi nhà nghiên cứu lịch sử Yuval Noah Harari, và bản tiếng Việt được dịch một... Continue Reading →

Introduction to Applied Linear Algebra – Vectors, Matrices, and Least Squares

This book is used as the textbook for the course EE103 (Stanford) and EE133A (UCLA), where you will find additional related material. If you find an error not listed in our errata list, please do let us know about it. Read more >

Introduction to A*

In games we often want to find paths from one location to another. We’re not only trying to find the shortest distance; we also want to take into account travel time. Move the blob  (start point) and cross  (end point) to see... Continue Reading →

Teaching and Learning with Jupyter

This handbook is for any educator teaching a topic that includes data analysis or computation in order to support learning. It is not just for educators teaching courses in engineering or science, but also data journalism, business and quantitative economics,... Continue Reading →

Announcing WPF, WinForms, and WinUI are going Open Source

Buckle up friends! Microsoft is open sourcing WPF, Windows Forms (winforms), and WinUI, so the three major Windows UX technologies are going open source! All this is happening on the same day as .NET Core 3.0 Preview 1 is announced. Madness! 😉 Read more... Continue Reading →

A Programmer’s Introduction to Mathematics

If you’re a programmer who wants to learn math, this book is written specifically for you! Why? Because programming and math are naturally complementary, and programmers have a leg up in learning math. Many of the underlying modes of thought... Continue Reading →


This site hosts the lessons for LearnDB, a project that teaches you how to create a database system from scratch with Node.js and JavaScript. Read more >

How to balance full-time work with creative projects

A guide to finding the right day job, protecting your time, and building creative habits by Jeffrey Silverstein, with illustrations by Sunny Eckerle. Read more >

The Hundred-Page Machine Learning Book

This book is distributed on the “read first, buy later” principle. I strongly believe that paying for the content before consuming it is buying a pig in a poke. You can see and try a car in a dealership before... Continue Reading →

Thư viện Machine Learning cho nhà phát triển .NET

Giới thiệu Các thư viện Machine Learning (ML) như TensorFlow, Keras , CNTK hay PyTorch sử dụng ngôn ngữ Python làm nền tảng và rất khó cho các ứng dụng .NET có thể truy cập đến các thư viện này. Vì vậy, các... Continue Reading →

Java Magazine Nov/Dec 2018

Read Java Magazine November/December 2018 >

Lập trình cơ sở dữ liệu trong Android (Phần 1)

Hệ quản trị SQLite SQLite là hệ quản trị cơ sở dữ liệu quan hệ giống các hệ khác như SQL Server, MySQL, Oracle, v.v. Các hệ quản trị như SQL Server, MySQL, Oracle, v.v. là các hệ xử lý... Continue Reading →

The Convergence of Blockchain, Machine Learning, and the Cloud


Tensorflow 2.0: models migration and new design

Tensorflow 2.0 will be a major milestone for the most popular machine learning framework: lots of changes are coming, and all with the aim of making ML accessible to everyone. These changes, however, requires for the old users to completely... Continue Reading →

Let’s build the future of the web

With actionable guidance and analysis, web.dev helps developers like you learn and apply the web's modern capabilities to your own sites and apps. Read more >

Ý nghĩa mọi thứ trên đời

Một cuốn sách mỏng (hơn 150 trang) với tham vọng đi tìm ý nghĩa mọi thứ trên đời. Tác giả cuốn sách, Richard Feynman, là một thiên tài Vật lý kiệt xuất của thế kỷ 20. Ông nổi tiếng không... Continue Reading →

The Road to GraphQL [Book]

Today, I am super excited to announce the release of The Road to GraphQL - Your journey to master pragmatic GraphQL in JavaScript with React.js and Node.js. Writing this book proved to be a challenge with GraphQL technologies changing often,... Continue Reading →

Programming Paradigms for Dummies: What Every Programmer Should Know (PDF)

This chapter gives an introduction to all the main programming paradigms, their underlying concepts, and the relationships between them. We give a broad view to help programmers choose the right concepts they need to solve the problems at hand. Read... Continue Reading →

16 Blogs On Engineering Management And Leadership You May Not Know About

The following blogs are all from previous guests on managersclub.com. You may not know about all these blogs but they are based on the real-life experience of engineering managers. Many of these are on medium so you can easily follow... Continue Reading →


Ericsson 1993 notes that many major writers or researchers prioritized writing by making it the first activity of their day, often getting up early in the morning. This is based largely on writers anecdotally reporting they write best first thing... Continue Reading →


Broadcast Intent Một dạng khác của Intent, gọi là Broadcast Intent, là một hệ thống Intent được gởi đến tất cả các ứng dụng đã đăng ký Broadcast Receiver. Ví dụ, hệ thống Android sẽ gởi các Broadcast Intent để... Continue Reading →


Intent ngầm định (implicit intent) Trong bài trước chúng ta đã tìm hiểu về Intent tường minh (explicit intent) – một cơ chế đòi hỏi chúng ta phải xác định rõ tên lớp Activity cần giao tiếp. Trong bài này... Continue Reading →


Intent Intent là cơ chế cho phép các Activity có thể giao tiếp với nhau. Có hai dạng intent là intent tường minh (explicit intent) và intent ngầm định (implicit intent). Trong bài này chúng ta sẽ khám phá kiểu... Continue Reading →

Deep Learning Book Series · Introduction

This content is part of a series following the chapter 2 on linear algebra from the Deep Learning Book by Goodfellow, I., Bengio, Y., and Courville, A. (2016). It aims to provide intuitions/drawings/python code on mathematical theories and is constructed as my... Continue Reading →

These tools will help you write clean code

Learning to write good code, but you don’t know where to start… Going through style-guides like Airbnb’s Javascript Style Guide… Trying to write code with best practices... Read more >

Tạo và quản lý thực đơn tùy chọn (overflow menus) trong Android

Thực đơn tùy chọn (the oveflow menu) Thực đơn tùy chọn (thường được gọi là overflow menu hay options menu) là thực đơn cho phép người dùng truy cập từ thiết bị và cho phép các nhà phát triển gộp... Continue Reading →

Is WebAssembly faster than JavaScript?

Most programs running on web sites are written in JavaScript. There are still a few Java applets and other plugins hanging around, but they are considered obsolete at this point. Read more >

Building web accessibility for 2019

Today’s web content is amazingly rich. It varies from standard HTML to complex web apps full of media; such as animation, data visualization, video games, mixed reality and VR, to name a few. Such content is often inaccessible or poorly... Continue Reading →

What does Stack Overflow want to be when it grows up?

I sometimes get asked by regular people in the actual real world what it is that I do for a living, and here's my 15 second answer: We built a sort of Wikipedia website for programmers to post questions and... Continue Reading →

Bill Gates – Tham vọng lớn lao và quá trình hình thành đế chế Microsoft

Tôi quyết định đọc cuốn sách này khi nghe tin Paul Allen – đồng sáng lập Microsoft – qua đời vào ngày 15/10/2018. Nếu là người sử dụng máy tính thì không ai không biết đến Microsoft với các sản... Continue Reading →

Lại một người hùng nữa ra đi

Paul Allen - đồng sáng lập Microsoft - đã qua đời ngày 15/10/2018. Sau Stephen Hawking, Steve Jobs, lại một người hùng của tôi nữa đã ra đi. Là đồng sáng lập Microsoft, Paul Allen và Bill Gates là một trong... Continue Reading →

Fragments trong Android

Fragment là gì? Fragment trong Android là cơ chế cho phép chúng ta thiết kế các ứng dụng Android theo phương pháp mô-đun – nghĩa là thiết kế giao diện và các tính năng chỉ một lần và sử dụng... Continue Reading →

Ngôn ngữ MarkDown

Việc viết các nội dung web bằng ngôn ngữ HTML luôn gây khó khăn cho những người chưa từng được học ngôn ngữ này, thậm chí nếu là những web developers thì cũng cảm thấy khó chịu khi phải cố... Continue Reading →

The 2018 DevOps RoadMap

An illustrated guide to becoming a DevOps Engineer with links to relevant courses. Read more >

On Learning to Code (for 2019)

In the last 5 years there has been a push for people to learn to code and pursue software engineering as a career. Read more > 

Phát hiện cử chỉ người dùng với lớp Android Gesture Detector

Cử chỉ (gesture) là các hoạt động tương tác giữa người dùng và màn hình thiết bị Android bao gồm các hoạt động chạm ngắn (tap), lướt các trang sách điện tử (swipe), phóng to hay thu nhỏ các hình... Continue Reading →

Đúng việc

Công việc của bất kỳ ai trong đời cũng bao gồm làm người, làm dân và làm việc. Lựa chọn của mỗi người trong từng công việc đó sẽ làm nên cuộc đời họ. Bởi lẽ, con người thì khác... Continue Reading →

Sự kiện và xử lý sự kiện touch (chạm) và multi-touch (đa chạm) trong Android

Hầu hết các thiết bị Android có màn hình dùng cảm ứng đa điểm (cuộc cách mạng từ iPhone). Với các màn hình cảm ứng đa điểm, người dùng sẽ tương tác với thiết bị Android thông qua thao tác... Continue Reading →

Microsoft is embracing Android as the mobile version of Windows

Microsoft unveiled a bunch of Surface hardware during a press event in New York City last night. While matte black Surfaces, headphones with Cortana, and a new Surface Studio were the highlights of the hardware side, Microsoft unveiled an interesting change to... Continue Reading →

Java 11 Released

Java 11 has arrived. The new release is the first planned appearance of Oracle's long-term support (LTS) releases, although Oracle has also grandfathered in Java 8 as an LTS release to help bridge the gap between the old release model... Continue Reading →

Android Studio 3.2

Today, Android Studio 3.2 is available for download. Android Studio 3.2 is the best way for app developers to cut into the latest Android 9 Pierelease and build the new Android App bundle. Since announcing this update of Android Studio at Google I/O '18,... Continue Reading →

Sự kiện và xử lý sự kiện trong Android

Android framework duy trì một hàng đợi chứa các sự kiện khi chúng xuất hiện. Để xử lý các sự kiện, Android dùng các trình lắng nghe sự kiện (event listeners) để lắng nghe các sự kiện và dùng phương... Continue Reading →

Thiết lập và nhận thông tin từ các Android views

Như trong bài Các views cơ bản và trong giao diện ứng dụng Android, khi thêm các views đến giao diện chúng ta luôn thiết lập giá trị cho thuộc tính ID – thuộc tính quan trọng dùng để nhận... Continue Reading →


Chúng ta đã quá quen thuộc với Button qua các bài trước. Mục đích chính của một Button là cho phép người dùng thực hiện một nhiệm vụ nào đó bằng cách nhấn chuột trái vào Button này. Có 3... Continue Reading →


Cho phép người dùng hiển thị các tập tin hình ảnh trên các thiết bị Android. Giống như các views đã đề cập ở trên, ImageView có thể được sử dụng theo 3 cách: Kéo từ mục Common hay Widgets... Continue Reading →


Cho phép người dùng chọn một trong hai tùy chọn hay trạng thái. Switch có thể được dùng theo 3 cách: Kéo từ mục Button của thanh công cụ Palette đặt vào giao diện và thay đổi các thuộc tính... Continue Reading →


Cho phép người dùng chọn một giá trị từ một tập hợp các giá trị cho trước. Spinner có thể được dùng theo 3 cách: Kéo từ mục Containners của thanh công cụ Palette đặt vào giao diện và thay... Continue Reading →

RadioButton và RadioGroup

Cho phép người dùng chỉ có thể chọn một tùy chọn tại một thời điểm. Các RadioButton cùng nhóm phải được tổ chức trong một RadioGroup. RadioButton và RadioGroup có thể được dùng theo 3 cách: Kéo từ mục Buttons... Continue Reading →

Powered by WordPress.com.

Up ↑

%d bloggers like this: