string(8) "category"

Mục tiêu quyết định ngôn ngữ lập trình bạn sẽ học

Mục tiêu quyết định ngôn ngữ lập trình bạn sẽ học ‘’Ngôn ngữ lập trình nào tôi nên học đầu tiên?’’ hay ‘’ Tôi nên ưu tiên ngôn ngữ lập trình nào hơn?’’. Đây chắc hẳn là một trong những câu hỏi thường thấy nhất của bất kỳ ai khi mới tiếp xúc với lập trình hoặc những sinh viên công nghệ thông tin đang tìm kiếm hướng đi cho bản thân khi ra trường. Thay vì để các bạn lựa chọn trong mơ hồ, bài viết này AMELA sẽ định hướng giúp mỗi người trong việc lựa chọn ngôn ngữ học dựa trên nguyên tắc: quyết định từ mục tiêu. Mỗi mục tiêu khác nhau sẽ có những lựa chọn ngôn ngữ lập trình phù hợp nhất.  Công nghệ thông tin nói chung hiện nay thường được chia thành các mảng, lĩnh vực chủ yếu như sau: Lập trình Web, Lập trình ứng dụng di động, Phân tích dữ liệu, Trí tuệ nhân tạo(AI), Robotic, IoT, Game. Tương ứng với mỗi lĩnh vực sẽ có các ngôn ngữ thường được dùng để lập trình.     1. Lập trình Web Lập trình web là công việc có nhiệm vụ nhận toàn bộ dữ liệu từ bộ phận thiết kế web để chuyển thành một hệ thống website hoàn chỉnh có tương tác với CSDL và tương tác với người dùng dựa trên ngôn ngữ máy tính. Ngôn ngữ phổ biến trong lập trình Web có thể kế đến:  Java được coi là ngôn ngữ lập trình nổi tiếng nhất, được coi là ngôn ngữ của tương lai trước bối cảnh bùng nổ của mạng toàn cầu Internet. Javascript là ngôn ngữ lập trình cho website và được hỗ trợ bởi hầu hết các trình duyệt web. Ngoài ra, trình duyệt di động cho điện thoại thông minh cũng hỗ trợ JavaScript. C# là ngôn ngữ gần gũi với các ngôn ngữ lập trình thông dụng như C++, Java hay Pascal. PHP là một trong những cách an toàn nhất để phát triển trang web và ứng dụng web động.    2. Lập trình ứng dụng di động Lập trình ứng dụng di động chính là viết ngôn ngữ lập trình (code) để xây dựng các tiện ích, chương trình, app, hệ điều hành trên mobile. Các ngôn ngữ thường thấy trong mảng này bao gồm:  Swift hoặc Objective - C là ngôn ngữ lập trình nên chọn nếu muốn làm Ứng dụng cho iOS. Java, Kotlin là ngôn ngữ nên chọn nếu muốn làm ứng dụng cho Android. Javascript hoặc lên cao là ReactNative để làm ứng dụng cho cả Android,  iOS.C, C++, C# hoặc Ruby cũng được sử dụng khi Lập trình ứng dụng di động. Các vị trí dành cho lập trình Web và App mà AMELA  đang tuyển gấp  các bạn có thể tham khảo Tại đây    3. Phân tích dữ liệu Phân tích dữ liệu là quá trình xử lý và phân tích các tập…

Developer nên ''đầu quân'' cho công ty Outsource hay Product?

Nhu cầu tuyển dụng vị trí Developer trong thời đại công nghệ 4.0 ngày càng lớn. Chính vì thế, Developer sẽ có đa dạng sự lựa chọn về cơ hội việc làm, hình thức công ty cho quá trình thăng tiến của Developer nên ‘’đầu quân’’ cho công ty Outsource hay gia nhập vào công ty công nghệ hoạt động theo hình thức làm Product.  Để có sự lựa chọn tốt nhất, Developer cần nắm rõ điểm khác biệt giữa công ty Outsource và công ty Product. Ưu điểm và khuyết điểm của loại công ty này là gì? Với bài viết này,  AMELA sẽ giúp các bạn trả lời cho những câu hỏi đó.  Công ty Outsource chính xác là gì? Công ty Outsource được thuê để làm sản phẩm công nghệ, phần mềm cho các công ty khác và được trả tiền theo dự án. Họ không sở hữu, kinh doanh trên sản phẩm mình làm ra.  Nói một cách nôm na, nhiệm vụ của công ty Outsource chính là làm theo yêu cầu của khách hàng, xong yêu cầu là xong nhiệm vụ. Công ty sẽ không quyết định được sản phẩm của mình làm ra thành hay bại.  ‘’Sự thành công của công ty Outsource được đo lường bằng mức độ hài lòng của khách hàng’’. Đương nhiên, công ty Outsource vẫn có thể góp ý để giúp trải nghiệm của người dùng tốt hơn. Tuy vậy, mục tiêu cuối cùng vẫn là sự hài lòng của khách hàng đã thuê mình. Trong quy trình làm sản phẩm, công ty Outsource chỉ làm việc trên một giai đoạn của sản phẩm chứ không phải trong suốt chu kỳ của nó.  Developer có biết sự khác nhau giữa công ty Product và công ty Outsource? Công ty Product Công ty Product không chỉ tạo ra sản phẩm mà còn quảng bá, bán sản phẩm đến tay người dùng. Sự thành công của công ty được đo lường bằng mức độ hài lòng của người dùng. Công ty chỉ tạo ra doanh thu, lợi nhuận dựa trên sự yêu thích của người dùng muốn mua sản phẩm của họ. Công ty Outsource Công ty Outsource không được quyết định sản phẩm cuối cùng đến tay người dùng nhưng với công ty Product họ có thể thay đổi, bảo trì, phát triển sản phẩm giúp tăng trải nghiệm người dùng. Việc hiểu rõ và mở rộng vòng đời sản phẩm sẽ giúp công ty Product có cảm giác ‘’sở hữu sản phẩm’’.   Developer nên làm việc ở công ty Product hay công ty Outsource Khi Developer đã nắm rõ sự khác biệt giữa công ty Product và công ty Outsource thì việc tiếp theo bạn nên quyết định bản thân phù hợp với loại công ty nào, định hướng phát triển ra sao.  Nếu bạn muốn làm việc trong nhiều dự án, nhiều sản phẩm trong các lĩnh vực khác nhau theo thời gian thì Outsource chính là…

Top 5 kỹ năng của Developer chuyên nghiệp ''dắt túi''

Trong thời đại công nghệ 4.0, công nghệ thông tin đã và đang chiếm lĩnh tất cả các lĩnh vực của thị trường. Nhu cầu tuyển dụng cho những vị trí công việc thuộc ngành này đang ngày một tăng trong đó có Developer. Vậy Developer là gì? Những kỹ năng phải có cho vị trí công việc này? AMELA sẽ gửi đến cho các bạn đọc top 5 kỹ năng phải có khi muốn trở thành một Developer chuyên nghiệp. Các bạn có thể tham khảo các vị trí công việc dành cho DEVELOPER mà AMELA đang tuyen-dung    Developer là gì?     Developer hay còn được gọi tắt là DEV, một trong những tên gọi phổ biến của lập trình viên. Họ sử dụng các ngôn ngữ lập trình để thiết kế, xây dựng, bảo trì các chương trình phần mềm, ứng dụng cho máy tính hoặc điện thoại. Nói chung, Developer được coi là chìa khóa quan trọng cho mọi sự phát triển của một phần mềm hay ứng dụng.  Công việc chính của một Developer là gì? Developer hay được hiểu sai với Coder hay Programmer. Thực tế, công việc Developer về chuyên môn vượt bậc hơn hẳn so với Coder hay Programmer. Họ có thể thiết kế và xây dựng một cấu trúc dữ liệu hoàn chỉnh nhất trong phần mềm. Công việc của một Developer bao gồm lập trình web, lập trình game, lập trình hệ thống, lập trình database.  Dù lập trình gì thì Developer cũng có các nhiệm vụ chính như sau: Thiết kế và xây dựng một ứng dụng hoặc phần mềm mới Tiến hành việc duy trì và cải thiện các tính năng của ứng dụng hoặc phần mềm đó Developer phải có trách nhiệm sửa chữa các lỗi phát sinh để đảm bảo phần mềm hoặc ứng dụng hoạt động bình thường Nghiên cứu và phát triển thêm những ứng dụng công nghệ mới. 5 kỹ năng phải của một Developer chuyên nghiệp   Để trở thành một Developer thành danh đòi hỏi rất nhiều các kỹ năng quan trọng như khả năng làm việc độc lập cũng như hoạt động nhóm tốt, tư duy logic, sáng tạo, quản lý thời gian,...  Tư duy logic, sáng tạo: Để tạo ra một sản phẩm chất lượng đòi hỏi ở một Developer chuyên nghiệp phải có khả năng tư duy tốt,  con mắt thẩm mỹ và sáng tạo.  Cẩn thận và tỉ mỉ trong công việc: Làm việc với những dữ liệu, mã code đòi hỏi Developer cần cẩn thận, tỉ mỉ để tránh những sai sót dù nhỏ nhất trong quá trình làm gây ảnh hưởng đến chất lượng sản phẩm hay gián đoạn công việc.  Khả năng làm việc độc lập cũng như hoạt động nhóm tốt: Luôn hoàn thành tốt các task được giao một cách độc lập, chỉn chu nhất. Đồng thời, với mỗi dự án, hoạt động teamwork diễn ra thường xuyên nên kỹ năng…

Mô hình thác nước (waterfall model) trong phát triển phần mềm

Mô hình thác nước( waterfall model) là một trong những phương pháp phát triển phần mềm có từ lâu đời. Nó được sử dụng rộng rãi trong ngành công nghệ phần mềm. Trong mô hình này, quá trình phát triển phần mềm được chia thành các giai đoạn khác nhau tương ứng với các nội dung và nhiệm vụ khác nhau. Mô hình thác nước giúp cho dự án phát triển phần mềm được diễn ra trình tự, giai đoạn mới chỉ được bắt đầu khi giai đoạn trước đã hoàn thành.  Các giai đoạn của mô hình thác nước (waterfall model) Trong mô hình thác nước (waterfall model), một dự án phát triển phần mềm sẽ được chia thành 6 giai đoạn khác nhau:  Phân tích yêu cầu: Thảo luận để nắm rõ được các yêu cầu, thử nghiệm tất cả yêu cầu để đảm bảo chúng có thể kiểm chứng được hay không.  Thiết kế hệ thống: Theo yêu cầu để tạo ra thiết kế, thảo luận về phần cứng, phần mềm, tạo văn bản về chúng.  Thực hiện: Từ thiết kế tạo ra các chương trình.  Thử nghiệm hệ thống: Chắc chắn hệ thống đang hoạt động và chạy được trong môi trường tương ứng. Đảm bảo không có sự cố gì xảy ra khi hệ thống được triển khai.  Bảo trì hệ thống: Trong trường hợp người dùng gặp lỗi phải chắc chắn có thể khắc phục được. Hệ thống luôn được cập nhật các tính năng mới để nâng cao hiệu quả hóa. Điểm mạnh và điểm yếu của mô hình  Mô hình thác nước (waterfall model) được sử dụng rộng rãi trong việc quản lý hiệu quả hệ thống phần mềm chứng tỏ những ưu điểm vượt trội của nó. Nắm bắt được rõ ràng các yêu cầu phải làm:  Trong mô hình thác nước ( waterfall model) cần phải thảo luận trước với khách hàng những gì cần phải làm. Truyền đạt lại chính xác, rõ ràng nhiệm vụ cho các thành viên trong team.Việc nắm rõ từng yêu cầu sẽ giúp quá trình phát triển phần mềm được diễn ra thuận lợi và chính xác.  Nắm bắt được tình hình dự án: Dự án phát triển phần mềm hoàn thành theo tiến độ hay không. Các yêu cầu được đặt ra ở trạng thái như thế nào. Mô hình thác nước ( waterfall model) sẽ giúp việc nắm bắt tình hình dự án được chính xác để có phương án điều chỉnh hợp lý.  Đảm bảo chất lượng dự án:  Các tiêu chí đầu vào và đầu ra được xác định rõ ràng, do đó nó dễ dàng và có hệ thống để tiến hành chất lượng. Bên cạnh những điểm cộng thì mô hình thác nước ( waterfall model) cũng có những nhược điểm còn tồn đọng.  Không chấp nhận yêu cầu thay đổi: Việc quay trở lại giai đoạn trước để thay đổi là điều khó khăn nếu sử dụng…

Những điểm đến đầu tư Outsource hàng đầu

Outsource là thuật ngữ không còn quá xa lạ khi rất nhiều các quốc gia trên thế giới trong đó có Nhật Bản đang lựa chọn việc thuê ngoài một số các quốc gia trên thế giới. Với tình trạng thiếu hụt trầm trọng nguồn lao động IT, phương pháp này được coi là bước đi khôn ngoan của Nhật Bản- một trong những cường quốc công nghệ thông tin lớn nhất trên thế giới. Hôm nay, AMELA sẽ chia sẻ đặc trưng của một số quốc gia đang được Nhật Bản lựa chọn để đẩy mạnh hợp tác và đầu tư dưới hình thức outsource bao gồm: Việt Nam, Philippines và Trung Quốc. Việt Nam Đầu tiên phải kể đến Việt Nam trong những năm gần đây đang là một trong những điểm đến outsource được Nhật Bản chú trọng. Đặc trưng của Việt Nam được biết đến là một quốc gia có nguồn nhân công giá rẻ, chăm chỉ và được đào tạo tốt về công nghệ thông tin(ICT). Nhiều công ty tại Nhật Bản đánh giá rất cao Việt Nam và hy vọng hợp tác trong các dự án vì được làm việc cùng với những kỹ sư phần mềm ưu tú, chăm chỉ, nghiêm túc. Tuy nhiên, do ảnh hưởng của việc gia tăng nhu cầu và phát triển kinh tế nên Nhật Bản cũng đang suy tính đến việc giá cả thuê nhân công tăng mạnh trong tương lai. Philippines Bên cạnh Việt Nam,  Philippines thu hút rất nhiều các doanh nghiệp Nhật Bản nhờ sở hữu các designer tài năng. Philippines cũng có nhiều đặc điểm lợi thế giống Việt Nam như: tiếng Anh được sử dụng phổ biến, Nhật Bản và Philippin chỉ cách nhau 1 giờ đồng hồ, nguồn nhân công chăm chỉ. Những lý do trên giúp việc giao tiếp và trao đổi giữa hai nước trở nên thuận tiện hơn. Tuy nhiên, kỹ năng phát triển phần mềm, hệ thống cũng là một điểm trừ nên Nhật Bản đang phải cân nhắc việc đầu tư vào quốc gia này. Trung Quốc Là một quốc gia có số lượng công ty lớn đa dạng, kỹ thuật công nghệ thông tin hàng đầu, dân số top 1 trên thế giới nên Trung Quốc từ lâu đã là điểm đến đầu tư outsource của các quốc gia trên thế giới không riêng gì Nhật Bản. Sự đảm bảo về chất lượng các sản phẩm luôn là điểm cộng lớn của Trung Quốc trong mắt các nhà đầu tư. Tuy nhiên, chi phí thuê nhân công ngày càng tăng do sự phát triển với tốc độ chóng mặt của nền kinh tế đang là một thách thức đối với Nhật Bản. Thêm vào đó, tính dân tộc cũng là một vấn đề lớn nên việc đảm bảo tiến độ cho các sản phẩm là điều không thể thiếu khi làm việc với quốc gia này. AMELA đã giải thích khá chi tiết các đặc…

Hiểu rõ Hacker và bảo mật thông tin

Khi nhắc đến vấn đề bảo mật thông tin(BMTT), Hacker sẽ là đối tượng được đưa ra đầu tiên. Khi một Hacker đột nhập vào hệ thống bảo mật thông tin của tổ chức doanh nghiệp nhằm mục đích phá hủy, đánh cắp hay làm rò rỉ thông tin, dữ liệu sẽ đem lại hiệu quả vô cùng nghiêm trọng. Để ngăn chặn điều này, các tổ chức doanh nghiệp luôn có những chính sách về bảo mật thông tin, dữ liệu vì đó là tài sản vô cùng giá trị và quan trọng. Nhưng liệu mọi người đã hiểu rõ về Hacker, có phải tất cả các Hacker đều làm việc với mục đích không tốt? Bài viết hôm nay AMELA sẽ giúp mọi người hiểu rõ về Hacker và bảo mật thông tin được dễ dàng Hacker là gì? Phân loại Hacker  Hacker là người hiểu rõ hoạt động của hệ thống máy tính, mạng máy tính, có thể viết hay chỉnh sửa phần mềm, phần cứng máy  để làm thay đổi, chỉnh sửa nó với nhiều mục đích tốt xấu khác nhau. Dựa trên mục đích tốt xấu khác nhau, hacker được chia thành 2 kiểu chính là: White Hat(Hacker mũ trắng), Black Hat( hacker mũ đen). Ngoài ra, Grey Hat( Hacker mũ xám), Blue Hat( Hacker mũ xanh),...là những kiểu Hacker chưa được công nhận rộng rãi.  White Hat ( Hacker mũ trắng) White Hat còn được gọi với cái tên Ethical Hacker là những Hacker có đạo đức, sử dụng những kỹ năng về lập trình, hiểu biết hệ thống để loại bỏ virus, giúp các tổ chức doanh nghiệp phát hiện ra lỗ hổng trong phần mềm, hệ thống bằng cách đột nhập vào nó. Họ hack vào hệ thống để khám phá ra các vấn đề bảo mật, trước khi kẻ xấu làm điều đó. Khi phát hiện ra vấn đề, Hacker sẽ báo cáo với tổ chức doanh nghiệp để tìm cách phá và sửa. Phần lớn White Hat đều có bằng cấp trong lĩnh vực an toàn công nghệ thông tin hoặc khoa học máy tính như chứng nhận phổ biến nhất là CEH (Certified Ethical Hacker) từ EC-Council. Cơ hội nghề nghiệp cho những White Hat rất nhiều như kỹ sư an ninh mạng, chuyên gia phân tích malware, cao hơn nữa là CISO (Trưởng phòng bảo mật thông tin),...Họ sẽ sử dụng những kiến thức nâng cao, chuyên sâu của mình về các phần mềm độc hại, virus, các cuộc tấn công  DoS, DDoS và những mối đe dọa trực tuyến khác để vô hiệu nó, bảo mật thông tin và dữ liệu. Black Hat( Hacker mũ đen) Black Hat còn được biết đến là các Cracker, họ dùng những kiến thức của mình học được về hack với những mục đích xấu. Họ thường tìm những ngân hàng, tổ chức, công ty có hệ thống bảo mật kém, lấy cắp tiền hoặc thông tin thẻ tín dụng. Các…

Hiểu rõ công việc IT Comtor, BrSE, JQC trong các công ty offshore thị trường Nhật Bản

Khi thuật ngữ ‘’Offshore thị trường Nhật Bản’’ ra đời thì các thuật ngữ chỉ công việc, cụ thể là IT Comtor, BrSE, JQC cũng xuất hiện. Các bạn học chuyên ngành tiếng Nhật có hứng thú với IT và đang hướng tới chuyên ngành này liệu đã phân biệt được chính xác và cụ thể về nghiệp vụ và kỹ năng của từng loại công việc này chưa. Nếu chưa hay không rõ thì hãy cùng Amela tìm hiểu nhé! I. IT comtor, BrSE, JQC là gì? IT Comtor IT Comtor là thuật ngữ chỉ phiên dịch viên tiếng Nhật chuyên về lĩnh vực công nghệ thông tin (IT). Comtor là viết tắt của từ Communicator, nghĩa là người truyền tin, người truyền đạt.  Nói ngắn gọn, IT Comtor chính là nghề phiên dịch tiếng Nhật chuyên ngành IT. Ngoài ra, thuật ngữ này cũng được dùng để chỉ các phiên dịch viên thực hiện phiên dịch trong nhiều ngành/ lĩnh vực khác. BrSE BrSE hay còn gọi kỹ sư cầu nối (Bridge system engineer) là người đóng vai trò kết nối giữa khách hàng và project team. Họ là người sử dụng tốt kỹ năng giao tiếp, nghiệp vụ về kỹ thuật của mình để giúp cho quá trình trao đổi giữa bên khách hàng và project team được thực hiện một cách thuận lợi, hướng đến kết quả cuối cùng là bàn giao dự án thành công, đem lại sự hài lòng đến với khách hàng. QA QA (Quality Assurance) là người chịu trách nhiệm thực hiện công việc kiểm tra chất lượng phần mềm bằng tiếng Nhật để hoàn thành các yêu cầu chất lượng được chấp thuận bởi khách hàng hay bên liên quan trước khi công việc dự án được bắt đầu. Ngoài ra, QA cũng thực hiện các công việc giống như QC nhưng sẽ chuyên sâu về tiếng Nhật hơn. II. Nghiệp vụ của IT Comtor, BrSE, QA Như vậy, IT Comtor, BrSE, JQC sẽ phải làm những công việc cụ thể như thế nào? IT Comtor:  +  Khi nhận được yêu cầu kèm với tài liệu kỹ thuật, IT Comtor sẽ chịu trách nhiệm dịch tài liệu cho các kỹ sư. Hỗ trợ họ tạo ra Estimate là chi phí ước tính mà khách hàng cần trả khi thực hiện các yêu cầu đó.  +  Phiên dịch cuộc trao đổi giữa hai bên như Q&A, những feedback diễn ra trong quá trình thực hiện yêu cầu đó. +  Giải thích những mô tả, yêu cầu của khách hàng cho team project +  Tham gia cuộc họp báo cáo tiến độ, và lưu lại biên bản họp. +  Nắm bắt tiến độ để chủ động liên lạc với khách hàng khi xảy ra vấn đề không mong muốn. + Phương tiện liên lạc giữa khách hàng và IT Comtor thường là Email, mạng SNS nội bộ,... BrSE + Xác nhận, nắm rõ, triển khai các yêu cầu từ phía khách hàng. Làm hài…

Yêu cầu ''cơ bản'' về dàn máy tính của dân IT

Dân IT có thể đơn giản chuyện ăn uống và ăn mặc nhưng nhu cầu về chất lượng cơ sở vật chất phục vụ cho công việc thì vô cùng cao. Dàn máy tính được ví như cái '' cần câu cơm'' cho dân IT, không chỉ cho công việc mà đôi khi dùng để giải trí sau giờ làm việc'' hack não''. Sau đây, AMELA sẽ chia sẻ cho mọi người một số yêu cầu'' cơ bản'' về dàn máy tính của dân IT Case máy tính Case là trái tim, là bộ não, là linh hồn của một chiếc PC. Một cái case với chip I7 - 4 nhân 8 luồng, xung nhịp tối đa 4.9 Ghz, kết hợp cùng ram 32GB có thể làm mọi thứ mà một lập trình viên cần. Với một chiếc case’’ xịn sò’’ thì android studio hay vài chục tab Chrome vẫn làm cho máy tình chạy mượt mà. Hơn nữa, nếu bạn lỡ tay tắt mạng thì cũng không cần lo lắng máy tụt FPS và xin thêm deadline vài ngày vì mở Android Studio nữa.   Nhiều màn  hình Một màn hình máy tính liệu có đủ cho một lập trình viên? Câu trả lời chắc chắn là không. Nếu có trên 1 màn hình máy tính các bạn có thể phân chia nhiệm vụ code cho từng màn hình. Nếu code Java ở màn hình này thì màn hình còn lại sẽ dành cho code SQL. Thứ tự truyền tham số thế nào đều có thể nắm bắt được nhanh chóng và dễ dàng hơn. Bài học được rút ra từ các lập trình viên’’ muốn code nhanh, dàn máy tính nên có hai hoặc ba màn hình’’   Bàn phím cơ và chuột   Bàn phím cơ và chuột là một thứ cũng không thể thiếu được cho các lập trình viên. Tiếng kêu lách tách từ bàn phím được ví như sức hút của thỏi nam châm trái dấu. Càng gõ các bạn càng muốn gõ nhiều hơn nữa, khó mà dừng được. Không chỉ vậy, những bàn phím cơ đời mới còn tích hợp cả đèn led cùng chế độ led ảo diệu và đẹp mắt sẽ làm các lập trình viên chúng ta khó lòng mà từ chối. Cũng giống như bàn phím, chuột máy tính cũng có rất nhiều loại chất lượng. Một dàn máy tính cấu hình cao, đa màn hình đi kèm với một chú chuột Razer hoặc Logitech chắc chắn là điều lý tưởng cho các chàng trai, cô nàng công nghệ rồi.   Tản nhiệt nước và đèn led   Với một hệ thống như vậy, tản nhiệt là thứ không thể thiếu. Một bộ tản nhiệt tốt cho phép case luôn hoạt động trong trạng thái tốt nhất. Một trong những loại tản nhiệt khá được ưa chuộng là hệ thống tản nhiệt nước có đè. Với một case khủng thì nhiệt năng sinh ra trong quá trình hoạt…

5 game luyện kỹ năng lập trình không thể bỏ qua

Ngưng dán mắt 24/24 vào chiếc màn hình code huyền thoại nhàm chán. Vì bạn có rất nhiều cách thú vị khác để nâng cao kỹ năng lập trình của bản thân, như vừa chơi vừa học chẳng hạn. Lựa chọn 1 trong 7 tựa game sau đây, bạn sẽ được phát triển khả năng lập trình một cách hay ho và nhanh chóng hơn nhiều. Codin Game  Trong CodinGame, người tham gia sẽ phải bảo vệ con tàu của mình trước cuộc tấn công từ kẻ thù. Đạn sẽ được bắn ra khi người chơi gõ đúng dòng lệnh ở cột soạn thảo đặt bên cạnh. CodinGame mang đến một trò chơi giúp bạn có thể tìm hiểu hơn 25 ngôn ngữ lập trình, bao gồm JavaScript, Ruby và PHP. Một trong những điều hấp dẫn của game này là bạn có thể chơi với bạn bè hoặc đồng nghiệp, cũng như có thể tham gia cuộc thi viết code quốc tế. CodinGame được đánh giá là một trong những cách giúp nâng cao kỹ năng lập trình đơn giản và hiệu quả nhất. Để chơi game, người dùng không cần tải về hay cài đặt gì cả, mà chỉ cần mở trình duyệt và truy cập địa chỉ. Code Combat Game CodeCombat được tạo ra với mục tiêu ban đầu là dành cho giáo viên và sinh viên nhằm giúp việc tiếp cận với bộ môn công nghệ thông tin trở nên sinh động hơn. Nhưng nó cũng rất phù hợp cho những lập trình viên vừa mới bắt đầu học. Thông qua trò chơi những ngôn ngữ lập trình như Python, JavaScript, CoffeeScript… được truyền tải rất sinh động. Luật chơi khá đơn giản. Ở cấp độ cơ bản Dungeon, bạn sẽ phải di chuyển Hero của mình băng qua các chướng ngại vật bằng một số lệnh cơ bản. Qua mỗi vòng khác nhau mức độ khó của câu lệnh sẽ được tăng lên dần. Điều này càng làm bạn có động lực với thử thách kế tiếp. Codehunt Codehunt là một trò chơi có thể chơi bằng cách sử dụng ngôn ngữ lập trình Java hoặc C#, được thiết kế để dạy cho bạn các nguyên tắc cơ bản của bất kỳ ngôn ngữ nào bạn chọn, bắt đầu bằng huấn luyện, di chuyển qua các chủ đề như Loops và Strings, và kết thúc với những thử thách như Sorting, Cyphers và Puzzles. Điều thú vị về Codehunt là nó không cho bạn biết làm thế nào để giành chiến thắng ở mỗi thử thách mà bạn sẽ phải tự tìm ra, đây cũng là một yếu tố tăng sức hút của trò chơi. Elevator Saga Elevator Sage sẽ kiểm tra kỹ năng JavaScript của bạn bằng các thách thức như di chuyển thang máy hay vận chuyển người sao cho hiệu quả nhất. Trò chơi khởi động bằng nhiệm vụ vận chuyển 15 người trong khoảng thời gian dưới 1 phút. Flexbog Froggy…

UX/UI Designer - Người thiết kế công nghệ

Thiết kế là một thuật ngữ khá rộng và mơ hồ. Vì vậy khi ai đó nói “Tôi làm nghề thiết kế” chắc chắn nó không đủ thông tin để mô tả việc họ đang làm hàng ngày. Có vô vàn kiểu công việc liên quan tới thiết kế. Những gì cần thiết kế có thể nằm trong rất nhiều lĩnh vực, như thiết kế công nghiệp (xe, nội thất…) tới in ấn (tạp chí, và các ẩn phẩm…) tới công nghệ (webstie, mobile) và rất nhiều lĩnh vực khác. Những công ty công nghệ ngày càng nhiều và phải tập trung tạo ra những giao diện cho người dùng, và đương nhiên những kiểu công việc mới được tạo ra. Các chức danh như thiết kế UX (thiết kế trải nghiệm) hay UI Designer khá rắc rối để hiểu rõ ngay cả với những người thiết kế làm trong các lĩnh vực khác. Nào hãy cùng ráng sức để hiểu được công việc đằng sau mỗi chức danh của ngành công nghệ máy tính này. UX Designer (User experience designer) – Thiết kế trải nghiệm? UX Designer có nhiệm vụ tập trung chủ yếu vào việc Cảm giác sản phẩm này ra sao. Một vấn đề về thiết kế không chỉ có một câu trả lời hợp lý. UX designer tìm nhiều cách để tiếp cận nhằm giải quyết một vấn đề cụ thể của người dùng. Nhiệm vụ chính của UX designer là chắc chắn rằng quy trình logic của sản phẩm đi từ bước này tới bước kế tiếp. Một cách mà một người UX Designer hay làm là đóng vai một người dùng để quan sát cách người dùng… quan sát. Việc người dùng có nhận ra những khối hình, chữ, màu sắc.. họ xác định và lặp lại để tạo ra một cách trải nghiệm “Tốt nhất”. Một dự án ví dụ là việc tạo ra một quy trình tiếp cận cho một người dùng mới. " Xác định các mẫu sẽ dùng, các quy trình người dùng làm tác vụ, và nhận diện UI. Tương tác với các kịch bản, người dùng cuối cùng, tương tác với các mẫu thử, đưa các màn hình thiết kế với người chủ sản phẩm. Làm việc với giám đốc sáng tạo và người thiết kế thẩm mỹ để tạo ra một hình ảnh nhận diện của Twitter tương ứng với các tính năng. Phát triển và duy trì các công cụ thiết kế, mockup và những thứ cụ thể nếu cần. – Một mô tả công việc của chức danh UX Desigenr tại Twitter –" Những thứ có thể thấy: Wireframe của các màn hình, kịch bản, sitemap. Công cụ: Photoshop, Sketch, Illustrator, Fireworks, Invision Bạn có lẽ sẽ nghe thấy họ nói đâu đó: “Chúng ta nên cho người dùng thấy trang – Cám ơn bạn, Bạn đã hoàn tất việc đăng ký” UI Designer (user interface design) – Thiết kế giao diện Không như những người thiết…

Làm thế nào để phân biệt Front-End, Back-End và Full-Stack

Bạn mở một tab trình duyệt mới, gõ vào một địa chỉ URL, và nhấn enter. Trang web được tải ngay lập tức. Nó gần như làm bạn nín thở bởi layout gọn gàng, các trang được xây dựng tốt, và hình ảnh rất ấn tượng. Người chịu trách nhiệm cho mọi phần của trải nghiệm đó là ai? Đó chính là các nhà phát triển web. Tính đến tháng 11 năm 2014, thế giới Internet chứa hơn 680 triệu trang web. Và đang ngày càng tăng lên. Hôm nay chúng ta sẽ nói về một số công việc đối với các lập trình viên web, những người chịu trách nhiệm cho việc lập trình, xây dựng, phân tích, và duy trì tất cả những trang web đó. Các trang web giờ đây là một thành phần quan trọng cho bất kỳ doanh nghiệp nào để có thể cạnh tranh trên thị trường. Các xu hướng phát triển web và những hiệu ứng tốt nhất thay đổi hầu như theo mùa, vì vậy các lập trình viên không bao giờ lo thiếu việc. Làm thế nào để phân biệt Front-End, Back-End và Full-Stack trong phát triển web? Nhưng làm thế nào để biết chính xác có những loại công việc phát triển web nào để tìm kiếm và đào tạo? Nếu bạn dạo quanh các trang web việc làm hoặc duyệt qua các khóa học trực tuyến, bạn có thể biết rằng phát triển web được chia nhỏ thành 3 mối quan tâm chính: front-end, back-end, và full stack. Nếu bạn đã biết qua HTML, JavaScript, hoặc có thể một chút Python, nhưng bạn không chắc chắn lắm về con đường để đi tiếp, thì bài viết này là dành cho bạn. Các khóa học lập trình tại TechMaster sẽ cung cấp cho bạn những kỹ năng thực tế nhất để có thể xin được việc làm. Với nhiều mô hình đào tạo như online, offline, và FlipLearning... Lập trình viên Front-End Khóa front-end tại Techmaster Vietnam: https://techmaster.vn/khoa-hoc/25610/web-frontend-cho-nguoi-moi-hoc Phần front-end của một trang web là phần tương tác với người dùng. Tất cả mọi thứ bạn nhìn thấy khi điều hướng trên Internet, từ các font chữ, màu sắc cho tới các menu xổ xuống và các thanh trượt, là một sự kết hợp của HTML, CSS, và JavaScript được điều khiển bởi trình duyệt máy tính của bạn. Các kỹ năng và công cụ Các lập trình viên front-end chịu trách nhiệm cho giao diện của một trang web và kiến trúc những trải nghiệm của người dùng. Để thực hiện được những mục tiêu đó, các lập trình viên front-end phải tinh thông 3 ngôn ngữ chính: HTML, CSS, và ngôn ngữ lập trình JavaScript. Ngoài việc thông thạo các ngôn ngữ đó, các lập trình viên front-end cần phải làm quen với các framework như Bootstrap, Foundation, Backbone, AngularJS, và EmberJS, để đảm bảo nội dung luôn hiển thị tốt trên mọi thiết bị khác nhau, và các thư viện như jQuery và LESS, đóng gói code…

Làm sao để handover dự án ?

Cách đây ít tháng mình chuyển việc, nhắc tới chuyển việc mình nợ các bạn 1 bài về chủ đề “làm sao để nhảy việc ở Nhật”. Vừa vào chân ướt chân ráo đã được (bị) hù là cho ướt cả … 3 chân. Mấy tháng rồi mình không viết bài được cũng vì vụ này, vừa phải làm quen môi trường – đồng nghiệp – sếp – dự án – qui trình … tất cả đều mới toanh. Cho đến thời điểm hiện tại mọi thứ có vẻ khá hơn 1 chút, “lửa” bắt đầu nhỏ dần và đoàn tàu tiếp tục lăn bánh, đích còn xa nhưng bản thân mình đã kịp ngồi chung vs anh em trên cùng 1 toa, giờ là thời điểm nhìn lại, đánh giá và tự nghĩ ra giải pháp cho giai đoạn tiếp theo – mà các bác nhật hay gọi là furikaeri(振り返り). Giải thích sơ sơ về handover cho các mem còn sinh ziên. Tiếng nhật là hikitsugi 引き継ぎ, tiếng việt là … gắp lửa bỏ tay người … ah mà chả biết tiếng việt gọi là gì. Đại khái có 1 mem đang làm thì nghỉ – có lý do chính đáng hoặc không, nói chung là ko còn tiếp tục, sẽ có 1 khoảng thời gian để truyền đạt nội dung công việc cũng như các vấn đề mà dự án đang gặp phải cho người tiếp nhận (mình là người tiếp nhận trong hoàn cảnh này). Khoảng thời gian này dài hay ngắn cũng phụ thuộc nhiều yếu tố, nếu dài thì tốt, còn ko thì cũng phải chấp nhận chứ biết sao được. Nội dung truyền đạt lại cũng thế, nếu ông nào kỹ tính thì đưa nhiều, ông nào vớ vẩn thì nói qua loa, còn những bạn có tâm thì ngoài nội dung công việc cần làm ra còn chỉ cho người sau biết chỗ này chỗ kia đang cháy to, chỗ nọ ngập nước. Đấy là về mặt công việc, còn mặt con người – nhân sự nữa, phải tính hết trong khoảng thời gian có hạn. Vậy phải làm răng, đang lúc căng mà cứ đòi đi nha sĩ hoài … Có mấy cái gạch đầu dòng bên dưới. Về mặt công việc Phải lên danh sách những mục bắt buộc. Cấu trúc source Phần mình cần phải làm Cây thư mục tài liệu : dự án tổ chức tốt thì có cây, còn ko thì thành 1 bãi … cũng phải lo hốt cho hết ? chia buồn Arsenal Danh sách những tài liệu bắt buộc phải đọc (trong 1 mớ hỗn độn phải chỉ ra chứ hem có thời gian nhai hết) Account login system : có nhiều loại, cái này tuỳ dự án – công ty – khách. Thể chế vận hành : có mấy bên tham gia, công ty nào, phụ trách cái gì. Mình làm gì trong đó. Qui trình dự án : cái này nghe hơi to…