
Conceptual Introduction to Web Development - mdaverde
http://milanlandaverde.com/blog/2013/10/20/conceptual-introduction-to-web-development/
======
RodericDay
This is really important, and the kind of thing that was glaringly missing
when people replied to my newbie questions.

There is a whole "big-picture" aspect that is glossed over by experts,
especially experts that were guided throughout in internships and first-jobs.

I would say that the obstacle for an average joe to get his ideas up in the
web on some capacity is __not __HTML /CSS/JS/Backbone programming knowledge,
but deployment. People who say Heroku is braindead simple are not seeing the
bigger picture (although it is great).

------
thenerdfiles
1\. "The Web is fundamentally a distributed hypermedia application."

2\. We build architecture substrates for the space of URLs (URL-Space): URL-
Driven Development. (This is ultimate a Language Problem-set/Conept.)

3\. I try to practice Hypermedia-based View Methodology, and the notion of
"Creative Encounter with Digital Artefacts" (recommendation engines that use
"imaginary rules") is becoming a viable system of thought.

I believe these points were not made. What are the alternative ideas? This OP
only discusses the stuff underneath, not the conceptual overhead or the
conceptual scheme of Web development.

We want to build Web applications that evolve, and which can last throughout
generations. None of this was even remotely addressed.

------
clienthunter
Looking back on my years of PHP pain, I feel it would be a commendable thing
to end this article with just a small sentence on the importance of choosing
the right tool for the job. 10 years ago I would have read this and gone off
to learn PHP and MySQL.

~~~
jrochkind1
I don't know if that's neccesarily the wrong way to get started, PHP and
MySQL.

It's how most of _us_ got started, right? (Okay, I got started in Perl, and
only dabbled in PHP).

~~~
clienthunter
You started in Perl? That's hardcore.

The PHP/MySQL was ok back then, but there's so many great alternatives with
great exposure today. Aside from ease of deployment, I don't see what benefits
there are now.

~~~
CWIZO
My girlfriend is just starting learning web development. She now has a very
basic understanding of HTML and CSS.

Then she went to Rails Girls London to learn a bit about the backend.
Unfortunately (and I know as I was a mentor at one of this events) RoR is
completely unsuitable for a beginner. It took me one hour to explain what a
console is, and she still doesn't really know what to do with it. She had all
this questions like "what is a controller", "umm how do I open this page now
again?", "umm how do I do X", "how do I do Y".

Now contrast this with PHP. I setup a simple server, install PHP, get it
started and then just tell her "create a new file called 'index.php' save it
in this location, then open your browser and enter localhost/index.php".
That's it. She doesn't need to know about generating controllers and rakes and
db migrations and what not. Open text editor, put html in there, put some PHP
in there. That's it.

Seriously, PHP is perfect for a beginner. She can learn about MVC later. Right
now all she wants to do is to create something and have it work. She really
doesn't need to know about adding model validators and what not.

And from what I know about Python it's the same deal as with Ruby. You just
can't create a file and start writing a web page without pulling in a bunch of
boilerplate.

So bottom line is: yeah PHP is way relevant today.

~~~
jrochkind1
Even though I'm the one who suggested that maybe PHP was a good place to
start...

I think it's probably a mistake to try to learn web programming without
learning _programming_ first. Hello world. Loops and conditionals, math, etc.

Because while many of us learned web programming with PHP, many of us also
learned programming before we learned web programming.

And you _can_ just create a ruby or python file and start running it, not for
a web app neccesarily, but for learning programming. (In this sense, they are
better for this than Java, because there's no compilation or boilerplate, you
really can just create a file and run it)

------
jafaku
Why are you using jQuery without including it? Isn't that going to confuse the
beginners?

------
apsurd
Here's a similar conceptual overview of "how the web works" in terms of
client-server operations but done in a more interactive diagram style:
[http://nilclass.com/](http://nilclass.com/)

It's a work in progress which helped me get a lot better at d3.js but I truly
believe in this style of teaching as foundational knowledge. I think one of
the best things veterans can give to newbies is _awareness_ and _perspective_.

------
ancarda
Nitpick: The JS heartbeat can be done in CSS3, otherwise this is great!

~~~
Isofarro
Nitpick: it can also be done in JavaScript.

~~~
nicklovescode
Both your comment and its parent are right. It could[0] even be done in HTML
with <blink>

It should be done in CSS.

0\. Not even sure if blink still exists, or if you can set it to animate, but
my point stands that best practices are important.

~~~
frogpelt
_It should be done in CSS._

Not if you want to show a simple JS example.

~~~
nicklovescode
My point is that there are many examples to show. Why pick one using bad
practice?

------
oulipian
This is a good idea, but a conceptual introduction to web development that
dismisses UI/UX as "basically, what makes sites look good" is not one I could
ever recommend to anyone.

