banner top | SORE TODAY STRONG TOMORROW

ĐỪNG SỢ

Quá khứ, hiện tại và tương lai + Việc quản lí dự án + Qui trình đơn giản cho dự án nhỏ + Mười năm tới (2p) + Ngôn ngữ máy tính cho mọi lứa tuổi + Công nghệ và tương lai + Dạy trong thời đại thay đổi + Chia sẻ kinh nghiệm + Cơ hội tương lai + Học khoa học máy tính

 Quá khứ, hiện tại, và tương lai

27/04/2018

Nếu chúng ta nhìn lại các thế kỉ quá khứ, chúng ta có thể thấy rằng yếu tố chính trong việc thiết lập ra xã hội ngày nay đã dựa trên nền tảng của hệ thống giáo dục. Trước thế kỉ 17, giáo dục bị giới hạn cho những người ưu tú phần lớn là tu sĩ và người trong hoàng tộc, những người còn lại phần lớn là “vô giáo dục.”


Bắt đầu từ cuối thế kỉ 17 và thế kỉ 18, đã có một phong trào trong các nhà trí thức đòi hỏi giáo dục tốt hơn cho mọi người. Các học giả lịch sử đã gọi thời đó là “Kỉ nguyên Khai sáng” vì những cách nhìn mới dùng khoa học và triết học làm bằng chứng để thách thức cách nghĩ truyền thống rằng “Chỉ tu sĩ và người trong hoàng tộc có thể được giáo dục.” Nhà triết học lớn John Locke và Jean Jacques Rousseau đã viết các bài báo đòi hỏi rằng giáo dục phải được dạy cho mọi người về cách đọc và viết để cho họ có thể nghĩ cho bản thân họ đối ngược với “thiên kiến tôn giáo” nào đó được những người ưu tú đặt ra, người kiểm soát họ. Phong trào này lan rộng khắp châu Âu một cách nhanh chóng khi nhiều người bắt đầu nhận ra quyền lợi của họ đối với giáo dục và hoài nghi lại cách nghĩ truyền thống.
Trong quá khứ, mọi trường đều bị kiểm soát và vận hành bởi các tu sĩ, nhưng nhiều nhà trí thức đã mở trường riêng của họ để lan toả niềm tin của họ rằng hệ thống giáo dục mới hội tụ vào khoa học và triết học có thể giúp hiện đại hoá chuẩn sống cho người châu Âu. Khi nhiều người hơn có thể đọc được, đã có nhu cầu tăng lên về tài liệu được in ra. Khi nhiều sách được in ra và nhiều người biết cách đọc, đã có nhu cầu mới về nhiều sách hơn trong các chủ đề khác hơn là khoa học và triết học. Khi nhiều người bắt đầu diễn đạt tình cảm của họ trong việc viết, nhiều tiểu thuyết văn chương và thơ ca được tạo ra, điều làm nảy sinh một thời đại mới có tên “Thời đại Lãng mạn.”

Bắt đầu vào cuối thế kỉ 18 và đầu thế kỉ 19, đã có phong trào thiết lập “trường công” cho mọi người. Bên cạnh việc dạy mọi người đọc và viết, chương trình đào tạo cũng bao gồm các môn học phụ như toán học, vật lí, hoá học, và sinh học v.v. Tất nhiên, mục đích không phải là đào tạo mọi học sinh trở thành các nhà toán học, nhà vật lí, nhà hoá học, hay nhà sinh học nhưng người lãnh đạo giáo dục vào thời đó đã nhận ra nhu cầu để mọi người hiểu các khái niệm cơ bản của các khoa học này để đóng góp cho nền kinh tế đang tăng trưởng nhanh của họ, chủ yếu là ở Anh, Pháp, Đức, Áo, Hungary, và Nga.

Khi nền kinh tế của châu Âu tăng trưởng, một số nước đã tiến bộ lên và thu được nhiều sức mạnh hơn, họ cần lực lượng lao động có kĩ năng cao để hỗ trợ cho tăng trưởng kinh tế của họ. Chẳng hạn, họ không thể tăng sức mạnh của họ mà không có công nhân có kĩ năng trong toán học để hỗ trợ cho các ngân hàng và thể chế tài chính của họ. Họ không thể xây dựng được những con tàu lớn để dùng trong cuộc chinh phục và chiếm thuộc địa của họ mà không có công nhân có kĩ năng trong kĩ nghệ, vật lí và hoá học. Chung cuộc, hệ thống giáo dục đã được tổ chức thành nhiều mức: Tiểu học, Trung học và Đại học với chương trình đào tạo chuẩn bao gồm nhiều môn học như chúng ta biết ngày nay.

Khi chúng ta nhìn lại trong lịch sử, chúng ta có thể thấy rằng mọi cường quốc vào thời đó (Tây Ban Nha, Anh, Pháp, và Đức v.v.) đã có hệ thống giáo dục tuyệt hảo đã tạo ra nhiều nhà khoa học, kĩ sư v.v nhưng mọi nước đã rơi vào sự chi phối của họ và trở thành thuộc địa của họ thậm chí đã không có hệ thống giáo dục tốt tại chỗ. Ngay cả Trung Quốc, với truyền thống tốt về giáo dục, cũng đã không điều chỉnh và thích nghi với những thay đổi mới và bị xâu xé bởi các cường quốc này. Duy nhất Nhật Bản sau khi bị mất mặt trong thế kỉ 19 đã nhận ra ích lợi của hệ thống giáo dục hiện đại. Hoàng đế đã ra lệnh thay đổi chính trong hệ thống giáo dục để hội tụ nhiều hơn vào khoa học và đã tăng trưởng nhanh chóng thành cường quốc khác trong đầu thế kỉ 20.

Quan niệm rằng hệ thống giáo dục là nền tảng của xã hội và sự phòng thủ quốc gia vẫn còn hợp thức ngày nay như nó đã vậy trong quá khứ. Ngày nay, nơi mọi thứ được kết nối và được dẫn lái bởi công nghệ, mọi nước cần cải tiến hệ thống giáo dục của họ bằng việc bổ sung môn học mới: Công nghệ thông tin. Chúng ta đang sống trong thế giới được dẫn lái bởi công nghệ và bị tác động bởi công nghệ và có lực lượng lao động kĩ thuật có kĩ năng là yếu tố then chốt cho thịnh vượng kinh tế. Hơn bao giờ hết, giáo dục đang đóng vai trò chính trong việc hình thành lực lượng lao động được cần.

Khi chúng ta đang chuyển nhanh hướng tới tương lai, điều bản chất là mọi người nên biết cách dùng máy tính và công cụ của nó. Cũng giống như trong quá khứ, mọi người phải biết cách đọc, viết và thực hiện phép tính số học cơ bản, để được chuẩn bị cho việc làm của thế kỉ 21, mọi học sinh hiện thời và tương lai phải được giáo dục trong Công nghệ thông tin và có kĩ năng trong Khoa học máy tính. Điều chúng ta cần là hệ thống giáo dục mới và các thầy cô có phẩm chất để làm cho điều đó xảy ra.


—English version—

The past, the present, and the future


If we look back to the past centuries, we can see that the major factor in establishing today’s society was based on the foundation of the education system. Before the 17thcentury, education was limited to the elites mostly the priests and  royals, the rest of people were mostly “uneducated.”


Beginning in the late 17th century and the 18th century, there was a movement among the intellectuals demanding a better education for the people. Historical scholars called that time “The Age of Enlightenment” because of the new views using science and philosophy as evidence to challenge traditional ways of thinking that “Only the priests and royals can be educated.” The great philosophers John Locke and Jean Jacques Rousseau had written articles demanding that education must be taught to everybody on how to read and write so they can think for themselves against certain “religious biases” set up by the elites who control them. This movement spread across Europe rapidly as more people began to realize their right to an education and question the traditional ways of thinking. In the past, all schools are controlled and operated by priests, but many intellectuals opened their own schools to spread their belief that a new education focused on science and philosophy can help modernize the standard of living  for European people. As more people can read, there was an increasing demand for printed materials. As more books were printed and more people know how to read, there was a new demand for more books in different subjects than science and philosophy. As more people began to express their feeling in writing, more literary novels and poetry were created which gave rise to a new age called “The Age of Romanticism.”


Beginning in the late 18th and early 19th century, there was a movement to establish “Public schools” for everybody. Besides teaching people to read and write, the curriculum also included additional subjects such as mathematics, physics, chemistry, and biology etc. Of course, the goal was not training every student to become a mathematician, physicist, chemist, or biologist but the education leaders at that time recognized the need for people to understand the basic concepts of these sciences to contribute to their fast-growing economy, mostly in Britain, France, Germany, Austria, Hungary, and Russia.


As the European’s economy was growing, some countries were advancing and gaining more power, they need a highly skilled workforce to support their economic growth. For example, they could not grow their power without having skilled workers in mathematics to support their banks and financial institutions. They could not build large ships to use in their conquest of other countries and establish colonies without skilled workers in engineering, physics, and chemistry. Eventually, the education system was organized into several levels: Elementary, High school, and College with the standard curriculum consist of several subjects as we know today.


As we look back in history, we can see that all the powerful countries at that time (Spain, Britain, France, and Germany etc.) had an excellent education system that produced many scientists, engineers etc. but all countries that fell under their domination and became their colonies did not even have a good education system in place. Even China, with a good tradition in education, failed to adjust and adapt to new changes and being torn apart by these powerful countries. Only Japan after being humiliated in the 19th century realized the benefit of a modern education system. The emperor ordered a major change in their education to focus more on science and grew quickly to be another powerful nation in the early 20th century.


The notion that education system is the foundation of the society and the defense of a country remains as valid today as it was in the past. Today, where everything is connected and driven by technology, every country need to improve their education system by adding a new subject: Information Technology. We are living in a world driven by technology and impacted by technology and having a skilled technical workforce in is the key factor for economic prosperity. More than ever, education is playing a major role in shaping the needed workforce.


As we are moving towards the future, it is essential that everybody should know how to use the computer and its tools. Just like in the past, people should know how to read, write and perform basic arithmetic , to be prepared for the jobs of this 21st century, all current and future students must be educated in Information Technology and having skills in Computer Science. What we need is a new education system and qualified teachers to make it happens.


https://science-technology.vn/?p=5815

===

Việc quản lí dự án

09/07/2013

Quản lí dự án phần mềm là việc khó: Là người quản lí dự án, bạn phải lấy được yêu cầu từ khách hàng, lịch biểu kế hoạch, tài nguyên và thiết kế tất cả các đường găng, các cột mốc, các hạn chót để chắc chắn rằng bạn đáp ứng yêu cầu cũng như tạo ra các kiểm thử nội bộ, kiểm thử chấp nhận. Bạn cũng ban hành các chỉ dẫn, thiết lập các giao thức thông tin, báo cáo trạng thái, họp và giải quyết lỗi, vấn đề, tình huống khẩn trương và mọi tài liệu. Tuy nhiên, sau nhiều năm quản lí cả các dự án nhỏ và lớn, tôi có thể nói rằng nhân tố quan trọng nhất đem dự án tới thành công là “vấn đề nhân lực”.

Theo kinh nghiệm riêng của tôi, phần lớn các dự án phần mềm không bao giờ đi theo đúng kế hoạch bởi vì khách hàng bao giờ cũng thay đổi các yêu cầu nhưng không bao giờ thay đổi lịch biểu hay chi phí. Họ bao giờ cũng phàn nàn rằng dự án phần mềm bị chậm, đắt và không cung cấp cho họ điều họ muốn. Tuy nhiên, phần lớn dự án tôi quản lí bao giờ cũng thành công đầy đủ, tới mức độ nào đó, bởi vì những yếu tố  “nhân lực” trong những dự án đó. Đó là lí do tại sao tôi nghĩ nhân lực là khía cạnh quan trọng nhất của tất cả các dự án phần mềm.

Khi dự án lâm vào vấn đề nghiêm trọng, phương pháp hay công cụ quản lí tốt nhất sẽ không có ích bởi vì chúng không được thiết kế để giải quyết loại vấn đề này. (Không công cụ nào có thể sửa chữa được phàn nàn của khách hàng và phương pháp quản lí được dạy trong đại học không bao quát các vấn đề về thay đổi yêu cầu – Bao nhiêu giáo sư đã từng thay đổi bài tập lớn cho học sinh?) Chỉ những người tận tuỵ, cam kết, có tính đổi mới cao với năng lực, kinh nghiệm và tri thức của họ mới có thể giúp bạn giải quyết được những vấn đề này.

Tôi không nói rằng chỉ nhân lực tốt mới làm cho các dự án phần mềm thành công nhưng không có nhân lực tốt thì dự án không thể được thực hiện. Tôi đã thấy nhiều nhân viên làm việc cần mẫn để sửa chữa vấn đề không đòi hỏi bao nhiêu ngày trong tuần hay bao nhiêu giờ trong ngày, nếu cần thì từ 14 tới 16 giờ là chuyện thường lệ.  Họ sẽ thảo luận về điều được cần tới và điều có thể được thực hiện để giúp cho người quản lí dự án của họ tránh thất bại. Một số người có thể làm việc nhiều tuần để sửa hệ thống quan trọng nhất khi nó bị hỏng. Nhiều người ít ngủ hay không ngủ chút nào mà không phàn nàn gì. Cho nên để đảm bào thành công, người quản lí phải hỏi câu hỏi: Tôi phải tìm những người như thế ở đâu đây?

Câu trả lời là ở trong hành vi của bạn bởi vì chính người nhân viên giỏi  sẽ tìm người quản lí xứng đáng để làm việc cùng chứ không theo cách khác. Phần lớn các bài giảng về quản lí không bao giờ đề cập tới việc khen thưởng hành vi tốt đẹp bạn muốn được lặp lại bởi vì phương pháp của người quản lí ít ảnh hưởng tới nhân viên và hành vi của họ. (Phần lớn các giáo sư chẳng bao giờ làm việc trong công nghiệp hay đòi có người làm việc cho họ để cho họ ra lệnh chứ không phải là khen thưởng hay thừa nhận) cho nên họ dạy rằng bạn là ông chủ và có quyền đòi hỏi nhân viên làm việc cần mẫn hơn và nhiều hơn thay vì hiểu rằng việc bó buộc đó không đem tới hành vi tốt nhất của nhân viên.

Để là người quản lí tốt, đặc biệt là người quản lí phần mềm bạn phải hỏi:

1)           Tôi có phải cảm ơn những người làm việc tốt không?

2)           Cá nhân tôi có nên viết bức thư ngắn hay email “cám ơn” mọi người về hiệu năng của họ không?

3)           Tôi có nên áp dụng hiệu năng của nhân viên làm cơ sở cho đề bạt không?

4)           Cá nhân tôi có nên thừa nhận công khai hiệu năng tốt của mọi người không?

5)           Tôi có nên tổ chức họp tôn vinh sự thành công của các nhân viên không?

6)           Tôi có phải yêu cầu chủ tịch công ti thưởng cho những người có hiệu năng tốt không?

Nếu câu trả lời là KHÔNG thì tốt hơn cả là bạn hãy học những điều này thật nhanh bởi vì người nhân viên tốt bao giờ cũng có cơ hội chọn lựa nơi làm việc tốt và những người quản lý giỏi.

—-English version—-

Project Management

Managing a software project is a difficult job: As a project manager, you must get requirements from customers, plan schedules, resources, and then design all critical paths, milestones, deadlines to make sure that you meet the requirements as well as create all internal tests, acceptance test. You also issue directions, set up transfer protocols, status reports, meetings and deal with bugs, issues, emergency situations and all documentations. However, after many years of managing both small and large software projects, I could say that the most important factor bringing a project to success is the “People issues”.


From my own experiences, most software projects never go according to plans because customers will always change requirements but never change the schedule or cost. They always complain that software projects that are late, costly and not give them what they want. However, most projects that I managed always complete, to some degree, successful because of the “Good people” on those project. That’s why I think people are the most important aspect of all software projects.


When project comes to serious problems, the best management method or tools will not help because they are not designed to solve these kind of problems. (No tool can fix customer’s complains and the management methods taught in university does not cover the issue of requirements changes – How many professor ever change the assignments to students?) It’s only the people who are dedicated, committed, highly innovated with their abilities, experiences, and knowledge can help you to solve these problems.


I’m not saying that only good people will make software projects success but without good people the project will not get done. I have seen many people work hard to fix problems no matter what day of the week or what hour of the day, if needed – a 14 to 16 hours of work is a normal routine.  They will discuss and on what are needed and what can be done to help their project manager avoid failure. Some may work several weeks to fix the most important systems when it crashed. Many barely sleeping or no sleeping at all without complains. So to ensure success, manager must ask the question: Where do I find people like that?


The answer is in your behavior because it is the employees that are looking for the manager to work for and not the other way around. Most courses on management never address rewarding the behavior you want repeated because manager method have fewer ways to influence employees and shape their behavior. (Most professors never work in industry or having people work for them so they used to give order rather than reward and recognize) so they taught that you are the boss and have the right to demand employee to work harder and more rather than understand that coercion does not bring out the best behavior of employees.


To be a good manager, especially software manager you must ask:


1)          Have I congratulate people who do a good job?


2)          Have I personally write “thank you” notes or emails to people about their performance?


3)          Have I use performance as basis for promotion?


4)          Have I personally and publicly recognizes people for good performance?


5)          Have I hold meetings to celebrate success?


6)          Have I ask the president of the company to reward people with good performance?


If the answer is NO then you better learn these things quickly because good people always have the choice to work for you or somebody else.


https://science-technology.vn/?p=3305

===

Qui trình đơn giản cho dự án nhỏ

06/07/2013

Hôm qua, một sinh viên đã tốt nghiệp vài năm trước tới gặp tôi. Anh ta nói: “Em đã đi làm cho một công ti phần mềm lớn trong vài năm, bây giờ em muốn bắt đầu công ti riêng của em. Em có đủ kinh nghiệm và một số tiền mà em đã tiết kiệm trong những năm qua. Em cũng có một vài người phát triển người sẵn lòng làm việc cho em. Em lập kế hoạch bắt đầu công ti của em bằng việc làm các dự án nhỏ và dần dần phát triển công ti. Em cần lời khuyên của thầy để thiết lập qui trình tốt để phát triển phần mềm có chất lượng với chi phí thấp nhất có thể được. Vì em chỉ có “vốn giới hạn”, em không muốn phí hoài nói. Thầy nghĩ điều đó có thể được thực hiện không?”

Sau khi suy nghĩ một chốc, tôi bảo anh ta: “Điều tốt là bắt đầu từ các dự án nhỏ. Nếu bạn có người phát triển có kĩ năng, bạn có cơ hội tốt hơn để thành công và xây dựng danh tiếng cho công ti của bạn. Bắt đầu từ những cái nhỏ cũng có thể tiết kiệm được tiền bạc bởi vì nếu bạn phạm sai lầm nó sẽ không là thảm hoạ và bạn có thể phục hồi được. Phần lớn mọi người thường bắt đầu công ti bằng việc hội tụ vào khía cạnh kĩ thuật. Đó KHÔNG phải là ý tưởng hay. Là người chủ công ti, bạn phải hội tụ vào khách hàng đầu tiên. Ưu tiên của bạn phải bắt đầu với việc có khách hàng và hiểu yêu cầu của họ. Đây là việc của bạn bởi vì không hiểu nhu cầu của khách hàng và không đáp ứng mong đợi của khách hàng là nguyên nhân chính cho thất bại doanh nghiệp. Bạn phải tiếp xúc với khách hàng, thu được yêu cầu, phân tích và làm tài liệu chúng cẩn thận. Bạn phải trắc nghiệm với khách hàng để chắc rằng bạn hiểu rõ yêu cầu và mong đợi của họ. Khách hàng phải chấp thuận tài liệu yêu cầu trước khi bạn bắt đầu làm bất kì việc nào. Trong khi có nhiều công cụ làm yêu cầu có tính thương mại bán sẵn trên thị trường, để tiết kiệm tiền, tôi gợi ý rằng bạn dùng Microsoft Word hay Excel cho việc làm tài liệu yêu cầu của bạn.”

Anh ta đồng ý: “Điều đó là dễ dàng, phần lớn các máy tính đều tới với Window 7 và Microsoft Office nạp sẵn cho nêm em sẽ không phải chi thêm tiền phụ.”

Tôi tiếp tục: “Nếu khách hàng chấp thuận yêu cầu và kí hợp đồng thì bạn có thể bắt đầu dự án. Với những dự án nhỏ bạn nên dùng cách tiếp cận phát triển Agile bởi vì nó ít rủi ro hơn các phương pháp khác. Bạn có thể tránh rủi ro của thay đổi yêu cầu thường xuyên điều thường xảy ra trong công nghiệp.”

Anh ta gật đầu: “Một ý hay là dùng cách tiếp cận Agile, em biết “Phương pháp Scrum.”

Tôi bảo anh ta: “Trong trường hợp đó, bạn phải chia yêu cầu thành những nhiệm vụ nhỏ hơn dùng kĩ thuật Cấu trúc phân việc (WBS). Bạn cần ước lượng công việc cần được thực hiện, phân công chúng cho người phát triển của bạn và xác định ngày chuyển giao. Với cách tiếp cận Agile dùng Scrum, bạn phải xác định công việc được yêu cầu cho từng đợt nước rút Sprint (2-4 tuần). Bạn có thể dùng Microsoft’s Excel để lập kế hoạch công việc và làm tài liệu cho mọi nhiệm vụ. Nếu bạn có dự án lớn hơn, bạn có thể dùng công cụ “Project” của Microsoft. Điều này sẽ cho phép bạn làm một số việc lập kế hoạch lại trong trường hợp thay đổi yêu cầu hay nếu khách hàng quyết định thay đổi một số chức năng vào phút chót. Bạn cũng có thể dùng công cụ “Bugzilla” để theo dõi và ghi lại các lỗi, những nâng cao, hay thay đổi yêu cầu. Bugzilla là chọn lựa phổ biến trong những người phát triển phần mềm và nó dễ dùng với đào tạo tối thiểu.

Anh ta đồng ý: “Em có thể kiếm những công cụ này và để cho người phát triển của em bắt đầu dùng chúng.”

Tôi tiếp tục: “Làm việc tổ trong Agile là rất quan trọng. Trước khi bắt đầu dự án bạn phải đào tạo mọi người phát triển về cách làm việc trong tổ. Cho dù họ có thể đã biết “Scrum”, bạn vẫn cần nhắc nhở họ về cách tiếp cận này và vai trò của họ để chắc không có hiểu lầm nào. Với dự án Scrum, có ba vai trò: Người chủ sản phẩm là người chịu trách nhiệm cho khía cạnh doanh nghiệp của dự án và ra quyết định về sản phẩm. Thầy Scrum người quản lí qui trình phát triển, giúp người phát triển làm việc cùng nhau, tạo điều kiện họp và theo dõi tiến độ và vấn đề. Tổ phát triển người xây dựng ra sản phẩm bằng làm việc cùng nhau để đạt tới mục đích của dự án. Vì dự án của bạn là nhỏ, bạn nên giả định giữ cả vai trò người chủ sản phẩm và thầy Scrum.”

Anh ta gật đầu: “Vâng, em không thể đảm đương được việc có nhiều người chừng nào em còn chưa thể phát triển công ti lên. Gợi ý của thầy rất hợp lí.”

Tôi tiếp tục: “Điều quan trọng là thiết lập việc tách bạch môi trường phát triển, môi trường kiểm thử, và môi trường sản xuất sớm để tránh việc trộn lẫn công việc. Đây là khái niệm đơn giản nhưng tôi đã thấy nhiều công ti nhỏ phạm sai lầm và trộn lẫn công việc của họ với những phiên bản sai, phần mềm đã kiểm thử để cùng phần mềm chưa kiểm thử, cho nên tôi nghĩa đáng nhắc bạn. Bạn phải thiết lập hệ thống kiểm soát nguồn để tạo điều kiện cho qui trình phát triển và lưu trữ mọi công việc đầy đủ. Quản lí cấu hình phần mềm là quan trọng bởi vì là công ti nhỏ, bạn có thể không có qui trình kiểm soát mạnh và những người được chỉ định để thực hiện vai trò quản lí cấu hình. Mọi người phát triển phải hiểu cơ sở về làm sao “Kiểm vào” công việc của họ và “Kiểm ra” khi chúng được thực hiện để tránh dư thừa, khi nào họ làm thay đổi cho phần mềm. Trong khi có một số công cụ sẵn có, bạn vẫn có thể dùng phương pháp thủ công bằng việc để những người phát triển gõ vào tình trạng số hiệu nhiệm vụ như “Mở”, “Đóng” và “Đã phân công” để cho mọi người có thể theo dõi thay đổi một cách dễ dàng. Để tiết kiệm tiền, bạn có thể xem xét dùng công cụ “nguồn mở” như CVS cho quản lí cấu hình. Là công ti nhỏ, bạn không cần phải mua những công cụ đắt tiền nhưng ĐỪNG BAO GIỜ thử tiết kiệm tiền bằng việc giảm đào tạo. Để thành công bạn phải hội tụ vào việc cải tiến kĩ năng của những người phát triển của bạn bằng những đào tạo phụ vì công nghệ thường xuyên thay đổi.”

Anh ta nói: “Em bao giờ cũng nhớ việc dạy của thầy từ nhiều năm trước, học liên tục là chìa khoá cho thành công trong khu vực này.”

Tôi kết luận: “Tôi vui là bạn nhớ điều đó. Phần còn lại của qui trình phát triển là đơn giản. Với từng dự án, bạn sẽ có cuộc họp hàng ngày để phân công công việc cho người phát triển vì bạn xây dựng phần mềm trên cơ sở hàng ngày. Bạn sẽ có những người phát triển viết mã, thực hiện kiểm thử đơn vị, tạo ra trường hợp kiểm thử và các kiểm thử tự động để chạy mọi đêm sau khi phần mềm được dựng ban ngày và kiểm tra các lỗi. Là thầy Scrum, bạn phải giám sát tiến độ trên cơ sở hàng ngày, kiểm tra các lỗi và để chúng được sửa và phải chắc mọi người đang làm nhiệm vụ được phân công của họ một cách tương ứng. Nếu bạn kiểm soát qui trình phát triển đơn giản này tốt thì bạn có thể mong đợi sản phẩm chất lượng cao. Bạn KHÔNG cần mua nhiều công cụ, bạn KHÔNG cần chi tiền vào bất kì cái gì phụ thêm, yếu tố quan trọng là có qui trình đơn giản mà mọi người hiểu và cam kết tuân theo nó cho công việc của họ. Một qui trình có chất lượng KHÔNG phải phức tạp, hay tinh vi mà nó phải được mọi người phát triển hiểu. Chìa khoá để thành công trong cách tiếp cận Agile KHÔNG phải là kĩ thuật mà là làm việc tổ và trao đổi. Bạn phải động viên mọi người thảo luận vấn đề, hỗ trợ lẫn nhau và sẵn lòng giải quyết vấn đề khi chúng tới. Tổ phải có mục đích chung, biết vai trò và trách nhiệm của họ và tuân theo qui trình chất lượng và đạo đức để hỗ trợ cho công ti đạt tới việc thoả mãn khách hàng.


—-English version—-


A simple process for small project

Yesterday, a student who graduated few years ago came to see me. He said: “I have worked for a large software company for several years, now I would like to start my own company. I have enough experiences and some money that I saved in the past few years. I also have several developers who are willing to work for me. I plan to start my company by doing small projects and gradually grow the company. I need your advice to set up a good process to develop quality software at the lowest cost possible. Since I only have “limited capital”, I do not want to waste it. Do you think it could be done?”.

After thinking for awhile, I told him: “It is good to start with small projects. If you have skilled developers, you have better chance to succeed and build the reputation for your company. Starting small can also save money because if you make mistakes it will not be disastrous and you could recover. Most people often start companies by focus on the technical aspect. That is NOT a good idea. As the owner of the company, you must focus on the customer first. Your priority must start with having customers and understand their requirements. This is your job because failing to understand customer’s needs and not meeting customer’s expectation are the main causes for business failure. You must contact customers, obtain requirements, analyze and document them carefully. You must verify with customers to make sure that you understand the requirements and their expectations well. The customer must approve the requirements document before you start to do any work. While there are many commercial off-the-shelf requirements tools available, to save money, I suggest that you use Microsoft Word or Excel for your requirements document”.

He agreed: “That is easy, most computers came with pre-loaded Window 7 and Microsoft Office so I would not have to spend extra money”.


I continued: “If the customer approves the requirements and signs contract then you can start the project. For small projects you should use Agile development approach because it is less riskier than other methods. You can avoid the risk of frequent requirements change that often happen in the industry.”


He nodded: “It is a good idea to use the Agile approach, I know the “Scrum method”.


I told him: “In that case, you must breakdown requirements into smaller tasks using the Work Breakdown Structure (WBS) technique. You need to estimate the work to be done, assign them to your developers and determine the delivery date. For Agile approach using Scrum, you must determine the works required for each Sprint (2-4 weeks). You can use Microsoft’s Excel to plan the works and document all tasks. If you have larger project, you may use Microsoft’s “Project” tool. This will allow you to do some re-planning in case of requirements change or if the customer decides to change some functionalities at the last minute. You also can use the “Bugzilla” tool to track and record defects, enhancements, or requirements changes. Bugzilla is a popular choice among software developers and it is easy to use with minimum training.

He agreed: “I can get those tools and have my developers start to use them”.

I continued: “Teamwork in Agile is very important. Before starting the project you must train all developers on how to work in team. Even they may already know “Scrum”, you still need to remind them about the approach and their roles to make sure there is no misunderstanding. On Scrum project, there are three roles: The product owner who is responsible for the business aspects of the project and make decisions about the product. The Scrum Master who manages the development process, helping developers work together, facilitating meetings and tracking progress and issues. The development team who build the product by working together to achieve the project’s goals. Since your projects are small, you should assume both the Product owner and Scrum master roles”.

He nodded: “Yes, I cannot afford to have more people until I can grow the company. Your suggestion is very reasonable”.

I continued: “It is important to set up the separation of development environment, testing environment, and production environment early to avoid any mix up of works. This is a simple concept but I have seen many small companies made mistakes and mixed up their works with wrong versions, tested software with untested software, so I think it is worth mentioning to you. You must establish a source control system to facilitate the development process and archive all complete works. Software Configuration Management is important because as small company, you may not have strong control process and designated people to perform the role of configuration management. All developers must understand the basic of how to “Check-in” their works and “Check-out” when they are done to avoid redundancy,  when they make change to the software. While there are several tools available, you can still use manual method by have developers type in task number status such as “Open”, “Close” and “Assigned” so people can track changes easily. To save money, you may consider to use “open source” tool like CVS for configuration management. As small company, you do not want to buy expensive tools but NEVER try to save money by reducing trainings. To succeed you must focus on improving the skills of your developers with additional trainings as technology often changes”.


He said: “I always remember your teaching from many years ago, continuous learning is the key to success in this area”.


I concluded: “I am glad that you remember that. The rest of the development process is simple. For each project, you will have daily meeting to assign works to developers as you build the software on a daily basis. You will have your developers code, perform unit tests, create test cases and automated tests to run every night after the daily software built and check for defects. As Scrum Master, you must monitor progress on daily basis, check for defects and have them fixed and make sure everybody is doing their assigned tasks accordingly. If you control this simple development process well than you can expect high quality product. You do NOT need to buy a lot of tools, you do NOT need to spend money on anything extra, the important factor is having a simple process that everybody understand and commit to follow it for their works. A quality process does NOT have to be complex, or sophisticated but it must be understood by all developers. The key to succeed in Agile approach is NOT technical but teamwork and communication. You must encourage people to discuss issues, support each other and willing to solve problems when they come. The team must have shared goals, know their roles and responsibilities and follow an ethical and quality process to support the company to achieve customer’s satisfaction.


https://science-technology.vn/?p=2486

===

Mười năm tới – phần 1

10/08/2018

Cuộc cách mạng công nghiệp thứ nhất đã là việc dịch chuyển từ sản xuất thủ công sang sản xuất được máy móc dẫn lái bởi phát minh ra động cơ hơi nước. Vào thời đó, nhiều công nhân thất học nhưng yêu cầu về công nhân vận hành máy hơi nước là có khả năng đọc và viết cho nên nhiều người phải hoàn thành tiểu học để có việc làm. Cuộc cách mạng công nghiệp thứ hai là việc dịch chuyển từ xưởng nhỏ sang cơ xưởng lớn hay công nghiệp hoá do việc phát minh ra điện. Yêu cầu với hầu hết công nhân vào lúc đó bên cạnh đọc và viết là một số tri thức về số học và khoa học cho nên nhiều công nhân phải có mức độ giáo dục trung học. Cuộc cách mạng công nghiệp thứ ba là dùng điện tử và máy tính trong chế tạo và kinh doanh để làm tăng hiệu quả và năng suất. Để có việc làm tốt, phần lớn công nhân cần có giáo dục đại học.

Ngày nay, chúng ta đang trong cuộc cách mạng thứ tư, nơi mọi thứ đều bị tác động bởi tiến bộ của công nghệ. Để có việc làm tốt, công nhân phải có giáo dục đại học trong Khoa học, Công nghệ, Kĩ nghệ và Toán học (STEM) nhưng hơn điều đó, họ phải phát triển thái độ học cả đời để cho họ có thể học và điều chỉnh theo thay đổi. Trong vài năm qua, công nghệ đã thay đổi nhanh chóng và mọi thứ trở thành phức tạp hơn trước, điều thúc đẩy mọi công nhân tới giới hạn. Không có chỗ cho thoả mãn vì cạnh tranh là dữ dội. Khi Internet kết nối mọi thứ, mọi nước, và mọi doanh nghiệp, toàn thế giới trở thành MỘT THỊ TRƯỜNG VIỆC LÀM LỚN với những cơ hội khổng lồ cho công nhân có kĩ năng, người biết cách tận dụng ưu thế của những thay đổi này.

Khó cho một số người hiểu tác động của nền kinh tế toàn cầu và điều sẽ xảy ra trong mười năm tới. Nhiều lí thuyết, mô hình, nguyên lí của quá khứ đã trở nên lỗi thời. Không cởi mở tâm trí cho tư duy mới, tri thức mới, mô hình mới, mọi người sẽ bị hoang mang hơn. Chẳng hạn, những người làm việc với điện thoại có dây không bao giờ thấy trước sự thay đổi nhanh chóng của công nghệ điện thoại di động. Nhiều người ngần ngại và sợ công nghệ mới này. Vì họ đã không lấy hành động đúng, phần lớn mất việc làm (98% các công ti điện thoại có dây trên thế giới không còn tồn tại nữa.) Những người làm việc với các hệ thống máy tính lớn (máy tính lớn) bị choáng bởi Apple Computer. Nhiều người đã không tin rằng máy tính cá nhân có thể gây hại gì cho việc làm của họ vì họ đã làm việc cho nhiều công ti lớn nhất thế giới. Tuy nhiên, trong vòng mười năm, mọi công ti máy tính lớn đều đã mất đi, ngoại trừ IBM và phần lớn mọi người của họ mất việc làm.

Bằng việc nhìn lại đầu thế kỉ 20, chúng ta có thể thấy rằng 500 công ti lớn nhất thế giới không còn tồn tại. Nếu chúng ta nhìn kĩ hơn, chúng ta có thể thấy rằng nhiều công ti lớn nhất được tạo ra sau thế chiến 2 cũng đang biểu lộ dấu hiệu sút giảm. Đồng thời, chúng ta có thể thấy nhiều công ti mới thành lập đang vươn lên nhanh (như, Apple là công ti nghìn tỉ đô la, Amazon là công ti trực tuyến lớn nhất trên thế giới.) Ngày nay, có nhiều công ti tỉ đô la hơn trước đây. Phần lớn trong họ chỉ bắt đầu trong mười lăm năm qua nhưng tất cả có một điểm chung: Họ là công ti công nghệ hay dựa trên công nghệ để làm kinh doanh.

Ngày nay có quãng 4.5 tỉ người dùng điện thoại thông minh trên thế giới. Đó là nhiều hơn 80% dân số trên thế giới. Điện thoại thông minh mở ra cách thức mới để làm kinh doanh mà phần lớn mọi người thậm chí đã không nghĩ tới chỉ vài năm trước. Chẳng hạn, mua và bán trực tuyến hay học và dạy trực tuyến. Khi các nước đang chuyển từ công nghệ 4G sang 5G, giải thông mới sẽ mở ra nhiều cơ hội kinh doanh nữa với tính kết nối vào giao tác nhanh. Công nghệ điện thoại thông minh sẽ mở ra cơ hội cho nhiều ứng dụng hơn và những ứng dụng này mở ra những cách thức mới cho công ti làm nhiều hơn với khách hàng của họ.

Thị trường toàn cầu mới vừa mới bắt đầu với nhiều cơ hội hơn trước đây. Câu hỏi là: “Là học sinh, bạn có sẵn sàng tận dụng ưu thế của những cơ hội mới này không?”

—English version—


 The next ten years – part 1


The first industrial revolution was the transition from manual production to machine-driven production by the invention of the steam engine. At that time, many workers are illiterate but the requirements for workers to operate the steam machine were the ability to read and write so many people had to complete elementary school to get a job. The second industrial revolution was the transition from small shops to massive factories or industrialization due to the invention of electricity. The requirements for most workers at that time besides reading and writing were some knowledge of arithmetic and scientific so many workers had to get a high- school level of education. The third industrial revolution was the use of electronics and computers in manufacturing and businesses to increase efficiency and productivity. To get a good job, most workers needed to have a college education.


Today, we are in the fourth revolution, where everything is impacted by the advance of technology. To get a good job, workers must have a college education in Science, technology, Engineering and Math (STEM) but more than that, they must develop a lifelong learning  attitude so they can learn and adjust to changes. In the past few years, technology has changed quickly and everything is becoming more complex than before which push all workers to the limit. There is no place for complacency because the competition is fierce. As the Internet connects everything, every country, and every business, the whole world becomes ONE LARGE JOB MARKET with huge opportunities for skilled workers who know how to take advantage of these changes.


It is difficult for some people to understand the impact of a global economy and what will happen in the next ten years. Many theories, models, principles of the past have become obsolete. Without opening their mind to new thinking, new knowledge, new models, people will be more confused. For example, people who worked with wired phones never anticipate the rapid change of mobile phones technology. Many hesitated and afraid of this new technology. As they did not take proper action, most lost their job. (98% of the traditional wired phone companies in the world are no longer exist.) People who worked with big computer systems (mainframe) were shocked by Apple Computer. Many did not believe that a personal computer can do any harm to their job since they were working for many largest companies in the world. However, within ten years, all mainframe computer companies were gone, except IBM and most of them lost their job.


By looking back at the beginning of the 20th century, we can see that 500 of the largest companies in the world were no longer exist. If we look closer, we can see that many largest companies created after world war 2 are also showing a sign of decline. At the same time, we can see many newly formed companies are rising fast. (i.e., Apple is a trillion dollars company, Amazon is the largest online company in the world.) Today, there are as more billion-dollar companies than ever before. Most of them just started in the past fifteen years but all share a common thing: They are technology companies or relying on technology to do business.


Today there are 4.5 Billion smartphones users in the world. That is more than 80% of the population in a world. Smartphone opens a new way to do business that most people did not even think of a few years ago. For example, Buying and selling online or learning and teaching online. As countries are moving from 4G to 5G technology, the new bandwidth will open more business opportunities with faster connectivity and transaction. Smartphones technologies will open opportunities for more applications and these applications open new ways for companies to do more with their customers.


The new global market has barely begun with more opportunities than ever before. The question is: “As students, are you readied to take advantage of these new opportunities?”

https://science-technology.vn/?p=5916

==

Mười năm tới – phần 2

https://science-technology.vn/?p=5919

11/08/2018

Cuộc cách mạng công nghiệp thứ tư được dẫn lái chủ yếu bởi tiến bộ của công nghệ nhưng nó xảy ra nhanh thế nào là tuỳ thuộc vào số lượng công nhân có kĩ năng sẵn có. Sau đây là vài khu vực có thiếu hụt trầm trong công nhân có kĩ năng và có thể mất hơn chục năm để lấp đầy vào kẽ hở này.

Tính toán mây không mới nhưng nó có thể giúp các doanh nghiệp tăng năng suất và hiệu quả bằng việc tối ưu hệ thống thông tin của họ với tính linh hoạt và tính đổi qui mô được. Với các thuật toán cân bằng tải thông minh, nhà cung cấp mây có thể trải rộng lưu thông cho ứng dụng ngang nhau để tránh làm chậm hay sập hệ thống và giữ cho doanh nghiệp vận hành không dừng. Các nhà cung cấp tính toán mây hàng đầu như Microsoft Azure, Amazon Web Services, Google Cloud Platform, và IBM Cloud đang bành trướng dịch vụ của họ ra toàn cầu nhưng không thể tìm được đủ công nhân có kĩ năng ở các nước đó. Khi ngày càng nhiều công ti chuyển mọi thứ lên mây, việc thiếu hụt công nhân kĩ năng đang ngày càng trầm trọng hơn. Yêu cầu về việc làm tính toán mây:  Bằng cử nhân trong Khoa học máy tính hay Công nghệ thông tin với các môn học trong Tính toán mây.

In 3D là phân đoạn tăng trưởng nhanh khác đặc biệt cho làm bản mẫu trong công nghiệp chế tạo. Trong khi công nghệ in 3D vẫn còn đang tiến hoá, nó có nhiều ứng dụng hứa hẹn. Nó có thể “in” nhiều thứ, từ mạch điện tử nhỏ, đồ dùng gia đình cho tới các thứ lớn như nhà, hay những thứ phức tạp như bộ phận con người nhưng nó vẫn chưa thể được thực hiện ở qui mô sản xuất số lớn như cơ xưởng dây chuyền lắp ráp. Những sinh viên không quen thuộc với công nghệ in 3D chắc sẽ nghĩ rằng đây là một khu vực rất khó. Sự kiện là việc làm in 3D yêu cầu nhiều về ý tưởng sáng tạo thay vì công nghệ vì máy in sẽ làm phần lớn công việc. Phần lớn việc làm 3D KHÔNG yêu cầu bằng cấp, cho dù bằng cấp vẫn được ưa chuộng. Phần lớn các việc làm đều liệt kê ứng cử viên có tâm trí sáng tạo trong thiết kế, vẽ, chụp ảnh, làm mô hình, và một số kĩ năng lập trình để thiết kế sản phẩm trên phần mềm 3D và để máy in in nó ra.

Phân khúc tăng trưởng nhanh nhất trong mười năm tới có lẽ là Internet mọi vật (IoT) hay các thiết bị kết nối nhiều thứ với nhau. Với các thiết bị có cảm biến kết nối không dây với thiết bị khác, chúng tạo thành một mạng lưới mà có thể thực hiện nhiều chức năng. Từ điện thoại thông minh, các thiết bị thông minh trong nhà bạn, xe ô tô của bạn, và ngay cả quần áo của bạn cũng kết nối với mạng nhiều thiết bị từ nhà hay văn phòng của bạn, những thiết bị này có thể giám sát chất lượng không khí và nhiệt độ để tắt quạt và đèn khi phòng không được dùng. Nó có thể theo dõi dấu vết chuyển động của mọi người, sản phẩm, và xe cộ cũng như dõi vết sức khoẻ của bạn và các hoạt động v.v. Yêu cầu về việc làm cho IoT: Bằng cử nhân về Khoa học máy tính hay Hệ thông tin quản lí với kĩ năng trong hệ thống nhúng, kết mạng, an ninh mạng, lập trình máy tính (Java, Python) học máy, phát triển app ứng dụng, và thiết kế giao diện người.

Thực tại nâng cao (AR), và Thực tại ảo (VR) là các khu vực tăng trưởng nhanh khác với nhiều ứng dụng hứa hẹn.

AR nói tới việc thêm các đối tượng số thức, như ảnh, hộp văn bản, nút tương tác, video, v.v vào hoàn cảnh thế giới thực. VR nói tới việc tạo ra thế giới ảo đầy đủ, một thế giới trong đó bạn có thể nhìn theo bất kì hướng nào và thấy bản thân bạn bên trong. Những công nghệ này đang tiến hoá nhanh nhưng chúng đã thu được nhiều sự chú ý trong đào tạo y tế và chẩn đoán và công nghiệp trò chơi máy tính. Phần lớn các việc làm AR/VR yêu cầu bằng cử nhân về Khoa học máy tính và Hệ thông tin quản lí với một số môn học trong công nghệ AR/VR.

Khi nhiều người đang dùng công nghệ, nhiều dữ liệu có thể được thu thập và Dữ liệu lớn là khu vực khác sẽ tăng trưởng lớn hơn và nhanh hơn được dự đoán. Gần như mọi công ti bây giờ đang thu thập dữ liệu từ đa dạng nguồn để tìm hình mẫu tương quan giúp cho họ làm dự đoán tốt hơn trong phân tích khách hàng, hiệu quả vận hành, và ngăn ngừa gian lận, v.v. Một số việc làm Dữ liệu lớn yêu cầu bằng cử nhân trong Khoa học máy tính và Thống kế. Những việc làm hàng đầu như người phân tích dữ liệu, kĩ sư dữ liệu, và nhà khoa học dữ liệu yêu cầu bằng thạc sĩ hay thậm chí bằng tiến sĩ.

Ngày nay phần lớn phân tích dữ liệu lớn được thực hiện bởi con người nhưng phân tích qui mô lớn bao giờ cũng được làm bởi các thuật toán học máy cho các quyết định nhanh hơn và thích hợp hơn. Những chương trình tự học máy này có thể thu thập nhiều mảnh mẩu thông tin, nhận diện những hình mẫu nào đó và đi tới các khuyến nghị nhanh hơn con người. Học máy (ML) hiện thời đang được sử dụng chủ yếu trong công nghiệp dược và y tế, nhưng nó đang lan rộng sang chăm sóc sức khoẻ, giáo dục và công nghiệp vận tải. Phần lớn các việc làm trong học máy yêu cầu bằng thạc sĩ trong Khoa học máy tính, Toán học ứng dụng, và Thống kê.

Trí tuệ nhân tạo (AI) là hệ thống có thể nghĩ, thích ứng và quyết định sau khi phân tích đa dạng dữ liệu và yếu tố. Đây là khu vực mới tăng trưởng nhanh hơn phần lớn mọi người đã dự đoán. AI đang được dùng trong nhiều khu vực phức tạp, từ y học, chăm sóc sức khoẻ, và phòng thí nghiệm nghiên cứu. AI cũng được dùng bởi các nhà cung cấp dịch vụ để dự báo nhu cầu dựa trên các tham biến then chốt, ngoại suy nó dựa trên những điều kiện mới để xác định nguồn tài nguyên và yêu cầu vật tư. Nó cũng được dùng trong tài chính để nhận diện điểm giá cạnh tranh và quản lí làm giá động, và các xu hướng trong giao dịch thị trường. Phần lớn các việc làm trong khu vực AI yêu cầu ít nhất là bằng thạc sĩ và tiến sĩ.

Theo nhiều khảo cứu, trong vòng mười năm tới, nhiều khu vực công nghệ chuyên sâu này sẽ trưởng thành và cuộc cách mạng công nghiệp sẽ chuyển sang pha tiếp có tên là “pha hợp lưu” nơi tất cả những công nghệ này sẽ được kết nối để tạo ra kỉ nguyên mới. (Một số người gọi nó là Cách mạng công nghiệp 4.1 nhưng số khác gọi nó là Cách mạng công nghiệp 5.0) Chẳng hạn, AI và ML sẽ được tích hợp với các ứng dụng AR/VR để cho bạn dữ liệu thời gian thực, thế giới thực. AI và ML sẽ được tích hợp với các robot thông minh có thể thực hiện nhiều việc làm nguy hiểm thay cho con người, v.v.

Chúng ta đang sống trong thế giới thay đổi nhanh chóng với nhiều phát kiến mới, quan niệm mới, và công nghệ mới. Điều chúng ta cần BÂY GIỜ là mở tâm trí để học những điều mới khi chúng tới. Để sống thoải mái trong mười năm tới yêu cầu tất cả chúng ta phát triển tri thức và kĩ năng được cần bằng việc liên tục học. Đây là lúc cho mọi gia đình đầu tư vào giáo dục con cái họ, đặc biệt trong giáo dục STEM (Khoa học, Công nghệ, Kĩ nghệ, và Toán học.) Để thịnh vượng trong thế giới này, mọi nước cần có giáo dục có phẩm chất với các thầy cô giáo có phẩm chất người chuyên tâm đào tạo thế hệ tiếp các nhà khoa học, nhà doanh nghiệp, và kĩ sư v.v.

—English version—

The next ten years part 2

The fourth Industry revolution is driven mostly by the advance of technology but how fast it happens is depending on the number of skilled workers available. Following are several areas that have a severe shortage of skilled workers and it may take more than ten years to fill this gap.

Cloud computing is not new but it can help businesses increase productivity and efficiency by optimizing their information systems with flexibility and scalability. With smart load balancing algorithms, cloud providers can spread the traffic to the application evenly to avoid slowdown or system crash and keep the business running nonstop. Top cloud computing providers such as Microsoft Azure, Amazon Web Services, Google Cloud Platform, and IBM Cloud are expanding their services worldwide but could not find enough skilled workers in those countries. As more and more companies are moving everything to the cloud, the shortage of skilled workers is getting more severe. Requirements for Cloud Computing Jobs:  Bachelor’s degree in Computer Science or Information Technology with courses in Cloud Computing.

3D printing is another fast-growing segment especially for the prototyping in the manufacturing industry. While 3D printing technology is still evolving, it has a lot of promising applications. It is possible to “print” many things, from small electronic circuits,  household utensils to larger things like a house, or complex thing like human organs but it still cannot be done on the scale of massive production such as an assembly-line factory yet. Students who are not familiar with 3D printing technology would think that this is a very difficult area. The fact is 3D printing jobs require more about the creative idea instead of technology because the printer will do most of the work. Most 3D jobs do NOT require a degree, even a degree is preferred. Most of the jobs list that candidate to have a creative mind in design, drawing, photography, modeling, and some programming skills to design the product on the 3D software and let the printer to print it.

The fastest growing segments in the next ten years probably is the Internet of Things (IoT) or devices that connect many things together. With devices that have sensors connect wirelessly to others, they form a network that can perform many functions. From smartphones, smart devices in your house, your car, and even your clothes to the network of multiple devices from your home or office, these devices can monitor air quality and temperature to turning off fans and lights when rooms are not used. It can keep track of the movement of people, product, and vehicles as well as track your health and activities etc. Requirements for IoT jobs: A bachelor’s degree in Computer Science or Information System Management with skills in Embedded systems, Networking, Network Security, Computer programming (Java, Python) Machine learning, Mobile apps development, and User interface design.

Augmented Reality (AR), and Virtual Reality (VR) are another fast-growing areas with many promising applications.

AR refers to the adding of digital objects, such as images, text boxes, interactive buttons, videos, etc. in a real-world context. VR refers to the creation of a completely virtual world, one in which you can look in any direction and find yourself within. These technologies are evolving fast but they are already gaining a lot of attention in medical training and diagnostic and computer games industry. Most AR/VR jobs require a Bachelor’s degree in Computer Science and Information System Management with some courses in AR/VR technology.

As more people are using technology, more data can be collected and Big data is another area that will grow larger and faster than predicted. Almost every company is now collecting data from diverse sources to find correlation patterns that help them to make a better prediction of customer analysis, operational efficiency, and preventing fraud, etc. Some Big Data Jobs require a Bachelor’s degree in Computer Science and Statistics. Top jobs such as Data Analyst, Data Engineer, and Data Scientist requires a Master’s degree or even a Doctorate degree.

Today most big data analysis are done by humans but the large-scale analysis is always done by machine learning algorithms for faster and more appropriate decisions. These machine self-learning programs can collect many pieces of information, identify certain patterns and come up with recommendations much faster than humans. Machine learning (ML) is currently being used mostly in the pharmaceutical and medicine industry,  but it is spreading to healthcare, education, and transportation industry. Most jobs in Machine learning require a Master’s degree in Computer Science, Applied Mathematics, and Statistics.

Artificial Intelligence (AI) is the systems that can think, adapt and decide after analyzing various data and factors. This is a new area that growing faster than most people have predicted. AI is being used in many complex areas, from medicine, healthcare, and research laboratories. AI is also used by service providers to forecast demand based on key parameters, extrapolate it based on new conditions to determine resources and material requirements. It is also used in Finance to identify competitive price points and manage dynamic pricing, and trends in market transactions. Most of the jobs in the AI area requires at least a Master’s degree and Doctorate.


According to several studies, within the next ten years, many of these advanced technology areas will mature and the industrial revolution will move to the next phase called the “convergence phase” where all of these technologies will be connected to create a new era. (Some people called it Industrial Revolution 4.1 but other called it Industrial Revolution 5.0) For example, AI and ML will be integrated with AR/VR applications to give you real-time, real-world data. AI and ML will be integrated with smart robots who can perform many dangerous jobs instead of people, etc.


We are living in a fast-changing world with many new innovations, new concepts, and new technologies. what we need NOW is to open our mind to learn new things as they come. To live comfortably in the next ten years require all of us to develop the needed knowledge and skills by continuing to learn. This is the time for every family to invest in the education of their children, especially in STEM education (Science, Technology, Engineering, and Math.) To prosper in this world, every country needs to have a quality education with qualified teachers who dedicate to train the next generation of scientists, entrepreneurs, and engineers etc.


===

Ngôn ngữ máy tính cho mọi lứa tuổi

13/08/2018

Một người mẹ viết cho tôi: “Chúng tôi có ba con tuổi 4, 6, và 8. Chúng tôi muốn chúng học ngôn ngữ máy tính nhưng không biết ngôn ngữ nào là tốt nhất cho trẻ em? Bạn tôi nói rằng còn quá sớm cho trẻ nhỏ học ngôn ngữ máy tính. Với chúng tốt hơn cả là học âm nhạc hay ngoại ngữ như tiếng Anh hay tiếng Trung. Xin thầy lời khuyên.”

Đáp: “Ngày nay Đọc, Viết và Số học là KHÔNG đủ. Trẻ em cần học ngôn ngữ máy tính vì chúng cần kĩ năng này ở trường và ở việc làm tương lai. Có những ngôn ngữ khớp với trẻ em ở những độ tuổi nào đó (như, hoạt hình, trò chơi, vẽ, v.v.) và có những ngôn ngữ được thiết kế để làm những thứ phức tạp hơn khi chúng lớn lên. Điều quan trọng với bố mẹ là đối xử với việc học ngôn ngữ máy tính như “trò vui” và là các hoạt động liên tục, không phải là cái gì đó bị áp đặt lên chúng. Nếu con bạn quan tâm tới học cách viết mã, cứ để cho chúng bắt đầu.

Theo ý kiến của tôi, với trẻ nhỏ 4 tới 6 tuổi, bạn có thể bắt đầu bằng Scratch hay các ngôn ngữ lập trình trực quan. Đây có lẽ là ngôn ngữ lập trình dễ nhất để học vì nó dạy các khái niệm cơ bản, như giải quyết vấn đề và tư duy phương án. Đứa trẻ có thể kéo và thả các khối mã để làm hoạt hình các nhân vật, tạo ra trò chơi, và xây dựng apps. Scratch không dạy cú pháp như các ngôn ngữ khác nhưng cung cấp một nền tảng vững chắc về các nguyên lí lập trình. Scratch là đơn giản, dễ học, có thể làm cho trẻ nhỏ háo hức học cách viết mã. Trẻ em có thể chơi với Scratch trong thời gian lâu khi chúng tạo ra các câu chuyện, trò chơi và vẽ hoạt hình mà chúng có thể chia sẻ với bạn bè.

Với trẻ em lớn hơn, độ tuổi 8 tới 12 JavaScript có thể là ngôn ngữ lập trình nền tảng tốt để học. Nếu chúng đã biết Scratch, rất dễ học JavaScript. Vì nó là ngôn ngữ hướng đối tượng, trẻ em sẽ học nhiều hơn về cú pháp và qui tắc thiết kế để tạo ra các ứng dụng web mặt tiền. Đây là chỗ tính sáng tạo bắt đầu bước vào khi trẻ em có thể thiết kế ra website đẹp với hình ảnh và hoạt hình trong vài ngày. Ngôn ngữ này là rất phổ biến trong những người trẻ khắp thế giới và nó có thể giúp mở ra nhiều cơ hội nghề nghiệp trong tương lai.

Đến lúc trẻ nhỏ vào trường trung học, chúng nên học Java. Đây là một trong những ngôn ngữ lập trình được dùng rộng rãi nhất trên thế giới. Phần lớn việc làm trong công nghiệp công nghệ đều đang dùng Java cho nên điều quan trọng với học sinh là học và làm chủ ngôn ngữ này trước lúc họ vào đại học. Java cho học sinh nhiều qui tắc về các khái niệm lập trình cần tuân theo. Chẳng hạn, họ phải xác định kiểu biến để cho mã của họ là ổn định, đổi qui mô được và bảo trì được.

Nếu học sinh có kĩ năng tốt trong ngôn ngữ lập trình Java, họ có thể học Python dễ dàng vì có nhiều tương tự giữa hai ngôn ngữ này. Các công ti như Google, Facebook, Microsoft phần lớn dùng Python trong các ứng dụng khoa học của họ. Python có nhiều ứng dụng và đủ phức tạp trong việc tạo ra những trò chơi video phức tạp, học máy, trí tuệ nhân tạo, và các dự án khoa học và tính toán số.

Tôi tin mọi sinh viên đại học, bất kể lĩnh vực học tập họ chọn, đều phải biết cả Java và Python vào lúc họ tốt nghiệp. Ngày nay hai ngôn ngữ này đang được dùng trong hầu hết mọi lĩnh vực, mọi việc làm và chúng sẽ là yêu cầu cho nhiều việc làm tương lai.

Không có gì sai trong học ngôn ngữ lập trình máy tính tại lứa tuổi sớm. Tuy nhiên, các bố mẹ nên để con họ chọn điều chúng thích thú. Nếu chúng thích âm nhạc, để chúng học âm nhạc. Nếu chúng thích ngoại ngử, để chúng học tiếng Anh hay tiếng Pháp và nếu chúng thích lập trình máy tính, để chúng học Scratch hay JavaScript. Điều quan trọng với các bố mẹ là khuyến khích, hỗ trợ và để con cái họ tìm ra mối quan tâm riêng của chúng. Bằng việc ép buộc chúng học cái gì đó chúng không thích sẽ tạo ra sợ môn học đó và điều đó sẽ gây ra nhiều hại hơn là tốt.


—English version—

Computer Languages for all ages

A mother wrote to me: “We have three children aged 4, 6, and 8. We want them to learn a computer language but do not know which one is the best for children? My friends said that it is too early for young children to learn a computer language. It is better for them to learn music or foreign languages such as English or Chinese. Please advise.”


 


Answer: “Today Reading, Writing, and Arithmetic are NOT enough. Children need to learn a computer language because they will need this skill in school and future jobs. There are languages that fit children at certain ages (i.e., Animation, games, drawing etc.) and there are languages designed to do more complex things as they are growing up. It is important for parents to treat learning computer languages as a “Fun” and continuous activities, not something to be forced on them. If your children are interested in learning how to code, just let them started.


In my opinion, for a young child at age 4 to 6, you may start with Scratch or other visual programming languages. This is probably the easiest programming language to learn because it teaches basic concepts, like problem-solving and alternative thinking. A child can drag and drop code blocks to animate characters, create games, and build apps. Scratch does not teach the syntax like other languages but it provides a solid foundation of programming principles. Scratch is simple, easy to learn, can get young children to get excited about learning how to code. Children can play with Scratch for a long time as they create stories, games and draw animations which they can share with friends.


For older children, age 8 to 12 JavaScript may be a good fundamental programming language to learn. If they already know Scratch, it is very easy to learn JavaScript. Since it is an object-oriented language, children will learn more about syntax and design rules to create front-end web applications. This is where creativity begins to come in as children can design a beautiful website with pictures and animation within a few days. This language is very popular among young people all over the world and it could help open more job opportunities in the future.


By the time young children go to high school, they should learn Java. This is one of the most widely used programming languages in the world. Most jobs in the technology industry are using Java so it is important for students to learn and master this language by the time they go to college. Java gives students more rules on programming concepts to follow. For example, they must specify a variable type so their code is stable, scalable and maintainable.


If students have strong skills in Java Programming language, they can learn Python easily because there are several similarities between these two languages. Companies like Google, Facebook, Microsoft use Python mostly in their scientific applications. Python has many applications and sophisticated enough to be used in the creation of complex video games, machine learning, artificial intelligence, and scientific and numeric computing projects.


I believe every college student, regardless of which field of study they choose,  must know both Java and Python by the time they graduate. Today these two languages are being used in almost every fields, every job and they will be  requirements for many future jobs.


There is nothing wrong to learn a computer programming language at an early age. However, parents should let their children choose what they are interested in. If they like music, let them learn music. If they like a foreign language, let them learn English or French and if they like computer programming, let them learn Scratch or JavaScript. It is important for parents to encourage, support and let their children find their own interest. By forcing them to learn something they do not like will create a fear of that subject and it will cause more harm than good.


https://science-technology.vn/?p=5921

===

Công nghệ và tương lai

29/01/2019

Hôm qua trong môn “Nhập môn Hệ thống máy tính”, một sinh viên hỏi: “Công nghệ nào có tiềm năng lớn nhất làm thay đổi thế giới trong thập kỉ tới?” Tôi trả lời: “Công nghệ thay đổi rất nhanh chóng, khó mà dự đoán được. Tuy nhiên, tôi tin Học máy có tiềm năng lớn nhất để thay đổi nhiều thứ vì nó có thể ảnh hưởng tới mọi ngành công nghiệp, mọi doanh nghiệp, và mọi nước. Công nghệ này có thể phân tích và học số lượng lớn dữ liệu trong thời gian rất ngắn. Nó có thể tối ưu hoá nhiều vận hành từ chế tạo cho tới kinh doanh. Ngày nay, công nghệ học máy vẫn đang thay đổi khi nó được tích hợp với máy tính nhanh, mạng thần kinh, học sâu nhưng nó sẽ sớm trở thành công nghệ rất mạnh trong tương lai gần. Nếu các em là sinh viên trong khoa học máy tính hay Hệ thống thông tin, các em phải học Học máy vì nhiều thứ trong tương lai sẽ dùng công nghệ này.”

Sinh viên khác hỏi: “Bên cạnh Học máy, chúng em cần chú ý tới cái gì?”
Tôi nói với lớp: “Tất nhiên, có nhiều công nghệ tiềm năng In 3D, Tính toán mây, Robotics, mạng 5G, Internet mọi vật, An ninh tính toán, Chỉnh sửa hệ gen, và sinh học tổng hợp. Những công nghệ này sẽ thay đổi thế giới của chúng ta trong năm hay mười năm nữa. Chúng sẽ thay đổi nhanh thế nào và chúng sẽ có hiệu quả thế nào còn tuỳ thuộc vào cách các công ti áp dụng chúng để xây dựng sản phẩm. Đây cũng là những khu vực mà nhiều công ti khởi nghiệp đang làm việc vì tất cả chúng đều có tiềm năng đột phá thị trường. Các công nghệ khác nhau yêu cầu các cách tiếp cận khác nhau và các ứng dụng doanh nghiệp khác nhau. Chẳng hạn, ngày nay nhiều công ti khởi nghiệp đang hội tụ vào các xu hướng đó. Trí tuệ nhân tạo được coi là xu hướng nóng nhất cho nên nhiều người đang làm việc về nó. Hiện thời, đã có trên 6,000 công ti khởi nghiệp tập trung vào Trí tuệ nhân tạo chỉ riêng ở Mĩ. Tất nhiên, một số công ti sẽ làm tốt nhưng nhiều công ti sẽ thất bại.  Điều nóng tiếp là In 3D, mạng 5G, và Robotics nơi Nhật Bản, Đức và Trung Quốc hiện thời chi phối thị trường cho dù chúng vẫn còn ở giai đoạn ban đầu sớm. Có những công nghệ đang nổi lên với những vấn đề khó khăn để giải quyết như An ninh tính toán, chỉnh sửa hệ gen, Sinh học tổng hợp nhưng điều này sẽ yêu cầu nhiều công ti hơn làm việc trên chúng trước khi chúng tăng trưởng lớn hơn.”

Theo ý kiến của tôi, có nhiều cơ hội trong công nghệ bởi vì chúng ta đang trong thời kì thay đổi công nghệ nhanh nhất trong lịch sử. Nếu chúng ta nhìn lại những năm 1980 khi máy tính cá nhân được phát minh ra, không ai dự đoán được rằng nó có thể thay đổi mọi thứ. Cùng điều đó cũng đã xảy ra khi Internet được tạo ra. Vấn đề là phần lớn mọi người đã không hiểu tiềm năng của thay đổi công nghệ khi họ vẫn đang làm cùng điều như không cái gì đã xảy ra. Đã có mười công ti máy tính lớn nhất với hàng trăm nghìn kĩ sư làm việc ở đó khi công ti máy tính Apple được thành lập. Không ai chú ý tới công nghệ đó. Ngày nay, với ngoại lệ của IBM, tất cả họ đều đã phá sản vì họ đã không hiểu thay đổi công nghệ.

Ngày nay chúng ta đang đối diện với cùng vấn đề, nhiều người lãnh đạo công ti vẫn nghĩ như họ vẫn đang sống trong thế kỉ 20 cho dù chúng ta đã ở trong thế kỉ 21. Người của họ vẫn làm cùng điều mà họ làm mọi ngày. Họ đi họp và lập kế hoạch kinh doanh của họ như không cái gì đã xảy ra. Không ai chú ý tới điều đang xảy ra bên ngoài công việc của họ. Cảm nghĩ là nếu nó không tác động tới họ, họ không chăm nom. Họ có thể đọc cái gì đó về công nghệ nhưng không hiểu tác động của nó. Họ không muốn thay đổi cách họ nghĩ cho dù công nghệ vẫn luôn thay đổi và thay đổi nhanh. Họ không tin rằng công nghệ có thể thay đổi việc làm của họ, công nghiệp của họ, và cách sống của họ. Họ không hiểu cách công nghệ sẽ thay đổi cách doanh nghiệp vận hành, cách mọi người làm việc và mọi thứ khác. Họ không tin rằng nhịp thay đổi có thể nhanh và dữ dội.

Một sinh viên hỏi: “Trong trường hợp đó, người lãnh đạo công ti phải làm gì?”
Tôi trả lời: “Người lãnh đạo phải xem xét thay đổi trong quản lí. Để vẫn còn trong kinh doanh, họ phải thay đổi cách mọi người nghĩ và làm việc. Người lãnh đạo công ti cần nhìn lại trong lịch sử và hỏi: “Điều gì xảy ra cho mọi công ti thành công của quá khứ và giờ họ đâu rồi? Tại sao 95% các công ti lớn nhất trên thế giới đã mất đi trong 25 năm cuối của thế kỉ 20? Tại sao các công ti nhỏ hơn được tạo ra trong 25 năm qua của thế kỉ 20 giờ là những công ti lớn nhất và mạnh nhất của thế kỉ 21? Tại sao các công ti như Google, Facebook, Amazon, Microsoft v.v. đã thành công thế? Họ đã làm cái gì khác đi? Khi công nghệ thay đổi, bạn cũng phải thay đổi cách nghĩ và nếu quản lí không thể thay đổi, thế thì thay họ bằng thế hệ công nhân trẻ hơn, người hiểu công nghệ tốt hơn. Nếu các em là sinh viên hôm nay, tự hỏi bản thân mình, em muốn học cái gì?


 —English version—

Technologies and the future

Yesterday in the “Introduction to Computer Systems”, a student asked: “Which technologies have the greatest potential to change the world over the next decade?” I answered: “Technologies change very quickly, it is difficult to predict. However, I believe Machine Learning has the greatest potential to change many things as it can affect every industry, every business, and every country. This technology can analyze and learn a large amount of data in a very short time. It can optimize many operations from manufacturing to businesses. Today, machine learning technology is still changing, as it is being integrated with fast computers, neural networks, deep learning but soon it will become a very powerful technology in the near future. If you are students in computer science or Information systems, you must learn Machine learning as many things in the future will use this technology.”


Another student asked: “Besides Machine Learning, what do we need to pay attention to? I told the class: “Of course, there are many potential technologies such as 3D Printing, Cloud Computing, Robotics, 5G networks, Internet of Things, Computing security, Genome editing, and Synthetic biology. These technologies will change our world in the next five or ten years. How fast they will change and how much effect they will have are depending on how companies are applying them to build products. These are also areas that many startups are working on because they all have the potential to disrupt the market. Different technologies require different approaches and business applications. For example, today many startups are focusing on trends. Artificial intelligence is considered the hottest trend so more people are working on it. Currently, there were over 6,000 startups focusing on Artificial intelligence in the U.S. alone. Of course, some will do well but many will fail.  The next hot things are 3D printing, 5 G networks, and Robotics where Japan, Germany, and China currently dominates the market even they are still in the earlier stage. There are emerging technologies with difficult issues to solve such as Computing Security, Genome Editing, Synthetic biology but these will require more companies to work on them before they grow bigger.”

In my opinion, there are many opportunities in technologies because we are in the most rapid period of technological change in history. If we look back in the 1980s when the personal computer was invented. Nobody predicted that it could change everything. The same also happened when the Internet was created. The problem was most people did not understand the potential of technology changes as they were still doing the same thing as nothing has happened. There were ten largest computer companies with hundred thousand engineers working there when Apple computer was found. No one paid attention to that technology. Today, with the exception of IBM, all of them went bankrupt as they did not understand technology changes.

Today we are facing the same issue, many company leaders are still thinking as they are still living in the 20th century even we are in the 21st century already. Their people are still doing the same thing that they do every day. They go to meetings and plan their business as nothing has happened. No one pays attention to what is happening outside of their work. The sentiment is if it does not impact them, they do not care. They may read something about technologies but do not understand its impact. They do not want to change the way they think even technologies keep changing and changing fast. They do not believe that technologies can change their jobs, their industries, and their way of living. They do not understand how technologies will change the way businesses operate, the way people work and everything else. They do not believe that the pace of change can be fast and furious.

A student asked: “In that case, what should the company leaders do?” I answered: “Leaders must consider a change in management. To remain in business, they must change the way people think and work. Company leaders need to look back into history and ask: “What happen to all the successful companies of the past and where are they now? Why 95% of the largest companies in the world were gone in the last 25 years of the 20th century? Why smaller companies created in the last 25 years of the 20th century are now the largest and most powerful companies of the 21st century? Why companies like Google, Facebook, Amazon, Microsoft etc. were so successful? What have they done differently? When technologies change, you must also change your mindset and if the management cannot change, then replacing them with a younger generation of workers who understand technologies better. If you are students today, ask yourselves, what do you want to learn?

https://science-technology.vn/?p=6173

===

Dạy trong thời đại thay đổi

10/11/2017

Một thầy giáo than: “Ngày nay nhiều học sinh lười biếng và không có ham muốn học bất kì cái gì. Nhiều người tới trường mà không có phương hướng và chỉ làm việc tối thiểu để đỗ kì thi rồi chuyển sang lớp tiếp. Họ muốn có bằng cấp mà không học mấy, điều giải thích cho số lượng lớn người tốt nghiệp đại học bị thất nghiệp. Nhưng là thầy giáo, nhiều người mệt mỏi vì phải đối phó với những học sinh thiếu động cơ này, và tôi đang cân nhắc bỏ việc dạy …”

Tôi bảo thầy đó: “Là thầy giáo, thầy có hiểu tại sao học sinh mất động cơ học của họ không? Vì có kẽ hở lớn giữa điều trường dạy và điều thị trường cần, làm sao thầy có thể động viên học sinh học khi họ biết rằng điều họ học không giúp cho họ trong nghề nghiệp của họ? Dễ dàng đổ lỗi cho học sinh về thiếu động cơ học nhưng chúng ta đã bao giờ suy nghĩ về điều chúng ta dạy và cách chúng ta dạy chưa? Chúng ta đã bao giờ đưa học sinh vào thảo luận trên lớp chưa?  Bao nhiêu người trong chúng ta chỉ đọc bài giảng trên cùng tài liệu trong nhiều năm mà không cải tiến?”

“Không ai nói việc dạy là dễ. Nhưng nó đang ngày càng khó hơn trước đây vì học sinh ngày nay không là cùng loại như hai mươi, ba mươi năm trước. Để giữ cho họ học, họ cần được đưa vào tham gia tích cực; bằng không họ sẽ bị sao lãng bởi các thứ khác. Bạn tôi, Giáo sư Rosenberg thường nói đùa: “Ngày nay thầy giáo phải cạnh tranh với Facebook, tin nhắn, YouTube, Twitter và nhiều phương tiện xã hội trong lớp học của họ và một số người sẽ không thành công.” Do đó, để hiệu quả hơn, chúng ta không thể dùng cùng kĩ thuật dạy mà phải điều chỉnh việc dạy của chúng ta để đáp ứng nhu cầu của học sinh.”

“Để động viên họ học, chúng ta cần giải thích ích lợi của tài liệu môn học. Chúng ta phải chỉ cho họ giá trị của tri thức đó trong tương lai của học sinh vì học sinh sẽ học khi họ biết cái gì sẽ ích lợi cho họ. Vai trò của chúng ta không chỉ là truyền thụ tri thức mà còn cung cấp hướng dẫn cho họ để xây dựng tương lai của họ. Ngày nay việc dạy không còn chỉ có tính hàn lâm mà còn là hướng dẫn học sinh phát triển thành người khôn lớn, nơi họ học về vai trò và trách nhiệm của họ, lập kế hoạch nghề nghiệp của họ, thu nhận kĩ năng cần thiết, đạt tới năng lực, có được việc làm, thành công ở chỗ làm việc, đóng góp cho xã hội, xây dựng gia đình, và là công dân tốt.

“Để làm điều đó, chúng ta cần tạo ra môi trường học mới nơi cả thầy giáo và học sinh đều phát triển mối quan hệ lẫn nhau và chia sẻ cùng mục đích. Chẳng hạn, tôi thường hỏi học sinh của tôi: “Các em hiểu chắc thế nào về tài liệu trong bài giảng trước? Các em có câu hỏi nào trước khi chúng ta tiếp tục?” Bằng việc hỏi học sinh trên cơ sở đều đặn, tôi chia sẻ mối quan tâm của tôi với họ về việc học của họ. Học sinh sẽ cảm thấy thoải mái hơn bằng việc hỏi câu hỏi để làm rõ ràng hiểu biết của họ, và lớp trở thành môi trường học tích cực nơi học sinh hội tụ vào việc học thay vì vào việc qua được bài kiểm tra. Điều bản chất với học sinh là biết giá trị của việc có giáo dục tốt điều cho phép họ xây dựng nghề nghiệp của họ trong tương lai, tôi bao giờ cũng giải thích sự liên quan của tài liệu môn học với mục đích nghề nghiệp của họ. Chẳng hạn: “Em cần kĩ năng lập trình tốt để làm việc trong khu vực công nghiệp.” Hay “Nếu em không học thống kê làm sao em có thể làm việc với các thuật toán học máy và dự đoán kết quả của chương trình phân tích dữ liệu?”

Là thầy giáo trong thời đại thay đổi nhanh này, chúng ta cần đánh giá lại cách tiếp cận của chúng ta tới việc dạy để đáp ứng cho nhu cầu của học sinh. Nó cũng giúp chúng ta nhận biết về cái gì là hiệu quả trong khi làm việc với học sinh. Tôi tin rằng bằng việc tạo ra môi trường học tích cực cho học sinh, bằng việc diễn đạt nhiệt tình dạy của chúng ta, bằng việc thể hiện mối quan tâm của chúng ta với thành công của học sinh, chúng ta có thể tạo ra khác biệt trong kinh nghiệm học của học sinh.


—English version—

Teaching in the changing time

A teacher lamented: “Today many students are lazy and have no desire to learn anything. Many come to school without direction and only do the minimum to pass the exam then move on to the next class. They want the degree without learning much which explain the high number of unemployed college graduates. But as teachers, many are tired of dealing with these unmotivated students, and I am considered quitting …”

I told him: “As a teacher, do you understand why are students losing their motivation to learn? Since there is a big gap between what the school teaches and what the market needs, how can you motivate students to learn when they know that what they learn do not help them in their career? It is easy to blame the students for lack of motivation to learn but have we ever reflected on what we teach and the way we teach? Have we ever engaged students in class discussion?  How many of us just lecturing the same materials for years without improving?”

“No one says teaching is easy. But it is getting more difficult than ever before because today’s students are not the same as twenty or thirty years ago. To keep them learning, they need to be actively engaged; else they will be distracted by other things. My friend, Professor Rosenberg often joked: “Today teachers must compete with Facebook, Text messages, YouTube, Twitter and many social media in their classroom and some will not succeed.” Therefore, to be more effective, we cannot use the same teaching technique but must adjust our teaching to meet the need of students.”

“To motivate them to learn, we need to explain the benefit of the course materials. We must show them the value of that knowledge in the students’ future because students will learn when they know what will benefit them. Our role is not only transferring the knowledge but also provide guidance to help them to build their future. Today teaching is no longer just academic but also guiding students to develop into adulthood, where they learn about their roles and responsibilities plan their career, acquiring needed skills, achieving competencies, getting jobs, succeed in the workplace, contributing to the society, building a family, and be a good citizen.”

“In order to do that, we need to create a new learning environment where both teachers and students are developing a mutual relationship and sharing the same goals. For example, I often ask my students: “How well is your understanding of the materials in the last lecture? Are there any questions you have before we continue? By asking students on a regular basis, I share my concern with them about their learning. Students will feel more comfortable by asking questions to clarify their understanding, and the class becomes a positive learning environment where students focus on learning rather than passing tests. It is essential for students to know the value of having a good education that allows them to build their career in the future, I always explain the relevancy of the course materials to their career goals. For example: “You need strong programming skills in order to work in the technology area.” Or “If you do not learn statistics how could you work on machine learning algorithm and predicting the outcomes of a data analytics program?”


As teachers in this fast-changing time, we need to re-evaluate our approach to teaching to meet the students’ needs. It also helps us to be aware of what is effective while working with students. I believe that by creating a positive learning environment for students, by expressing our enthusiasm to teach, by demonstrating our concern for students’ success, we can make a difference in students’ learning experience.

https://science-technology.vn/?p=5617

==

Chia sẻ kinh nghiệm

03/07/2013

Thưa giáo sư, em bao giờ cũng nhớ rằng thầy yêu cầu các sinh viên đã tốt nghiệp chia sẻ kinh nghiệm làm việc của mình với sinh viên hiện thời, cho nên đây là câu chuyện của em:

“Mơ ước của nhiều người tốt nghiệp công nghệ thông tin (CNTT) là làm việc cho các công ti phần mềm như Microsoft, Google, Apple, IBM hay Oracle v.v. Khi tốt nghiệp tôi nhận được đề nghị việc làm từ Microsoft, Google và công ti chế tạo ở New Jersey. Tôi đã chọn công ti chế tạo vì nó ở không xa Pennsylvania, nơi bố mẹ tôi sống. Làm việc gần nhà thay vì đi xa tới California là quyết định khó khăn cho tôi. Phần lớn các giáo sư đều khuyên tôi rằng làm việc cho công ti phần mềm sẽ là tốt hơn cho nghề nghiệp của tôi và được lương cao hơn. Thầy là giáo sư duy nhất bảo tôi rằng không có gì tốt hơn là ở gần gia đình để thăm bố mẹ tôi thường xuyên.”

“Công ti chế tạo có bẩy cơ xưởng, nhiều nhà kho, và xe tải để vận chuyển sản phẩm tới nhà phân phối hay xưởng tàu để gửi sản phẩm đi các nước khác. Nó sử dụng hơn trăm nghìn công nhân, phần lớn ở các cơ xưởng. Tôi làm việc ở bộ phận công nghệ thông tin, cung cấp hỗ trợ cho công ti. Là công nhân mới, tôi được giao cho việc quản lí sao lưu máy tính hàng ngày, giám sát hệ thống an ninh, duy trì website công ti, và giúp người dùng dùng hệ thống máy tính của họ. Đó không phải là điều tôi đã nghĩ tới về nghề nghiệp trong phần mềm. Sau sáu tháng làm quen với hệ thống CNTT, tôi được trao trách nhiệm giám sát vận hành hàng ngày của bẩy cơ xưởng, phân tích luồng công việc của họ, thiết lập hỗ trợ sử dụng máy tính, và đặt ưu tiên cho bàn trợ giúp. Việc này nhiều tính giám sát hơn là kĩ thuật cho dù nó yêu cầu tri thức kĩ thuật nào đó. Trong vòng một năm, tôi đã thực hiện tốt và được trao trách nhiệm thêm để làm việc với người dùng để hiểu nhu cầu tính toán và yêu cầu hệ thống của họ. Việc này thách thức hơn đối với tôi và tôi đánh giá cao đào tạo về kĩ năng mềm tôi đã học trong dự án capstone.”

“Bộ phận CNTT cũng quản lí kinh doanh điện tử của công ti. Đơn hàng của khách hàng về sản phẩm của chúng tôi đặt qua website. Chúng tôi cũng đặt mua vật tư thô từ các nhà cung cấp dùng qua website này. Hệ thống CNTT theo dõi dấu vết các đơn hàng; các vấn đề làm hoá đơn; giám sát vận chuyển xe tải tới và đi từ các cơ xưởng; kiểm mọi tài khoản, nhận và trả; giải quyết lương nhân viên; hỗ trợ làm hoá đơn khách hàng; cung cấp hỗ trợ cơ sở dữ liệu. Người quản lí của tôi muốn tôi tập trung vào phân tích các qui trình doanh nghiệp này để nhận diện và giải quyết vấn đề. Tôi dành nhiều thời gian vào gặp gỡ với người dùng hơn là làm công việc kĩ thuật. Mọi lúc tôi nói chuyện với bạn bè đang làm việc cho các công ti phần mềm, họ bảo tôi họ đã viết được bao nhiêu mã, sản phẩm nào họ đã phát triển và tôi cảm thấy có chút ít ghen tị vì việc của tôi là khác họ.”

“Trách nhiệm của tôi tiếp tục tăng lên khi công ti mở rộng vận hành ra nhiều nước. Tôi phải hỗ trợ cho bộ phận hệ thống máy tính thêm; cung cấp an ninh và kiểm soát dữ liệu, và quản lí phục hồi doanh nghiệp trong trường hợp thảm hoạ tự nhiên xảy ra. Sau bốn năm, tôi được đề bạt làm người quản lí hệ thống CNTT. Việc mới của tôi bao gồm kiểm điểm và chấp thuận mọi chương trình hệ thống trước khi thực hiện chúng; đánh giá việc dùng và nhu cầu công nghệ của công ti; nêu các đề nghị cải tiến, như nâng cấp phần cứng và phần mềm. Tôi cũng quản lí ngân sách và chi tiêu vận hành. Ở vị trí này, tôi thường gặp những người quản lí phòng ban, người giám sát, nhà cung cấp, nhà bán máy tính, và những người khác, để giải quyết vấn đề. Tôi cũng thuê công nhân, đào tạo và giám sát họ và có 50 công nhân CNTT làm việc cho tôi.”

“Tại chỗ chế tạo, những người quản lí thường giải quyết nhiều dự án với các ưu tiên khác nhau. Họ rất bận rộn giải quyết với phạm vi rộng các vấn đề, cả bên trong và bên ngoài công ti. Họ cần có mọi thông tin để cho họ có thể ra quyết định nhanh chóng. Đó là lí do tại sao họ phụ thuộc vào bộ phận CNTT để thu thập dữ liệu, phân tích chúng, và tổ chức chúng thành thông tin cho họ. Một số người quản lí tốt và hài lòng làm việc, số khác thì không. Trong việc này, tôi học làm việc với mọi loại và mức người, cố hiểu nhu cầu của họ, vấn đề của họ là gì, phân tích vấn đề, và cũng hi vọng, sửa chúng nhanh chóng.”

“Phân tích vấn đề yêu cầu nhiều nỗ lực để hiểu những phụ thuộc phức tạp và xoắn xuýt thường là điển hình trong bất kì công ti lớn nào. Công nhân CNTT phải thu thập dữ liệu về hệ thống và phân tích dữ liệu theo cách hệ thống. Chúng tôi phải giải quyết những vấn đề nhỏ cũng như vấn đề lớn. Thỉnh thoảng phải mất vài tuần, đôi khi vài tháng. Chúng tôi nhận luồng yêu cầu thường xuyên mà chúng tôi phải làm. Chúng tôi phân tích vấn đề, theo dõi các phàn nàn, giữ cho hệ thống chạy, và cũng “sửa” mọi thứ khi chúng xảy ra. Tất cả những điều này yêu cầu nhiều kĩ năng quản lí. Mọi ngày, tôi phải giải quyết với cả loạt vấn đề CNTT mà là tâm điểm của doanh nghiệp. Nếu chúng không được giải quyết nhanh chóng, doanh nghiệp sẽ không có khả năng vận hành. Bây giờ tôi biết hệ thống CNTT là quan trọng thế nào cho doanh nghiệp. Bây giờ tôi đánh giá dữ liệu của chúng tôi quan trọng thế nào cho doanh nghiệp của bạn. Chỉ tới lúc này, tôi mới biết CNTT là mấu chốt thế cho mọi công ti.”

“Để tôi cho các bạn vài ví dụ: Nếu một khách hàng không trả tiền đúng hạn, máy tính biết và tự động gửi “email nhắc nhở”. Trong vòng ba ngày, nếu công ti không nhận được tiền, máy tính đưa ra “email cảnh báo” và dừng mọi việc gửi sản phẩm cho khách hàng đó. Công ti của chúng tôi dùng nhiều vật tư thô; trên một trăm kiểu khác nhau tới từ năm trăm nhà cung cấp. Mỗi ngày, các nhà cung cấp chở vật tư thô tới cho bẩy cơ xưởng của chúng tôi ở các vị trí khác nhau. Máy tính giám sát mọi xe tải, mọi việc chuyển hàng và mọi đơn hàng. Nếu xe tải đến chậm hơn mười lăm phút, chúng tôi được thông báo. Nếu quá nửa giờ, máy tính gửi ra yêu cầu người quản lí xe tải kiểm tra về vấn đề và người quản lí cơ xưởng cũng được thông báo. Việc gửi hàng chậm có thể làm trễ dây chuyền lắp ráp, có thể tác động tới qui trình chế tạo và làm chậm việc gửi sản phẩm cho khách hàng. Nếu chúng tôi không gửi hàng, chúng tôi không thu được tiền trả. Không có một số vật tư thô, sản xuất có thể dừng lại và bạn có một trăm nghìn công nhân mà không làm gì cả. Điều đó có thể là thảm hoạ. Đó là lí do tại sao hệ thống CNTT là mấu chốt thế. Với GPS, máy tính của chúng tôi có thể theo dõi mọi xe tải, chúng đang ở đâu và điều gì xảy ra khi chúng chậm. Hệ thống CNTT và mạng của chúng tôi đại diện cho trái tim của doanh nghiệp, và công nhân CNTT là những người biết nó rõ nhất, bởi vì họ dành phần lớn thời gian của họ để giữ cho hệ thống CNTT chạy. Họ bao giờ cũng ở đó để giải quyết vấn đề mà có thể nảy sinh hay hình dung ra cách mới để làm mọi việc.”

“Những người không hiểu CNTT thường nghĩ hệ thống máy tính tiêu tốn nhiều và công nhân CNTT là nhóm “người lập dị” chơi trò chơi máy tính. Thực ra, chúng tôi làm việc rất vất vả và làm ra tiền cho công ti. Cứ tưởng tượng rằng nếu hệ thống CNTT của chúng tôi bị sập trong một giờ, điều đó sẽ tốn cho công ti cả triệu đô la. Tưởng tượng nếu toàn thể hệ thống CNTT trên thế giới sập trong một ngày. Toàn thể thế giới kinh doanh sẽ không thể vận hành được.”

“Tôi đã từng làm việc cho công ti này tám năm. Tôi biết nhiều về kinh doanh của công ti hơn phần lớn mọi người nhưng mọi ngày tôi cũng học được cái gì đó mới. Tôi giữ cho tri thức kĩ thuật của tôi được hiện thời bằng việc lấy thêm đào tạo phụ. Tôi bao giờ cũng nhớ lời khuyên của thầy rằng chúng ta cần có thói quen học cả đời cho nên tôi đọc nhiều. Tôi cũng lên website của thầy tại CMU, theo dõi blog của thầy để học xu hướng công nghệ mới nhất.”

“Tháng trước, ông chủ tịch công ti gọi tôi lên văn phòng của ông ấy; tôi nghĩ đấy chắc là cuộc họp khác mà ông ấy yêu cầu tôi lấy cho ông ấy chút dữ liệu cho nên tôi không chú ý. Tôi ngạc nhiên khi thấy ông chủ cùng các phó chủ tịch ngồi đó. Họ cũng mời bố mẹ tôi tới đó. Ông chủ tịch công bố rằng vì CNTT là quan trọng thế cho công ti, họ cần có một Giám đốc thông tin (CIO) để quản lí mọi hệ thống CNTT và người đó là tôi. Làm sao một người trẻ như tôi lại có thể vào hàng quan chức điều hành được? Ông chủ tịch nói: “Anh có tri thức về mọi vận hành doanh nghiệp; anh đã chứng tỏ khả năng giải quyết được nhiều việc đồng thời; anh vẫn còn bình thản dưới nhiều áp lực; anh quen với mọi người trong công ti này; anh đã giải quyết được nhiều vấn đề cho chúng tôi và cho khách hàng của chúng tôi; và điều tốt nhất trong tất cả, anh vẫn có kĩ năng kĩ thuật hiện thời nhất. Khi chúng tôi nâng cấp vài hệ thống máy tính, anh là người duy nhất biết mọi chi tiết kĩ thuật. Tri thức của anh về thông tin là quí giá. Không có ai tốt hơn anh. Tôi và mọi người quản lí của công ti này tin vào anh!”

“Đó là điều ngạc nhiên lớn và tôi cũng mừng khi thấy rằng bố mẹ tôi cũng tự hào về tôi. Vào lúc đó, tôi biết rằng tôi đã ra quyết định đúng. Tôi nghĩ về lời khuyên của thầy: “Tiền sẽ tới và đi; việc sẽ tới và đi, nhưng không cái gì quí hơn là có bố mẹ, sống gần họ, tới thăm họ và chăm sóc họ khi họ vẫn còn sống. Làm cho họ tự hào rằng họ đã nuôi dạy ra những đứa con tốt.”

“Thưa giáo sư kính mến, em sẽ không bao giờ quên điều đó. Trong đời em, đã có lúc em nghi ngờ về quyết định của em nhưng bây giờ không còn hoài nghi nào về em đã ra quyết định đúng để lấy việc làm mà cho phép em ở gần bố mẹ em. Nếu em chuyển tới California để làm việc cho công ti phần mềm, em sẽ không bao giờ có khoảnh khắc này. Như các bạn của em, ngày nay họ vẫn viết mã và quản lí dự án phần mềm.”

“Thưa giáo sư kính mến, đấy là kinh nghiệm của em mà thầy có thể chia sẻ với các bạn sinh viên hiện thời. Em cũng có vài gợi ý: Chương trình CNTT hiện thời không dạy các kĩ năng mà công nghiệp cần như trao đổi và khuyến khích người khác; uỷ quyền các nhiệm vụ một cách công bằng và hiệu quả; giải quyết các loại xung đột đa dạng; thay đổi sự tập trung của họ từ việc là người làm nhiệm vụ sang người làm cho nhiệm vụ được làm xong; hiểu viễn kiến và chiến lược dài hạn của công ti. Theo ý kiến em, những kĩ năng này nên được dạy. Cách tốt hơn để học những kĩ năng này là có sinh viên dành mùa hè làm việc trong loại môi trường này. Chúng ta cần nhiều công nhân có kĩ năng và em sẽ trở lại CMU để thuê một số sinh viên giỏi nhất của chúng ta. Em mong gặp lại thầy.”

—-English version—-

Sharing experience

Dear professor, I always remember that you asked graduates to share their working experience with current students so here is my story:


“The dream of many Information Technology (IT) graduates is to work for software companies like Microsoft, Google, Apple, IBM or Oracle etc. When graduated, I got job offers from Microsoft, Google and a manufacturing company in New Jersey. I chose the manufacturing because it was located not far from Pennsylvania, where my parents live. To work nearby home instead of moving far away to California was a difficult decision for me. Most professors advised me that working for Software Company would be better for my career with better future and higher salary. You were the only professor who told me that nothing is better than staying close to my family to visit my parents often.”


“The manufacturing company has seven factories, many warehouses, and trucks to transport products to distributors or shipyards to ship products to other countries. It employed over hundred thousand workers, mostly in the factories. I worked in the Information Technology department, providing supports to the company. As a new worker, I was given the job of managing daily computer backup, monitor system security, maintain company website, and help users to use our computer systems. That was not what I had in mind for a career in software. After six months to get familiar with the IT systems, I was given responsibilities to monitor daily operations of seven factories, analyzed their workflows, established computer usage supports, and set priorities for the help desks. The job was more supervising rather than technical even it required some technical knowledge. Within a year, I performed well and was given additional responsibilities to work with users to understand their computing needs and system requirements. This works was more challenging for me and I appreciated the training on soft-skills that I learned in the capstone project.”


“The IT department also manages the company e-business. Customers order our products via the website. We also order raw materials from suppliers using this website. The IT system tracks orders; issues billings; monitor truck shipping to and from the factories; check all accounts, receivable and payable; handles employees payroll; supports customer billings; provides database support. My manager wanted me to focus on analyzing these business processes to identify and solve problems. I spent more time in meeting with users than did technical works. Every time I talked to friends who worked for software companies, they told me how much code that they wrote, what products they developed and I felt a little bit envy because my job was differ than them.”


“My responsibilities continued to increase as the company expands operation to several countries. I had to support the development of additional computer systems; provided data security and control, and managed business recovery in case natural disasters happen. After four years, I got promoted to IT system manager. My new job involved review and approve all systems programs prior to their implementation; evaluate the company’s technology use and needs; recommend improvements, such as hardware and software upgrades. I also managed operational budget and expenditures. In this position, I often met with department managers, supervisors, suppliers, computer vendors, and others, to resolve problems. I also hired workers, trained and supervised them and had 50 IT workers worked for me.”


“In manufacturing workplace, managers often handle multiple projects with different priorities. They are very busy dealing with a wide range of issues, both inside and outside the company. They need to have all information so they can make decision quickly. That is why they depend on the IT department to collect data, analyze them, and organize them into information for them. Some managers are nice and pleasant to work with, some are not. In this job, I learn to work with all types and levels of people, trying to understand their needs, what is the problem, analyzing issues, and, hopefully, fixing them quickly.”


“Problem analysis requires a lot of efforts to understand the complex and interwoven dependencies that are typical in any large company. IT workers have to gather data about systems and analyze data in a systematic way. We have to solve small problems as well as big ones. Sometime it takes few weeks, sometime few months. We receive a constant stream of requests that we must do. We analyze issues, follow-up on complaints, keep the system running, and also ‘fix’ things when they happen. All of these require a lot of management skills. Every day, I have to deal with an array of IT issues that are the heart of the business. If they are not solved quickly, the business will not be able to operate. Now I know how IT system is so important to the business. Now I appreciate how important is our data to your business. Only at this time, I know how IT is so critical to every company.”


“Let me give you some examples: If a customer fails to pay on time, the computer knows and automatically sends out a “reminding email”. Within three days, if the company does not receive the money, the computer issues a “warning email” and stops all product shipment to that customer. Our company uses a lot of raw materials; over one hundred different types come from over five hundred suppliers. Each day, suppliers ship raw materials to our seven factories in different locations. The computer monitors every truck, every shipment and every order. If the truck is late more than fifteen minutes, we were informed. If more than half hour, the computer sends out request to trucking managers to check on the problem and the factory managers are also informed. A late shipment could delay the assembly line, could impact the manufacturing process and delay shipping products to customers. If we do not ship, we do not get paid. Without some raw materials, production may stop and you have over hundred thousand workers with nothing to do. It could be a disaster. That is why IT systems are so critical. With GPS, our computer can track every truck, where they are and what happen when they are late. Our IT systems and network represent the heart of the business, and IT workers are the ones who know it the best, because they spend most of their time keeping the IT system running. They are always there to solve problems that might arise or figure out new ways to do things.”


“People who do not understand IT often thought computer system costs a lot and IT workers are a group of “Geek” playing computer games. In reality, we work very hard and making money for the company. Imagine that if our IT systems shutdown for one hour, it would cost the company million dollars. Imagine if the entire IT system in the world shutdown for one day. The entire business world will not be able to function.”


“I have been working for this company for eight years. I know more about company business than most people but every day I also learn something new. I keep my technical knowledge current by taking additional training. I always remember your advice that we need to have a lifelong learning habit so I read a lot. I also go to your website at CMU, follow your blog to learn the latest technology trends.”


“Last month, the company president called me to his office; I thought it was just another meeting that he asked me to get him some data so I did not pay attention. To my surprise, my boss and other vice presidents were there. They also invited my parents to come there too. The president announced that since IT was so important to the company, they need to have a Chief Information Officer (CIO) to manage all IT systems and that person is me. How can a young person like me get into the executive ranks? The president said: “You have the knowledge of all business operations; you have demonstrated the ability to handle many tasks at the same time; you remain calm under a lot of pressures; you get along with everyone in this company; you have solved many problems for us and for our customers; and the best thing among all, you still have the most current technical skills. When we update several computer systems, you are the only one who knows all the technical details. Your knowledge about information is precious. There is no one better than you. I and all the managers of this company believe in you!”


“It was a great surprise and I was so glad to see that my parents were so proud of me. At that time, I knew that I have made the right decision. I thought about your advice: “Money will come and go; job will come and go, but nothing is more precious than having parents, live near them, visit them and taken care of them when they are still alive. Make them proud that they have raised a good child.”


“Dear professor, I will never forget that. In my life, there were time I questioned my decision but now there is no doubt that I have made the right decision to get a job that allow me to be near my parents. If I move to California to work for a software company, I will never have this moment. As of my friends, today they are still writing code and managing software projects.”


“Dear professor, those are my experience that you can share with current students. I also have some suggestions: The current IT programs do not teach skills that the industry needs such as communicating and motivating others; delegating tasks fairly and efficiently; resolving various kinds of conflicts; changing their focus from being the person who does the task to the person who gets the task done; understand the company long-term vision and strategies. In my opinion, these skills should be taught. A better way to learn these skills is to have students spending summer working in this kind of environment. We need more skilled workers and I will be back at CMU to hire some of our finest students. I like to see you again.”

https://science-technology.vn/?p=1805

==


https://science-technology.vn/?p=6024

Cơ hội tương lai

28/09/2018

Theo một khảo cứu công nghiệp, công nghệ sẽ chi phối nhiều doanh nghiệp và cuộc sống của mọi người trong năm mươi năm tới hay hơn. Khi cuộc cách mạng công nghiệp thứ tư tiến tới, gần như mọi việc làm, ngày nay và tương lai, đều sẽ có liên quan tới công nghệ. Các công nghệ như Trí tuệ nhân tạo, Học máy, Robotics, in 3D, Công nghệ nano, Công nghệ sinh học, đã gây ra đột phá lớn cho các doanh nghiệp và thị trường lao động và sẽ làm thay đổi nhiều thứ trong vài năm tới. Khảo cứu này dự báo rằng 47% việc làm hiện thời sẽ mất đi trong vòng 10 năm tới nhưng nhiều việc làm mới cũng sẽ được tạo ra. Tuy nhiên, phần lớn các việc làm mới sẽ được định vị vào các nước đã phát triển nơi công nghiệp và giáo dục đã được chuẩn bị cho những thay đổi nhưng nhiều nước đang phát triển sẽ mất nhiều việc làm và bị thất nghiệp cao do thiếu sự chuẩn bị và hệ thống giáo dục chậm chuyển động.

Ngày nay, tin tức về công nghệ và tự động hoá có khắp trên Internet và phương tiện xã hội, các tin tức như robots sẽ tiếp quản nhiều việc làm, các phát kiến công nghệ xảy ra trên cơ sở gần như hàng ngày, nhưng ở một số nơi, mọi người vẫn đang hành động như không cái gì xảy ra. Trong thế giới được dẫn lái bởi công nghệ này, nhiều học sinh vẫn không được chuẩn bị cho thị trường việc làm đang thay đổi. Cho dù họ biết rằng kĩ năng kĩ thuật là quan trọng nhưng không mấy người làm nỗ lực để có được đào tạo cần thiết. Một trong những người bạn của tôi than: “Họ quá bận rộn với những việc tầm thường hàng ngày và chờ đợi trường dạy cho họ điều họ cần. Họ không chủ động tìm kiếm hay học bất kì cái gì vì họ không thấy sự khẩn thiết phải thay đổi. Họ đang sống trong ngôi nhà bị cháy nhưng họ chưa thấy khói, mắt họ vẫn “dán” vào các điện thoại thông minh mới nhất.”

Mọi lần tôi dạy ở các nước này, tôi bao giờ cũng khuyến khích học sinh trở nên chủ động hơn trong nghề nghiệp của họ và đọc nhiều nhất có thể được về thay đổi thị trường. Tôi khuyên: “Các em cần là người học cả đời và phát triển các kĩ năng được cần để cho các em có thể chuyển từ việc làm này sang việc làm khác một cách nhanh chóng trước ai đó khác. Các em cần kĩ năng mềm như tư duy phê phán, trao đổi, giải quyết vấn đề phức tạp, và lắng nghe tích cực. Bên cạnh các kĩ năng kĩ thuật, các em cần hiểu xu hướng thị trường, xu hướng công nghệ mới điều đang xảy ra trên thế giới quanh các em. Trong thị trường được toàn cầu hoá này, kĩ năng ngôn ngữ và tính thích nghi là chiếc vé duy nhất của các em đi tới các cơ hội tương lai. Có nhiều việc làm mở ra, nhiều việc làm sẽ là việc làm ảo nơi các em có thể làm việc ở nhà hay bất kì chỗ nào nhưng các em cần chuẩn bị từ BÂY GIỜ nếu không cơ hội này sẽ mất đi trước khi các em thậm chí biết tới nó.”

—English version—

Future Opportunities


According to an industry study, technologies will dominate many businesses and lives of people in the next fifty years or more. As the Fourth Industrial Revolution advances, almost all the jobs, today and the future, will be related to technology. Technologies such as Artificial Intelligence, Machine Learning, Robotics, 3D printing, Nanotechnology, and Biotechnology, already caused serious disruption to businesses and labor markets and will change many things in the next few years. The study predicted that 47% of the current jobs will be gone within the next 10 years but many new jobs will also be created. However, most of the new jobs will be located in developed countries where the industries and educations are already prepared for the changes but many developing countries will suffer a significant jobs loss and high unemployment due to their lack of preparedness and slow-moving education systems.


Today, technology and automation news are all over the Internet and social media, news such as robots will take over many jobs, technology innovations happen on an almost-daily basis, but in some places, people are still acting like nothing happen. In this technology-driven world, many students are still  unprepared for the changing job market. Even they know that technical skills are important but not many are making an attempt to get the needed training. One of my friends lamented: “They are too busy with daily trivial things and waiting for the school to teach them what they need. They are not actively seeking or learning anything because they do not see the urgency to change. They are living in a house that is on fire but they do not see the smoke yet, their eyes are still “glue” to their latest smartphones.”


Every time I teach in these countries, I always encourage students to be more active in their career and read as much as possible about the market changes. I advise: “You need to be lifelong learners and develop needed skills so you can move from one job to another quickly before someone else.You need soft-skills such as critical thinking, communication, complex problem-solving, and active listening. Besides technical skills, you need to understand market trends, new technologies trends and what is happening in the world around you. In this globalized market, language, skills, and adaptability are your only ticket to the future opportunities. There are many job openings, many will be virtual jobs where you can work at home or anywhere but you need to prepare NOW or the opportunity will be gone before you even know it.”


===

Học Khoa học máy tính

26/04/2018

Ngày nay chúng ta đang sống trong thế giới được dẫn lái bởi công nghệ thông tin. Từ trường học tới môi trường làm việc, từ hoạt động hàng ngày tới các hoạt động xã hội, việc biết cách dùng máy tính đang trở thành điều cần thiết nhưng để theo đuổi nghề nghiệp trong lĩnh vực này, em cần chuẩn bị từ sớm.

Nếu em muốn làm việc trong công nghiệp công nghệ thông tin, em phải bắt đầu với giáo dục tính toán sớm nhất có thể được. Cho dù trường của em không cung cấp các lớp máy tính, em vẫn có thể học từ những bài học nhập môn trực tuyến (như, YouTube hay MOOCs) dù bất kì môn học nào em chọn, em phải coi nó là nghiêm chỉnh vì việc học qua máy tính yêu cầu nhiều nỗ lực và cam kết để thành công.

Ngược với niềm tin phổ biến, Khoa học máy tính KHÔNG khó nhưng nó yêu cầu em phải nghiêm chỉnh trong học tập. 

Lớp đầu tiên em học có lẽ là lớp lập trình nơi em học cách viết mã. Lập trình là nền tảng của Khoa học máy tính và em cần phát triển các kĩ năng lập trình tốt trước khi em có thể đi xa hơn. Lời khuyên của tôi là khi em nhận được phân công lập trình, em cần bắt đầu ngay. Em sẽ phạm phải sai lầm, nhiều sai lầm, nhưng em học từ những sai lầm này và tiến sang các mức tiếp. Không sợ phạm phải sai lầm, không lo nghĩ về phạm sai lầm, mọi người đều phạm phải sai lầm vì CÁCH DUY NHẤT để học lập trình là học từ sai lầm.

Khoa học máy tính là việc áp dụng tri thức khoa học để tạo ra sản phẩm phần mềm. Em không thể ghi nhớ được công thức hay lí thuyết như em học trong các môn khác. Em không thể học “nhồi nhét” cho kì thi. Thức cả đêm để ghi nhớ mọi thứ trước kì thi sẽ không bao giờ có tác dụng vì mọi công việc trong lĩnh vực này đều là thực hành, không phải lí thuyết. Chương trình đào tạo khoa học máy tính dựa trên nhiều tầng tri thức nơi em phải làm chủ tầng này trước khi đi sang tầng tiếp. Nếu em không thể làm chủ được kĩ năng lập trình, sẽ khó tiếp tục cho tầng tiếp về thiết kế và kiến trúc. Không có nền tảng tốt, em sẽ không đi xa. Do đó, điều quan trọng là để thời gian để học và phát triển kĩ năng và không “đi tắt” bất kì cái gì.

Việc học lập trình lần đầu tiên bao giờ cũng thách thức. Nhưng dạy lớp lập trình cho những người học lần đầu tiên còn thách thức hơn.

 Tôi biết một số thầy giáo thích bắt đầu bằng lí thuyết và khái niệm cơ bản, nhưng tôi bao giờ cũng bắt đầu bằng việc yêu cầu người học “chơi’ với máy tính bằng việc viết những chỉ thị dễ nào đó cho máy tính làm kiểu như viết cụm từ: “Xin chào! Tên tôi là …” hay “Tên tôi là … tên bạn là gì?” rồi gửi nó tới người khác trong lớp để làm quen. Bằng việc làm điều đó, học sinh không sợ lập trình. Tất nhiên, đó là nhiều năm trước đây khi máy tính còn là cái gì đó mới với học sinh. Ngày nay, phần lớn sinh viên tới lớp với laptops, máy tính bảng, điện thoại di động và nhiều kĩ năng lập trình. Nhưng với một số sinh viên, người mới với lập trình, tôi khuyên họ bắt đầu bằng việc dùng tài nguyên trực tuyến TRƯỚC KHI học lớp lập trình. Internet cung cấp hàng nghìn bài học nhập môn trực tuyến mà có thể giúp bất kì người nào học từ những điều căn bản tới những khái niệm thách thức nhất. Bằng việc học theo nhịp độ riêng của mình, họ sẽ thu được tự tin hơn và phát triển các kĩ năng của họ để cho họ sẵn sàng khi học lớp lập trình chính thức trong trường.

Vài năm trước, một sinh viên nói với tôi rằng anh ta muốn làm việc trong công nghiệp trò chơi máy tính vì anh ta thích vẽ tranh nhưng anh ta không thích viết mã. Tôi hỏi: “Em vẽ tranh thế nào?”  Anh ta nói: “Bằng giấy và bút chì.” Tôi giải thích: “Để tạo ra ảnh hoạt hình máy tính, em cần dùng công cụ, không phải là bút chì và giấy.” Anh ta hỏi: “Nó là công cụ gì vậy?” Tôi trả lời: “Công cụ lập trình. Em viết mã để bảo máy tính vẽ tranh hoạt hình cho em. Không có kĩ năng lập trình, em không thể tạo ra được đồ hoạ máy tính. Lập trình là những chỉ dẫn để bảo máy tính làm mọi thứ. Máy tính chỉ là cái máy nhưng chính mã của em làm cho máy tính làm cái gì đó. Mọi thứ trong trò chơi máy tính đều dựa trên phần mềm, em không thể làm việc trong lĩnh vực này mà không biết cách viết mã.”

Khoa học máy tính KHÔNG phải là lĩnh vực mà em có thể học một mình. Cho dù em có khả năng làm việc độc lập, nhưng phần lớn công việc tính toán là làm việc theo tổ. Em cần cộng tác và trao đổi thông tin với người khác. Học cách học trong tổ và làm việc với tổ là bản chất vì nó cung cấp nhiều ích lợi. Một trong những ích lợi lớn nhất là ở chỗ nó sẽ dạy cho em cách làm việc như một phần của tổ và là người chơi theo tổ. Một khi em tốt nghiệp và đi vào chỗ làm việc, em sẽ sẵn sàng làm việc trong tổ.

—English version—

Study Computer Science


Today we are living in a world driven by information technology. From school to work environment, from daily to social activities, knowing how to use a computer is becoming a necessity but to pursue a career in this field, you need to prepare early.


If you want to work in the Information technology industry, you should start with a computing education as soon as possible. Even if your school does not provide computer classes, you can still learn from online tutorials (i.e., YouTube or MOOCs) whichever course you choose, you must take it seriously because learning computer requires a lot of efforts and commitment to succeed.


Contrary to popular beliefs, Computer Science is NOT difficult but it requires you to take your study seriously. The first class that you take is probably a programming class where you learn how to write code. Programming is the foundation of Computer Science and you need to develop good programming skills before you can go further. My advice is when you receive a programming assignment, you need to start right away. You will make mistake, a lot of mistakes, but you learn from these mistakes and advance to the next levels. Do not afraid of making mistakes, do not worry about making mistakes, everybody makes mistake because the ONLY WAY to learning programming is learning from mistakes.


Computer Science is the application of scientific knowledge to create software products. You cannot memorize formulas or theories like you learn in other subjects. You cannot “cram” for the exams. Stay up all night to memorize things before an exam will never work because all of the work in this field is practical, not theoretical. Computer science curriculum is based on multiple layers of knowledge where you must master one layer before going to the next. If you cannot master the programming skill, it would be difficult to continue to the next layer of design and architect. Without having good foundations, you will not go far. Therefore, it is important to take the time to learn and develop the skills and do not “shortcut” anything.


Learning to program for the first time is always challenging. But teaching programming class for the first-time learners is more challenging. I know some teachers like to start with the basic theories and concepts, but I always begin by asking students to “play” with the computer by writing some easy instructions for the computer to do such as writing a phrase: “Hello! My name is …” or “My name is … what is yours” then sending it to others in the class to get acquaintance. By doing that, students do not fear of programming. Of course, that was many years ago when the computer was something new to students. Today, most students came to class with laptops, tablets, mobile phone and a lot of programming skills. But  to some students who are new to programming, I would advise them to start by  using online resources BEFORE taking a programming class. The Internet provides thousands of online tutorials that can help anyone to learn from the basics to the most challenging concepts. By learning at their own pace, they will gain more confidence and develop their skills so they are readied when taking their formal programming class in school.


A few years ago, a student told me that he wanted to work in computer games industry because he likes to draw pictures but he did not like coding. I asked: “How do you draw pictures?  He said: “By paper and pencil.” I explained: “To create computer animation pictures, you need to use a tool, not pencil and paper.” He asked: “What tool is it?” I answered: “Programming tool. You write code to tell the computer to draw the animated pictures for you. Without programming skills, you cannot create computer graphics. Programming is the instructions to tell the computer to do things. A computer is only a machine but it is your code that makes the computer do something. Everything in the computer games is based on the software, you cannot work in this field without knowing how to write code.”


Computer Science is NOT a field that you can study alone. Even you have the ability to work independently, but most of the computing works are teamwork. You need to collaborate and exchange information with others. Learning to study in a team and work with a team is essential as it offers a lot of benefits. One of the biggest benefits is that it will teach you how to work as part of a team and to be a team player. Once you graduate and enter the workplace, you will be readied to work in a team.

https://science-technology.vn/?p=5809

 

Post a Comment

0 Comments