Adrian German dgerman@indiana.edu

C212/A592 Intro to Software Systems

  Attendance  15% 
  Labs        20% 
  Homework    20% 
  Midterm     15% take-home with an interview (15-20 min) 
  Final       15% take-home with interview (me but a TA as well) 
  Project     15% take-home with interview 

I will post the attendance questions on What's New? at the end of the day of the lecture. 

I may post them in advance too. 

--

Textbook: Horstmann. 

--

Lucas asked about IntelliJ 

Assignments in Canvas. 

-- 

15:10:57     From  dgerman@iu.edu : Adrian German
15:10:58     From  Tareq Hanania : Tareq
15:10:59     From  dustinbucher : Dustin Bucher
15:10:59     From  Chase Rivas : Chase Rivas
15:10:59     From  Marisa Patel Oconnor : Marisa
15:11:00     From  Tate McKenney : Tate McKenney
15:11:00     From  Abeer Zaib : Abeer Zaib
15:11:00     From  Joey Brewington : Joey Brewington
15:11:00     From  Ismail Siddeeq : Ismail Siddeeq
15:11:00     From  Zach Ligue : Zach
15:11:00     From  Noah Schenk : Noah Schenk
15:11:00     From  Daniel Byun : Daniel Byun
15:11:00     From  Tarun : Tarun
15:11:00     From  skomperd@iu.edu : Steve Komperda
15:11:00     From  Jarod Tonte : Jarod
15:11:01     From  Danny : Danny
15:11:01     From  Aidan Walz : Aidan Walz
15:11:01     From  Austin Parkes : Austin Parkes
15:11:01     From  Noah Pujol : Noah Pujol
15:11:01     From  Austin Slattery : Austin
15:11:01     From  Destinee Fannin : Destinee Fannin
15:11:01     From  Ben Waybright : Ben Waybright
15:11:01     From  Sean Mccleary : sean
15:11:01     From  Riley Campbell : Riley Campbell
15:11:01     From  LukaszRafalski : Lukasz
15:11:01     From  Dhruv Ohri : Dhruv Ohri
15:11:01     From  Marcus Webster : marcus
15:11:01     From  Luke Williams : Luke
15:11:02     From  Sarah Robertson : Sarah
15:11:02     From  Mac Cooley : Mac
15:11:02     From  Tate Clendening : Tate Clendening
15:11:02     From  Dhruv Purohit : Dhruv Purohit
15:11:02     From  Kenna Edwards : Kenna Edwards
15:11:02     From  MaxwellRodriguez : Max
15:11:02     From  Ben : Ben Smith
15:11:02     From  Denys Moroz : denys
15:11:02     From  Nicholas Stiner : Nicholas Stiner
15:11:02     From  Oscar Pullam : Oscar
15:11:02     From  Daniel Skora : Daniel
15:11:02     From  Alex Chen : Alex Chen
15:11:02     From  Meg Spence : Meg Spence
15:11:03     From  Tyler Keith : Tyler Keith
15:11:03     From  maxmolt : Max molt
15:11:03     From  Jiahao Wu  to  dgerman@iu.edu(Privately) : Jiahao Wu
15:11:03     From  agucwa@iu.edu : Amanda Gucwa
15:11:03     From  Hallie Schmucker : Hallie
15:11:03     From  cchaput@iu.edu : Cassandra Chaput
15:11:03     From  Jill Grant : Jill Grant
15:11:03     From  Alison Dwyer : Alison Dwyer
15:11:03     From  colin : Colin Hans
15:11:03     From  Blake Hoekstra : Blake 
15:11:03     From  Elizabeth Gabel : Lizzy Gabel
15:11:03     From  sandy : Sandy
15:11:03     From  Christopher Hill : Christopher Hill
15:11:03     From  Nicholas Cooksey : Nicholas Cooksey
15:11:03     From  Ploy Unchit : Ploy
15:11:04     From  Michael Peterson : Michael Peterson
15:11:04     From  Drew Beasley : Drew
15:11:04     From  amsegyde : Augie
15:11:04     From  Fairman Risch : Fairman Risch
15:11:04     From  Harumi Shimano : Harumi Shimano
15:11:04     From  Zach : Zach
15:11:04     From  joslack@iu.edu : Jonah Slack
15:11:04     From  Alex Judd : alex
15:11:05     From  Dilyar Muradil : Dilyar
15:11:05     From  Grant Smith : Grant
15:11:05     From  daehrman@iu.edu : Daniel Ehrmann
15:11:05     From  kevinrivera : Kevin Rivera
15:11:05     From  Luca Dixie : Luca
15:11:05     From  Paola Alvarez : Paola Alvarez
15:11:05     From  Cara Merkel : Cara Merkel
15:11:05     From  Alexander Ausbrook : Alex Ausbrook
15:11:05     From  Austin Bond : Austin Bond
15:11:06     From  Joshua Gentile : Josh Gentile
15:11:06     From  Corey Hayne : Corey
15:11:06     From  Danny Reidinger : Dan Reidinger
15:11:06     From  Ryan Head : Ryan Head
15:11:06     From  Xiaoran Cheng : Xiaoran cheng
15:11:06     From  manas : manas
15:11:06     From  Ethan Sanders : Ethan
15:11:06     From  leonardodilena : Leonardo Di Lena
15:11:08     From  Michael Liu : Michael Liu
15:11:08     From  Ryan McDonough : Ryan McDonough
15:11:08     From  Palak Sheth : Palak Sheth
15:11:08     From  Yichen Gao : Yichen
15:11:09     From  Katy Dickman : Katy Dickman
15:11:09     From  Trixie Abbott : trixie
15:11:09     From  Robert Kellems : Robert Kellems
15:11:11     From  Kevin Fuller : kevin fuller
15:11:11     From  Thanh Thanh : Thanh Thanh Bui
15:11:13     From  Colin Myers : Colin
15:11:13     From  Nicholas MacKinnon : Nicholas MacKinnon
15:11:13     From  Jackie Drs : Jackie Drs
15:11:14     From  Gavin Augustinovicz : gavin augustinovicz
15:11:15     From  Griffin : Griffin
15:11:17     From  Shichen Wang : Shichen Wang
15:11:18     From  Brett Lyons : Brett Lyons
15:11:24     From  Ping : Yunping Wang
15:11:36     From  Tommy McDermott : Tommy McDermott
15:11:40     From  Dion Daggy : dion daggy
15:11:52     From  Denzel Clark : Denzel Clark
15:12:38     From  dgerman@iu.edu  to  Jiahao Wu(Privately) : 812 325 0984
15:12:42     From  Kenna Edwards : I love the Michigan hat Professor German!
15:12:53     From  dgerman@iu.edu : 812 325 0984
15:16:06     From  Elizabeth Gabel : the cookie monster does show up :)
15:19:37     From  dgerman@iu.edu : https://legacy.cs.indiana.edu/classes/c212/fall2020/
15:20:45     From  Tareq Hanania : It's good
15:23:38     From  Max Rodriguez : Max Rodriguez
15:24:24     From  Eric Weeks : Eric Weeks
15:24:51     From  Anna Kim : Anna Kim
15:24:54     From  Dayne Waldal : Dayne Waldal
15:25:04     From  Ismail Siddeeq : where will you put the question/quiz for attendance at?
15:25:06     From  Corey Hayne : Corey Hayne
15:25:16     From  Vijay Adhithya : Vijay Adhithya
15:25:32     From  Zach : My name is Zachary Orth
15:25:38     From  Caiden Paauwe : Caiden Paauwe
15:25:59     From  JD Anderson : JD Anderson 
15:26:01     From  bryce  to  dgerman@iu.edu(Privately) : Bryce Richardson
15:26:03     From  Nick Luddy : Nicholas Luddy
15:26:05     From  Sam : samuel shi
15:26:09     From  David Kohler : David Kohler
15:26:10     From  Samuel Edelman : Sam Edelman
15:26:22     From  Austin Rettig : Austin Rettig
15:26:35     From  Andrew Fritz : Andrew Fritz
15:28:34     From  Dillon Standifer : Dillon Standifer
15:29:30     From  Dhruv Purohit : What do you mean to "take with AI"?
15:29:47     From  Abeer Zaib : Assistant Instructor I believe @Dhruv
15:30:21     From  Dhruv Purohit : Thank you
15:31:18     From  manas : how do we download java?
15:33:37     From  Daniel Byun : we will be using a java ide to program (intellij, eclipse, drjava...)
15:35:02     From  manas : so is there a tutorial to download it
15:35:07     From  manas : ?
15:35:48     From  Cara Merkel : I assume they will tell us how to download those things during lab (:
15:36:03     From  manas : thank you
15:44:54     From  Abeer Zaib : If you go into incognito it should work
15:46:21     From  Caden Kline : Does the website have a rss/atom feed?
15:46:53     From  Christopher Hill : Should we just send you an email if we can't login to the book?
15:46:56     From  Zach : if its anything like summer semester, It shouldn't have an RSS afaik
15:49:17     From  Samuel Edelman : Will the lectures be recorded?
15:49:27     From  Abeer Zaib : I thought it was Python too
15:49:39     From  Dhruv Ohri : 200 is Python
15:59:27     From  Tate McKenney : I like NetBeans
15:59:53     From  David Kohler : IntelliJ is the best!
16:01:04     From  Caden Kline : intellJ should embed a JDK so you don't need to install java
16:20:22     From  Daniel Skora : does IntelliJ automatically add the words to describe the parameters?
16:20:29     From  Daniel Skora : like "x:" and "y:"
16:23:47     From  Alp Yurttutan : will there be instructions posted on how to properly install and set up intellij
16:24:12     From  Oscar Pullam : I think that's lab 1
16:27:10     From  Tate McKenney : (We're running short on time, just as a heads-up)
16:30:06     From  David Kohler : You can download it from here too. https://www.jetbrains.com/idea/
16:30:39     From  leonardodilena : is visual studio code good?
16:31:03     From  leonardodilena : yes
16:31:28     From  Tareq Hanania : Coded this in Python with my friend :D
Find out how difficult your future teachers at IUB are.

www.theeasyscore.com/
16:31:30     From  Jeffrey Beaumont  to  dgerman@iu.edu(Privately) : Would we be better served in the future by learning an IDE like Eclipse for this class?
16:31:30     From  tyson : VIM?
16:34:16     From  Zach  to  dgerman@iu.edu(Privately) : Will the book have assigned readings or is it for reference only?
16:34:30     From  Zach : Will the book have assigned readings or is it for reference only?
16:36:36     From  Tate McKenney : Sounds good!
16:38:02     From  Tate McKenney : Thank you!
16:38:08     From  Denzel Clark : Have a good evening!
16:38:13     From  Jarod Tonte : Where would attendance questions be turned in?
16:38:35     From  dgerman@iu.edu : In Canvas now and next week and then in GitHub afterwards.
16:38:49     From  Jarod Tonte : Thank you
16:38:54     From  Tarun : Thanks!

--

Here's the Penguin code (two classes):

package org.c212;

import javax.swing.JComponent;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Polygon;

public class Penguin extends JComponent {
    int width, height;
    public Penguin(int width, int height) {
        this.width = width;
        this.height = height;
    }
    public void paintComponent(Graphics g) {

        // default color is Color.BLACK

        g.drawOval(  0,   0, 500, 500); // circle in the background (not necessary) [ 0]

        g.setColor(Color.WHITE);

        g.fillRect(  0,   0, 500, 500); // background (see marks by circle)         [ 0]
        g.setColor(Color.BLACK);        // used by body                             [ 1]

        g.fillPolygon( new Polygon // put this last                                 [11]
                (       new int[] {  10, 265, 499 },
                        new int[] { 274,  60, 274 },
                        3
                )
        );

        int left = 5;
        g.fillOval( 80-left,  50, 365, 400); // body                                [ 1]
        g.setColor(new Color(220, 220, 220)); // what color is this?

        g.fillOval(120-left, 190, 290, 250); // larger belly                        [ 2]
        g.setColor(Color.WHITE);
        g.fillOval(155-left, 195, 220, 240); // smaller belly                       [ 3]

        g.setColor(new Color(240, 200, 40)); // some gold
//        g.fillOval( 85-left, 390, 175,  80); // right foot (left)                   [ 4]
        g.setColor(new Color(240, 200, 40));
        g.fillOval(285-left, 390, 175,  80); // left foot (right)                   [ 5]
        g.setColor(new Color(255, 255, 255));
        g.fillOval(170-left,  74,  92, 117); // right eye (left)                    [ 6]
        g.setColor(new Color(255, 255, 255));
        g.fillOval(264-left,  94, 107,  79); // left eye (right)                    [ 7]
        g.setColor(Color.BLACK);
        g.fillOval(230-left, 120,  25,  33); // right eye pupil (left)              [ 8]
        g.fillOval(270-left, 124,  17,  23); // left eye pupil (right)              [ 9]
        g.setColor(new Color(240, 200, 40)); // gold as feet
        g.fillArc (188-left, 173, 150, 150, 55,  65); // bill, beak                 [10]
    }
}

// -------------------------------------------------------------------------------------------

package org.c212;

import java.awt.Graphics;
import javax.swing.JFrame;

public class One {

    public static void main(String[] args) {

        JFrame a = new JFrame();
        int width = 500, height = 500;
        a.setVisible(true);
        a.setSize(width+20, height+40);
        // how can you determine 20, 40 dynamically?
        Penguin b = new Penguin(width, height);

        a.add(b);

    }
}

// -------------------------------------------------------------------------------------------

-bash-4.2$ pwd
/u/dgerman/apache/htdocs/c212/fall2020
-bash-4.2$ ls -ld 0824a.phps
-rw-r--r-- 1 dgerman faculty 509 Aug 24 15:01 0824a.phps
-bash-4.2$ nano -w 0824a.phps
-bash-4.2$ date
Mon Aug 24 15:03:33 EDT 2020
-bash-4.2$

--