How to host your own website
A lot of scientists have their own websites
(e.g. Zeynep Saygin,
Steven Pinker,
Anne Collins).
Mostly, scientists make their websites through their institutions,
or on pre-built sites like Wordpress. I took the route of making a
website from scratch (i.e., learning html and css) and
it took a LONG time. I wouldn't
recommend it if you're not interested in it for its
own sake. None of the individual parts are too
difficult; it's just as fiddly as coding always is :). It can be
made a lot quicker if you download a template though, rather than doing
everything from scratch!
If you did want to learn some basic web
development, here are some webpages I found
helpful. My background is someone who has some
programming experience but who doesn't know anything
about web development.
- The first thing you need to do is to figure out how to
make a website-- you can make one locally, on your computer,
and it'll look just like a real website except you can't
access it from the internet. There are loads of sites that
can help you learn to put one together: I used codeacademy. I
got about halfway through their Make
a Website module then switched over to their
Make
an Interactive Website module, which I completed. This goes
faster if you have existing coding experience, but the site estimates
it will take 4 hours for the first link and 5 hours for the second.
- After you've made a website on the online codeacademy site, you sit there
and think: ...and how do I get this onto my own computer? I started searching around
for any application I could download which would support html files, and
I ended up downloading Netbeans, which is
free. I then basically tried to create the website I'd made with codeacademy on
my computer, which took some fiddling. After that I downloaded an
existing html template
to see how one organized one's folder structure, and
also to see how people made websites without using Bootstrap, which is
used in codeacademy. And after that I started copying and pasting stuff
from the codeacademy website and the free template websites and other nice
interactive things I Googled. (You think I wrote the Timeline on the
Science page? No way! And that was free as long as I didn't delete the
attributions in the code comments!) So I did lots of Googling and fiddling
until everything looked reasonable, which took a while.
- Finally I got to the point where I had a nice website on my computer, but
had no idea how to get it onto the internet. And up to this point Google had
been excellent, but it was unusually difficult to find a resource to tell me
how to post this thing. (You'll notice that's a theme. There
are resources about each of these steps, but the transitions are really
weak. The process I'm outlining might be a completely convoluted way to make a
website: I have no idea because I was fumbling/Googling myself around.) Until I found this beautiful
website,
which told me how to post what I'd made!
- That website was very instructional. It also informed me that I still wasn't
done with the tutorials :). I ended up
putting all of my code on Github as instructed, but I hadn't used Github before
and it is not as straightforward as my computer science friends had made it seem. I found
this guide helpful.
(And still spent many a frustrated hour trying to get it to work. Now I have a pipeline. It occasionally involves
forcing "commits" (a Github thing) through, which is bad practice but works brilliantly. Also, you need
to learn how to use your computer's terminal, but I figure you already learned how to do that
when you were learning how to use command line-ish things in html. Oh dear. This stuff takes more
background than I thought.)
- And then I bought a domain name (my first payment!)
on Gandi as instructed and set it up with github. Here's the awesome
post
I used for that!
- It was quite a process, if you can't tell-- all of these steps took a solid amount of
time. My knowledge about web development is also interestingly piecemeal now (I feel like I'm
using all the wrong technical verbs when writing this post). I do suspect
there was a more A -> B way to do this, but I'm pleased: I'd
been wanting to learn these skills for a while
and I'm happy with the end result.
Best of luck! I find it miraculous that this works at all;
there are some fantastic resources out there. Sorry about how
Googling's your best friend!