Sapphire, Vidya.fm, GitGud, and more. A year’s worth of updates to projects and the plans ahead
It’s been almost a year since I posted a blog. I tend to do small updates via twitter. This will be a massive blog post to talk about the following projects and sites:
In that order. You can click on the links above to skip to certain site contents.
I would like to say thanks to the people who that have donated to keep the servers afloat. It’s understatement to say I am poor. I spend most of my time most of my days for “work” making sure the sites are up and working and dealing with the content on them sometimes (8archive and Mixtape really). If you want to donate, donate button on the top right menu is there. Servers costs currently $245 /mo so it’s hard when you make very little. I estimate I make <$6000 a year so it’s not easy spending half of your income on servers.
GitGud has had a lot of changes the past year.
I changed from GitGud.net to GitGud.io back in May because the .net domain is not in my control and I wanted to do a switch way ahead of a potential domain disaster which is approaching on October 10th. We’ve been pretty successful in the switch especially getting people to use the new domain.
GitGud.io is also a new instance. When I had GitGud.net dumped on me back in November, it was a manual installation done by other people. GitLab mainly supports the omnibus installation and transferring stuff between GitLab instances requires both to be the same version. It was behind many many versions on gitgud.net. So a solution was to just simply start over. Not great, but I didn’t have a lot of choices. By the time GitLab staff got back to me on how to do the whole transfer process, it was already too late. But it’s okay. If you still need your GitGud.net code, talk to me. It still exists.
GitGud has been getting a lot of new activity the past month or so. The Webm for Retards repo moved to GitGud after GitHub removed them. We average 20 new users per day on GitGud.io now. Sometimes even more. With all the new exposure, I made sure GitGud.io was setup properly so it now has https (by default), our own SSL certificate to fix Cloudflare’s shit certificate that doesn’t agree with some clients, uses the standard SSH port, and so on. I don’t get emails anymore about real issues so that’s excellent.
Something I need to do with GitGud though is rebrand it with a standardized new logo, typeface, make a homepage website with information, and customize the logo and footer info on the Git parts of the site from GitLab to GitGud branding/ It’s hard though because the code is so all over the place with templates and files, I have no idea where to make these changes. But I haven’t put a lot of effort into it as it’s not mission critical.
GitGud is the most important website in my possession. It’s uptime and usability is of utmost importance to me. Hope you all enjoy it.
A month or two ago, I got a message about how the owner of tweetsave.com needed assitance. After a few conversations, we decided that I would take up the hosting and system administration of TweetSave and manage that stuff for him as he wasn’t too experienced in web server management. My hosting is also cheaper and twice as powerful so it was a win win. I added secure HTTPS to TweetSave. Not much has changed on TweetSave, but because of the amount of SSD storage space we have to use, TweetSave saves images to it’s own hardware instead of to Imgur through an api, which also saves the owner money and ensures we have control over the archived image, not Imgur. I’ve also suggested other changes to have avatars saved locally too and the avatars of when the tweet was done, not just the latest one.
I hope to help out TweetSave.com by doing design and logo work for it to have better branding and aesthetics.
8archive has been in the dump since it was handed over to 8chan / 2ch (Frederick aka Hotwheels aka Copypaste). But it isn’t his fault. 8archive runs on really fucking shit hardware compared to what it used to. The CPU for the main server is under massive load. It can’t handle the hundreds of visitors per second visiting the site, serving the images, and running the backend fetcher.
There was a point where the CPU and RAM usage for the database and Search was so massive, Search wouldn’t work at all and all this caused asagi to crash often too.
So to remedy this, I setup a SSD quad core server on a host near the 2ch datacenter, for latency reasons, and put the database and search on it. This has been an okay solution. Search still crashes from the lack of ram to use. Not much I can do until the new 8archive database server is ready at the 2ch datacenter. But the SSD has been a great help for the database and search functions because the speed of seeking and serving the content is faster than the server seeking it from the hard drive that is being used for serving media already. The database uses about 4-6 gigabytes and search uses about 4-7 gigabytes.
Soon I want to get 8archive’s main server running hhvm to reduce the load on the server by like 20 fold and decrease load time to the client by seconds. That’s still issues to figure out. 8archive currently uses 1.6 terabytes.
The replacement for 8archive isn’t really ready at all. It’ll come months after Infinity Next is done and deployed. When this happens, 8archive will no longer run the post fetcher and what ever was archive will sit there. Forever. ;_;7
This is something so very new, I don’t even know all the details on how this will work yet either. But a week or two ago I made a tweet announcement about it.
Sapphire is an open source dev group for the community to build alternatives and provide new platforms for users. pic.twitter.com/XaICDSyk42
— Drybones △ (@Drybones5) August 13, 2015
So what is Sapphire really? It’s a lot of things.
- It’s a company to own/hold the core projects under it and pay developers it hires to work on those projects.
- Seeks to create useful and needed platform alternatives that are also open source.
- It’s a group for the community to organize around the projects it has under it’s umbrella
- It promotes open source community projects and gives them extra exposure to get help from community developers.
In the future, it maybe do more Linux oriented core projects. One day i hope it makes as big a splash in the open source (and Linux) community as Red Hat, Canonical, and SUSE have.
If you’re wondering if the logo has any significance, it does. A Sapphire is one of the hardest gems after Diamonds. A gem is usually polished off and cut to “perfection.” The “hi” highlighted in the logo is a symbol for the social aspect of Sapphire’s community and development. Sapphire also has “hire” to relate to being an open source and Linux company that hires people to develop. A Sapphire is blue and blue differs from Red Hat’s Red, Canonical’s Purple, SUSE’s green. The URL is a play on sounds. Sapph.io if you say it entirely sounds similar to sapphire.
The website url and Twitter is linked at the top of this section’s title. The website is still under construction but the Projects page has listings for you to look at.
Mixtape has been a weird project because of it’s weird needs. I had planned to do a pomf.se clone for a while but didn’t do much to make it. Then suddenly pomf.se out of the blue closed it’s doors and shut down. Some other clones popped up but some of them closed down from too much load on their servers. Some don’t do a very good job at providing a good service like not having https enabled or by default, not filtering through content to remove malware, getting the site removed from blacklisting to ensure it is not blocked by anything from accidents. Some take a while to grab URLs or load content.
So if you don’t know, I opened up Mixtape a couple months ago and since then the usage of Mixtape has rapidly gone up every week. At the time of this post, Mixtape.moe has 30 gigs of content and 7000+ files uploaded to it’s server. It uses Solid State Drives and a 1 Gigabit per second uplink to ensure it can handle just about any load I can expect in the current setting. Last week it endured transferring 5-6 terabytes of data from a 50 megabyte webm being featured on the front page of /r/DOTA2. It actively scans using multiple scanners every few minutes to keep the server clean of malware. It has a great paste feature that has replies, private pastes, and encrypted pastes.
Mixtape.moe is also the most expensive service I offer totalling at $80 /mo alone for it’s server.
The future of Mixtape.moe isn’t too clear but I want to improve it. I want to rebuild or heavily modify the service and include optional accounts for saving uploaded file urls and pastes. User custom urls so if you don’t want a random 6 hexanumeral url file name, you could have https://mixtape.moe/u/drybones/this_is_a_file.rar and some other features like click to copy the URL to the clipboard, viewable comic files in browser, file pages to have preview cards on Twitter and Facebook.
This may or may not be something any time soon. It’s certainly isn’t a priority for me right now. But since it’s a simple job compared to other projects in the works, it may be done sooner than others. Mixtape.moe joins other projects to be under Sapphire as an open source core project.
This project is very very new, it doesn’t even have a logo yet, so the details on this are sparse. It has GitGud’s name, but it’s actually tied in more with vidya.fm. It’s an open source live video streaming platform. It’ll be similar to the likes of Twitch.tv, Hitbox.tv, and Justin.tv. However despite being video game focused, it doesn’t mean it has to be video games you’re streaming and will have feature to have discovery of non-video games streams. For new games, hitbox has an issue where they don’t add new games until a week or two later which is annoying for discoverability. So instead you can add a game name if it doesn’t exist and a game album art and other people can use that that entry for discovering people playing new games until an official listing is put in.
Revenue would work in the same way as Twitch and Hitbox, advertisements on streams decided on by streamers. Some alternative advertising can be done though such as a streamer could decorate the page for a full design advert that can rotate.
Technologies to use would be socket.io for the chat and changing content. HTML5 player with MP4 videos unless webm can be used. The site hasn’t decided on what to use for the backend. Python, Ruby on Rails, or AngularJS. When a team is decided on, then the language will be too.
GitGud.tv thrives on the policy on not policing the content of it’s users, unlike Twitch, which bans for outrageous things on their streams or even not having video games on your stream. As long as the content is not illegal, the stream stays up. Reports don’t automatically take down a stream, something Hitbox does, despite having “relaxed policies.”
There is no open source solution that I could find that does this so I thought this would be very useful for everyone and provide more transparency into this rapidly growing market. This will gain a platform name in the future besides GitGud.tv. GitGud.tv will tie into vidya.fm.
And now the big kahuna.
First off, let me explain that Vidya.FM includes the Startbutton project now under it’s roof. If you don’t know, Startbutton was to be a video game reviews and database website. Vidya.FM was just going to be a video game radio. However instead, we’re making it into one massive website about video games under the Vidya.FM name. Startbutton is now just the name of the application platform for part of the website.
So you’re wondering what the hell has happened since the original announcement of Startbutton back last November. Well it isn’t great. The original team fell apart and any project code was deleted in anger after a dispute in February/March. A few months later, someone offered to setup a video game radio for vidya.fm and we created and soon after that Moltar said the name Vidya.fm was better than Startbutton. So I decided to merge the projects into one large one.
What is Vidya.FM going to include?
- social network platform
- live streaming platform
- radio streaming platform
- searchable video game database
- video game reviews from content creators and the community
- video game music information library
- video game music streaming service
That’s a lot of shit! But we can’t do all that immediately even with great funding. So I plan to break this up into phases.
Phase 1 – Video Game Radio
A simple radio station that plays random video game music that is free to enjoy throughout the site.
Phase 2 – Social Media Platform
This is a great way to bring people onto the service for the new few phases.
Phase 3 – Video Game Information Database
This creates something that makes the site more useful. People can easily search game information and contribute content. This includes listing and samples of video game music soundtracks to search for.
Phase 4 – Video Game Reviews
This makes it more interactive after people have started to use the site more now. As the site gets bigger, so can its influence be bigger by having reviews on it from large names.
Phase 5 – Live Streaming Service
This is a difficult one to do early because of the high costs from server bandwidth and processing needs.
Phase 6 – Live Radio Hosting Service
This is similar to Live Streaming but here, it’s just audio, like radio. So what makes this unique and difficult is how it will be setup. The idea is that creators create their radio station and can broadcast on it for podcasts or streams for people to just talk about stuff. Have custom branding, styling, and send notifications to subscribed users to your station.
Phase 7 – Video Game Music Streaming Service
This is difficult mainly because of the nightmare that this will be more legal stuff. We have to contact every developers and or publisher to gain rights to have on demand playback of their game’s music on the service and pay royalty fees for each time it’s played. This may not be a free service at all and will be like Spotify where you pay a subscription to access it.
So now let’s go into detail about the platforms and what makes them unique.
Social Media Platform
Imagine having the best features from multiple social media sites. Plus new spins for gamers.
- Live discussions streaming in [Twitter, Tweetdeck]
- You can switch from click to load more new stuff like normal Twitter or a streaming posts format like tweetdeck does
- Choose who to send your posts to (Public, Friends, Friends of Friends, certain groups) [Facebook, Google+]
- To explain more on this, if you want to post something, you can choose to send it to a group, or a list/circle of predefined friends and if you want friends of those people selected. This way you don’t have to post things publicly or go private to discuss things privately. Like having a private forum with your friends.
- One option is to send to followers, following, both, or mutual followers (people who also follow you)
- Groups [Steam, Facebook]
- Create groups like you do on Steam. You can also have posts post to people in that group if you’re part of it.
- Large post limits [Facebook, Google+]
- Posts can have up to 5,000 characters, media posts can be up to 25MB per file and have a gallery of them (may be limited to like 10 or 15 files?)
- Posts beyond a certain amount of characters will have a Click to View More to expand the post when viewed from the feeds this way large posts don’t take up the entire feed and everything stays a consistent size.
- Choose what displays public and what to friends [Facebook, Google+]
- Website links, usernames on other services, birthday, extended profile bio, etc
- Choose what the post buttons say [Unique]
- So when you make a post, you can have a customized thing for your posts for “repost” or “favorite/like.”
- So for example you can set your “Like” to “Bazinga!” or anything that is around 20 characters long. When someone likes my post, sends me a notification to me saying someone Bazinga!-ed my post.
- Can’t block people. You can mute notifications from users, but you can’t block them from viewing your public content. It’s Public anyways. If you don’t want your posts to be seen Publicly, use the circles/lists feature to send it to friends instead.
- Your game information on your profile
- Using Steam API, you can link Steam, and possibly other services, like Dotabuff, to place game statistics on your profile and synchronize what game you’re playing to your profile.
- Other networks like Xbox Live and PSN may have APIs to use too.
- Embedded Features
- Built in poll on your post instead of linking to one
- Tags are just Tags. Hashtags are stupid.
- Enough to people calling #’s hashtags. It’s stupid.
- Tags are put into a certain optional section of a post. Up to 10.
- However people like #hashtagging so it’d still be enabled
- tagging to stock market listings can be possible with $ tags and clicking a drop down selection. Otherwise it doesn’t tag.
- Tag a game in the post
- When you tag a game that’s in the database, it can show up in a feed for that specific game and is searchable for that game
- An API that isn’t retarded
- Who the hell at Twitter thought it would be a great idea to have an API that allows a bot to report posts?
Video Game Information Database
- The homepage for vidya.fm will feature the search bar with links to the rest of the features. Exactly how Google.com is setup.
- Search bar has live drop down suggestions of content you have put into the search box and includes information and images for them
- Searchable content includes years, platforms, directors, cast members, game titles, genres, publishers, music tracks, guides, reviews, posts about that game
- Includes details on release dates for each region for each platform
- Separates games from remakes and re-releases. For example, Bayonetta 1 will list that it was released in 2009 and 2014. It will have a Tab for the Wii U version because it contains different content than the original release in 2009.
- Game pages will have included information on their reviews from people on the site, people streaming the game on twitch, hitbox, and gitgud.tv, activity on Steam, media (pictures, music, videos) of the game, guides people made for it.
- You can click to view pages for developers and publishers to see their games and sort them by device, release year, rating, or name
- You can view information about the cast members for games, not just directors and key people on the games. Why shouldn’t you get to know about the entire credits of a game? This can maybe also help for hiring people in the industry!
- Platforms (or Devices it’s called on the site) display all kinds of information like launch line up, hardware specifications, technical information on the operating system that is known, controllers, designs, and history
- Computer games will have listings for hardware requirements
Video Game Reviews
This is not my field of specialty. Moltar was the brain behind this part. Below are the short version of his notes.
- How are reviews accepted to the site / submitted
- To be counted as a journalist or critic
- What weighs a review?
- For journalists and media groups, their weight is determined by their history as a reviewer and or as a game journalist.
- Ethical breaches are strikes against them
- Will there be community voting on a review?
- We are unsure about this at the moment as this can be abused by new accounts if not weighted or if too weighted, abused by older accounts.
- A vote raid can happen and cause the results to be not accurate. 4chan has done this to polls, sub-reddits do this to other sub-reddits
- What about a scoring system?
- No scores, numbers, or colors
- Reviews at most have a simplified summary with bullet points, but a review should be read in it’s entirety for the user to read and understand and not a 5 second glance of a color or number.
- Reviews can be favorable or unfavorable quick summaries possibly with a reason why.
- Journalists and critic reviews
- Critic reviews should be weighted based on trustworthy reviews and records on “ethical breaches”
- User can vote on journalist, User Submitted, and critic reviews
- Users must be logged in to vote
- Upvote downvote system
- Everyone starts at 0
- Users can submit their own personal reviews to the site
- Users can post as anonymous user while still having an account. Similar to ask.fm where you can check a box to be anonymous.
- More reviews you submit, the more weight you have
- Favored reviews by the community count towards the user’s weight
To add on to what he mentions, Steam provides a great example of what I like. Simple Thumbs Up or Thumb Down Recommendation. (Favorable or Unfavorable like he says).
Live Streaming Platform
There isn’t a lot to discuss here. It’s an open source alternative to Twitch.tv and Hitbox.tv and allows anything that is legal to be streamed on it, but it’s mainly geared at the gamers demographic.
This is information is mainly in the GitGud.tv section above [ Click Here to View that Section ]
Live Radio Hosting Platform
This is something that has been done before on other websites but it isn’t too common place. So basically user can create a station that other people can tune in to and listen like a live podcast. User get notified that you’re live and live stations can be viewed like on twitch by the amount of users tuned into the station. Topics can be anything and the owner can customize the page to have their own content. You can discover radio stations by searching for them or viewing stations by broad topics.
A chat box with features for polls and other stuff for displaying some content to users ON THE WEBPAGE ONLY (obviously if someone tunes in via the stream URL on say VLC or Foobar2000, it won’t work.) to chat with the people streaming and interact.
Video Game Music Streaming Platform
This one is the hardest of them all. The idea is to have a service very much like Spotify but instead with real video game music including remixes and music by fans and other groups.
This is difficult because of legal matters to secure rights with EACH INDIVIDUAL PUBLISHER AND DEVELOPER to put a game’s soundtrack online to have on-demand playback.
- Playlists with your favorite songs
- DJ rooms where someone or a group of people put up a queue of songs to play
- Stream to your phone
- Encrypted offline playback on phone or computer
- Purchase the song or soundtrack from the developer
- Play radio stations of certain game series or genres of music and styles
How can we make a profit and run the servers and pay the developers? Here’s my plan:
- People or companies can pay for a subscription to have special accounts
- These accounts can view and download analytics information and reports.
- This information, with enough traffic and users using the service can possibly be a great tool for companies to see trends and discussions on games, specific games, genre, and other information.
- These account can be used to launch promotion content targeted at certain users with targeted game tastes plus other targeting features.
- They get specialize accounts for their companies and organizations that get guaranteed prime urls that are trusted account types with verified account tags prioritized over free company accounts.
- Subscriptions can be turned on and off for any month but lose premium abilities. Accounts are not affected.
Premium User Accounts
- Similar to corporate accounts, premium accounts can view information on analytics for games and other trends.
- These accounts may also have special features added on for live streamers and or radio hosts.
Premium Streaming service Subscription
- The on-demand streaming service will be a premium subscription which includes the DJ rooms, and custom personal playlists.
Paid Promoted Social Posts
- Advertisement boosted posts like promoted tweets or boostered Facebook posts
- It should be avoided that the site has any advertisements on it except for social media sections in a discrete way
- Advertisements on the rest of the site can see unprofessional and may risk issues with having possible game promotional ads on pages for reviews and other games. Conflict of interest could possibly be seen.
Video and Audio Stream Advertisements
- Users that stream or use the radio station platforms have the option of running ads on the video streams or audio broadcasts just like twitch and hitbox.
- Users on these pages can have customized full page advertisements instead of ads during their streams interrupting users and content.
While the site(s) are open source, they will be licensed under AGPLv3.
That’s great and all, but how the hell are you going to do this?
I’m planning to do a full IndieGoGo campaign to fund the initial development of Vidya.fm (and GitGud.tv).
This will be a great challenge because the cost of the project is not really known. The cost is paying people to write code. That cost could vary greatly and depends on how many core developers are working on the projects initially. It’ll still be open source but people need to be paid to get everything going and be constantly working on the project.
If I had to guess, the project will range between $50,000 to $150,000. I have to figure this all out.
I have to figure out rewards for users. Paid features at certain levels would be one maybe. Physical items like T-Shirts, stickers, and such for the brands would be good too. But I can’t figure what would be a reward for high end rewards. I’m not famous so we can’t go to lunch.
Unless you really want to…
We’ll get McDonald’s, baby.
Another thing is managing the rewards and such. There are companies that handle this but they ask for a cut of the money made. It may be impossible to handle without them though so this could artificially raise the development price from IndieGoGo taking a cut, the reward management company taking a cut, etc.
For the campaign, I will create HTML and Photoshop design mock ups of the site’s main points for people to visualize what it may look like.
If you are a developer who wants to help with vidya.fm, CONTACT ME
My email is: [email protected]
My Twitter is @Drybones5
IRC Channel for Sapphire: #Sapphire on Rizon.net
The skills we’re looking for is:
- HTML 5 + CSS 3
- nginx web servers
- Distributed computing / openstack
These are PAID POSITIONS if the IndieGoGO is funded successfully. So a resume and list/example of projects/portfolio is needed. There are only 2 paid dev slots.
If you would like to help and not take up the paid position slots, do also contact me. Creating the kickstarter campaign is not easy and needed video editing, spreading the word, helping decide on rewards , development FOR FREE (thank you if you do this), or anything else.