some time ago I posted a link to a questionnaire regarding a possible redesign of MT:
viewtopic.php?f=15&p=9450#p9450
This post is going to be rather long, but I want to make sure we find the best possible solution that will work both for me and for you.
Feel free and post ideas, comments etc. below. I admit I did not have much time to read all the posts here, but I will read this one for sure!
Why redesign?
OK lets start from the beginning. MT was created back in 2015, something that was originally supposed to be a personal website turned into what you see now, something used by 2000 people in 70+ countries. How did that happen? Well... I never expected this, I just started getting emails which template I use and I said "my own" and then I thought, ok lets make it into one...
- One very important thing to note - I am not a programmer and I do not have any formal education in IT. Just a hobby... I currently work as the head of air quality department at the Czech Hydrometeorological Institute (the Czech National weather organization). Programming is something that just makes my life easier at times. And one very important thing is that I actually learned how to code by creating MT. That brings us to the root of the problem... the older the script the more problematic it is. Over the almost 20 versions I modified many of the things and optimized them, however there are some core scripts which cannot be changed unless I completely redo the template.... and they are often very important ones (the main settings file, the database etc.). Already a few years back I knew this will have to be redesigned one day... So that's point number one why the redesign....
- point number two - I said it was created in 2015 - that in the IT world is almost like Stone age (ok, I am exaggerating a bit, just Middle Ages ). What I mean by this - on one hand the technology moves forward, browsers are becoming more and more capable of doing things, there are new code libraries, more advanced ones, sophisticated ones. On the other hand also the way people use the internet and what they want is different. A great example of this are mobile phones. The percentage of users accessing the web via a mobile phone increased dramatically since 2015 and while in 2015 I considered mobile version of the template to be less important one I would now not hesitate to say it is more important than the desktop one.
- design - design is a very tricky one. It was, is and always will be subjective. Some people like that, some people something else. There are, however, some general trends which all page use. For example, the current trend is to make things rather simpler, easy to understand, no fancy 3D borders, no clip arts or GIFs and ideally a very clean, simple white page in combination with the same content in dark theme. This trend is mostly derived from the fact people use small screens so too much information and small font is problematic as well as GIFs etc which use lot of mobile data.
- last but not least, and this is a very important one, the other pages on the web changed and the current trend in providing data changed as well. This is a rather unfortunate for us, weather enthusiasts, but the truth is - I would say at least 75 % of APIs and content that was free in 2015 is now limited or unavailable at all now. Lets use a few examples - Google Maps... this is a major one, it used to be free in 2015, now it still is, but has a quota and always requires credit card details, which for many is an issue that I understand. DarkSky - another very major one. It used to be a great free service that MT uses for forecasts, but last year it was bought by Apple and in a few days discontinued free API and current users will only be able to use it until 2021. Another one is WU - it also used to provide lots of free data but after it was bought by another company it no longer does. Another example is Yahoo Weather - a major provider that did not require registration and thus allowed great things in terms of forecast related pages - no longer possible. I guess it is not just weather stuff, it is now more and more common that things on the internet are no longer free, there are subscription based models for news websites, APIs etc. And I guess it is understandable. Many of us use AdBlocks to block ads, and even those ads do not make much money so the company would go bankrupt if it did not make profit in other ways. Lets not complain about it and just take it as it is and adapt to it.
In summary - a lot! But lets be specific:
- less is more - this is a very important one. Believe it or not, there are over 400 blocks and plugins in total... it almost seems unbelievable to me, but it is true I was excited at the beginning to create as much stuff as possible and it sort of makes sense. However over time you realize this was not a good idea. I will give you an example. Lets say half of these are "dependent" - i.e. use external data source and half only use your station data. Lets now concentrate on the first group. Many of the external pages change too - either they completely discontinue their data provision or they change structure etc. Now we have 200 blocks/plugins that use these (50 %). So lets say each page makes a change every 2 years, that means 100 changes a year... and you see where I am getting - this means that on average every 3 days something "breaks". And this really becomes unsustainable to manage. MT is not my full-time job and I cannot make sure every three days things are fixed. And it would also leave very little time for development of new things and especially support. The more users there are, the more time it takes to deal with support emails. Even though you might think I am not working on MT much, I spend about an hour a day just answering emails and dealing with problems/helping people. In combination with the fact I mentioned above that more and more pages are no longer free it makes sense to concentrate on station-related scripts which should never break as long as your station sends data and always stick to the saying better less but working than more non-functional stuff!
- customizations vs simplicity - this is another very tricky one. Some users prefer to have control over everything including the size of the font in the footer. Others would prefer to just install and set up a page within 10 minutes and just use the options the developer preselected. There are a few things to consider. First, giving the user too much options is problematic. It is, for example, then extremely difficult to make the page working and display well on every display, browser etc. Why? Because if there are almost infinite number of options I as a developer do not even know what your page looks like and I cannot test every possible layout. Also, sometimes having the developer pre-select something is actually a good idea. You as a user might not be able to think about all the possible consequences/scenarios that can happen and so having some default/preselected value/thing can provide the best user experience for everyone. At this point I should say that in my opinion the above mentioned situation where the developer cannot test all scenarios and there is too much freedom is exactly the current situation with the blocks... I have seen block combinations that do not work well on mobile phones, headers which do not work on small screens etc. This is all result of too much freedom. However, I am well aware of the advantages of letting you decide some things. In the future redesign I would therefore like to use some recent new techniques of CSS that allow fluid, responsive layout, which can still partly be determined by you, but which always shows nicely on all screens in all possible combinations. One other problematic feature is the "mega menu". There is now almost endless number of possible layouts and this makes it problematic to show on smaller screens or optimize.
- make your station the priority - this is sort of repetition of what I said in the above paragraphs, but the emphasis should be put more on your station. From my own experience I know that people are mostly interested in the data from your station, that's your USP (unique selling point)! It is nice to have a page that includes everything from tide heights, earthquakes to air traffic, but.... this information is available at other websites, usually in a much better and detailed form because those pages concentrate just on that particular thing. And also, the more we use this, the more dependent we become and things can - and will (sooner or later) - break. One must find a compromise. For example, I definitely do want to include some dependent stuff - forecast, radar images... things like this are very important and weather-related. But I can say right a way, that some things I just reconsidered and think they do not have a place in future redesign - air traffic, sea traffic, ISS map... Though if someone really wants to there will be ways of creating custom pages and you can therefore use those as well should you really think this is what people look for at your website.
- speed - one of the things that form the core of the template and as I said, are not very well optimized, is the database. This leads to the fact that it might take very long to load some statistics in cases where there is lots of years of data. There are ways of making these calculations in a better, faster way.
I already have approximately 100 responses from you (the questionnaire I posted link to at the beginning of this post).
Here are some very important things based on your answers and I also include my reaction why I included this question and what the results mean for me.
For whom is your webpage primarily?
Over 70 % of you said the page is for general public, 20 % said it is for you and your friends and only 10 % said it is for themselves. Now think about this very carefully.... this is exactly why it is sometimes better to trust the developer and let them choose some things. Think about the fact that you are creating the page for "others", so in cases where you have some very special preferences this might not be what the people want. Now you might say "how does the developer know"? Well of course I dont always know, but as a developer I read about things, have some experience, read about UX things, know how the scripts work and how to set them up to make most use of them. I am not saying I will be the one to say "all templates will now be blue", but there are things where I think it would be useful if I decide how things should be.
Do you prefer simpler and faster setup and simpler page or a more complex page, which can provide more info for the enthusiasts but also be confusing for others and take more time to set up?
I have to say I was very curious about this one. I originally thought that none of these two extremes is ideal. In my opinion a compromise must be made. If we say that an extremely simple page has a score of 10 and an extremely complex page has a score of 100, then I would say one must try to make a page with a score of 50. But I wanted to know what you think. And the results of the survey actually proved that I should do a page with a 50 score - 45 % of you want a rather simple page, 55 % of you want a more complex page (so ok I can make a page that is like a score 60 ). If you asked me, what score would you give to MT in the current version? I would say 80 to 85. And it is because of the very high number of blocks, plugins and too many pages that use external sources and are not really weather-related and I have had users emailing me that they tried MT, but decided not to use it because it is too difficult to set up and too complex.
Layout
I have asked you if you prefer a complete freedom over the layout, a semi-variable layout or a fixed one. The last option is something you do not want. You want to have a control over at least some things in terms of the page layout and so I will take this into account. However I will probably not allow as much freedom as there is now with multipleBlocks, header blocks, footer blocks, subBlocks... well you know what I am talking about So in practice, I might for example let you choose which content you want to show and which you do not want to show and I might also let you decide the order of things on your homepage. But I might be the one to decide the sizes of objects on the homepage, size of columns - and all this to offer the best user experience. I would choose a size that works best for such content and layout which is easiest and nicest to use by the end user. It is especially the multipleBlocks and subBlocks that were giving me a headache when some user emailed me that they created a combination that does not work well on mobile phones or that shows differently in some other browser.
Theme
Question was simple - do you prefer light theme, dark theme or you want both and possibility to switch. I have to admit I sort of knew what the answer will be and indeed it was - 60 % of you want the possibility to switch themes and so I will also take this into account. The remaining 30 % wanted a dark theme and only 10 % a light theme only.
Dependence
I have said above that it is important to find a balance between external stuff that might be great but puts your page at risk of becoming non-functional in cases the external data source changes. On a scale from 1 (100% independent) to 10 (100% dependent) vast majority of you answered 5. So it is in accordance with my idea to find a balance. Other popular options were 3 (rather independent and station-oriented) and 7 (more dependent).
User - design change
This was an interesting one, but clearly, 80 % of you want to set the design/layout yourself and not let the user change it. By letting user change it I meant allowing the user to for example drag/drop content and reorder things and save this as a local cookie so that each user can have their own layout. Given 80 % of you would prefer having a fixed layout (i.e. fixed to what you decided), I will not consider this option and it means your page will look the same for everyone (this of course does not include the possibility to change units or language, that will remain as it is not really a layout change).
Pricing
Meteotemplate has always been donationware. I will now be completely honest. At the beginning back in 2015 I did not really care about costs, it was and still is a hobby. However, with increasing user base these costs became more significant. Given the website traffic I had to upgrade my hosting plan several times, there is the cost for domain, in the future I would like to also pay for https, which is still something meteotemplate.com does not use (yes... shame on me ). Also licenses for some software that allows me to create MT or offer some stuff cost something. Last but not least, I am now not supporting 20 or 30 users, but rather 1000-1500. MT is a hobby and it is not my primary source of incomes, but I need to make sure at least the costs are covered and if I have more it can allow me to offer something more. 71 % of you seem to understand this and would even be willing to pay some regular payment for extra stuff. Don't get me wrong, I know well how "popular" subscription based services are... however think about it from the developer´s point of view. You install a software, you pay for it. And that's it.... Lets imagine the service costs 10 EUR: First month the developer sells 10 licenses, making 100 EUR and supporting 10 users. Next month again 10 licenses. But... now we have again income of 100 EUR/month, but we already support 20 users. And so on... As you can imagine you can see that this situation where the amount of work increases every month, but incomes remain the same is not sustainable for a very long time....So my idea is that I can create a donationware version, i.e. try it, works, donate. And then offer some extra features for some regular payment (subscription -based model). 71 % of you seem to be interested (at least in theory, I know in practice it would be less, but still).
Importance
On a scale from 1 (not important) to 5 (very important), how important are these:
- station data - basically 100% of you answered 5 - which is what I expected and which shows exactly why I think this should be the main thing on your website, the most important content and thing to concentrate on - stats and visualizations from your data!
- forecasts, radar images - on average 4-5 - so these obviously need to and will be included as well
- page design - on average 4 - this is important and it also means I should make sure the page looks good on every device, in all major browsers. And that I allow you to switch themes like you seem to want.
- extra information - earthquakes, tide height etc. - on average 2 - this proves my point in the above text, such information is not very relevant to your page and those few who want it can add it via some custom-made page
Updates
Over 66 % of you use either WeatherDisplay or Meteobridge - this is good news as these provide best results. Developers of both (Brian for WD and Boris for MB) co-operated me in the past and integrated MT into their software so it is very easy to set up and very reliable. 12 % of you use Cumulus, which is also relatively easy to use. This of course does not mean other means of updates will not be possible, I definitely want to support eg. WeatherCat, WeeWx, NetAtmo, WeatherLink or WeatherUnderground. This is rather to tell me how to write the wiki and how to lay out the update setup page.
Satisfaction
62 % of you gave template 5/5 in terms of user satisfaction. Thanks a lot for that, I did not expect such positive feedback. So lets make sure a redesign will make things even better.
Ideas
Lets quickly look at some of your ideas from the survey:
- social networks
- extra sensors - support for extra sensors (soil temperature, lightning, leaf wetness etc etc.) was partially added in later versions of MT, but it there is lot of space for improvement. This data is not much used in the template and also only 4 sensors of each type are supported. Future version should make more use of this and also support more sensors.
- mobile view is too simple - future redesigned template will not have any desktop or mobile version. There will only be one homepage and that homepage should work on all devices.
- many of you emphasize they want to emphasize your station data more, instead of extra stuff - this was already talked about above, I agree
- preinstalled blocks - there might not be blocks like you know them now in the future, but I do think it would be better to have some things preinstalled so that your page is not completely blank once you install it (current situation). Why it is so now? Well mostly because of the fact there is so many dependent things and because things break so often (described above) that having something preinstalled would mean I would have to update the template every time something breaks. If I only include station-related blocks in the preinstalled version I guess it would work fine and save time for many.
- multiple homepages - now this is an interesting one. Lets make things clear. There should and will only be one homepage - that is why it is called a homepage. However, I think the idea of having for example a separate page optimized for TVs, tablets etc. (static view of station data) is interesting and usable.
- SQL dependence - some of you do not like the dependence on MySQL. I will however not change this. I know there are better alternatives - eg. PostGres, however, MySQL is the feature provided by 90% of external webhostings which is what most of you use. Only very small portion of users use their own server and so not using MySQL would make the template totally unusable for some. Also, there are other templates that do not use SQL. MT has always been the one that uses SQL, its unique feature. This offers much more possibilities to calculate things, to have complete control. And in the meantime it is more complicated to setup. There is always pros and cons for everything. I will use MySQL in the future again.
- reduce database size - this would theoretically be possible. Currently the data is saved every 5 minutes. Reducing database size would mean data is only saved in longer intervals. I think it could be possible to make this changeable by you in the future. But of course it will mean less data and less accuracy.
- implement possibility to send SMS (alerts etc.) - there is no free universal service on the internet that would allow this. These services are usually nation-specific and paid, so I do not consider this.
- calculate sunshine duration from solar radiation data - this is in theory and practice impossible. You can only make estimates. Sunshine duration is measured by a different device, solar radiation does not provide this information. The estimates are still just estimates and being a perfectionist I do not like that idea very much.
- Wordpress plugin - this is a very interesting one. First let me explain something. Sometimes I get questions about Wordpress and MT. Think about MT as another Wordpress. Wordpress is a template for making a website, MT too, but WP is of course more general. It is therefore impossible to run "MT inside WP". It is like trying to run Wordpress inside Meteotemplate. I can, however, imagine having some plugin that would only show some basic data from your station within a WP page. I have, however, zero experience with creating WP plugins so if this ever gets implemented it will take more time, though I agree it is an interesting idea.
OK... I think I said all I wanted (applause to those who have read it all ). There are lots of ideas, lots of things to consider. It will take time. In summary, my goal is to create a template that would still respect the main strengths of MT (using a MySQL database, including complex, unique statistics, let you customize the page) and in the meantime make it nicer and better adapted to the current world of internet and internet usage (design, responsiveness etc.) and also, make it more bulletproof, i.e. concentrate on station data more and maybe not include some less related stuff. Also make it easier to set up and faster to run.
Feel free to comment on anything I wrote above. Let´s have a discussion about this. I am curious about your ideas, whether you agree or disagree with me, what you think... I will take my time, it is better to take more time and to create something good than vice versa.
Hope you are all doing fine in these uncertain times
Jachym