Hi. I agree with your point. When I revise this tutorial, I will try to be more careful about this and to use fields when I test the constructor. Thanks for the feedback. Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Mark, I´ve completed the Workbench tutorial and it was really perfect to me.
I´m a developer since a few years and recently started with PHP and Java, and found that Eclipse can be an absolutelly powerfull tool, but somehow cryptic, until you start understanding how it works.
The video tutorials were really clear, it´s easily understandable as you talk, even for me as I´m not native English speaker. Also the way you zoom in and out is very handy.
Maybe (and this is a very personal opinion) the Shortcuts tutorial might have been a little shorter or faster, as people using Ecplipse and programming should be already familiar with some basics about that. anyway, it continues the pace of the other tutorials.
I´d like to see something about PHP (running and debugging) in the way you do these tutorials, as I´ve really enjoyed what I have already seen.
Keep up the good work, and many thanks, I hope I can do things this usefull to other some day
So long, for now :)
Dan
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Dan. Thanks for the feedback and the kind words. I'm very glad you found the tutorials to be useful. I think my next two tutorials will be on SWT and JFace. After that, I'm not sure, but I've got some ideas. Thanks again for taking the time to write the post, and good luck with your programming. Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Mark, here's a suggestion: Suggest to the student a little more often that they pause the video and try performing the next step themselves. As I follow along with you I understand what I'm doing, but when I want to do it again I find that I've forgotten some of the details. Stopping to work out an exercise myself helps to seat the knowledge.
Thanks,
Andrew.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Mark, Very good tutorials. The only suggestion I have is do not put so much emphasis on JUnit testing, since it repeates that much. Other then that, great material.
Thanks, Robert
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Your material sounds very good. I could not view the video portion in sync with the audio. I think this is because I'm using a P3 500 Mhz machine. Tried both Linux and XP and got the same results. I believe the swf format is very, and, in my opinion, too demanding of the CPU, and if I'm not mistaken, being replaced by the flv format for videos.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi. I'm sorry you are not able to view the Flash files. Actually, the SWF is a widely used standard on the web. FLV is another format that is recommended for longer movies and high motion videos, but SWF is the medium of choice for my type of video, I believe. Thousands of people have viewed these videos without problems. Again, I'm sorry you're not able to view them with your computer. Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I stand corrected on the flv/swf issue, but maintain that swf is a more cpu intensive format than flv, although it could be a poor implementation of the player.
For those in the po' but proud category, you can get an flv version of the tutorial at youtube.com. The resolution is reduced, but it plays well enough on less powerful systems.
Again, my complements on the educational value of the tutorial. Richard
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi. There is evidently something wrong with your setName() method in the Person class. Please compare this to the code snapshot in the Tutorial Companion Document. If you can't figure it out on your own, you can post the entire Person.java file to the forum and I'll take a look at it. Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I don't have much to add, but I just wanted to drop you a note to say that I just finished watching the Eclipse Workbench series and thought they were excellent. I wish I had found them sooner. Keep up the great work!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for the feedback. Glad it was useful. If you have any ideas about how to make these more visible (so folks could find them more easily), I'd like to hear them. Thanks again. Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
After checking both sets code, I found what was wrong and fixed it...
I had loaded the workbench tutorial before starting this tutorial. It had the exact same class.
The object "p" in my scrapbook page had the .name "unknown name"... where as it should have "Funky"... from my code. (I'm not one to copy a tutorial exactly).
I removed the Workbench Tutorial project. Cleaned the project and restarted Eclipse. It's working now.
Mark, this introduction for total beginners was WONDERFUL! I enjoyed especially because my former job required me to work in JAVA through an IDE. I spent over a year in the enviornment but I NEVER really had a strong understanding of terminology or JAVA system organziation. That was 2 years ago, and by now I had forgotten everything I managed to understand.
In 1 day, your tutorial not only brought back ALL my former knowledge, but added a new degree of clarity that I never had. I can finally understand things I was supposed to understand 2 years ago!
I owe this to your thoughtful teaching style, outloud thinking, clarity of speech, and your very reasonable pace. Thank you so much! How lucky I am to be a child of the information age!
SUGGESTION: the error messages chosen for the assertEquals methods in testCheckOut cases of the MyLibraryTest (lesson 12) are not accurately describing the failure condition. It might be useful to revisit these and explain in more detail the value of an informative message. Mine ended up looking like this:
assertTrue("Book did not check out correctly",m1.checkOut(b1,p1));
assertFalse("Book should be checked out already", m1.checkOut(b1,p2));
assertTrue("Book check in failed", m1.checkIn(b1));
assertFalse("Book should be checked in already", m1.checkIn(b1));
assertFalse("Book was never checked out", m1.checkIn(b2));
Josh (from grad school)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
You are absolutely right! This is an easy mistake to make (at least for me). And the worst part of it is that it works most (but not all) of the time. Thanks for pointing this out, and I'm glad you enjoyed the tutorial. Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
int targetNumber = (int) (Math.random() * 10);
System.out.println("I'm thinking of a number between 0 and 9...");
while(true){
System.out.println("Number to guess is " + targetNumber);
p1.guess();
p2.guess();
p3.guess();
guessp1 = p1.number;
System.out.println("Player one guessed " + guessp1);
guessp2 = p2.number;
System.out.println("Player one guessed " + guessp2);
guessp3 = p3.number;
System.out.println("Player one guessed " + guessp3);
if (guessp1 == targetNumber) {
p1isRight = true;
}
if (guessp2 == targetNumber) {
p2isRight = true;
}
if (guessp3 == targetNumber) {
p3isRight = true;
}
if (p1isRight|| p2isRight || p3isRight){
System.out.println("We have a winner!");
System.out.println("Player one got it right?" + p1isRight);
System.out.println("Player two got it right?" + p2isRight);
System.out.println("Player three got it right?" + p3isRight);
System.out.println("Game is over.");
break;
} else {
System.out.println("Players will have to try again.");
}
}
}
}
public class Player{
int number = 0;
public void guess() {
number = (int) (Math.random() * 10);
System.out.println("I'm guesiing" + number);
}
}
I have saved the file as GameLauncher.java as I have main in GameLauncher.
I wasn't able to compile for run as I had 2 errors in the code it said :
1) The public type GuessGame must be defined in its own file
2) The public type Player must be defined in its own file.
Can anyone plz let me know how to get rid of this errors.
Any help would be appreciated
Thanks,
Shank
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi. Well, as the message says, you need to create a separate file for each class. If you go back to lesson 1, you can see how to do this. Good luck. Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi everyone!!
Well I have to say that your tutorials, Mark, specially the first two (Which are the two that I have been seeing this month), are very useful and have the perfect timing to pause, and work side by side with the lessons. I don't know too much of Java but...I'm taking a course and with the knowledge acquire there plus your tutorials, now I can say that I'm not a beginner anymore. So thank you for that!!
I was wondering if you could make a tutorial about one of this subjects:
Networking (Using sockets, Connections, Streams, and so forth)
SWING (Creating visual classes, it could be very fun by the way)
But no matter what is the next tutorial about, I'll watch it. :)
Well, I guess this is all I wanted to say.
Good luck, and keeping doing this!!! I won't forget the name Mark Dexter when I talk about Java.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm a total beginner in Programming. Your tutorial are perfect. I stay at lesson 4. To see and hear is great,
also to download your tutorial and use it so much as I need. To scroll forward, backward, to look several times the same.... Thanks, thanks, thanks
I saw eclipse in a computermagazin, download it --- and was frustratet, as a beginner to learn a language and a huge tool (eclipse) to programm my first little programms.
I use your tutorial, and a onlinetutorial too. So I can use eclipse to programm, and the onlinetutorial is in german (I'm german), so I can read and understand more of your java. My englisch is a little rusty.
I think it is the best way to put eclipse to beginners. Cause sit back an relax, show the tutorial, sit and try with the tutorial.
Put the tutorial (the first for example and say there are a lot of more tutorials) in every eclipse. I think a lot of people download it and stop to use it. Eclipse is powerful.
At last your music is funny. You play the banjo?? Good start, and good stop :-)
Greetings from Sebastian
I stay in France, Alsace, Neuf Brisach (the last comlete fort of Ludwig the 14)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you so much for your Eclipse for total beginners tutorial. I must admit, I am not a beginner to programming. I'm an old hand in fact. The problem is, these days, there seem to be as many languages as grains of sand in a desert. As such, tutorials like yours must be seen as a necessity in the IT community as opposed to a mere convenience.
Your tutorial was easy to follow, easy to understand, and thorough. Not to mention, you have a great voice for this kind of thing. I mention this because I'm attempting to get through another, expensive, tutorial and the lecturer's voice is like nails on a blackboard. I know I won't be able to get through it. Delivery is critical when instructing and you appear to be a natural.
Again, thank you so much. It really is individuals such as yourself that give back to the community that makes IT a great place to be.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Mark. Yes really great tutorial especially on using eclipse.
You showed amaxing patience in you teaching manner.
For begginer like me i thought it was a little technical going into JUnit testing, rather maybe you could have taught more object programming methods and in later videos got around to junit testing.
It was i bit confusing for me to be learning all this new stuff and using testing coding structures. But well done very well done. Are you making more of these lessons for beginners ?
Thank Mr.Dexter,
Mike Lynch
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi. I agree with your point. When I revise this tutorial, I will try to be more careful about this and to use fields when I test the constructor. Thanks for the feedback. Mark
Mark, I´ve completed the Workbench tutorial and it was really perfect to me.
I´m a developer since a few years and recently started with PHP and Java, and found that Eclipse can be an absolutelly powerfull tool, but somehow cryptic, until you start understanding how it works.
The video tutorials were really clear, it´s easily understandable as you talk, even for me as I´m not native English speaker. Also the way you zoom in and out is very handy.
Maybe (and this is a very personal opinion) the Shortcuts tutorial might have been a little shorter or faster, as people using Ecplipse and programming should be already familiar with some basics about that. anyway, it continues the pace of the other tutorials.
I´d like to see something about PHP (running and debugging) in the way you do these tutorials, as I´ve really enjoyed what I have already seen.
Keep up the good work, and many thanks, I hope I can do things this usefull to other some day
So long, for now :)
Dan
Hi Dan. Thanks for the feedback and the kind words. I'm very glad you found the tutorials to be useful. I think my next two tutorials will be on SWT and JFace. After that, I'm not sure, but I've got some ideas. Thanks again for taking the time to write the post, and good luck with your programming. Mark
Mark, here's a suggestion: Suggest to the student a little more often that they pause the video and try performing the next step themselves. As I follow along with you I understand what I'm doing, but when I want to do it again I find that I've forgotten some of the details. Stopping to work out an exercise myself helps to seat the knowledge.
Thanks,
Andrew.
Mark, Very good tutorials. The only suggestion I have is do not put so much emphasis on JUnit testing, since it repeates that much. Other then that, great material.
Thanks, Robert
Your material sounds very good. I could not view the video portion in sync with the audio. I think this is because I'm using a P3 500 Mhz machine. Tried both Linux and XP and got the same results. I believe the swf format is very, and, in my opinion, too demanding of the CPU, and if I'm not mistaken, being replaced by the flv format for videos.
Hi. I'm sorry you are not able to view the Flash files. Actually, the SWF is a widely used standard on the web. FLV is another format that is recommended for longer movies and high motion videos, but SWF is the medium of choice for my type of video, I believe. Thousands of people have viewed these videos without problems. Again, I'm sorry you're not able to view them with your computer. Mark
I stand corrected on the flv/swf issue, but maintain that swf is a more cpu intensive format than flv, although it could be a poor implementation of the player.
For those in the po' but proud category, you can get an flv version of the tutorial at youtube.com. The resolution is reduced, but it plays well enough on less powerful systems.
Again, my complements on the educational value of the tutorial. Richard
Hello, hopefully someone can help me out.
eclipse "The method" "is undefined for the type"
http://tinyurl.com/5lhwyo
I'm stuck at Lesson 3. I've googled this and haven't figured it out... hopefully the next person who does will find it faster.
------------------------ this works in the scrapbook page -------
Person p = new Person();
p
------------------------ this doesn't -------------------
The method setName(String) is undefined for the type Person
Person p = new Person();
p.setName("test");
p
------------------------ additional information -----------------------------
I'm running XP with JRE 1.6.0_03. I have no ability to update this JRE. (not my machine).
I'm running Eclipse from a folder.
I've tried project/clean in Eclipse
I look forward to continuing the lessons. Thank you very much for posting them.
Hi. There is evidently something wrong with your setName() method in the Person class. Please compare this to the code snapshot in the Tutorial Companion Document. If you can't figure it out on your own, you can post the entire Person.java file to the forum and I'll take a look at it. Mark
Hi Mark,
I don't have much to add, but I just wanted to drop you a note to say that I just finished watching the Eclipse Workbench series and thought they were excellent. I wish I had found them sooner. Keep up the great work!
Thanks for the feedback. Glad it was useful. If you have any ideas about how to make these more visible (so folks could find them more easily), I'd like to hear them. Thanks again. Mark
After checking both sets code, I found what was wrong and fixed it...
I had loaded the workbench tutorial before starting this tutorial. It had the exact same class.
The object "p" in my scrapbook page had the .name "unknown name"... where as it should have "Funky"... from my code. (I'm not one to copy a tutorial exactly).
I removed the Workbench Tutorial project. Cleaned the project and restarted Eclipse. It's working now.
Thank you very much.
---------------------------------------------------------
package org.totalbeginner.tutorial;
public class Person {
// Fields
private String name; // name of the person
private int maximumBooks; //maximum number of books a person can checkout
// constructors
public Person() {
name = "Funky" ;
maximumBooks = 3;
}
// methods
public String getName() {
return name;
}
public void setName(String anyName) {
name = anyName;
}
public int getMaximumBooks() {
return maximumBooks;
}
public void setMaximumBooks(int maximumBooks) {
this.maximumBooks = maximumBooks;
}
}
Mark, this introduction for total beginners was WONDERFUL! I enjoyed especially because my former job required me to work in JAVA through an IDE. I spent over a year in the enviornment but I NEVER really had a strong understanding of terminology or JAVA system organziation. That was 2 years ago, and by now I had forgotten everything I managed to understand.
In 1 day, your tutorial not only brought back ALL my former knowledge, but added a new degree of clarity that I never had. I can finally understand things I was supposed to understand 2 years ago!
I owe this to your thoughtful teaching style, outloud thinking, clarity of speech, and your very reasonable pace. Thank you so much! How lucky I am to be a child of the information age!
SUGGESTION: the error messages chosen for the assertEquals methods in testCheckOut cases of the MyLibraryTest (lesson 12) are not accurately describing the failure condition. It might be useful to revisit these and explain in more detail the value of an informative message. Mine ended up looking like this:
assertTrue("Book did not check out correctly",m1.checkOut(b1,p1));
assertFalse("Book should be checked out already", m1.checkOut(b1,p2));
assertTrue("Book check in failed", m1.checkIn(b1));
assertFalse("Book should be checked in already", m1.checkIn(b1));
assertFalse("Book was never checked out", m1.checkIn(b2));
Josh (from grad school)
Great effort man.
Just a note, in MyLibrary.java you have
if ((aBook.getPerson() != null)
&& (aBook.getPerson().getName() == p1.getName()))
shouldn't you be using (aBook.getPerson().getName().equals(p1.getName()) instead?
Regards
You are absolutely right! This is an easy mistake to make (at least for me). And the worst part of it is that it works most (but not all) of the time. Thanks for pointing this out, and I'm glad you enjoyed the tutorial. Mark
Hi everyone,
I am new to eclipse and java,
I have written a sample code in eclipse with three classes. My code looks like this:
public class GameLauncher{
public static void main(String[] args) {
GuessGame game = new GuessGame();
game.startGame();
}
}
public class GuessGame{
Player p1;
Player p2;
Player p3;
public void startGame() {
p1 = new Player();
p2 = new Player();
p3 = new Player();
int guessp1 = 0;
int guessp2 = 0;
int guessp3 = 0;
boolean p1isRight = false;
boolean p2isRight = false;
boolean p3isRight = false;
int targetNumber = (int) (Math.random() * 10);
System.out.println("I'm thinking of a number between 0 and 9...");
while(true){
System.out.println("Number to guess is " + targetNumber);
p1.guess();
p2.guess();
p3.guess();
guessp1 = p1.number;
System.out.println("Player one guessed " + guessp1);
guessp2 = p2.number;
System.out.println("Player one guessed " + guessp2);
guessp3 = p3.number;
System.out.println("Player one guessed " + guessp3);
if (guessp1 == targetNumber) {
p1isRight = true;
}
if (guessp2 == targetNumber) {
p2isRight = true;
}
if (guessp3 == targetNumber) {
p3isRight = true;
}
if (p1isRight|| p2isRight || p3isRight){
System.out.println("We have a winner!");
System.out.println("Player one got it right?" + p1isRight);
System.out.println("Player two got it right?" + p2isRight);
System.out.println("Player three got it right?" + p3isRight);
System.out.println("Game is over.");
break;
} else {
System.out.println("Players will have to try again.");
}
}
}
}
public class Player{
int number = 0;
public void guess() {
number = (int) (Math.random() * 10);
System.out.println("I'm guesiing" + number);
}
}
I have saved the file as GameLauncher.java as I have main in GameLauncher.
I wasn't able to compile for run as I had 2 errors in the code it said :
1) The public type GuessGame must be defined in its own file
2) The public type Player must be defined in its own file.
Can anyone plz let me know how to get rid of this errors.
Any help would be appreciated
Thanks,
Shank
Hi. Well, as the message says, you need to create a separate file for each class. If you go back to lesson 1, you can see how to do this. Good luck. Mark
Thank You mark. But each file should be in the same projects right
Thanks Mark, I had it run.
Thanks,
shank
Hi everyone!!
Well I have to say that your tutorials, Mark, specially the first two (Which are the two that I have been seeing this month), are very useful and have the perfect timing to pause, and work side by side with the lessons. I don't know too much of Java but...I'm taking a course and with the knowledge acquire there plus your tutorials, now I can say that I'm not a beginner anymore. So thank you for that!!
I was wondering if you could make a tutorial about one of this subjects:
Networking (Using sockets, Connections, Streams, and so forth)
SWING (Creating visual classes, it could be very fun by the way)
But no matter what is the next tutorial about, I'll watch it. :)
Well, I guess this is all I wanted to say.
Good luck, and keeping doing this!!! I won't forget the name Mark Dexter when I talk about Java.
Hi Mark,
I'm a total beginner in Programming. Your tutorial are perfect. I stay at lesson 4. To see and hear is great,
also to download your tutorial and use it so much as I need. To scroll forward, backward, to look several times the same.... Thanks, thanks, thanks
I saw eclipse in a computermagazin, download it --- and was frustratet, as a beginner to learn a language and a huge tool (eclipse) to programm my first little programms.
I use your tutorial, and a onlinetutorial too. So I can use eclipse to programm, and the onlinetutorial is in german (I'm german), so I can read and understand more of your java. My englisch is a little rusty.
I think it is the best way to put eclipse to beginners. Cause sit back an relax, show the tutorial, sit and try with the tutorial.
Put the tutorial (the first for example and say there are a lot of more tutorials) in every eclipse. I think a lot of people download it and stop to use it. Eclipse is powerful.
At last your music is funny. You play the banjo?? Good start, and good stop :-)
Greetings from Sebastian
I stay in France, Alsace, Neuf Brisach (the last comlete fort of Ludwig the 14)
GREAT TUTORIAL!!!!
Thank you so much for your Eclipse for total beginners tutorial. I must admit, I am not a beginner to programming. I'm an old hand in fact. The problem is, these days, there seem to be as many languages as grains of sand in a desert. As such, tutorials like yours must be seen as a necessity in the IT community as opposed to a mere convenience.
Your tutorial was easy to follow, easy to understand, and thorough. Not to mention, you have a great voice for this kind of thing. I mention this because I'm attempting to get through another, expensive, tutorial and the lecturer's voice is like nails on a blackboard. I know I won't be able to get through it. Delivery is critical when instructing and you appear to be a natural.
Again, thank you so much. It really is individuals such as yourself that give back to the community that makes IT a great place to be.
cont.
Yes, holding the interest of your audience is not a problem for you.
Hi Mark. Yes really great tutorial especially on using eclipse.
You showed amaxing patience in you teaching manner.
For begginer like me i thought it was a little technical going into JUnit testing, rather maybe you could have taught more object programming methods and in later videos got around to junit testing.
It was i bit confusing for me to be learning all this new stuff and using testing coding structures. But well done very well done. Are you making more of these lessons for beginners ?
Thank Mr.Dexter,
Mike Lynch