May 13, 2013 at 10:12 pm #8282
I found this article comparing jumpstart to several others out there
I found the results to be pretty accurate. For example, the demo home page gets a D rating here:
Now, before jumping to conclusions, I’m not bashing the product. I think the feature set and architecture of jumpstart and related themes is amazing, well done, quite stellar. So what I am thinking is, its a shame it cant pull better rankings and perf here, and be Super Stellar.
Any plans to address the perf issues/techniques?
May 13, 2013 at 11:01 pm #8283
That is BS article and numbers you got there 🙂 37 in Pagespeed is a hint? Is typical for “optimization” info, link bait and stupidity in one mix. Sadly many take it serious so worth to respond to.
You can quite easy get 95-100 in what ever test. However stop comparing the way article does. For example, Genesis is flat as a pan cake while Jump Start is fully featured. Context is gone.
If virtual points (not necessarily same as real life points) are important and you are on normal shared server you need
1. Minification tool
2. Page caching tool
3. Server set up properly, basically a la HTML5 Boilerplate
4. Smart plugins and tweaks – no cheating.
Tweaks meaning you have a fully featured site + 50-75 plugins while not killing performance.
Cheating is if you set up a nice blank page, make sure requests, JS load etc. is minimum – and then you screen shot away. Or cheating is if you spend way too much money on super fast server which can drag your tractor of a site!
Real tweaks for Jump Start I do not think are possible if you ask Jason but lets see. Here are a few ideas.
Make your own Twitter Bootstart, only use JS modules you know are relevant for your site. This includes CSS.
Bundle all CSS in 1 file, this is big task but result is you can remove quite some lines, 10Kb is my guess. You need X different colors for your info boxes etc. ? You only have Contact Form on 1 page, then why load CSS in big bundle file. Split it out via custom field or something. This way of thinking is essential to running tons of JS heavy plugins. Must know how they work and possibly change them!
Problem with this is you need to be in full control and also it makes updates more demanding. I doubt very much Jason will nod to bundle all CSS in 1 file just to remove some bloat. I sort of have to as I want special formatting for CSS, So all lines are changed. 1000s of lines. Takes some hours and as said is a potential bomb under future updates. Jump Start main CSS file is a holy static so not for everyone. Is possible though.
This about CSS is almost silly because you have minify tool already + you of course gzip it all. So very little gain in raw numbers. However it is mental practice plus you can check out more advanced measuring of CSS influence on browser rendering. Chrome Dev tools can show how CSS and JS block or not as you navigate site. You might start to cry or go insane but is important, especially on weak ass mobile stuff. This is another reason I do full edit and keep eye on CSS from plugins – is just as important.
Which is where Bootstrap kicks in. You have good guarantee no JS or CSS will be horrible. More than you can say if you raced around on .org site looking for tab plugin, a tool tip plugin, a column what ever plugin and so on.
If you want more you can look up people who test WordPress down to few ms. Which filters hurts performance and so on. May be you can apply some transient caching but you might end up building own theme and plugins, heh. Life is too short for certain things. High quality theme and smart plugins should be enough.
Sorry about long rant post but I get annoyed about WordPress “tests”. Have moderated myself actually 🙂
Depending on your visitors distance to your server it can be an idea to use CDNs for jQuery, Twitter Bootstrap and other things. This is internet physics, latency etc. Is a tricky one because you also increase http requests this way and you absolutely dont want to introduce waiting time for CSS! Depends if it make sense or not. Also check hops to each CDN to pick the fastest.
Another thing is this goes against the idea of removing not used parts of Twitter Bootstrap. CDN will load the entire thing where your own bundle will be somewhat smaller.
Also jQuery 2.0 is 10kb smaller than 1.9.1 🙂 Dont matter!!! Ok then you dont optimize, heh. Must load older version for IE8 and lower btw.May 13, 2013 at 11:19 pm #8284
Better reading than silly tests.
1 more trick.
Move main jQuery file to footer!
Means you must make sure no script/plugin request it in head. And if they do you fix them. Mostly not an issue if you use smart plugins. Never never random crap you find here or there. Is of course 25 times easier if plugins are optimized out of the box. This must be done in full control of enque´ing, dependencies and such. Check W3TC forum for how it can go if you go click, click. Can be tricky, sometimes impossible.
Expert jQuery trick. Do not load migrate.js for newer version than what comes with current WordPress. Means you KNOW your scripts are updated to be compatible with latest jQuery. Very unlikely in WordPress world but possible. If you do not know what migrate.js is then dont touch jQuery at all 🙂
Contact Form 7 is not optimized if you only use it on 1 page. Loads JS and CSS on all pages. Trivial to fix.
Go through everything, no need to make lists. Images are of course a major killer and so on… You can find infographics screaming this, nothing new.May 14, 2013 at 12:29 am #8288
Karlo, this is great info, much appreciated. I follow what you’re sayin, and I’d summarize the conclusion as: the article/test I shared appears to be fair in the respect of non-biased, but not deep enough to be scientific. There are a lot of factors here, many of which you outlined are are valid points.
I’m going to do some tinkering taking all this into account as I continue to set up my stuff on jumpstart.May 14, 2013 at 12:51 am #8289
Yeah now I read ALL he writes he is still 100% wrong – but he is somewhat aware
Granted, each demo has unique content, but this test will still help me decide whether or not I want to try a different theme framework.
He just seem to believe in tables, heh. We all do, is one of the annoying truths about internet. If I was Jason I would freak out!
To keep you from going insane taste the saying about “low hanging fruits”. Once you start to manipulating JS and CSS, in context of may be 50 plugins, it is not super easy. Well it is but take much time. Always think of updates, future proofing. Very detailed and anal optimization might make you give up and go BAH!
If you check some of the links you can see that the BASIC stuff is still what is missing. Some well known sites use huge images for thumbs etc. Is quite easy to get good performance but for some reason it is not hot! Chris Coyier from CSS tricks have a nice little video outlining what is wrong and what to do. 5-10 simple steps and done. With WordPress you must add only use quality plugins, those that get updated and cared for. Then it wont be so bad.
I dont know why but this hard core performance stuff does not seem popular in WordPress world. Is all about “which caching plugin to use” and other one liners. Is big area. Have you ever seen a plugin dev. list which jQuery scripts his stuff loads – and how? I dont understand why.
Also use PHP 5.3 if you can 🙂 Server stuff must be perfect or why even bother?
If you have never played with minifying and caching plugins then know they are pure hell to deal with. You can test all you like but do not use until site is done. Is for production only. Example: You minfiy and so these few bundled files will get unique name as to bust the cache. However cached pages from lets say WP Super Cache might still have old now invalid file names. Result = white screen 🙂 Might be and advantage of W3TC as it has all features. Many give up on minifying for such reasons. All caching plugins seem to have life of their own and they either like your server environment or they dont!
Go with Google Pagespeed or what is worth while AND low hanging fruit/EASY/painless. Super easy to get 80-90% perfection, 95% clearly possible, last 5% will hurt you, heh – something like that.
And test properly. If you are situated in US you dont care for Sweden. Results differ a lot depending on routing between server and visitor. On the other hand if your perhaps weak server in in Sweden and you target US then may be an idea to use CDN to get local US speed. And ignore your own “feel”. You have entire site in cache so it will be fast. What about a mobile device on way slower connection speed? And their tiny caches cant even hold that much. Why so much focus is on mobile speed – is very tricky/impossible. Us WordPress users can only do so much. You wont get under 1 second like Google aim for 😉May 14, 2013 at 2:05 am #8290
There are a couple reasons that this person’s tests are a pretty bogus. He’s just taking the live demos of these themes, as they sit, and running speed tests on them. There is so much more going on here than simply the theme being used. A true test would be to actually test each theme on the same server setup in a setting where it it’s actually been optimized for a final website.
I generally leave the live demo of the theme in its raw form so people can see exactly how everything is coded and included by viewing the source. How you want to cache, compress, and serve your site’s assets is up to the one managing the site, and that’s why awesome plugins like W3 Total Cache and Super cache come in handy.
Caching the live demo and trying to fudge numbers for anyone that’s going to be doing tests like this on it isn’t something I’ve really thought much about before. I can see some of these others (like Genesis) are doing this on their live demos. So I guess they’re better at these marketing type tricks than I am.
I just enabled W3 Total Cache on the live demo. With just a simple W3 Total Cache setup, you can now see the difference if you want to run your same test again — http://gtmetrix.comMay 14, 2013 at 2:56 am #8296
Remove images!!!! 😉
If you check out beta version of Genesis 2.0 http://www.genesisframework.com/ you wont find any jQuery – is ripped out. Something like 8-10 http requests. Then object caching on their own controlled servers etc. Wrrrroooom. Yes, yes. Genesis is a fairly blank framework to begin with so of course it will be fast. There is a blog post about this beta and a guy comment like “THIS is why I like Genesis”, referring to requests. Has some marketing value for sure because nobody care for context. Becomes hype which must be fought back though this framework comparison post does not matter a whole lot. Is from January btw. Be happy this is on a low profile site. I have no faith in WordPress sites to do any kind of testing. Also have problems even imagining a testing scenario that make sense. Genesis vs. Jump Start will never work.
Anyway, here is CSS-Tricks video http://css-tricks.com/video-screencasts/114-lets-do-simple-stuff-to-make-our-websites-faster/ SIMPLE stuff. As much as it is cool to tweak and optimize it should also be warned against. But most of what he says, not all is tuned in to WordPress world but close enough, plus doing serious research for all WordPress plugins goes a long way. When simple is done one can stop or move in to darker areas 🙂May 14, 2013 at 9:25 pm #8310
And after caching the demo and talking to the author of that post, all of a sudden I went from the worst to the best on his list.
… A lesson for everyone: Cache your live websites! 🙂
@dapug — I apologize for not really addressing your original question. To be honest, the kinds of things that these tools (like gtmetrix.com) you’re using are catching are not as much of what I’m currently focusing on for optimization. The reason for that is I do believe a lot of this does have to do with how you setup your WordPress install.
However, to give Jump Start constructive criticism, there are many areas where how we query things and how many times we access the site’s database that can be improved. This is currently where I am focusing most of my attention in terms of optimization. This is the type of stuff that is going to really effect your site, but can’t be measured really with off-site tools.
In framework v2.2.1 (Jump Start 1.0.1), our DB queries were improved so much, but there’s still a lot of work to be done here as you drill into using certain features like combining elements in the Layout Builder, various shortcodes that do things with posts, etc. And things will improve. Framework v2.3 combined with Sliders plugin v1.1 (both not released yet) improve database queries on the slider specifically very significantly.May 14, 2013 at 10:01 pm #8311dezwParticipant
I’m a little late to this as Jason has pretty much quelled any potential fears about the framework performance.
I too, read that article prior to purchasing Jumpstart. It was disappointing to see, but I went along with the purchase anyway (Once I get an idea in my head about trying out some sort of technology, it’s hard to deny it!).
I wish I had posted earlier, but I did my own testing on the staging server I’m using and was getting in the 90’s using Google Page Speed Insights. Of course, it went down when I tested the blog pages, but its my fault because the image sizes are pretty big.
I’ve purchased almost every major framework out there (the reviews on Thesis 2.0 really made me stay away from it) and through my own very non-scientific testing, Jumpstart is at least as fast as the others using identical page content. Like Jason proved, caching really makes a huge difference.
Anyway, thanks for enabling Cache on your demo. The article that showed those speed results was pretty misleading, and unfortunately pops up when you do a search for “Themeblvd, Jumpstart, etc” — not good for prospective buyers. Personally I think JumpStart is a fantastic framework that deserves frequent, positive press.
Looking forward to your updates!May 14, 2013 at 10:53 pm #8312
Big YES to Jasons fiddling about with internals. Is real task to worry about for big ass framework 🙂 External stuff is up to users know-how and interest/needs.
What would be disaster is if Jump Start got the idea to pre-optimize externals like 3rd party scripts. Bundle them all in one file for example. Or do own minify process for CSS. Or how about enabling Gzip via PHP, so cool. Might be better for out of the box performance and silly click click tests, but idea wont hold water in the long run. For short run not at all for an open framework. Gets framed, limited, lock in and that is nasty.
Speaking of strangely related marketing why not submit Jump Start here http://wordpress.org/extend/themes/commercial/ I actually did check and use that list before making my mistakes! All counts. I do not know requirements but see funky entries so cant be that difficult to get in.
Sometimes instant joy of optimization makes you reverse. Example: http://maorchasen.com/blog/2013/02/25/advanced-caching-methods-in-wordpress/ I wanted 5-8 mysql less and I got it. He is not mistaken. Issue: Anything “current” in nav bar stops working and after much research I concluded it is not possible to fix. So gave up idea but happy to know it can be done and works. Might be useful for when engine need max. tuning. I like “current” class too much to care, just a bit annoyed. Can use transients for lots of other custom things. Can learn through failure.
Same with other features btw. Sometimes X can be so so performance wise but if cool factor is sky high who cares? Must not enter “remove everything that can be measured” mind set. Ends up with 1 column, huge trendy Google font nothingness 🙂May 15, 2013 at 1:53 am #8314david-wpckParticipant
I don’t think I’ve ever seen a really fair comparison of frameworks.
Even if there is caching, and even the same server, there must be the same content, images, and much more to get even close to being a level test.
As Jason Bobich pointed out, some frameworks “cheat” on their demos and give false impressions.
There are so many factors to take into account to create a fair comparison.
They would need to be put on a real site under real conditions for a given period of time, then swapped.
Servers speeds fluctuate, so many speed/loading tests would need to be done then averaged out.
I think people need to look more at what their end goal is for the website, the features they need, usability, extensibility, localization, and more to really make an educated decision about what they should use for their website.
There is no single product that will fulfill the needs of every project you might have.
I think the project needs should always come first, then you fulfill the need with what fits best.
I love JumpStart, and I think Jason outdid himself with this framework.
It’s really well thought out, and the extensive usage of filters/actions is superior to many frameworks.
There is not too much I could not do with this framework, it is definitely in my top 3 favorite frameworks ever created (for WP).
Having said that, even I don’t use JumpStart for 100% of my projects. There are times when a custom rolled PHP framework is better suited, or even non-WordPress.
If you really want speed from your framework (which you should), then your own decisions and actions is what will make the real difference when your site goes live.
Use caching and a cdn, do not load assets you don’t need on the page, don’t upload non-optimized images to your site, carefully select plugins you use, pay attention to the “weight” of your pages.Big sliders seem so popular, but they are one of the largest assets to load on a page, and typically the homepage which should be one of the lightest pages.
Anyways……… @JumpStart…… your awesome!May 15, 2013 at 3:36 am #8315
Another test anyone can do. Google engineers will go LOL but Instead of looking at graphs og FPS meter in Dev tools just use computers own CPU meter. Set it to update a bit faster than normal. Can be very revealing, especially for sliders but for anything really. If not too cool on desktop computer then most likely worse on weak mobile devices.
Another fun fact:
It takes1 icon from Font Awesome to kill performance, or at least make it drop big time. How is to add .spin class or what he call it. A 100% not worth it feature. CSS3 can be a major performance hog. What they say about “native/browser” hardware acceleration vs. evil jQuery I do not always find to be true. Word is “We cannot accelerate old jQuery code so stop using it”. Hmm. Might be a mobile thing. Or again a question of quality. Not all CSS3 is created equal. Let real valid numbers do the talking.
Btw, BJ Lazy Load http://wordpress.org/extend/plugins/bj-lazy-load/ walks all over alternatives. Working on Retina magic as well. Another way to increase/fake performance without too much visual noise. He seem to have fine tuned delay nicely. Wrong numbers and I get a crappy feel seeing images flopping about. Wont ever love delay 100% but can be needed. Trick sure does work, quite easy to tell/feel. Think JetPack have lazy loading as well? Is an established feature. He use TimThumb for certain non-lazy features, I am guessing Retina load which I have not tried, but is safe enough these days. Has been rewritten since cause of many malware attacks. Still has very bad reputation, is banned from themes on .org site so evaluate details before usage.
Btw2, Lazy Widget Loader http://wordpress.org/extend/plugins/lazy-widget-loader/ is also nifty for the odd case where a 3rd party script is mandatory. Cant do much about them – except wrap up and lazy load. No blocking of rendering. I was not too happy at first but then figured I had to force height of widget to match content. That way no jumping about once it arrives.
Also check Godaddy http://wordpress.org/extend/plugins/lazy-social-buttons/ and Socialite jQuery script http://wordpress.org/extend/plugins/wpsocialite/ Lazy loads social stuff. Look how they advertise, heh. Not even all wrong. I somehow managed to make Socialite only show after clicking a button. There are a couple more these performance aware social things I think. And at least one very good for passive buttons, no real time social numbers – http://wordpress.org/extend/plugins/juiz-social-post-sharer/screenshots/ Can make own with Font icon, just need correct sharing links and some CSS.
Is real easy to tweak without getting in to complex setups. Much is done by being super critical 🙂May 15, 2013 at 3:15 pm #8319
Jason, your work is truly impressive. I’ve seen so many themes I stopped counting after the depression set in, and it wasn’t till I came across Breakout (on mojo) that I finally felt – “Wow, this guy gets it”! Which then led me to the author, and to Jumpstart. It’s not just the design talent either, but the architecture, flexibility, capabilities. As a pro developer of many years, I am impressed. So THANK YOU for absolutely rocking at what you do. 🙂
As for the perf question, I was already sold on Jumpstart (literally, already bought it) and figured even if there was a slight perf it, the capabilities are WELL worth it. But was curious on the topic. Thank you everyone for your insights.May 15, 2013 at 5:24 pm #8322
@karlo lol I think you have too much information coming into your brain on a daily basis, but impressive! Where does this all come from? Do you have feeds of all kinds up on multiple monitors for the latest breaking news of all web development subjects?May 15, 2013 at 5:50 pm #8324
Yes 🙂 It is a fun process…
Dont forget that for normal users, not having own products to focus on, WordPress world is chaotic and contains lots of crap. One has to attack info as not to turn in to puppet and instinctively seek baby products like JetPack, some fixed boring theme, you know tumblr stuff – enjoy the chain.
There are issues by not sitting still but I have no time to list them all, heh. No pain no gain applies.May 16, 2013 at 2:21 am #8348DannyParticipant
I don’t know what all this hoopla is about..its clear from the start that the test was not
a well thought out process.. Heres a real world example I used TB ALyeska for a RE site, IDX and all a year ago..I did just basic optimization..its on a shared host..It is snappy and crisp in both back end and front end..Tests out at b grades a c once and a while not bad for some compression and HTAccess some basic cacheing. No plugin.
I was impressed at how fast and snappy TB ran with the fewest tweaks. If I was paid to optimize more it would fly..Really making your site run fast is super important and the last thing you do when done right?..So isn’t that process mostly done when your at or near the end of development? Ergo no test should be done until you do a full set of optimizations?…speed is king and if you have to you go all the way to 100% A+ No wordpress framework stops you.. I mean there is a VPS host or dedicated and nginx and APC cacheing and more..I bet when Im done I get consistently 95+ scores. Im not even one bit worried ..Plus Im not even in your league as a developer..So if I can do it anybody can. 🙂
- You must be logged in to reply to this topic.