Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changes between Version 9 and Version 10 of StudentTips


Ignore:
Timestamp:
2011-08-26T14:11:56Z (8 years ago)
Author:
Jakub Jermář
Comment:

Improve tips.

Legend:

Unmodified
Added
Removed
Modified
  • StudentTips

    v9 v10  
    1 = Tips for students =
     1= Tips for (not only) students =
    22
    33On this page, we provide tips for authors of HelenOS master and bachelor theses, and various software projects. The tips are based on previous experience in this area. For official guidance, please consult your thesis / project supervisor.
     
    1515
    1616== Implementation ==
    17   * Stick to the [http://www.helenos.org/cstyle HelenOS coding style].
     17  * Stick to the [http://www.helenos.org/cstyle HelenOS coding style]. We really mean this. Your failure to adhere to the coding style of the surrounding code requires someone else's extra work to perform the cleanup after you. The fact that you may prefer another coding style is quite insignificant in the context of HelenOS. Get over it and use our coding style.
    1818  * Adhere to good coding practices, such as adequate commenting, avoiding dense code, using horizontal spacing as visual delimiter and keeping the block nesting level under control.
    1919  * Self-contained code is good, but avoid poorly integrated code. Poorly integrated code is pointlessly concentrated in one subdirectory of the source tree. For example, putting new generic ADT's and IPC primitives under the networking directory is a sign of poorly integrated code.
    2020  * As with the text of your thesis, similar citation rules should apply in your code. When using third party code, always give credit where the credit is due, always follow the license of the third party code. It would be kind of embarrassing to discover portions of e.g. Linux header file in code which you advertise as yours.
    2121  * Be open-minded. If you are designing a new subsystem or some sort of interface for HelenOS, it may be convenient to do it exactly how it is done in e.g. Linux. Please don't do that, especially not if the only reason would be because Linux does it that way. Remember that cloning a legacy system is not our goal. When evaluating approaches to a problem in other operating systems, use critical thinking and try to find problems of and ways to improve their solutions.
     22  * Always use English for writing comments.
     23
     24== Source history
     25  * Remember that the revision control system does not forget things. Whatever you commit to your local branch will often eventually be merged into the HelenOS mainline repository.
     26  * Always use English for writing commit logs.
     27  * Give some extra love to formulating your commit logs. You may consider providing one summary line followed by an empty line and a bullet list of more detailed description of each change.
     28  * Try to make more smaller commits than few larger commits.
     29  * Unrelated changes should go into separate commits.
     30  * Don't forget to review your changes before committing them.
    2231
    2332== Interacting with the community ==
    2433  * The HelenOS community can provide invaluable feedback to your ideas so make sure to interact with the community effectively. Simply put, participate on the mailing list and, if possible, attend the monthly project meetings.
     34  * Prefer open communication on the mailing list over one-to-one private communication of any sort.
     35  * Consider hanging around on our [irc://irc.freenode.net/helenos IRC channel].
     36  * Don't be shy, we don't bite.