Chat:World/2021-03-03
cobunny: Hi guys, how to play?
FlyHead: how to play what
- nerd:
baguettes: :nerd:
Fiolinio: hi gamers
Fiolinio: i'm having fun
Adm-Beck: Anyone knows how to turn off this chat? It just appeared and takes a lot of screen real estate
baguettes: There will be an arrow in the bottom left of the chat
baguettes: Press that, and the chat should tuck in to the right of your screen
baguettes: What would be the stub generator for iterating over a string with no space separated characters
baguettes: ?
Theino: https://www.codingame.com/contribute/view/63618707a685d8557571cabb82f9ed5b28d9
Theino: I'm just going to leave this here so people can upvote me and I can get that sweet sweet XP
Theino: also so people can review the work and to help the site grow or whatever... but mainly XP!
baguettes: A question
baguettes: How do I make an output of a testcase be blank
baguettes: ?
baguettes: Because it always errors saying the field is empty
baguettes: Do I have to put in a special unicode?
baguettes: Help? :D
rubber_duckie: do you mean a single newline? like in python, an empty print() statement?
tutubalin: baguettes i think, the problem is the other way around: test expects some output, but your code outputs nothing
tutubalin: or vice versa: it outputs too much, so when test expects nothing, your code still output something
baguettes: yeah the same thing @rubber_duckie
Uljahn: something like \n ?
tutubalin: ah, got it. you're MAKING puzzle, not SOLVING it. sorry, my bad
baguettes: tutubalin, I think you understood it wrong, I mean when I try to test my WIP contrib, it gives an error saying test no. x is empty
baguettes: oh lol, yeah
baguettes: Yes, Uljahn
tutubalin: ok, i would highly discourage from making testcase with blank output. better use something like 'IMPOSSIBLE' or 'NO SOLUTIONS'
awnion: same, or just -1
baguettes: Hmm, thanks, I'll do that!
baguettes: Done!
baguettes: I'll just post the link to the contribution
baguettes: https://www.codingame.com/contribute/view/6363a7c0f65c8b0f4c81b6b28c80c4c2157c
baguettes: Why is the chat so dead today
xcxcx: idk
Uljahn: the chat is in energy saving mode to lower greenhouse gases emission
baguettes: :pp
baguettes: :p
tutubalin: today is International Dead Chat Day
baguettes: Lol
GeorgiD: Hello there, I am a string. -> 13 Can you figure out the solution to this puzzle? -> 23
GeorgiD: I tried number of vowels and non vowels
GeorgiD: You can do it! I believe in you! -> 16 is another example
baguettes: We need more than 1
baguettes: test case
baguettes: GeorgiD It's the length of the string / 2
baguettes: No problem :D
BlueSponge_e8a2: Paul du fettes geodreieck
MassiveShoeEater_535f: Hallo du Homo
TheFlashLady_6b91: Oida i hoss di so fü
Astrobytes: Stop it or get kicked
MassiveShoeEater_535f: Arsch behinderung
TheFlashLady_6b91: yOU ARWE SUCH AN ASS HOLE
DJUndisclosedTaxidermist_3494: hallo
Wontonimo: haven't been on chat for a bit ...
Wontonimo: looks like kinda went off the rails
Wontonimo: How's it going Astrobytes ?
Astrobytes: The schoolkids were kicked, and received a talking to in PM
Astrobytes: Not too bad Wontonimo, yourself?
Wontonimo: it's wednesday my dude, which means tomorrow is Prefriday, followed by Friday. That's how i'm holding it together
Astrobytes: Hah! You know it :D
baguettes: I'm leaving a link to my contribution
baguettes: https://www.codingame.com/contribute/view/6363a7c0f65c8b0f4c81b6b28c80c4c2157c
baguettes: Check it out if you'd like to
Astrobytes: Don't do clashes so I'll leave it for someone else ;)
Astrobytes: Looks pretty fun though
Joseph_Mother: My Journey to the Starts
jacek: Astrobytes have you checked out nine men morris?
Astrobytes: Not yet jacek, you?
jacek: i thought it was weird no one tried it. then i saw everyone had bots on 2nd league
Astrobytes: lol
Astrobytes: It's solved as a draw iirc but is it interesting enough with CG constraints?
jacek: lets ask msmits for meta
Astrobytes: lol
Astrobytes: Naturally!
baguettes: Nine men morris?
baguettes: The board game?
Astrobytes: Yep
baguettes: oO
Astrobytes: https://www.codingame.com/contribute/view/61732efac43e2d5a1ab19dcfe7b9afc3b4d0
NeoCipher: Hey guys I am a little new can someone tell me how to increase my "codinpoints"??
NeoCipher: I did a few Clash of Code thingys but its still the same
NeoCipher: neither increasing or decreasing
Astrobytes: The points are updated every day, so you need to wait til tomorrow to see the difference NeoCipher
darkhorse64: CP are updated once a day
NeoCipher: Ahh okk thankss
NeoCipher: so much
Astrobytes: Also, the clash CPs decay over time. You can get CPs from moving up leagues in multiplayer games or such though.
darkhorse64: Fair advice, if you only play CoC, you miss the best part of CG
Astrobytes: In our completely unbiased opinion.
JLukeSkywalker: i agree too
darkhorse64: totally unbiased
NeoCipher: and where are these multiplayer game??
Astrobytes: https://www.codingame.com/multiplayer/bot-programming
NeoCipher: I mean you guys seem experienced so I am gonna try it obviously
Astrobytes: From ACtivities->Compete menu at the top btw
jacek: :notebook: :soccer: unbiased
NeoCipher: Got it thankyou guys again
Astrobytes: no worries
NeoCipher: I am still learning so anything to help me grow a bit works
Wontonimo: NeoCipher the most popular (and arguably the easiest to get started in) is Coders Strikes Back https://www.codingame.com/multiplayer/bot-programming/coders-strike-back , but if you are looking for something smaller
Astrobytes: You (hopefully) never stop learning NeoCipher
NeoCipher: True
NeoCipher: Thanks Wontonimo
Wontonimo: there is a smaller practice called Mars Lander that I really like to suggest https://www.codingame.com/training/easy/mars-lander-episode-1
Wontonimo: which has a couple more episodes and an optimization challenge
NeoCipher: Got it have them all opened will go through all of them once
NeoCipher: :thumbsup:
darkhorse64: Don't forget to turn off the sound for Mars Lander
Astrobytes: ^
darkhorse64: Even if you forget, you will turn it off anyway
Astrobytes: Hm. Let the record show that I Am An Idiot. Stupid bitboarding.
Astrobytes: Had my shifts the wrong way round.
darkhorse64: For which multi
darkhorse64: ?
Astrobytes: Clobber. Finally got around to it.
jacek: you want some masks to not get around it
Astrobytes: Well, finally getting around to it.
Astrobytes: Been very lazy recently.
darkhorse64: Been busy with Fireworks. Some people are trying to steal my #1
Astrobytes: Outrageous. How could they!
darkhorse64: Yeah, it's mine. What's the point in submitting ?
Astrobytes: :grin:
darkhorse64: It's a funny coop game with lots of RPS. If coop is bad, you easily take last place even against weak players
Astrobytes: I only have half a bot written for it currently.
NeoCipher: You guys have a crazy profile
NeoCipher: So many languages !!!!
NeoCipher: :cold_sweat:
NeoCipher: How long have you guys been coding for ??
Astrobytes: Some of those are just to get language achievements, it doesn't mean we're experts in them all ;)
darkhorse64: There are languages achievements. Solve 1,3,7,15 puzzles in a specific language
Wontonimo: ^ yeah what Astrobytes said
NeoCipher: Still the fact that you did them means you know something
Wontonimo: I got my by hacking and running the tests a lot
NeoCipher: How long have you guys been coding for ??
Astrobytes: Either not long enough or too long. Not sure.
Wontonimo: i started when i was 8. been coding professionally for 27 years
NeoCipher: Waittt what the hell 8??
NeoCipher: Woww you guys are crazy good
darkhorse64: The good thing is you get a minimal experience with new stuff and you get to know why you stiick with your favorite weapon. But some of them are worth giving a serious try
Tuo: pls others in fireworks top10 run some code so i get #1 spot back :)
Tuo: i think(hope) my new bot plays very well vs other good bots
darkhorse64: Resistance is futile
Astrobytes: hehehe
darkhorse64: Solid 0.19 lead
Astrobytes: Wow. Blazing ahead there :P
Tuo: + a game where someone else runs code and your score changes up to +- 0.5 points
darkhorse64: leRenard to the rescue
Tuo: btw there should proply be more tests for a game like this. its very hard to tell if new code is better by looking at the score
darkhorse64: Yeah, probably not enough games. The final result depends very much on the deck ordering
awnion: why comments has no MarkDown support?
awnion: why comments have no MarkDown support?
Wontonimo: AutomatonNN , why is there no markdown in comments?
AutomatonNN: why not as hell
Passifi: Giving people negative feedback is mean and might scar them for life that's why
Wontonimo: sheesh, i don't need markdown to scar people, but i supposed it could help
awnion: Constructive negative feedback is the only feedback that adds value IMHO
awnion: what's the point in saying "oh you are so good and bla bla bla buy my shampoo :) "
Astrobytes: With the odd exception now and then I believe most of the negative feedback is pretty constructive. The positive feedback can be a bit... vague?
awnion: non-constructive hate speech is bad too of course
UnnamedCodinGamer: you have to be very thoughtful and clever to be able to give positive negative feedback
darkhorse64: It never hurts to tell someone he/she has done a good job. A pat in the back always conforts you
UnnamedCodinGamer: few people are
Passifi: Making progress ain't worth the risk of hurting someone's feeling :)
awnion: to improve you HAVE to see negative sides: knowing positive sides adds not much because they are already good
UnnamedCodinGamer: the art is to express it in a way that is helpful to the other side
Passifi: btw I agree negative feedback is the best feedback there is I think the problem with marking down (in all seriousness) might be that people get stuck on the negative emtional side something that can be avoided if the feedback is actually written out and well formulated
UnnamedCodinGamer: and not hurtful
Astrobytes: Also, a lot of feedback is more neutral tbh, with suggestions for improvements and such. Without which, come publishing time, there would be cause for negative feedback.
awnion: art is a bloody mess: but it worth sacrifice because the reward is an aesthetic joy
Astrobytes: Very profound :)
UnnamedCodinGamer: and in this specific case you have done something good
awnion: I've learned it too late...
Passifi: and truth be told better to be hurt and know you suck then to believe your great and then face the truth later on. Some people can't recover from their (unwarranted) illusions of grandeur
Astrobytes: ^ 10000000%
Wontonimo: I take offence, my grandeur isn't an illusion
Astrobytes: :smirk:
Wontonimo: ;)
UnnamedCodinGamer: Passifi yes, I have seen people floating like balloons. It is nevertheless better to deflate them without bursting them
awnion: That's why I hate the western mindset: -- oh your work is so nice so cute amazing bla bla bla -- will you buy it? -- You know, today I'm busy maybe next year? :) :)
awnion: familiar?
Passifi: I don't know avoiding open criticism can be a pretty eastern thing too
Astrobytes: UnnamedCodinGamer: Very true. No need to be hurtful needlessly.
awnion: Welcome to Russia :) Here everyone can destroy your self-esteem to the bottom :)
Astrobytes: Definitely a more prevalent thing in the Western psyche though I'd argue.
Astrobytes: awnion :D
Astrobytes: It's like rewarding all the kids in the race, even when they didn't win...
Passifi: When I studied Go my teachers were ruthless in pointing out my inadequacies it was part of the scene so I guess in terms of teaching the east is a bit more agressive ^^
Astrobytes: Aggressive perhaps, more realistic also perhaps
Wontonimo: okay, participation rewards .... and how do you feel about getting XP or CP here on CG if you didn't come in #1 ?
Wontonimo: or upvotes on stackoverflow or reddit when you arn't the lead contribution?
awnion: denial, anger, bargaining, depression, and acceptance :P
Passifi: In the end its an individual thing I believe a good teacher would have to know when to hurt and how to pick you up afterwards which isn't easy thats why good teachers are real regardless of the cultural context
UnnamedCodinGamer: very rare indeed
Astrobytes: No - not that kind of thing. I mean a certificate of participation etc is fine. It's when you see situations where everyone is made to feel like a 'winner' in competition - that's not right. It sends the wrong message.
awnion: and experience in general only helps to get to the acceptance phase quickly :)
Passifi: I think the problem is with rewarding them equally, not with rewarding them at all, no one minds a silver medal ;)
Passifi: or bronze
Wontonimo: i prefer the booze prize over bronze
Astrobytes: Yes. If you demean the positives of striving to the top by rewarding those who came in last, you end up with people who feel somewhat entitled whether they try or not.
Astrobytes: lol Wontonimo
awnion: My point was being dangerous by being component is better than being harmless. Because if you dangerous you can act like harmless, but I'm not sure about opposite.
awnion: But to be dangerous you have to accept the fight, many fights. And you don't want to fight soft ppl. Pointless...
Astrobytes: Food for thought. OK, I'm afk for a bit, be back later
Uljahn: the real participation reward is the friends we make along the way :hugging:
derjack: :scream:
KiwiTae: finisher medals are nice thou
derjack: participation medals plx
KiwiTae: submit default code is not worth anythin
riririgp: Is there a playground? Any one suggest me a path finder to find it?:thinking:
jacek: use A*
Duggal: The program: http://chat.codingame.com/pastebin/ef08f29e-b556-45ea-9d3d-91f1dcc3f803
thanhhv317: good night every one
jacek: :thinking:
Jwheels: sup
Wontonimo: sup eh?
lopidav: \join
AntiSquid: like this? https://i.kym-cdn.com/entries/icons/original/000/033/222/moneyprintergobrrr.jpg
AntiSquid: fact: you're the kid of your parents selalmaz
jacek: :<
UncleHenry: Trying to learn coding anyone got any tips
Tetra_2021: name all your variables very clearly - overly clearly if you have to
WarDingo: Comments. When you look at your own code months later it may look like alien script.
KelvinAndHubbles: just code, you'll learn evauntally
Tomix1337: why codingame is so frustrating? Code Wars has much more clear instructions
oddoneout: code wars didnt have the automation games last time i checked
oddoneout: not really comparable
Tomix1337: what do you mean by automation games?
oddoneout: compete > bot programming
oddoneout: np, these are the most fun to me
Tomix1337: do they require a lot of skill from the programmer?
Tomix1337: I mean, are they ok for the newbie?
oddoneout: not really, I'm learning a lot about the algorithms on the fly
Astrobytes: Perhaps. You need some basic language knowledge though.
oddoneout: and some of them really hold your hand through the first 'levels'
Tomix1337: sounds promising, will give codingame a second shot then
Tomix1337: and what about "Learn" tab? Do people use it? Seems like a bunch of random topics
Astrobytes: Also, Tomix1337: what do you find unclear in the instructions?
Tomix1337: I tried the first game with the spaceship (descendce)
Astrobytes: Don't worry about 'Learn' tab for now, it's a semi-separate site with articles on just about everything people want to put on there.
Astrobytes: Tomix1337: what confused you about it?
oddoneout: I have never even been there lol
Tomix1337: The "game loop" in this exercise wasn't a real game loop. Every iteration moved the spaceship from one side of the screen to another
Astrobytes: Oh actually, I say 'don't worry about the Learn tab'... Tomix1337: https://www.codingame.com/playgrounds/55547/how-to-get-started-on-codingame
Tomix1337: I figured out the flow with the help of cerr and debug console
Tomix1337: but there were a statement while(1) in c++ which means loop never ends
Astrobytes: Check the link.
Tomix1337: but in reality, there was a terminating statement. It was just not visible to the user
Tomix1337: I'll definitely check it
Tomix1337: thanks a lot for your time ^_^
oddoneout: on error resume next
oddoneout: i hate vba so much
Astrobytes: Your program is run once for every testcase, the while loop confuses a lot of people to begin with. It only runs while there is input with required output.
TenOldMen: why do I have a "1" next to my home symbol still
TenOldMen: I clicked on it and its still there
Astrobytes: Sounds like a notification?
Astrobytes: Something on the quest map you haven't clicked on?
TenOldMen: Im pretty sure I clicked on everything already haha
oddoneout: same here, everything on the quest map clicked as far as I can tell
oddoneout: and I also have the (1)
TenOldMen: unless there is a hidden one somewhere
Astrobytes: Hm. Can't reproduce on my end.
oddoneout: could be related just to the newer accounts
Astrobytes: Right, go around that quest map and click on everything dammit!
Astrobytes: Contest signup maybe?
Astrobytes: Just guessing, it's the first I've heard of it today
oddoneout: I did sign up yesterday
oddoneout: I'm not sure if the issue was there before or not
oddoneout: It doesn't really bother me, but it did make me scan through the quest map a few times :D
Jstn123: hi
oddoneout: hullo
TenOldMen: it's a problem is you have OCD haha
Astrobytes: As the fellow in your profile picture may have said: Hah!
Wontonimo: y, y u work so well evolution w/ pop 2 and no crossover? u no supposed 2 work!
Wontonimo: having done a thesis in artificial evolution, i have come to the conclusion that its just "built different" on CG
Astrobytes: CG constraints
Astrobytes: On CG evolutionary generally only means basic RHEA
MSmits: The moon or the titan?
struct: How is the new cpu MSmits?
MSmits: ridiculous
MSmits: it says 36% usage and i am running 5 meta mcts at once
struct: Nice, it also should be faster right?
MSmits: I lowered turn time on some of the games
struct: or is the base clock slower
MSmits: because it was eating up the object pool
struct: Why not increase pool size instead?
struct: Would it affect in cg?
MSmits: could have enlarged the pool, but why bother, it's supposed to be similar to how it runs in CG
MSmits: in CG it does not manage to eat the pool
MSmits: i try to have similar performance in CG and local so it's representative
MSmits: doesnt have to be exactly right ofc, just similar
struct: yeah, when I run on windows performance is similar to cg
struct: but on wsl, its faster
MSmits: wsl?
struct: wsl2
MSmits: ok, so... wsl2?
struct: windows subsystem for linux
MSmits: ahhhh
MSmits: maybe some of the intrinsics dont get converted properly
struct: well also msvc is different from gcc
MSmits: sure
MSmits: should not be world shattering though
MSmits: at least it never was for me
MSmits: my old cpu was somewhat faster than CG alreadty
struct: for avx I think the difference is larger
MSmits: could be
struct: Also I think its good to have the gcc compiler at hand
MSmits: yeah for some things that could matter
MSmits: only time i really ran into limitations is when i tried to use uint128_t type for Hypersonic
struct: What did you use?
struct: gcc compiler on windows?
MSmits: i ended up using VS code, but I suppose i might just as well have defined my own type
struct: ah right because its 2 int64 right?
reCurse: msvc is garbage at simd
MSmits: I am not 100% sure how it runs under the hood, but yeah i suppose it is
MSmits: how do you define garbage in this case reCurse?
MSmits: 10% less performance or ?
reCurse: Like abysmal performance
struct: more
struct: Some instructions are much slower
jacek: garbage == windows?
reCurse: Ha ha. No.
reCurse: It just doesn't do well at making optimized code and inlining properly using intrinsics.
MSmits: ah
reCurse: I forgot the exact numbers and it heavily depends on your usag.e
MSmits: i suppose it depends on the coder as well, how much it hurts them
reCurse: But we can talk 25-30% at least.
reCurse: In my use cases.
MSmits: ahh ok
MSmits: could that have changed in the last few months since you tried this?
reCurse: No
MSmits: ah ok, just wondering, because if you find something is crap, you stop using it
reCurse: It's just something they never prioritized
MSmits: I see
reCurse: Maybe not a whole lot of overlap between hpc and msvc /shrug
MSmits: hpc?
reCurse: high performance computing
MSmits: aha
MSmits: well i didnt test simd stuff, but my bots usually run faster locally than on CG... probably CG's crappy cpus though
MSmits: using msvc i mean
reCurse: Like struct mentioned you can directly measure performance of compilers on same machine
reCurse: As for CG parity just use a fixed number of iterations
MSmits: thats hard, you need to know how many iterations you have and that changes during a game
MSmits: also cg has various cpus
reCurse: An average works
MSmits: so i dont bother getting too accurate about htis
reCurse: You can also calibrate by using a fixed state until you get the same number of iterations
reCurse: Over an ensemble of states
reCurse: Plenty of ways to go about it
MSmits: ah yeah, makes sense
reCurse: The thing that sucks if you use timing is it can vary heavily if you use the machine for other stuff
reCurse: Or background processes happen, etc
MSmits: yeah no doubt. I was wondering about that. If I run several meta mcts at once. I suppose they share cache and such? Maybe L1 ?
reCurse: Only way to know for sure is run vtune and check the actual number of cache miss
MSmits: ah ok
reCurse: If you have amd though you're sol
jacek: oO
MSmits: sol?
reCurse: I heard they have some primitive tools that might give you some insight
reCurse: shit outta luck
reCurse: Is my acronym usage offpoint today
MSmits: oh ok
MSmits: nah it's intel 9
jacek: sol rune in d2
MSmits: i cant believe how easy it was to get this thing running, i just plugged my old HDs in and everything worked in 10 minutes
reCurse: They really streamlined computer building in the past 10 years or so
jacek: HDD?
MSmits: 1 SSD and 2 HD
reCurse: My 12 years old HDD is dying
reCurse: Make backups kids
MSmits: yeah, i barely use the HDDs... do everything on SSD
MSmits: HDD for backups mostly
reCurse: Thankfully it's still accessible
reCurse: Yeah that's it, my backup was on it
reCurse: Except that's the one dying
MSmits: do you use cloud storage for anything?
reCurse: Something happened recently
reCurse: Not sure what
reCurse: But last boot took 15 minutes of disk clickety to get windows login
reCurse: And windows is not even booting off it
MSmits: weird
reCurse: And I get very slow speed over half of random files
jacek: could be sata cable? a faulty sata cable was causing random malcfunctions
reCurse: Slowly copying its content off over the past few days but still
reCurse: I hear distinct HDD noises
reCurse: Not sure the cable can do that
MSmits: hope your files arent corrupted
reCurse: It goes click, then 1 sec pause, then click again, etc
MSmits: but if it's your backup why would you need to copy it over?
FlyHead: your power supply isn't overloaded, is it?
reCurse: Because I'm not that smart
MSmits: ohh, you're using *that* definition of backpup :)
MSmits: backup
reCurse: Let's just say I don't have 100% redundancy of all content
FlyHead: "always have 3 copies"
MSmits: ah I see
reCurse: Think my power supply is fine
reCurse: At least HDD should not be in the top consumers
FlyHead: it actually could be
reCurse: But we did have a weird power outage just before the HDD started acting up
reCurse: So who knows
jacek: stop mining and itll be alright
MSmits: well you've been doing a lot of NN's
MSmits: so
reCurse: What does that have to do with anything
MSmits: the sentience on that HD is stalling
MSmits: it doesnt want to die
reCurse: Eh
struct: HDD preveting you from playing uttt, its a blessing.
reCurse: It's normal life expectancy for hard drives
reCurse: 10-15 years I think
FlyHead: psh
MSmits: bah using occams razor again
FlyHead: warranty is usually like 4
MSmits: never had HDD problems
reCurse: Don't wait until you do
MSmits: almost every time in the past when i had something that got broken it was a gpu overheating or a motherboard being hurt by static electricity
FlyHead: 10-15 years is like that gold fish you get from the fair and you've even left him out of water on accident and still didn't die
jacek: there are 2 types of people: those who dont do backups and those who will
FlyHead: XD
DomiKo: "warranty is usually like 4" My HDD lived for 4 years
reCurse: Warranty and life expectancy are two things
reCurse: If it doesn't make it to 5 years maybe time to throw off that seagate
DomiKo: and default HDD's in laptops are another :(
reCurse: Eh, laptops
Astrobytes: "If it doesn't make it to 5 years maybe time to throw off that seagate" - hahaha the truth!
reCurse: Those things are not built to last
DomiKo: true :(
Astrobytes: Semi-planned obsolescence
DomiKo: But when you are a student you have no choice
DomiKo: you have to have laptop
reCurse: Well in my days *shakes cane*
reCurse: Did all my studying without a laptop
Astrobytes: Was about to shake my fist but hey
Astrobytes: I did a Java exam by hand you know
DomiKo: I did C exam by hand
Astrobytes: Pen and paper.
jacek: because it was slower?
Astrobytes: BUT JAVA
DomiKo: Low level coding on paper
jacek: :soccer:
Astrobytes: Do you know how much my wrist hurt after
Astrobytes: It was worse than essay writing.
jacek: you had to do imports yourself?
Astrobytes: lol
DomiKo: imagine writing 30 lines and that's only hello world
Astrobytes: Sure. My other exam was like that, but it was better and more meaningful
FlyHead: i'm cool with writing code on paper as long as ctrl+space still works
MSmits: my functional programming class is better then. They're asking us to code something
MSmits: probably gonna go with a boardgame again :)
MSmits: maybe oware
Astrobytes: Relational database, boolean algebra stuff, proof by induction, all that crap, far more writing but infinitely more interesting than writing out java crap :P
MSmits: it's basically suppose to be a html gui running on elm
Astrobytes: You got this MSmits
MSmits: someone even wrote uttt in elm
MSmits: https://github.com/jjst/ultimate-tictactoe
Astrobytes: No, no I won't click that.
jacek: uttt eh
MSmits: but damn.. this FP class is the first time i actually feel like i know almost nothing before i started
Astrobytes: Good!
MSmits: yeah i suppose so
Astrobytes: You know you enjoy a challenge
MSmits: makes it hard work though, took me a full day to get all the homework done
MSmits: yeah thats true
reCurse: Just what we needed, functional programming in frontend
MSmits: :)
Astrobytes: You're a physicist. Scientist. Therefore you want a challenge.
reCurse: What's next, using javascript?!
Astrobytes: Yes - I am not a fan of this becoming something fashionable.
Astrobytes: Hah!
MSmits: lol reCurse, yeah that would be worse
Astrobytes: JBM's blog runs off some Haskell thingy
MSmits: I like how tightly controlled elm is, not sure if other FP languages are like that, but elm really puts you in a straitjacket to prevent mistakes
MSmits: which also leads it to give you really good feedback on errors
Astrobytes: Haskell will actually kill you if you try to break any rules.
MSmits: lol ok
MSmits: elm is less violent
MSmits: it's kinda weird to read these verbose error message
MSmits: it's like a person talking to you
Astrobytes: anyway, your homework is probably just (()()()(()()(()(((()))))))
MSmits: so hey, i dont know why you put this bracket here, but maybe it could be that i am not understanding your indentation right
Astrobytes: So just beamsearch it or something
MSmits: thats a lot of parentheses
Astrobytes: Too lispy?
MSmits: yeah
MSmits: no I get questions like these
MSmits: define a function that does the same as if then else
MSmits: and then the answer is
MSmits: ifThenElse : Bool -> a -> a -> a ifThenElse x y z = if x then y else z
jacek: make nn that will mimic this
jacek: ezpz
MSmits: a is actually a type
MSmits: type variable
MSmits: can be anything. So it's polymorphic
Astrobytes: I hate it already.
MSmits: lol
MSmits: i wonder how hard it is to write a minimax in this
MSmits: supposed to be easier to do recursion in FP
jacek: welp https://hackage.haskell.org/package/foo
MSmits: nice one
MSmits: does someone write bots in haskell?
Astrobytes: Yours jacek?
MSmits: i mean here on CG?
struct: jbm
MSmits: are they any good?
Astrobytes: JBM does yes MSmits
jacek: nope. its some ranodmold one
Astrobytes: Ah ok jacek
jacek: and i cant type. good night
MSmits: maybe when you wake up your typing will have returned to normal
Astrobytes: gn jacek, cya tomorrow
MSmits: gn
Astrobytes: MSmits: quite a few of the #fr guys use Haskell and other FP langs
MSmits: oh ok cool
MSmits: my assumption is they're all slower languages
Astrobytes: It's worth asking them if you have questions
MSmits: just wondering about the speed
struct: I would not recomend you though
struct: for sanity sake
Astrobytes: :D
MSmits: did you have a bad experience struct?
struct: yes
MSmits: talk to us about it
struct: I googled haskel syntax
MSmits: ohh ok
Astrobytes: JBM's Haskell is usually very elegant though
MSmits: i thought you had problems with the french guys
Astrobytes: Haskell is in general quite elegant I find (ymmv and I am by no means proficient)
MSmits: looks similar to elm
Notgoodatcoding5: Hi
MSmits: oh, elm actually compiles to javascript
MSmits: so it's like writing javascript without having to write javascript. Who wouldnt want that
Astrobytes: ...
Astrobytes: On the one hand...
Astrobytes: Yet the other.... :thinking:
MSmits: :grin:
MSmits: hi Notgoodatcoding5
MSmits: did Astrobytes ban you off your Notgoodatcoding1-4 accounts?
MSmits: he gets overzealous sometimes
Astrobytes: Me? Overzealous?
Astrobytes: I haven't banned for over a week, perhaps 2
MSmits: ahh ok
MSmits: well i saw mk is back
reCurse: And I didn't ban anyone in the past hour
reCurse: Slow day
darkhorse64: So merciful
Astrobytes: I've been avoiding CG chat until recently
MSmits: i must have missed you avoiding chat
Astrobytes: I've been active recently
MSmits: yeah
Astrobytes: Prior to that I wasn't
MSmits: well i suppose if you go back far enough
MSmits: 2018?
**Astrobytes slaps MSmits
MSmits: oww
Astrobytes: Fool
Astrobytes: :D
Astrobytes: No, after euler did the disappearing act I've been on and off
MSmits: you mean you took a few weeks break some time?
MSmits: ahh ok
Astrobytes: Before the CG Chat Quiz
MSmits: he may be back, might be good for him to take a break
Astrobytes: What's the point?
MSmits: i've taken breaks off things i really liked and came back
MSmits: sometimes it helps to see things in perspective
Astrobytes: He validated the Binary Extension solo game today
MSmits: oh
MSmits: not sure what that is
MSmits: sounds like something i might receive in my email spam folder
Astrobytes: Binary search trees avoiding bombs in some nodes
Astrobytes: But not quite as easy as that might sounds
Astrobytes: *sound
MSmits: I see
MSmits: so it's a 1D mine sweeper?
Astrobytes: Ehhhh-not quite
UnnamedCodinGamer: clobber level one passed
Astrobytes: It's still in contribs
MSmits: grats, i am still trying to understand the papers about clobber.
MSmits: atomic weight, nimbers applied to clobber etc.
Astrobytes: Hah, beastly UnnamedCodinGamer
Astrobytes: good job
UnnamedCodinGamer: here come the real guns then
Astrobytes: MCTS variant?
UnnamedCodinGamer: i mcts-ed it
Astrobytes: vanilla? Interesting.
MSmits: darkhorse used simd here right?
UnnamedCodinGamer: using bitboards
Astrobytes: ofc
MSmits: seems a bit overkill though. Isn't it like 2 bit ops?
Astrobytes: Not sure if he did *yet* MSmits
UnnamedCodinGamer: I have not still checked if it has bugs in move generation
MSmits: you shift and & with opponent board
MSmits: 4 times
Astrobytes: ^
MSmits: connect4 was way more complicated to use avx with
Astrobytes: eval for minimax I do some more shifting though
MSmits: ah, I will mcts this i think
Astrobytes: My bitboarded version is not in the arena yet
Astrobytes: I am thinking the same MSmits
Astrobytes: Potential EPT
MSmits: there will be guys at the top that use math though. This is a math game like D&B
Astrobytes: *potentially
MSmits: plain mcts and minimax will be beaten by them
MSmits: and possibly also NNs
Astrobytes: Possibly yes.
UnnamedCodinGamer: I hope level 2 does not get approved
MSmits: the problem is that every board is always 1 move away from completely turning around, at least that is what it was like in D&B
MSmits: hard to eval somethign like that
Astrobytes: oh the 10x10 version UnnamedCodinGamer?
Astrobytes: It won't be
UnnamedCodinGamer: hope so, I just started using bitboards
MSmits: from what i read people eval the "islands" by evaluating your pieces compared to the opponents'
Astrobytes: It was there just for testing purposes previously, most people agreed on bitboard-friendly
MSmits: i think the 10x10 is more popular in the olympiad scene
MSmits: but that may be because they get more than 100 ms
Astrobytes: Yeah, this version is more CG-friendly
MSmits: do you know if there are obvious opening plays?
MSmits: or are most plays equally good?
Astrobytes: And yeah, being next to more than one opponent piece can be bad, better to stick together with your own pieces, also depending on free space - there are calculations to be done
MSmits: if it's the 2nd, then it's impossible to make a strong opening book and we dont need more than 8x8
Astrobytes: I don't believe there are solid opening strategies, we need to check this before approval
MSmits: yeah I'll try
Astrobytes: Still in WIP anyway
MSmits: dont have anything else to work on currently
struct: MSmits time to use the 12 cores
MSmits: 10 only
MSmits: but it's plenty :)
Astrobytes: Oh you got the new MB
MSmits: yeah
Astrobytes: Liking it?
MSmits: https://imgur.com/a/6mOhLDq
Astrobytes: Point made :D
MSmits: :grin:
MSmits: I'm gonna do a good test to find out the effectiveness of real opening books in uttt
MSmits: i did a baseline with no book and will do a new batch of tests after every million games
MSmits: no counterbook, just meta mcts
MSmits: it's a fun experiment
Astrobytes: Won't that basically come up with the same thing?
MSmits: no i mean, after 1M, 2M, 3M etc.
MSmits: see if WR goes up or not
Astrobytes: As in a counterbook for everything?
MSmits: no
MSmits: i will not use opponent information
MSmits: just selfplay
Astrobytes: Oh ok, gotcha
Astrobytes: Given enough games though.......
MSmits: well there is always codesize limit, but sure, i can go up to 100 million games without hitting that i think
MSmits: maybe further
MSmits: the thing that will determine whether the book is effective is mostly, at which stage of the game is the game actually decided? When do mistakes get made
MSmits: I think it might often be in ply 20-30, in that case book wont help as much
Scarfield: Hardly an "opening book" at that point
Astrobytes: I'm not well-versed enough in UTTT to comment one way or the other there
MSmits: no i meant, the book likely wont reach that far Scarfield
MSmits: which is why it may not help in that case
Astrobytes: And yes Captain ObviousField :D
Scarfield: yea, im just being dumb :)
Astrobytes: Not dumb not
Astrobytes: *no
Astrobytes: dammit
Scarfield: Leiutenent NickstroBytes
Astrobytes: :D
MSmits: whats a nickstrobyes?
Astrobytes: How's it going Scarfield?
MSmits: does Astrobytes nick things?
Scarfield: good good, bought Valheim and have been stuck in the viking world for some days
Astrobytes: It's the nickname wordplay we have MSmits
MSmits: ohh nick as in nickname
MSmits: got it
MSmits: thought he meant you were stealing things, but sure
Scarfield: xD
Astrobytes: Scarfield: it's good then I take it :D
Scarfield: yea its nice
Astrobytes: MSmits: :rofl:
MSmits: mmh a survival game and it's not in eternal early access?
Astrobytes: MSmits: the only thing I steal is hearts, And souls on a bad day :P
MSmits: I see
Scarfield: no idea, only a few devs afaik
Scarfield: usually i dont buy early access, but a friend told me it was way worth i
Scarfield: it*
MSmits: ohh it is early access
Astrobytes: Nnngh. Now I wanna play ArmA
MSmits: tag didnt show up in front
MSmits: i had a ton of fun playing Rust
MSmits: best game experience I ever had was in Rust
MSmits: I built a little safehouse to hide in
Astrobytes: But not programming right
MSmits: some guy outside my door was taunting me
MSmits: heard his voice saying, oh come on open the door, i wont kill you
MSmits: then it was like AAAARGGH
MSmits: stepped in my bear traps
Scarfield: xD
MSmits: i opened the door, killed him, stole his stuff, and got back inside
Astrobytes: Beastly trap.
Scarfield: he was totally friendly, how could you
MSmits: he was a killer :P
Astrobytes: 100%
Scarfield: but he said.. :p
MSmits: lol yeah
Astrobytes: That's why
MSmits: game was full of naked guys with rocks. Average lifetime was like 15 minutes
Astrobytes: Naked guys with rocks...
Scarfield: im sold already
MSmits: you would die 30 times or so before you finally survived long enough to build a safe place
Astrobytes: Clothed?
Scarfield: sounds like Ark
MSmits: yeah its like ark
MSmits: probably with some clothes made from wool or leather
MSmits: it has guns too though
MSmits: people can blow up your house with C4
MSmits: but very expensive
Astrobytes: Well I wasn't expecting titanium alloy space marine suits
Astrobytes: Maybe an iron loincloth or something :P
MSmits: it's a bit like fortnite but with a persistent server and building actually takes time and resources
Scarfield: reminds me of space engineers, havent played that for a long time. was making a working rubiks cube :)
MSmits: ohh
MSmits: i never played a game more than SE
MSmits: I scripted and modded it too
Astrobytes: Didn't you play that one hardcore MSmits?
MSmits: yeah
Astrobytes: ah you replied :/
Scarfield: yea you linked your youtube :)
MSmits: no doubt i did :P
Solarite-E: how does one code?
Astrobytes: depends on your encryption
Astrobytes: 1 could be a
MSmits: Solarite-E do you mean like a barcode?
Scarfield: a keyboard is a good start, seems you already have that
MSmits: he might have done the smartphone kind of talking that takes twice as long and causes neck injury
Scarfield: but watch a beginners tutorial for the language you want to learn, and try some easy puzzles
Astrobytes: hehehehe
Astrobytes: OK, I'm out for tonight, I'm at that point where I can only do troll answers
Scarfield: xD
MSmits: thats when it gets gud
Solarite-E: i've just found it difficult to learn coding so far
Astrobytes: MSmits: depends!
Astrobytes: Anyway, catch you guys later, gn :)
Scarfield: gn
MSmits: Solarite-E this is a place you go when you mastered strings, loops, conditions and other basic coding concepts
MSmits: gn
Solarite-E: well i might have to learn how to code :\
MSmits: codecademy is one of the places where you can learn that
MSmits: messing around with trinket.io and repl.it helps too
MSmits: those are just online IDEs
MSmits: but nice for beginners
MSmits: we use them in teaching
Solarite-E: thanks
MSmits: what helps is to set a goal for yourself
MSmits: make something simple
MSmits: not as simple as hello world
MSmits: but maybe a simple calculator
MSmits: press 1 to do addition, press 2 to do subtraction etc.
MSmits: create a little python3 app in trinket or repl that does that
MSmits: or something that gives you a table of multiplication when you input a number
MSmits: like. input 5 it will do
MSmits: 1 x 5 =5
MSmits: 2 x 5 = 10
MSmits: etc
MSmits: that will test your grasp of input, printing, and loops
MSmits: and strings too
MSmits: google a lot
MSmits: the easiest puzzles on CG are just one step beyond that
tutubalin: *above that
tutubalin: *below that
MSmits: *behind that
MSmits: *beneath that
MSmits: *before that
MSmits: gotta get some sleep, gn :)
Devinawesley: I like this website
Wontonimo: me too
Wontonimo: wow, i never knew we had that in common
Devinawesley: I wish I could be doing these in Python but I was sent here by a company I'm interviewing for and they work pretty much exclusively in C#. So C# it is!
Wontonimo: well, you CAN do it in m
Wontonimo: python
Wontonimo: just, not for that job
Devinawesley: haha good point!
Devinawesley: I'm really hoping the interviewing goes well though. I'd be changing careers from automotive manufacturing to software development. Finally making my way towards what I want to do instead of just what I'm good at
Wontonimo: i'm not here for a job. i'm here because ... wait, why am i here?
JLukeSkywalker: for fun
Wontonimo: oh, yeah!
Wontonimo: Thank JLukeSkywalker, always one step ahead of me
Wontonimo: (waves fist)
JLukeSkywalker: i legit find this more enjoyable than video games
Wontonimo: cheers to that.
Wontonimo: my wife walked into my office and asked what show i was watching and cheering. it was CSB
JLukeSkywalker: Lol
JLukeSkywalker: The weather got nice, been out cycling. Now is your chance to surpass me
Wontonimo: i'm closing in ... just 40 some odd points away
Wontonimo: no, not points , positions. many many points
JLukeSkywalker: :grinning:
Wontonimo: (waves fist lest convincingly)
Wontonimo: how do you do italic here ?
Wontonimo: *is this it?
Wontonimo: nope
Wontonimo: _how about this_
Wontonimo: *or this*
Wontonimo: (╯°□°)╯︵ ┻━┻
**Wontonimo slaps Wontonimo around a bit with a large fishbot
Wontonimo: oh, that's a weird command
JLukeSkywalker: lol
Wontonimo: what bot or optimization were you working on last JLukeSkywalker ?
JLukeSkywalker: prime funge
JLukeSkywalker: finished my algorithm, just have to map it out now
JLukeSkywalker: https://www.codingame.com/multiplayer/optimization/cgfunge-prime
Wontonimo: oh man, i looked at that and, i'm sure i could do it but at what cost
Wontonimo: and then i remembered i love those kind of puzzles
JLukeSkywalker: many brain cells have been lost already
JLukeSkywalker: and only 54% done
Wontonimo: yeah, but the final satisfaction of seeing it work
JLukeSkywalker: yeah, that will be amazing
Wontonimo: how are you scored?
JLukeSkywalker: number of operations performed
JLukeSkywalker: i guess each iteration counts, so if the pointer passes over an empty block it adds a point
JLukeSkywalker: rn mine just categorizes 1,2,3
Wontonimo: ah
JLukeSkywalker: built the algo for all numbers using the funge operations, just havnt mapped it onto a 2d grid yet
Wontonimo: that's impressive
Wontonimo: did you break it down into functional components
JLukeSkywalker: http://chat.codingame.com/pastebin/98a4406b-ef47-4cbd-b87c-36a111775f6e
JLukeSkywalker: python
Wontonimo: oh yeah, i remember you talking about that and showing a snip of the code
JLukeSkywalker: I just used while loops and ifs in the python algo
JLukeSkywalker: thats what I need to map into the 2d
JLukeSkywalker: using the : to make the loops
JLukeSkywalker: going to take lots of graph paper
JLukeSkywalker: and brain power
JLukeSkywalker: think i might get in the top 50
Wontonimo: hmm ... how about make a 1000 x 1000 CG Funge computer simulator, and start by putting your whole program on the top line going left to right, with loopie controls on the second line to get back to wher the looks need to get back to
JLukeSkywalker: max width
Wontonimo: then encode something like a GA to fold it
JLukeSkywalker: if the pointer goes out of bounds it stops, no wrapping of the ppinter
Wontonimo: score the GA to minimize area, with the objective to fold it into the max width / height
JLukeSkywalker: the max height is 30, max width 40
JLukeSkywalker: so it is pretty tight
JLukeSkywalker: because of how small, i think by hand might be the best solution
Wontonimo: ok. I'd start with linear solution first. verify that it actually works, then fold it
JLukeSkywalker: you cant go linear because of the way the : operator works
Wontonimo: when i say linear, what i means is
Wontonimo: have the bulk of the operations read from left to right along the first row. For loops, make them turn right (down) and then use the < and ^ operators to return back to where you need to be
Wontonimo: using the second row
JLukeSkywalker: there is nowhere near enough space to even approach that
Wontonimo: that's why i'm saying do it on 1000x1000 in your own local environemnt first.
Wontonimo: then when you know it works and it mostly fits on 2 lines, you can bend it at position 40 using a V operation
PewPewBewm: I write so much exploratory code on my own machine before I even touch the web IDE... not sure if that's a good thing, or a sign of low confidence in myself.
JLukeSkywalker: by the time I set up all of that and write code that throws it into the 30x40 I could have just solved it on graph paper
Wontonimo: PewPewBewm that's what i do
PewPewBewm: Oh, and ... Hi people o/ : )
Wontonimo: PewPewBewm I even write unit tests locally also
PewPewBewm: I'm guessing the red text means private message. New to the chat.
Wontonimo: yeah, i first thought i was being yelled at
PewPewBewm: lol
Wontonimo: or got a strike or something
Wontonimo: JLukeSkywalker I applaud your tenacity! Do it!
PewPewBewm: That "Ultimate Tic-Tac-Toe" is driving me crazy : ) I optimised way too early. I always do : /
Wontonimo: OH ? it's got you too? Nice!
PewPewBewm: Oh, cool... the C++ allows me to inline asm. I didn't expect that to be possible in the VM.
Welcome to a whole new level of crazy : )
tutubalin: virtualization is supported on CPU level like 20 years
Wontonimo: gotta go
Wontonimo: later dues
Wontonimo: people
PewPewBewm: I know, but I just kinda ssumed that the VM wouldn't like it.
PewPewBewm: Cya Wonton o/
Wontonimo: (okay, i gotta do it since i found the command)
Wontonimo: (╯°□°)╯︵ ┻━┻
Wontonimo: :)
tutubalin: that's a special command for the case "i wasn't able to find the command i wanted, but at least i found that"
Wontonimo: :thumbsup: