« first day    last day (634 days later) » 
00:00 - 11:0011:00 - 00:00

12:03 AM
@Mego Cool!
 
Anonymous
Only had to fight with PyCharm for about 15 minutes to get everything set up
 
Anonymous
Small victories
 
@Mego PyCharm has a template for flask tho, also you didn't add .idea/* to .gitignore
 
Anonymous
1:00 AM
I'll set that up in a little bit
 
4:25 AM
@Mego could I have push access to the repository? You can keep master protected, just just that branching is easier than forking.
 
Anonymous
Sure
 
Anonymous
pavelbraginskiy, right?
 
Anonymous
Also Flask templates are only in the professional edition of PyCharm
 
Anonymous
Which apparently I can use because open source
 
Sadly, I can't write python. :(
 
Anonymous
4:31 AM
@ATaco No time like the present to learn!
 
Anonymous
Also we'll (eventually) need web design
 
I can't design, but I can build.
(Anything that looks slightly good on a-ta.co is DownGoat's design)
 
@Mego Yeah. If you look at the pull request you closed theres a link to my account
(Sorry I was busy leveling up Ayren)
@Mego If you don't actually have that license yet, I can initialize a Flask template and then copy the files over
 
Anonymous
4:47 AM
I have the license, but I just hadn't installed Pro yet
 
@Mego Alright, I won't do that then. Mine's updating, anyway.
 
Anonymous
master should be set up properly now
 
@Mego Ok. You know, when I tested this earlier, I could have sworn that the template had a lot more files.
 
Anonymous
Idk
 
Anonymous
Time to install MySQL so I can make a DB
 
4:51 AM
Same I suppose
._. why does it launch on port 5000 by default
 
Anonymous
Flask?
 
@Mego Yeah
 
Anonymous
Probably because it's not a commonly-used port
 
I guess
I expected it to be 80 tbh
@Mego seconds away from making a pull request, my dad failed to replace a power outlet and cut off power in our house entirely.
(it's fixed now)
(all work was lost)
(Project corrupted hopelessly)
 
Anonymous
5:18 AM
RIP
 
Anonymous
So here's what I have so far for the DB: gist.github.com/Mego/a403da6eae7050b95914877113e5e883
4
 
Anonymous
MySQL Workbench is the only thing that made that not incredibly painful
 
So as it turns out that there's a .idea/PPCG-v2.iml that shouldn't be .gitignored, because it has information about where the templates are and what template language is used, and pycharm cares about that.
Everything else in there is personal afaik
I'll fix that myself
 
Anonymous
Ok
 
Anonymous
This is my first time actually using PyCharm
 
5:24 AM
Huh
It's pretty great
 
Anonymous
It seems nice so far
 
There's a SQL IDE called DataGrip
Also by JetBrains
 
Anonymous
MySQL Workbench is nice, and I'm experienced with it
 
I'll look at it
@Mego write access would be nice right about now
 
Anonymous
I sent you the invite
 
5:29 AM
Oh right GitHub only does invites through email
I always expect to see a notification on the website itself
._. MySql is telling me it wants specifically python 3.4
 
Anonymous
Grab the platform-independent version
 
Is Connector/Python required?
 
Anonymous
Yep
 
Anonymous
With the platform-independent version, it's just python3 setup.py install
 
Where can I find this platform-independent version?
 
Anonymous
5:35 AM
Choose it from the OS dropdown on the mysql website
 
Doesn't seem to exist
 
thanks
Ok that worked
 
Anonymous
The regular installers are terrible - setup.py never fails
 
Not actually sure where it got installed to though.
 
Anonymous
5:41 AM
<python lib dir>/site-packages/mysql
 
Awesome
 
Should remember that trick about setup.py, as pip always screws up my numpy installs
 
I think I'm going to sleep now. Cya tommorow!
 
Anonymous
See ya
 
5:57 AM
So we have the API, and the basic database. Now we need the rest of the site design, a way to migrate rep, and am I missing anything else on the to-do list?
 
Anonymous
Ooh, I need to include rep in the users table
 
I'll look in El'endia Starman's TNBDE for more fields
Ah wait, I forgot that's for chat.
The posts and the answers should have score fields as well
 
@Sherlock9 We don't have the API at all yet, the web server only says Hello World
 
Noted. We have the design for the API
Do we want to have comments on posts and answers as well?
 
A really bare-bones version of the API
Without things like comments or meta or sandbox
We haven't gotten very far
 
6:03 AM
Fair enough. Sorry for bringing up everything at once then
 
Anonymous
It's fine
 
Anonymous
We need to keep those things in mind
 
Anonymous
For example, I completely forgot about votes in the DB design
 
Anonymous
Updated the gist with the current schema design
 
Do the tags need a description field?
 
Anonymous
6:13 AM
Eventually, yeah
 
Anonymous
They'll also need a wiki field
 
Well, besides that, I don't currently recall any other fields that are needed in the database
 
Anonymous
Well, if we want to replicate the vote timeout feature, we'll need a datetime field on votes
 
Anonymous
Also datetime info about posts/answers
 
Anonymous
And then comments...
 
Anonymous
6:17 AM
Users will want profile text, avatars, GitHub account links, SE account links, etc.
 
Anonymous
Also answer metadata like language, language link, TIO link, etc.
 
Anonymous
But for now, I'm going for bare-bones SE-like experience
 
Fair enough
 
Anonymous
MVP first
 
Anonymous
Then features
 
6:24 AM
Had to Google that, but yes
Is there any reason for the following from the gist?
KEY `tag2_idx` (`tag1`),
KEY `tag2_idx1` (`tag2`),
 
Anonymous
Probably a typo
 
Anonymous
Yep, I typo'd the tag field names, and the indices didn't get renamed when I fixed it
 
If you login via SE accounts, would those registered with Facebook/Google have access?
 
Anonymous
They should
 
Cool project, we really need an optimised place for golfing :D
 
 
2 hours later…
8:35 AM
so...is this us trying to detach from SE and use a more...appropriate platform if I can say so? ;p
 
Anonymous
in The Nineteenth Byte, 12 hours ago, by Mego
With all these problems we've been having with SE, I wonder if it would be worth it to move PPCG elsewhere
3
 
nice
except that we're ~76K users already, how would we migrate such a large population
 
Anonymous
It's not intended to be a replacement - just an improvement
 
oh so more like an alternative user interface to SE's with more features
 
Anonymous
Kind of
 
Anonymous
8:41 AM
The idea I had was to have a site that runs alongside SE - you can post on the site, and the post will be mirrored on PPCG.SE. However, the site will have more golfing/competitive programming-related features.
 
well, one caveat is that the site must have all SE features too, including site analytics, moderator tools etc.
 
Anonymous
Naturally
 
Anonymous
It's an ambitious project, but I think we can do it
 
let's just say this is the second odyssey? ;)
for example the alternative site must be able to recognize:
- user suspensions, their reasons, and their end date
- post bans
- review bans
- suggested edit bans
- keyboard shortcuts, if enabled
- badges
- accepted answers
- profile pictures
- tags
- tag formatting markdown
- snippets
- review queues
- review histories
- join date
- twitter profiles
- website links
- github profiles
- disabling of links during suspensions
- network-wide suspensions
- user last seen date
- user impact estimate
- profile views
- total visited days, consecutive visited days (if your own profile)
not to mention meta stuff
 
Anonymous
Yes, I am aware of just how ambitious this project is
 
Anonymous
8:53 AM
As far as suspensions and bans go - we'd likely use our own system for it. Obviously, if the user is suspended/banned on PPCG (or SE as a whole), they won't be able to crosspost, but a suspension/ban on PPCG or SE is not necessarily grounds for similar punishment on PPCG v2.
 
oh and crossposting will be scheduled if the user is suspended over ppcg?
oh and btw one more thing: mods
 
Anonymous
I don't anticipate any "scheduled crossposting" features, but I would like to include a handy "crosspost" button
 
Anonymous
@EriktheOutgolfer Mods/admins are already a consideration
 
well, I believe in its success nevertheless, given the success of the tetris in gol project ;)
 
Anonymous
If this only takes 1.5 years, I'll be pleasantly surprised
 
Anonymous
8:57 AM
Though the fact that it will be almost entirely open-source (if not entirely) will help
 
wait didn't the gol thing take 2.5 years
 
Anonymous
2.5 years from the challenge's post date. 1.5 years from when we actually started working on it.
 
Anonymous
The entire site sans some config data, the DB data, and possibly anti-spam filters will be open-source. The spam filters may also be open-source, if we can do what I would like to do and leverage Smokey for spam detection.
 
btw I think it would take a few months just to enumerate all SE features that apply to codegolf.SE
 
Anonymous
I don't think that we would need every single SE feature, because a lot of SE features only make sense for Q&A sites. However, quite a few of them would be useful, and reverse engineering them will take time.
 
9:01 AM
yeah, for example "answer your own question" in the "ask question" page
that's unnecessary imo
but review queues are very important for example
 
Anonymous
The mod tools would be the hardest to reverse engineer - without a mod or an SE staff member helping us, we'd probably be better off just developing an independent set of tools
 
was just going to say that
 
Anonymous
Review queues are important, but their implementation is less than ideal for PPCG
 
Anonymous
One of the features I'm already sold on is a review queue specifically for the Sandbox
 
and another feature could be that the sandbox isn't a meta post but a "fourth part" of ppcg (after main, meta and chat)
 
Anonymous
9:03 AM
Also I'd like to make the top bar 10000% less hideous than the SE top bar
 
and yeah I don't think the "stack exchange" menu as well as the stackexchange.com link are needed at all
 
Anonymous
IMO a good implementation of the Sandbox would be to have it as sort of a triage area for new challenges that users with a certain challenge rep level can review, and users with a certain higher challenge rep level can optionally bypass
 
and the help center would be vastly different
 
Anonymous
Also I'd like to separate challenge rep, solution rep, and Q&A rep (i.e. tips)
 
I'm afraid that's not really possible?
 
Anonymous
9:05 AM
Sure it is
 
Anonymous
You can scan through a user's posts and calculate how much rep they've gotten from each of those kinds of posts
 
but then non-suspended users could be able to bypass this pretty easily
 
Anonymous
What do you mean?
 
for example a user has 35000 solution rep, 0 challenge rep and 60 q&a rep
that means they'd normally have to go under the sandbox triage
but instead they can just go over codegolf.se and post the question there, given they're not question-banned or suspended
how would this scenario be handled
 
Anonymous
Sure, but that's not something that we can prevent. We can at least try to make v2 better.
 
9:09 AM
What's this room about
 
Anonymous
I'm only imaging crossposting being one-way: v2 to PPCG.SE. Taking something posted on PPCG.SE and crossposting it on v2 would require going through the v2 hoops
 
Anonymous
@feersum An experiment in building a better PPCG
 
@Mego so v2 would essentially be kind of a separate community
 
Anonymous
@EriktheOutgolfer A separate community with links back to the original
 
Anonymous
A community must remember its history, but also must not be afraid to move forward and improve itself.
10
 
Anonymous
9:13 AM
Kind of like what happened with - we still remember it, but we recognized the failures and chose to leave it behind
 
especially its public beta history
@Mego yeah, very, very much subjectivity
 
An interesting implementation of the Sandbox, if you haven't said this already, is as the default place to post questions. The questions get reviewed first that way. Then you can post to the main challenge area when you think it's ready.
 
Anonymous
9 mins ago, by Mego
IMO a good implementation of the Sandbox would be to have it as sort of a triage area for new challenges that users with a certain challenge rep level can review, and users with a certain higher challenge rep level can optionally bypass
 
So you could in theory just post to Sandbox, and immediately post to the main area
 
Anonymous
Beat you to it :P
 
9:14 AM
I thought the goal was to erase from the face of the earth so that no one could see the questions and copy them.
 
Anonymous
@feersum I wish :P
 
@Mego There it is :D
 
@feersum well, except that SE's license doesn't really comply with that ;-p
 
How do you want to handle deleted questions and answers, by the way?
A setting in the user preferences as opposed to a mod tool, maybe?
 
and generally privs
 
9:15 AM
@EriktheOutgolfer I don't follow.
 
Anonymous
IMO a post in the Sandbox would require a certain number of "looks good" reviews before it can be posted to the main challenge list. Users with a certain amount of experience with writing challenges can bypass it, but can still use it if they want.
 
Anonymous
@Sherlock9 I'm thinking basically the same way that SE does it, but with an option to hide them.
 
Maybe 5 challenges with a good score?
 
Why does the repo say it's a "client-side experience" but the files in it are about a server?
 
@Mego With the pre-grad rep totals or post-grad rep totals?
 
Anonymous
9:16 AM
@Sherlock9 I was thinking a certain reputation level from challenge posts
 
Anonymous
@Sherlock9 Probably post-grad
 
@feersum because WIP :) should be clarified later on
 
Anonymous
@feersum Because it's about improving the user experience
 
Anonymous
User experience is probably a better way to say it
 
But what is it?
 
9:17 AM
@Mego Makes sense
 
Is it a client to browse PPCG or a different site altogether?
 
Anonymous
@feersum A different site altogether
 
The readme text suggests the former.
 
Anonymous
The README text is woefully incomplete
 
We have only just started this project today, you realize
 
Anonymous
9:18 AM
I toyed with the idea of a PPCG browser client, but so many of the things I want to do with it wouldn't work in a browser client - they require a separate site
 
Anonymous
@Sherlock9 9 hours ago, in fact
 
Remember, remember the fifth of November, the PPCG v2 site migration
 
@Mego I'd say using different rep thresholds though...and given the separation of rep into 3 values
 
Anonymous
@Sherlock9 November 5, 2020. Mark your calendars.
4
 
Anonymous
@EriktheOutgolfer Some thresholds make sense with combined rep. Some would work better based off of individual rep scores.
 
9:20 AM
Consider it marked.
 
@Mego yeah so each threshold should be individual; problem solved ;)
 
Anonymous
And when Nov 5, 2020 rolls around, remind me about this project, which I will have inevitably forgotten about by then :P
 
sorry, we're not your calendar here :-D
 
Anonymous
@EriktheOutgolfer Well e.g. seeing deleted posts makes sense to be unlocked at a certain combined rep total.
 
@Mego I'd say let's separate the privileges into two categories: experience and responsibility
 
Anonymous
9:22 AM
Also I just realized that I shouldn't store rep scores in the DB because they're computed values
 
That doesn't mean you shouldn't store them in the DB.
But you should recalculate them once per day or wahtever.
 
yeah, you can cache them in the db
 
Anonymous
@feersum Having to update a field every time a vote is cast would be a waste of resources
 
and just update the db entry whenever some rep-changing action happens
 
Anonymous
IMO it would be better to cache them server-side
 
9:24 AM
@Mego So how do you propose to store votes without using a DB?
 
votes are a different thing
 
Anonymous
@feersum I am storing votes. I'm just not storing the per-user rep values, because those are computed from the votes.
 
Then you are updating a field when a vote is cast already.
 
Anonymous
Sure, but there's no reason to perform more writes. Reputation values could simply be a view in the DB.
 
Anyway, summing up all the votes of all a user's posts every time their rep is needed seems more wasteful to me than doing one update per vote.
 
Anonymous
9:28 AM
Reputation is not hard to calculate - it would be much more efficient to calculate it on the fly (and possibly/probably cache it) than to update a reputation field on every vote cast.
 
Anonymous
Storing calculated values violates the principle of normalization. That's what views are for.
 
10:18 AM
can't tell if this is legit or not
 
a better community for us golfers? definitely!
@Mego in the progress of making a model specific to ppcg v2, I couldn't determine in what cases can downvotes replace delete votes or just no votes...
except maybe tips
 
10:50 AM
Wait, If a user has high answering reputation, but has very few challenge reputation (e.g Jenny, Neil), can't they bypass the (future) sandbox if they want to?
 
why should they?
 
Because they are totally familiar with the rules and how things go.
 
reputation is a rough measurement of experience
and no familiarity with rules doesn't remove the need to sandbox challenges
 
Then, in my opinion, nobody should have bypassing privileges.
 
the thing is, sandboxing takes time
 
10:54 AM
of course it does. so what?
I really don't understand what you imply by that
 
it's not pleasant to wait for feedback and keep a challenge in the sandbox for 72+ hours before posting over main
so if you have enough rep you should be able to bypass sandbox
 
@EriktheOutgolfer I think just rep is a bad indication
 
@EriktheOutgolfer Yes, but overall rep, not just question rep.
 
especially here, imo rep shouldn't factor in at all
we should have a question quality metric. somehow.
 
Ok, the thing is that we should have better moderation systems.
 
10:58 AM
and some way to offset the PPCG effect (i.e. simple things are over-upvoted)
 
in the model I'm going to propose, upvotes mean creativity
 
Agreed.
 
00:00 - 11:0011:00 - 00:00

« first day    last day (634 days later) »