Git Product home page Git Product logo

Comments (12)

MineRobber9000 avatar MineRobber9000 commented on June 6, 2024 3

I'm not sure creating this issue was a good idea; I'm going to use this space to make a case for a new website that isn't weirdly slanted against nesbox.

The issue at hand is that there are some problems with the TIC-80 website:

  • WebGL being disabled causes cart loading to crash silently (#1692)
  • There's no search functionality (#1575)
  • There's no categories for genres (#1436)
  • A lump sum "website improvements" issue (#1335), which includes items for:
    • No user bios
    • "fix black background for cart player", whatever that means (maybe this was fixed and just not checked off?)
    • No favorite games section for a user
    • No cartridge chunk browser
    • No on-screen controls in web player
    • You can't publish directly from the Create area
    • There should be a page for recently "popular" devs (in the last month)
    • In addition to these items, other users brought up:
      • No way to edit or delete comments
      • No way to mention users in comments
      • No way to reply to comments
      • No way to attach files to comments (though this should probably be limited to images)
      • No way to delete uploaded cartridges (you have to replace them with placeholders, which clog up category pages)
      • No way to follow/unfollow developers (though this seems more like a wishlist item than a real problem)
      • No way to delete account (without asking nesbox nicely)
      • No way to change account username/password
  • No report button for spam comments (#1133)
  • Google reCAPTCHA is inaccessible to Chinese visitors (#441)
  • No easy way to go from the website to TIC-80 itself via getting a path for surf (#409)

That's... a lot of problems. 21, if I'm counting correctly.

Now, it has been stated previously that nesbox is not a web developer, and thus, it takes time for these problems to be fixed/features to be added. A suggestion was made to open source the TIC-80 website, allowing web developers in the TIC-80 community to take over developing the site (#1659). One developer even offered their help, and noted that others in the community had similarly offered to help. nesbox responded, saying that he was going to open-source the website, but that he needed to "prepare the sources" (probably clean up some spaghetti code), and asking people to please wait.

That was 2 years ago. The website is still not open-sourced.

Now, I'm sure he's a busy person; Skeptim has pointed out that he seems to only have public GitHub activity on weekends, which seems to indicate that he only has time to work on TIC-80 on weekends. Given the limited amount of time he has to work on TIC-80, it would make sense that the website code cleanup fell to the wayside in favor of more active development on TIC-80 itself.

However, it's been two years. Unless the code currently running tic80.com is a veritable Flying Spaghetti Monster, you'd imagine a code cleanup would be finished by now.

Thus, the argument for a new website: either nesbox is too busy to clean up the tic80.com code to a degree where it would be presentable as an open-source project, or the tic80.com code is so flawed we'd be better off starting over.

I'm going to go the opposite direction of @TimotheeGreg; I don't necessarily think it's "dangerous" to have the tic80.com source code be closed-source (while a bus factor of 1 is certainly something we'd like to avoid, open-sourcing the website isn't magically going to fix that). My argument is more along the lines that the TIC-80 website is missing a lot of features that other fantasy consoles with websites have, and if nesbox doesn't have the know-how or the skills to add those features, making the website open-source and allowing the community to develop it would help take that burden off of his shoulders.

from tic-80.

nesbox avatar nesbox commented on June 6, 2024 1

Also, I'm not against creating an alternative site, I'm not sure if I will replace it in the future with tic80.com, but I can put links to it on the main page, and it can also be added to "surf" if it will support a simple API.

from tic-80.

TimotheeGreg avatar TimotheeGreg commented on June 6, 2024

I just add that it's dangerous for TIC-80 long term future to have a closed official website depend on one person.

from tic-80.

TimotheeGreg avatar TimotheeGreg commented on June 6, 2024

I totally agree with this message! Thanks to make it more clear.
It wasn't against nesbox at all, but rather to make his life easier. That's what I try to do with my contributions in general. It was also to work hand-in-hand with him. Sorry if my message wasn't clear. My last comment was probably clumsy.

from tic-80.

nesbox avatar nesbox commented on June 6, 2024

To be honest, I still can’t open the source code of the website in its current state, I'm not an expert in web development and I’m afraid that the source code can be used by attackers for hacking, etc.

from tic-80.

MineRobber9000 avatar MineRobber9000 commented on June 6, 2024

To be honest, I still can’t open the source code of the website in its current state, I'm not an expert in web development and I’m afraid that the source code can be used by attackers for hacking, etc.

That's a perfectly valid fear to have, though I'm not too sure there's really that much of an attack surface on tic80.com besides DDoS attacks (that don't need code access) or spam attacks (that, again, don't really need code access). If the code was open-source, perhaps the collective effort of the community could take care of bugs you hadn't even considered.

Also, I'm not against creating an alternative site, I'm not sure if I will replace it in the future with tic80.com, but I can put links to it on the main page, and it can also be added to "surf" if it will support a simple API.

I guess, if we're going the "alternate site" route, it'd be a good idea to abstract the magic fs functions that currently attach to tic80.com so new sites could be added (it'd be really cool if it would be possible for TIC-80 users to decide which sites they could use surf to access without needing to rebuild TIC, with tic80.com as the default option for new users).

from tic-80.

TimotheeGreg avatar TimotheeGreg commented on June 6, 2024

Ok, cool, thanks for the answer.

It's cool to have one website with all carts, but we can go the "alternate site" route if it's easier, it's fine by me.

To be honest, I still can’t open the source code of the website in its current state, I'm not an expert in web development and I’m afraid that the source code can be used by attackers for hacking, etc.

Very naive question : Would it be possible and would it lighten your workload to share the code with a few trusted volunteers with web development expertise?

from tic-80.

nesbox avatar nesbox commented on June 6, 2024

Very naive question : Would it be possible and would it lighten your workload to share the code with a few trusted volunteers with web development expertise?

I don't see much difference between showing the code to a few people or showing the code to everyone. I think I should open the code one day, I don't see any other option.

from tic-80.

TimotheeGreg avatar TimotheeGreg commented on June 6, 2024

Ok, thanks

from tic-80.

atesin avatar atesin commented on June 6, 2024

Very naive question : Would it be possible and would it lighten your workload to share the code with a few trusted volunteers with web development expertise?

I don't see much difference between showing the code to a few people or showing the code to everyone. I think I should open the code one day, I don't see any other option.

maybe the whole "tic80 website code" is not necessary, only just the basic database structure, so based on that volunteers could write a new entire and enhanced (and more secure) tic80 website, better than existing one

i mean for example, if the website uses sql, the "create table" sentences with comments, or a little dump like "mysqldump limit 2" or something, as example

... or create and publish a little api to abstract and interact with db (javascript, ajax, or whatever), but i think is more effort and will be the same, since the api also will have to have wirte access functions too

we have to be jealous with our databases, the website could be taken down, but if the database is compromised is very dangerous, because if the website alone is hacked, it can be reconstructed from te db, but if the db is modified we are lost, because of that my advice is always be jealous with the database, and MAKE HISTORICAL BACKUPS often, one daily at least

so my vote is for share jealously your DATABASE ACCESS, more than the website code itself, with a group of trusted volunteer developers (and how the surf command works, to get improved also!)

from tic-80.

MypkaMax avatar MypkaMax commented on June 6, 2024

My idea for the new website is to allow users to delete their uploads and comments, as well as to be able to simply upload an image for their profile icon and even change palettes for their profile picture. The way icon editing is handled within the website is clunky, too, so it could use refining.

from tic-80.

MatterNoise avatar MatterNoise commented on June 6, 2024

Creating a fan site scares me a little, because a trusted member may be hacked and make malicious changes to the website, unless the changes are reviewed by other members.

from tic-80.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.