I learned a tremendous amount in college. In grad school too.
If the college sucked so bad, why didn’t you transfer?
When I was in high school, I wound up in the football coach’s geometry class. He was a crappy teacher. As long as you kept your mouth shut and did a minimum amount of work you got an easy “A”. Unfortunately, I actually wanted to learn geometry. So after about four weeks I went to the principal and said “I want to transfer to a harder math class.”
These days there are a lot more gung-ho students around. But in my Oklahoma high school in the late 1970’s the idea that a student would actually want to work harder was unthinkable. Clearly I must have some other shady reason for wanting to transfer. So instead I got a bullshit lecture about the importance of sticking things out and finishing what you started.
I fought all semester for that transfer. Finally my PSAT scores came through and they were high enough to convince the principal that I was actually serious. They switched me in the spring to a class taught by a real teacher who actually cared about the material.
I had a similar experience in college to Airman to the extent that the company that hired me has sent to several schools to learn what I need to know to do my job. This is a standard practice with engineering hires because we don’t learn how to do our jobs in school it is all base.
I did learn thing but they were all minor things some of which I put together on my own before they were ever cover in school. I have been told that the reason that my school is so highly regarded is that graduating shows a student’s ability to put up with shit. I would also assume that it means that they don’t have to cover the basics when talking to the new hirers but still treat them like the idiots they are.
I went to a school completely devoted to engineering (there are only three non-engineering degrees they have and all are B.S., even econ). I learned nothing about writing or history that wasn’t covered in junior high school (which I still needed because I didn’t pick it up the first three times it was presented). Poli-sci or any other liberal arts were dirty words, which is why I picked the school I went to, but when I go back to school one of the things I will be looking for is a school that is more open to learning outside of the classroom.
That’s not really fair. He earned that college performing a potentially risky job in service to the country. (Correct me if I’m wrong. I’m just guessing from the USAF part and various enlistment incentives they have) Whether or not you approve of what he did with it is beside the point. It was his to benefit from as he pleases. He chose to go through the motions and get a better job which will pay more so he can put more back into the tax system. He might have chose to go extra hard at it and get an even better job, but he’ll be paying the government plenty any way
The government doesn’t finance education just to be nice. It does it out of greed. The smarter we are the more productive and wealthy we are. Which means we get taxed more because we have more to tax. This means the government can afford to provide more services or lower the overall tax rates. Either way you’ll benefit too from his schooling.
Eh community college. That’s okay though. It’ll get me a nice piece of paper in Computer Information Systems that’ll get me a $15 to $20 an hour job. Which compared to what I’m used to is alot of money. Enough if I stay at my current life style I’ll have plenty left over to fund a 4 year school and plenty of credits that transfer. Plus job satisfaction. I’d be messing with this stuff for fun, why not get payed to do it?
Plus the book answer has value even if it’s wrong for the simple fact there’s heaps of people being turned out who think it’s right, and I’ll have to deal with them someday. Knowing is half the battle. Plus if I wizbang the teacher enough might be able to get a recommendation which could get a good internship.
There’s some internships at Kellogs I have my eye on next summer. It’d be an hour’s drive to get there but man that’d be so cool. Dunno how likely it is though.
Hehe thanks. Hey if it makes future employers love me too we could always use more love in the world.
Thanks for the advice too. Right now I’m doing pretty good with scripted objected oriented languages. I can write in JavaScript, some Perl, and PHP, python, and Mirc code. I tried C++ a few years ago but I just didn’t get it, but now I’m thinking about giving it another go. Alot of the stuff that confused me about C++ I understand now from the other languages. I can write in html, css, and xul as well. Xul is awesome; you can make GUIs with your html skills. In you can set down with notepad and make a GUI. I love that. It turns Firefox into putty. You can reform firefox anyway you want using xul and extensions. That’s powerful
Mirc code was awesome because of the hash. It has no arrays so I used to get so confused trying to code in it. Till one day in the help file I found the hash. Light bulb moment. Hashes are awesome because they can be an array, they can be many other things. It’s like being able to use batman’s utility belt in your code. To bad they’re so resource intensive, and you have to be careful to keep your data sorted in different hashes. It’s easy to just throw it all in one hash but that leads to messy buggy code that has to dig through all that. The other thing that’s awesome about mirc code is it’s bloody mindedness. You can’t do much in the standard way. You have to hack it and do everything different. You get a nice tool box. Just not the tools you’re used to.
Python has hashes too! However I’ve been sticking to arrays because they’re quicker and I don’t wanna pick up bad habbits.
I’m getting so I can write basic code in just about any Object Oriented Language so long as I have decent documentation .
What would be some other good languages to learn?
Programming should be required learning in high school I think. It teaches you logic and reasoning, and gives you problem solving skills which are life skills.
How would the housing mortgage market be doing now if it’s logic was debugged by a quality programmer, say about 10 years ago?
“hmm seems these mortgage variables could contain garbage data with no way to sanitize it. This could easily crash especially with malicious users”
Also finding poetry and philosophy make you look at things different too.
Sorry if this was long. I get really excited about this stuff, and deep down I’m still 12.
I am in the States with Poli Sci and I can assure you that things aren’t any different here. As others have so eloquently stated, education is what you make of it. All the things cited in the OP are things I’ve vastly improved on or expanded my knowledge of during my college years, though I am still far from perfect.
QFT.
Doesn’t everyone hate those douchebags? I hate to stereotype, but it’s never the young, traditionally “college aged” students that are like this, either- it’s always the returning, “older” students. Every class has a few and without fail, they always had something OMGSUPERRELEVENT to contribute. . . gives me a headache just thinking about it. (Not to say Airman was that guy- I can’t remember any of the previous threads in question. Diogenes’ point, though, just reminded me of the one thing I absolutely loathed in college!).
Well, there are people who would assume their experiences are a perfectly fine way to judge everyone’s experiences as a whole; it seemed to me as you were doing that, which, I agree, would be silly. I suppose all I really have to say now is that i’m sorry you didn’t get much out of it, for whatever reason.
C++ is a huge mess, but getting the concept of pointers is important: It’s a big part of understanding hardware organization and getting a general handle on how OSes work the way they do.
It’s a powerful concept. The idea of an extensible program with its own programming language is one of the best ways to manage complexity, because it allows the application to implement the structure efficiently (usually in an inconvenient-but-fast language like C++) and allows the extensions to implement the complex specific behaviors (usually in a convenient-but-relatively-slow language like Javascript or Lua).
How do you know arrays are quicker? Have you profiled? That’s the only way to find out. As to bad habits, every language has its own notion of what’s good style and what’s bad style. Don’t worry about not being able to treat Python like Javascript or even like Perl (which, incidentally, has hashes as well).
Here’s a short list, chosen because they’re all very different from anything you know and from each other:
[ul]
[li]Common Lisp, because it is a programmable programming language: You approach problems by extending the language, both using functions and macros (nothing like C++ macros), turning your application into a domain-specific language. Common Lisp removes the artificial barrier between the language designer and the language user. Read this book alongside the one I just linked to. It is less practical but it will teach you the Lisp Philosophy a lot more effectively. Some elements of that philosophy only apply (easily) to Lisp, but others (the bottom-up methodology, for example) apply to any language.[/li][li]Haskell is beautiful in other ways. It is probably the best language to learn about type systems from, and when you figure out how to stop fighting the type system you’ll forever after appreciate what type checking is capable of doing for you. (The downside is that the type systems in languages like C++ and Java are a half-assed parody of what Haskell provides.)[/li][li]GNU bison is the modern version of the historic parser generator yacc. If you don’t know what a parser generator is, you really need to learn one: Formal grammars are your friend and so are declarative languages. Bison itself isn’t as important as finding some tool that understands EBNF (Extended Backus-Naur Form) and will generate the low-level parser code for you.[/li][li]Forth is a great example of how you can do a lot with a very primitive language. Like Common Lisp, the main strategy in Forth is extending the language. Unlike in Common Lisp, most Forth systems give you as much access to the underlying hardware as assembly language. It’s worthwhile to build your own Forth interpreter (in fact, building new Forth systems seems to be the main hobby of serious Forth programmers ;)). Understanding the deep similarities between Forth and Lisp will go a long way to helping you ignore outward appearances and recognize common patterns in all designs.[/li][li]C is the most important part of C++ (pointers) without all of the ugly cruft (just about everything else). In addition, you might have noticed that POSIX speaks C natively. Understanding C will teach you a lot about why most modern OSes (Linux included) are the way they are. (Yes, I want you to buy that book specifically. It not only teaches you the language, it teaches you a good, terse style, and has examples complex enough to get that style across effectively. A tasteful style is important to reading anyone’s code, even your own after six months.)[/li][li]At least one assembly language. Don’t limit yourself to x86 because that’s what you have sitting on your desk: Emulators for older, more interesting architectures are readily available. I personally like the PDP-10 and the VAX, but there are many others out there. SIMH is a whole collection of emulators.[/li][/ul]
It’s also a good idea to pick up this book somewhere. It isn’t language specific, having examples in multiple languages, and it won’t teach you any language. What it will teach you are techniques that will improve your ability in any language.
I agree. I’d love to see programming language design taught, in fact.
“The interface is misdesigned: It’s hiding risk instead of making it apparent. Someone is bound to believe it and do something stupid.”
Poetry and philosophy are central to programming. You need to create metaphors that are beautiful, because beauty is simplicity and simplicity is understandable. Having a coherent philosophy (which C++ lacks, Common Lisp has deep down beneath all of the cruft, and Python tries very hard to express at all times) enables you to see beauty more easily.
Keep the sense of wonder. Programming is a creative art and a sense of aesthetics goes a long way.
Out of curiosity, where did you go to school? I mean maybe you just went to a shitty school? Not that you can’t learn at a shitty school, but my guess is it would be easier to coast through one. I doubt you could graduate with a degree in political science from Harvard or Yale (or a hundred other schools) and not be a better writer unless you were a pretty good writer when you entered, but then I could be wrong.
I am inclined to give the OP, and his school, a considerable amount of slack. I’m currently heading into my last semester at college, at a great school, and a great program. However, I can’t count the amount of times I’ve been sitting around with friends and the “This whole thing is stupid, I haven’t learned ANYTHING!” discussion has come up. Thing is, if you sat them down and actually had a discussion about it, they’d grudgingly admit to having learned quite a bit (programming languages, gen-ed stuff, project management, finance, accounting, etc.).
You feel like you should somehow feel way smarter, seeing as you have now completed a college degree, but you still feel like your same old self, and know there is still lots you don’t know. You have actually gained all this information, but because it’s happened gradually over 4+ years, it’s hard to actually tell the difference sometimes.
Maybe the OP actually did learn absolutely nothing, and maybe his school/program actually are crap. I’m more inclined to think that the OP learned more than he realizes.
One of my professors likes to say “college is the only thing that people try to get the absolute least for the amount of money they put in.” I tend to agree, I used to go to a fancy-pants engineering school but hated it. Now I go to to a generic State School and my classes are pointless - I have almost a 4.0 without trying. But the classes where a teacher is really dedicated and a subject is really interesting, I work my ass off. Not for a grade, but for the fuck of it.
Lots of the details of design strategies and design tools vary widely across companies. If your college taught you enough to start immediately in company X, it would be useless in company Y. Second, professors are always behind in the details of how stuff is done, because they seldom have the resources to do anything on a large scale - and they shouldn’t be anyway. So, you’d be obsolete anyway. Third, everything you know now will be useless in 10 years (I’ve had to go through several relearning cycles.) The basics will always be relevant.
Companies who want someone to start being productive immediately will hire from another company, not from college. Companies who want to get fresh blood who have learned some new basics will spend on training. Those are the best companies to work for.
Another +1. The best thing I did in college was to take a graduate class I didn’t need to. It exposed me to a topic I was so excited about I spend my entire graduate career on. I could have done a lot better. Daughter number 1 pushed to get in contact with a famous professor, and worked some with him. She’s now in grad school on the subject. Daughter number 2 is in Germany now on study abroad (and loving it.) She also has learned a ton by being captain of the equestrian team about dealing with bureaucracy, contracts, and idiot parents. I’m very happy they both are making better use of college than I did.
I hate having students like you in my classes. If all you want out of my class is some numbers on your transcript that ultimately help you get a piece of paper, stop wasting my time.
We’ve had this discussion before, Airman, and I know how it’s going to go. You’re going to insist (in slightly different words) that you’re too good for college and it’s somehow the fault of post-secondary education that you wasted your time and got nothing out of it, so that you can feel superior about yourself as someone who participates in the ‘real world’ unlike us Ivory Tower dolts. I can’t help but feel like this is just defensiveness over some insecurity you have.
Maybe I’m jumping the gun and you have different arguments this time around. I can hope, anyway. And finding yourself in a situation where you have bad teachers or unchallenging classes isn’t an excuse - I’ve had both of those. Some classes I still got something out of the experience, and some I got through to move on to something that was fulfilling.
Has there been one person, ever, who was failed out of a university course just because the professor didn’t like their opinion? I know it’s a time-honoured canard by those who want to criticize academia, but has it ever actually happened?
Seriously, I wasn’t in your classes Airman Doors but I’m going to take a wild guess and say that yes, you could always fully participate. If you felt that you couldn’t, that was most likely a misapprehension.
I’ve made this point before, perhaps not to you, Doors, but the easiest way for someone to get an undeservedly high grade in my courses is to argue with me about politics from a right-wing point of view, because I am determined not to punish people for their views and so give every benefit of the doubt that exists (and some that don’t) to anyone voicing views I consider repugnant.
Happily, no student has (so far) figured this out and deliberately voiced idiotic positions, but several have benefitted from it over the years.
Why didn’t you at least switch majors? If I had found myself in an unfulfilling course of study back in college, I would have switched to something else in a heartbeat. It wasn’t your money you were spending. But it was your time, right? Who was holding a gun to your head forcing you to study political science?
I await your next Pit thread about the lack of jobs for know-it-all, chip-on-the-shoulders-having political science majors. It will go over just as well as this one.