|
December 20 |
Hello CSE1030 Students!
The Lab Test #2 Grade Reports have been e-mailed to your
CSE accounts. The Computer Science Department Office
has your Final Exams (I think that the office staff will
let you see your exams if you ask nicely).
I know that you are probably interested in knowing how
the marks went for the whole class. Here are some
interesting facts:
The class average of the final grades was a C+,
and the highest mark was 94%.
At the end of term, there were 104 registered students,
57 of whom achieved grades above the 65% cutoff and
so will be able to enter the Computer Science or
Digital Media streams next term. This is an unusually
high number of students - Well Done!
You can see your grades by typing the following command
into the lab (Prism) computers:
courseInfo 1030 2012-13 F
Have a great Holiday.
Good luck with your future studies!
|
|
December 5 |
A student found a typo on one of the "Searching and Sorting" slides from
lecture 21 (instead of n-squared it says n2). The corrected slide appears here:
Correction 1030-21.pdf.
Thank you Dallis!
|
|
December 4 |
The Final Exam is going to be held on Thursday,
in our usual lecture hall (LAS 'C'), starting at 2:00 pm.
The exam should take about 2 hours.
Don't forget to bring ID.
Please come on time.
|
|
November 28 |
Some Final Exam Review Notes covering the later part of the course
are available for download:
Review Lecture II.pdf
The Final Exam will primarily focus on the materials from the
later half of the course, although there will be a few questions on
material from the first half.
Tomorrow's lecture is our last lecture, and we will be doing a review for the
final exam. Please bring your questions - let me know what areas of the course
you would like reviewed.
|
|
November 28 |
The 28 students registered in Lab Section 02 (the Thursday lab section) will
be writing their version of Lab Test #2 tomorrow in the regularly
scheduled lab time (1:00 - 2:30 PM). Please bring along your student ID, we will
be taking attendance as we did in the lab test on Tuesday.
I have had several requests from students to wish to rewrite the Lab Test,
but it would not be fair to the rest of the class to let students rewrite the test.
|
|
November 26 |
Everybody registered in Lab section 01 (the Tuesday lab section)
will have Lab Test #2 tomorrow during lab time.
Don't forget to bring ID. Please come on time. If you are registered
in the Tuesday lab section (01) you must do the lab test on Tuesday.
|
|
November 24 |
The Assignment #8 Grade Reports and Solutions have been e-mailed
to your Prism accounts. Please double-check your grades by
typing: courseInfo 1030.
|
|
November 23 |
Somebody sent me an e-mail asking whether you have to know recursion
for Lab Test #2. The answer is: Yes!
Here are some practice questions to help you prepare for Lab Test #2,
which will be held in the regularly scheduled lab times next week.
Remember, please attend the lab section that you are officially enrolled
in for the lab test next week.
Sample Lab Test #2 Questions:
Question 1:
Create a Java class that will allow you to count how many unique integers
there are in a set. You can use either an Array or a Queue data structure
to solve this problem. (You may not use the Java API Array or Queue classes.)
Your implementation should include the following functions:
- void uniqueCounter.add(int x)
-
This function adds an integer to the uniqueCounter class, so long as that integer is not already in this uniqueCounter class.
- void uniqueCounter.remove(int x)
-
This function removes an integer from the uniqueCounter class if the integer was previously added to the class.
- int uniqueCounter.getCount()
-
This function returns the number of unique integers in the uniqueCounter class.
Example usage:
uniqueCounter uc = new uniqueCounter();
uc.add(10);
uc.add(5);
uc.add(20);
uc.add(5); // note that this duplicate is not counted
uc.add(15);
uc.add(10); // neither is this one
At this point the uc.getCount() function would return 4. because 4 unique
integers have been added to the uniqueCounter object - the duplicates are not counted.
Question 2:
Use a linked-list to create a priorityQueue class. As we have seen in class, linear
searching through a set of objects takes O(n) time. A binary search is faster, it
is O(log n) time, but you can't do a binary search on a linked-list. One way to
speed-up the average access time of a linked list, is to keep the more frequently
accessed objects near to the front of the list. A priority queue does exactly this.
Whenever an object is retrieved from a priority queue it is moved from wherever it
was, to the head of the list, so that it will be quicker to find next time.
So, for example, this code:
priorityQueue pq = new priorityQueue();
pq.add(10);
pq.add(5);
pq.add(20);
pq.add(15);
will produce a priority queue that internally looks like this:
head --> 15 --> 20 --> 5 --> 10
note that the nodes have been added to the head of the list, so they are in the
reverse order from how they were added (we say that the nodes are in "most recently
used order").
Next, after we run the code: pq.find(5), the priority queue will
look like this:
head --> 5 --> 15 --> 20 --> 10
See how "5" was moved to the front of the list?
If we code pq.find(5) again, then the list will not be rearranged,
but we will find "5" very quickly because it is at the head of the list.
Issuing: pq.find(10) will again rearrange the list:
head --> 10 --> 5 --> 15 --> 20
leaving the nodes generally in the same order that they were, but translocating node "10"
to the head of the list.
Implement the priorityQueue class, having these two functions:
- void priorityQueue.add(int x)
-
Adds a new node to the head of the priority queue.
- boolean priorityQueue.find(int x)
-
Searches the priority queue for the node "x". If the node is found then the
function returns true, but also the node "x" is moved to the front of the list
Fr faster access next time.
Use recursion when you implement the priorityQueue.find() function.
Do not use any of the Java API Collections classes.
Duplicate values are not allowed in a priority queue.
Question 3:
Use an array to implement a Stack data structure. We saw an example of a stack when
we discussed the execution stack in the course module on recursion. A stack has three operations:
- void stack.push(String x)
-
Adds the specified data to the top of the stack.
- String stack.pop()
-
Removes the datum from the top of the stack and returns it.
- boolean stack.isEmpty()
-
Returns a boolean value indicating whether or not the stack is empty.
so, after the following code has run:
stack s = new stack ();
s.push (10);
the stack looks like this:
s = 10
and after:
s.push (5);
the stack looks like this:
s = 5, 10
and after:
s.push (20);
we see:
s = 20, 5, 10
At this point, s.pop() would return "20", and leave the stack looking like this:
s = 5, 10
Duplicate values are allowed in a stack.
Again, don't use any of the Java Collections.
|
|
November 22 |
The Assignment #7 Grade Reports and Solutions have been e-mailed
to your Prism accounts. Please double-check your grades by
typing: courseInfo 1030.
|
|
November 21 |
The notes for tomorrow's lecture are available for download:
1030-21.pdf
Some of the programs we will be discussing in the lecture
are available for download (available as .java files
and .pdf files):
linearsearch.java
binarysearch.java
bubble.java
selection.java
insertion.java
quicksortRecursive.java
Also, don't forget that Lab Test #2 is scheduled for next week during the regular lab times.
Also, the course evaluation questionnaires will be administered at the end of tomorrow's class.
|
|
November 19 |
The notes for tomorrow's lecture are available for download:
1030-20.pdf
Some of the programs we will be discussing in the lecture
are available for download (available as .java files
and .pdf files):
benchmark.java (benchmark.pdf)
recursiveLinkedLists.java (recursiveLinkedLists.pdf)
recursiveLinkedLists2.java (recursiveLinkedLists2.pdf)
FractalTree.java (FractalTree.pdf)
FractalTriangle.java (FractalTriangle.pdf)
RobotPlanning.java (RobotPlanning.pdf)
Also, don't forget that Lab Test #2 is scheduled for next week, during the regular lab times.
|
|
November 19 |
Assignment #8 has been posted.
|
|
November 14 |
The notes for tomorrow's lecture are available for download:
1030-19.pdf
Some of the programs to be demonstrated in the lecture
are available for download:
piIterative.java
piRecursive.java
reverseIterative.java
reverseRecursive.java
Any students seeking information regarding the Peer Assisted Study
Session (PASS) Program can find more information
here.
Apparently PASS is looking for somebody to help students with
this course next term, if you are a Bethune student and interested,
here is their recruitment letter.
|
|
November 13 (after class) |
An updated version of today's lecture slides are available:
1030-18-updated.pdf.
There are minor changes on slides 57, 64, and 70.
The Assignment #6 Grade Reports and Solutions have been e-mailed
to your Prism accounts. Please double-check your grades by
typing: courseInfo 1030.
|
|
November 12 |
The notes for tomorrow's lecture are available for download:
1030-18.pdf
Additionally, Steven tells me that there is still some
confusion regarding static versus instance data. He
has written the following demo program to illustrate the
difference. I will discuss his program in class, but you
should definitely download it, look at it, compile and
run it, and see what happens if you take the 'static'
keyword out of line 7.
Counter.java
|
|
November 12 |
Assignment #7 has been posted.
Also, please note that we will be missing 1 TA during the Tuesday lab session this week, because
our TA Steven is being awarded the FSE Excellence in Teaching Award - Congratulations Steven!
So for the Tuesday lab session this week there will be a TA in LAS1006, but LAS1002 will be unstaffed.
|
|
November 7 |
The notes for tomorrow's lecture are available for download:
1030-16.pdf
Additionally, time permitting we will start on the next
topic. The notes for that part of the lecture are available here:
1030-17.pdf
The programs to be demonstrated as part of the second Array module
are available for download:
ChessBoard.java
Moons.java
example2.java
|
|
November 6 |
The notes for today's lecture are available for download:
1030-15.pdf
|
|
November 5 |
Assignment #6 has been posted.
|
|
November 4 |
The Lab Test #1 grade reports have been e-mailed to you, and the
course marks database has been updated.
You can check your marks online by typing: courseInfo 1030.
|
|
November 3 |
The Assignment #5 grade reports have been e-mailed to you,
and the course marks database has been updated to reflect both A5
and the Midterm marks. You can (and should) check your
marks online by typing: courseInfo 1030.
I have information regarding some important dates:
The registrar's office has released the final exam
schedule. The CSE1030 Final (Written) Exam is
scheduled for
Thursday, December 6, 2012, at 14:00 in LAS C.
The last date to drop this course without receiving a grade
is Friday of this week (November 9th).
|
|
October 31 |
Happy Halloween!
Remember that there's no class tomorrow.
|
|
October 29 |
There are several course announcements:
In class tomorrow we will finish the last module on the Graphical User Interface, so there are no new notes.
Also, at the end of class tomorrow, the midterms will be returned and we will take-up the answers.
Remember to check the
York Weather Status Webpage
for updates regarding Hurricane Sandy.
|
|
October 28 |
Because the Co-curricular Break starts this week, there is no
assignment this week. However, a
Practice Assignment has been posted.
|
|
October 25 |
I have received a question from a student regarding
Assignment #5.
The student has asked:
During the last lecture you said something about how the TA's will not use the tester program a5.java but a similar tester to mark our assignments. I dont know why but does this mean that the tester provided to us (a5.java) is not accurate in giving us the correct results to our tests? Should I trust the results i am given when using a5.java if it tells me i pass all the tests? Should i expect a 10/10 on the assignment?
The tester programs that I have been providing to you
are intended to help you check your assignments, but
the responsibility to test your code lies with you -
you should be testing your own code. Also, I am
under no obligation to provide any of the testing
program to you - your Math profs don't provide the
answer key for your homework to you do they?
I provide the tester programs to try to help you, but
there are lots of things that the tester program simply
cannot test, such as:
- Does your code have adequate comments?
- Does your code have "style"?
- Did you code your solution in a reasonable way?
(Using appropriate data and code members, for example some students used Map<Integer,Musican> to store the list of Musicians - this is not how Maps are supposed to be used, the students should have used the much more efficient HashSet or LinkedList, although their code passed the tester program tests)
- Does your code do what the assignment asks, or are you just "faking-out"
the tester by providing faked responses to it's queries?
- Did you plagiarise your friend's solution?
- etc.
So to answer this student's question: No. Just because
you pass the tests in the tester program DOES NOT mean
you are guarenteed a 10/10 on the assignment. The TAs
and I have worked (and are working) very hard to try to
make the marking fair and reasonable, and providing the
tester program to you is a part of that. But we do have
our own code that helps us with the marking.
If you have an issue with the marking (a real, legitimate issue, not a whine
about a 1/2 mark that you know you should have lost anyway)
then please come and see me. My objective, at the end of the day,
is to make you able to write "good code", not merely the bare minimum
of code needed to get passed the tester program.
|
|
October 24 |
In tomorrow's class we will continue to examine the code
for the AlienAttack.java game. If we have time, we will
cover our third and last module on GUI programming -
the notes for which are available for download:
1030-14.pdf
The programs to be demonstrated as part of the third GUI module
are available for download:
DemoAbsolute.java
DemoBorderLayout.java
DemoBoxLayout.java
DemoFlowLayout.java
DemoGridLayout.java
DemoLayoutExample.java
|
|
October 22 |
The notes for tomorrow's lecture are available for download:
1030-13.pdf
Additionally, tomorrow we will be looking at the "Alien Attack"
program in some detail, so I'm providing .PDF files of the source
code
(AlienAttack.pdf,
GamePanel.pdf, and,
Sprite.pdf),
and the complete package (with code and graphics files) for
your reference
(AlienAttack.zip).
Most operating systems will open a .zip file if you double-click
on it. You can extract the files from the .zip file on the Prism
computers by (1) saving the AlienAttack.zip file somewhere, and
(2) typing: unzip AlienAttack.zip.
|
|
October 22 |
Assignment #5 has been posted.
|
|
October 18 (after class) |
The programs I demonstrated in class today are available for download:
DemoLargestConsole.java
DemoLargestGUI.java
DemoHelloWorld.java
DemoHelloWorld2.java
DemoSwing.java
DemoKeyEvents.java
DemoKeyEvents2.java
DemoMouseEvents.java
|
|
October 17 |
The notes for tomorrow's lecture are available for download:
1030-12.pdf
Also all those students in Lab Section 02 (the Thursday lab section) will
be writing their version of Lab Test #1 tomorrow in the regularly
scheduled lab time (1:00 - 2:30 PM).
|
|
October 16 |
The Midterm Exam is today in class time.
Also, everybody registered in Lab section 01 (the Tuesday lab section)
will have Lab Test #1 today during lab time.
Don't forget to bring ID. Please come on time. If you are registered
in the Tuesday lab section (01) you must do the lab test today.
|
|
October 14 |
One of your fellow students completed practice lab test #1, and
has offered to make the solution available to everybody, so
here is it: Transfer.java.
Thank-you Bahman Rasti!
A solution to practice lab test #2 also turned up,
here is it: GraduateStudent.java.
Also, don't forget that this week we have the Midterm
during Tuesday's class time, and Lab Test #1 during the
labs - attend the lab section that you are registered in!
To maximise the time you get to complete your tests, please
come to class and the labs on time.
And lastly, don't forget to bring your ID to the tests!
|
|
October 11 |
The notes for today's lecture are available for download:
Review Lecture.pdf
Also, don't forget that the Midterm and Lab Test #1 are both next week.
|
|
October 9 (after class) |
The Assignment #4 Grade Reports and Solution
have been e-mailed to your Prism account e-mail addresses.
To check your grades for this course you should login to
your Prism account and type the command courseInfo 1030.
Please double-check your marks with the courseInfo command - although
these marks are not final or official until the Department approves
of them at the of term, courseInfo shows you what has been recorded
in the marks database.
The TA told me that he found more plagiarism than on past assignments -
please remember that you should only submit your own work for
assignments, in accordance with the academic policy we discussed in
class, and that appears on the course website.
The TA also told me that several of the submissions would not compile,
which means that the TA could not even run the tests (test1 ... test9) from
the a4.java program against those solutions. Please make sure to
double-check that your solutions compile and run as intended on the
Prism lab computers. Also please double-check that you have
submitted the best version of your code by the deadline - there's
nothing more frustrating than having a perfect solution, but losing
marks because a buggy older version was submitted by accident.
|
|
October 8 |
The notes for tomorrow's lecture are available for download:
1030-09.pdf
Also, don't forget that there is no assignment this week - you
should use that time to prepare for the midterm next week.
You should prepare by (1) making sure you've read the assigned
readings for weeks #1 to #6, (2) comparing your solutions to the
assignments with the posted solutions and make sure you
understand the differences, and why you lost marks (if you did),
and, (3) re-reading the lecture notes I provided and your own
margin notes that you took during class.
Make sure you understand everything. If you don't understand
something, then either see the TA in the lab this week (he'll
be hanging around at the beginning of the lab time to answer
your questions), or see the prof (office hours) or ask on the
forum.
The midtern will be held next week in class on Tuesday October 16, and the lab
tests will be held during the scheduled lab times on
Tuesday October 16, and Thursday October 18. Remember that
you must attend the lab section that you are registered in
for the lab tests. Also you may not miss the midterm or
lab tests. And lastly, you will need to bring ID to
the midterm and lab tests - don't forget.
Also, I've had several requests for additional study materials.
I have dug up two
old practice midterms, and two old practice lab exams, that
you can use to prepare yourselves for the midterm and lab exam.
Note that these practice lab tests are from previous terms, and
so the terminology and format of the practice tests may differ
from those used this term. But nevertheless, these practice
tests should be helpful for you to test yourself on whether you
understand the material.
Check-out:
Practice Midterm Test #1
Practice Midterm Test #2
Practice Lab Test #1
Practice Lab Test #2
|
|
October 4 (after class) |
The programs we discussed at the end of class today are available
for download:
Person.java,
Student.java,
Undergrad.java, and,
test.java.
These programs provide a great example of inheritance.
Download, look at, compile, and run these programs.
|
|
October 4 |
The notes for today's lecture are available for download:
1030-08.pdf
Also, don't forget that
Assignment #4
is due Friday at noon.
Lastly, I've had several requests for additional materials
on both, general Java concepts, and on the advanced Java
topics that we've been studying this term. Our fanastic
TA Steven has put some helpful links to additional materials
up on the
Course Forum.
Look for the article titled "Links to Java tutorials for review".
|
|
October 2 |
The Assignment #3 Grade Reports and Solution
have been e-mailed to your Prism account e-mail addresses.
To check your grades for this course you should login to
your Prism account and type the command courseInfo 1030.
|
|
October 2 |
It has already been announced that
Assignment #4 has been posted.
In assignment #4 it says that you may base your solution on either
your solution to Assignment #3, or the prof's solution. If you did
not get a perfect mark for Assignment #3, then you should probably
use the Prof's solution - otherwise you could lose marks on this
assignment for mistakes in your code from the previous assignment.
|
|
October 2 |
The notes for today's lecture are available for download:
1030-07.pdf
|
|
October 1 |
Assignment #4 has been posted.
|
|
September 27 |
The Assignment #2 Grade Reports and Solution
have been e-mailed to your Prism account e-mail addresses.
To check your grades for this course you should login to
your Prism account and type the command courseInfo 1030.
|
|
September 27 |
Last class we didn't finish the set of lecture notes we
were working on, so today we will begin by finishing
lecture 6. I have made some improvements to the notes,
the updated notes are available here:
1030-05-updated.pdf
The notes for today's lecture are also available for download:
1030-06.pdf
|
|
September 25 |
The notes for today's lecture are available for download:
1030-05.pdf
|
|
September 24 |
Assignment #3 has been posted.
|
|
September 23 |
The Assignment #1 Grade Reports and Solution
have been e-mailed to your Prism account e-mail addresses.
To check your grades for this course you should login to
your Prism account and type the command courseInfo 1030.
If you enrolled late in CSE1030 and have missed Assignment #1, then
the courseinfo command will indicate that your A1 mark has
been Deferred.
|
|
September 20 (after class) |
Two of the programs we discussed in class today are available
for download:
example.java, and,
Int.java.
These programs demonstrate the weirdness that can happen
when objects are passed as arguments to functions, or are
returned from functions. This "feature" of java can lead to
some spectacularly tricky-to-figure-out bugs, or alternately,
can be useful under certain circumstances for communicating between
separate parts of a program. It's probably worth downloading,
studying, and running these programs - make sure you understand
what's going on there. How would you "fix" the Int.java
program so that it works the same way as the example.java program?
|
|
September 20 |
The notes for today's lecture are available for download:
1030-04.pdf
|
|
September 18 |
The notes for today's lecture are available for download:
1030-03.pdf
|
|
September 16 |
Assignment #2 has been posted.
|
|
September 13 |
The notes for today's lecture are available for download:
1030-02.pdf
|
|
September 12 |
Unregistered Students:
If you are attending CSE1030, and want to do the assignment, but
are not yet registered in the course, you may run into problems
getting an account in the Prism lab, or in submitting your solution.
If you can login to the Prism computers, then please do so, and
then you should be able to use the submit command.
If you cannot login in the lab, then you may be able to login to
the lab from home (look at the
announcements below
regarding remote access).
Try using ssh or PuTTY to connect to red.cse.yorku.ca from home.
If you can login this way, then you should be able to use the submit
command to submit your assignment.
As a last resourt
for unregistered students who cannot login and use the submit command
you should e-mail your assignment solutions directly to me: will@cse.yorku.ca
by noon on Friday.
Attach your Factor.java file, and include in the e-mail
your name and student number so I can add your marks
to the marks database when you do become registered.
|
|
September 11 (after class) |
You'll have noticed that I made a minor change to my lecture notes
after I uploaded them this morning.
The updated notes for today's lecture are available for download:
1030-01-updated.pdf
|
|
September 11 |
The notes for today's lecture are available for download:
1030-01.pdf
(Remember that these notes are still preliminary, and I reserve
the right to make minor changes before I present them in class.)
Our illustrious TA Steven has created a very helpful guide
on working from home:
Remote Access.pdf.
This guide was originally written for CSE1020 students, but
it applies to us as well.
Also, I've heard back from the Stacie Library, and the textbook is
now on reserve under call number: QA 76.73 J38 S265 2008 BOOK.
(I am still awaiting confirmation that this is the 5th Edition of the textbook,
I suspect that it is a previous edition.)
|
|
September 9 |
Assignment #1 has been posted.
|
|
September 8 |
Hello CSE1030 students. Our first class was on Thursday -
it was nice to meet all of you.
Several students asked questions that I said I'd address
here on the anouncements page:
Is there any information available on how to use
the Linux environment in the Prism lab (where the
labs are going to be held)?
Steven Castellucci, who is one of our TAs this term, has
created a
tutorial on the Prism Linux environment.
I think the Linux environment has been upgraded since this
tutorial was first created, but most of the information
in the tutorial should still be accurate.
Professor Roumani also has a tutorial
that provides more of an
introduction to the command-line features of Linux.
What text editor should I use?
Just to make sure that everybody knows what we're talking about,
when you write a Java program, you are creating a Text File
called ProgramName.java. The program you use to create
this text file is called a Text Editor. Lots of text editors
area available on the Prism Linux computers, and you are free to
use any one that you want.
(Although remember the warning I gave you regarding the text
editor called Eclipse - Eclipse doesn't work well
during lab tests, so you might want to use a different editor
so that everything works as you're used to during the lab tests.)
One that I recommend because it is
easy to use, is called pico. To start pico, you would
type the following at the Liniux command line:
pico ProgramName.java.
Once you have created the ProgramName.java text file,
before you can execute (run) the program you have to
compile it. To do that you would type:
javac ProgramName.java
When the compiler finishes (assuming that you didn't get any
error messages from the Java compiler) you can execute (run)
your program by typing:
java ProgramName
What can I do to refresh my programming skills if my
Java programming is a little rusty?
The first thing you should do is the assigned reading for
Week #1 - you should skim through chapters 1, 2, and 3 of the textbook
and review anything there that is unfamiliar to you.
The tutorial described above
provides a Java program that you can type in, compile,
and run. Alternatively you could also try the "Hello World" program:
/**
* The HelloWorldApp class implements an application that
* simply prints "Hello World!" to standard output.
*/
class HelloWorldApp {
public static void main(String[] args) {
System.out.println("Hello World!"); // Display the string.
}
}
Save this program with the filename HelloWorldApp.java
and then compile it by typing: javac HelloWorldApp.java
and run the proram by typing: Java HellWorldApp
More information about running the Hello World program on
Microsoft Windows
or on
Linux
is available from the Java website.
Next, I would try writing a couple of programs to:
-
Declare a couple of variables, A, and B. Give these
variables values (A = 10, B = 20). Declare a new variable,
C = A + B;. Output the value of C using the
println statement. You can find more
information regarding the println statement
from the Java website.
My solution is available here.
- Write a program that uses a for loop to print
the numbers from 1 to 10.
My solution is available here.
-
You should also refresh your knowledge of Java strings. Read the
Java tutorial on Strings.
Now write a program to (1) ask the user to type something, (2) read in
whatever the user types, and (3) print out again.
You can download my solution here.
-
Bonus: Can you change the string program so that instead of just
printing in whatever the user types, it prints what the user has
typed backwards?
A solution is here.
What do I need to do to setup a Java programming environment
on my home computer?
To do the assignments at home, you need two things: a text editor,
and the Java Software Development Kit.
You can download Java for free from the
Java Download Page.
Follow the instructions to download and install the appropriate
version of Java for your home computer.
Most operating systems come with a rudimentary text editor.
For example, on windows you can use Notepad. I use vi
(or the newer versions vim or gvim)
but vi is not easy to learn, so I don't recommend it to others.
If you Google "Free Text Editor"
you'll see that there are lots of good free text editors available.
Next, why not use your text editor to type in the HelloProgram
listed above, and then try to compile and run it?
Can I connect to the Prism lab computers from home, so I can
test my programs, and submit them from home?
Yes. If you are using Mac OSX or Linux, then you probably already
have a command line program installed called ssh. Just
type: ssh USERID@red.cse.yorku.ca (where you replace
USERID with your Prism user ID) type your password when
prompted, and away you go.
Windows doesn't come with ssh software, but there is a great free
version of ssh for Windows called PuTTY.
You can
download PuTTY here.
Once you have PuTTY installed, connect to red.cse.yorku.ca
and type your login ID and password then asked.
A perhaps better (because it supports graphics, not just text)
alternative for Windows, called Xming is also available. The following
instructions were given to me by our TA Steven:
Download and install
Xming.
Use Xming to connect to the SSH server red.cse.yorku.ca.
By doing so, you will be able to use the resources of the
Department server without further configuration. More information
on Xming is available
here.
To create an Xming connection to the CSE server, start XLaunch
from the Xming program directory. Select "Multiple windows", then
click "Next". Select "Start a program", then click "Next". Select
"Using PuTTY", enter the SSH server red.cse.yorku.ca and your username,
then click "Next". Click "Next" again. Click "Save configuration"
and save the file "CSE.xlaunch" to your desktop. Double-click the
file to connect to the CSE server.
|
|
September 6 |
Our first class is today at 2:30pm in LAS C - see you there...
|
|
September 3 |
Welcome CSE 1030 students!
The first lecture will be on Thursday, September 6th.
Preliminary versions of my slides will be available for download
from this website the morning of each lecture.
Additionally, the source code for programs demonstrated in class
will be made available here too.
|
|