Ask HN: How should I create my personal academic blog?
31 comments
Static websites are the way to go, and as for hosting, I personally find Netlify to be awesome, and well fit for static websites (my blog is built with a custom SSG, run by Netlify on every commit).
You can simply use git for versioning, FrontMatter for article metadata (like title, published status etc.), reStructuredText or Markdown for writeup, and whichever tool you may see fit.
If you don't want to build your own, Hexo, Hugo or Jekyll are well-known, but if you want something a bit more "fit" for you, I'd recommend checking out Metalsmith.
As for the website hosting, you have a lot of available options due to the simplicity of hosting some dumb HTML pages and medias.
- Git hosts, like Github, Gitlab (my favourite), Bitbucket
- Netlify, Surge
- Some shared web hosting, like the base offers at OVH: When you buy a domain name, you have, for free, 10MB of space for a shared web hosting, which can easily serve HTML files. Buy a .xyz domain for less than 3€/year and have free hosting.
You can simply use git for versioning, FrontMatter for article metadata (like title, published status etc.), reStructuredText or Markdown for writeup, and whichever tool you may see fit.
If you don't want to build your own, Hexo, Hugo or Jekyll are well-known, but if you want something a bit more "fit" for you, I'd recommend checking out Metalsmith.
As for the website hosting, you have a lot of available options due to the simplicity of hosting some dumb HTML pages and medias.
- Git hosts, like Github, Gitlab (my favourite), Bitbucket
- Netlify, Surge
- Some shared web hosting, like the base offers at OVH: When you buy a domain name, you have, for free, 10MB of space for a shared web hosting, which can easily serve HTML files. Buy a .xyz domain for less than 3€/year and have free hosting.
One issue I have with static sites currently is adding/editing content from mobiles. Although you can create/edit files (by commits) from GitHub.com via your browser, using the web interface, it's not really too pleasant to work with (since, obviously, it isn't designed for this).
If you could sync your files over to something like Google Docs / Dropbox Paper, edit them there, and see the changes be automatically published to GitHub, that would be nice.
Other than that, I find static sites very nice for blogs. I don't really think most blogs need something like WordPress, it does seem a bit overkill to me.
If you could sync your files over to something like Google Docs / Dropbox Paper, edit them there, and see the changes be automatically published to GitHub, that would be nice.
Other than that, I find static sites very nice for blogs. I don't really think most blogs need something like WordPress, it does seem a bit overkill to me.
Thanks! Could you be specific about where to purchase a domain? Sorry I’m not an expert in web-based stuff.
Cloudflare Domains is soon a thing (meant to be available from later this month in waves to current Cloudflare users, my guess is it should be available for all start of 2019). That might be nice. Cloudflare promises not to charge more than how much it costs them to get the domain, so they are dirt cheap domains, and Cloudflare has a great reputation for tolerance/no censorship - so you don't have to be worried about having your domain terminated/suspended.
Currently, namecheap is also quite popular, it's not especially elegant but it's cheap and secure. Tends to be my personal choice. I would immediately point your DNS to Cloudflare, after purchasing a domain, and manage your domain's records from Cloudflare.
Also worth checking out: https://www.gandi.net/ and https://njal.la/
Usually, namecheap is a safe bet. That'd be my recommendation, currently.
Currently, namecheap is also quite popular, it's not especially elegant but it's cheap and secure. Tends to be my personal choice. I would immediately point your DNS to Cloudflare, after purchasing a domain, and manage your domain's records from Cloudflare.
Also worth checking out: https://www.gandi.net/ and https://njal.la/
Usually, namecheap is a safe bet. That'd be my recommendation, currently.
>Cloudflare has a great reputation for tolerance/no censorship
Great but undeserved reputation. Cloudflare will ban your domain if a BigCo asks. Just try adding “doxagram.is” to your CF account.
Great but undeserved reputation. Cloudflare will ban your domain if a BigCo asks. Just try adding “doxagram.is” to your CF account.
I find http://domains.google.com to be the simplest.
It comes with built-in privacy protection* and a free email forwarding service. So all emails to [email protected] could be forwarded to your email.
* with recent news around Google + privacy, I'd take this with a grain of salt.
It comes with built-in privacy protection* and a free email forwarding service. So all emails to [email protected] could be forwarded to your email.
* with recent news around Google + privacy, I'd take this with a grain of salt.
I recommend either IWantMyName or Namesilo. They have great support and no B.S. upsells a lot of providers have. I am not affiliated with them, just a customer.
WordPress could be a good fit if you set it up correctly. First, don't use cheap shared hosting. Get a VPS and setup a LEMP stack with PHP-FPM. Use PHP 7.2. Then select a non-bloated blog theme and delete/uninstall unnecessary plugins other than some caching (I highly recommend WP Fastest Cache & Autoptimize). Also, configure nginx to do things like gzip etc. I can assure you it will load fast. I have started my blog on a $5 DigitalOcean VPS with WP and it loads superfast but I only do basic blogging.
Just make sure you properly update and secure wordpress, keep and eye on the plugins, etc. I would not advise ppl not well versed in security to avoid wordpress and PHP apps in general if possible.
Thanks for the advice, I’ll investigate.
np. If you need help, I would be more than happy to help for free as I love servers and Linux stuff and this is my bread and butter :)
Anything other than a static site for a personal blog is madness imho. Personally I found writing markdown and using a Makefile and pandoc to generate the site to be good enough.
If the lag of pushing to Github to see your changes is annoying to you, you could just install jekyll and a simple web server locally to generate the site on your machine without having to push and wait for Github's magic to work.
If the lag of pushing to Github to see your changes is annoying to you, you could just install jekyll and a simple web server locally to generate the site on your machine without having to push and wait for Github's magic to work.
I would definitely go with a SSG (static site generator)... sounds like you might just need to do some custom theming. Personally I enjoy coding that sort of thing for myself... but if you didn't feel like doing the work you could grab a theme from themeforest or similar for $10 and put it into your SSG. please update the URL to this post ... I love reading well built academic blogs :)
Neuro is a cool area to be in right now. Are you going into the computational or more of the biological side?
I just got out of the computational side a short while ago. I didn't blog about it much since there is a lot of background which you need to explain for most numeric methods (not to mention all the time needed to provide good instructive data visualizations).
I've tried a few different iterations of posting content to my site. Initially it was editing raw HTML, then a small custom common lisp app, then there was a short lived rails project which I forked from the original dev, then there was a brief stint using ikiwiki, and now I'm using jekyll on my site for the blog side of things.
Per the current workflow I typically get a seed idea when I'm actively working on a topic and have a bunch of loose notes. Then I formulate the core idea of what can be conveyed to readers (and myself when I look at things months/years later) with pencil/paper. Next I typically transcribe things to an AsciiDoc document, build figures with Julia scripts or in a jupyter notebook, and edit a bunch. Once things are looking decent I use jekyll's auto-rebuild feature and built-in server for semi-final tweaks/formatting. Finally I commit it and verify that everything looks fine on my remote server. Some of the better posts I've made are collected at http://fundamental-code.com/ to give you an idea for the results.
I just got out of the computational side a short while ago. I didn't blog about it much since there is a lot of background which you need to explain for most numeric methods (not to mention all the time needed to provide good instructive data visualizations).
I've tried a few different iterations of posting content to my site. Initially it was editing raw HTML, then a small custom common lisp app, then there was a short lived rails project which I forked from the original dev, then there was a brief stint using ikiwiki, and now I'm using jekyll on my site for the blog side of things.
Per the current workflow I typically get a seed idea when I'm actively working on a topic and have a bunch of loose notes. Then I formulate the core idea of what can be conveyed to readers (and myself when I look at things months/years later) with pencil/paper. Next I typically transcribe things to an AsciiDoc document, build figures with Julia scripts or in a jupyter notebook, and edit a bunch. Once things are looking decent I use jekyll's auto-rebuild feature and built-in server for semi-final tweaks/formatting. Finally I commit it and verify that everything looks fine on my remote server. Some of the better posts I've made are collected at http://fundamental-code.com/ to give you an idea for the results.
Check out the amazing work Yihui Xie and other R-luminati have done with R's version of markdown and the package "blogdown". Plenty of academic examples around and can get up and running quickly, securely, and for free if you wish.
https://bookdown.org/yihui/blogdown/
All the cool kids are using static sites these days.
https://bookdown.org/yihui/blogdown/
All the cool kids are using static sites these days.
My site runs on WordPress and sitegrounds, it's very fast. But the learning curve is higher than netlify and jekyll due to having to learn WordPress.
My site has too much garbage content I wrote on it at the moment (in hindsight I wrote whatever came to mind). Half my pages aren't even exactly done yet.
I'm going to focus less on writing opinionated articles, more on useful articles and or tutorials on there or well thought out reflections related to lessons learned.
Short term I'm going fix minor things now, write more useful content now. Long term do a 2ndary blog redesign from scratch, writing my own custom functions.php file.
I have used jekyll,hexo and hugo, but it's really convenient to just be able to download any plugin you want with wordpress. I'd rather focus on writing than site design ,SEO, analytics, integrations, etc.
Also it's nice having a useful skill that always has a market use.
My site is on my userhandle if your curious, would like feedback too.
My site has too much garbage content I wrote on it at the moment (in hindsight I wrote whatever came to mind). Half my pages aren't even exactly done yet.
I'm going to focus less on writing opinionated articles, more on useful articles and or tutorials on there or well thought out reflections related to lessons learned.
Short term I'm going fix minor things now, write more useful content now. Long term do a 2ndary blog redesign from scratch, writing my own custom functions.php file.
I have used jekyll,hexo and hugo, but it's really convenient to just be able to download any plugin you want with wordpress. I'd rather focus on writing than site design ,SEO, analytics, integrations, etc.
Also it's nice having a useful skill that always has a market use.
My site is on my userhandle if your curious, would like feedback too.
Try Ghost, I use it for my blog, has a markdown editor, a beautiful no BS admin UI, seo friendly out of the box
I second this. Ive used both the cloud version and self hosted it. The default design is lovely, its lightning quick too.
For the self hosted version I use heroku (7$ / month) and this[1] library, remember to hook it up to an AWS bucket though else you'll loose your pics each time the server restarts.
[1] https://github.com/cobyism/ghost-on-heroku
For the self hosted version I use heroku (7$ / month) and this[1] library, remember to hook it up to an AWS bucket though else you'll loose your pics each time the server restarts.
[1] https://github.com/cobyism/ghost-on-heroku
https://ghost.org/
You can host it yourself. Made by former Wordpress people that wanted to narrow the focus to be just about blogging (rather than a huge CMS).
You can host it yourself. Made by former Wordpress people that wanted to narrow the focus to be just about blogging (rather than a huge CMS).
Blot (https://blot.im) or GatsbyJS (https://gatsbyjs.org).
I wanted: cheap, fast, minimalist, and easy to publish. Blot.im does all those very well. I used to use wordpress for everything but wanted to write something in a word doc and have it show up on my website with no fuss. (Fast load times and minimalist design were nice too).
Blot.im is like $20/yr and my domain is similar through google domains. Set up takes like 10 mins, and you just drop word docs into dropbox. There is some depth if you want to get into site structure, file hosting, etc.
Here is my site: npzero.com. For ~$3/mo its awesome.
Blot.im is like $20/yr and my domain is similar through google domains. Set up takes like 10 mins, and you just drop word docs into dropbox. There is some depth if you want to get into site structure, file hosting, etc.
Here is my site: npzero.com. For ~$3/mo its awesome.
I've started to use http://gohugo.io/ and like it more than anything I've used earlier, including Jekyll.
I wanted to like Hugo (especially with its ridiculous speed compared to Jekyll), but I found that any time I wanted to do something slightly unusual I had to spend far too long finding what template file name I was supposed to use, mostly by trial and error. With Jekyll I just specify the template name in the front matter.
Have you checked out the series at https://www.youtube.com/watch?v=qtIqKaDlqXo&list=PLLAZ4kZ9dF... ? It doesn't cover everything exhaustively, but it is a relatively good introduction if you haven't seen it. Hugo's documentation is also helpful. I want to stick with hugo just for it's speed and learning it seems like a worthy investment.
I really recommend GitHub pages but you actually have to fork a theme and modify it to suit your needs (it's fun and possibilities are infinite). You don't have to push everything to GitHub wile you debug your theme and prepare your post, just run Jekyll and see everything on the localhost and only update it on GitHub when it seems finished.
While as a software engineer I'm partial towards static websites, I have to say the best academic site I've come across is a wordpress one that seems to use the "faculty" theme.
The site is Kelly Weinersmith's (of SMBC fame): http://www.weinersmith.com/
The site is Kelly Weinersmith's (of SMBC fame): http://www.weinersmith.com/
Blogs are chronological. I decided that I didn't want to be bounded by that and went with pmwiki.
In this format things can be chronological, can be topic based, pages can be a work in progress, no default. Markdown editing. Files are stored as text also, no database. Choice of themes though nothing like Wordpress.
I host on personal domain on a $5 DO droplet.
In this format things can be chronological, can be topic based, pages can be a work in progress, no default. Markdown editing. Files are stored as text also, no database. Choice of themes though nothing like Wordpress.
I host on personal domain on a $5 DO droplet.
I moved from hand coding my sites to Word Press to BlogSpot. I get a lot more done on BlogSpot and it's completely free.
I actually set up BlogSpot sites for other people for a few bucks. So if you want help with getting the look you want, I'm for hire.
I actually set up BlogSpot sites for other people for a few bucks. So if you want help with getting the look you want, I'm for hire.
You are right with Jekyll, but quite on the wrong street with GitHub pages. It takes time to get your changes up and running, I would say that'd be around ~15 minutes, and I believe that depends on worker's availability on the GitHub server to "compile" or "render" your Jekyll blog.
My experience currently is with Hugo. I have a DigitalOcean (DO) VPS that I use to host my Hugo blog.
The workflow is as follows:
1. Commit and push from local to my VPS.
2. My VPS receives the commit, a git hook runs server-side build for my Hugo blog. The script is pretty short.
3. Server finishes build process, new changes are reflected.
Feel free to experiment with that others are suggesting here, e.g. Netlify. Jsyk, I pay $5/month for my DO VPS and that is $0.50 cheaper than my everyday coffee.
My experience currently is with Hugo. I have a DigitalOcean (DO) VPS that I use to host my Hugo blog.
The workflow is as follows:
1. Commit and push from local to my VPS.
2. My VPS receives the commit, a git hook runs server-side build for my Hugo blog. The script is pretty short.
3. Server finishes build process, new changes are reflected.
Feel free to experiment with that others are suggesting here, e.g. Netlify. Jsyk, I pay $5/month for my DO VPS and that is $0.50 cheaper than my everyday coffee.
right now my blog is on medium.com. I used to be picky about theme too, but now I prefer something simple. Medium.com is ok to me in that sense. I choose it for its content and audience discovery network. It's more social than other blog platforms I have tried.
But I'm also building a developer-centric blog platform now. it will support markdown, equations and code embedding.
But I'm also building a developer-centric blog platform now. it will support markdown, equations and code embedding.
you can easily create https://djheadphonereview.com this type of blog
To date I’ve tried two approaches, neither were ideal. (1) A WordPress site with Bluehost. This came with a domain and was extremely easy to use, the themes looked great, etc. The major downsides were that pages loaded really slowly and I was paying for features I would never use. (2) After a while I attempted to switched to Jekyll hosted at GitHub pages. The new site was quick to load and free, but I was uninspired by the available themes. I attempted to modify several of them but it was annoying as all hell Due to the lag between pushing a commit to GitHub and seeing the results on my webpage.