Programming
Useful Links
Linux
- Different distributions
- Learn Linux
- Tutorials
- The Linux command line for beginner | Ubuntu - https://ubuntu.com/tutorials/command-line-for-beginners#1-overview
- UNIX / Linux Tutorial for Beginners - http://www.ee.surrey.ac.uk/Teaching/Unix/
- Basic Linux/Unix Commands with Examples - Guru99 - https://www.guru99.com/must-know-linux-commands.html
- Basic UNIX Commands - https://www.unixtutorial.org/basic-unix-commands
- Learn Linux with Online Linux Courses | edX - https://www.edx.org/course/introduction-to-linux
- Linux Basics: The Command Line Interface - https://www.edx.org/course/linux-basics-the-command-line-interface
- Commands
- Linux Commands Cheat Sheet | Linux Training Academy - https://www.linuxtrainingacademy.com/linux-commands-cheat-sheet/
- https://www.makeuseof.com/tag/linux-commands-reference-pdf/
- Test run
- Online Bash compiler - https://repl.it/languages/bash
- Online Linux Terminal - CoCalc - https://cocalc.com/doc/terminal.html
- Learn Shell - Free Interactive Shell Tutorial - https://www.learnshell.org/
- Tutorials
- Useful tools
- Putty (download the ssh client) - https://www.putty.org/
- PuTTY Home - Free Downloads, Tutorials, and How-Tos - https://www.ssh.com/ssh/putty/
Programming
- Programming
- Python
- Python Tutor http://pythontutor.com/
- Introduction to Programming Using Python 3 - Y. Daniel Liang http://www.cs.armstrong.edu/liang/py/test.html
- Java
- A C++ Tutorial for Java Programmers- http://pages.cs.wisc.edu/~hasti/cs368/CppTutorial/main.html
- Introduction to Programming in Java, http://introcs.cs.princeton.edu/java/home/The Java Tutorial,
- http://docs.oracle.com/javase/tutorial/index.html (Section "Trails Covering the Basics")
- Think Java, http://www.greenteapress.com/thinkapjava/
- Java API - http://docs.oracle.com/javase/6/docs/api/index.html?overview-summary.html
- CMPT 125 - http://www.cs.sfu.ca/CourseCentral/125/diana/announcementsr.html
- Introduction to Programming Using Java, Seventh Edition, Version 7.0, August 2014 - http://math.hws.edu/javanotes/
- Java text books - http://wiki.c2.com/?DefinitiveJavaBooks
- Other
- MyProgrammingLab - http://www.myprogramminglab.com/
- CodeWrite - http://codewrite.cs.auckland.ac.nz/index.php#
- programming notes (examples) - http://www.ntu.edu.sg/home/ehchua/programming/index.html
- Coding standards
- Recommended C Style and Coding Standards - https://www.doc.ic.ac.uk/lab/cplus/cstyle.html
- Introduction to Coding Guidelines for Cocoa - https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CodingGuidelines/CodingGuidelines.html
- PEP 8 — Style Guide for Python Code - http://legacy.python.org/dev/peps/pep-0008/
- Google Python Style Guide - https://google-styleguide.googlecode.com/svn/trunk/pyguide.html
- UML
- Umlet: a tool for constructing UML diagrams - http://umlet.com/
- UML for Java Programmers: a text on UML diagram standards - http://www.csd.uoc.gr/~hy252/references/UML_for_Java_Programmers-Book.pdf
- Courses
- Intro to Computer Science - https://www.udacity.com/course/cs101
- How to Use Git and GitHub - https://www.udacity.com/course/ud775
- Intro to Java Programming - https://www.udacity.com/course/cs046
- Programming Foundations with Python - https://www.udacity.com/course/ud036
- Student projects
- Book: Damith C. Rajapakse, "Practical Tips for Software-Intensive Student Project" http://www.comp.nus.edu.sg/~damithch/guide3e/
- "Teamwork Guide" by Ed Parrish https://classes.soe.ucsc.edu/cmps115/Spring01/staff/teams.html
- Misc
- These websites allow you to solve practice problems with immediate feedback:
- CodingBat - http://codingbat.com/
- Code Exercises (Java) - https://code-exercises.com/
- Coderbyte - https://coderbyte.com/
- Ideone.com - http://www.ideone.com
- pastebin - collaborative debugging tool - http://pastebin.com/
- http://practiceit.cs.washington.edu/practiceit/
- QuickHighligter - http://quickhighlighter.com/
- CodePad - http://codepad.org/
- Compile and execute - http://www.compileonline.com/compile_java_online.php
- Free online IDE - http://www.tutorialspoint.com/codingground.htm
- Online repl.it - https://repl.it/
- MOSS - A System for Detecting Software Plagiarism - http://theory.stanford.edu/~aiken/moss/
- hilite.me is a source code beautifier -[* http://hilite.me/ http://hilite.me/]
- Vagrant is a tool for building complete development environments. - https://www.vagrantup.com/
- CoderByte - https://www.coderbyte.com/
- Codewars - https://www.codewars.com/
- CodeFights - https://codesignal.com/
- CodinGame - https://www.codingame.com/start
- TopCoder - https://www.topcoder.com/challenges/
- HackerRank - https://www.hackerrank.com/
- LeetCode - https://leetcode.com/
- CodeChef - https://www.codechef.com/
- GeeksforGeeks - https://www.geeksforgeeks.org/
- Codeforces - http://codeforces.com/
- Exercism - https://exercism.io/
- These websites allow you to solve practice problems with immediate feedback:
- Python
TOOLS
- Tools
- Delete All Whitespace Characters - https://www.browserling.com/tools/remove-all-whitespace
- Code Beautify - https://codebeautify.org/
- Remove Extra Spaces - https://codebeautify.org/remove-extra-spaces
Copyright © Herbert H. Tsang, http://www.herberttsang.org
page revision: 11, last edited: 26 Sep 2020 15:00