last day (49 days later) » 

15:20
SvelteChat will be way less buggy.
mmm
Is that approval or satisfication?
and will it support bots, or bookmarks, or the reputation mechanism, or private rooms, or moderation facilities, or the starboard, or message history, or image uploading?
@Ginger All of those.
It will take a lot of developing though.
Which I can do.
It will have reputation like StackExchange.
well, ping me once you have a completed version
15:23
@Ginger Yay.
Probably in like a week.
you intend to reimplement chat... in a week?
Yeah.
Should be easy.
I don't know how to respond to that
I have enough experience to do it.
chat (this chat) took a team of people years to make
15:24
I betcha I could make just as good of a chat system in two weeks
and you're saying you'll make a version that is better in every way and has complete feature parity, by yourself, in a week?
Yes. I have years of experience.
@RydwolfPrograms okay, I'll take that bet
Too busy to actually take you up on the offer unfortunately :p
Unless we're betting something good
both of you have two weeks to make a clone of chat with as much feature parity as possible
15:25
@Ginger Well they didn't have all the features in mind at the start.
@Ginger Challenge accepted.
the winner will get... something good?
I'm too busy this week lol
I'm not sure what I can offer tbh
I. am. never. busy.
@RydwolfPrograms I didn't say that the two weeks started right now
15:26
Okay good lol
How about winter break?
Working on it as we speak.
you can start whenever, but once you do you have two weeks to do it
once you're done, upload the entire thing to GitHub and provide me with the link
I'll give The_AH an extra week even, since they go first
Well actually let's say 2 days
15:26
@RydwolfPrograms I don't need it but thanks.
So 16 days
sure, 16 days
The_AH's time starts at the sending of this message
Oh and let's say we need to use git just so that we can ensure that everything's indeed done in the time period
yup
@Ginger Let's do first commit
15:27
Haha I have been working on this before that so I have a head start.
@RydwolfPrograms nah, then you could make the whole thing and commit it later
anyway, them's the rules
once Rydwolf's done with his, I will select a winner and negotiate a prize
What will be the prize?
I don't know yet
Okay.
I don't have much to give as a prize, so I'm just going to not think about it for now
15:29
What is wrong with Vite today.
one more thing: I'm going to get some friends of mine to judge the results too, to avoid bias
@Ginger Oh okay.
anyway that's it, good luck
How in the world does this fail:
import fs;

let database = fs.readFileSync('~/sveltechat/database.json', 'utf-8');
let data = JSON.parse(data);

export function load() {
	return {
		posts: data.posts
	};
}
@Ginger well I could use an NVIDIA graphics card for ML stuff :p
15:30
actually I should probably define scoring
Mine'll have E2E encryption, as an extra challenge to myself
Maybe it's because of the UTF-8.
Nah JS doesn't care about invalid UTF-8
Hmm...
If it's failing your JSON's invalid
15:31
I will score your clone based on 1. how good it looks, 2. how many of chat's features it includes, 3. how robust it is (as tested by Lyxal), and 4. how many extra shiny bits you can add
Wait the filepath is incorrect.
Oh yeah you shouldn't be using ~ in prod code
I don't think outside a shell that substitution happens anyway
@Ginger 1. Not sure about this one. 2. All. 3. I'll try to make it pretty robust. 4. A lot.
I like how lyxal's just canonically our stress-tester
any commits made after the end of the 16 days (for AH) or two weeks (for Rydwolf) will not be included in the version I judge
15:32
Lyxal's a zoglin
Okay.
yup
Rydwolf, how much experience do you have working with JS and Svelte?
if you require clarification ping me and I'll do my best to answer
@Ginger We can only use Svelte right?
15:34
that's actually it, glhf
@The_AH nope, you can use whatever you want
doesn't even have to be a webpage
@Ginger Oh okay.
I am making good progress.
I'll be real interested to see how this turns out
This all spinned out from my SvelteChat!
incidentally, the magnitude of the prize will be roughly proportional to how good your clone is
So I think I should have some right to judge Rydwolf's version.
15:35
nope! only I and people I select will judge
Okay fine.
Huh, why isn't fs defined?
I don't think you need to import that.
Hmm...
Did you const fs = require("fs"); or import fs?
@The_AH You do
I'm going to create a room for discussion of this challenge so we don't clog TST, hold on
@RydwolfPrograms Oh.
I did import fs.
@Ginger Thanks.
I shouldn't be asking for help because I am probably going to figure out the solution in like 10 minutes, I am actually going to close this tab now.
Also, reminder that fs.promises is stable now, in case you want to use that
15:39
and so it begins
I figured out the solution.
To the problem.
@RydwolfPrograms would you mind moving the discussion over?
I'm going to write up the rules somewhere so we have an official reference
103 messages moved from The Sand Trap
16:00
room topic changed to The CGCC Comprehensive Chat Clone Cookoff: Two weeks, two contenders, one victor. Rules: gist.github.com/GingerIndustries/… (no tags)
there we go
Okay.
I am going to do pretty well.
Posting is implemented!
your confidence is pretty impressive, I'll grant you that
but whether or not it's well-founded remains to be seen
"Saving every message to a single massive JSON file isn't very scalable, now is it?". Wait what!
Well I am going to use JSON because it's easy to use.
Maybe later I will revamp it.
make sure you're committing everything to Git! I'd hate to have to disqualify you for failing to track your code
@Ginger Well...
I don't use Git for any of my projects.
16:02
too bad! you have to use it for this one
no tickee, no laundry
But I started working on SvelteChat before you announced the competition so...
> Any Git commits made before the start of the time or including code written before the start will definitely result in a rebuke and may result in a disqualification.
how much work did you do before you started?
Setting up the Svelte project and creating the UI.
how many lines of code? (roughly)
probably 100 or 200.
16:03
most or all of which was boilerplate?
Most of it.
could the code you wrote before the start actually do anything?
Yes, it could display messages.
Though not post messages.
hmm
and you swear that this is true and you're not making anything up?
Why would I?
16:04
if so, speak now and I'll give you a pass
alright
Please allow me to not use Git.
Please change the rules.
I'll allow it, but I am being exceedingly generous seeing as I also gave you two extra days
no, you must use Git
don't push me
I didn't need those.
I can do this in a week.
Okay how do I use Git then?
use Git or don't compete
@The_AH have you ever used it before?
or any VCS?
Yes.
But it went poorly to say.
16:06
well, you should've thought of that before you agreed to this!
It's pretty easy to use Git.
I know most of the commands.
then what's the issue?
Well there is no issue now I think about it.
if it's easy then everything should be fine
good to hear! I'll be excited to see your result
Wait how will you proof that we used Git?
16:07
you'll upload the Git repository to GitHub
for a master coder of your caliber that should be easy
Yeah.
I just don't like doing the funky token stuff.
use gh then
Will look into that.
sounds good! and remember: the clock is ticking
now, go forth and make something good
Oh wow.
That will be just 3 days before my birthday!
16:10
ain't that nice
Yeah.
I am doing CSS styling right now.
@RydwolfPrograms I trust you understand the rules?
Whoa (66)?
The_AH is a chatty individual *rimshot*
Yup I understand them
I'll knock this out prolly around December
16:11
My mom said that I talk a lot.
excellent! ping me once you decide to get started or if you have any questions
By the way I won't be using stylesheets but will use the style attribute.
mmm
have fun
I'm going to go work on some projects of my own, ping me if you need me
Can I use a private GitHub repo and then make it public when the challenge finishes?
This way I also don't need to use the CLI so that's one bonus.
yes, you can do that
16:14
YAY.
not sure how that exempts you from the CLI, unless you're using an IDE with Git support or smth
Oh wait that won't...
Still fine.
It is fine if I post screenshots from time to time?
that's up to you
Will probably do for feedback.
oh, one other thing I should probably add to the rules: you must write all code yourself
(excluding dependencies ofc)
16:22
Of course.
I never copy code.
If I found a solution on Stack Overflow I usually write the code myself based on the code there.
rules updated
So to my understanding.
I should run gh repo create sveltechat --private --source=. --remote=upstream
Inside the SvelteChat directory?
¯\_(ಠ_ಠ)_/¯
That command will use the current directory to create a remote private repo.
Wait it has initalized the repo but empty.
How do I add my source to the repo?
¯\_(ಠ_ಠ)_/¯
16:32
Huh...
jfami@Macs-MacBook-Pro SvelteChat % git push -u origin main
error: src refspec main does not match any
error: failed to push some refs to 'https://github.com/GenericProgrammer1234/SvelteChat.git'
jfami@Macs-MacBook-Pro SvelteChat %
Someone please help.
This is why I don't use Git.
I thought it was easy to use Git?
Yeah but it's not easy to push changes remotely.
I have always had trouble with that.
sounds like using Git to me, but whatever
Can I just not use Git?
16:35
Okay I'll figure out a solution.
also, allow me to make something clear: I will not be providing you help with this, and if Rydwolf is smart he won't either
If only I didn't have to use Git...
Wait I don't need to do it remotely yet!
Yes!
(although he does have a bit more of a conscience than I do, so maybe he will? who knows)
Okay I'll deal with remote later.
I can use Git to commit right now.
Locally.
@Ginger What would happen if I made some disaster command that corrupted or destroyed my Git repo?
¯\_(ಠ_ಠ)_/¯
not my problem
16:37
It's not fair then.
You should include something about this in the rules.
"not fair"?
Okay whatever.
every aspect of this is well within the grasp of an experienced programmer, which you have repeatedly purported to be
you and Rydwolf are operating under identical rules
I am an experienced programmer, I am not an experienced Git user.
you even have a two-day head start!
16:38
@Ginger Which I didn't need.
well, I can certainly revoke it if you want
but don't tell me this "isn't fair"
Well if someone gave you a gift which you didn't ask for then why would you tell them to revoke it?
you tell me
I can do this in like a week.
extraordinary claims require extraordinary evidence, my friend
16:40
Well evidence will come, just wait.
if you really can do it that fast, your Git commit logs will bear it out
and if either of you two finish early, you can ping me and I'll stop the clock
@Ginger What does that mean?
Like bear it out.
why, provide the extraordinary evidence for your extraordinary claim of course!
Oh yeah, the extraordinary claim that will become true.
Because I am using Svelte, it updates in real time as posts go.
One less thing to worry about!
Because I am using Svelte, it updates in real time as posts go.
and please, for both of our sakes, do not forget to commit your code to Git
16:44
One less thing to worry about!
Well that was weird.
@Ginger Yes I know.
I will probably commit once a day.
effectively the only way to disqualify yourself is forgetting to commit, and I absolutely do not want to have to disqualify you
okay, just wanted to make sure
what, was my phrasing unclear?
Why?
I don't understand the question
Why do you absolutely don't want to have to disqualify me.
It isn't like this is a moral question because if I don't commit then it is absolutely fair.
it takes all of the fun out, and wastes your hard work
I'd hate for all of it to go down the drain because you forgot something basic
but why do you care? if you do everything right it won't ever matter
16:52
Okay.
I think I'll be going now
good luck!
I am going to make the user be "Anonymous" if they aren't logged in.
@Ginger
what do you want
What do you think about SvelteChat so far based on the screenshot?
that's not for me to say just yet
but you'll find out in 15d 22h 21m 52s and counting
17:05
By the way I am going to encode the posts.
allow me to rephrase that: I do not care about your design until the 16 days is up
you can upload it here, but all you'll get from me is a "ok whatever"
Okay.
and pinging me with anything that is not related to questions about the rules is going to do nothing except annoy me and waste both of our time
Okay.
Sorry.
Going to stop chatting now.
To work on it more.
no worries
 
2 hours later…
19:30
I am going to now allow logged in users to make things easy on myself.
Well did a lot today.
Next day my goal is to add proper user authorization.
And editing and purging and stuff.

  last day (49 days later) »