« first day (1585 days earlier)      last day (2228 days later) » 

4:00 PM
Updated code: other_user = regex.sub('([^@]{3,})\s', '', other_user)
Further improved the regex: other_user = regex.sub('[^@\s]{3,}', '', other_user)
 
That's going to substitute three or more non-@ non-space characters for nothing... I don't think that's what you want
and remember raw strings
 
Ok I misunderstood how regex.sub works then
Is it the right thing to use?
 
You're trying to get the first word (i.e. everything before the first space) without any @s on the front?
 
Basically yeah
Think my regex is ok, just implementing it in python is where I fall down
 
Okay - well the @command will already have split spaces for you, so other_user will always be one word, no spaces. You just need to strip @.
 
4:14 PM
1 hour ago, by WELZ
!!/welcome , you can leave now
1 hour ago, by SmokeDetector
@WELZ Welcome to Charcoal HQ @, you can leave now! I'm SmokeDetector, a bot that detects spam and offensive posts on the network and posts alerts to chat. You can find more about me on the Charcoal website.
!!/coffee two words
 
@CalvT븃 brews a cup of Macchiato for @two words
 
you just need other_user = other_user.replace('@', '')
@quartata is that by-design or bug?
 
!!/coffee @two words
 
@CalvT븃 brews a cup of Americano for @@two words
 
I basically copied the coffee function so functionality is the same
 
4:17 PM
!!/welcome @210948
 
@WELZ Welcome to Charcoal HQ @@210948! I'm SmokeDetector, a bot that detects spam and offensive posts on the network and posts alerts to chat. You can find more about me on the Charcoal website.
 
Huh. Okay. I'd suggest doing a regex match rather than a regex sub, it's just more intuitive to me. That'd be [^@\s]{3,} as you thought.
 
@SmokeDetector Lol, you're not a mod.... nice try
 
@ArtOfCode that'd be other_user = regex.match('[^@\s]{3,}', other_user) then correct?
 
@ArtOfCode fair warning: GSoC takes a lot of resources... and a lot of patience
 
4:20 PM
@Undo aye, kinda assumed it would
 
other_user = regex.match(r'[^@\s]{3,}', other_user) actually
 
Heavy recommendations in the guides to only take 1 or 2 students first time
 
Anyone here got experience with teaching computer science?
 
kinda
 
@Magisch kinda sorta
cough @thesecretmaster
 
4:21 PM
And, as usual, consider who your audience is for this - mostly not the US.
 
I have an utterly useless intern and I'm questioning if the intern is useless or I'm an useless teacher
 
@ArtOfCode Hrm?
 
43 secs ago, by Magisch
Anyone here got experience with teaching computer science?
I figure the CSEd mod who teaches Ruby probably does :P
 
We have an intern that's staying with us for a whole year
He's 16 and has zero clue or interest in computers, yet is doing a computer science themed college qualification program that the year of internship is a requirement for
 
are interns in the EU covered under to super-employee-friendly laws?
 
4:25 PM
He's supposed to teach himself programming and then help work on our ERP software. So far, this has not worked out at all
 
Like you can't fire him without buying him a new puppy or something?
 
@Undo I can fire him if I want to, we're not paying him
 
... oh. That's just straight up illegal here.
 
I really, really don't want to though
 
(doesn't keep people from doing it)
 
4:26 PM
@Magisch you can fire him?
maniacal evil laugh
 
Yes
 
PR updated
 
It's a requirement for his graduation
if I fire him he's gonna lose a whole year
 
tell him to vote for you on SO or he's fired
 
Might be doing him a favor if he's going for a CS-ish degree...
 
4:27 PM
not a degree
pre-degree qualification
 
takes a special kind of person to enjoy sitting in a chair all day staring at things that should work
 
Main problem is he doesn't get boolean logic at all
 
That's his problem. Sounds harsh, but that's how it is. He's got to learn to do the needful by himself, without hand-holding. You're there to assist and provide some experience and expertise, but you're not there to be his full-time teacher.
 
if(a & b) then c does not follow for him (or I'm shit at explaining)
 
@Magisch this is a significant problem
 
4:28 PM
@Magisch I mean, getting the syntax right might help ;)
 
I gave him the task of making a pseudocode algo to list the first 10 prime numbers
a week ago
 
try him on fizzbuzz
 
@ArtOfCode to be fair, I don't understand bitwise operators either (or whatever that is)
 
@Undo either bitwise or set intersection
 
@Undo You do, you just don't have the patience to write down what they do and apply that when you can have the same task done 10x in less time otherwise
point is
 
4:29 PM
I just type stuff into Google
 
can I make someone "get" boolean logic
 
that is also a skill to be learned
 
or does he have to by himself
 
how to google
 
So... why does he need to get that specific thing?
 
4:30 PM
conditionals are the basis of all programming
 
Why not give him a real, but relatively non-critical, task in the real code?
 
@Undo to someone who has never coded and can't?
 
@Magisch "You can have cake if you eat your veg and wash the dishes" is the same as "if (a && b) { c }`
real world examples might help
 
good idea
 
Get him to figure out what A, B and C are for that example
 
4:31 PM
@Magisch I personally learn way better from looking at existing code in, e.g. a new language, than I ever do from learning fundamentals.
 
@Undo Aye, likewise, but we're already programmers. There's a pretty big difference there.
 
eh
 
first step will be figuring access control for our code thne
because all 5 of us have the same permissions (all of them)
 
@Magisch Just copy the repo, email it to him. Bam, read-only access
 
Do you want to add setup a webserver and semanticui to the list of tasks I expect of him?
 
4:33 PM
Your call on setting up the environment. I'd probably do the setup myself
 
we had another intern in the same program last year
 
@ArtOfCode eh. My first code was blindly following an Objective-C tutorial. I had no idea what I was typing, but seeing colors actually show up on the screen was way more motivating than binary truth tables.
 
and he was able to code productively in a week
probably set some unrealistic expectations
 
(btw, Obj-C is a horrible first language and no one should ever do that. The most bizarre habits...)
 
I started with c
was fine
creates a deep appreciation for not having to use pointers
 
4:36 PM
Starting with Obj-C, that's bravery right there
 
More ignorance
 
gonna have to translate that
he doesn't speak english
 
@Magisch That doesn't help. Most programming stuff on the web is in English.
 
@DavidPostill don't have to tell me that
 
4:43 PM
@ArtOfCode what is?
 
[ SmokeDetector | MS ] Pattern-matching website in answer: How many keywords are ideal for the META keywords tag? by Nagendra Singh on stackoverflow.com
 
29 mins ago, by SmokeDetector
@CalvT븃 brews a cup of Macchiato for @two words
Probably the space in there
sd k
@DavidPostill ^ superuser.com/users/872843/nagendra-singh is an SEO spammer, 2/2 on SO + profile picture
 
@Undo Thanks. He won't be spamming on SU ;)
 
:)
 
@Magisch Sorry for the delay, I lost cell service for a bit. If you're gonna be taking more time to teach this student, you might want to try asking some questions on Computer Science Educators. For teaching boolean logic, as Art/Undo said, real world examples are good. Also, based on the example you gave it seems like they're missing the idea that the stuff inside the parens is evaluated before the stuff outside the parens.
 
4:48 PM
@ArtOfCode thanks for the mention of the FizzBuzz - never heard of it and it was quite interesting for my limited knowledge :)
Although admittedly I did it in JS which is probably one of the easiest
 
@CalvT븃 the whole point is if you can do it in any language, you are already ahead of the pack
@CalvT븃 I don't particularly think line length is something you need to be nervous about; if you really need to put a long string, I think overriding flake8 for that one line is fine
but there are good workarounds, and the line apparently needs to be shorter than that for other reasons anyway
 
[ SmokeDetector | MS ] Misleading link: Java API for parsing MapInfo TAB format by Surabhi Mundra on stackoverflow.com
 
'120 characters' = '60 characters' (backslash) (newline) '60 characters' in Python
 
Here's my solution if anyone feels like criticizing it jsfiddle.net/asebog2u
 
but 120 is a completely artificial limit anyway; if you can't keep it at 80, why limit line lengths at all?
(I know it's a common convention, but I don't think it makes much sense)
 
4:56 PM
fp- by DavidPostill
 
I was able to break it down anyway :)
Was for the !!/welcome command
 
@Magisch not exactly clear on my hourly salary but no, far from that ... and anyway, you have fewer children than I do
 
@tripleee 80 was the width of some old tech, I forget which, which is why that's a thing. I use 120 or 150 now because that's about as many characters as I can fit in one non-wrapped line of a typical IDE.
@CalvT븃 you don't need number, just use i; declare i as var i not global i; personally I'd move the logic into the loop instead of a separate function; use descriptive variable and function names; you can do the mods in the if statements and avoid the extra variables.
 
hey
 
o/
 
5:03 PM
can you guys make sense of the situation where there's (1) a question by a 3k user with no answers, (2) a question by a 50-rep user which is almost a literal copy of the previous question, and asked 3 hours later, and gets an answer, with (3) a helpful mod flag about the duplicate questions but no other action taken otherwise?
 
@ArtOfCode Updated, and thanks. It wouldn't work at first so I broke it out to be able to debug it easier. jsfiddle.net/asebog2u/4
 
Possibly a mod meant to do something and forgot. Dupe-close 'em.
 
neither have upvoted/accepted answers :/
the one posted later has an answer but it's quite crap so I'd rather not upvote only to be able to dupe close the other copy
 
Raise another flag asking for a dupe-close (mention why you can't) or a merge
 
OK, I'll try that, thanks
 
5:07 PM
@ArtOfCode I still make my Emacs windows 80 characters because it's a good width for me. 80 was a limit on typewriters originally and then transferred to hardcopy terminals (though there were wide ones which did 120 too)
and this I know from museum visits, I'm not quite that old
@AndrasDeak speaking of students, we sometimes see that when several new users are starting a new course, does it look like that could be the case here?
 
no, the code and wordng are almost exactly the same, not just roughly the same concept or the same starting point
there's only a title edit (mandatory), and a minor formatting difference in the text. Otherwise same wording and same code.
 
Appreciate it if someone would review this: github.com/Charcoal-SE/SmokeDetector/pull/1787
 
@Magisch some people have serious problems grokking variables, the connection to variables in mathematics is sometimes more confusing than helpful
 
5:27 PM
Anyone have something they need hacked? Someone is generously offering their services in an email to me
 
Yeah sure Undo. My router would be nice... Just want to see if they can become a part of my LAN and print a test page for me
 
[ SmokeDetector | MS ] Link at end of answer: Can't use unallocated space on a Win 2k8 R2 VM by Blake on serverfault.com
 
@ArtOfCode I've changed it back to regex.sub, and changed the regex to accept all everything except what I want to keep. And it works in the terminal
 
fp- by CalvT븃
 
5:37 PM
@Undo Got an estimate on when you'll be able to deploy the SQL exploder? Kinda want to make sure I'm around as well
 
I suppose now
 
Oooh, and a security vulnerability notification
 
@ArtOfCode I'll get that one
 
@ArtOfCode ooh
 
uh... I kinda already committed :)
 
5:39 PM
that works too
@ArtOfCode gotta run bundle update loofah to get that to stick
 
done
 
[ metasmoke ] ci/circleci failure on 994a804: Your tests failed on CircleCI
 
sigh
 
So I have to make sure the MS user has CREATE USER privs?
 
and GRANT, aye
 
5:45 PM
[ metasmoke ] ci/circleci success on 942961b: Your tests passed on CircleCI!
 
@ArtOfCode Does directly copying the sample file work?
 
should do, unless you want to change the password
 
meh
/var/railsapps/metasmoke/shared/bundle/ruby/2.5.0/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in `_query': Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF NOT EXISTS metasmoke_blazer@localhost IDENTIFIED BY 'zFpc8tw7CdAuXizX'' at line 1: CREATE USER IF NOT EXISTS metasmoke_blazer@localhost IDENTIFIED BY 'zFpc8tw7CdAuXizX'; (ActiveRecord::StatementInvalid)
	from /var/railsapps/metasmoke/shared/bundle/ruby/2.5.0/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in `block in query'
@ArtOfCode ^
 
Huh? No syntax error for me... version difference?
 
mysql Ver 14.14 Distrib 5.5.59, for debian-linux-gnu (x86_64) using readline 6.3
 
5:52 PM
Yup, 5.7.21
try dropping the IF NOT EXISTS
 
[ metasmoke ] ci/circleci success on 14d57a5: Your tests passed on CircleCI!
 
That works, but kinda ugly
 
[ metasmoke ] ci/circleci success on 9dceb99: Your tests passed on CircleCI!
 
If it works it's probably okay... one-time thing
 
migrations passed
 
5:55 PM
 
access issues
 
what issues? I can get to it
 
[ metasmoke ] ci/circleci success on 53e3a3c: Your tests passed on CircleCI!
 
ah, yep. Am idiot. Standby
 
in Charcoal Test, 1 min ago, by PulseMonitor
halflife:2018-03-21 17:55:41,501:https://goo.gl/ieYFcx redirects to https://cryptocomes.com/wikicoin-how-bitcoin-transactions-work?utm_source=mass%‌​20posting&utm_medium=upwork
definitely spam
 
5:57 PM
tpu- by tripleee
 
@ArtOfCode there were three of them, any input on what we should do about the other affected components? is anyone using them and what's the impact?
 
Uhhh.
 
I'm starting to think this really really wants MySQL 5.7+
 
I hate to tell you this @Undo, but... looks like MySQL needs upgrading
MAX_EXECUTION_TIME is 5.7
 
@ArtOfCode fwiw the Debian image I built the latest Docker image on simply pulled in MariaDB instead with the deps I had ... could we simply go for that?
 
6:00 PM
MySQL is a touch faster
 
so I heard but the regex dialect alignment also buys us better interoperability with SmokeDetector
is the slowdown really that significant?
 
Dunno, haven't tested it
 
Upgrading...
 
EC2 download speeds are the best
 
6:03 PM
maybe @thesecretmaster will do it in exchange for shoutouts
 
@quartata looked at that, agree it looks good, will take a lot of implementing
 
@ArtOfCode "
Mysql2::Error in SearchController#index
Can't connect to MySQL server on '127.0.0.1' (111)"
 
I know.
 
MySQL upgrades tend to kill MySQL servers for a while :P
 
Just when I want to search for s/thing :/
 
6:04 PM
I just kinda pulled the guts out of metasmoke without telling it
 
Shouldn't be too long coming back
 
like doing a surprise kidney transplant
 
no probs ;)
 
Looks like it's working
 
I really want to make [surprise-kidney-transplants] a tag but it's too long :(
@Undo sure is
 
6:07 PM
fancy
metasmoke has a SQL exploder. Try to get my account token. If you do, send me an email.
9
 
and back to 5 pins we go...
SELECT command denied to user 'metasmoke_blazer'@'localhost' for table 'users'
:)
 
[ metasmoke ] ci/circleci success on 61a5ce9: Your tests passed on CircleCI!
 
And right off the bat let's have some data:
Pretty clear when we started 1 autoflag and 3 autoflags. No idea what the giant jump is.
Possibly that period of weird reporting from FIRE we had.
 
probably
 
6:17 PM
that's really cool!
 
Something I've always wanted to see: Spam by hour, with sine curve of an arbitrary timezone overlaid on top
 
Now there's a thing: Since autoflagging started, we haven't been over 500s average TTD once.
 
Routing error?
 
Excluding the weirdness, of course
 
we got pretty close last sunday
408
 
6:19 PM
@Catija try again
 
I think we're gonna want to wait a month or so to get more data from the new deletionwatcher
 
@ArtOfCode Fixed :D
 
@ArtOfCode I like how they conveniently fit on the same scale
 
Even better if you restrict it to fewer months
 
are those hanging blue balls weekends?
 
6:23 PM
Likely
 
wonder how the red one looks if we omit those points
 
J F
@ArtOfCode:
> Mysql2::Error: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'posts.created_at' which is not functionally dependent on columns in GROUP BY clause; this is in
 
Someone wrote their SQL wrong ;)
 
J F
Is there any way to get the rest of the error?
 
"incompatible with SQL mode "ONLY_FULL_GROUP_BY""
definitely haven't seen that error far too many times
 
J F
6:26 PM
Thanks!
 
@ArtOfCode invalid syntax, expected end-of-string identifier
 
dammit someone noticed
 
>:D
 
uh
there's a week -11?
 
J F
6:38 PM
> Week 0 is this week.
 
I just got a message on MSE from a very annoyed moderator :(
 
@quartata Hrm?
 
@JF the weeks run from -11 to 40 though? Or am I being thick
 
J F
@CalvT븃 Today is week 0, last week is week -1, next week is week 1
 
@JakeSymons oh? What'd you do?
 
6:39 PM
@JakeSymons Ouch... they tend to be fairly placid I thought... If you've annoyed them...
 
J F
Data from next week is actually from last year
 
@JF 👍
 
@CalvT븃 I flagged something and it got declined, and it was a very long and large rant/reason why my flag was declined. ,Apparently I need to be more expedient
 
@JakeSymons Care to share the rant?
 
6:42 PM
[ SmokeDetector | MS ] Manually reported answer: Cloned disk - duplicate disk signature, how to resolve? by Ryan Pirsten on superuser.com
tpu- by Glorfindel
 
@tripleee sorry just catching up, what am I creating an issue for, and does it still need to happen?
 
@BlackICE Don't think tripleee is around, and don't think it needs to happen :)
 
[ SmokeDetector | MS ] Manually reported answer (batch report: post 1 out of 2): How can i remove duplicate files in google drive using app script with javascript? by Ryan Pirsten on stackoverflow.com
 
@BlackICE you're not and it doesn't :)
 
6:43 PM
[ SmokeDetector | MS ] Manually reported answer (batch report: post 2 out of 2): finding and deleting duplicate files (md5sum) by Ryan Pirsten on stackoverflow.com
 
J F
!!/test duplicatefilesdeleter
 
> Would not be caught as a post, title or username.
 
J F
!!/watch duplicate\W?files\W?deleter
 
tpu- by J F
@JF You don't have code privileges, but I've created PR#1788 for you.
 
@CalvT븃 Apparently, I caused much frustration to the mod by my one off topic flag, even though the post was migrated anyway
 
6:45 PM
@Glorfindel could we just have a record on how you know it's spam? Purely because that's all the user has posted? Or something else?
 
@JF CONCAT(DATE(posts.created_at), '-', WEEKOFYEAR(posts.created_at)) instead would make it more intuitive
 
@CalvT븃 that's the same user as the SuperUser post.
Also, they seem to have a habit of posting one-line answers: stackexchange.com/search?q=%22DuplicateFilesDeleter%22
 
Merged SmokeDetector #1788.
CI on 0dee19e succeeded. Message contains 'autopull', pulling...
Restart: API quota is 17438.
 
@CalvT븃 It's all the luser has posted. On Super User as well.
 
@DavidPostill Cool thanks. Just wanted a record somewhere as to why as it's all been manual up to now
 
[ SmokeDetector | MS ] Link at end of answer: Position Sticky doesn't work(tried everything) by JuanSerdiuk on stackoverflow.com
[ SmokeDetector | MS ] Manually reported question: How to pass CCNA Certificatiom without exam? by Ellis Gibbon on superuser.com
tpu- by DavidPostill
 
!!/watch swat-em\.com
 
@Glorfindel Added swat-em\.com to watchlist
 
@SmokeDetector n
we'll see soon enough if they'll try again
 
CI on 8d4912b succeeded. Message contains 'autopull', pulling...
 
6:53 PM
Lol check their edit :D
 
[ SmokeDetector ] SmokeDetector started at rev 8d4912b (SmokeDetector: Auto watch of swat-em\.com by Glorfindel --autopull) (running on teward/Solar Flare)
Restart: API quota is 17372.
 
@CalvT븃 What edit?
 
The Stack Overflow swat-em guy - afraid it's deleted now so can't show what it actually was - for some reason it made me chuckle
 

« first day (1585 days earlier)      last day (2228 days later) »