Länkbibliotek
Kursresurser
- Kursens forum på Piazza
- Frågor, svar, återkoppling, etc.
- Kursens repo på GitHub
- Allt uttdelat kursmaterial, övningar, screencasts, etc.
- Kursens redovisningssystem
- Här loggar du in när du vill redovisa mål
- Kursens rekommenderade planeringsverktyg
- Använd det här för att lägga upp ditt arbete varje sprint
- Ett google spreadsheet för att generera burndown charts
- Kopiera det här och använd för att mäta dina framsteg i kursen
- Bootstrap för fas 1
- Översikt över det mesta som behövs för att komma igång med fas 1
- Bootstrap för fas 2 [Kommer snart]
- Översikt över det mesta som behövs för att komma igång med fas 2
- Gamla kodprov
- För dig som vill se hur kodprovet har sett ut förut
- Föreläsningsbilder
- Uppdateras löpande
- IT:s UNIX-maskiner
- X86 och Sparc-maskiner som studenter kan logga in på
- IT:s linuxdatorer
- Hur man kommer åt institutionens linuxsystem
Kurs- och randlitteratur
Kursen har ingen officiell kursbok. Vi pekar till övningar i Shaws bok. De övriga böckerna är tips.
- [Shaw]
- Zed Shaw, Learn C The Hard Way, Addison-Wesley, 2015. (Kostnad, ca 250 SEK.)
Boken har länge haft en hemsida med ett ok-ish utkast till vad som slutligen hamnade i tryck. Den hemsidan finns här: http://c.learncodethehardway.org/
- Zed Shaw, Learn C The Hard Way, Addison-Wesley, 2015. (Kostnad, ca 250 SEK.)
- [PKA]
- D. Poo, D. Kiong, S. Ashok, Object-Oriented Programming and Java, Springer Verlag, 2nd ed., 2008, XIX.
Detta är inte någon officiell kursbok. Den finns att läsa gratis som PDF om man komma från en UU-ip-adress.
- D. Poo, D. Kiong, S. Ashok, Object-Oriented Programming and Java, Springer Verlag, 2nd ed., 2008, XIX.
- [Git]
- Scott Chacon, Pro Git, http://git-scm.com/book/
- [K&P]
- B. Kernighan and R. Pike, The Practice of Programming, Addison-Wesley, 4 Feb 1999, isbn-10: 020161586X, isbn-13: 978-0201615869.
Git och GitHub
- GitHubs egna guider
- En enkel guide till git
- Den officiella Git-dokumentationen
- A Magit Tutorial: Part I * Exploits of a Programmer
- A nice Emacs frontend for git
- En kort beskrivning av hur Git funkar under huven
- En samling av 10 Git-tutorials för nybörjare
- A hacker's guide to git
Emacs
- GNU Emacs Manual
- Explains all the details of emacs.
- How to move the cursor efficiently in Emacs
- Moving the cursor is more than meets the eye.
- Copying and pasting (aka kill and yank) in Emacs
- How to delete stuff and paste it again.
- The undo command in Emacs
- The undo command can be confusing. Either never make mistakes or read this.
- Open and save in Emacs
- Basic file usage.
- Switching between buffers (multiple open files) in Emacs
- Managing multiple opened files.
- A huge collection (2000+) of Emacs shortcuts
- Just a cheatsheet that can help in the beginning.
- Using the mark ring to navigate in buffers in Emacs
- This is extremely useful. Force yourself to use it until it becomes second nature.
- Compiling in Emacs
- Emacs can be an IDE...
- Finding compiling errors in Emacs
- ...and even show you errors.
- Yet Another Snippet extension for Emacs
- If you feel you're typing too much. There's a demo video, skip to 1.22: http://yasnippet.googlecode.com/files/yasnippet.avi
- Hack Emacs video channel
- Some videos highlighting more advanced (and amazing) usage of emacs.
- Emacs Rocks
- Someone who develops stuff for emacs. Check out his multiple-cursors video!
- Mastering Emacs
- A blog about advanced usage of emacs. Why, yes, they do write blogs about emacs. ;-)
C
- Ett relativt bra C Tutorial som täcker alla konstruktioner
- Tutorials as PDFs.
- C:s entry på wikipedia (väldigt matnyttig)
- C article on wikipedia - Lots of details on the language.
- The C Library Reference Guide by Eric Huss
- Overview of the C library.
- Learn C The Hard Way
- Free ebook about C.
- The History of C, artikel av Dennis Richie
- The "whens and whys" of C.
- Elements of Programming Style
- Föreläsning av Brian Kerninghan (1hr10).
- CUnit Progammers Guide
- Introduction to CUnit. You'll see CUnit in the course.
- Valgrind homepage
- Valgrind helps you detect problems - like memory leaks.
- The Valgrind Quick Start Guide
- Check a small program for memleaks.
- Valgrind Tutorial
- Similar as the above.
- A Defensive Programming lecture by A.Denault McGill University
- Presentation slides.
- GNU gprof manual
- Manual for the gnu profiler.
- Speed your code with the GNU profiler (IBM article)
- Tutorial/article on the usage of gprof.
- How to read gprof output
- About gprof's metrics.
- Another GPROF Tutorial
- introduction to GDB a tutorial - Harvard CS50 - YouTube
- Introduction video to the GNU Debugger.
- JTN002 - MinUnit - a minimal unit testing framework for C
- Another testing framework for C.
LaTeX
- Introduktion till LATEX av Lars Engebretsen
- Swedish language introduction to LaTeX.
- Att skriva rapporter med LaTeX
- Example-files and some more info on LaTeX reports.
Documentation
- Doxygen - generera dokumentation från källkod
- Doxygen is an incredibly useful tool for generating pretty documentation. It works for many languages.
- Simple guide to basic Doxygen usage
- This will get you started with doxygen.
Software engineering
- A Brief Introduction to Agile Development Using Lean and Scrum
- Lean and Scrum in 10 pages.
- Scrum and XP from the Trenches
- Scrum and XP in >100 pages.
- Ett gratis, interaktivt demo för att lära sig Python
- Time to get started: 0!
Objektorientering och Java
- Java 7 API
- Dokumentationen till Javas standardbibliotek
- Oracles egen Java-Tutorial
- JUnit tutorial
- JUnit is a widely used Java testing framework.
General
- Explain Shell
- Visar alla relevanta hjälptexter för terminalkommandon.
- Defensive programming checklist from Code Complete
- A book chapter on defensive programming.
- Refactoring Home
- Lots of information on refactoring.
- LinuxCommand.org: Learning the shell.
- "I regret learning how to use the shell" - said no one, ever.
- Bash Tutorial 1: Hello World - YouTube
- If videos are more your thing.
Bloggposter
- Code tells you how, comments tell you why
- Debugging courses should be mandatory
- Computers are fast
- Swapping variables with XOR
- Ett gammalt knep från när minne var en bristvara