CS1 Language & Structure Bits

From Earlham CS Department
Revision as of 12:06, 7 November 2016 by Anschwa (talk | contribs) (Created page with "=== Current Thinking: === * CS1 and CS2 in Python (objects in both) ** CS128 command line, with some exposure to iPython ** Use 2.7 with import from future for division, prin...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Current Thinking:

  • CS1 and CS2 in Python (objects in both)
    • CS128 command line, with some exposure to iPython
    • Use 2.7 with import from future for division, print, input? > (textbook support?) Why not just use 3?
  • C for 310 and beyond
  • How to learn Java? January Bootcamp or May Term (pre-req for > some courses)
    • Mobile App Development
    • Field Science
    • Software Engineering?

CS128 books

http://mcsp.wartburg.edu/zelle/python/ppics2/index.html

Comments:

  • This is the book we’re currently thinking best suits our needs. This > book was recommended from the reviews of our second choice. They > say it is good for an intro college course for non-committed > CS majors.
  • $20 for hard copy, or free. Sample programs and solutions.
  • = Practical Programming: An Introduction to Computer Science Using Python 3 (Pragmatic Programmers) =

http://www.amazon.com/Practical-Programming-Introduction-Pragmatic-Programmers/dp/1937785459/ref=sr_1_11?ie=UTF8&qid=1429969707&sr=8-11&keywords=introduction+to+computer+science

256 / 310 books

  1. Data Structures and Algorithmic Thinking with > Python -
  1. = Data Structures and Algorithms in Python =
    • = Have requested for examination copy =
    • = Very good comments, but $171.53 for hardcover, $62.5 for E-book on official website =
    • one from James Madison University use both (2) and (3) and > recommend (2)

    • Topics are fully covered (AVL tree), and some could be used in > CS320

    • My main complaint with the Goodrich book is that the coverage of > each data structure is accompanied by a complete Python > implementation, which eliminates many possible > programming assignments. I would have found the code examples > more helpful if there was less emphasis on good OO design and > more emphasis on algorithmic clarity.

  2. = Data Structures and Algorithms Using Python =
    • used: $36.94 new:$88.20

    • The Necaise book is clear and accessible, but includes quite a > few distracting errors, particularly in the code examples. > It's also a bit light on mathematical rigor.

  3. Data Structures and Algorithms with > Python > (Undergraduate Topics in Computer Science)

  4. Problem Solving with Algorithms and Data Structures Using Python >

    • free online book

    • has programming exercise

    • three faculties recommend this book (include GA Tech), and > one in University of Northern Iowa designed his own lab > assignments (http://www.cs.uni.edu/~fienup/cs1520s15/)

  5. Fundamentals of Python: Data > Structures

    • Have requested for an online review copy

    • Comments: low price ($30 or less)

      • Assumes the reader has had one semester of an OOP language, > in this case Python.
    • topics as the design of collection classes with polymorphism > and inheritance, multiple implementations of collection > interfaces, and the analysis of the space/time tradeoffs of > different collection implementations

    • Collections covered include sets, lists, stacks, queues, > trees, dictionaries, and graphs.

  6. Algorithms

    • Robert Sedgewick and Kevin Wayne

    • $59.12 on Amazon

    • More like a CS3 textbook

  7. Object-Oriented Programming in > PYTHON

    • Data types, objects, control structures, I/O, user-defined > classes, inheritance, and good software development practices. > Recursion to data structures, event-driven and network > programming with Python.

    • Contains a convenient guide for transitioning from Python to > Java™ or C++

    • But not many data structures are covered in this book. Only > sets, arrays, BST, and sorting algorithms.

  8. = Data Structures and Algorithms Using Python and C++ =
    • A great second course text in Computer > Science > $88 for new book, $50 for used, $30 for eBook

    • recommended by a faculty from Lakeland Community College

    • 1. Abstraction and Analysis

    • 2. Data Abstraction

    • 3. Container Classes

    • 4. Linked Structures and Iterators

    • 5. Stacks and Queues

    • 6. Recursion

    • 7. Trees

    • 8. C++ Introduction of Python Programmers

    • 9. C++ Classes

    • 10. C++ Dynamic Memory

    • 11. C++ Linked Structures

    • 12. C++ Templates

    • 13. Heaps, Balanced Trees, and Hash Tables

    • 14. Graphs

    • 15. Algorithm Techniques

  9. http://opendatastructures.org/ > Wikipedia book

Harvey Mudd’s CS1 -

Consider a way to take CS128 and just learn Python, fewer credits, less work (auditing might work for this).

http://cacm.acm.org/blogs/blog-cacm/176450-python-is-now-the-most-popular-introductory-teaching-language-at-top-us-universities/fulltext

(Harvey Mudd’s CS 1)

This looks like a pretty nice “textbook” and if anything a great resource.

CS for All: http://www.cs.hmc.edu/csforall/