Coder Social home page Coder Social logo

rust-track's Introduction

Submission Guide

How to ( not ) submit final assignment tasks

Here you will find short ( or not so short ) instructions on how to send tasks.

Summary

  • Read your condition carefully and even a few times.
  • Create a new project with cargo new --lib solution
  • Write a solution in src/lib.rs
  • Perform the sample test. If your code is not compiled on the sample test, you will receive 0 points.
  • Check that the types of functions and structures are the same ones we have described in the condition. If you decide to return type Foo&Fooinstead of the type described, our tests just won't compile and you'll get 0 points.
  • Do not use external libraries ( you cannot upload them to the ) interface.
  • Do not share your decision with anyone.
  • Don't watch other people's decisions.
  • Copy the entire content to src/lib.rsin the text box on the site.

Honor Code

sharing of solutions

All decisions become public after the deadline. Before that, any sharing decisions are prohibited.

This includes:

  • Send your decision to someone else.
  • Show it to a friend to "eat ideas".
  • Put it somewhere public before the ( deadline, for example GitHub ).

If we catch that you copied, you will lose all your points from tasks. This includes submissions that have been changed to look different. This it's easier to catch than you think.

On the other hand, don't hesitate to write the simplest possible code because "other people will pass on the same decision". It is also easily recognizable, and of course, we will not assume that you copied. Write the best code you can, don't share your decisions and there will be no reason to worry that we will think, that you copied.

What do you need

If you are sending a task for the first time, check that you have a cargo:

$ cargo --version
cargo 1.64.0 (387270bc7 2022-09-16)

The testing is done using the command cargo test.

Sample

Fpr each task there are example tests. Mandatory download the test and run it for eacah test. Tasks are automatically checked with tests, and if your code is not compiled with the base test, it will not be compiled during the check. As a result of which you will get 0 points.

If the base test is compiled but not passed, you do not appear to have implemented something right - you can still run a homework for which you can earn a partial number of points. However, we strongly advise you to just start earlier with homework and decide it completely.

To run the test:

  • Save the test file as tests/test_basic.rs (in the project initialized above with cargo new)
  • Follow the following command:
    $ cargo test
    

For more information on testing in Rust, read this chapter in the documentation.

More tips

  • Feel completely free to write more tests. The sample test file will be only sanity check, which checks a few simple cases. The real test will be much more thorough and it is good to consider what other cases are not covered, and add them.
  • The first homework may seem easy to you. This can make you think, "Well, I can do that to write it in an hour or two before the deadline". You probably can't. Rust is not an easy language to learn, and if you haven't already written a Rust code, don't underestimate the difficulty of the first homework, even if you the condition seems easy.
  • The second homework you might think will be as easy as the first and leave it for an hour or two before the deadline. Will not be. When we get to the second homework, we will have enough interesting material to challenge you a little.
  • In general, do not leave your homework for the last moment. If nothing else, if you run your homework for half an hour before the deadline with some small error, there is no time to see this and warn you. A message from the "I was just about to fix it, but I was 1 minute late after the deadline" will have no effect - 1 minute around the deadline is not the time to write or fix your homework, considering we'll give you one whole week.

rust-track's People

Contributors

denniswon avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.