Welcome, Guest
Username: Password: Remember me
1. The "search..." box above searches the Docs & Forum Posts. The "Search" tab above just searches the Forum Posts. :side:
Please use these to search for your issue *before* creating a new message topic, as your issue may have been previously solved.
2. Please put your Club # and Club Web Address in your Forum Signature (best) OR in each post to get faster support from us.
Click here to edit your signature at the bottom of the Profile Information tab.
3. Our user and admin docs are available at: support.toastmastersclubs.org/doc "There's a doc for that!" ;)
4. There is an "Opt In" Feature for newly added members. The Opt In document explains the strikethrough member information. Click Here to View the Post
5. When posting a New Topic , please include all relevant details and be specific. When did your issue 1st occur? What operating system, browser, & browser version are you using? Did you refresh your browser cache? Are your cookies enabled? Lastly, a screen shot is often helpful.
6. Please abide by the Terms of Use . We are volunteers contributing our spare time. We are happy to assist you, so long as you are respectful and courteous.
7. We are always looking for new FreeToastHost Ambassadors to join our team and support fellow Toastmasters in their use of the FreeToastHost website system. If you are familiar with the system and have some interest, send a Send Us a Private Message.
  • Page:
  • 1

TOPIC:

Website Performance Optimization 7 years 3 months ago #59965

  • crosenblum
  • crosenblum's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 14
  • Thank you received: 1
I was recently revamping our club website.
Dakota Speakers Club #7119
dakota.toastmastersclubs.org/

Then I was testing the site against gtmetrix.com which tests sites against multiple performance optimization metrics, like PageSpeed, YSlow, Waterfall, Video, etc.

I totally comprehend that we are all run on 1 server, with different content/style, loading based on what url/domain is loaded.

Here are the few tips, but I do not have your knowledge to see what is doable, and not negatively affecting other sites, as well.

So let me share these, and you tell me what makes sense.

Enable-Keep-Alive
Use CSS-Sprites, but not sure how to do that programattically from the FTH settings.
Make fewer http requests
Use Cookie-Free Domains to serve css,js files
Add Expires Header

I will attach the report they generated, to provide any useful information.

Also is it possible to use the jquery themeroller to use a different jquery theme?

I have noticed that FTH uses a jquery theme, and I know we have no access to any css files.

I think at some point in the future, you will have to have some variation in design/layout, but it will be hard to do so in a way that is easy to manage, and isn't horrible for performance and usability in making such changes.

Thank you for your time.
This attachment is hidden for guests.
Please log in or register to see it.
Club #6742
Community Spirit Toastmasters
csburnsville.toastmastersclubs.org/i

This message has an attachment file.
Please log in or register to see it.

The topic has been locked.

Website Performance Optimization 7 years 3 months ago #59966

  • SteveTheTechie
  • SteveTheTechie's Avatar
  • Offline
  • FreeToastHost Developer
  • FreeToastHost Developer
  • Posts: 13529
  • Thank you received: 3831
crosenblum:

Thanks for your post. In a perfect world, we would just do all those things. Keep in mind that I already run many of those tests, and I have to make certain design and architecture decisions based on what will be the best balance of features and speed. You are not the first person to point out some of these test results.

Many of these speed rating websites do not take into account what is needed for a multiple URL Content Management System like FTH... they frequently tend to presume a simple one page website with minimal ajax calls. I do reference those speed websites, but I have had to learn some of their caveats over time. So... with that in mind, lets take your post one by one:

1. Enable-Keep-Alive

We do this to some extent. However, I do believe that keeping connections alive indefinitely (never expiring them) is not good also. The key is to figure out at what point to expire connections... not always obvious and something I will probably continue to review over time.


2. Use CSS-Sprites, but not sure how to do that programatically from the FTH settings.

We already do this. However, this is only really useful for static images that are either "below the fold" or not shown immediately. If you do this for important images "above the fold", it introduces a noticeable delay in loading images that can detract from the user experience. For instance, I tried putting the banner image in a sprite, but it delayed loading the banner image until the very end of the page load... it looked horrible. So... the banner image is not part of a sprite. However, the Pod Cast image *is* part of a sprite, if you page down very quickly on initial page load, you may notice that image loading. (it is below the fold)

For users, I will probably eventually introduce a deferred class name for user to tag their images with to get some of the same loading benefits.


3. Make fewer http requests

Again, there are things that these speed website do not account for. Fewer http requests on initial page load is always a good idea, and we try to limit those as much as is practical. However, for ajax calls, it is often more important to just make the http call not as noticeable to the user. For instance, last summer I changed the http call for the member login dialog so that the dialog is more responsive to entering your name, particularly when the server is under load. In the past, it was doing an http call for every letter press beyond the 3rd one. Now it does one http call on initial dialog load and only if you load that dialog. The timing of that http call is carefully placed to happen immediately after you load the dialog... you can notice the spinner if you watch carefully, but it takes something to type a character in before the spinner stops... that is intentional.


4. Use Cookie-Free Domains to serve css,js files

This is something we may look into in the future, but we would have to get another domain name, and you really only save by not sending the cookies... only relevant if you have a lot of cookies to start with. (we do not)


5. Add Expires Header

We already use expires but because much of the content is website specific we go beyond expires and use explicit cache busting parameters.


6. jQuery themeroller...

We are not going in that direction since the predefined themes are intended to align with those defined by Toastmasters International. FTH version 1 allowed for a wide variety of custom themes, but many of those websites did not even look like Toastmasters websites. With the increased emphasis on TM branding, the intention is that all FTH websites are aligned with that branding.

- Steve
Regards,

Steve James, DTM
FreeToastHost System Developer
Officer Emeritus, Mindful Communicators (Club 1966, District 52) A President's Distinguished Club for each of the last 10 years.

>>> Please put your club number in your forum profile. CLICK here to edit your profile.
The following user(s) said Thank You: crosenblum
Last edit: by SteveTheTechie.
The topic has been locked.

Website Performance Optimization 7 years 3 months ago #59967

  • crosenblum
  • crosenblum's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 14
  • Thank you received: 1
Thank you for your highly thoughtful reply.

I am sorry to take up your time for something you clearly have had a lot of thoughts upon.

Is there anything I can do to help you or FTH?

Thanks

Craig
Club #6742
Community Spirit Toastmasters
csburnsville.toastmastersclubs.org/i
The topic has been locked.

Website Performance Optimization 7 years 3 months ago #59969

  • SteveTheTechie
  • SteveTheTechie's Avatar
  • Offline
  • FreeToastHost Developer
  • FreeToastHost Developer
  • Posts: 13529
  • Thank you received: 3831

Is there anything I can do to help you or FTH?


There is always stuff to do. The question is where are your interests? ;)
Regards,

Steve James, DTM
FreeToastHost System Developer
Officer Emeritus, Mindful Communicators (Club 1966, District 52) A President's Distinguished Club for each of the last 10 years.

>>> Please put your club number in your forum profile. CLICK here to edit your profile.
The topic has been locked.

Website Performance Optimization 7 years 3 months ago #59970

  • crosenblum
  • crosenblum's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 14
  • Thank you received: 1
Former web programmer, coldfusion, php, sql server, oracle, mysql.

3 years member of Toastmasters.

Former VP of Education, VP of PR, Club President, Current Secretary/Treasurer.
Completed my CC, CL, ACB this year, and am working to complete my ALB in maybe 3-4 months.

My motto, while having been involved with mostly massively struggling, lackluster leadership clubs, has been to always ask this of myself.

What more can I do?

So what I'd love to be apart of is, in any technical areas that you don't have the time or energy that I can assist in.

Or help educate people on the benefits of FTH.

I'm not much of a salesperson, more of, see problems, let's go fix them, even if no one else see's the same problems.

So what do you need?
Club #6742
Community Spirit Toastmasters
csburnsville.toastmastersclubs.org/i
The topic has been locked.

Website Performance Optimization 7 years 3 months ago #59973

  • SteveTheTechie
  • SteveTheTechie's Avatar
  • Offline
  • FreeToastHost Developer
  • FreeToastHost Developer
  • Posts: 13529
  • Thank you received: 3831
Ok, so you are more server side oriented. We use MySQL and Perl server side... I do not see us changing from that in the short term. FTH1 was php, but w/ FTH2 it was coded in Perl. I got involved after FTH2 was out, and have been driving development since.

I am moving more functionality client side for a number of reasons having to do w/ the system architecture. (single server, more interest in mobile friendliness, etc.) So the server side experience is not as important to me as client side.

Do you have any experience w/ build systems? Git, Gerrit, automated test builds, etc. That is what I am stuck on right now.
Regards,

Steve James, DTM
FreeToastHost System Developer
Officer Emeritus, Mindful Communicators (Club 1966, District 52) A President's Distinguished Club for each of the last 10 years.

>>> Please put your club number in your forum profile. CLICK here to edit your profile.
The topic has been locked.

Website Performance Optimization 7 years 3 months ago #59977

  • crosenblum
  • crosenblum's Avatar Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 14
  • Thank you received: 1
Nope, never had any experience with any of that.

None of the jobs I ever had, got involved with any of that.

But I do have some design skills, usability, jquery, css.

Not someone who is a great designer, but when creating web applications, tend to create easy to understand, easy to use web interfaces.

There are possible ways to help out on the MySQL side.

Are you using views, stored procedures, reviewing slow query logs.

I'm a tad rusty, but I understand basic concepts.
Club #6742
Community Spirit Toastmasters
csburnsville.toastmastersclubs.org/i
The topic has been locked.
  • Page:
  • 1
Moderators: Pamrhtaylor3jliumarc33NotLiabledeedubbleyooNSBPhyllis Kirouac
Time to create page: 0.037 seconds
Powered by Kunena Forum