yeah self taught is way better. since bobjob told me there was a LWJGL section. I have learned how to program 3d. and I (on my own) figured out how to move the triangle around. although I cant seem to figure out the whole devil thing. casue LWJGLdoiesnt have that anymore :/.
[quote]I haven’t seen a competent programming teacher as of yet.
[/quote]
Yes, tell me about it!
A long time ago I only had a teacher because I wanted to improve my position in the market by getting some java certification (I already had working experience with java).
This really happened:
Then this teacher told everyone with a straight face that the way to convert an integer into a String is
String s = "" + i;
When I suggested Integer.toString, this teacher started laughing and answered “I’m not sure if that works.”
And this was just one example, it went on and on like this… :
Utterly useless, but yeah, I got the certification I was after
I guess I learned the most by practice, reading, and discussions at forums like these.
I also learned that the best way to learn is having fun doing it. Therefor, you don’t do boring textbook examples and fall asleep in classrooms, but program fun things like games and learn the necessary stuff along the way.
No-one is entirely self-taught, but… For my first decade of programming I learnt everything I knew from manuals. I learnt some useful stuff at university (Computer Science degree), and having lots of spare time as a student I was heavily involved in Sun’s JDC fora, where I learnt Java in depth by looking for interesting questions and trying to solve them. I’ve also learnt useful stuff from colleagues and academic papers.
Actually I do this as well, because it’s shorter to write.
I have never had a teacher. I wish Icould have one. but I think that it would be SO boring though. cause I would probably get straight A’s.
I use int.Parse(); I might be wrong though. havent used nin a while. when in doubt I jsut us “” + i;
hehe
Hehe, well, whatever floats your boat is fine and it’s not all that important really, but I’m having a problem when a teacher dismisses the textbook solution because he simply doesn’t know it exists. And like I said, this was really just one trivial example out of many.
Really, I’m not sure why employers should trust my certification :
dude it is jsut like how the bio will just be for the credits lol.
Smae with History and geography.
When I’m reviewing a CV, Java certifications are at best irrelevant. In general they raise a red flag because I’ve seen so many people who proudly wave them about and don’t know the basics.
I had one my senior year in high school. The guy was literally a genius with an IQ of around 150, was very creative, and was also a slave master. I was up until 3 almost every morning doing his assignments that year. It was really hard but in the end it pushed me to develop my ability in programming very quickly. None of the profs in my college were anything to write home about, but aside from one of them none were particularly bad.
Um, the I don’t know if that works response is dumb, but the actual suggestion is sound. “” + anyObject will just call that object’s toString, anyway, and with primitives it calls the same toString as the wrapper class. So you both are doing exactly the same thing, he is just using less characters.
I’ve got a really good example for someone who didn’t know what they were talking about. This was a C++ class, but this part is the same. I wrote a function like this:
bool isPositive(int i)
{
if (i > 0)
return true;
return false;
}
While I’ve realized later that the above is bad programming practice (having two returns in a single function), my professor literally told me that if I do that without an else statement it will return two values at once. This is not only totally wrong, but completely against the way any programming language and any computer works. He basically was suggesting that by putting two returns in a function, I was telling the processor to open parallel threads that would run the code from that point simultaneously, except one with a true and the other with a false. Now that is a bad teacher. At least yours told you something that was actually true, whether or not he knew about the other way of doing it.
Wouldn’t one method call Integer.toString() and return the resultant string. The other would do that and then concatenate the result with a empty string (""). Pre-1.5 string concatenation of any sort was perceived as a performance issue because of the way multiple concats were handled with string buffers underneath.
FWIW, I consider that I’ve been taught a lot through working with others (work colleagues and online) and from being formally taught things. Maybe there’s a great deal to be said for working through things for yourself, but those pure academic problems that you’re presented with in School/University are actually really useful if you can only get past how trivial they initially seem.
It’s a lot more efficient to learn to be open to be being taught, rather than to learn everything else yourself.
Kev
I believe the most efficient way to convert an integer to a String is to use the valueOf method. Works for other primitive data types as well.
String s = String.valueOf(i);
[quote=“kevglass,post:31,topic:32968”]
Absolutely: while language-specific learning usually doesn’t come in its best form from a classroom (most CS classes worth anything don’t teach you a language, anyways, they teach you how to do something and the language is merely considered an interchangeable tool), algorithm design and some of the real useful domain specific stuff often does. There’s a lot of stuff that you’ll just never pick up on your own “by accident”, but should still know, whether from studying textbooks or taking classes. Since I majored in math + physics instead of CS, I never took most CS classes, but that doesn’t mean I haven’t worked extensively through the textbooks (and most importantly, the exercises!) since I decided to get serious about programming after I graduated (I was lucky, my bro was a CS major, so I always swiped his textbooks after he was finished with them).
Now for a separate, but related, rant: there’s a big distinction between learning Java and learning programming, too, and my advice is to get experience with several different languages as early as possible so that you can separate the two skillsets from each other. While the best CS degrees will force this on you, a lot of them these days do not (I’ve heard that a lot of schools don’t even teach C/C++ anymore, which utterly shocks me - whatever you think of the language, most of which I probably agree with, everybody should be able to both read and code basic C++ (screw pure C, nobody uses pure C compilers anymore), even if they’re not familiar in detail with its quirks and annoyances). Programming experience cuts across particular technologies, and your knowledge of individual technologies becomes almost irrelevant if you’re a good programmer, to the point that if I was hiring people for a Java spot, I would almost never hire someone that only had experience with Java because it indicates a lack of flexibility and interest that you really don’t want to take a chance on.
That’s not to say that Java is bad, or even that you shouldn’t prefer it to other languages, it’s just a comment on the fact that unfortunately a lot of people these days are getting through school without having ever done any other sort of programming, and that’s unfortunate, somewhat akin to an artist making it out of art school without learning to use any medium but charcoal. An artist may have his favorite tools, but knowledge of his tool of choice is not what makes him an artist, and any artist should have at least a passing familiarity with at least a handful of different techniques and instruments even if they choose not to use them for most of their work.
I taught myself how to program with a Turbo Pascal 7 compiler I found on a computer in my high school computer lab. I had no computer at home so I spent way too much time in the lab learning how to make stuff happen with that language. I had no access to the internet so I learnt just by experimentation.
This semester at my university, I’m taking a final-year course called Design and Analysis of Algorithms. It has been documented as the course with the highest failure rate in the entire faculty of natural sciences… I can’t wait
well good luck with the class :).
Absolutely agreed. When I was at university it was mandatory to learn multiple language, 3 each year actually and it was a really powerful way of understanding the pure concepts by seeing the similarities and differences between them. I’d see it as an extension of knowing the pure science as well as having the experience of doing it for yourself. There’s little practical application of knowing 15 languages in depth (the chances are if you’re working for a living you’ll end up specialising in one and using a couple of others day to day) but understanding lots of different ways of approaching software development makes you a far more polished and IME, effective, developer.
Kev
This. Also, the kindness of teachers and neighbors who were willing to help a kid who would bring reams of printouts to school or their homes to have them look over
A C64 magazine! Ha ha! To be honest the first thing that got me into programming was a book called ‘Spectrum graphics and sound’ from 1984. Everything from for loops to poke and peek and 3D maths.
I remember making a game in BASIC on the spectrum where you moved your guy though a forest and avoided a monster, and had to reach a red flag to complete the game. Simple, yes but I was about 9 years old!
C64? HELL NO! VIC-20 baby! Sloppy programmers used the C64 . You had to be TIGHT to hit the VIC!
hehe I dont even know what a VIC is. I know what a commie 64 is though.(no I dont mean communist)