jamulussoftware / jamuluswebsite

This is the GitHub Pages repository for the Jamulus main website. For the jamulus application source code, please visit jamulussoftware/jamulus.
https://jamulus.io
GNU Lesser General Public License v2.1
15 stars 83 forks source link

[Bug] Jamulus rank on google SEO #56

Closed ann0see closed 3 years ago

ann0see commented 3 years ago

URL

Google for "rehearse online"

Expected behavior

Jamulus homepage ranks at least on the first page of google.

Solution

SEO

gilgongo commented 3 years ago

I've linked jamulus.io (via a TXT record in the zone file) to Google's search console. I can share that with you if you give me your email (I think it has to be a Google account though).

ann0see commented 3 years ago

Ok. Contact me via the billing E-Mail address of this organisation. I will send you a G-Mail address then.

ann0see commented 3 years ago

After looking at this data, the only word jamulus.io ranks high, is "Jamulus" we should probably rethink the homepage text and describe jamulus a bit better (allows online rehearsals,...)

gegeweb commented 3 years ago

After looking at this data, the only word jamulus.io ranks high, is "Jamulus" we should probably rethink the homepage text and describe jamulus a bit better (allows online rehearsals,...)

You can start by the slogan. « Play music online. With friends. For free. » => Play music, rehearse, jam online. With friends. For free. » Add this slogan in the title of the h1, use a h2instead of an span for this subtitle.

<h1 title="Play music, rehearse, jam. With friends. For free.">Jamulus</h1>
<h2>Play music, rehearse, jam online. With friends. For free.</h2>

or

<h1 title="Play music, rehearse, jam online. With friends. For free.">Jamulus<br/>
<span class="subtittle">Play music, rehearse, jam online. With friends. For free.</span></h1>

HTML structure of documents is verry important for SEO, especially titles. External links helps too.

Don't know if Jekkyl have template using the new html5 tags '<main>', '<header>', '<aside>', '<section>', '<article>' but is a good thing to use these instead of anonymous '<div>' when it is possible.

Better the document is structured (that's the original function of the HTML), better is the SEO.

ann0see commented 3 years ago

Yeah. I already use some of the new html 5 tags. Feel free to have a look at the template file and propose changes.

Concerning the slogan: Yes, we could change it. But I think we shouldn't go away from the tricolon or we should totally overthink it.

gilgongo commented 3 years ago

I know SEO is mostly guesswork, but my understanding is that if right now we are ranking for a unique term only ("jamulus") then that means Google has indexed us and knows about our use of things like "playing", "rehearsing" etc.

There's no harm in tweaking HTML structure, tags, keywords, sitemaps etc. but this will be of minimal influence until we get incoming links (AKA "link benefit") from sites that currently rank well for the search terms we want (or a very large number of small, low-ranking sites).

The trouble is, sites that rank for these terms right now are mostly also reliant on some of those terms for their ranking (like JamKazam) so they would not want to link to us. There's an example of this here where a very significant site, Sweetwater mention us, but won't link to us because they don't want us diluting the rankings for the terms used in that article.

It also takes a long time to start ranking for common words like "music", "rehearsal" and "online" or (many months, even years I think) because Google wants a stable "ecosystem" of information (well, that's the official line, but in fact they want us to buy AdWords, which bypass all these problems).

So how do we get people to link to us? I think there are a few options, but they're not easy and would require a big change to the way we present Jamulus to the world :-)

  1. Set up a Twitter account and start following thousands of music-related people and tweet links to downloads, etc. We release very regularly, which is a gift for this I think. Also if we approach people/sites that might run articles that link to us. Put links to the home page all over Facebook posts, etc.

  2. Move the forums onto the jamulus.io domain. This would provide quite a large "cloud" of related content that would be updating regularly and (hopefully) bringing in links from other sites if people post solutions to problems, etc.

  3. Something that @ann0see mentioned once: create a blog-like thing where people could post tips and tricks. The return of the community wiki, if you like. This would also completely reverse the policy I recently floated about not hosting unmaintainable content on our site (eg the software synth article). It would be too much to maintain/translate, it would duplicate the docs, become out of date, be wrong, etc. - but that wouldn't matter because the point of it would be to raise our Google profile (we'd still maintain the docs in the current way of course).

  4. Some combination of the above. Note that the existence of SourceForge in all this is a problem though because it's not on our domain :-(

ann0see commented 3 years ago

I don't think the main problems are links (in fact I checked a backlink checker and jamulus.io had some). I think it's the content of the main homepage which has to be changed.

Let me think of the points you mentioned above (will comment on that in a few hours), but we should massively and artificially promote jamulus (Fake links etc.)

gilgongo commented 3 years ago

I don't think the main problems are links

Currently, the world of SEO would beg to differ :-)

"It is generally accepted that if all other factors [HTML, content on page, etc.] are equal, the volume and quality of links pointing to a page will make the difference between rankings. ... There is little doubt that if you get high-quality links to your website, it will help you rank better and get more traffic"

https://moz.com/beginners-guide-to-link-building

gegeweb commented 3 years ago

Set up a Twitter account and start following thousands of music-related people and tweet links to downloads, etc. We release very regularly, which is a gift for this I think. Also if we approach people/sites that might run articles that link to us. Put links to the home page all over Facebook posts, etc.

Don't forgot the alternatives on the fediverse like Mastodon or Pleroma, Diaspora*, and because you talk about a blog Plume. Many people are no longer (or not) on Twitter or Facebook but on these social networks. Moreover I think they are in the spirit of the concept of Jamulus.

gilgongo commented 3 years ago

@gegeweb Oh sure those too :-) I was just using Twitter as an example of a way we might get inbound links. The "platform" doesn't matter - if users of those platforms see we're following them, check us out, then hopefully put a link somewhere on the web to us which other people find and click on. Google sees that link (and the site it's on) and judges us to be more relevant to the key words used in the link text (and other things).

ann0see commented 3 years ago

So, let me reply:

Set up a Twitter account and start following thousands of music-related people

Could be something we can consider. But it would be another place where we spread information. Also I don't think we should artificially follow thousands of people. This would seem spammy.

Move the forums onto the jamulus.io domain.

Yes. But I don't think that this would be possible.

create a blog-like thing where people could post tips and tricks

This would bring back the open wiki, which I think also supports the community spirit. We can make the layout differently and do it via jekyll. Every post will have a "AUTHOR: xxx" tag and a disclaimer saying that the content of the page is not part of the official documentation and the author is in charge of updating the content. Jamulus can't guarantee for an up to date article. (If we see that the quality is really bad, we can remove it of course).

I would focus on content and improving the wording of the home page (optimize it better for one word) and I'd love to have an article from somebody who describes how to do online rehearsals with jamulus and how to get e.g. a choir onboarded,... I think in the SF Forums there was one.

gilgongo commented 3 years ago

Fundamentally, our Google visibility won't get much better until we get other (preferably well ranked) sites linking to pages on our domain. On-site content optimisation helps us tell Google what we think is important (so "jamming" more than "rehearsals", for example) but it's pretty minor. That stands to reason if you look at it from Google's perspective.

Following people on social media isn't "spammy". You only follow once, then as long as you don't post rubbish, the hope is that people will follow you back and/or maybe link to us in some other context (a blog, say).

This would bring back the open wiki, which I think also supports the community spirit. We can make the layout differently and do it via jekyll.

Yes, it would need to be a sort of "site side" on the domain with a different layout (I'm thinking we'd seed it with the stuff in Tips & Tricks, maybe even call it that). We need normal people to be able easily to contribute stuff via a web UI. So jekyll is probably a non-starter for that, as is GitHub really, so maybe something like a moderated forum or Wordpress-like thing.

I think in the SF Forums there was one.

Yes that kind of thing. If we can get good info to appear on our domain and not SF then we stand to get the link benefit.

BTW I'm not sure we will agree on or actually do most of the work necessary to get Jamulus to be noticed more than it is (it's 15 years old after all), but this stuff is worth discussing so that we at least understand the issues. I'm glad you raised this ticket :-)

ann0see commented 3 years ago

On-site content optimisation helps us tell Google what we think is important

Let's optimize it for online jamming then. We could start with "Play music online" --> "Jam online"

but online rehearsal should also be on the page.

Yes, it would need to be a sort of "site side" on the domain with a different layout

The easiest would be jekyll and an easy to use "add content" button. But of course, pull requests etc. shouldn't be so prominent.

gilgongo commented 3 years ago

One thing I notice on the forums (although I don't go to the Facebook group at all often) is we do seem to have quite a large number of people using Jamulus for singing. But yes I guess the "spirit" of Jamulus is for jamming :-)

I think as long as people can add content via a web interface and we have some kind of defence against spam, vandalism etc. we should be ok.

ann0see commented 3 years ago

I just checked the search console again and the traffic is insane! At least if somebody searches for Jamulus he gets on our site.

ann0see commented 3 years ago

I think as long as people can add content via a web interface and we have some kind of defence against spam, vandalism etc. we should be ok.

So what's your proposal? Jekyll?

gene96817 commented 3 years ago

@gilgongo Are we getting enough credit from the singers to raise the rankings? Are we too focused on jamming that we aren't getting recognition from the entire music community?

gilgongo commented 3 years ago

@ann0see Google sees us a dense cluster of a word that nobody else is using. So I would very much hope we would rank highly for that. It's one term don't need inbound links for :-)

@gene96817 There's not enough data in the Google Search Console to tell us who is linking to us yet (we might get some in the next few days) so we'll see.

As to the issue of what system we'd use for the return of the wiki (or whatever we mean), I dunno. Wouldn't it mean they'd have to make pull requests and wait for us to merge things, etc.? If so, I think that might be a bit weird but I guess we could start with that?

ann0see commented 3 years ago

Wouldn't it mean they'd have to make pull requests and wait for us to merge things, etc.? If so, I think that might be a bit weird but I guess we could start with that?

Yes. And that’s the problem.

gilgongo commented 3 years ago

Hm. We could have a public wiki, but that raises the issue of hosting. I bumped into this, which I think means we could host a wiki on SourceForge maybe? I'm not sure what they support beyond PHP (and I don't know how must space we get). I don't think they host databases any more It seems fairly capable, with disk space on an honour system.

I could try putting a subdomain on jamulus.io and try it out?

ann0see commented 3 years ago

You can. Butt I'd suggest to leave as much as possible on GitHub pages to not spread information even more.

We must find a way for simple PRs.

ann0see commented 3 years ago

Found something: https://github.com/jamulussoftware/jamuluswebsite/new/changes/wiki/?filename=filename.md&value=frontmatter&message=some%20message&description=some%20description

https://www.reddit.com/r/github/comments/3ty3g9/github_trick_how_to_prefill_create_new_file_form/

We could probably prefill the file with the frontmatter etc. and let the user edit the file on github

The layout could be something like: Screenshot_2020-11-25 Using Multiple Audio Interfaces – Jamulus Blog

but it's still to similar too a normal page. Nevertheless, the design should not greatly differ

Edit 2: We could even add comments to a blog site: I think this would be great (issues should be created on a separate repo to leave this one clean) http://donw.io/post/github-comments/

gegeweb commented 3 years ago

Found something: https://github.com/jamulussoftware/jamuluswebsite/new/changes/wiki/?filename=filename.md&value=frontmatter&message=some%20message&description=some%20description

Sound Devices is a page that could take place here too.

It seems good.

ann0see commented 3 years ago

@gegeweb See the blog branch. It's not yet finished but a few things might already work.

gilgongo commented 3 years ago

Nice! - can it build an index that we can have one a page that tells people to contribute stuff that others will link to it and help Jamulus take over the world? We have at least three or four things we can seed it with.

Some other questions:

  1. I was assuming we'd not bother the translators with this content, but what do you think? People can add stuff in other languages of course.

  2. Does markdown allow embedding video? Might be nice if people have things on YouToube that they want to use in articles.

  3. I assume we therefore rely on Github to prevent spammers/vandals, but in the event something gets through are there any steps we can take to mitigate that much? Rolling back?

gegeweb commented 3 years ago

@gegeweb See the blog branch. It's not yet finished but a few things might already work.

I fetch the blogbranch, switch to it and launch jeckyll for testing, right way?

Nice news! ;)

gegeweb commented 3 years ago
  • I was assuming we'd not bother the translators with this content, but what do you think? People can add stuff in other languages of course.

Agree with this point of view. That's good things that allow users to add contents in native language.

  • Does markdown allow embedding video? Might be nice if people have things on YouToube that they want to use in articles.

Seems no (don't forgot Peertube a free and federated alternative to YT ;)) but this workaround seems good: https://stackoverflow.com/questions/11804820/how-can-i-embed-a-youtube-video-on-github-wiki-pages

  • I assume we therefore rely on Github to prevent spammers/vandals, but in the event something gets through are there any steps we can take to mitigate that much? Rolling back?

Does Github allow « a priori » moderation? But it implies one or more moderators...

For post moderation I presume that the system allows deletion or modification? And the reporting of abusive accounts?

ann0see commented 3 years ago

can it build an index that we can have one a page that tells people to contribute stuff that others will link to it and help Jamulus take over the world?

Yes

translation

No. I don't think that's needed. If someone wants to do than that. Sure.

YouTube

Jekyll supports HTML. So no problem. But YouTube has privacy issues. (But we need to include it if a video is on YouTube.

I assume we therefore rely on Github

Yes

Does Github allow « a priori » moderation?

Pull requests?

I'm still thinking about using the native Jekyll blog feature with the _posts folder. If someone adds a blog article overview page etc, I'd be happy.

gegeweb commented 3 years ago

I'm still thinking about using the native Jekyll blog feature with the _posts folder. If someone adds a blog article overview page etc, I'd be happy.

Not yet tested the blogbranch, It will interest me for my needs as well. I'll test that after reviewing myself the MR for the french translation. I discover Jekyll here and it seems not bad at all!

ann0see commented 3 years ago

Ok. Pushed it again. Pagination is not working. Using https://github.com/sverrirs/jekyll-paginate-v2

removed pagination object for a quick fix.

ann0see commented 3 years ago

Probably that's because the plug-in is not specified under _config.yml ...

ann0see commented 3 years ago

Ok. Now it should work. My PC has problems at the moment so I had to add the last changes via GitHub online editor. Can someone check if the structured data is correct?

ann0see commented 3 years ago

Screenshot_2020-11-27 Software Synth in Jamulus – Jamulus Blog Screenshot_2020-11-27 Overview – Jamulus Blog

gilgongo commented 3 years ago

Some general points:

How do we "position" this to users? It's rather (very?) unusual to have a sort of "wiki blog" on a site like ours, and we need to be careful that people don't misunderstand it and start using it like a forum. And with this "blog", we will now have the following content "realms" for the project, so there's quite a large potential for confusion too:

  1. The main site/docs
  2. This new "blog" (but see note below on naming)
  3. SourceForge forums
  4. Github issues for code
  5. Github issues for docs
  6. Facebook group(s)
  7. Facebook pages, various blogs, YouTube videos and other content spread about the Internet

Of course, the ulterior purpose of this "blog" is to attract inbound links from external sites (otherwise, we'd probably just use the SF forum to pin interesting posts). So we should probably encourage people who are currently posting interesting stuff on the forums to migrate that here (and we'll need to delete it from SF to avoid Google seeing duplicate content, which will rank it down).

Because of this, the name is important for people to understand what it should be about. "Tips & Tricks" is in the zone, but can we think up something better? It needs to distinguish it from the other "realms" above. "Using Jamulus"? "Community Brain"? "The Tao of Jamulus"? "The Book of Jamulus"? "Community Lexicon"? "Community Codex"?

BTW can the URLs of the pages change after a post is written? If so that's not good for SEO.

ann0see commented 3 years ago

BTW can the URLs of the pages change after a post is written? If so that's not good for SEO.

I don't know why that should happen

Spread of information Yes, it could be too much information spread.

I'm also no longer sure, if we want comments below the page or just a link to the forums to discuss the content.

All the real discussion (for the end user) takes place on SourceForge or Facebook.

GitHub is for development only.

gilgongo commented 3 years ago

OK good if the links can't change (eg if they update the H1 or something).

Ideally, any comments/discussion should be on our domain as it will keep the content fresh for Google and feed it with more words. However, the existence of comments does blur the boundaries between the forums and Github though. Perhaps if we have a hard rule that says if somebody posts a question/suggestion or something that isn't an interesting nugget of link bait information then we remove it and tell them to post it on the forums or github for discussion depending on what it is? Discussion on posts will be a interesting wild card though...

As to the spread of information - yes we understand what each is for, but what should we call this new thing so that others understand?

Name wise, I quite like "Community Codex" since that's what is it, and it doesn't overlap with any existing realm. The main docs are not "community" and discussion and issues are nicely separated I think. "Community Codex" also alliterates in English :-) But it's just a bit obscure perhaps, although the word "codex" does get used for software documentation sometimes.

EDIT: Looks like we're going for "Knowledge Base" as per another discussion. That's probably best.

gilgongo commented 3 years ago

Just a side note: I was making some minor updates on the Wikipedia page for Jamulus yesterday and saw that they have what looks like an option for allowing search engine indexing. There was "on", "off" or "default" and it was on "default" so I put it to "on". A bit mysterious, but if it gets some inbound linkage then it should be good I guess.

We're still invisible to anyone searching on a term that doesn't include "Jamulus" though. So the only way is up! :-)

ann0see commented 3 years ago

Yes. A wikipedia page could be good. But that's not the only problem. I think we have to do some rephrasing on the main homepage.

gilgongo commented 3 years ago

Sure - no harm in that. I doubt it will change anything though until we get backlinks.

gilgongo commented 3 years ago

Now that the website is up, we're starting to see the beginnings of some traffic coming from Google:

Screenshot 2021-02-17 at 8 43 42 PM

Interesting that while overall traffic is down recently, the quality of that traffic in terms of click-though vs impressions is better.

I think we're on the right track for SEO at least so maybe we can close this now?

ann0see commented 3 years ago

Yes. I'll close this now