6 ms·
Any opinions on what are the best software choices for a single person to use in 2019 to build a website from scratch? I’d be willing to learn something new if
by melling 7y ago
Any opinions on what are the best software choices for a single person to use in 2019 to build a website from scratch?
I’d be willing to learn something new if I knew in 2 years, I’d be extremely productive.
- jordanmoconnor 7y agoHighly recommend Jekyll/GitHub pages for static sites. Many people recommend Jekyll/Hugo/Vue-press + Netlify as well.
- beigeoak 7y agoGithub Pages is free and mirrors your git repository as a website.
- gbuk2013 7y agoIt’s nice but only supports static content, so personally I would not count that as “running my own website”. Web hosting even container based VPS is super cheap - I would just go for that and have the extra freedom to do interesting things.
- dvtrn 7y agoonly supports static content, so personally I would not count that as “running my own website”. Curious: why not? Before WordPress and MoveableType websites were largely static HTML, where do you personally draw the distinction?
- gbuk2013 7y agoSimply because it is very limiting. Running your own site, even on cheap shared hosting, opens up lots of exciting possibilities. With a bit of PHP and SQLite you can build lots of cool stuff (just like before WordPress came and made everything boring). For simple sites, static is great, but if it becomes more complex (even just lots of pages sort of complex) then some sort of templating, even just through basic PHP includes, becomes very helpful to keep it maintainable. Example: I help look after a site with 3K static HTML pages and it is impossible to make any global changes without literally months of manual work. :( For my own site I use a static site generator, which is another great option, but that comes with a much steeper learning curve unfortunately.
- dvtrn 7y agoSorry for the pun here, heh but: Simply because it is very limiting. Seems like a limited/narrow definition of maintaining a website, just because there are different options of platforms and tools used to put content in the user's browser. Ultimately, for the browser, the result is the same, no? Edit: Following your edit, I can see an argument being made that maintaining static sites coming with a different workflow than maintaining a CMS and why some may not prefer it --personally, the mutability of the workflow for many of these stacks is the appeal of SSGs for me (especially, more recently 11ty[1] which I'm thinking of porting my personal site to). [1] https://www.11ty.io/ https://www.11ty.io/
- gbuk2013 7y agoMy advice is based on my own experience, so obviously I think it is true. It is my job to know a LOT about putting content in users browsers (from TCP protocol level up to the HTML) but I still think that GitHub pages is too limited for anything but very simple site. It’s cool to have a static site - it’s not cool to be forced to only have a static site.
- dvtrn 7y agoI still think that GitHub pages is too limited for anything but very simple site Oh we wont disagree there, it absolutely has its limitations. You had originally stated you don't consider these types of stacks to be "running my own site" and I was just wondering what the distinction was, not to necessarily call into question or invalidate your own experiences-if I gave that impression, it's on me to communicate myself a bit better next time.
- icebraining 7y agoI'm enjoying Netlify as a intermediate step: mostly static site, plus their Forms and Functions to add small interactive parts. I'm not sure it's easier for a beginner, though.
- 0xfeba 7y agoYou can still call APIs with a static site and do quite a bit in the browser.
- jaziek 7y agodefine "from scratch". As the saying goes, "If you wish to make an apple pie from scratch, you must first invent the universe."
- Tomte 7y agoI like Dokuwiki. Not static, but easy to backup (plain text instead of database), many plugins, article versioning, easy editing (even on the mobile phone), a servicable, if unexciting, design that's mobile friendly. If you want to be productive, and "productive" does not mean building web software (which is fine!), worry less about the software and write more.
- gbuk2013 7y agoWithout knowing your OS: a text editor of some sort and an FTP/SFTP client. Then just get shared web hosting account - there are lots to chose from and they are super cheap these days. You can go a long way with that without having to mess around with maintaining your own server (unless you want to - I do :)
- melling 7y agoOne person with a simple text editor isn’t going to be nearly as productive as someone who chooses a modern stack with better tools. I left open my prior tools, etc so as not to bias the answers. I’ve done lots of Java, Python, Swift, some Go, etc but I’m willing to learn anything, so forget that you know that. I’m looking for a big lever.
- gbuk2013 7y agoNo, it really is that simple, if you are taking about a “website”, not a “web application” or some sort of “platform”. Learn to do it by hand or you will forever be dependent on tools. VSCode or Atom is what everyone seems to be using but the more you are able to treat it as a text editor the better you will be. But since you say you are comfortable with programming, then a static site generator might be interesting for you. Pick one in whatever language you prefer. Be prepared to spend a lot of time before you are as productive as writing it by hand.
- melling 7y agoYou seem to not understand what I’m asking. I have Atom, VSCode, Sublime, JetBrains, ... I know vi and Emacs. I’ve programmed websites in Perl, Python, Java, Go, ... I didn’t realize we differentiate between applications and sites these days. In 2019, I’m one person who is willing to start with a clean slate. What current tools should I choose so, as one person, I’m most productive 6 months from now, once I’ve mastered the new tools. The idea is to choose an above average stack: http://www.paulgraham.com/avg.html http://www.paulgraham.com/avg.html
- 7y ago
- __mp 7y ago0) Get a cheap virtual/dedicated machine. 1) Install docker and docker-compose 2) Setup traefik, a reverse proxy, in docker (good starting point: https://docs.traefik.io/user-guide/docker-and-lets-encrypt/ https://docs.traefik.io/user-guide/docker-and-lets-encrypt/ ). 3) Run $docker container (ghost, wordpress...). I typically use one docker-compose file for each domain. "expose" is not necessary because the requests are proxied by traefik. Here's a docker-compose sample for a website available under my-website.com: version: '3' services: web: container_name: my-website.com-nginx image: nginx restart: unless-stopped volumes: - ./data:/usr/share/nginx/html labels: - "traefik.docker.network=web" - "traefik.enable=true" - "traefik.basic.frontend.rule=Host:my-website.com" - "traefik.basic.port=80" - "traefik.basic.protocol=http" networks: default: external: name: web There are probably more elegant ways to do this, however I found it quite effective for my setup.
- pnutjam 7y agoNah, just use nearlyfreespeech.net You get a bsd host with shell access for cheap.
- dvtrn 7y agoWOW. You have no idea how much it makes he happy and encouraged to see that NFS is still making it. They were my first webhost, for price alone, and then overtime became my default because of the support. Eventually moved on when my needs evolved and sort of...forgot about them until this comment.
- kuzimoto 7y agoI'm building a simple blog/project site just using Hugo. It's quite easy to get started, and is a single binary you can use to test and deploy the site with no dependencies. I like that I'm able to design everything from the ground-up the way I want it. Also a decent selection of themes if you wanted to focus on content.
- ryandrake 7y agoAn Xterm running vi has been my personal web site editing software of choice for two decades. Still works!
- marcosdumay 7y agoPelican: https://blog.getpelican.com/ https://blog.getpelican.com/ Statik: https://pypi.org/project/statik/ https://pypi.org/project/statik/
- kr4 7y agoYou can use tools like Hugo to generate static sites. Basically such tools gives you power to avoid duplication of reusable components on the page, as well as to generate static lists automatically like related pages/recommendations. See this discussion on such tools: https://news.ycombinator.com/item?id=16472395 https://news.ycombinator.com/item?id=16472395
- tracker1 7y agoThe question is, what do you know now? If you're starting from scratch, you should learn HTML and CSS. As for tools, again it depends on what you already know. If you know a given programming language, you can usually find a static site generator that you can build from. There are lots of templates free, or for purchase you can use, cut up and deploy. It really all depends. Many just dip into wordpress, which for good or bad is pretty much the king of CMS. Others Drupal or similar.
- thirdsun 7y agoNetlify and a static site generator of your choice, preferably one that uses a language you’re already familiar with. I use Middleman for example, but there‘s also the much more popular Jekyll in Ruby-land.