The real problem is not the existance of high-level abstractions, but the fact that many programmers are unwilling or unable to understand the abstraction.
Absolutely. We won't get very far without abstractions with the complexity of modern systems. It's like hardware design: IC's come with sometimes huge spec sheets (books in some cases!) that detail every aspect of their interface, so by designing to the interface you abstract out the details of its operation.But somtimes the chip is buggy and you have to go probing around to find out if the spec. sheet tells the truth. However, you'd be hard pressed to find an EE who thinks that because of the occasional minor (and I've found some bugs in chips so major I wondered if I was its first user!!) bug we should go back to designing everything from transistors & resistors.
Abstraction is here to stay, but we still need to know how to dig down to bare metal when necessary. The sooner this is not necessary, the sooner software productivity will increase.
Which people? Please stop dictating to me how *I* think. My thinking process does NOT resemble OOP for the most part.
Fine. So don't use it. No one is dictating how you should think. If you hadn't noticed, communication between thinking humans usually assumes no absolutes. If you decide to take my statement as applicable to the entire population of the planet, don't be surprised if you find exceptions all over the place.
Personally, I'm getting my masters part-time and I plan on doing this engineering thing 'till I die... however I can view everything as an engineering problem and that includes management. You can take the tinkerer out of the workshop but you can't take the workshop out of the tinkerer
If I hadn't already posted to this thread, I'd give you all my moderation points. I will be an engineer til the end (can't spell geek without EE:-) and that's the reason I decided to go to grad school. I love the work and want to learn more. That, and I plan on starting another company as soon as I can find a niche to exploit. Keeping in touch with the more business-oriented students will hopefully be useful in the future.
One thing I always wonder when I see these "I'm looking for a job" posts is where the poster lives. Here in the MidWest, in the last 4 years, I have only known one software person who was out of work and he was a tester. So, to the OP: what part of the country are you looking in?
It always seemed to me that OO was just a rewrapping of MODULAR programming
I can certainly understand why it looks that way. As someone coming at OO from an EE background, I really didn't "get it" for a while. OO is more than just "a new dialect:" it's a different way to approach design that mimics how people tend to think about physical items. There are multiple ways of accomplishing the same thing, but OO gives us a really good way to handle complexity. Sure, code that works is what is desired, but this is a straw man: does anyone want code that doesn't work? Code that works, doesn't take forever to develop, doesn't have to continually be reworked to remove bugs, and can be extended for new features is what the industry really wants. OOAD is another toolset to make it easier to produce such code.
As an embedded designer, I can create logical objects that correspond to physical objects.You can't imagine how much easier this makes thinking about software design. Now just like putting parts together to build a circuit, I can put software objects together to build a program! Granted, for really small microcontroller projects, I stick to structured design methods, but for major development, I will always look for an OO solution jsut because I've learned how much easier it is.
Design Patterns are important because they suggest that Software Engineering might actually have some content beyond regular CompSci courses.
You hit the nail right on the head. Let me explain: my background is Electrical Engineering. The first thing that hit me when I was reading Design Patterns... was "You can describe your designs this way!!!" As an EE, I can tell another EE about a design I want to do to recover a noisy clock signal which reads the phase of the incoming clock, adjusts the phase of a reference clock slowly to synch with the incoming signal and track it, so we can use the adjusted reference as a cleaned-up version of the incoming signal. Or I can just tell her I'm going to use a Phase-Locked Loop! Three words convey a huge amount of meaning and side-issues to another engineer while trying to explain the design in terms of its component parts may take an hour. By looking at software at such an abstracted level, communications can proceed more efficiently, and design can move faster. This is the way things are described in other fields. The faster CS/SE learns to talk about concepts at higher levels of abstraction, the faster we can get out of the current buggy mess of crud we call modern software. When was the last time you saw a cabinet fitter making his own screws?
Even if a language was all we got out of it, the Patterns movement would already have been worth it.
Re:Who Actually USES These Patterns?
on
Design Patterns
·
· Score: 1
I'm taking a course on Patterns & Architectures right now, and while I haven't actually designed anything (outside of class, that is) which was planned to use patterns, after reading the book I recognized that I had used some of these patterns in my previous work without knowing what they were called. Patterns exist in a wide spectrum of domains and levels of complexity. There are patterns for enterprise-wide architecture and patterns for tiny embedded systems (the paper, "A Pattern Language for Simple Embedded Systems" comes to mind). Now that I have a wider background in patterns, I can see even more opportunities for use in my day to day work as a SW engineer. I agree with your wife!
Wouldn't setting it to something like 0 be better? I mean, I could miss it sticking at 12,000 for a while, but if I notice that my altitude is suddenly 0, I think my first instinct will be to pull up as fast as possible.
What's "kind of silly" is the programmer guessing what the handling for that error condition should be in the first place. That's what requirements documents are for. Avionics systems? I know he had carefully written requirements.
You miss out on the classroom discussion. If the bulk of your degree is in a canned format, then you don't hear the life experiences of your fellow students in regards to various problems. This is particularly true on the graduate level.
Listen to this guy. There were some courses --Software Project Management, and Quality Assurance come to mind -- which would have been stultifyingly boring were it not for the discussions in class. My PM instructor had lots of NASA and Defense contracting management experience and his war stories and explanations of why some things happen were eye opening. Listening to how my classmates' companies handle (or don't handle!) Software Quality is amazing.
This student interaction is one reason I'm considering taking some MBA (finance, marketing, etc) courses next semester. I'm sure I will learn much more than is in the textbooks! I have run my own small company before, and I plan to start another soon.
at University I liked the flighty theoretical stuff most of all; I found that the "real world" stuff was too earthbound.
I have to agree with this. One of the most interesting (and difficult!) courses I took was Artificial Intelligence. It had nothing to do with my intended specializations of Embedded Systems and OO Analysis/Design, but it looked different from anything I had ever done.
It was!!! AI totally changed the way I look at computer science and opened my eyes to an entirely different view of the field.
Sometimes you need to go out in left field to get a better view of where you were.
I love CMU as a college, but SE looks kind of boring. Perhaps it's just me. Mostly learning management and workflow models, from what I saw skimming the textbook.
That's what I thought during the Software Engineering class that was the first course I was required to take for my MS in SE.
I was wrong.
SE is heavy on learning processes, flow models, project management, Quality Assurance, etc... BUT a good curriculum will round out the coursework with stuff like AI, Real-time systems, architecture, Operating Systems and so on for those students who want a background in that area: I see a parallel to my undergrad EE coursework. I enjoy my classes as most of the profs work at real jobs or at least have recent work experience in their fields and know what *works* in the real world and what doesn't -- it's not just ivory tower stuff straight out of the book. Very often I find the professor's notes more useful than the $100 textbooks we have to buy. I have learned a tremendous amount and have a much better understanding of the big picture of software development, and it's good to spend a few hours a week surrounded by peers trying to get better at what they do.
As far as the money comparison; well I don't really care. I got into embedded software cause I love the challenge of the work. Before going back to school, I read everything interesting about CS that I could get my hands on, now I'm in school because I enjoy the environment and the learning experience. I have never done database/business type applications. The kind of work that interests me definitely benefits from the education I have received, and in many cases, employers require the graduate degree.
Re:Swimming, hiking, biking, weight-lifting
on
Exercise for Geeks?
·
· Score: 2, Informative
Well, you can lift weights for strength training (because all that sitting in front of a computer really affects your upper body posture); swim for flexibility training; on weekends you can go hiking and/or biking with your buddies -- that helps improve general endurance, and is a lot of fun, especially if there are beautiful mountains near where you are.
None of these are particularly expensive, but they do require you to get out of your home
You can do quite a bit at home: 1) I have a few 100 lbs of weights, a good bench and a power rack in the basement. Purchased over a few years, they cost about as much as 2 years of a gym membership and I've been using them for over 10 years and will own them for decades more. 2) My live-in gf has a 70 lb punching bag, gloves, and wrist wraps, so she doesn't need to go to the gym or her dojo to practice taekwondo. 3) Exercise bikes: boring, but effective. personally, I'd just rather get outside on my own bike though. 4) Calisthenics & jumping rope. I do sometimes. 5) Martial arts: while you periodically need to get out to go to the dojo, practicing forms/attacks at home can be quite a workout. My only problem is that I study kendo, and swinging a sword overhead doesn't work when you have 8-ft ceilings:-(
When I began working out years ago I found that I had to discover what worked for me. e.g., I don't like lifting with other people, but I like cycling with a partner. I hate cardio, but love weights. You'll probably go through the same self discovery period until you settle on the things you like and it becomes a daily routine you hardly even think of. Exercise has to become natural, or you will stop doing it. Get in the habit of walking (carrying groceries in a backpack works well) instead of driving everywhere; avoid elevators for less than 4 floors of altitude gain; eat properly. After a while it just comes easily.
Go for it: you can have many jobs and multiple interests, but only one body. Take care of it!
It looks like I-35 is roughly the dividing line between a much lighter East and generally darker West. Luckily, I live just west of said road, and can head further west to watch from the top of a big bald rock [state.tx.us].
I'm going to be heading south 20 mi or so on I-35W til it becomes I-35. It should be dark enough by then. Living in the Twin Cities of MN, it was dark enough to see the bigger meteorites of the last big shower, but this time I'm getting completely out of the city for a better view. One of the nice things about this city is how quickly you can get out of it:-)
Funny you should say that: the first thought through my mind when I read that "is there no light pollution anywhere" was "sure, mid-Atlantic" I was always amazed by how huge the stars looked on a moonless night when I was on 12-4 watch in the middle of the ocean. Always wondered what it was like to live in the Azores -- we went past a few times. Looks like just whales and sheep:-) Is Terciera the island with the big mountain? (Pico?)
All it takes is one manager to get fired or a new management team to come in. Trust me, I had this same kind of set up ( we were Home Health). Profitable and all that. Yet 20% were laid off right after the end of the fiscal year.
And all it takes is for the building to catch fire, me to be hit by a truck, or a tornado to sweep through town. Sure, something can go wrong, but I prefer to focus on the fact that things are good *now* rather than worry "how long can this last"
You know, my response was the same as yours, then I thought about it a bit. I don't work for a dot-com (we make medical instruments), we're pretty professional around here and yet I can come in pretty much what time I feel like it, wear what I feel like (shorts and a T-shirt are no problem around here), and our management doesn't bug us. Basically, in my dept, as long as you get your work done by the scheduled time and you write good code, no one cares much what else you do. We chuck around paper airplanes and shoot rubber bands at each other and somehow manage to remain professional and create quality product. And did I mention the company is hugely profitable?
Here's the catch: They are buying the car off you.
You do realize that you don't have to "sell" them the car, don't you? Don't make a claim and the insurance co will happily not pay you at all. The only drawback is, of course, that you swallow the cost of the car, and perhaps the other person's claim as well. But hey, if that's the price of your freedom...
Re:Maybe dumb, maybe not dumb, that's not the poin
on
Tech-Interview Riddles
·
· Score: 1
In an interview, you get time to ask maybe a dozen questions of the interviewee. Every question counts.
Well, if every question counts, it's counterproductive to ask dumb questions, isn't it?
I guess your mileage varies widely from mine, then. My last two interviews (4 years ago and 6 years ago) were very long. The 6 year ago one lasted 3 hours for the first interview and about 1.5 for the second. The interview for my current job 4 years ago lasted all day (8:30 to abt 3pm), but then again, they had flown me in from halfway across the country, so I guess they wanted to get their money's worth:-)
I think if time is so short that you get "maybe a dozen questions" then you're doing it wrong. This person may be with your firm for years and have a significant impact on the projects he/she works on. The cost of the interview gets lost in the noise when considered against the productivity of a really talented dev or the cost of a really terrible developer. Take your time to get to know him. The good interviews I've had covered the gamut from basic electronics & programming to just "shooting the breeze" over lunch to see how I'd get along with the rest of the team. Trust me, if I felt I was being toyed with, I'd mention it. If no explanation was forthcoming, that's the end of the interview. I don't want to work for a bunch of elitist a'holes. The attitude at all fulltime jobs I've taken (not all the ones interviewed for, mind you) was basically to hire motivated people and let them learn specifics on the job. I like that: it lets me grow professionally, and the companies get new blood with different ideas instead of a bunch of people who just happen to be current with the latest buzzwords.
After I insisted that I couldn't come up with an answer on my own, I was informed that they were looking for people who "think out of the box" and only people that hazarded a guess made it to level two interviews.
It sounds like the interviewer remembered a typical "impossible" question, but forgot why you ask it. The purpose isn't to think out of the box, the purpose is to examine problem solving skills with a problem the applicant has never seen before. Sure, you don't know anything about gas station density in the US, but you'll eventually be required to answer a question you don't really know anything about. "We've been asked to implement a simple web browser that will run on an embedded system that doesn't exist yet. Give me an estimate for how long it will take." It sucks, but you're going to need to do it.
You know, I agree with the original guy. So you make an estimate, you still have no idea how good the estimate is, so what do you do with it? How much credence do you assign to it? If you need to know, look it up. If you can't look it up, then at least be sure that the assumptions you base the estimate on are valid. I would never try to estimate the # of gas stations in the US, simply because I don't have good starting data to make the estimate with. Look at your webserver "problem." If you don't know anything about the embedded system, then any estimate you make is equally useless. e.g., if it turns out that the system is based on a Pentium II running Windows CE, the development time for the browser is approximately zero as you can probably use Explorer; if it's based on a Motorola 68HC05J1, then I'll be impressed if you can make *any* browser fit into that 2kbyte CPU.
Really... if you have two garlic presses, you have two too many
Damn straight. The flat side of a $60 Wusthof cleaver does the job just as well:-)
Then again, my $10 marble mortar & pestle (which is which anyway) works also.
As a (recovered) gearhead and a EE/computer geek, I have to watch my tool obsession. I love my 15" balloon whisk the same way I do my Mitutoyo digital dial gauge. Hell, I spent more time choosing my range than I did my last PC. Happy to say I was able to resist the Viking urge...
Are there many other geek coders/gardeners/cooks out there? I love all 3, but coding definitely comes first =]
[raises hand] Right here. I remember coming home from the mall on the bus about 10 years ago while reading my newly-acquired copy of Rose Levy Beranbaum's _The Cake Bible_ The old lady next to me on the bus was amazed to think that men actually not only cooked, but baked! That book is somewhat similar to the reviewed one. RLB goes into the science of baking with explanations of why each recipe performs the way it does. I have learned a lot from her. If I wasn't already into bodybuilding when I got that book, I would definitely have plumped up within a matter of months:-) I'm now working my way through _The Making of a Pastry Chef_ and it's pretty interesting. I have a major sweet tooth
Cooking is definitely for the do-it-yourselfer: Wed. night's leftover pasta sauce (sausages simmered for 3 hours...mmm) became Thursday night's pizza base along with more garlic and fresh basil and oregano (nice to be able to step into the backyard and just pick what you need off the plants) and slices of handmade mozzarella. Learning technique is the most important thing: it makes it possible to come up with snack/dessert ideas when you wake up at 2 am hungry and can only use whatever's on hand.
Heck, I've been thinking of making a combination backyard foundry (checkout the Gingery book)/pizza oven for a while now...
Absolutely. The problem is that most people want to stop at the "eat what you want" part.
Diets are a good start for some people, but that's all they are -- a beginning. Some people just don't seem to (want to) understand that in order to live a healthy lifestyle, you have to do just that - live a healthy lifestyle. Not just for a few months. For life. Find something that works for you, be it walks after dinner, bike rides with the kids, triathlons, etc. If you can't find some exercise you enjoy, you won't stick at it for long. If you can't get enough exercise, then resign yourself to being fat and live with it; there's nothing wrong with accepting yourself as-is as long as you are happy with that person.
It's funny, people used to say to me "you know, when you stop lifting all those weights, your body's going to get all flabby." But they just couldn't get that I have absolutely no intention of stopping until I am on my deathbed. Over the years my exercise patterns changed to match whatever else is going on in my life, but it's never going to stop. You only get one body; plan to take care of it.
Cher was right: if it came in a bottle, everyone would have a great body.
What about the uselessness of a bad instructor? Or more importantly the detrimental nature of an environment that is not conducive to learning?
Holding up your experiences as a graduate student as examples of formal education is like presenting a gourmet meal as an example of the average fare from McDonalds. Surely you must remember what it was like back in grade school and high school. For me it was largely a waste of time. My fellow students were
So are you saying that because I have good experiences as a grad student, it renders my perspective invalid? If so, that's ridiculous.
If you have a bad instructor, then the class degrades to the point of teaching yourself, so you're really no worse off than the original poster's suggestion. If the entire environment is disruptive then I agree that learning will be very difficult. However, I question how widespread this really is.
I do remember high school (grade school was too long ago). And I don't remember a single teacher who wasn't willing to help if I was interested in learning more. Not one! Granted, I rarely needed extra help or direction, but the few times I asked for it it was there. My perception of this (and it was verified by one of my teachers) is that they were bored for the most part and really wished students would show some interest. Considering that I went to a NYC public school in a pretty poor neighborhood, I doubt that I had particularly gifted teachers.
In a nutshell, you get out of education what you put in. Teachers/professors are just one more resource. You or your parents are paying for them and trying to get your money's worth is just good sense. Considering the cost in time and money to go to college, I could never understand the students who just sat there quietly, not understanding a thing, but refusing to ask questions.
I realize how inferior many of this country's high schools are. I came here from another country and entered high school in 10th grade and the classes were laughably easy compared to what I was used to -- and they were honors classes. But the quality of the school or teachers is secondary to student attitude. Unlike a lot of my classmates, I was brought up to believe that education was important and I tried to learn something whenever I could.
I know it's a day late, but I just have to respond to this. You have a point about the inefficiency of formal education, but you also miss somethings that reverse it: the introduction of concepts that you might otherwise not learn, and more important, the professor. Never ignore the usefulness of a good instructor to help you over hard parts, suggest additional resources, or point you in the right direction when you want to explore a concept in greater detail. This, and the ideas of other students, is why I enjoy grad school. Noone says you have to stop where the class stops, and most profs will happily help you if you want to learn more.
Consider the formal education as the first step. The true journey is where you let that step take you.
So, learn the methods and join them. If not, Burger King is always hiring...
Absolutely. We won't get very far without abstractions with the complexity of modern systems. It's like hardware design: IC's come with sometimes huge spec sheets (books in some cases!) that detail every aspect of their interface, so by designing to the interface you abstract out the details of its operation.But somtimes the chip is buggy and you have to go probing around to find out if the spec. sheet tells the truth. However, you'd be hard pressed to find an EE who thinks that because of the occasional minor (and I've found some bugs in chips so major I wondered if I was its first user!!) bug we should go back to designing everything from transistors & resistors.
Abstraction is here to stay, but we still need to know how to dig down to bare metal when necessary. The sooner this is not necessary, the sooner software productivity will increase.
Fine. So don't use it. No one is dictating how you should think. If you hadn't noticed, communication between thinking humans usually assumes no absolutes. If you decide to take my statement as applicable to the entire population of the planet, don't be surprised if you find exceptions all over the place.
If I hadn't already posted to this thread, I'd give you all my moderation points. I will be an engineer til the end (can't spell geek without EE
ps,
One thing I always wonder when I see these "I'm looking for a job" posts is where the poster lives. Here in the MidWest, in the last 4 years, I have only known one software person who was out of work and he was a tester. So, to the OP: what part of the country are you looking in?
I can certainly understand why it looks that way. As someone coming at OO from an EE background, I really didn't "get it" for a while. OO is more than just "a new dialect:" it's a different way to approach design that mimics how people tend to think about physical items. There are multiple ways of accomplishing the same thing, but OO gives us a really good way to handle complexity. Sure, code that works is what is desired, but this is a straw man: does anyone want code that doesn't work? Code that works, doesn't take forever to develop, doesn't have to continually be reworked to remove bugs, and can be extended for new features is what the industry really wants. OOAD is another toolset to make it easier to produce such code.
As an embedded designer, I can create logical objects that correspond to physical objects.You can't imagine how much easier this makes thinking about software design. Now just like putting parts together to build a circuit, I can put software objects together to build a program! Granted, for really small microcontroller projects, I stick to structured design methods, but for major development, I will always look for an OO solution jsut because I've learned how much easier it is.
You hit the nail right on the head. Let me explain: my background is Electrical Engineering. The first thing that hit me when I was reading Design Patterns... was "You can describe your designs this way!!!" As an EE, I can tell another EE about a design I want to do to recover a noisy clock signal which reads the phase of the incoming clock, adjusts the phase of a reference clock slowly to synch with the incoming signal and track it, so we can use the adjusted reference as a cleaned-up version of the incoming signal. Or I can just tell her I'm going to use a Phase-Locked Loop! Three words convey a huge amount of meaning and side-issues to another engineer while trying to explain the design in terms of its component parts may take an hour.
By looking at software at such an abstracted level, communications can proceed more efficiently, and design can move faster. This is the way things are described in other fields. The faster CS/SE learns to talk about concepts at higher levels of abstraction, the faster we can get out of the current buggy mess of crud we call modern software. When was the last time you saw a cabinet fitter making his own screws?
Even if a language was all we got out of it, the Patterns movement would already have been worth it.
I'm taking a course on Patterns & Architectures right now, and while I haven't actually designed anything (outside of class, that is) which was planned to use patterns, after reading the book I recognized that I had used some of these patterns in my previous work without knowing what they were called. Patterns exist in a wide spectrum of domains and levels of complexity. There are patterns for enterprise-wide architecture and patterns for tiny embedded systems (the paper, "A Pattern Language for Simple Embedded Systems" comes to mind).
Now that I have a wider background in patterns, I can see even more opportunities for use in my day to day work as a SW engineer. I agree with your wife!
What's "kind of silly" is the programmer guessing what the handling for that error condition should be in the first place. That's what requirements documents are for. Avionics systems? I know he had carefully written requirements.
Listen to this guy. There were some courses --Software Project Management, and Quality Assurance come to mind -- which would have been stultifyingly boring were it not for the discussions in class. My PM instructor had lots of NASA and Defense contracting management experience and his war stories and explanations of why some things happen were eye opening.
Listening to how my classmates' companies handle (or don't handle!) Software Quality is amazing.
This student interaction is one reason I'm considering taking some MBA (finance, marketing, etc) courses next semester. I'm sure I will learn much more than is in the textbooks! I have run my own small company before, and I plan to start another soon.
I have to agree with this. One of the most interesting (and difficult!) courses I took was Artificial Intelligence. It had nothing to do with my intended specializations of Embedded Systems and OO Analysis/Design, but it looked different from anything I had ever done.
It was!!! AI totally changed the way I look at computer science and opened my eyes to an entirely different view of the field.
Sometimes you need to go out in left field to get a better view of where you were.
That's what I thought during the Software Engineering class that was the first course I was required to take for my MS in SE.
I was wrong.
SE is heavy on learning processes, flow models, project management, Quality Assurance, etc... BUT a good curriculum will round out the coursework with stuff like AI, Real-time systems, architecture, Operating Systems and so on for those students who want a background in that area: I see a parallel to my undergrad EE coursework. I enjoy my classes as most of the profs work at real jobs or at least have recent work experience in their fields and know what *works* in the real world and what doesn't -- it's not just ivory tower stuff straight out of the book. Very often I find the professor's notes more useful than the $100 textbooks we have to buy. I have learned a tremendous amount and have a much better understanding of the big picture of software development, and it's good to spend a few hours a week surrounded by peers trying to get better at what they do.
As far as the money comparison; well I don't really care. I got into embedded software cause I love the challenge of the work. Before going back to school, I read everything interesting about CS that I could get my hands on, now I'm in school because I enjoy the environment and the learning experience. I have never done database/business type applications. The kind of work that interests me definitely benefits from the education I have received, and in many cases, employers require the graduate degree.
You can do quite a bit at home:
1) I have a few 100 lbs of weights, a good bench and a power rack in the basement. Purchased over a few years, they cost about as much as 2 years of a gym membership and I've been using them for over 10 years and will own them for decades more.
2) My live-in gf has a 70 lb punching bag, gloves, and wrist wraps, so she doesn't need to go to the gym or her dojo to practice taekwondo.
3) Exercise bikes: boring, but effective. personally, I'd just rather get outside on my own bike though.
4) Calisthenics & jumping rope. I do sometimes.
5) Martial arts: while you periodically need to get out to go to the dojo, practicing forms/attacks at home can be quite a workout. My only problem is that I study kendo, and swinging a sword overhead doesn't work when you have 8-ft ceilings
When I began working out years ago I found that I had to discover what worked for me. e.g., I don't like lifting with other people, but I like cycling with a partner. I hate cardio, but love weights. You'll probably go through the same self discovery period until you settle on the things you like and it becomes a daily routine you hardly even think of. Exercise has to become natural, or you will stop doing it. Get in the habit of walking (carrying groceries in a backpack works well) instead of driving everywhere; avoid elevators for less than 4 floors of altitude gain; eat properly. After a while it just comes easily.
Go for it: you can have many jobs and multiple interests, but only one body. Take care of it!
I'm going to be heading south 20 mi or so on I-35W til it becomes I-35. It should be dark enough by then. Living in the Twin Cities of MN, it was dark enough to see the bigger meteorites of the last big shower, but this time I'm getting completely out of the city for a better view. One of the nice things about this city is how quickly you can get out of it
Funny you should say that: the first thought through my mind when I read that "is there no light pollution anywhere" was "sure, mid-Atlantic" :-) Is Terciera the island with the big mountain? (Pico?)
I was always amazed by how huge the stars looked on a moonless night when I was on 12-4 watch in the middle of the ocean.
Always wondered what it was like to live in the Azores -- we went past a few times. Looks like just whales and sheep
You know, my response was the same as yours, then I thought about it a bit. I don't work for a dot-com (we make medical instruments), we're pretty professional around here and yet I can come in pretty much what time I feel like it, wear what I feel like (shorts and a T-shirt are no problem around here), and our management doesn't bug us. Basically, in my dept, as long as you get your work done by the scheduled time and you write good code, no one cares much what else you do. We chuck around paper airplanes and shoot rubber bands at each other and somehow manage to remain professional and create quality product.
And did I mention the company is hugely profitable?
I guess your mileage varies widely from mine, then. My last two interviews (4 years ago and 6 years ago) were very long. The 6 year ago one lasted 3 hours for the first interview and about 1.5 for the second. The interview for my current job 4 years ago lasted all day (8:30 to abt 3pm), but then again, they had flown me in from halfway across the country, so I guess they wanted to get their money's worth
I think if time is so short that you get "maybe a dozen questions" then you're doing it wrong. This person may be with your firm for years and have a significant impact on the projects he/she works on. The cost of the interview gets lost in the noise when considered against the productivity of a really talented dev or the cost of a really terrible developer. Take your time to get to know him. The good interviews I've had covered the gamut from basic electronics & programming to just "shooting the breeze" over lunch to see how I'd get along with the rest of the team. Trust me, if I felt I was being toyed with, I'd mention it. If no explanation was forthcoming, that's the end of the interview. I don't want to work for a bunch of elitist a'holes. The attitude at all fulltime jobs I've taken (not all the ones interviewed for, mind you) was basically to hire motivated people and let them learn specifics on the job. I like that: it lets me grow professionally, and the companies get new blood with different ideas instead of a bunch of people who just happen to be current with the latest buzzwords.
Look at your webserver "problem." If you don't know anything about the embedded system, then any estimate you make is equally useless. e.g., if it turns out that the system is based on a Pentium II running Windows CE, the development time for the browser is approximately zero as you can probably use Explorer; if it's based on a Motorola 68HC05J1, then I'll be impressed if you can make *any* browser fit into that 2kbyte CPU.
It's a dumb question!
Then again, my $10 marble mortar & pestle (which is which anyway) works also.
As a (recovered) gearhead and a EE/computer geek, I have to watch my tool obsession. I love my 15" balloon whisk the same way I do my Mitutoyo digital dial gauge. Hell, I spent more time choosing my range than I did my last PC. Happy to say I was able to resist the Viking urge...
Right here. I remember coming home from the mall on the bus about 10 years ago while reading my newly-acquired copy of Rose Levy Beranbaum's _The Cake Bible_ The old lady next to me on the bus was amazed to think that men actually not only cooked, but baked! That book is somewhat similar to the reviewed one. RLB goes into the science of baking with explanations of why each recipe performs the way it does. I have learned a lot from her. If I wasn't already into bodybuilding when I got that book, I would definitely have plumped up within a matter of months
Cooking is definitely for the do-it-yourselfer: Wed. night's leftover pasta sauce (sausages simmered for 3 hours...mmm) became Thursday night's pizza base along with more garlic and fresh basil and oregano (nice to be able to step into the backyard and just pick what you need off the plants) and slices of handmade mozzarella.
Learning technique is the most important thing: it makes it possible to come up with snack/dessert ideas when you wake up at 2 am hungry and can only use whatever's on hand.
Heck, I've been thinking of making a combination backyard foundry (checkout the Gingery book)/pizza oven for a while now...
Diets are a good start for some people, but that's all they are -- a beginning. Some people just don't seem to (want to) understand that in order to live a healthy lifestyle, you have to do just that - live a healthy lifestyle. Not just for a few months. For life. Find something that works for you, be it walks after dinner, bike rides with the kids, triathlons, etc. If you can't find some exercise you enjoy, you won't stick at it for long. If you can't get enough exercise, then resign yourself to being fat and live with it; there's nothing wrong with accepting yourself as-is as long as you are happy with that person.
It's funny, people used to say to me "you know, when you stop lifting all those weights, your body's going to get all flabby." But they just couldn't get that I have absolutely no intention of stopping until I am on my deathbed. Over the years my exercise patterns changed to match whatever else is going on in my life, but it's never going to stop. You only get one body; plan to take care of it.
Cher was right: if it came in a bottle, everyone would have a great body.
If you have a bad instructor, then the class degrades to the point of teaching yourself, so you're really no worse off than the original poster's suggestion. If the entire environment is disruptive then I agree that learning will be very difficult. However, I question how widespread this really is.
I do remember high school (grade school was too long ago). And I don't remember a single teacher who wasn't willing to help if I was interested in learning more. Not one! Granted, I rarely needed extra help or direction, but the few times I asked for it it was there. My perception of this (and it was verified by one of my teachers) is that they were bored for the most part and really wished students would show some interest. Considering that I went to a NYC public school in a pretty poor neighborhood, I doubt that I had particularly gifted teachers.
In a nutshell, you get out of education what you put in. Teachers/professors are just one more resource. You or your parents are paying for them and trying to get your money's worth is just good sense. Considering the cost in time and money to go to college, I could never understand the students who just sat there quietly, not understanding a thing, but refusing to ask questions.
I realize how inferior many of this country's high schools are. I came here from another country and entered high school in 10th grade and the classes were laughably easy compared to what I was used to -- and they were honors classes. But the quality of the school or teachers is secondary to student attitude. Unlike a lot of my classmates, I was brought up to believe that education was important and I tried to learn something whenever I could.
I know it's a day late, but I just have to respond to this. You have a point about the inefficiency of formal education, but you also miss somethings that reverse it: the introduction of concepts that you might otherwise not learn, and more important, the professor.
Never ignore the usefulness of a good instructor to help you over hard parts, suggest additional resources, or point you in the right direction when you want to explore a concept in greater detail. This, and the ideas of other students, is why I enjoy grad school. Noone says you have to stop where the class stops, and most profs will happily help you if you want to learn more.
Consider the formal education as the first step. The true journey is where you let that step take you.