Template:TechIcon/doc and User:Rayanth/WikiStatus: Difference between pages

Template page
< Template:TechIcon(Difference between pages)
imported>76561198045853337
No edit summary
 
imported>76561198018895007
(Created page with "==DSP-Wiki Status Update, 6-29-2021== Hey everyone, I decided to sit down and give a detailed status update on DSP-Wiki, progress on its projects, and a look-ahead into its f...")
 
Line 1: Line 1:
__NOTOC__
==DSP-Wiki Status Update, 6-29-2021==
Usage:<pre>
{{TechIcon
|TechName=
|Level=
}}
</pre>


NOTE: The TechName is used to construct the filename for the icon shown. For example, providing "Unknown" as in the example below, the template looks for and loads "Tech_Unknown.png". If the image does not exist, it will show as a broken image. Be sure to spell things the same. For multiple-word item names, use a space between the words as per normal. If the Level parameter is specified and equal to "1", the template will look for the filename "Tech_Unknown_1.png" instead.
Hey everyone, I decided to sit down and give a detailed status update on DSP-Wiki, progress on its projects, and a look-ahead into its future. Please bear with me, I tend to get wordy!


The image will link to the page with a name in the "TechName_(Tech)" form if Level is not specified, otherwise it will link to the "TechName_(Upgrade)" page. The word in the parentheses may be overridden by supplying the optional "Type" parameter.
== Repeated Delays to Ongoing Projects ==


Please accept my apologies for the repeated delays to ongoing projects. Namely, the new Skin, the Cargo extension for query-able data, and the automated import scripts - they've been hold for a couple of months now, for a few reasons.


Example: The following wiki code<pre>
=== Reason 1) Work-Life Balance ===
{{TechIcon|Universe Exploration|1}}
</pre>
OR<pre>
{{TechIcon
|TechName=Universe Exploration
|Level=1
}}
</pre>
Will display an icon with link the item:


{{TechIcon
Without going into private details about why I can't work on the Wiki as well from home, suffice it to say that my best time for working on it was always during "down time" at work, where I have an isolated environment free from distraction that lets me really focus on programming. Recently, one of my actual work side-projects gained a sudden boom in visibility, and I've had to spend every spare moment at work, working on that project. This prevents me from working on the Wiki while at work, which is probably a good thing as it does sort of let me keep my job, but it's a bad thing for the wiki, as I just haven't had time to look at it, in my 'best programming place'.
|TechName=Universe Exploration
 
|Level=1
=== Reason 2) Interest ===
}}
 
While I have not lost interest in making sure that Dyson Sphere Program has the best wiki it can have, I have lost a little bit of interest in the game, recently. As some of you may know, I was one of the 13 closed beta testers to first play the game back in December 2020, and to say I was excited about the future of the game would be an understatement. Within a day of first playing, I decided to start up this Wiki so that the game could have the kind of Wiki support it needed, rather than some watered down, difficult to navigate thing on Fandom. I put a lot of energy into making the DSP-Wiki what it is today, but as game updates started stretching longer and I finished the game three times over, I found no drive to continue to play it, and without playing the game it's hard to keep my attention on DSP-Wiki.
 
[Side note, if you have ever played EVE Online, I run [https://wiki.eveuniversity.org that wiki] as well (go ahead and peek, you'll see a great deal of similarity in the Skin, because I wrote the Skin for that wiki and stole it for this one as a temporary). Similarly, as I've stopped playing EVE for most of this year, I've not paid much attention to that wiki either :( ]
 
=== Reason 3) Difficulty ===
 
I am a 41-year-old self-taught full-stack web developer and application programmer. I've been programming since I was 8, using BASIC in MS-DOS on a Tandy 1000TX before hard-drives or Windows were even a thing (back in my day!). But any programmer, and certainly any web developer, will tell you that no matter how you learned or how long you've done it, it's not exactly "easy". It's not rocket science, either, but... there's a lot of trial and error, and a lot of failed attempts and smacking of the forehead involved.
 
The MediaWiki software that runs almost all wikis, is written in a programming language called PHP. PHP is quite old - it was created in 1994 - and it's got some really old, and really ''odd'' programming paradigms. Almost all modern programmers thoroughly hate it, myself included. As I never bothered to try to learn it, stumbling across various issues and trying to solve them while running DSP-Wiki has been a difficult challenge. Until very recently, MediaWiki "Skins" (the theme/look/feel of the site) had to be very carefully crafted in PHP to make sure the right HTML tags would end up in the right places. While developing DSP-Wiki's own custom Skin, I ran into numerous issues with that very process. Thankfully, with the latest and greatest MediaWiki, there is a templating system that I can make use of to make this much easier, and I plan to do so.
 
== OK, Enough with the excuses, what about the future? ==
 
I am not here to write about the demise of the wiki - quite the opposite - I made a promise when I created the wiki that I would keep it up and running as long as I am financially able, and my financial ability is quite capable.
 
I have several days off coming up and currently plan to try to use them to put a lot of work into the Wiki. This will almost certainly mean some brief Wiki outages, as well as some big changes to how it operates behind the scenes (which may or may not impact how you interact with it)
 
=== Management ===
 
A while ago I put out a call for more Wiki Administrators to get some help breathing new life into the wiki. Only one person answered that call, and he's been great in the help he's given, but considering it's a volunteer-only role, he understandably gave preference to some other things in life, much the same as I have. He's still with us, just limited on time like me. If anyone out there would like to volunteer to help with administration of the wiki (minor stuff like validating data, verifying edits made by others, watching for trolls) please reach out to me on Discord. There's a link on the main page to the DSP-Wiki's Discord.
 
=== Accounts ===
 
Initially, I had planned to launch the wiki ''before'' the game had officially hit Early Access, and I was concerned about trolls ruining the quality of the content. (If you're not aware, there are people who write scripts that find new wikis and deliberately sabotage them). On the EVE Online Wiki, we combat this by requiring users to log in with their actual EVE Online account, so that edits can be tied back to their character in-game. In EVE Online, a character's reputation is incredibly important, so this is a sufficient deterrent to trolliing.
 
Thinking to implement something similar on DSP-Wiki, I decided to use the Steam Authentication system. This system is totally secure - the Wiki never sees your password, you're actually logging in on Steam's website. All that happens from the Wiki's perspective is basically: Wiki tells Steam that you want to log in. Steam authenticates you, then tells the Wiki that you're authenticated. Wiki gets a few basic details about your account, and an official "yes they are who they say they are, go ahead and let them in". That's it.
 
Apparently, this is poorly understood, or still too suspicious, and potential contributors do not like it. So, one of my biggest plans for my upcoming vacation is to try and decouple the Steam authentication from the Wiki.
 
This is a big change, and may result in numerous outages. One of the biggest impacts from it will be that all existing accounts will be disabled, and you will need to register using another account system. To maintain your history, you will be able to request that I merge your old Steam-based account into your new one.
 
=== Database & Webserver ===
 
Behind the scenes, I made a poorly-informed decision when I created DSP-Wiki, to use an existing installation of PostgreSQL for the database server, rather than the recommended MySQL/MariaDB. I did not know at that time, as I do now, that it would prevent me from using certain MediaWiki Extensions entirely, and cause issues with others.
 
I need to migrate the database back from PostgreSQL to Maria, but this is not an easy task - there is no simple "Export, Import, call it good" method. My plan to accomplish this, at the same time as the Account system change, is to rebuild DSP-Wiki as a whole new installation using MariaDB, and then use some scripts to Export/Import each database table in full. This will take some time to get it right, fully test it, and decide to make the switch. While the Building/Copying/Testing is going on, the current Wiki will remain active. When the decision is made to make the switch, some changes need to be made on the web server that may result in some interruptions to service. They will be minimized as much as possible.
 
I also have a not-exactly-standard Web Server running the Wiki behind the scenes. Most *nix-hosted websites run on either Apache or Nginx, but DSP-Wiki is hosted on OpenLiteSpeed. This was an old decision made for a different website hosted on the same server, and with more experience of running the DSP-Wiki under my belt, I'm realizing it was a poor decision to try to host the wiki on it. When I make the upgrades to the database, I will also be making a change to the web server software, probably to Nginx. This could also result in some interruptions to the service.
 
=== Projects ===
 
After the Account and Database changes, I should be able to work on the Projects a little more easily. First, I will upgrade the MediaWiki installation to the latest version, and then I should be able to, in no particular order:
* Get the Cargo stuff set up properly in the Wiki's Templates to make data query-able.
* Begin to write the Templates that'll make the Skin work much more smoothly and give it a good new look.
* Get some LUA Scripting written for utilizing the Cargo data in the Wiki Templates such as ItemInfo, etc.
* Get started on other projects that have been planned/discussed in the DSP-Wiki Discord.
 
== Conclusion ==
 
I think that about covers everything. The wiki's not dead, I've just been very busy elsewhere in life and struggling to find time and energy to work on it. I have some plans coming up in the next couple weeks to fix some things about it, which will result in a change to the account system, make it easier for me to work on the Skin, and allow me to implement some Extensions that the current back-end will not permit.
 
After these changes are made, I sincerely hope that more folks will be willing to contribute and keep the wiki growing!
 
Thank you for your time, for your efforts, and for your understanding.
 
Sincerely,
- Rayanth

Revision as of 19:17, 29 June 2021

DSP-Wiki Status Update, 6-29-2021

Hey everyone, I decided to sit down and give a detailed status update on DSP-Wiki, progress on its projects, and a look-ahead into its future. Please bear with me, I tend to get wordy!

Repeated Delays to Ongoing Projects

Please accept my apologies for the repeated delays to ongoing projects. Namely, the new Skin, the Cargo extension for query-able data, and the automated import scripts - they've been hold for a couple of months now, for a few reasons.

Reason 1) Work-Life Balance

Without going into private details about why I can't work on the Wiki as well from home, suffice it to say that my best time for working on it was always during "down time" at work, where I have an isolated environment free from distraction that lets me really focus on programming. Recently, one of my actual work side-projects gained a sudden boom in visibility, and I've had to spend every spare moment at work, working on that project. This prevents me from working on the Wiki while at work, which is probably a good thing as it does sort of let me keep my job, but it's a bad thing for the wiki, as I just haven't had time to look at it, in my 'best programming place'.

Reason 2) Interest

While I have not lost interest in making sure that Dyson Sphere Program has the best wiki it can have, I have lost a little bit of interest in the game, recently. As some of you may know, I was one of the 13 closed beta testers to first play the game back in December 2020, and to say I was excited about the future of the game would be an understatement. Within a day of first playing, I decided to start up this Wiki so that the game could have the kind of Wiki support it needed, rather than some watered down, difficult to navigate thing on Fandom. I put a lot of energy into making the DSP-Wiki what it is today, but as game updates started stretching longer and I finished the game three times over, I found no drive to continue to play it, and without playing the game it's hard to keep my attention on DSP-Wiki.

[Side note, if you have ever played EVE Online, I run that wiki as well (go ahead and peek, you'll see a great deal of similarity in the Skin, because I wrote the Skin for that wiki and stole it for this one as a temporary). Similarly, as I've stopped playing EVE for most of this year, I've not paid much attention to that wiki either :( ]

Reason 3) Difficulty

I am a 41-year-old self-taught full-stack web developer and application programmer. I've been programming since I was 8, using BASIC in MS-DOS on a Tandy 1000TX before hard-drives or Windows were even a thing (back in my day!). But any programmer, and certainly any web developer, will tell you that no matter how you learned or how long you've done it, it's not exactly "easy". It's not rocket science, either, but... there's a lot of trial and error, and a lot of failed attempts and smacking of the forehead involved.

The MediaWiki software that runs almost all wikis, is written in a programming language called PHP. PHP is quite old - it was created in 1994 - and it's got some really old, and really odd programming paradigms. Almost all modern programmers thoroughly hate it, myself included. As I never bothered to try to learn it, stumbling across various issues and trying to solve them while running DSP-Wiki has been a difficult challenge. Until very recently, MediaWiki "Skins" (the theme/look/feel of the site) had to be very carefully crafted in PHP to make sure the right HTML tags would end up in the right places. While developing DSP-Wiki's own custom Skin, I ran into numerous issues with that very process. Thankfully, with the latest and greatest MediaWiki, there is a templating system that I can make use of to make this much easier, and I plan to do so.

OK, Enough with the excuses, what about the future?

I am not here to write about the demise of the wiki - quite the opposite - I made a promise when I created the wiki that I would keep it up and running as long as I am financially able, and my financial ability is quite capable.

I have several days off coming up and currently plan to try to use them to put a lot of work into the Wiki. This will almost certainly mean some brief Wiki outages, as well as some big changes to how it operates behind the scenes (which may or may not impact how you interact with it)

Management

A while ago I put out a call for more Wiki Administrators to get some help breathing new life into the wiki. Only one person answered that call, and he's been great in the help he's given, but considering it's a volunteer-only role, he understandably gave preference to some other things in life, much the same as I have. He's still with us, just limited on time like me. If anyone out there would like to volunteer to help with administration of the wiki (minor stuff like validating data, verifying edits made by others, watching for trolls) please reach out to me on Discord. There's a link on the main page to the DSP-Wiki's Discord.

Accounts

Initially, I had planned to launch the wiki before the game had officially hit Early Access, and I was concerned about trolls ruining the quality of the content. (If you're not aware, there are people who write scripts that find new wikis and deliberately sabotage them). On the EVE Online Wiki, we combat this by requiring users to log in with their actual EVE Online account, so that edits can be tied back to their character in-game. In EVE Online, a character's reputation is incredibly important, so this is a sufficient deterrent to trolliing.

Thinking to implement something similar on DSP-Wiki, I decided to use the Steam Authentication system. This system is totally secure - the Wiki never sees your password, you're actually logging in on Steam's website. All that happens from the Wiki's perspective is basically: Wiki tells Steam that you want to log in. Steam authenticates you, then tells the Wiki that you're authenticated. Wiki gets a few basic details about your account, and an official "yes they are who they say they are, go ahead and let them in". That's it.

Apparently, this is poorly understood, or still too suspicious, and potential contributors do not like it. So, one of my biggest plans for my upcoming vacation is to try and decouple the Steam authentication from the Wiki.

This is a big change, and may result in numerous outages. One of the biggest impacts from it will be that all existing accounts will be disabled, and you will need to register using another account system. To maintain your history, you will be able to request that I merge your old Steam-based account into your new one.

Database & Webserver

Behind the scenes, I made a poorly-informed decision when I created DSP-Wiki, to use an existing installation of PostgreSQL for the database server, rather than the recommended MySQL/MariaDB. I did not know at that time, as I do now, that it would prevent me from using certain MediaWiki Extensions entirely, and cause issues with others.

I need to migrate the database back from PostgreSQL to Maria, but this is not an easy task - there is no simple "Export, Import, call it good" method. My plan to accomplish this, at the same time as the Account system change, is to rebuild DSP-Wiki as a whole new installation using MariaDB, and then use some scripts to Export/Import each database table in full. This will take some time to get it right, fully test it, and decide to make the switch. While the Building/Copying/Testing is going on, the current Wiki will remain active. When the decision is made to make the switch, some changes need to be made on the web server that may result in some interruptions to service. They will be minimized as much as possible.

I also have a not-exactly-standard Web Server running the Wiki behind the scenes. Most *nix-hosted websites run on either Apache or Nginx, but DSP-Wiki is hosted on OpenLiteSpeed. This was an old decision made for a different website hosted on the same server, and with more experience of running the DSP-Wiki under my belt, I'm realizing it was a poor decision to try to host the wiki on it. When I make the upgrades to the database, I will also be making a change to the web server software, probably to Nginx. This could also result in some interruptions to the service.

Projects

After the Account and Database changes, I should be able to work on the Projects a little more easily. First, I will upgrade the MediaWiki installation to the latest version, and then I should be able to, in no particular order:

  • Get the Cargo stuff set up properly in the Wiki's Templates to make data query-able.
  • Begin to write the Templates that'll make the Skin work much more smoothly and give it a good new look.
  • Get some LUA Scripting written for utilizing the Cargo data in the Wiki Templates such as ItemInfo, etc.
  • Get started on other projects that have been planned/discussed in the DSP-Wiki Discord.

Conclusion

I think that about covers everything. The wiki's not dead, I've just been very busy elsewhere in life and struggling to find time and energy to work on it. I have some plans coming up in the next couple weeks to fix some things about it, which will result in a change to the account system, make it easier for me to work on the Skin, and allow me to implement some Extensions that the current back-end will not permit.

After these changes are made, I sincerely hope that more folks will be willing to contribute and keep the wiki growing!

Thank you for your time, for your efforts, and for your understanding.

Sincerely, - Rayanth

🍪 We use cookies to keep session information to provide you a better experience.