This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
At a somewhat cosmic level -- the cattle drive helps chip away at the tendency I have to think that my way is the only right way of doing things. When you're starting out it's hard to think of things to work on -- things that will be challenging enough that you'll learn something, but not so overwhelming that you'll become frustrated. The cattle drive assignments provide just that. The decision to go ahead and submit my work to the cattle drive was a bit of a struggle for me; I've always disliked being graded against some model answer. However, one thing I really like is that although we're being nudged towards the instructor's solutions, it seems possible to pass assignments without matching the model solution exactly. For me, that gives more of the sense of being a (junior) partner or colleague being shown the ropes. In general, I really enjoy the process of revision. (I like design/code reviews at work too.) I had been working through examples in Martin Fowler's Refactoring when I came across the cattle drive, so I was in the mindset of improving code by revision. I came to the cattle drive with an basic knoweldge of Java syntax and OO concepts, and I'm only a few assignments in, so I haven't been surprised by too much yet. (Although there were 2 very clever things in the instructor's solution to 4a that proved to be very useful for 4b...) I'm really looking forward to the servlet and JDBC assignments later, which will be some unfamiliar ground. What I'm really learning here is better overall programming skills, somewhat independent of the fact that the exercises are in Java (hey, is there a SmalltalkRanch, too?). I also really like having to conform to the style guide. (Although there is one thing I'd like to change in there...) The funky indentation and spacing shakes things up enough to get you out of a rut and prepares you to start looking at things a little differently. I'm having a great time with the assignments and appreciate the work of the nitpickers. Michael Matola "The more art is controlled, limited, worked over, the more it is free." -- Igor Stravinsky [This message has been edited by Michael Matola (edited May 31, 2001).]
I'm a "procedural" boy. Heck my current job is writing PL/1 programs. According to Gartner a huge % of people with my background wont make the switch to OO. After struggeling with Java for about 5 months I must agree with them. Java-1 - Java-8 I hardly had a problem with. Most of the mistakes I made were down right stupid and embarrassing. OOP-1 - OOP-4 now thats a different kettle of fish al together. Here you realy start using OO and I'm really struggeling. I manage to get the assignments working after a hell of a lot of swearing and whisky drinking. But when I get my nitpicks back its obvious that I just dont get it (understand it). As for the rest of the "schools". I've only looked at them brievely. But I know that there I will have to learn totally knew "concepts" not really the correct word here. So there again I'll be out of my depth. Which brings me to, what does the Java Ranch / nitpicking do for me.
For one it makes me learn Java with another bunch off souls that also want to learn. I'm not alone.
I get taught the right way to do it in Java
I'm building up a knowledge base of code, I can go to and see how something is done. The good part of this is that its not just code that Paul gave me, I've lived it, I've experienced the growing pains of creating it and in the end doing it right.
I'll get back to this topic. There is more I want & can add.
[This message has been edited by Johannes de Jong (edited June 01, 2001).]
The cattle drive keeps my Java learning alive. I agree with Johannes totally. I also believe that the style guide is "correct" and should be followed by more experienced programmers. When I see what my colleagues write here at work... I just wish I had more time, but it is good to see that many family men/women are in the same boat I am finding the light on the cattle drive. Bye, Stuart
Well I've learned from this thread that it's about time I got back on my horse and continued with the Cattle Drive. It's been a while, before Johannes started the log but I do believe I fell off my horse at Say 4A so that's where I'll start again! I'm still very busy but I'll try to make time for this one. I think the Cattle Drive is fantastic idea. I'm going to get to work on Say right now ... oh no, I suppose I'd better do the work i'm paid for first!!
Pounding at a thick stone wall won't move it, sometimes, you need to step back to see the way around.
Johannes de Jong
Joined: Jan 27, 2001
Angela getting nitpicked and on my log. Whooow !!!
I have used the Cattle Drive as an aid to help me learn Java 2. The Cattle Drive is an excellent complement to reading books and writing code on my own. It provides a different set of criteria for success than what I would create on my own. This type of challenge makes the learning process more enjoyable. Things I have learned from the Cattle Drive experience so far:
Basic understanding of Java 2 Comfortable using Java 2 API specification
By the time I complete the Cattle Drive, I will gain an understanding and have demonstrated the use of:
I like the way the exercises challenge my way of writing code. I have seen my code writing mature over the past 2 months due to this peer review. It's been a great experience for me and will ease the transition to writing OO code for a living. Michael
What have I learned? Humility. I'm serious. There's almost always a way to do it better, to make it clearer. There's a big difference between being able to write and write well. If you want to learn to write java, any java book will do. If you want to learn to write good java, clear java, do the cattle drive. Paul R ------------------ I wanna be a sheriff when I grow up.
i am only on 4b, but i have learned a lot already! like Paul said: humility. i was one of (if not the) best in my c++ classes last year. whenever someone was stuck, they came to me for help. also, in our end of semester project there was a "bug" in 50% of the students' code... it was something i put in my code so i could check what was going on at a certain point, but they did not know how to use it or to get rid of it. i shared some of my program with a friend, he shared it with a friend, they shared it with 2 friends, and it exploded from there... anyway, now i am being put in my place because i cannot just hack-out code to solve the problem; i have to write good, clear code. i need to look at my first solution and think of how i can revise it to be more efficient, clear and within the style guide. i am sure this will come in handy in the future! i have several books on java programming, but a book can never take the place of "live" training, whether it be in a classroom or via email and an online forum. i look forward to each and every nitpick because even if i have to revise and resubmit, i am learning. if the attempt passes, then i have succeeded and i get to move on to the next assignment. like johannes admitted (and i am sure the rest of us have), i have made some stupid mistakes in the first few assignments. i feel ashamed when i realize it because i did not pay attention and therefore i have wasted the nitpicker's time by submitting an error that could have been avoided. you would think the Navy taught me "attention to detail," but i clearly need to be more attentive before i submit a program. so, the short answer is that i have learned humility and attention to detail while also being exposed to the Java language in an exciting, friendly environment. [This message has been edited by Greg Harris (edited June 01, 2001).]
It's one thing to read or even take programming classes that cover language specific and/or general programming concepts and standards, but actually exercising those concepts and standards is a great opportunity. The Cattle Drive's assignments do just that with a bonus, the nitpickers. I believe I am getting the basics needed for becoming a expert Java programmer as well as a better all around programmer. Most, if not all of the concepts taught can be applied to other languages -- shouldn't all code be readable. This is what I have and continue to learn from the Cattle Drive and the Nitpickers.
Readability of my code. The Cattle Drive is teaching me that Java can be used to solve complex problems with a relatively small amount of code that, if done correctly, is not only tight, but readable. You can do a lot with a little Java without creating encrypted code if done correctly.
Determining and then correctly using the best construct, type, structure, etc. for solving a particular problem. Some examples: not creating a method if one is not really needed, only using loops if one is really needed and makes the code more efficient and readable, working with the primitive type that best meets the needs for solving the problem, only add comments if the code actually needs explaining, not going through a loop process to see if an object exist when you could just handle the returned null to begin with, not to repeat code, not to use global variables.... Gee I'm learning a lot
I am now on OOP-3 (NaturalLanguageMultiply) and I am beginning to see how OOP can really make code reusable and benefit the development process. I have read and done the monkey-see monkey-do OOP examples in the books, but now I am actually having to think how can I solve this problem using this particular OOP concept. You have to actually research the concept and the available API classes that will help you solve the problem. Just about as close to real world as you can get
Finally I have learned so many Java basics from the Cattle Drive that it would be to verbose to list, but to put it in a nutshell all that stuff I've been reading in the Java books I'm actually getting to do through the assignments on the Cattle Drive. And with the aid of the nitpickers I am confident my solutions are correct. I know I am improving by just looking at my first attempts at each assignment (yuck).
[This message has been edited by Richard Boren (edited June 01, 2001).] [This message has been edited by Richard Boren (edited June 01, 2001).]
I agree with Paul, humility. When I started learning Java on my own at the beginning of the year, I started hammering out code, writing applets like creating a tic-tac-toe game complete with strategy and all that, and a calculator that resembles and has the same functionality as your standard calculator does. I thought I was going to blow right through the first set of assignments... I was SOOOOOO wrong in that assumption it was wonderful. Cattle Drive has helped me with: A) Writing READABLE code. All the spacing involved really makes the code more readable. Never focused on that, never cared. I do now, and I use the style guide for anything that I do. B) COMMENTS!! I NEVER commented my code, well, because I was the only one reading and using it. It is MUCH easier now that I use comments to know exactly what each snippet of code is doing. C) Writing READABLE code. D) Optimization. After turning in just a couple of the assignments, I have been able to go back through my other stuff that I do for fun and see lines where I'm doing the same tests as somewhere else in the code, ways to shorten the code needed for a certain task, etc. Cattle Drive gives us newbies a place where we can be focused on a task at hand, instead of having to come up with little programs on our own, and more importantly, get feedback on our code. Y'all do a great job and a great service. Thanks!! Jason
Every few years it seems I have to pick up a whole new set of skills. And the most important thing I find in learning is to be able to converse with people doing the same thing, and have a few people who are better than you to learn from. When I was learning C, it was all on my own. None of the other mainframers were interested. When I did work on it, I did the best I could, but I knew there were shortcuts and better ways out there. But I never had a mentor. Also, just seeing how different people handle a problem in a language is educating. You can learn something from them, and they from you. Here at the CattleDrive I can get these services Thank you one and all for the education (in progress) Dan [This message has been edited by Daniel Dunleavy (edited June 01, 2001).]
I am gaining so much out of the Cattle Drive that I don't know where to begin. Java is my first programming language. Just being able to solve the problem is a big confidence booster. Then on top of that you add the nitpickers. Between my study of Java and COBOL, one of the things that seems to be a major issue is readability. Most of the articles I have read make it sound like readability and documentation are an anathema to all programmers. I can see where it's easy to fall into the trap of pounding out the quickest solution possible. By having the nitpickers enforce certain issues, I am getting into the habit of readability early. I also enjoy seeing another perspective unfold. When I received my first nitpick for Say 4B back, I thought "Marilyn, you must be crazy." By the time I passed I agreed that her way was much better. It's easy to type in the code you are told to type( such as examples from a book ) and even understand it. The nitpicks give me a pretty good understanding of why something is better. On the issue of mistakes, I learn from each and every one. Even simple spacing issues remind me not to do it again. I agree that they are embarassing, but I wouldn't want to take away the nitpicker's joy of making fun of me. Matthew Phillips
I always thought I was too stupid to learn programming, not being a mathematician or even involved with computers until last year. Doing the cattle drive has taught me that I can do this if I work hard enough at it. I've read all the books about Java I can get my hands on, but reading about writing code and actually writing it are two very different things. The exercises are hard enough to be challenging yet simple enough that even my code would compile and run. I can't tell you how excited I was when my first assignment compiled and ran. The code was ugly, but I loved it. I still have it, my first program! Having my code critiqued has taught me more on an intuitive level than even I understand. I find myself coming up with solutions that I can't figure out how I knew how to do it that way. Before I get so mushy that I embarrass everyone, I'll stop. Thanks.
Amidst all the talk of lack of java oppurtunities, its the cattle drive that is keeping my interest alive. I marvel at the nitpicker's patience and motivation to keep at it until a satisfactory solution is produced. I am now working on Oops- 2 NaturalLanguageMultiply , still commiting a style error now and then. But they have greatly reduced thanks to nitpicking. I have stopped sulking over any kind of nit [ I was a bit irritated with the first assignment since I didn't really grasp the philosophy of cattle drive fully ]
Another improvement is more readability of code and making the code more crisp. I wish there's 'cattle drive' type style and model for every software technology in the world. You are a mentor in every way. Neither are we spoon-fed nor is our code rejected outright. We are gently guided to the right way. Hey! I know quite a bit of java now. Thanks a bunch, Jytsika
I would have to agree with most of the previous posts. I was all the way to Say A befor I sent my code in for nit-picing. I worked but I know that now it is much better. Although I will say that it can be frusterating :->
For me it the embodiment of "Give a man a fish and feed him for a day, Teach a man to fish and feed him for a lifetime." I read several Java books before I found the Ranch, but as a Procedural boy (Johannes and I are going to start a club ) I never could get the hang of it all. I could copy examples all day long but never really understood how they worked. In other words, I was always given the fish before, but the Ranch handed me a pole and said "go get 'em!" What I've gotten most from the Ranch is the confidence that I can use my existing problem solving skills in entirely new ways and I can actually understand what I'm doing. The one on one communication with the NitPickers is invaluable to my learning process and something you don't even really get in formal education. You want feedback Marilyn? You guys are the best! Thanks for everything. Joel
Wait a minute, I'm trying to think of something clever to say...<p>Joel
Johannes de Jong
Joined: Jan 27, 2001
I said I would be back. You know today the penny finally droped for me regarding the power of OO. Heck I had a mayor struggle with OOP-4. Whatever I did, did not work and when I finally got it to work it was totally wrong according to the nitpick. Marilyn forced me to do it right, not that I've passed yet, and today it was just as if a magic door opened for me. Whow, thanks Marilyn. [This message has been edited by Johannes de Jong (edited June 04, 2001).]
Joined: Mar 09, 2001
Originally posted by Joel Cochran: For me it the embodiment of "Give a man a fish and feed him for a day, Teach a man to fish and feed him for a lifetime." I read several Java books before I found the Ranch, but as a Procedural boy (Johannes and I are going to start a club ) I never could get the hang of it all. I could copy examples all day long but never really understood how they worked. In other words, I was always given the fish before, but the Ranch handed me a pole and said "go get 'em!" What I've gotten most from the Ranch is the confidence that I can use my existing problem solving skills in entirely new ways and I can actually [b]understand what I'm doing. The one on one communication with the NitPickers is invaluable to my learning process and something you don't even really get in formal education. You want feedback Marilyn? You guys are the best! Thanks for everything. Joel[/B]
I couldn't have said it better myself. I certainly tried. Matthew Phillips
All the programs I sent worked (I hope ). What I learned was: 1 to be humble ( Most of the time I agreed with the nitpicking ) 2 readability of your program is VERY important more then saving the last microsecond in execution time. 3 pleasure of sharing ideas and posting and answering questions by this approach of the javaranch.
I just want to say that I definately agree with everyone here. The only thing I wish to add is the fact that the responses from the nitpickers are better than any I ever got in college. The way it worked at my school was that you got the assignment and then sent in your "working" copy on the due date and sometimes got the assignment back to see your grade and maybe one comment about the overall program. I always felt there were better ways to do my programs but really never got any good feedback on them. The only way I saw other innovative ideas on how to solve the assignments was when I would tutor/help others in my class with debugging and even then I was never really sure which ways were the best to implement and most importantly why. The Cattle Drive has made me better myself as a programmer in general not just as a java programmer. I really feel I am truly learning from the Cattle Drive and it has been nice interacting with all kinds of people in the forums. I made it through the first eight assignments before I sent in my first one to be nitpicked and now I am soooooo glad that I did because of all the benefits from being nitpicked. Nitpickers, You are AWESOME!! Amber
"Happiness is a way to Travel, <b>Not</b> a Destination" -- Unknown
I could go on and on, but just to add to what's already been said... I'm learning computer programming and it's a blast. Two main reasons: nitpicking and this forum. We get gently nudged in the right direction (THANKS nitpickers!), and we're not alone (THANKS all you cattle drivers and other ranch folks!). Javaranch really is a friendly place. I'd struggled with a couple books, but wanted to do exercises. Books (some, anyway) give answers, but no explanations of WHY one way might be preferable to another. That really helps, that's one thing that's great about nitpicking. Books serve up huge amounts of info with long, complicated examples. The cattle drive together with nitpicking gently offers bite-size bits of relevant info without choking us on too much all at once. When I think of how I would have reacted if someone had shown me the solution to 4b after my first working attempt, like in a class or a book! Not sure I could have mustered up enough motivation to stay in the saddle... We get to learn together via this forum. That's really fun and motivating. And I'm not alone as the only non-programmer out there, who are welcomed and respected - that's very motivating too. Like I said, I could go on and on. Whether I end up using Java professionally or not, I'm happy that it's possible to learn Java here at the ranch. Thanks to all the folks that make it happen. Pauline
I'm still pretty early in the Cattle Drive, but as the experience has been so great thus far, I thought I'd add my two cents. When I get to the OO part, I guess I'll learn some things that may be fairly Java-specific, but the things I've learned in going through the Drive so far seem to me just good programming techniques and strategies. I'm learning how to write professional-quality code from professionals who take the time to explain what's going wrong with my code, and in a way that helps me avoid making the errors again. This is invaluable, and that it's all for free (or for $200, which is dirt cheap given what's being taught) is amazing. Also, the forums are a great place to learn and to try out new ideas.
I've learned (actually re-learned) that the old saw about a journey of a thousand miles begins with a single step - that rather than spending three days 'planning' Say.java, I'm better off just starting to bash out some code, then fleshing that out, discarding the dead-ends and following the paths that do work out. I know that there's got to be some threshold where meticulous advance planning is needed, but for a small program with a well-defined requirement, I think it's better to just jump in.
The feedback on code is a great idea. Although I've worked, and am working in a professional environment, true code reviews have always been rare. Some senior person stares blankly over my shoulder and grunts when I show them my changes, then I check in the code. Was it good? Was it right? Was it optimal? I never know. I will continue with this as my life permits. I really enjoy the challenge of doing things I'm not required to do at work. Thanks nitpickers!
The JavaRanch is the best! Not only am I being forced to create based on concept, I'm being flogged for my errors. It's like being in training for the Olympics. Without the 'Ranch who knows where I'd be.
I've thought about a number of ways to answer this question. Such as, I've learned I'm a masochist or another view might be that the nitpickers are sadists. Not sure which. Or maybe its both. But the one thing I keep thinking about is that there is something more educational here than just learning Java. We can all probably say that we've learned a little more about OO, interfaces and abstract classes. Or at least I hope so. As a credit to the nitpickers: I've learned that just because something runs doesn't mean that you did a good job. And Just because it runs doesn't mean that there isn't a better way. I've learned once again to not take criticism personally. I've learned a little bit about what it takes to form an online community.
I agree with just about everything everyone else has said. I came into Java a complete newbie to programming and despite doing a couple courses i wasn't confident that i could code well. The cattle drive has done a lot for me in that respect, firstly it has retained my interest in the language and spurred me onto do SCJP, i didn't use it at work and after my courses i could easily have lost interest. My coding readabilty has improved 150% and now i almost scoff at other code that is not done the same waylike an ex-smoker looks at a smoker, like i have seen the light. (This does have its drawbacks, on JQ+ i wrote a line of code for an answer as abstract void getcode() ; and lost the mark because of the space before the semicolon!!! just glad i learned that there and not in the exam) Its nice to know that if i struggle with assignments i am not alone and am often in the same boat as other people including programmers with years of experience who have asked the right questions before to help me get through it. Also Learning how to use the API properly is a big plus and one that will be used a lot in the future. The great sense of community that we are all in it together and finally the enormous sense of satisfaction that i get completing assignments (Say4b you know who you are), getting them to work and making a program go from 70 lines down to 40 while improving readability. Just looking forwards now to servlets and JDBC. Keep up the good work, its well appreciated. [ April 19, 2002: Message edited by: Sam Tilley ]
Thinking about the Cattle drive brings me to make a plea to those of you who teach programming: teach & require clarity & simplicity. I've taken lots of courses that touched on programming and answers & even the teacher's examples were almost always okayed as soon as they worked. I think eveyone's code would be much easier to read if people were taught from the beginning that functioning & robust code is only a good beginning; just like an english essay it should always be re-written at least once with a new stress on clarity.
Hi everyone. These comments are enlightening in what they do (and don't) say; I appreciate the opportunity to read all of this feedback. However, in considering signing up for the Cattle Drive, I must ask one question that I did not see answered -- at least not explicitly... Of those having completed the Cattle Drive, do you think it's worth the $200.00? Thank you, and continued success to JavaRanch (and its members)! -- PR
Dear Potential, There aren't many drivers who have completed the drive that I'm aware of. I am someone who began the drive as a complete beginner to any form of programming, and I am now almost halfway through JDBC. I am considering going for certification, which may mean getting some formal training to fill the gaps in my knowledge which are considerable, but I have to say that I would NEVER have gotten to this point on my own without the drive. Worth the money? I think so. (Even though I joined while there was no charge.) $200 is a LOT of money for someone on my budget, but if you are serious about learning to code well, and garner an undertanding that goes beyond basic, I think this is the place to do it.
Joined: Mar 09, 2001
Potential Rancher, We don't have many rules at Javaranch, but our naming policy is one of them. Please read this policy and change your display name to comply with it if you wish to continue posting. Thanks. You can change your display name here. [ November 20, 2002: Message edited by: Matthew Phillips ]
Marilyn, I am *also* fun of your " epic patience" talent. Your Style Guide I placed in Root directory (there is nothing else except what was put by someone else, like MS Windows or System Commander)
Originally posted by juliane gross: In the cattle drive, I admire also how extremely well the pedagogic structure is done. Every single assignment so far has been difficult to solve, but never too difficult.
Having been adult already quite a time, I am afraid I have never encountered this equilibrium in my life. This is very high praise.
Originally posted by Sean Webster: Is it worth the $200 and can I take my time with it since my work load hits peaks and lulls frequently.
There are people who earn less than 200 USD/year and those with more than 200/hour for the same " peaks and lulls". I have no doubt that 200 USD is promotion underpay in US. The problem is that people frequently have time when they do not have money, and vice versa. The staged (a few times) payments, crediting and discounts would be welcome. Well when something is being sold there is no lack of positive comments and never will be. How about free or cheaper one/two-time trial? Then I understood that there a need to buy a book (Peter's van der Linden "Just Java 2"), then to buy broadband access Internet connection for downloading Orion, MySQL, JDK1.4, etc. This is already 3 times the 200. Doesn't it?
Originally posted by Matthew Philips: "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Fowler)
This does not convince me. I worked recent years in outsourcing, a few months per place and feel like inventing the ways to leave things (and even invent the system for it) codified so that nobody would have understood without me. Why should I care about others if nobody cared about me in first place? What I find more important is to get ability to read the (illegible ) code without any comments and clues.
I see that the tasks are being made sequentially: everybody has done "JAVA". Is it possible to start from Servlets? or it is necessary to start hello-worlding? and installing JDK? Java is very good for introduction but Are there plans having UML, OOAD?
Originally posted by Carol Murphy: I do hope you decide to join us on the drive!
What is the influence of the number to the process, I wonder?
THE MAIN QUESTION IS REALLY: But I sincerely would like to know, who exactly will be nitpicking.
This remained unclear to me after reading "all" about CattleDrive. I cannot help but conveying my impression, that too many Sheriffs (in contrast even to most of more diligent bartenders) write faster than read, cannot stop giving cheap advises , frequently without making a slightest effort to read carefully what was exactly was asked or stated. Curiously I encountered me many times in situation of being attacked just because Sheriffs do not remember even its own questions immediately before (and I made an error answering it. MD is just gives me arrepios) [ December 17, 2002: Message edited by: G Vanin ]
Joined: Mar 09, 2001
Then I understood that there a need to buy a book (Peter's van der Linden "Just Java 2")
This is not a requirement, it is just recommended. I have not bought that particular book.
then to buy broadband access Internet connection for downloading Orion, MySQL, JDK1.4, etc. This is already 3 times the 200. Doesn't it?
Again, these are not requirements. I do not have high speed access and managed to accomplish all of these.
This does not convince me. I worked recent years in outsourcing, a few months per place and feel like inventing the ways to leave things (and even invent the system for it) codified so that nobody would have understood without me. Why should I care about others if nobody cared about me in first place?
The reason for me is simple. I want to be a better programmer than those who write cryptic code.
What I find more important is to get ability to read the (illegible ) code without any comments and clues.
Sure you need to know how to read cryptic code. The cattle drive does not claim to teach that, and it doesn't teach it. It teaches you how to avoid writing it. It is not always about comments. The solutions that are sent when you pass an assignment are not always commented, but they are always readable.
But I sincerely would like to know, who exactly will be nitpicking.
Marilyn, Pauline McNamara, and I believe Jason Adam are the nitpickers.
Marilyn de Queiroz
Joined: Jul 22, 2000
There are people who earn less than 200 USD/year and those with more than 200/hour for the same " peaks and lulls".
This is true.
I have no doubt that 200 USD is promotion underpay in US.
How much is a course at a university in Portugal?
The problem is that people frequently have time when they do not have money, and vice versa. The staged (a few times) payments, crediting and discounts would be welcome.
If you pay with Pay Pal, I believe it charges your credit card and you can make partial payments to your credit card.
How about free or cheaper one/two-time trial?
You can do the assignments without the code review (nitpicking) for free.
The purchase of a specific book is not required. Carol, for example, used books from the library.
High speed access also is not required. I did not have high speed access when I was a student, and many of the students also did not have high speed access.
I see that the tasks are being made sequentially: everybody has done "JAVA". Is it possible to start from Servlets? or it is necessary to start hello-worlding? and installing JDK?
I think you have already installed the jdk. It is necessary to begin at the beginning. The first assignment is Java-1a Hundred. You may not begin with the servlets assignments.
What is the influence of the number to the process, I wonder?
I know of no way to find the answer to this question.
Java is very good for introduction but Are there plans having UML, OOAD?
At this time we have plans for XML, RMI, and EJBs. We do not have plans for UML or OOAD. In the OOP-4 assignment, we show some basic UML, but it is only a tool to help understand the requirements of the assignment. [ December 17, 2002: Message edited by: Marilyn de Queiroz ]
Joined: Aug 30, 2001
Marilyn and Matthew, thank you a lot. This post is for thanks and not for contesting. I would like to withdraw my requests about them. Edited for content not relating to this topic [ December 20, 2002: Message edited by: Matthew Phillips ]
Joined: Mar 09, 2001
I edited out a lot of content not related to this post.
There are many fine sentiments expressed in this thread, so it feels like 'gilding the lily' to add more. However, I feel that it is important to re-iterate the outstanding value-for-money that is the Cattle Drive.
Firstly, let me state that I have been writing programs since 1977, when I built my first single-board computer. It was programmed in hexadecimal using hand-assembled assembly source code. You keyed in each byte on a hex keypad and viewed your results on a 2 digit hex display. Primitive? You bet! That is when I became fascinated with the idea that you could make a piece of hardware do all kinds of things just by changing the codes.
From FORTRAN to BASIC, thence PASCAL, C and quite a few '4GL' style systems, I have been trying to get a good handle on Java for some years.
Doing the 'Java Tutorial' and trying to learn Java from books was simply not enough. I needed to know that I was doing 'it' the best way I could.
--- Enter the Cattle Drive and the nitpicking process ---
You read the assignment, you write a program, it works. Yay! Then you submit it and find out what you didn't do right. D'oh! Repeat until it is right.
This is the embodiment of 'Continuous Improvement'. We get code better by increments. Eventually, it sinks into my brain and soon I begin to remember the lessons every time I start to write some code.
There is also the sense of pride and achievement when you do complete an assignment and finally, the whole series of a section. I passed the Basic Section this week. I mentioned to Marilyn that I felt as if I had really achieved something and not just copied examples from a book and written a few small programs.
Sure, I can write software that works - I do it all the time. So do a lot of other people!
Writing software that works and is efficient and is easy to read and comprehend (for the poor soul who has to maintain it - and yes I have been that monkey.), is the real challenge and I feel that this is where the Cattle Drive is pushing me.
Kudos and Thanks to the nitpickers, I'm looking forward to the next section - OOP(s)