On Saturday, 31 May 2014 at 19:49:22 UTC, w0rp wrote:
After watching Andrei's keynote where he was asking for help, and noticing that there wasn't any proof of someone working on this, I took charge.

http://w0rp.com:8010/

That's the design in the form of a single page website running on my Linode. The source is available here.

https://github.com/w0rp/new-dlang.org

I would like to keep going with this and just redesign the whole website. A few points worth noting.

* This is entirely a vibe.d website. (See the source.)
* For pages, DDoc is replaced with diet templates.
* I would still use ddox for generating library documentation.
* The page is mostly held together with Bootstrap, which is very good. * The page is most of the way to being responsive (design sense), as it should be. * The module in the middle is missing, I'd use some future version of Nowak's drepl and put a REPL right there on the front page. * The logo is something I quickly put together with InkScape. Look at it as "please insert better logo here."

I encourage the use of diet over DDoc because it is simpler to insert dynamic content in the page, especially so for vibe.d. The support for doing conditional things or loops based on any dynamic content we can think of is right there in vibe.d.

Now unfortunately, I have two major complaints, for vibe.d and D itself.

For vibe.d, I can't think of a way to make changes to diet templates without recompiling the whole site. This doesn't seem so bad, given that compilation speed is very fast, but it builds up. This is because the process of experimenting with HTML becomes.

1. Make a change.
2. Recompile the whole program in a matter of seconds.
3. Refresh the browser window.

Those seconds in between making a change and seeing the results really build up over time. It's probably hard to describe without trying it yourself, but trust me, it matters. This is the kind of thing I have recently fought against at work, and it was well worth it. I replaced a Compass filesystem monitor with an even slightly broken libsass CPython compiler which compiled SCSS based on modification times. The couple seconds of difference has definitely improved the day-to-day life of myself and the web designer I work with.

This could be avoided if there was perhaps a way to rebuild diet templates at runtime. This could be enabled only for debug builds. So you could quickly make changes during development, and then compile everything statically for maximum speed for production.

The complaint I have for D is that too much memory is consumed for building D programs. The memory usage made it impossible for me to build the vibe.d site on my Linode, which the site above linked is running off of. The only way I was able to get the site to run on my Debian Wheezy server was to install a bunch of libraries from Debian testing, compile the program on my Arch Linux desktop, and then upload and run it on my server.

I'm not sure how to fix the issue myself, but something should be done to address this kind of issue. My Linode box has about 1GB of RAM with about 800MB free typically. Maybe I could have gotten things to build by increasing my swap space a little, I'm not sure.

So, what does everyone else think?

Looks better than what we have now.

Doesn't look as good/to the point/'new' as e.g. http://www.rust-lang.org/ or https://www.dartlang.org/ , I suspect the main problem is content of the front page (wall of text, 'too much stuff' instead of simple short points), not as much design. I'd also suggest experimenting with a less "regular" layout.

Reply via email to