HN user

lamosty

46 karma

WordPress web developer and blogger at https://lamosty.com

Posts3
Comments13
View on HN

I've been using Skarsta since August 2015 at my home office. I'm pretty satisfied with the desk.

I always wanted a standing desk. I saw pictures of many awesome home-built desks here at HN so I thought that I could built myself one too. However, it turned out that it's not very easy. So I started looking for one at local shops.

Fortunately, IKEA is about 10km from my home so I went there and asked. They told me they have some Skarsta desk. Long story short, I bought it for 200 Euro (the larger version). The assembly took max 1 hour. Initially, the desk was a little "bendy" and unstable, but I discovered that the screws were not tight enough. After tightening them, the desk is pretty stable, even at the highest position.

I'm about 190cm tall and at the highest position, I can comfortably work on the desk. What I like the most about it is that it's pretty huge and spacious. You can put three 22" monitors on it + smaller speakers + mechanical keyboard + notebook for drawing without a problem. Although you have to manually get it up and down with a handle, it usually takes something like 30 seconds and you can look into the monitor while doing that. :) It's a good training for your hands.

All in all, Skarsta is very nice and comfortable standing desk for a reasonable price. Since owning it, I no longer understand all the standing-desk startups with their smallish desks for Macbook + one monitor for 500 bucks. What is more, you can put a spin bike under the desk and exercise while doing a light work, reading or watching videos.

Thanks for the article, it's insightful and I & history agree completely with you. Nowadays, people are using prebuilt VPS images or automation scripts to provision their servers and shared hostings are becoming more of a VPS hostings with a good UI around these tools.

I see that you are a WordPress veteran, nice to hear your opinions :)

Maybe it's improved, but: four times bitten, twice shy.

I see, happens all the time.

On disk caching delegates this to the OS, which is pretty good at it.

Yeah, it's just a matter of preference and convenience.

It seems as though very few plugin authors know what O-notation means (so many nested loops), what EXPLAIN QUERY is or that tinkering and and firing up a copy on your laptop isn't really testing.

This is the real issue. I know a very few WordPress developers who have a formal technical education. While you can learn it yourself, school forces you to learn this in a great detail. In a near future, I will hopefully write on these topics, though, I need to study on this a bit more first.

You got some good points here though I don't know why opcode caching didn't work for you. Nowadays, it's just a matter of putting some configuration lines into PHP-FPM config and it works like a charm (at least for me, you might have a special site, idk).

Yes, compiling PHP shouldn't take that much (even though typical WordPress site consists of thousands of PHP files). But as you can see from some of the charts from my work, it can potentially double the amount of concurrent requests the server is able to respond to.

Whole page caching (I call it page cache) is the biggest improvement one can make. However, instead of using WP plugins, in my work I configured Nginx to cache the output of PHP interpreter (FastCGI). The advantages are that you can use Nginx's location directives to bypass the cache early (e.g. logged in users, shopping cart, etc) and that Nginx stores the pages in RAM in a tree-like structure with pretty fast access times. In a heavy WP site (plenty of large plugins, etc), you can go from 200 concurrent requests at 8 seconds to 1000 concurrent requests at 2 seconds, which is a pretty huge improvement.

MySQL query caching should definitely help, though in my testing it did not. Maybe I need a real benchmark with a real 100 people requesting different subpages. Then the DB (MariaDB in my case) might become a bottleneck.

Yeah, SSDs are superb-useful, in any cases. I made all the tests on a non-SSD server. At least the WordPress DB structure is quite flexible, though, as you mentioned, it now suffers from the gigantic joins.

Bad plugins and themes are the root of all the performance problems. But sometimes it is easier to implement caching and replacing Apache with Nginx on the server side than replacing plugins that you really need. That's the main point of the thesis: Time of an experienced developer fixing plugins and themes is more expensive than optimizing the server. But yeah, if you are a developer, learning to write clean and fast plugins is crucial.

Thanks for the kind words Justin, they are the hugest approval of my work so far. :) Not getting this in uni where everybody is about matrices and stuff.

Have you tried using HHVM instead of PHP-FPM? Although you are definitely having a fast site, HHVM could potentially double the numbers.

Yes, one slow DB query can ruin all the fun. That's why using Redis for in-memory DB caching can help. In some cases, it might be more optimal than using full page caching because DB caching works for logged in users too while page caching has to be bypassed.

Using JavaScript for better performance helps too, I like how you optimized that menu. I've noticed that profiling the code with, for example xhprof, can be really useful during development. Found myself doing some slow code/queries, ran the profiler and immediately discovered the bad parts. It's quite easy and straightforward to fix them if you know where they are.

----

They probably meant that APC, which was a separate PHP caching module back then, is dead. However, caching is now part of PHP and as far as I can remember, it is using the same API as APC was, so basically it still lives and W3TC supports it.

WordPress is rather big, having more than 200K function calls on a typical request to a blog post. However, when using the default Twenty Fifteen theme, the performance is not that bad, as you can see from http://ldr.io/1cbbomp (VPS server with 3CPUs and 4GB of RAM).

I've just checked your blogging engine and it looks very minimalistic. I like it.

It's an horrible peace of software, with horrible PHP code 4.x style, a db schema only a beginner could have come up with and an ecosystem with a lot of trash [...]

I must disagree with these statements. Although it is not the most elegant one I've seen, using the word "horrible" is simply out of place. Have you ever built some sites with it? Do you realize that WordPress is developed in open source with many talented people working on it every day? The DB schema is actually quite flexible, being able to accommodate various kinds of data without many modifications. Apart from that, you can write your own beautiful code according to the newest PHP standards if you want in your WordPress-powered projects. No-one is forcing you to use old versions of PHP.

As far as the success of WP is concerned, I think the reasons for it are very similar to why PHP is successful:

- A huge community with plenty of plugins and themes.

- Supported on basically any hosting service.

- Being free with free updates.

- Refined administration panel with many subtle features like auto-saving posts to Local Storage, which can save your article in case of an accident.

and much more...

I'm not saying that WordPress doesn't have its own issues, however, ignorantly stating that it is "an horrible peace of software" is simply outrageous.