I sometimes get asked about what is REST in an interview. I feel like
I have a sense of what it is, yet the answer seems somewhat
theoretical. When I built a website that supported sub domains for
rock bands, I felt I got some sense of what it was, yet I was not sure
exactly how to define it in my own words. I often feel like I don't
give good interview answers or I am not sure why people seem to feel
it is such an important question to ask, what it is they are looking
for etc ..
Once when asked have I used rest, my answer was something of the form
of I probably had used it without realizing it when I used rails
scaffolding ..
Below is the definition I have from my interview prep notes
I sometimes get asked about what is REST in an interview. I feel like
I have a sense of what it is, yet the answer seems somewhat
theoretical. When I built a website that supported sub domains for
rock bands, I felt I got some sense of what it was, yet I was not sure
exactly how to define it in my own words. I often feel like I don’t
give good interview answers or I am not sure why people seem to feel
it is such an important question to ask, what it is they are looking
for etc …
I would advice anyone from giving you a direct answer on this because the point of an interview to see if you actually know what you claim on your resume. If you don’t know it you are not qualified for the job.
With that said, I will point you in the right direction for understanding and learning more about REST. It’s used in Rails but without a basic understanding of what is covered in it you will not understand the references to REST in other Rails docs and guides.
I sometimes get asked about what is REST in an interview. I feel like
I have a sense of what it is, yet the answer seems somewhat
theoretical. When I built a website that supported sub domains for
rock bands, I felt I got some sense of what it was, yet I was not sure
exactly how to define it in my own words. I often feel like I don’t
give good interview answers or I am not sure why people seem to feel
it is such an important question to ask, what it is they are looking
for etc …
I would advice anyone from giving you a direct answer on this because the point of an interview to see if you actually know what you claim on your resume. If you don’t know it you are not qualified for the job.
That should have read “I would advise against anyone giving…”
I have been through that wikipedia dry and theoretical stuff a bit
before. Some of it is useful, but I can't always seem to draw out what
are the main points that I should care the most about and what is
assumed such as client/server is obviously an assumption, but if I
don't give a fully qualified answer then someone might think I am
lacking I suppose. I have a degree in CS from 1990, so any response on
what is a good answer to this type of question might be instructional
to me.
I think I like Ruby alot as a language, but the front end GUI stuff
with html, http, javascript, css and all gets me less excited. I
realize I have to try to get into those areas a good deal in order to
have some edge as a Rails developer, so I make some attempt but not
enough to be a real expert the way I look at it. I then have had
people think I was too much of a GUI person because of all of that
stuff on my resume.
I did find the Restfull Rails blog post interesting, but it seemed
like it was labeled part 1 and there was no follow up, but I see there
are other articles on restfull rails so you may have pointed me in the
right direction.
One thing that the article said was:
"There are two other verbs that you might not have heard of because
browsers don’t support them: PUT and DELETE"
rails templates don't cause PUT or DELETE to be sent to the server ?
I am not sure if this REST stuff is in any way related to how you can
have a situation where the browser back and forward buttons don't work
the same because the web page gets modified with dynamic html. I know
there are ways around that, but sometimes when you are messing around
and just adding some dynamic AJAX or RJS stuff you end up with
something like that until you decide what the final site layout might
be.
So I had done some things in the past with map.resources in the
routes, but I never really fully understood all of it, especially when
there was more than one level with children such as:
I had kind of rushed through some examples and I should probably
study that a bit now that I have some time to do so.
I seemed to recall I had written some mixin modules to support some
of this. The other thing that is a little frustrating is I get alot of
questions in interviews on my previous work. I no longer have any of
that code to look at and it was government work and there is no way I
could have saved any of the code. People these days seem to ask alot
more questions than years ago as well.
So I had done some things in the past with map.resources in the
routes, but I never really fully understood all of it, especially when
there was more than one level with children such as:
I had kind of rushed through some examples and I should probably
study that a bit now that I have some time to do so.
I seemed to recall I had written some mixin modules to support some
of this. The other thing that is a little frustrating is I get alot of
questions in interviews on my previous work. I no longer have any of
that code to look at and it was government work and there is no way I
could have saved any of the code.
Nor could you have passed it on anyway. I got requests like that too in the past. My stock answer was a polite "no, it was done under a classified clearance."
People these days seem to ask alot
more questions than years ago as well.
I agree. It's necessary because of the flood in the market of people that were not programmers and engineers getting those jobs in the late 90's/early 2000's. They ended up writing bad unsupported code that these companies got stuck with. Just grin and bear it. They're just trying to not get burned again.