First impression of Newton

A place to discuss everything related to Newton Dynamics.

Moderators: Sascha Willems, walaber

Re: First impression of Newton

Postby Stucuk » Thu Mar 03, 2016 9:21 am

d.l.i.w wrote:Personally I don't see that much of a difference. Wouldn't be it easier to to improve the existing page?


The layout i did is a lot cleaner. If you compare both about pages the current one is more busy than it needs to be and links are harder to notice (Especially due to the Forum links which stick out with the blue).

The concept is to make it as clean as possible so its as easy as possible for first time users. A good example of a very bad website(Its an extreme example) is the Bullet website. They have tiny links at the top left that is hard to spot. Their site is very busy. A lot of users would just abandon trying to find links on their site.

The cleaner and easier it is for people to use the site the more likely they will. Also the more professional it looks (I am not going to say the layout i made is perfect, i don't do layouts as a job) the better the first impression people get. The current pages look like a forum, simply because it is a forum layout. One of the bonus's of the layout i did is that it also shows off user projects (Each time a page is loaded a random project is shown), so it kills two birds with one stone as you don't need to maintain a page listing user projects (You do need to update the javascript file and add new banners).

In regards to the download page (And user project banners), i would be happy to keep it updated, but it all depends on manny as to my knowledge manny is the only one with FTP access to the site. I could also design a similar MediaWiki layout (In my opinion Newton 3 should have its own dedicated MediaWiki and not use Github for it as Git's is not very good).
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: First impression of Newton

Postby d.l.i.w » Fri Mar 04, 2016 8:49 am

In fact I like your proposal. I just wanted to say, that the changes aren't that big (but certainly effective!), so IMO it would be totally possible to "just" improve this existing page.

I agree, that the current layout is overloaded and could be simplified. The header takes almost 1/4 of the whole page, which simply is too much.
Especially the number of links in the header needs to be reduced - your design is an improvement in this regard.

I also like the feature presenting user projects - but I would show it only on the main / about page and make it a gallery, so one can scroll through all of the projects if one likes.

The reason I wouldn't put it on every page - and an important thing to consider - are mobile browsers. Pictures like these (which should have high resolution) generate traffic, which is fine, if I'm on the main page and want to see, what Newton is capable of, but is annoying if I want to browse the forums or find out, what the latest version is.

Also the current page adapts to screen size (to a certain degree, could be improved), while the header on your page gets cut of on mobile browsers.

Ideally the new page should use a flexible layout to be usable both on mobile and desktop - personally I hate pages, that don't use the additional screen space (width) at all if viewed fullscreen on a widescreen desktop.

For the download page, a simple way would be this link https://help.github.com/articles/linking-to-releases/, which always points to the latest release.

The more advanced version would be, to fetch the latest release via Github API https://developer.github.com/v3/repos/releases/#get-the-latest-release.

It's a simple get request, JSON data in the response:
https://api.github.com/repos/MADEAPPS/newton-dynamics/releases/latest

It shouldn't be that hard to generate links from this data either in PHP or via JavaScript and AJAX. There is certainly a similar way to get the latest n releases.

In my opinion Newton 3 should have its own dedicated MediaWiki and not use Github for it as Git's is not very good

That's my opinion, too - but regardless of what you use, it depends on people keeping it up to date :(


Another thing that could be improved is the "location" of Newton on Github. As much as I appreciate Manny for moving Newton to Github, I don't thing MADEAPPS is a good place for Newton.

IMO it would be better to create a Newton Dynamics organization (like Bullet) or at least make it Julio's own repository (https://github.com/JulioJerez).


I'm rather limited in time, but in any case I would be very willing to help you - if you don't mind. I have (basic ?) knowledge on how to create webpages and I already maintaned several larger ones, although I usually work on the backend side of things.
d.l.i.w
 
Posts: 81
Joined: Mon Sep 26, 2011 4:35 am

Re: First impression of Newton

Postby Stucuk » Fri Mar 04, 2016 2:41 pm

d.l.i.w wrote:but I would show it only on the main / about page and make it a gallery, so one can scroll through all of the projects if one likes.


The idea was to only have it on the About/Downloads bit. it would be too much space for a forum/wiki/etc. My javascript experience isn't massive (though it wouldn't be hard for me to learn) so i only did a basic java thing for the example site as i don't even know if it will ever be applied (As it is all up to manny as he hosts the site). So i would only put in the extra time if it was going to go ahead.

d.l.i.w wrote:Also the current page adapts to screen size (to a certain degree, could be improved), while the header on your page gets cut of on mobile browsers.

From a technical standpoint you could have a separate layout for the mobiles. A lot of websites use different sites for desktop and mobile so that mobile users get a more streamlined site that you just scroll downwards for. Given that the banners are controlled via javascript it shouldn't be hard to detect when its on a small screen and disable the banners. Most sites that work on mobile use different css so that the header/etc can be shrunk on the mobile site.

d.l.i.w wrote: personally I hate pages, that don't use the additional screen space (width) at all if viewed fullscreen on a widescreen desktop.

For a forum/wiki your right. But for an about/download page which has fixed content sizes its best to use a fixed width as on larger screens the page would look bad when all the content is on a single line instead of looking like a paragraph.

d.l.i.w wrote:For the download page, a simple way would be this link https://help.github.com/articles/linking-to-releases/, which always points to the latest release.


It would be best if the newton website had the links on it as it looks more profesional then redirecting to git and it would also mean you can display the same information in a more simpler and clean way. using Javascript and AJAX would likely be the best way (Though as i said before i am not an expert with javascript).

d.l.i.w wrote:That's my opinion, too - but regardless of what you use, it depends on people keeping it up to date :(

If it had a seperate wiki i would at least try and populate it but i wouldn't bother with Gits or with the current one as its a bit bloated. I have been looking into Doxygen and it can export to XML so i will try and make an application that can generate decent documentation from it (Doxygen's HTML doesn't look great).

d.l.i.w wrote:Another thing that could be improved is the "location" of Newton on Github. As much as I appreciate Manny for moving Newton to Github, I don't thing MADEAPPS is a good place for Newton.

While your right i don't think it will effect alot of people as they will likely ignore what the root of the repository is.

d.l.i.w wrote:I'm rather limited in time, but in any case I would be very willing to help you - if you don't mind. I have (basic ?) knowledge on how to create webpages and I already maintaned several larger ones, although I usually work on the backend side of things.


More the merrier. I have uploaded the example site's code to the site but i can't remember the filename i used. I will be back home tomorrow so i can send a link then (assuming you want to use it as a base).
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: First impression of Newton

Postby Julio Jerez » Fri Mar 04, 2016 3:00 pm

I do now know nothing about web development but I gathered this

IMO it would be better to create a Newton Dynamics organization (like Bullet) or at least make it Julio's own repository (https://github.com/JulioJerez).

and I think this is a good idea, how can we do that.

also overall I agree the site have to changed, is has gone like that for over years.
And it needs a fresh look. If you guys agree in what you want to do, go for it.
I am sorry I can no help, because when to come to art and web stuff I am a complete moron.
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: First impression of Newton

Postby d.l.i.w » Fri Mar 04, 2016 4:48 pm

Stucuk wrote:More the merrier. I have uploaded the example site's code to the site but i can't remember the filename i used. I will be back home tomorrow so i can send a link then (assuming you want to use it as a base).

It does not depend on me, we can start from whatever we see fit.
Nevertheless I would like to see the current code - if there is a chance to get access to it.
The current page doesn't look broken from a technical point of view, so there might be a chance to realize what we talked about without starting from scratch.
You don't have in mind any major changes to the forum itself, do you?


Julio Jerez wrote:I think this is a good idea, how can we do that.


The starting point for creating an organization is https://github.com/organizations/new. You just have to enter a name (Newton Dynamics or whatever you like), select the open source plan and that's it.
It then depends on the current repository owner (I assume it's Manny) to transfer the newton repository to the newly created organization.

If you don't want to create an organization it is just a matter of transferring the ownership of the repo.
d.l.i.w
 
Posts: 81
Joined: Mon Sep 26, 2011 4:35 am

Re: First impression of Newton

Postby Stucuk » Fri Mar 04, 2016 5:55 pm

d.l.i.w wrote:The current page doesn't look broken from a technical point of view, so there might be a chance to realize what we talked about without starting from scratch.

I don't see what the issue is with using the layout i did as its cleaner even if you applied some of its aspects to the current site. It also is not embedded into the forum, the current about page is literally using the forum to render it rather than it being just html.

d.l.i.w wrote:You don't have in mind any major changes to the forum itself, do you?

Either use the header bit (Excluding banner) from the layout i did to keep it looking similar or to modify the existing links so that they match the layout i did but also increase their size so they stand out more. The former option would be better imo since it would reduce the header size of the forum.

I made the following concept image (Quick copy and paste job in paint), it would need a Search link added with the other forum links(beside the faq/members/etc):

- Concept Image

Julio Jerez wrote: If you guys agree in what you want to do, go for it.

We can't do anything without Manny as he has the access to the website. While i have admin on the forum i can't modify the forum layout as only those marked as founders can(FTP access is required for the rest).
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: First impression of Newton

Postby d.l.i.w » Fri Mar 04, 2016 7:01 pm

Stucuk wrote:I don't see what the issue is with using the layout i did as its cleaner even if you applied some of its aspects to the current site. It also is not embedded into the forum, the current about page is literally using the forum to render it rather than it being just html.

Ok, I didn't know that. I assumed it to be handmade HTML added as static page to phpBB ( howto). If that's not the case, we'll take your layout as basis.

Stucuk wrote:Either use the header bit (Excluding banner) from the layout i did to keep it looking similar or to modify the existing links so that they match the layout i did but also increase their size so they stand out more. The former option would be better imo since it would reduce the header size of the forum.

Yes, that's what we talked about. I don't see the "header" (everything above the blue line) as part of the forum, so the question probably was misleading.
I just wanted to know, if you had any changes in mind as far as the core forum is concerned (a different style for phpBB or alike).

I would take the header / menu from your layout as is and just make sure it works for mobile, too.

The concept is fine with me. To me it looks a little odd, that the header / menu is not in line with the forum (the width is not the same), but that's probably a matter of taste.

I think overall we agree, details (like the precise placement of the search link) can be discussed, when it comes to implementing it.
d.l.i.w
 
Posts: 81
Joined: Mon Sep 26, 2011 4:35 am

Re: First impression of Newton

Postby Stucuk » Fri Mar 04, 2016 11:58 pm

d.l.i.w wrote:Ok, I didn't know that. I assumed it to be handmade HTML added as static page to phpBB ( howto). If that's not the case, we'll take your layout as basis.


What you linked to is not adding a static page. All PHP is Dynamic and generated every single time its ran(Granted you can have extensions which cache the result but its still not like static html that has no real impact on the server). Only the actual content is handmade (The bit between the two blue bars). The entire layout is all the forum, thats the whole point of using the forum software so that it looks like its the forum (Which you don't want in a main site page).

If you view the source code of the current about page and then the about page on the layout i did you will note that the current one is bloated with a lot of unneeded stuff (Including CSS).

As far as i understand you can't remove the bloat as the whole point is that it looks exactly like the forum(As in you cant remove the blue bars for example on the about page).

d.l.i.w wrote:The concept is fine with me. To me it looks a little odd, that the header / menu is not in line with the forum (the width is not the same), but that's probably a matter of taste.

I think overall we agree, details (like the precise placement of the search link) can be discussed, when it comes to implementing it.


Well like i said i just copy and pasted the two layouts to generate that concept. The current layout uses 850px width while the layout i did uses 1024px width. With desktops you will struggle to find a computer with a monitor which doesn't use a resolution higher than 1024px wide. Given the link size a larger width does make sense. Since its controlled via CSS, a different CSS file can be used for lower resolutions (Like mobiles)

The search imo shouldn't be in the main header. Having it as a standard link imo would be the best area as most of the people going to the site should be use to the search being a link (Everyone that comes is a programmer). However it could be moved below the header (Though i still think based on the sites audience that a search feature which requires clicking a link before entering the text is acceptable).
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: First impression of Newton

Postby Stucuk » Sat Mar 05, 2016 1:35 pm

The following is the code to the example layout i made:
- 2016-02-19_NGD2015Layout.rar
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: First impression of Newton

Postby Stucuk » Tue Mar 08, 2016 4:56 pm

I have made some progress using Doxygen to generate XML from the Newton Source Code and then a custom app to generate HTML documentation (Still needs work however).

Click the following images to enlarge:
Image
Image

It does however require the newton.cpp comments to be formatted slightly differently as Doxygen doesn't accept // as a comment block.

The following is the comment block i used for NewtonBodyAddForce:
Code: Select all
//! Name: NewtonBodyAddForce
//!
//! Desc: Add the net force applied to a rigid body.
//!
//! Parameters:
//! *const NewtonBody* *bodyPtr - pointer to the body to be destroyed.
//! *const dFloat* *vectorPtr - pointer to an array of 3 floats containing the net force to be applied to the body.
//!
//! Return: Nothing.
//!
//! Remarks: This function is only effective when called from *NewtonApplyForceAndTorque callback*
//!
//! Example: void NewtonApplyForceAndTorque(const NewtonBody* const body, dFloat timestep, int threadIndex)\n
//! {\n
//!   dVector force (0.0f, -9.8f, 0.0f, 0.0f);\n
//!   NewtonBodyAddForce(body, &force[0]);\n
//! }
//!
//! See Also: NewtonBodySetForce, NewtonBodyGetForce, NewtonBodyGetForceAcc


Note: My app ignores the parameters and return bits of the comment block.
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: First impression of Newton

Postby JoeJ » Tue Mar 08, 2016 5:22 pm

Stucuk wrote:I have made some progress using Doxygen to generate XML from the Newton Source Code and then a custom app to generate HTML documentation (Still needs work however).


Awesome!
For the design i suggest you don't use capital letters.

To make better documentation, it might be an idea to add a forum thread below each page so questions and additional info can go there.
Or group related functions more coarsely and add threads there.

Don't know if that's easy to do technically, but documentation would grow without maintenance.
User avatar
JoeJ
 
Posts: 1489
Joined: Tue Dec 21, 2010 6:18 pm

Re: First impression of Newton

Postby Julio Jerez » Tue Mar 08, 2016 7:21 pm

Hey that's pretty good, that should be check in :D . and the entire Netwon.cpp / newton.h cleaned out of old comments and add new comment that are more up-to-date.
what can do it little by little
Julio Jerez
Moderator
Moderator
 
Posts: 12426
Joined: Sun Sep 14, 2003 2:18 pm
Location: Los Angeles

Re: First impression of Newton

Postby godlike » Wed Mar 09, 2016 3:59 am

Stucuk wrote:I have made some progress using Doxygen to generate XML from the Newton Source Code and then a custom app to generate HTML documentation (Still needs work however).

Click the following images to enlarge:
Image
Image

It does however require the newton.cpp comments to be formatted slightly differently as Doxygen doesn't accept // as a comment block.

The following is the comment block i used for NewtonBodyAddForce:
Code: Select all
//! Name: NewtonBodyAddForce
//!
//! Desc: Add the net force applied to a rigid body.
//!
//! Parameters:
//! *const NewtonBody* *bodyPtr - pointer to the body to be destroyed.
//! *const dFloat* *vectorPtr - pointer to an array of 3 floats containing the net force to be applied to the body.
//!
//! Return: Nothing.
//!
//! Remarks: This function is only effective when called from *NewtonApplyForceAndTorque callback*
//!
//! Example: void NewtonApplyForceAndTorque(const NewtonBody* const body, dFloat timestep, int threadIndex)\n
//! {\n
//!   dVector force (0.0f, -9.8f, 0.0f, 0.0f);\n
//!   NewtonBodyAddForce(body, &force[0]);\n
//! }
//!
//! See Also: NewtonBodySetForce, NewtonBodyGetForce, NewtonBodyGetForceAcc


Note: My app ignores the parameters and return bits of the comment block.


That looks nice! Are you adding doxygen docs in the Newton.cpp or the Newton.h?
User avatar
godlike
 
Posts: 58
Joined: Sun Mar 16, 2014 3:48 am

Re: First impression of Newton

Postby Stucuk » Wed Mar 09, 2016 9:50 am

JoeJ wrote:To make better documentation, it might be an idea to add a forum thread below each page so questions and additional info can go there.
Or group related functions more coarsely and add threads there.

Its really offline documentation that could be uploaded to git with the source code. Since its just raw HTML (No PHP/ASP/Etc backend) i don't see any way of properly having comments/threads in it.

Doxygen is used to get an XML representation of the source:
Code: Select all
<memberdef kind="function" id="_newton_8cpp_1af025b14f9bc865efcf86170a2d151aae" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void NewtonBodyAddForce</definition>
        <argsstring>(const NewtonBody *const bodyPtr, const dFloat *const vectorPtr)</argsstring>
        <name>NewtonBodyAddForce</name>
        <param>
          <type>const <ref refid="struct_newton_body" kindref="compound">NewtonBody</ref> *const</type>
          <declname>bodyPtr</declname>
        </param>
        <param>
          <type>const dFloat *const</type>
          <declname>vectorPtr</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Name: NewtonBodyAddForce</para><para>Desc: Add the net force applied to a rigid body.</para><para>Parameters: <emphasis>const <ref refid="struct_newton_body" kindref="compound">NewtonBody</ref></emphasis> <emphasis>bodyPtr - pointer to the body to be destroyed. *const dFloat</emphasis> *vectorPtr - pointer to an array of 3 floats containing the net force to be applied to the body.</para><para>Return: Nothing.</para><para>Remarks: This function is only effective when called from <emphasis>NewtonApplyForceAndTorque callback</emphasis></para><para>Example: void NewtonApplyForceAndTorque(const NewtonBody* const body, dFloat timestep, int threadIndex)<linebreak/>
{<linebreak/>
 dVector force (0.0f, -9.8f, 0.0f, 0.0f);<linebreak/>
 NewtonBodyAddForce(body, &amp;force[0]);<linebreak/>
}</para><para>See Also: NewtonBodySetForce, NewtonBodyGetForce, NewtonBodyGetForceAcc </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="D:/C++/newtondoc/source/newton/Newton.cpp" line="5181" column="1" bodyfile="D:/C++/newtondoc/source/newton/Newton.cpp" bodystart="5181" bodyend="5188"/>
      </memberdef>


My app then parses the XML and formats it in HTML.

godlike wrote:That looks nice! Are you adding doxygen docs in the Newton.cpp or the Newton.h?

Comment Blocks were already in Newton.cpp so i just made a few of them doxygen compatible to test it. Currently my app just uses newton.cpp but it all depends on what people want.

The actual comment blocks don't need to be //! doxygen supports a few types it was just close to the comment types that were already there (And thus easier to quickly implement).

--------------------

Oh and just for reference doxygen can make HTML documentation but imo its bad (Too much information formatted in a generic way).

Example: http://www.icu-project.org/apiref/icu4c/utypes_8h.html
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: First impression of Newton

Postby godlike » Wed Mar 09, 2016 10:58 am

Stucuk wrote:Comment Blocks were already in Newton.cpp so i just made a few of them doxygen compatible to test it. Currently my app just uses newton.cpp but it all depends on what people want.


Normally doxygen goes to the header but I don't have a convincing reason. Maybe, the only benefit I see is that if you compile and distribute newton the .cpp will disappear where the .h will still be there.
User avatar
godlike
 
Posts: 58
Joined: Sun Mar 16, 2014 3:48 am

PreviousNext

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest

cron