Unix for Software Developers Information about this lecture Benedict Reuschling October 9, 2015 1 / 13
Overview 1 Concerning the Lab 2 / 13
Organizational structure of this lecture Weekly lecture, (1 block, 12:00-13:00), room D14/403 Lab (hands on), (2 blocks, 8:30-11:45), room D14/310 Successful participation in the lab is required to be permitted to the written exam Group Lab 1 Lab 2 Lab 3 Lab 4 Lab 5 Buffer Friday 12x 23.10. 06.11. 20.11. 04.12. 18.12. 22.01. Friday 12y 16.10. 30.10. 13.11. 27.11. 11.12. 15.01. 3 / 13
Concerning the Lab Overview 1 Concerning the Lab 4 / 13
1 http://www.fbi.h-da.de/organisation/personen/reuschling-benedict.html 5 / 13 Unix for Software Developers Concerning the Lab Lab sessions Lab exercises are being uploaded on my homepage 1 The exercises will be worked on in teams of 2 (no more) or alone when there is an uneven number of participants both team members must be able to solve the exercises and explain them to me Explaining does not mean reading comments in the source code It is mandatory to participate in the labs. When you are sick, go to the doctor and get a medical certificate. If a member of your team is missing, the other must attend and show your solution alone only that person will get the course attendance certificate, the missing person must show and explain it next time Too many identical solutions from different groups are suspicious... You need to prepare for the lab exercises at home, you can not just start during the lab sessions!
Overview 1 Concerning the Lab 6 / 13
The exam will be written at the end of the semester 2 Date: February 04, 2016, 10:15-11:45 German students can choose to answer in english or german, exchange students must use english You must register for the exam via the OBS: http://obs.fbi.h-da.de Contents of the exam are the important parts of this lecture Exercises done during the lectures could be part of the exam in different form... Hints: Commands and sketches on the board are usually worth writing down Developers are problem solvers and simply memorizing the lecture script will not help much Do not learn command outputs as those can chance and will not be asked of you Knowing the basic ideas of what a Unix program is for and does is much more helpful 2 Pen and paper, no practical exam :-) 7 / 13
Overview 1 Concerning the Lab 8 / 13
Goals of this lecture The lecture Unix for Software Developers has the following goals: Get to know Unix and it s concepts Unix history is computer history Knowledge of Unix operating systems helps you understand many different concepts in other IT areas Know the workflow, tools and utilities of Unix for software developers and how to use them Give help to help yourself (where do I find what, how can I solve a certain kind of problem) the fun working with the system is also something we will experience 9 / 13
Non-goals of this lecture The lecture should not be used... to draw narrow-minded conclusions or comparisons between systems, tools, ideas, etc. Of course we do compare different things. But not with the goal to make them look bad, but to show the variety of various solutions. There are always multiple ways to skin a cat. 10 / 13
Contents and Interactions Unix is a very big topic area. It is impossible to show you everything that is interesting about Unix in one course. I try to give you all important topics and aim for width (many topics, but not all too deep). This way, you will get a wide view about Unix topics, in which you can go deeper by yourself if you are interested in learning more about it. Should I teach topics that you already know from other lectures, then tell me. There are enough other topics available we can talk about instead of repeat stuff you already know. I try to accomodate your topic wishes, but please give me enough time to prepare them. You can ask me anytime during or after the lecture. This shows me what you are interested in and what maybe is not clear to you. I try to avoid lectures that turn into monologues. I would rather have a lively interaction with you, asking questions or discuss ideas. This is valuable for you as well as for me and enhances the quality of lecture. 11 / 13
Literature and further information [JFF] David Diamond, Linus Torvalds Just for Fun - The story of an accidental revolutionary HarperCollins, 2001 [TDAIOTFOS] Marshall Kirk McKusick, George V. Neville-Neil, and Robert N. M. Watson. The Design and Implementation of the FreeBSD Operating System 2nd Edition Pearson Education, Boston, MA, USA, September 2014 [AF] Michael W. Lucas Absolute FreeBSD, 2nd Edition No Starch Press, 2008 [FDD] Joseph Kong FreeBSD Device Drivers: A Guide for the Intrepid No Starch Press, 2012 12 / 13
Literature and further information [CATB] Eric Steven Raymond The Cathedral and the Bazaar http: //www.catb.org/esr/writings/homesteading/cathedral-bazaar/ [TLDP] The Linux Documentation Project Wikis, HOWTOs, Guides http://www.tldp.org [FHB] The FreeBSD Documentation Project FreeBSD Handbook http://www.freebsd.org/doc/en_us.iso8859-1/books/handbook/ (englisch) http://www.freebsd.org/doc/de_de.iso8859-1/books/handbook/ (deutsch) [NHBSD] Kirk McKusick A narrative History of BSD http://www.youtube.com/watch?v=ds77e3ao9na 13 / 13