There have been numerous comments made about how it isn't correct to count 5 years of work experience between ages 14-19 as "5 years of industry experience". I don't disagree with this at all-- work done in high school, especially part time and for internships, is not equivalent to coming in every day for 8+ hours for 5 years, as an adult.
So, bearing that in mind, how are we supposed to talk about experience? I'm 20 and got my first job at 15, doing data entry and document layout for a startup, and had done some volunteer tech support for my high school before then. Since then I've done various (corporate and academic) sysadmin and programming work, and some work as a data analyst. I think all of this counts in some way as experience in the field-- even if it isn't equivalent to an adult's experience, neither am I talking about mowing lawns, flipping burgers, or fixing my grandparents' PC. This was real work for real companies, with problem solving, customer interaction, and exposure to office politics.
So far, when people ask me how many years of experience I have, I tend to say that "I've been working in IT since I was 15" (demonstrably true), rather than "I have 5 years of experience" (shaky ground). My resume makes it clear that much of this work was part time while attending school. Is that acceptable?
Please understand that I'm not trying to pull a "But, but, I'm 20 years old and even though I'm/so/ much smarter than everyone else my old fogey managers don't listen to me!" kind of thing. I've had the good fortune to work for and around some stunningly bright people (enough to know when I'm sometimes outgunned), and in some ways have learned more about what I/don't/ know that what I do. But I have worked hard and made a real effort to build up experience that will make me an attractive candidate for employment when I graduate next term. Many of my classmates don't have as much work experience as I do any way you look at it, and in this tight economy I obviously want to get that across, as well as the general notion that while I'm not exactly a seasoned professional, I have a reasonable understanding of my strengths and weaknesses in the workplace, at least enough not to make a complete ass of myself politically (and technically).
I find it offensive when people discount my experience as worthless out of hand, probably like someone with 30 years in the industry gets annoyed when a 25 year old tries to play games of one-upmanship.
How can I talk about what I view as valuable time and experience in the workplace without coming off as a cocky know-it-all?
Tonari no Totoro is amazing:) He does such a great job of portraying the young girls... it never feels faked or like a gloopy paen to adult nostalgia. This is absolutely my favorite of the Miyazake films I've seen... no matter what, it always puts me in a good mood... and who wouldn't like the cat-bus?
Wow! I've taken courses in functional programming, systems-level programming, programming language theory, defect analysis, and advanced data structures, got hired to do corporate systems administration in high school, and run various Unix/Linux flavors for the past several years, but I'm getting a degree in Information Systems... so absolutely, you must be right! I'm a mindless VB drone who can't debug to save her (yep, her, no frats to help me out) life! Trying to understand how to make applications actually useful, how to manage a project schedule, and how to deal with customers makes me an ineffectual middle manager!
My goodness, aren't you full of yourself. People with your attitude are just as bad to work with as people who think VB is the sum-total of available programming technologies.
In Windows, sure. It gets used as a temporary storage space for downloads, and I stick some frequently used applications and file folders there too (it's one less layer of drilldown). I also run Windowmaker and Enlightenment, and I don't really miss the ability to store stuff on the desktop there, but it's not a bad feature.
[There are only three pedals, a wheel and a stick - or even two pedals and a wheel. The UI of a car is NOT complex! On the other hand it IS consistant. No matter which make or model I buy a car from the pedals and the steering wheel all do the same thing and are in the same spot. It's not like Ford puts the clutch on one side and Chrysler puts it on the other - or a Taurus uses a steering wheel, Saturn uses a joystick and Yugo's use a rudder to steer the thing.]
Sure, and that standardization is great. But even if you ignore the problems like "Oh, crap! Where the fsck are the windshield wipers?! I can't see!" that another person mentioned, the fact that you can make the car go and stop the same way regardless of model is a misleading simplification, about like saying that the fact that you turn most computers on by pressing a button on the front shows that they have a standardized interface. If all you do is figure out which pedal does what, and that the circle in the middle controls direction, you will be a hazard to yourself and others. Does a Ford drive like a Yugo? I recently started driving my SO's Toyota, which drives not at all like the VW I tried out recently, which drives not at all like the BMW I learned on, and I had to spend some time learning how to drive the car safely and effectively.
Driving is a complex physical process, just like computers can represent complex information systems. Transitioning from one system to another will inevitably require some overhead, but just like driving a car becomes second nature after some practice, using a complex system also becomes fluid if you spend some time with it.
[I'm sure you and I believe that to be true, but the evidence seems to demostrate the opposite: we try to make easy software, but we continuously fail. It is perhaps because, as Alan Cooper said in his book, programmers make rotten designers for end-users. We see things differently and in different ways than the average user. ]
Caveat: I haven't read the Cooper book, so can't comment on its conclusions. I have a background in both computer science and information systems topics such as usability, system design, project management, and so on.
If nothing else, your comment highlights the need for comprehensive and extensive user testing for any application of reasonable size. There is no One True Usability Philosophy that will eliminate your usability problems for all audiences. It is far better to start from some basic principles of good design (e.g. maintaining context, sensible heuristics, logical progression), build a prototype UI, and then test it on a representative sample of users to see how they feel about it. Trust me, if something confuses them or feels wrong, they will peeve about it in the user test.
I've also seen some bad UI design in action, and while some of it is in fact due to letting people who don't understand usability design user interfaces, a lot of it is due to deeper problems with the design and logic of the system. That isn't so much the UI programmer's fault as the fault of the people who were supposed to understand the system requirements and come up with a coherent design.
[A good designer will say "let's do this and this to make it so Joe Average can use this program". A programmer says, as evidenced by the posts in this thread "Joe Average just needs to learn how to do it the Unix Way. If he can't, well, I guess he's just stupid". ]
I see your point, but I will note that one of the hugest peeves for me in UI design is the idea that every interface must, in fact, be completely accessible to anyone who walks by. This is silly. No one expects to be able to drive a car the first time they get behind the wheel, but we've led people to believe that they can "drive" the computer the first time they sit in front of it. There's no call to be elitist about being able to use one UI model versus another, but it's not unreasonable to expect users to learn some basic principles and standards for how to navigate their environment. Standardizing an evironment is much easier than trying to standardize on users (hint: Joe Average is not monolithic)-- I suspect even my grandmother would rather use a sensibly-designed CLI than something based on a loopy concept of what the "average" user needs.
I've been using HP RPN calculators since I was a little kid. My dad's 25C is about as old as I am and still works. My 48G got me through high school and college math with much more style than my TI-using friends:p I get teased about being old-fashioned for liking RPN, but I still think it's a much more fluid way to think and compute than infix notation, and there was this neat kind of bond between all the HP users. Kind of unhappy to know that there will be a lack of RPN calculators in the future.
The Phantom Tollbooth. I loved this book when I was a kid, and I wish I could find my copy so I could read it again as an adult. It sounds like the coverage of mathematical concepts covered in PT isn't quite as advanced as in SCMG (which I haven't read), it still deals with interesting stuff (the nature of infinity, some logic, etc) in a really cool universe.
I've been taking courses in Chinese for a little over two years, which involves a lot of character memorization, and have found a few things that help me memorize how to read/write the characters. Some of them might be similarly helpful in keeping the commands straight-- I definitely used some of this when I was a sysadmin.
1. Rote memorization: drill yourself on command names and functions. Practice matching the command name with the definition, and vice versa. Do this often so it sticks.
2. Frequent use: incorporate what you are learning into your daily work as much as you can. This will make you more fluent in what you are learning, and give concrete demonstrations of behavior. Of course, we are also more likely to remember things we use often.
3. (Perhaps most important) Associations and relations: trying to remember a bunch of discrete names and definitions isn't necessarily especially helpful, particularly when the amount of stuff you have to keep straight gets large. In doing the character memorization, I've found such relations as "looks like", "same character as another word", "doesn't look like", etc to be helpful. For command memorization you can expand this to include "behaves like", "does the opposite of", etc. Putting your knowledge in context can help with the times when you "blank out". Also, many command names and options are based around mnemonics, so trying to understand these can be helpful.
All this aside, the people who have commented that the ability to find information is much more important than the ability to spit back memorized stuff are absolutely correct. While it is obviously vital to have some baseline level of knowledge in your line of work, I am somewhat dubious about employers that emphasis certifications and knowledge of obscurities, rather than problem solving ability and the ability to learn new skills if necessary.
I got my first tech job at 15 when the economy was just starting to go on the upswing a few years ago, and was hired by $LargeUnixShop's internship program about a year later. A number of my friends also had similar internships or did fairly lucrative freelance work. I suspect this had as much to do with the economic situation as with our skills-- these companies were having such a hard time filling positions that they felt they could risk offloading some of the lower-level work to HS students. Now, of course, with the economy slowing down, they can afford to be pickier, and unfortunately that means shying away from hiring HS students, no matter how mature and skilled. No one is working against you, per se, just laws of supply and demand.
That said, I wouldn't give much credence to the people who are telling you that you are in some way obligated to work a crappy job because of your age. This is a form in the crabs-in-bucket mentality, nothing more. Nonetheless, you shouldn't turn your nose up at honest work. If you can't get your plum tech job, try and find something that will help you practice another skill, such as customer interaction, and keep up with the tech stuff in your off hours.
If you don't/really/ need the money, consider doing tech work as a volunteer for a non-profit organization. That way, you can apply and grow your skillset, and help out a good cause. This will be far more beneficial for you (and your resume) than working at McDonalds.
I bought a Toshiba 3025 off of Ebay last year that I really like. At 3 lbs it's actually lighter than the newer models, but the screen res is lower. Pretty good battery life, no HW problems. Works wonderfully for my life as a student, because it takes up very little room in my briefcase and is light enough to carry around all day without causing back pain. One of my previous notebooks was a Toshiba 486, also very reliable. Less flashy than the similar VAIOs but comes with two card slots. I do wish they would make a 1024x768 model with the 10" screen rather than the 11".
Certainly, menstruation is normal. Cancer is normal, heart disease is normal, murder is normal, love is normal. Normal != right/good. As to the cleansing effects of menstruation, this is still up in the air. Natalie Angier, in her book "Woman: An Intimate Geography" (highly recommended) discusses the interesting idea that menstruation actually saves energy versus keeping the uterus "primed" for pregnancy all the time, and notes that so far, no one has found anything that is cleansed, per se, by menstruation. I also do think there may be some credence to the idea that it is harmful for women to experience the hormonal fluctuations of menstruation so many times over the course of life, but not being an MD I can't offer expert commentary.
Now to venture into the philosophical end. As a woman, I get very annoyed when people insist that I should find my most powerful feminine identification, indeed my most powerful identification as a conscious creature, through my reproductive organs and reproductive cycle. Is this really all that I have to connect with, my ability to carry children? What if I do not desire to do so? Are not my work, my thoughts, my relationships, more important in defining me as a person and a woman both? Recall that identification of woman with her reproductive system has not always been to our benefit-- for example, the root of hysteria, 'hyster', means uterus as it was thought that this mental illness derived directly from the female organs. If you find your menstrual cycle centering, well, more power to you, but I do not feel it prerequisite for centering myself.
So, in that light, I do view menstruation as an inconvenience. Before I started taking the Pill, I usually had to take a day off each month at the start of my period because I felt so nauseated. Now that isn't so much of a problem, but still-- bloating, back pain, slight moodiness, interruptions in my sex life, bloodstains on my sheets-- where is the benefit? Since I don't plan on having children for at least another 10 years or so (I'm 20) why do I need this? It's getting in the way of the things that really do make me "connect with my inner self".
I certainly agree that there could be a lot of improvement in society's views on menstruation-- it really peeves me how many people (men, mostly, but some women too) view the cycle as disgusting, frightening, and alien. I also think it is possible that freeing women from the monthly cycle, even temporarily, may advance our further acceptance as equal participants in society, because there would be less fodder with which to brand us as prone to irrationality, emotionalism, and arbitrariness, less with which to mark us as slaves of our biology. Recall, few discuss the hormonal cycles of men, because they are viewed as normal, as the default, and as in control. What if we could be viewed as similarly in control of this aspect of ourselves?
And why do people refuse to take time to learn, anyway? You have to learn how to drive a car, but people refuse to learn how to use their computers. Seriously, take 30 minutes and figure out the basics, and the rest will come in time.
I've been trying to figure this out for years-- people who usually understand that learning new tasks takes time become flustered, touchy, and frightened when asked to complete a computer task that they do not immediately know how to do. I have a couple of theories about why this is:
First, the ease-of-use of computers has been talked up ad nauseum by Apple and Microsoft, and the idea that computers will immediately make life easier is pervasive in the general media. Unlike learning how to drive a car, there is no lore about learning how to use a computer as a rite of passage, or as a skill that is acquired and improved over time. Rather, people have the expectation that the computer will be an immediately familiar and intuitive environment. Ironically, it is only those of us who do have extensive experience that understand how foolish this is:p
Secondly, there is a perception in our culture that skilled computer use equates with intelligence. When I was a sysadmin, I got instant intellect karma with people that I would not have gotten if I had been, say, a TV repairman (similar skillset: diagnose problems, remember the pathologies of particular products, etc). Further, those who posess even minimal computer skills are perceived to have a better shot at success in career than those who do not, regardless of whether the career field relies heavily on computing. As such, people feel that if they show a lack of computer skills, they will be thought of as stupid, lazy, behind the times, etc. and are loathe to admit, to themselves and others, that they don't know what they are doing. Hence some of them never even try to learn.
Then, of course, there are the people that aggressively admit their lack of knowledge: "I don't know anything about this computer crap! I'll never be able to understand this! You fix it!". Odd.
The first is that people are disinclined to start paying for what has been free in the past. Some of this has to do with falling into a habit of not paying for things (and habits are notoriously hard to break) and some has to do with perceptions of worth. Take, for example, Salon.com-- because it was originally offered for no cost, people perceive it as being worth, well, nothing (or close to nothing), and are unwilling to start paying for a subscription at $30/yr because the value of the magazine's content hasn't changed substantially. What if you had been getting soda for free all your life, and the price suddenly jumped to $5 a can? Would you pay for it? Likely not, even if the soda company tweaked the flavor to be slightly more to your liking.
The second reason relates to the ephemerality of on-line content (and to a lesser extent electronicm content in general). People pay for content all the time-- books, magazines, CDs, etc-- but all of it is physically present in a way that electronic content is not. It was postulated some years ago, when the Web really started to get going, that people would place less emphasis on the value of physical representation and more on "pure information". In practice, this seems not to have happened to the extent predicted. We pay for (say) magazine subscriptions in part because we can hold the magazine in hand, and thereby feel its worth. Without the content, it's just some pieces of paper stapled together, but put the content on the web and the perception of worth will not be the same. Rightly or not, we perceive electronic content as less permanent than physical world content-- and indeed, I have magazines from 1985 but any data I had from that year has since become unusable due to storage issues etc-- and are therefore less willing to pay for it. People view computers as inherently unstable, and stability is a big part of perception of worth.
I agree that the fact that we are kind of fumbling around in the dark at this point is unnerving. However, the idea that we shouldn't proceed with this until we can be assured of doing it perfectly isn't particularly helpful, nor is waiting for perfection in any other area. Yes, we will poke and prod-- this is how learning, understanding, and optimization take place-- otherwise we will get nowhere at all. Besides, nature itself is far from bug-free-- evolution does not guarantee optimality, merely good-enough functioning.
By all means we must proceed with caution in this, perhaps even more so than we are now. However, there is nothing to gain from keeping the world a black box, and the potential gains of an entire area of studied unknown and unused.
I'm one of those people who was a "power user" but didn't learn how to program until what is for my circle relatively late (high school, rather than say age 10) so perhaps I can help.
A plug for the book I learned C++ with: Practical C++ Programming (published by O'Reilly in IIRC 1996) which is what I used in my intro programming class freshman year of college, as a replacement for the regular course textbook which I didn't like. The book is well-written, coherent, and easy to use, with good examples.
Teaching how to think logically is a vastly more difficult proposition. I would tend to think that logical mindset is an innate talent-- either you have it or you don't. That said, one of the best courses I took at college (Carnegie Mellon) was called (something like) Introduction to Modern Mathematics-- basically a course in How To Prove Stuff (mostly by induction). No requirement for math background beyond basic algebra. Gave me a good foundation for how to reason about programs. The textbook was called "Classical Algebra", can't recall the author at the moment. Contact artemis@cmu.edu if you're interested and I'll see what I can dig up. Also, my high school geometry class had a section on how to do basic geometry proofs (less esoteric than induction) so you might look for a HS geometry text.
A lot of people find the idea of "where do I start?" daunting. A "power user" might be directed towards learning shell scripting to start out with. S/he can become comfortable with the basics of variables, conditionals, etc without the overhead of learning the concepts behind, say, C++ or Java, while building a tangibly beneficial system tool. Web scripting (not just HTML, scripting) is also useful in this way-- results are fast and tangible.
For whatever reason, I found Perl really accessible. Regexes are cool, and text manipulation might be easier for some than numerical manipulation.
I'm sure I'll think of something else later. Hope this helps.
Juno is part of my usual habit of using the names of ancient goddesses. I've always been interested in ancient history and read a lot of Greek mythology when I was a kid. As it happens, my usual name, Artemis (which I've used for many years, since my MUD days), was taken, so Juno was a second choice. The name Artemis actually reflects some elements of my personality, but I chose Juno mostly because I like how it sounds.
I grew up right next to the HP corporate headquarters in Palo Alto, and HP has a very significant presence in the area. I think, however, that Hewlett and Packard ultimately had as much impact as philanthropists than as founders of a corporation. Evidence of their generosity is easy to see, and I hope that today's corporate leaders will continue in their tradition of community service and involvement. In this age of prima donna CEOs and often poor corporate citizenship, H & P are worth looking up to.
And btw, I've been using RPN calculators since I was a little kid... it is entirely faster and more fluid than infix.
Re:Would have expected a better RPN comment from /
on
William Hewlett Dead
·
· Score: 1
Heh heh heh. My high school mostly used TIs in the math classes, but I and a few other rebellious types went and bought 48Gs. Fostered a good sense of cameraderie, and yes, I too was amused by the priceless looks of the RPN-uninitiated who tried to borrow my calculator. I don't think any other calculator company has such a devoted following.
Being adept at both computer programming and learning human languages (English, German, and Chinese), I have found that one of my greatest strengths as a language learner, namely the ability to deduce and understand grammar rules, is also very useful in programming. Nonetheless, I don't consider this ability to be specifically a linguistic skill, but rather a general aptitude for finding rules and patterns, which is applicable to almost any field. When one looks at it this way, a better question to ask is "Does a capacity for analysis and pattern detection predispose one to programming ability?"-- and the answer is, naturally, "probably so".
It is important to note, however, that an understanding of grammar alone doesn't translate to a complete understanding of a language, human or computer, and here, I think, is where the notion of linguistic skill as a predictor of programming skill begins to look less certain. At least in my own experience, developing elegant written prose requires a fundamentally different mode of thinking from developing elegant code. Understanding grammatical rules does not translate to an understanding of the nuances and subtleties of how to express oneself well in the semantics of a language. Unfortunately, the nature of such skill remains, by far, an intangible.
In my experience (as a lifelong USian), I have found that the stereotype of "geek" as unwashed and antisocial is just that-- a stereotype. Some fit the profile, and some don't. For myself, my social skills were terrible until I put some work into them, and I am often accused of intellectual arrogance, but I have a broad range of interests, my hygeine is fine, and my high school experience wasn't too bad (although I did go to school in a geek-friendly area). I've also encountered plenty of non-technical people who otherwise fit the geek stereotype well. Ultimately, I think the stereotype describes a rather small portion of the population.
I may be inviting flames by saying this, but I get the distinct impression that many US geeks capitalize on this stereotype as a way of inviting sympathy, in the manner of "See, see, what a victim I am!", rather than as a genuine feature of personality. As a result, they are far more visible as a population than those who do not, but I don't think they represent the majority of US "technology enthusiasts" by any stretch".
In deference to those whose experience does fit the geek stereotype, I would like to note that there is a streak of anti-intellectualism that is well entrenched in American culture, and certainly may make a significant contribution to the experience of USian techies. However, I don't know if such a prejudice is present in other cultures to the same extent, so I am unable to make a comparison.
I have a Swiss Army knife (model other than the cybertool) that I used all the time when I was doing hardware support, and I love it to death. While with my model you don't get any kind of pliers (not sure about the cybertool), I found the tool placement and general feel of both the Gerber and Leatherman to be awkward in comparison to the Victorinox. I would also second the advice to get an additional, dedicated screwdriver if you have to deal with screws a lot... any multitool is going to get annoying to use after a while for that kind of work.
Sure there is. I was a sysadmin for a while before I decided it ultimately wasn't for me, so I switched career/educational tracks to software engineering. Some skills are helpful in both fields, for example both require good analytical and problem solving abilities. However, in general I don't use very many sysadmin skills when I code, and vice versa. I used to support programmers that hadn't the first clue about how to manage their systems, and I had no understanding of even the most elementary programming principles until I started studying the field in earnest.
I've heard the difference summed up this way: Systems administrators know how to do things, and programmers know what to do. Both useful, but ultimately divergent, skills.
Boy, no kidding. I'm glad I didn't have to learn Perl/CGI just from this book. That, and if I recall correctly, about all that was said about security was along the lines of "Er, yep, security is good. You should write secure scripts." Feh.
You didn't say what part of El Camino you looked on-- in some places, it's pretty desolate. Anyway, try Hunan Home's on El Camino near San Antonio in Mountain View. I also give a heartfelt vote for the Castro St area of Mtn View.
There have been numerous comments made about how it isn't correct to count 5 years of work experience between ages 14-19 as "5 years of industry experience". I don't disagree with this at all-- work done in high school, especially part time and for internships, is not equivalent to coming in every day for 8+ hours for 5 years, as an adult.
/so/ much smarter than everyone else my old fogey managers don't listen to me!" kind of thing. I've had the good fortune to work for and around some stunningly bright people (enough to know when I'm sometimes outgunned), and in some ways have learned more about what I /don't/ know that what I do. But I have worked hard and made a real effort to build up experience that will make me an attractive candidate for employment when I graduate next term. Many of my classmates don't have as much work experience as I do any way you look at it, and in this tight economy I obviously want to get that across, as well as the general notion that while I'm not exactly a seasoned professional, I have a reasonable understanding of my strengths and weaknesses in the workplace, at least enough not to make a complete ass of myself politically (and technically).
So, bearing that in mind, how are we supposed to talk about experience? I'm 20 and got my first job at 15, doing data entry and document layout for a startup, and had done some volunteer tech support for my high school before then. Since then I've done various (corporate and academic) sysadmin and programming work, and some work as a data analyst. I think all of this counts in some way as experience in the field-- even if it isn't equivalent to an adult's experience, neither am I talking about mowing lawns, flipping burgers, or fixing my grandparents' PC. This was real work for real companies, with problem solving, customer interaction, and exposure to office politics.
So far, when people ask me how many years of experience I have, I tend to say that "I've been working in IT since I was 15" (demonstrably true), rather than "I have 5 years of experience" (shaky ground). My resume makes it clear that much of this work was part time while attending school. Is that acceptable?
Please understand that I'm not trying to pull a "But, but, I'm 20 years old and even though I'm
I find it offensive when people discount my experience as worthless out of hand, probably like someone with 30 years in the industry gets annoyed when a 25 year old tries to play games of one-upmanship.
How can I talk about what I view as valuable time and experience in the workplace without coming off as a cocky know-it-all?
Tonari no Totoro is amazing :) He does such a great job of portraying the young girls... it never feels faked or like a gloopy paen to adult nostalgia. This is absolutely my favorite of the Miyazake films I've seen... no matter what, it always puts me in a good mood... and who wouldn't like the cat-bus?
Wow! I've taken courses in functional programming, systems-level programming, programming language theory, defect analysis, and advanced data structures, got hired to do corporate systems administration in high school, and run various Unix/Linux flavors for the past several years, but I'm getting a degree in Information Systems... so absolutely, you must be right! I'm a mindless VB drone who can't debug to save her (yep, her, no frats to help me out) life! Trying to understand how to make applications actually useful, how to manage a project schedule, and how to deal with customers makes me an ineffectual middle manager!
My goodness, aren't you full of yourself. People with your attitude are just as bad to work with as people who think VB is the sum-total of available programming technologies.
In Windows, sure. It gets used as a temporary storage space for downloads, and I stick some frequently used applications and file folders there too (it's one less layer of drilldown). I also run Windowmaker and Enlightenment, and I don't really miss the ability to store stuff on the desktop there, but it's not a bad feature.
[There are only three pedals, a wheel and a stick - or even two pedals and a wheel. The UI of a car is NOT complex! On the other hand it IS consistant. No matter which make or model I buy a car from the pedals and the steering wheel all do the same thing and are in the same spot. It's not like Ford puts the clutch on one side and Chrysler puts it on the other - or a Taurus uses a steering wheel, Saturn uses a joystick and Yugo's use a rudder to steer the thing.]
Sure, and that standardization is great. But even if you ignore the problems like "Oh, crap! Where the fsck are the windshield wipers?! I can't see!" that another person mentioned, the fact that you can make the car go and stop the same way regardless of model is a misleading simplification, about like saying that the fact that you turn most computers on by pressing a button on the front shows that they have a standardized interface. If all you do is figure out which pedal does what, and that the circle in the middle controls direction, you will be a hazard to yourself and others. Does a Ford drive like a Yugo? I recently started driving my SO's Toyota, which drives not at all like the VW I tried out recently, which drives not at all like the BMW I learned on, and I had to spend some time learning how to drive the car safely and effectively.
Driving is a complex physical process, just like computers can represent complex information systems. Transitioning from one system to another will inevitably require some overhead, but just like driving a car becomes second nature after some practice, using a complex system also becomes fluid if you spend some time with it.
Caveat: I haven't read the Cooper book, so can't comment on its conclusions. I have a background in both computer science and information systems topics such as usability, system design, project management, and so on.
If nothing else, your comment highlights the need for comprehensive and extensive user testing for any application of reasonable size. There is no One True Usability Philosophy that will eliminate your usability problems for all audiences. It is far better to start from some basic principles of good design (e.g. maintaining context, sensible heuristics, logical progression), build a prototype UI, and then test it on a representative sample of users to see how they feel about it. Trust me, if something confuses them or feels wrong, they will peeve about it in the user test.
I've also seen some bad UI design in action, and while some of it is in fact due to letting people who don't understand usability design user interfaces, a lot of it is due to deeper problems with the design and logic of the system. That isn't so much the UI programmer's fault as the fault of the people who were supposed to understand the system requirements and come up with a coherent design.
[A good designer will say "let's do this and this to make it so Joe Average can use this program". A programmer says, as evidenced by the posts in this thread "Joe Average just needs to learn how to do it the Unix Way. If he can't, well, I guess he's just stupid". ]
I see your point, but I will note that one of the hugest peeves for me in UI design is the idea that every interface must, in fact, be completely accessible to anyone who walks by. This is silly. No one expects to be able to drive a car the first time they get behind the wheel, but we've led people to believe that they can "drive" the computer the first time they sit in front of it. There's no call to be elitist about being able to use one UI model versus another, but it's not unreasonable to expect users to learn some basic principles and standards for how to navigate their environment. Standardizing an evironment is much easier than trying to standardize on users (hint: Joe Average is not monolithic)-- I suspect even my grandmother would rather use a sensibly-designed CLI than something based on a loopy concept of what the "average" user needs.
I've been using HP RPN calculators since I was a little kid. My dad's 25C is about as old as I am and still works. My 48G got me through high school and college math with much more style than my TI-using friends :p I get teased about being old-fashioned for liking RPN, but I still think it's a much more fluid way to think and compute than infix notation, and there was this neat kind of bond between all the HP users. Kind of unhappy to know that there will be a lack of RPN calculators in the future.
The Phantom Tollbooth. I loved this book when I was a kid, and I wish I could find my copy so I could read it again as an adult. It sounds like the coverage of mathematical concepts covered in PT isn't quite as advanced as in SCMG (which I haven't read), it still deals with interesting stuff (the nature of infinity, some logic, etc) in a really cool universe.
1. Rote memorization: drill yourself on command names and functions. Practice matching the command name with the definition, and vice versa. Do this often so it sticks.
2. Frequent use: incorporate what you are learning into your daily work as much as you can. This will make you more fluent in what you are learning, and give concrete demonstrations of behavior. Of course, we are also more likely to remember things we use often.
3. (Perhaps most important) Associations and relations: trying to remember a bunch of discrete names and definitions isn't necessarily especially helpful, particularly when the amount of stuff you have to keep straight gets large. In doing the character memorization, I've found such relations as "looks like", "same character as another word", "doesn't look like", etc to be helpful. For command memorization you can expand this to include "behaves like", "does the opposite of", etc. Putting your knowledge in context can help with the times when you "blank out". Also, many command names and options are based around mnemonics, so trying to understand these can be helpful.
All this aside, the people who have commented that the ability to find information is much more important than the ability to spit back memorized stuff are absolutely correct. While it is obviously vital to have some baseline level of knowledge in your line of work, I am somewhat dubious about employers that emphasis certifications and knowledge of obscurities, rather than problem solving ability and the ability to learn new skills if necessary.
That said, I wouldn't give much credence to the people who are telling you that you are in some way obligated to work a crappy job because of your age. This is a form in the crabs-in-bucket mentality, nothing more. Nonetheless, you shouldn't turn your nose up at honest work. If you can't get your plum tech job, try and find something that will help you practice another skill, such as customer interaction, and keep up with the tech stuff in your off hours.
If you don't
I bought a Toshiba 3025 off of Ebay last year that I really like. At 3 lbs it's actually lighter than the newer models, but the screen res is lower. Pretty good battery life, no HW problems. Works wonderfully for my life as a student, because it takes up very little room in my briefcase and is light enough to carry around all day without causing back pain. One of my previous notebooks was a Toshiba 486, also very reliable. Less flashy than the similar VAIOs but comes with two card slots. I do wish they would make a 1024x768 model with the 10" screen rather than the 11".
Now to venture into the philosophical end. As a woman, I get very annoyed when people insist that I should find my most powerful feminine identification, indeed my most powerful identification as a conscious creature, through my reproductive organs and reproductive cycle. Is this really all that I have to connect with, my ability to carry children? What if I do not desire to do so? Are not my work, my thoughts, my relationships, more important in defining me as a person and a woman both? Recall that identification of woman with her reproductive system has not always been to our benefit-- for example, the root of hysteria, 'hyster', means uterus as it was thought that this mental illness derived directly from the female organs. If you find your menstrual cycle centering, well, more power to you, but I do not feel it prerequisite for centering myself.
So, in that light, I do view menstruation as an inconvenience. Before I started taking the Pill, I usually had to take a day off each month at the start of my period because I felt so nauseated. Now that isn't so much of a problem, but still-- bloating, back pain, slight moodiness, interruptions in my sex life, bloodstains on my sheets-- where is the benefit? Since I don't plan on having children for at least another 10 years or so (I'm 20) why do I need this? It's getting in the way of the things that really do make me "connect with my inner self".
I certainly agree that there could be a lot of improvement in society's views on menstruation-- it really peeves me how many people (men, mostly, but some women too) view the cycle as disgusting, frightening, and alien. I also think it is possible that freeing women from the monthly cycle, even temporarily, may advance our further acceptance as equal participants in society, because there would be less fodder with which to brand us as prone to irrationality, emotionalism, and arbitrariness, less with which to mark us as slaves of our biology. Recall, few discuss the hormonal cycles of men, because they are viewed as normal, as the default, and as in control. What if we could be viewed as similarly in control of this aspect of ourselves?
And why do people refuse to take time to learn, anyway? You have to learn how to drive a car, but people refuse to learn how to use their computers. Seriously, take 30 minutes and figure out the basics, and the rest will come in time.
:p
I've been trying to figure this out for years-- people who usually understand that learning new tasks takes time become flustered, touchy, and frightened when asked to complete a computer task that they do not immediately know how to do. I have a couple of theories about why this is:
First, the ease-of-use of computers has been talked up ad nauseum by Apple and Microsoft, and the idea that computers will immediately make life easier is pervasive in the general media. Unlike learning how to drive a car, there is no lore about learning how to use a computer as a rite of passage, or as a skill that is acquired and improved over time. Rather, people have the expectation that the computer will be an immediately familiar and intuitive environment. Ironically, it is only those of us who do have extensive experience that understand how foolish this is
Secondly, there is a perception in our culture that skilled computer use equates with intelligence. When I was a sysadmin, I got instant intellect karma with people that I would not have gotten if I had been, say, a TV repairman (similar skillset: diagnose problems, remember the pathologies of particular products, etc). Further, those who posess even minimal computer skills are perceived to have a better shot at success in career than those who do not, regardless of whether the career field relies heavily on computing. As such, people feel that if they show a lack of computer skills, they will be thought of as stupid, lazy, behind the times, etc. and are loathe to admit, to themselves and others, that they don't know what they are doing. Hence some of them never even try to learn.
Then, of course, there are the people that aggressively admit their lack of knowledge: "I don't know anything about this computer crap! I'll never be able to understand this! You fix it!". Odd.
The first is that people are disinclined to start paying for what has been free in the past. Some of this has to do with falling into a habit of not paying for things (and habits are notoriously hard to break) and some has to do with perceptions of worth. Take, for example, Salon.com-- because it was originally offered for no cost, people perceive it as being worth, well, nothing (or close to nothing), and are unwilling to start paying for a subscription at $30/yr because the value of the magazine's content hasn't changed substantially. What if you had been getting soda for free all your life, and the price suddenly jumped to $5 a can? Would you pay for it? Likely not, even if the soda company tweaked the flavor to be slightly more to your liking.
The second reason relates to the ephemerality of on-line content (and to a lesser extent electronicm content in general). People pay for content all the time-- books, magazines, CDs, etc-- but all of it is physically present in a way that electronic content is not. It was postulated some years ago, when the Web really started to get going, that people would place less emphasis on the value of physical representation and more on "pure information". In practice, this seems not to have happened to the extent predicted. We pay for (say) magazine subscriptions in part because we can hold the magazine in hand, and thereby feel its worth. Without the content, it's just some pieces of paper stapled together, but put the content on the web and the perception of worth will not be the same. Rightly or not, we perceive electronic content as less permanent than physical world content-- and indeed, I have magazines from 1985 but any data I had from that year has since become unusable due to storage issues etc-- and are therefore less willing to pay for it. People view computers as inherently unstable, and stability is a big part of perception of worth.
I agree that the fact that we are kind of fumbling around in the dark at this point is unnerving. However, the idea that we shouldn't proceed with this until we can be assured of doing it perfectly isn't particularly helpful, nor is waiting for perfection in any other area. Yes, we will poke and prod-- this is how learning, understanding, and optimization take place-- otherwise we will get nowhere at all. Besides, nature itself is far from bug-free-- evolution does not guarantee optimality, merely good-enough functioning.
By all means we must proceed with caution in this, perhaps even more so than we are now. However, there is nothing to gain from keeping the world a black box, and the potential gains of an entire area of studied unknown and unused.
A plug for the book I learned C++ with: Practical C++ Programming (published by O'Reilly in IIRC 1996) which is what I used in my intro programming class freshman year of college, as a replacement for the regular course textbook which I didn't like. The book is well-written, coherent, and easy to use, with good examples.
Teaching how to think logically is a vastly more difficult proposition. I would tend to think that logical mindset is an innate talent-- either you have it or you don't. That said, one of the best courses I took at college (Carnegie Mellon) was called (something like) Introduction to Modern Mathematics-- basically a course in How To Prove Stuff (mostly by induction). No requirement for math background beyond basic algebra. Gave me a good foundation for how to reason about programs. The textbook was called "Classical Algebra", can't recall the author at the moment. Contact artemis@cmu.edu if you're interested and I'll see what I can dig up. Also, my high school geometry class had a section on how to do basic geometry proofs (less esoteric than induction) so you might look for a HS geometry text.
A lot of people find the idea of "where do I start?" daunting. A "power user" might be directed towards learning shell scripting to start out with. S/he can become comfortable with the basics of variables, conditionals, etc without the overhead of learning the concepts behind, say, C++ or Java, while building a tangibly beneficial system tool. Web scripting (not just HTML, scripting) is also useful in this way-- results are fast and tangible.
For whatever reason, I found Perl really accessible. Regexes are cool, and text manipulation might be easier for some than numerical manipulation.
I'm sure I'll think of something else later. Hope this helps.
Juno is part of my usual habit of using the names of ancient goddesses. I've always been interested in ancient history and read a lot of Greek mythology when I was a kid. As it happens, my usual name, Artemis (which I've used for many years, since my MUD days), was taken, so Juno was a second choice. The name Artemis actually reflects some elements of my personality, but I chose Juno mostly because I like how it sounds.
I grew up right next to the HP corporate headquarters in Palo Alto, and HP has a very significant presence in the area. I think, however, that Hewlett and Packard ultimately had as much impact as philanthropists than as founders of a corporation. Evidence of their generosity is easy to see, and I hope that today's corporate leaders will continue in their tradition of community service and involvement. In this age of prima donna CEOs and often poor corporate citizenship, H & P are worth looking up to.
And btw, I've been using RPN calculators since I was a little kid... it is entirely faster and more fluid than infix.
Heh heh heh. My high school mostly used TIs in the math classes, but I and a few other rebellious types went and bought 48Gs. Fostered a good sense of cameraderie, and yes, I too was amused by the priceless looks of the RPN-uninitiated who tried to borrow my calculator. I don't think any other calculator company has such a devoted following.
It is important to note, however, that an understanding of grammar alone doesn't translate to a complete understanding of a language, human or computer, and here, I think, is where the notion of linguistic skill as a predictor of programming skill begins to look less certain. At least in my own experience, developing elegant written prose requires a fundamentally different mode of thinking from developing elegant code. Understanding grammatical rules does not translate to an understanding of the nuances and subtleties of how to express oneself well in the semantics of a language. Unfortunately, the nature of such skill remains, by far, an intangible.
I may be inviting flames by saying this, but I get the distinct impression that many US geeks capitalize on this stereotype as a way of inviting sympathy, in the manner of "See, see, what a victim I am!", rather than as a genuine feature of personality. As a result, they are far more visible as a population than those who do not, but I don't think they represent the majority of US "technology enthusiasts" by any stretch".
In deference to those whose experience does fit the geek stereotype, I would like to note that there is a streak of anti-intellectualism that is well entrenched in American culture, and certainly may make a significant contribution to the experience of USian techies. However, I don't know if such a prejudice is present in other cultures to the same extent, so I am unable to make a comparison.
I have a Swiss Army knife (model other than the cybertool) that I used all the time when I was doing hardware support, and I love it to death. While with my model you don't get any kind of pliers (not sure about the cybertool), I found the tool placement and general feel of both the Gerber and Leatherman to be awkward in comparison to the Victorinox. I would also second the advice to get an additional, dedicated screwdriver if you have to deal with screws a lot... any multitool is going to get annoying to use after a while for that kind of work.
I've heard the difference summed up this way: Systems administrators know how to do things, and programmers know what to do. Both useful, but ultimately divergent, skills.
Boy, no kidding. I'm glad I didn't have to learn Perl/CGI just from this book. That, and if I recall correctly, about all that was said about security was along the lines of "Er, yep, security is good. You should write secure scripts." Feh.
You didn't say what part of El Camino you looked on-- in some places, it's pretty desolate. Anyway, try Hunan Home's on El Camino near San Antonio in Mountain View. I also give a heartfelt vote for the Castro St area of Mtn View.