Mùa hè sáng tạo
Mời tham gia Shopee Code League 2021
Các chiến binh OLP đã sẵn sàng để tham gia Giải đấu Lập trình Online lớn nhất của @Shopee chưa? Sau thành công năm 2020, Shopee Code League 2021 mùa hai sẽ trở lại vào ngày 6 - 20 tháng 3 sắp tới! Đây là một sân chơi không thể bỏ qua đối với các bạn sinh viên và chuyên gia trong toàn khu vực để thử sức và thi đấu về khả năng lập trình của mình. Thành lập ngay một team từ 2 đến 4 thành viên để chinh phục những bài toán thực tế về data analytics, data science và thuật toán được thiết kế đặc biệt với đội ngũ Kỹ sư của Shopee. Ngoài ra, bạn còn có thể nâng cao kỹ thuật của mình thông qua hàng loạt hội thảo chuyên đề miễn phí của cuộc thi nữa đấy! Lên lịch hẹn và tham gia ngay Giải đấu Lập trình đáng mong đợi của năm cùng Shopee tại https://careers.shopee.com/codeleague/ #ShopeeCodeLeague #TechAtShopee #datanalytics #datascience #coding Shopee (Sea, Garena) là đối tác quan trọng nhiều năm hỗ trợ cho các Coders và Ban Tổ chức OLP-ICPC Việt Nam và Châu Á. Nhiều ICPC'ers đã tìm bến đỗ làm việc và thành công tại đây. Qua tìm hiểu, Ban Tổ chức OLP-ICPC biết các bạn trẻ Việt Nam rất thành công trong Shopee Code League 2020 như: UET, Chemthan và mong muốn giới thiệu đến cộng đồng OLP-ICPC Việt Nam. Sau khi trao đổi với đại diện BTC tại Việt Nam cuộc thi Hackathon mới của Shopee, Thông báo và mời các Trường, các Teams và các bạn sinh viên đăng ký tham gia Hackathon mới theo thông báo của Shopee, cụ thể: Tiếp nối thành công của Shopee Code League, Shopee sẽ tổ chức Shopee Ultra-Hackathon 2021 được diễn ra từ ngày 29 đến 31/01/2021 Thông tin về cuộc thi Shopee Ultra-Hackathon 2021 Shopee Ultra-Hackathon là cuộc thi hackathon kéo dài 36 giờ với nhiều thử thách do Shopee tổ chức, nơi những người tham gia có thể xây dựng những tính năng trong Ứng dụng Shopee. Chúng tôi khuyến khích các bạn sinh viên và cả các kỹ sư phần mềm tham gia cuộc thi. Giải thưởng khủng!Nếu cần thông tin chi tiết hơn gửi eMail tới Olpvietnam@vaip.vn để có trao đổi cụ thể với BTC, |
26/10 công bố Thư viện và nội dung PMNM trong OLP'20
Thư viện cho khối thi “Phần mềm nguồn mở” Download toàn văn ở tệp đính kèm phía dưới Thư viện nguồn mở chính
NukeViet CMS: Hệ quản trị nội dung (Content Management System - CMS) xây dựng dựa trên nền tảng phần mềm nguồn mở NukeViet - một phần mềm nguồn mở thế hệ mới do người Việt phát triển. NukeViet CMS cho phép bạn xây dựng và quản lý các website một cách dễ dàng. NukeViet đã được trao giải Nhân tài đất Việt 2011, được Bộ GD&ĐT khuyên dùng trong thông tư số 08/2010/TT-BGDĐT, được Bộ TT&TT Quy định ưu tiên sử dụng trong cơ quan, tổ chức nhà nước tại thông tư 20/2014/TT-BTTTT. [1]
Apache: Là chương trình máy chủ HTTP - một chương trình dành cho máy chủ đối thoại qua giao thức HTTP. Apache là phần mềm phổ biến nhất để vận hành website bằng NukeViet. [2]
PHP: Ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. PHP rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. [3]
MySQL: Hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. [4]
HTML: Ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web trên World Wide Web. Cùng với CSS và JavaScript, HTML là một trong những ngôn ngữ quan trọng trong lĩnh vực thiết kế website. [5]
Git: là công cụ quản lý mã nguồn được sử dụng rất nhiều tại các dự án mã nguồn mở trên thế giới. Sinh viên cần thiết phải tìm hiểu Git và sử dụng git để nộp kết quả bài thi thông qua git diff và đẩy pull request lên tới kho mã nguồn của BTC. GitHub là một dịch vụ cung cấp kho lưu trữ mã nguồn Git dựa trên nền web cho các dự án phát triển phần mềm. Đề thi sẽ yêu cầu thao tác với mã nguồn được lưu trữ trên GitHub. [6]
Các đội tuyển sẽ nghiên cứu cách sử dụng các thư viện, cách lập trình trên các ngôn ngữ này mục tiêu có thể cài đặt, sử dụng NukeViet, lập trình giao diện, module trên NukeViet, thao tác với mã nguồn NukeViet đặt trên Github.
Nội dung đề thi cho phần thi “Phần mềm nguồn mở” (viết tắt PMNM) sẽ bao gồm: ● Cài đặt, lập trình giao diện hoặc module trong vòng 6 tiếng tại nơi thi (theo phong cách Hackathon [13]). Yêu cầu về lập trình giao diện hoặc module sẽ được Ban Tổ Chức công bố trước khi thí sinh vào phòng thi. ● Mô tả, trình diễn kết quả trước Ban Tổ Chức.
Thư viện hỗ trợ
Eclipse IDE for PHP Developers: Là phần mềm hỗ trợ để lập trình NukeViet được các lập trình viên NukeViet khuyến khích sử dụng nhất. [7]
XAMPP: Phần mềm tích hợp Apache + MySQL + PHP. Cài đặt phần mềm này, người sử dụng hoặc lập trình viên sẽ có ngay môi trường đầy đủ trên máy tính cá nhân để vận hành NukeViet. [8]
phpMyAdmin: Công cụ được viết trên PHP để thao tác trực quan với cơ sở dữ liệu MySQL ngay trên trình duyệt web. Nó có thể thực hiện nhiều tác vụ như tạo, sửa đổi hoặc xóa bỏ cơ sở dữ liệu, bảng, các trường hoặc bản ghi; thực hiện báo cáo SQL; hoặc quản lý người dùng và cấp phép. phpMyAdmin được tích hợp sẵn trong XAMPP. [9]
Bootstrap: Là một framework bao gồm các HTML, CSS và JavaScript template dùng để phát triển website chuẩn responsive. [10]
jQuery: Là thư viện được viết từ JavaScript, jQuery giúp xây dựng các chức năng bằng Javascript dễ dàng, nhanh và giàu tính năng hơn. [11]
Những điểm thí sinh cần lưu ý trong cuộc thi OLP FOSS 2020Cuộc thi OLP FOSS 2020 có những điểm quan trọng thí sinh cần lưu ý như sau: 1. Tương tự mô hình Hackathon của những năm gần đây, đề thi năm nay tập trung vào một phần mềm cụ thể là NukeViet và giải quyết một số bài toán/ vấn đề nhất định cho nó. Tuy nhiên, cách thức chấm điểm khác hoàn toàn so với các cuộc thi Hackathon trước đây. Trong toàn bộ thời gian thi, thí sinh không chỉ tập trung giải một bài toán duy nhất do Ban Tổ Chức (BTC) công bố trước khi thi, kết quả thi cũng không chỉ xét kết quả cuối cùng mà BTC sẽ có thang điểm chấm cho toàn bộ quá trình thí sinh tham gia lập trình, từ kỹ năng code, kỹ năng sử dụng các công cụ làm việc nguồn mở, kỹ năng làm việc nhóm… cuối cùng mới là sản phẩm. 2. Thí sinh sẽ phải trình diễn kết quả thi vào cuối buổi thi trong thời gian 5 phút. 3. Thí sinh sẽ phải làm quen với kỹ năng lập trình PHP & MySQL trên nền phần mềm nguồn mở NukeViet. Về hướng ra đề thiBài thi tập trung vào việc chỉnh sửa hoặc lập trình mới giao diện, module trên NukeViet. Thí sinh sẽ cần phải lấy mã nguồn, chỉnh sửa và đưa bài thi lên Github. Đề bài sẽ được công bố ngay trước khi thi. Về số lượng sinh viên tham gia1. Ban tổ chức không hạn chế số lượng đội sinh viên tham gia cuộc thi OLP FOSS 2020. 2. Tuy nhiên, mỗi đội sinh viên có số sinh viên tham gia tối đa là 03 (ba) người. 3. Ban tổ chức sẽ không cung cấp máy tính. Sinh viên cần mang và sử dụng laptop cá nhân. 4. Sinh viên được khuyến khích tương tác cùng cộng đồng nguồn mở NukeViet (diễn đàn, group Facebook, cộng đồng lập trình NukeViet trên github...) để chuẩn bị kiến thức trước khi thi Về môi trường phát triểnA. Laptop: Khuyến khích cấu hình laptop như bên dưới hoặc tương đương. 1. Tốc độ CPU 1.5 Ghz hoặc nhanh hơn. 2. RAM 1GB hoặc nhiều hơn. 3. Ổ cứng còn trống 3Gb hoặc nhiều hơn. 4. Internet connection (LAN hoặc Wireless). B. Môi trường: 5. Linux (Ubuntu, CentOS, Fedora...). Tiêu chí đánh giáMột số tiêu chí đánh giá kết quả cuộc thi là: 1. Thao tác được với mã nguồn trên Github. 2. Phong cách lập trình rõ ràng, ghi chú đầy đủ trong code. Lập trình đúng chuẩn PSR-12 [12] là một lợi thế. 3. Sử dụng được các framework có sẵn & các thư viện nguồn mở (tương thích giấy phép) là một lợi thế. 4. Độ hoàn thiện, đẹp mắt, sáng tạo của sản phẩm. Gợi ýĐể thực hiện tốt bài thi, thí sinh cần tìm hiểu cách cài đặt, sử dụng và lập trình giao diện, module NukeViet. Kiến thức nền tảng mà thí sinh cần có là PHP+MySQL. Các tài liệu cần thiết thí sinh xem tại mục “Các cộng đồng nguồn mở và tài liệu hỗ trợ cho cuộc thi” ở cuối file. Thời gian làm bàiThời gian cho cuộc thi trong ngày là 06 (sáu) tiếng, từ 08h00 sáng tới 14h00 trong ngày thi. Sau đó các đội cần trình bày sản phẩm từ 14h00 tới 15h00. Giải thưởngGiải chính thức gồm giải nhất (một đội duy nhất), giải nhì và giải ba. Hội đồng giám khảo sẽ căn cứ vào chất lượng các bài thi để đề nghị số lượng giải thưởng nhì và ba. Ngoài ra, BTC sẽ căn cứ vào quá trình thi sẽ có các giải phụ như: - Giải vì cộng đồng nguồn mở: Dành cho đội thi đã công bố nhiều sản phẩm miễn phí nhất lên kho mã nguồn NukeViet (NukeViet Store) [14] & và được nhiều người tải về nhất trước ngày thi OLP 2020. - Giải nhà phát triển nguồn mở tiềm năng: Dành cho đội thi có nhiều commit nhất lên kho code chính thức của NukeViet [15] trước ngày thi OLP 2020. - … và một số giải phụ khác. Thông tin tham khảo[1] NukeViet CMS: https://nukeviet.vn/ [2] Apache: https://httpd.apache.org/ [3] PHP: https://www.php.net/, https://www.w3schools.com/php/DEFAULT.asp [4] MySQL: https://www.mysql.com/, https://www.mysqltutorial.org/ [5] HTML: https://developer.mozilla.org/vi/docs/Web/HTML [6] Git: https://git-scm.com/, https://github.com/ [7] Eclipse IDE for PHP Developers: https://www.eclipse.org/downloads/packages/release/2020-09/r/eclipse-ide-php-developers [8] XAMPP: https://www.apachefriends.org/index.html [9] phpMyAdmin: https://www.phpmyadmin.net/ [10] Bootstrap: https://getbootstrap.com/docs/3.3/ [11] JQuery: https://jquery.com/, https://learn.jquery.com/ [12] PSR-12: https://www.php-fig.org/psr/psr-12/ [13] Hackathon là gì: https://en.wikipedia.org/wiki/Hackathon [14]: NukeViet Store: https://nukeviet.vn/vi/store/ [15: Kho code NukeViet trên github: http://code.NukeViet.vn, https://github.com/nukeviet/nukeviet
Các cộng đồng nguồn mở và tài liệu hỗ trợ cho cuộc thi ● NukeViet's Facebook Group: https://www.facebook.com/groups/nukeviet ● NukeViet's Forum: https://forum.nukeviet.vn/ ● Tài liệu hướng dẫn sử dụng: https://wiki.nukeviet.vn/nukeviet4 ● Tài liệu hướng dẫn lập trình: https://wiki.nukeviet.vn/technical_manual4 ● Video hướng dẫn sử dụng, lập trình: https://www.youtube.com/user/nukeviet/videos |
26/10: Đề thi PROCON Cần Thơ 2020 & hướng dẫn
New: Tài liệu hướng dẫn kỹ thuật cho cuộc thi PROCON 2020 Ban tổ chức công bố các tài liệu kỹ thuật chi tiết dành cho các đội thi PROCON. Cụ thể: - Các đội đọc tài liệu Hướng dẫn chung để biết được các quy định chung về cách thức thi đấu cũng như các kênh hỗ trợ kỹ thuật (các nhóm facebook và skype). - Tài liệu Giải th.ích đề thi giúp các đội nắm rõ hơn về đề và cách thức thi để các đội có thể phát triển thuật toán. - Tài liệu API cung cấp mô tả kết nối với server chấm. Các thắc mắc về kỹ thuật, đề nghị các đội trao đổi trên kênh hỗ trợ kỹ thuật chung tài liệu. Download tài liệu ở files đính kèm phía dưới! Ban Tổ chức công bố đề thi Tranh tài nội dung PROCON 2020 tại Cần Thơ. Để các teams làm quen với Procon, về cơ bản đề chỉ thay đổi một chút so với năm 2019. Các vấn đề về kỹ thuật liên quan đến máy chấm và máy chơi BTC sẽ sớm công bố! Download đề ở File đính kèm phía dưới. |
PROCON ASIA 2020 sẽ hủy chuyển sang 2021 tại Việt Nam
Thông báo: Ban Tổ chức NAPROCK (Procon) Nhật Bản vừa gửi văn bản thông báo về quyết định hủy cuộc thi lập trình NAPROCK-PROCON quốc tế lần thứ 11 dự kiến tổ chức vào cuối tháng 3/2020 tại Hà Nội do dịch viêm đường hô hấp COVID-19 đang lan rộng và chưa có dấu hiệu suy giảm. BTC chân thành xin lỗi các đội thi và các bên liên quan với quyết định bất khả kháng này. BTC sẽ tặng quà thưởng cuộc thi cho các đội dự thi NAPROCK-PROCON quốc tế 2020 (theo danh sách tham dự). NAPROCK Nhật Bản sẽ xúc tiến việc tổ chức cuộc thi lập trình NAPROCK-PROCON quốc tế lần thứ 12 tại Hà Nội, Việt Nam vào năm 2021. Rất mong các đội tuyển Vietnam đã qua vòng loại PROCON 2019 tại Đà Nẵng và các đội đã đăng ký sơ loại thi nội dung sáng tạo Kandai thông cảm, BTC sẽ sớm liên lạc với các Đội tuyển để thông báo trực tiếp! |
Tuyển chọn đội tuyển thi sáng tạo PROCON 2020 (Kandai)
CUỘC THI PROCON 2020 Nội dung phần thi chủ đề (Kadai) Kích thích sự phát triển của địa phương dựa trên công nghệ thông tin - truyền thông (ICT) 1. Giới thiệu cuộc thi PROCON (PROGRAMMING CONTEST) là cuộc thi được tổ chức thường niên dành cho sinh viên yêu thích Công nghệ Thông tin toàn nước Nhật và sinh viên mời của các nước khác. Trong mười hai năm liên tiếp (từ năm 2007 đến nay), Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội đều được Ban tổ chức mời tham gia cuộc thi này. Các đội tuyển sinh viên của Trường đã tham dự và giành thứ hạng cao trong số các đội dự thi. Năm 2020, lần đầu tiên cuộc thi PROCON quốc tế dự kiến sẽ được tổ chức tại trường Đại học Công nghệ từ ngày 18/3 đến ngày 20/3 với 2 nội dung thi: Thi chủ đề (Kadai) và Thi tranh tài (Kyougi). Cuộc thi sẽ có các đội thi đến từ Nhật Bản, Singapore, Thailand, Indonesia, Malaysia, … và được tài trợ bởi nhiều công ty trong và ngoài nước, đặc biệt là các công ty đến từ Nhật Bản hoặc liên quan đến thị trường Nhật Bản. Bên cạnh cuộc thi PROCON cấp quốc gia để tuyển chọn các đội tuyển Thi tranh tài tại Đà Nẵng tháng 12 năm 2019, Hội tin học Việt Nam sẽ tổ chức vòng tuyển chọn để tuyển chọn 10 đội thi tham dự nội dung thi Chủ đề trong cuộc thi PROCON Quốc tế 2010. 2. Nội dung phần thi chủ đề (Kadai) Procon 2020 Với tốc độ đô thị hóa ngày càng lớn như hiện nay, các thành phố tập trung đông dân cư như Tokyo, Hà Nội, … đang gặp phải các vấn đề về quá tải cơ sở hạ tầng, rủi ro thiên tai, bất bình đẳng giàu nghèo, v.v. Mặt khác, nhiều vấn đề ở các vùng, địa phương vẫn còn tồn đọng chưa được giải quyết, ví dụ như tỉ lệ việc làm ở địa phương thấp, sự suy giảm dân số, khó khan trong việc chăm sóc người già, trẻ em, sự gia tăng của nhà bỏ hoang, kinh doanh giảm sút tại các khu phố mua sắm, v.v. Để ngăn chặn sự suy giảm dân số tại các địa phương và tạo ra sự phát triển năng động trong cả nước, cần thực hiện nhiều chính sách đa dạng để thực hiện mục tiêu tái phục hồi kinh tế địa phương. Với sự phát triển của công nghệ thông tin-truyền thông, nhiều vấn đề xã hội được kỳ vọng sẽ được giải quyết bằng cách áp dụng các công nghệ tiên tiến và đổi mới sáng tạo của Cách mạng Công nghiệp lần thứ tư (IoT, dữ liệu lớn, trí tuệ nhân tạo, robot, kinh tế chia sẻ, v.v.) vào mọi hoạt động của xã hội và doanh nghiệp, nhằm tiến tới Xã hội 5.0*. Việc ứng dụng các công nghệ thông tin truyền thông cũng có thể thúc đẩy kinh tế địa phương, tạo ra một cộng đồng hiện đại, có cuộc sống được đảm bảo, thúc đẩy sự liên kết giữa các cộng đồng dân cư, từ đó dẫn đến “sự phục hồi của địa phương”, “Sự phục hồi của địa phương” chỉ bắt đầu khi kinh tế địa phương được kích thích phát triển. Ví dụ như sử dụng ICT để kích thích hoạt động du lịch của địa phương, thu hút khách du lịch đến thăm quan, mua sắm. Phần thi Chủ đề của Cuộc thi Lập trình PROCON Quốc tế 2020 với mục tiêu “Kích thích sự phát triển của địa phương” đặt ra vấn đề sử dụng các công nghệ ICT trong việc giải quyết các vấn đề của địa phương nhằm tạo ra một khu vực năng động, có sức sống mới. Các đội dự thi sẽ phát triển các sản phẩm, ứng dụng Công nghệ thông tin truyền thông nhằm đáp ứng các tiêu chí của cuộc thi. Tại cuộc thi PROCON Quốc tế 2020, các đội thi sẽ demo sản phẩm, và thuyết trình về sản phẩm của mình. Dựa trên nội dung demo và thuyết trình, Ban giám khảo sẽ chấm điểm các đội dự thi. * Xã hội 5.0 là xã hội mới sau 1) xã hội săn bắn, 2) xã hội nông nghiệp, 3) xã hội công nghiệp, 4) xã hội thông tin. Các giá trị và dịch vụ mới được tạo ra mang lại sự sung túc cho phần lớn người trong xã hội. 3. Tiêu chí đánh giá bài thi tại cuộc thi PROCON 2020 Một bài thi của nội dung Chủ đề bao gồm: - 2 trang tài liệu giới thiệu về sản phẩm dự thi - Bài thuyết trình về sản phẩm dự thi - Trình diễn (demo) sản phẩm dự thi - Hướng dẫn cài đặt, sử dụng sản phẩm Bài thi của các đội sẽ được đánh giá một cách tổng thể từ kĩ năng thuyết trình đến chất lượng sản phẩm trình diễn. Các tiêu chí đánh giá chính bao gồm tính độc đáo, tính ứng dụng, khả năng hoạt động, năng lực phát triển hệ thống, năng lực xây dựng tài liệu hướng dẫn và năng lực trình bày ( bao gồm cả năng lực thuyết trình và năng lực xây dựng tài liệu). Bên cạnh đó, cả tài liệu hướng dẫn sử dụng và mã nguồn chương trình cũng là đối tượng để đánh giá. Các đội cần nộp tài liệu hướng dẫn sử dụng và mã nguồn chương trình trước thời hạn quy định. Thông báo về quy trình gửi nộp các tài liệu trên sẽ được gửi đến các đội tham dự vòng chung kết. Mỗi đội thi chủ đề có thể bao gồm 2-3 thành viên, và các thành viên phải là sinh viên. Các đội tham gia phần thi Chủ đề có thể tự do sử dụng một cách sáng tạo các thiết bị phần cứng, nhưng kết quả sẽ được đánh giá dựa trên việc lập trình để sử dụng các thiết bị này một cách hiệu quả. Tất cả các thiết bị này cần chứa được trong không gian trưng bày. Ngoài ra, việc cài đặt, trưng bày sản phẩm phải hoàn tất trong khoảng thời gian được chỉ định (khoảng 40 phút). Sự liên quan giữa chủ đề cuộc thi và sản phẩm cũng sẽ được đánh giá. Tính sáng tạo của sản phẩm được đánh giá cao nhất, tuy nhiên, tính ứng dụng và tính khả thi (phương pháp thực hiện), mức độ hoàn thiện sản phẩm và kĩ năng lập trình cũng sẽ được đánh giá. 4. Vòng tuyển chọn các đội tuyển Việt Nam Ở vòng tuyển chọn các đội Việt Nam dự thi cuộc thi PROCON Quốc tế 2020, các đội sẽ nộp các tài liệu thuyết minh về sản phẩm dưới dạng file PDF với số trang dưới 15 trang với các nội dung: - Giới thiệu đội thi - Giới thiệu sản phẩm với các nội dung o Giới thiệu o Điểm sáng tạo của sản phẩm o Cách thức thực hiện (thuật toán, giải pháp) o Kế hoạch phát triển, hoàn thiện sản phẩm Ở vòng tuyển chọn các đội Việt Nam, bài dự thi có thể ở dạng ý tưởng, các đội dự thi không nhất thiết phải có sản phẩm cụ thể. Tuy nhiên, các đội được lựa chọn thi tại cuộc thi PROCON Quốc tế 2020 cần xây dựng được chương trình ở mức độ có thể trình diễn được. Số lượng đội tuyển được tuyển chọn để tham gia cuộc thi PROCON Quốc tế 2020: 10 đội tuyển Đối tượng dự thi - Sinh viên các trường đại học, cao đằng tại Việt Nam - Số lượng thành viên trong 1 đội tuyển: tối đa là 5 thành viên Hình thức và thời hạn đăng ký: - Hình thức đăng ký: Gửi bài dự thi vòng tuyển chọn các đội tuyển Việt Nam đến địa chỉ email: olpvietnam@vaip.vn - Thời hạn đăng ký: 20/1/2020 Thông báo danh sách các đội được tham dự cuộc thi PROCON Quốc tế 2020: 7/2/2020 |
PROCON VIETNAM 2019
Kết quả PROCON Vietnam 2019 Chúc mừng:
8 Đội tuyển đoạt giải sẽ có mặt tại PROCON ASIA 2020 tại Hà Nội vào tháng 3 năm 2020 |
OLP'18 - Thư viện PMNM
OLYMPIC TIN HỌC SINH VIÊN VIỆT NAM NĂM 2018
Thư viện cho khối thi “Phần mềm nguồn mở” Thư viện nguồn mở chínhArduino ESP32: dự án phần cứng nguồn mở của thế giới, được hỗ trợ bởi cộng đồng IoT Maker Vietnam [1] Scikit Learn: scikit-learn là bộ công cụ sử dụng ngôn ngữ python, hỗ trợ các thuật toán khai phá dữ liệu và học máy. [2] M.E.O 2.0 Project: nền tảng mã nguồn mở Việt Nam của nhóm Maker Hanoi được xây dựng dựa trên NodeRed và một số IoT Platform sẵn có. Dự án có thiết kế mở cả phần cứng dưới dạng board mạch đồng hồ thông minh sử dụng chip Esp32. [3]
Các đội tuyển sẽ đọc, nghiên cứu, phân tích, và tìm hiểu các thư viện, dự án nguồn mở này để nắm được các chức năng chính, các giao tiếp, các thành phần (module) chính, cách sử dụng và cách mở rộng tính năng trong bộ thư viện và dự án.
Nội dung đề thi cho phần thi “Phần mềm nguồn mở” (viết tắt PMNM) sẽ bao gồm: ● Thêm mới hoặc cải tiến tính năng cho một dự án PMNM là M.E.O Project và ESP32, sử dụng bộ công cụ scikit-learn trong vòng 8 tiếng tại nơi thi (theo phong cách Hackathon [5]). Yêu cầu "thêm mới/cải tiến" sẽ được Ban Tổ Chức công bố trước khi thí sinh vào phòng thi. ● Thực nghiệm, tích hợp M.E.O Project, thiết bị ESP32 với scikit-learn và trình diễn trước Ban Tổ Chức. PythonPython (cùng HTML, JavaScript và CSS) là ngôn ngữ lập trình được chọn sử dụng trong nội dung thi “Mã nguồn mở” năm nay xoay quanh chủ đề phát triển các ứng dụng nguồn mở trên nền tảng IoT và điện toán đám mây. Arduino Arduino là một cộng đồng mã nguồn mở thiết bị nhúng bao gồm cả phần cứng và Arduino IDE. Được giới thiệu vào năm 2005, Những nhà thiết kế của Arduino cố gắng mang đến một phương thức dễ dàng, không tốn kém cho những người yêu thích, sinh viên và giới chuyên nghiệp để tạo ra những thiết bị có khả năng tương tác với môi trường thông qua các cảm biến và các cơ cấu chấp hành. Những ví dụ phổ biến cho những người yêu thích mới bắt đầu bao gồm các robot đơn giản, điều khiển nhiệt độ và phát hiện chuyển động. Đi cùng với nó là một môi trường phát triển tích hợp (IDE) chạy trên các máy tính cá nhân thông thường và cho phép người dùng viết các chương trình cho Arduino bằng ngôn ngữ C hoặc C++. GitGit là công cụ quản lý mã nguồn được sử dụng rất nhiều tại các dự án mã nguồn mở trên thế giới. Sinh viên cần thiết phải tìm hiểu Git và sử dụng git để nộp kết quả bài thi thông qua git diff và đẩy pull request lên tới kho mã nguồn của BTC. Thư viện phụ thuộcNodeRed: nền tảng hỗ trợ kết nối nhiều loại thiết bị IoT, các API và các dịch vụ từ các nhà cung cấp khác. NodeRed cung cấp các tiện ích hỗ trợ thông qua giao diện trực quan với yếu tố chính là các luồng làm việc (flow). Người dùng có thể định nghĩa, tuỳ chỉnh các luồng làm việc theo đầu vào (input) để nhận dữ liệu từ các hệ thống, biến đổi chuyển hoá dữ liệu (function) để gửi dữ liệu đến các hệ thống bên ngoài thông qua các đầu ra (output). Trong M.E.O Project [3] đã tích hợp sẵn NodeRed [4] và định nghĩa sẵn input, output để giúp người phát triển làm việc mới mạch esp32. numpy [8]: thư viện cơ bản phục vụ cho việc tính toán khoa học: biểu diễn và hỗ trợ các phép toán trên ma trận, hỗ trợ các phép toán đại số tuyến tính Scipy [9]: thư viện hỗ trợ để thực hiện các phép toán Các thư viện sử dụng trên Arduino ESP32: [10] [11] [12] [13]
Hình ảnh mẫu thiết bị đồng hồ thông minh ESP32 Tính năng chính: có màn hình hiển thị Oled 1.3, cảm biến 6050 - gia tốc và gyro, đồng hồ thời gian thực ds3231, bộ thu phát điều khiển hồng ngoại IR.
Dữ liệu mẫu được thu thập bằng thiết bị và gán nhãn theo các hành động có sẵn. Mô tả sơ bộ của dữ liệu gồm 7 thuộc tính và 1 nhãn: - Ax: số thực mô tả toạ độ - Ay: số thực mô tả toạ độ - Az: số thực mô tả toạ độ - Yaw: số thực mô tả toạ độ - Pitch: số thực mô tả - Roll: số thực mô tả - Time: đơn vị millisecond, tổng thời gian thu thập dữ liệu - Category: nhãn thể hiện loại hành động của bộ dữ liệu Những điểm mới và thay đổi trong cuộc thi OLP FOSS 2018So với các cuộc thi Olympic Nguồn mở những năm 2013 trở về trước, cuộc thi OLP FOSS 2018 có những điểm thay đổi như sau:
Về hướng ra đề thiBài thi sẽ tập trung vào việc xây dựng thêm a) dịch vụ kết nối thiết bị ESP32 với M.E.O và NodeRed để giải quyết một bài toán IoT và b) thu thập và xử lý các dữ liệu từ ESP32. Tất cả các dịch vụ được yêu cầu đóng gói và chạy trên Docker container. Đề bài sẽ được công bố ngay trước khi thi. Về số lượng sinh viên tham gia
Về môi trường phát triểnA. Laptop: Khuyến khích cấu hình laptop như bên dưới hoặc tương đương.
B. Môi trường:
C. Công cụ:
Tiêu chí đánh giáMột số tiêu chí đánh giá kết quả cuộc thi là:
Gợi ýĐể thực hiện tốt bài thi, thí sinh cần làm quen với M.E.O, ESP32, scikit-learn và cần nắm vững các thao tác làm việc với Docker. Thời gian làm bàiThời gian cho cuộc thi trong ngày là 07 (bảy) tiếng, từ 07h30 sáng tới 14h30 trong ngày thi. Sau đó các đội cần trình bày sản phẩm từ 14h30 tới 15h30. Giải thưởngTheo qui chế của OLP Tin học [6], giải chính thức gồm giải nhất, giải nhì và giải ba. Hội đồng giám khảo sẽ căn cứ vào chất lượng các bài thi để đề nghị số lượng giải thưởng. Thông tin tham khảo[1] Docker: https://github.com/espressif/arduino-esp32 [2] Scikit-learn: http://scikit-learn.org/stable/ [3] M.E.O Project: https://github.com/makerhanoi/meo-guide [4] NodeRed: https://nodered.org/ và https://github.com/node-red [5] Hackathon là gì: https://en.wikipedia.org/wiki/Hackathon [6] Chương trình tổng thể: http://www.olp.vn/olympic/noi-quy [7] Arduino Ide https://www.arduino.cc/en/Main/OldSoftwareReleases [8] Numpy http://www.numpy.org/ [9] Scipy https://www.scipy.org/ [10] Oled 1.3 (SH1106) - u8g2 : https://github.com/olikraus/u8g2 [11] Mpu6050 – i2cdev : https://github.com/jrowberg/i2cdevlib [12] Ds3231: https://github.com/jarzebski/Arduino-DS3231 & http://arduino.vn/bai-viet/369-giao-tiep-i2c-va-su-dung-module-realtime-clock-ds1307 [13] IR library: https://github.com/z3t0/Arduino-IRremote
Các cộng đồng nguồn mở hỗ trợ cho cuộc thi Vietnam OpenStack Facebook: https://www.facebook.com/VietOpenStack/ Group: https://www.facebook.com/groups/vietstack/ Slack: https://vietops.herokuapp.com/
Docker Hanoi Facebook: https://www.facebook.com/dockerhanoi Group: https://www.facebook.com/groups/containervietnam/
Maker Hanoi Website: https://makerhanoi.org Facebook: https://www.facebook.com/makerhanoi/ Meetup: https://www.meetup.com/Ha-Noi-Maker-Meetup/ |
OLP'17 - Thư viện Phần mềm nguồn mở
OLYMPIC TIN HỌC SINH VIÊN VIỆT NAM NĂM 2017
Thư
viện nguồn mở chính Docker: nền tảng ảo hóa mức hệ điều hành cung cấp cho người dùng cuối môi trường triển khai nhanh chóng, tiện ích. [1]. ESP8266: dự án phần cứng nguồn mở của thế giới, được hỗ trợ bởi cộng đồng IoT Maker Vietnam. [3] M.E.O Project: nền tảng mã nguồn mở Việt Nam của nhóm Maker Hanoi được xây dựng dựa trên NodeRed và một số IoT Platform sẵn có. [4]
Các đội tuyển sẽ đọc, nghiên cứu, phân tích, và tìm hiểu các thư viện, dự án nguồn mở này để nắm được các chức năng chính, các giao tiếp, các thành phần (module) chính, cách sử dụng và cách mở rộng tính năng trong bộ thư viện và dự án.
Nội dung đề thi cho phần thi “Phần mềm nguồn mở” (viết tắt PMNM) sẽ bao gồm: ● Thêm mới hoặc cải tiến tính năng cho một dự án PMNM là M.E.O Project trong vòng 8 tiếng tại nơi thi (theo phong cách Hackathon [5]). Yêu cầu "thêm mới/cải tiến" sẽ được Ban Tổ Chức công bố trước khi thí sinh vào phòng thi. ● Thực nghiệm, tích hợp M.E.O Project với Docker, thiết bị ESP8266 và trình diễn trước Ban Tổ Chức. PythonPython (cùng HTML, JavaScript và CSS) là ngôn ngữ lập trình được chọn sử dụng trong nội dung thi “Mã nguồn mở” năm nay xoay quanh chủ đề phát triển các ứng dụng nguồn mở trên nền tảng IoT và điện toán đám mây. Arduino Arduino là một cộng đồng mã nguồn mở thiết bị nhúng bao gồm cả phần cứng và Arduino IDE. Được giới thiệu vào năm 2005, Những nhà thiết kế của Arduino cố gắng mang đến một phương thức dễ dàng, không tốn kém cho những người yêu thích, sinh viên và giới chuyên nghiệp để tạo ra những thiết bị có khả năng tương tác với môi trường thông qua các cảm biến và các cơ cấu chấp hành. Những ví dụ phổ biến cho những người yêu thích mới bắt đầu bao gồm các robot đơn giản, điều khiển nhiệt độ và phát hiện chuyển động. Đi cùng với nó là một môi trường phát triển tích hợp (IDE) chạy trên các máy tính cá nhân thông thường và cho phép người dùng viết các chương trình cho Aduino bằng ngôn ngữ C hoặc C++ GitGit là công cụ quản lý mã nguồn được sử dụng rất nhiều tại các dự án mã nguồn mở trên thế giới. Sinh viên cần thiết phải tìm hiểu Git và sử dụng git để nộp kết quả bài thi thông qua git diff và đẩy pull request lên tới kho mã nguồn của BTC. Thư viện phụ thuộcNodeRed: nền tảng hỗ trợ kết nối nhiều loại thiết bị IoT, các API và các dịch vụ từ các nhà cung cấp khác. NodeRed cung cấp các tiện ích hỗ trợ thông qua giao diện trực quan với yếu tố chính là các luồng làm việc (flow). Người dùng có thể định nghĩa, tuỳ chỉnh các luồng làm việc theo đầu vào (input) để nhận dữ liệu từ các hệ thống, biến đổi chuyển hoá dữ liệu (function) để gửi dữ liệu đến các hệ thống bên ngoài thông qua các đầu ra (output). Trong M.E.O Project [2] đã tích hợp sẵn NodeRed và định nghĩa sẵn input, output để giúp người phát triển làm việc mới mạch esp8266. Những điểm mới và thay đổi trong cuộc thi OLP FOSS 2017So với các cuộc thi Olympic Nguồn mở những năm 2013 trở về trước, cuộc thi OLP FOSS 2017 có những điểm thay đổi như sau: 1. Bỏ phần thi câu hỏi trắc nghiệm lý thuyết về Phần mềm Nguồn mở. 2. Bỏ phần thi trắc nghiệm về các thư viện Nguồn mở. 3. Bỏ phần thi lập trình dạng thuật toán theo chủ đề. 4. Thay vào đó, đề thi năm nay tập trung vào một phần mềm thực tế hoặc/và một thư viện nguồn mở phổ biến. 5. Trong toàn bộ thời gian thi, thí sinh chỉ tập trung giải một bài toán duy nhất do Ban Tổ Chức công bố trước khi thi. 6. Thí sinh sẽ phải trình diễn kết quả thi vào cuối buổi thi trong thời gian 5 phút. 7. Thí sinh sẽ phải làm quen với kỹ năng lập trình nhúng, mã nguồn mở Adruino Về hướng ra đề thiBài thi sẽ tập trung vào việc xây dựng thêm dịch vụ kết nối thiết bị ESP8266 với M.E.O và NodeRed để giải quyết một bài toán IoT, tất cả các dịch vụ được yêu cầu đóng gói và chạy trên Docker container. Đề bài sẽ được công bố ngay trước khi thi. Về số lượng sinh viên tham gia1. Ban tổ chức không hạn chế số lượng đội sinh viên tham gia cuộc thi OLP FOSS 2017. 2. Tuy nhiên, mỗi đội sinh viên có số sinh viên tham gia tối đa là 03 (ba) người. 3. Ban tổ chức sẽ cung cấp 02 (hai) máy tính (PC) cùng mạch thiết bị ESP8266 và khuyến khích sinh viên áp dụng lập trình cặp (pair programming). 4. Sinh viên được quyền mang và sử dụng laptop cá nhân. 5. Sinh viên được khuyến khích tương tác cùng các cộng đồng nguồn mở tại Việt Nam như Vietnam OpenStack, Docker Hanoi, Maker Hanoi, IoT Maker Vietnam để chuẩn bị kiến thức trước khi thi. Về môi trường phát triểnA. Laptop: Khuyến khích cấu hình laptop như bên dưới hoặc tương đương. 1. CPU core i5 3.00 GHz hoặc tương đương. 2. RAM 4GB hoặc nhiều hơn. 3. Internet connection (LAN hoặc Wireless). B. Môi trường: 4. Ubuntu 16.04 64 bit. 5. Trình biên dịch IDE Adruino Tiêu chí đánh giáMột số tiêu chí đánh giá kết quả cuộc thi là: 1. Mức độ tối ưu, cải thiện công năng/sửa lỗi. 2. Độ hoàn thiện cũng như tính sáng tạo của giải pháp IoT. 3. Mã nguồn trong sáng, rõ ràng, có tài liệu đầy đủ thể hiện tính nguồn mở. Gợi ýĐể thực hiện tốt bài thi, thí sinh cần làm quen với M.E.O, ESP8266 và cần nắm vững các thao tác làm việc với Docker. Thời gian làm bàiThời gian cho cuộc thi trong ngày là 07 (bảy) tiếng, từ 07h30 sáng tới 14h30 trong ngày thi. Sau đó các đội cần trình bày sản phẩm từ 14h30 tới 15h30. Giải thưởngTheo qui chế của OLP Tin học [6], giải chính thức gồm giải nhất, giải nhì và giải ba. Hội đồng giám khảo sẽ căn cứ vào chất lượng các bài thi để đề nghị số lượng giải thưởng. Thông tin tham khảo[1] Docker: https://www.docker.com/ [2] NodeRed: https://nodered.org/ và https://github.com/node-red [3] ESP8266: https://github.com/esp8266vn/ và https://esp8266.vn/ [4] M.E.O Project: https://github.com/makerhanoi/meo-guide [5] Hackathon là gì: https://en.wikipedia.org/wiki/Hackathon [6] Chương trình tổng thể: http://www.olp.vn/olympic/noi-quy [7] Arduino Ide https://www.arduino.cc/en/Main/OldSoftwareReleases
Các cộng đồng nguồn mở hỗ trợ cho cuộc thi Vietnam OpenStack Facebook: https://www.facebook.com/VietOpenStack/ Group: https://www.facebook.com/groups/vietstack/ Slack: https://vietops.herokuapp.com/
Docker Hanoi Facebook: https://www.facebook.com/dockerhanoi Group: https://www.facebook.com/groups/dockerhanoi Slack: http://docker-hanoi.herokuapp.com/
Maker Hanoi Website: https://makerhanoi.org Facebook: https://www.facebook.com/makerhanoi/ |
Thư viện PMNM cho OLP'16 (new)
Thư viện nguồn mở chínhDjango: Thư viện chính được sử dụng trong dự án con Horizon [1] trong OpenStack, là một ứng dụng web cung cấp giao diện hỗ trợ tương tác giữa người dùng và các tính năng của các dự án khác trong OpenStack như Nova, Neutron, Glance ... Horizon được xây dựng từ framework Django [2] trên nền ngôn ngữ lập trình Python. Docker: nền tảng ảo hóa mức hệ điều hành cung cấp cho người dùng cuối môi trường triển khai nhanh chóng, tiện ích. [3]. cAdvisor: Công cụ giám sát tài nguyên sử dụng của Google. cAdvisor [4] cung cấp RESTful API để lấy các thông tin sử dụng tài nguyên từ các máy ảo OpenStack triển khai Docker.
Các đội tuyển sẽ đọc, nghiên cứu, phân tích, và tìm hiểu thư viện và dự án nguồn mở này để nắm được các chức năng chính, các giao tiếp, các thành phần (module) chính, cách sử dụng và cách mở rộng tính năng trong bộ thư viện và dự án.
Nội dung đề thi cho phần thi “Phần mềm nguồn mở” (viết tắt PMNM) sẽ bao gồm: · Thêm mới hoặc cải tiến tính năng cho một dự án PMNM có tên gọi OpenStack Horizon trong vòng 8 tiếng tại nơi thi (theo phong cách Hackathon [5]). Yêu cầu "thêm mới/cải tiến" sẽ được Ban Tổ Chức công bố trước khi thí sinh vào phòng thi. · Thực nghiệm, tích hợp Docker và cAdvisor với Horizon. HorizonHorizon là dự án con trong OpenStack, là một ứng dụng web cung cấp giao diện hỗ trợ tương tác giữa người dùng và các tính năng của các dự án con trong OpenStack như Nova, Neutron, Glance ... Horizon được xây dựng từ framework Django trên nền ngôn ngữ lập trình Python. PythonPython (cùng HTML, JavaScript và CSS) là ngôn ngữ lập trình được chọn sử dụng trong nội dung thi “Mã nguồn mở” năm nay xoay quanh chủ đề phát triển các ứng dụng nguồn mở trên nền điện toán đám mây. GitGit là công cụ quản lý mã nguồn được sử dụng rất nhiều tại các dự án mã nguồn mở trên thế giới. Sinh viên cần thiết phải tìm hiểu Git và sử dụng git để nộp kết quả bài thi thông qua git diff và đẩy pull request lên tới kho mã nguồn của BTC. Thư viện phụ thuộcd3js là thư viện giúp mô hình hóa dữ liệu dưới dạng đồ thị, biểu đồ. D3js được tích hợp sẵn trong Horizon và được sử dụng trong nhiều thành phần giao diện.
Những điểm mới và thay đổi trong cuộc thi OLP FOSS 2016So với các cuộc thi Olympic Nguồn mở những năm 2013 trở về trước, cuộc thi OLP FOSS 2016 có những điểm thay đổi như sau: 1. Bỏ phần thi câu hỏi trắc nghiệm lý thuyết về Phần mềm Nguồn mở. 2. Bỏ phần thi trắc nghiệm về các thư viện Nguồn mở. 3. Bỏ phần thi lập trình dạng thuật toán theo chủ đề. 4. Thay vào đó, đề thi năm nay tập trung vào một phần mềm thực tế hoặc/và một thư viện nguồn mở phổ biến. 5. Trong toàn bộ thời gian thi, thí sinh chỉ tập trung giải một bài toán duy nhất do Ban Tổ Chức công bố trước khi thi. Về hướng ra đề thiBài thi sẽ tập trung vào việc xây dựng thêm giao diện hỗ trợ mới nhằm tối ưu hóa hoặc/và cải thiện việc tự động cấp phát/thay đổi tài nguyên cho Docker, triển khai thông qua OpenStack. Đề bài sẽ được công bố ngay trước khi thi. Về số lượng sinh viên tham gia
Về môi trường phát triểnA. Laptop: Khuyến khích cấu hình laptop như bên dưới hoặc tương đương.
B. Môi trường:
Tiêu chí đánh giáMột số tiêu chí đánh giá kết quả cuộc thi là: 1. Mức độ tối ưu, cải thiện công năng/sửa lỗi. 2. Độ hoàn thiện cũng như tính sáng tạo của giải pháp tự động cấp phát tài nguyên. 3. Mức độ mô phỏng dữ liệu. Gợi ýĐể thực hiện tốt bài thi, thí sinh cần làm quen với các services trong OpenStack (Nova, Neutron… đặc biệt là Horizon), devstack và cần nắm vững các thao tác làm việc với Docker. Thời gian làm bàiThời gian cho cuộc thi trong ngày là 08 (tám) tiếng, từ 08h00 sáng tới 16h00. Ngày và địa điểm thi sẽ được công bố cụ thể trên website OLP. Giải thưởngTheo qui chế của OLP Tin học [6], giải chính thức gồm giải nhất, giải nhì và giải ba. Hội đồng giám khảo sẽ căn cứ vào chất lượng các bài thi để đề nghị số lượng giải thưởng. Thông tin tham khảo[1] Horizon: http://docs.openstack.org/developer/horizon/ [2] Django: MTV Python framework https://www.djangoproject.com/ [3] Docker: https://www.docker.com/ [4] cAdvisor: https://github.com/google/cadvisor [5] Hackathon: http://en.wikipedia.org/wiki/Hackathon Hackathon là gì: http://vnreview.vn/tin-tuc-xa-hoi-so/-/view_content/content/1245492/hackathon-la-gi [6] Chương trình tổng thể: http://www.olp.vn/olympic/noi-quy
Các cộng đồng nguồn mở hỗ trợ cho cuộc thi Vietnam OpenStack Facebook: https://www.facebook.com/VietOpenStack/ Group: https://www.facebook.com/groups/vietstack/ Slack: https://vietops.herokuapp.com/
Docker Hanoi Facebook: https://www.facebook.com/dockerhanoi |
Thư viện PMNM cho OLP'15 - Chỉnh sửa 9/11/2015
Thông báo khẩn (bổ xung, chỉnh sửa) ngày 9/11/2015 Nay sửa : 8. Về số lượng sinh viên tham gia
Sửa thành: 8. Về số lượng sinh viên tham gia
Mong các Trường, các Đội tuyển tham dự nọi dung PMNM thông cảm và chấp hành Quy chế. Theo đề nghị của HĐGK PMNM, BTC dự kiến thi OLP nội dung PMNM (FOSS) năm 2015 tiếp tục theo phong cách hackathon như năm 2014, song năm 2015 sẽ tăng thời lượng lên 8 tiếng thi liên tục (từ 8-16h không nghỉ). BTC sẽ bố trí nước uống và đồ ăn trưa cho các đội ngay tại phòng thi.
1. Thư viện nguồn mở chínhOslo.log: Thư viện nguồn mở trong dự án OpenStack [1], cung cấp các API giúp chuẩn hoá cấu hình, định dạng vào ra của log cho tất cả các dự án con trong OpenStack. (http://docs.openstack.org/developer/oslo.log/index.html ) Django: Dự án con trong OpenStack, là một ứng dụng web cung cấp giao diện hỗ trợ tương tác giữa người dùng và các tính năng của các dự án con trong OpenStack như Nova, Neutron, Glance ... Horizon được xây dựng từ framework Django [2] trên nền ngôn ngữ lập trình Python. (http://docs.openstack.org/developer/horizon/ )
Các đội tuyển sẽ đọc, nghiên cứu, phân tích, và tìm hiểu thư viện và dự án nguồn mở này để nắm được các chức năng chính, các giao tiếp, các thành phần (module) chính, cách sử dụng và cách mở rộng tính năng trong bộ thư viện và dự án.
Nội dung đề thi cho phần thi “Phần mềm nguồn mở” (PMNM) sẽ bao gồm: Thêm mới hoặc cải tiến tính năng cho một dự án PMNM có tên gọi OpenStack Horizon trong vòng 8 tiếng tại nơi thi (theo phong cách Hackathon [3]). Yêu cầu "thêm mới/cải tiến" sẽ được Ban Tổ Chức công bố trước khi thí sinh vào phòng thi. 2. Về HorizonHorizon (https://wiki.openstack.org/wiki/Horizon) là dự án con trong OpenStack, là một ứng dụng web cung cấp giao diện hỗ trợ tương tác giữa người dùng và các tính năng của các dự án con trong OpenStack như Nova, Neutron, Glance ... Horizon được xây dựng từ framework Django trên nền ngôn ngữ lập trình Python. 3. PythonPython (https://www.python.org/, cùng HTML, JavaScript và CSS) là ngôn ngữ lập trình được chọn sử dụng trong nội dung thi “Mã nguồn mở” năm nay xoay quanh chủ đề phát triển các ứng dụng nguồn mở trên nền điện toán đám mây. 4. GitGit (http://git-scm.com/) là công cụ quản lý mã nguồn được sử dụng rất nhiều tại các dự án mã nguồn mở trên thế giới. Sinh viên cần thiết phải tìm hiểu Git và sử dụng git để nộp kết quả bài thi thông qua git diff (http://www.git-scm.com/docs/git-diff).
5. Thư viện phụ thuộcpypcap (https://pypi.python.org/pypi/pypcap) là thư viện cần sử dụng để bắt các gói tin Ethernet. Sinh viên được khuyến nghị tìm hiểu thư viện này cho ứng dụng/bài toán nâng cao.
Pandas (http://pandas.pydata.org/) là thư viên để mô hình hóa và hiển thị dữ liệu sau quá trình phân tích log. 6. Những điểm mới và thay đổi trong cuộc thi OLP FOSS 2015So với các cuộc thi Olympic Nguồn mở những năm 2013 trở về trước và tiếp tục thành công của OLP FOSS 2014, cuộc thi OLP FOSS 2015 có những điểm thay đổi như sau:
7. Về hướng ra đề thiBài thi sẽ tập trung vào việc xây dựng thêm giao diện hỗ trợ mới nhằm tối ưu hóa hoặc/và cải thiện việc thẩm tra log của các services trong OpenStack. Đề bài sẽ được công bố ngay trước khi thi. 8. Về số lượng sinh viên tham gia
9. Về môi trường phát triểnA. Laptop: Khuyến khích cấu hình laptop như bên dưới hoặc tương đương.
B. Môi trường:
10. Tiêu chí đánh giáMột số tiêu chí đánh giá kết quả cuộc thi là: Mức độ tối ưu, cải thiện công năng/sửa lỗi (mã nguồn), độ hoàn thiện cũng như tính sáng tạo của giải pháp thẩm tra/phân tích log (mã nguồn), mức độ mô phỏng dữ liệu.
11. Gợi ýĐể thực hiện tốt bài thi, thí sinh cần làm quen với các services trong OpenStack (Nova, Neutron… đặc biệt là Horizon), devstack. 12. Thời gian làm bàiThời gian cho cuộc thi trong ngày là 08 (tám) tiếng, từ 08h00 sáng tới 16h00 ngày 26 tháng 11 năm 2015. 13. Giải thưởngTheo qui chế của OLP Tin học [4], giải chính thức gồm giải nhất, giải nhì và giải ba. Hội đồng giám khảo sẽ căn cứ vào chất lượng các bài thi để đề nghị số lượng giải thưởng. 14. Thông tin tham khảo[1] Oslo: OpenStack Common Library project https://wiki.openstack.org/wiki/Oslo [2] Django: MTV Python framework https://www.djangoproject.com/ [3] Hackathon: http://en.wikipedia.org/wiki/Hackathon Hackathon là gì http://vnreview.vn/tin-tuc-xa-hoi-so/-/view_content/content/1245492/hackathon-la-gi
[4] Chương trình tổng thể: http://www.olp.vn/olympic/noi-quy Thư viện PMNM download ở Tệp đính kèm. |