« first day (1438 days earlier)      last day (2421 days later) » 

00:00
RELOAD!
[FreezePhoenix/XtraUtils] 1 commit. 283489 additions. 44 deletions.
[rubberduck-vba/Rubberduck] 1 opened issue. 1 issue comment.
 
1 hour later…
01:20
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit b444889f to master: XtraUtils.Object is now well documented
And voila
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 1963acc4 to master: Removed old docs folder
@FreezePhoenix Looking good!
Jekyll seems to be unwilling to change it
Ow... gosh.
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit bc4e1840 to master: Renamed ./doc to ./docs
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 7fa3c113 to master: Removing the old new ./doc folder
01:29
Let's let that propogate to jkyll
\o/
The IIFE actually complements the JSDoc really well
Both visually and in the ability to actually use JSDoc
01:53
TIL about Python's doctest, I'll be trying those out
02:30
@SimonForsberg How in the world did you do that??
02:47
Hey
hey @bruglesco how are you?
03:11
We coded fora couple of hours yesterday, I think I found a teaching method that works better for her
My initial approach was to type out several lines of code, and then afterwards going over what they did all at once. I've tried instead of write one instruction at a time and give her the chance to ask questions and making sure she understands why we are doing that before moving on. She seemed to have enjoyed it more
We learned about argon2 and password hashing/checking, as well as about Python dictionaries :)
03:29
sorry back
@Phrancis So after the user stuff is set up what kind of app are you making?
I think you told me before but I don't recall
@bruglesco I'm not sure yet... Maybe I'll let her guide that process
Nice. It might be nice for her to have some input
Maybe we'll make a GUI, or add something to it, ir maybe something new altogether
Making a server-client type of program would be good
03:50
That sounds fun
Not sure if I'd make a web server type of thing, because then we're in JavaScript land
Hmm
I'm open to ideas, at any rate
I've not heard back in 3 days from Twitter about the PyCharm issue, maybe I should just put in a bug report
@Phrancis Seems like a more reasonable way to get ignored
lol (literally)
Just doing this works fine
input1 = input('Input1: ')
input2 = input('Input2: ')
04:05
but. . . ?
But in my program, it doesn't
Trying to come up with a MCVE to reproduce
04:18
So I got a MCVE
Ehhhhh... ask on community forums or ask JetBrains...?
both?
I'll try community first, it seems active enough. intellij-support.jetbrains.com/hc/en-us/community/posts/…
Seems to be happening in very specific circumstances, so I guess it's an edge case
04:42
Well I hope they fix it ><
04:52
TTBTG GN
 
8 hours later…
12:56
@SimonForsberg Nice win streak :)
@Hosch250 @Phrancis @bruglesco @Marc-Andre Thanks :) I'm a bit surprised myself really, we had pretty good teamwork in all those games which I think is an important part of it.
@SimonForsberg Yeah, but less than 60 seconds?
I mean, it takes 15 seconds for the game timer to get out of the negatives.
@Hosch250 That's the time since the match was played, not how long the match went on for
Ohhhh.
I mean... games that went on for 2 days would be pretty ridiculous, wouldn't it?
13:08
Yep :)
10 in a row is still pretty impressive
13:42
I wonder what my longest streak is?
We lost the last brawl I played. We actually were pressing their first fort, then things fell apart hard and we all suddenly died and stayed dead.
 
3 hours later…
17:08
Monking!
17:54
Football time!
@SimonForsberg France v. Belgium right?
Nice, wish I could watch it
Ohhh I found a stream \o/
18:20
I would really like to like Football. I struggle watching a complete match.
@Marc-Andre It helps to have a 2nd monitor and put it on there.
Watch when it's interesting, listen when it's not.
Livestream if you don't mind Dutch commentary: here
@SimonForsberg Soccer.
I'm sure I can't watch it at work sadly
Football is any sport where you kick a ball, including American Football.
What is it about soccer/football that makes it so popular? I can't grasp why it's so loved around the world.
I get bored watching it. Any sport for that matter.
Watching paint dry, or even earthworms mate would be more interesting to me than watching the world cup.
@IvenBach Both are a simple sport about brute force, agility and dexterity. Soccer a bit more about the latter 2.
18:27
@IvenBach I've heard the second is interesting.
A world cup is interesting due to nationalism.
And at the end of the day, it's all about having something to talk about on the workplace and the adrenalin in the air.
@Mast I'm tempted to make a joke about nationalist socialists, but that's getting a bit offensive, I think.
National pride is lost on me.
@Hosch250 At least they'd share the ball.
@IvenBach Same here.
My fellow country men are just as stupid as those from the neighbouring country.
5
@Mast But they are the OTHERS! </sarcasm>
18:29
"We happen to have been born in the same country. We've never met and have nothing in common, yet just because of happenstance I'm rooting for that team." Makes no sense.
It's even better in the baseball version--they play in the country they were born in, not the country they are a citizen of.
And sometimes they just play in the country their ancestors are from.
:+1: for the athleticism and dedication it takes to get that good at an activity. :-50: for falling down on getting touched.
@Mast Is it safe for work?
18:31
@Hosch250 Sure. Just as safe as reading any political piece.
@IvenBach Ah, you've met Neymar.
I've no clue who that is. Isn't that how nearly every soccer player is?
One of the Brazilian players. If he thinks you touch him, he dives and rolls on the floor.
@IvenBach Nah, only a couple. Too many though. They give the rest a bad name.
@Mast LOL.
@Mast That's when you turn around and curb stomp the pansy. Teaches them to only fall down when it actually hurts.
@IvenBach In American Football, they'd absolutely do that, yes.
In soccer, not so much. So when you got one player on both sides being very proficient at schwalbes (diving), a lot of cards fly.
18:38
I'll give rugby my vote for #NotFakingIt. No padding and they take some pretty good hits.
I'm not much interested in watching sports as entertainment.
@Hosch250 I watch it for the meta game. It's entertaining to see how entertaining it is for my colleagues.
If you are trying to learn from the pros, great. Otherwise, get out and **** play it.
It's a great excuse to drink beer in company for some.
Not a beer drinker, so...
18:40
^^ Neither of which I enjoy. Solitude and water for me.
@IvenBach Hey, we should get together and drink water together and watch soccer.
Socialize with pineapples? :shudder:
Man, that would be the most boring get together.
@Hosch250 Only if we can do it a-la-Mystery-Science-3000 commentary during the game.
Either that or pair programming. I'm addressing my naive overlooks with RD PermissiveAssertClass.
@Hosch250 Did you ever watch MXC on SpikeTV?
I hope we can at least all agree that we hate vuvuzelas
18:50
I do.
@Phrancis lol
@IvenBach No.
@Phrancis That's my favorite!
@Hosch250 You heathen =)
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 0118ba86 to master: Documented the Number utilities
19:06
1) They
2) said
3) numbered
4) lists
5) would
6) make
7) it
8) easier
9) to
10) read.
1 - 0 for France
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 671da836 to master: Made testing.html available to the site
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 89d9a4c3 to master: Made testing.html available to the site
19:30
@Phrancis More seriously, what or who is vuvuzelas?
@Hosch250 It's a plastic trumpet that makes a really loud and obnoxious sound
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 948f0563 to master: Touched up ./docs/tests.js
@Phrancis A plastic trumpet gone wrong. When used by thousand men at a time, it's a buzzing drone.
I guess France are mostly just running the clock at this point?
@Phrancis Oldest tactic I know. Get a point ahead and after half-time you simply kill the time.
It's a semi-final, goal count is irrelevant (unlike national championships).
19:36
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit eb8cdf98 to master: Oops. Made code available to the testing file
I'm kind-of waiting for the surprise goal in the last 5 minutes forcing extension.
Hoping.
I don't know much about soccer, but the playing style of the Belgians looks better than that of the French.
@Mast Hey, the French got the goal...
@Hosch250 That's only relevant for who wins, not for the amusement factor.
Winning is the only important part. Oh wait.
For those on the field, probably.
I'm not on the field.
19:41
Heck of a save from France goalie
Aye.
But if we get France vs England, it will be Hastings all over again.
Anyone tell me if this site shows something other than a green bar (\o/ beta testing): freezephoenix.github.io/XtraUtils/testing.html
@FreezePhoenix Yes.
There's also a lot of white.
The title works too.
@Mast exasperated
@Mast What color?
19:49
@Mast That's green!
And white.
Want a screenshot of the title too?
Good
All tests succeded
What else should we be seeing?
19:51
@Mast Nothing else
yet Untill I add a small UI
@Mast It just runs tests to make sure everything functions correctly
var tests = [
  // Object tests
  `let obj = {
    a: 1,
    b: 2
  };
  obj.pick("a");
  return obj.a == 1 && obj.__omitted__.b == 2 && obj.b == undefined;`,
  `let obj = {
    a: 1,
    b: 2
  };
  obj.omit("a");
  return obj.a == undefined && obj.b == 2 && obj.__omitted__.a == 1;`,
  `let obj = {
    a: 1,
    __omitted__: {
      b: 2
    }
  };
  obj.show();
  return obj.a == 1 && obj.b == 2 && obj.__omitted__ == undefined;`,
  `let obj = {
     a:1,
     others: {
       b: 2
     }
   }
   // Number tests
Reminds me of the time a colleague got asked by his manager to take a look at a burned out power supply. Colleague took a look at it, nodded and said: "Yup, that's definitely broken"
Later I'll add a miniture console into the UI
(FYI if anything happens with that it's your fault)
The green bar indicates all tests pass?
@Mast Yep
If a test errors, it puts a smidge of red
Fancy.
19:53
If a test returns false, it puts a smidge of yellow
Like so:
France won, 1 - 0.
(Disclaimer: modified results)
@FreezePhoenix Like a progress bar?
More green, more good.
@Mast Exactly so
GG, GL France in the finals
 
1 hour later…
21:08
@Mast I'm gonna make it async so that it actually is a progress bar
@Mast Nah, just a few lines of JS, and Vue
21:26
@Phrancis Did France win legally?
@FreezePhoenix Yeah? How do you win illegally at soccer?
Hm... Good point.
They were being jerks at the end and wasting time to run the clock
Lots of yellow card near the end of the game from apparently diving too
Oh?
That couldn't have been fun.
There were a few during the game that looked like real tripping, but several pretty obvious dives
21:34
Oh, so it was a catfight:|
Honestly I wish that when you edited a chat message it wouldn't turn the color of the textbox to white
@FreezePhoenix It doesn't do that for me...
So, your textbox background is white, and the text is black?
(I'm talking about the textbox at the bottom)
Is that what you mean?
21:39
Yes... :(
Yeah. You could fix it with a user script probably
<div class="content">Yeah. You could fix it with a user script probably</div>
<textarea id="input" class="editing"></textarea>
Neither of them have IDs :(
Can probably change the CSS though
I have a script of some kind on my personal laptop which changes the color scheme of SE chat to dark, I quite like it
21:42
<div class="message" id="message-45577781">
  <a class="action-link" title="click for message actions" href="/transcript/message/45577781#45577781">
   <span class="img menu"> </span>
 </a>
<div class="content">Can probably change the CSS though</div>
<span class="meta"><span class="flags vote-count-container">
<span class="img vote" title="flag this message as spam, inappropriate, or offensive"></span><span class="times"></span></span>&nbsp;<span class="stars vote-count-container"><span class="img vote" title="star this message as useful / interesting for the transcript"></span><span class
But there is an ID
css:
.message > .content {}
@Phrancis OI
<textarea id ="input" class="editing"></textarea>
@Phrancis Nice :) Can I borrow that?
Yeah hang on, let me put it in pastebin
Oh wait it's not a user script it's a CSS Stylish template
:| Plain JS will suffice
21:49
@Phrancis Yes, might cost them at the finals if any of those yellow card holders already had one from last match too.
I'm not sure whether it's 2 in 2 matches or 3 in 3 matches, but get enough yellows in succession and it's a red one for the next match.
:@Phrancis so...
NVM
It was a good play for them, not a nice play.
@Mast What does a red card do? Penalty?
@Phrancis During a game, 2 yellows in the same match gets you red (and yes, you can get immediately red if you do something stupid enough).
Red means GTFO, your team goes further with a man less.
Successive yellows over multiple matches however doesn't cost your team a member, it just costs them you.
Sit out a match.
Get red immediately and it's like having to face the general prosecutor after a heavy traffic violation. Punishment can be multiple matches.
For example, back in '06, Zinadine Zidane gave someone a headbutt.
Instant red.
It's unforgivable.
Cost him a lot of money and the guarantee that if he ever picked up soccer again, he'd have to sit out a couple of matches first (it was already decided it was going to be his last match, the final of '06).
France vs Italy, world cup final. One player made it end in disgrace.
Bloody thing ended in penalties IIRC.
22:07
Ouch, wtf was he thinking
Apparently Materazzi (the other player) insulted his family. At least, that's his side of the story.
So, usually, getting a yellow card is kind of a heavy warning.
But get enough and you'll lose a game.
If that game is the WC finals...
But it's not as severe as instant red.
That gets you into trouble.
But you have to do something pretty stupid for that.
This baffles me:
  let res = {};
  res["a"] = 1;
  res.a // undefined
Like tackling a keeper, giving a headbutt or another gross, hefty violation of the rules.
@FreezePhoenix Of-course.
What did you expect?
But when I run it in the console it returns 1
What kind of type is res after creation and how do you invoke it on the second line?
22:11
However, in the scope of Object it returns... undefined
@Mast It's an object type
Oh, right, JS.
It just doesn't make sense!
2 mins ago, by Mast
What did you expect?
I expected this:
let res = {};
res["a"] = 1;
res.a //  1
Dangit...
It's being passed an empty paramater of an obj
Because you can't modify res like you do on line 2.
22:15
Yes, you can
Returns 1 anyway for some reason, perhaps you just created it?
What it turns out is that this happens:
let res = {};
res["a"] = 1;
res["a"] += 1;
console.log(res.a)
> 2
function myFunc(obj) {
  return obj
}
myFunc({
  geta: function(){return 1}
});  // Object {}
Right, I forgot. JS doesn't care what it's supposed to do, it will try to do whatever it feels you want it to do.
22:16
Which makes no sense either
For some reason it usually succeeds too.
Wait... this makes no sense either
function myFunc(obj) {
  return obj
}
myFunc({
  geta: function(){return 1},
  a: 1
});  // Object { a: 1 }
let res = {};
res["a"] = 1;
res.a += 1;
res.b = 42;
res["c"] = res["a"] * res["b"];
console.log(res.c)
Oh... this makes more sense
It's filtering the values so that I don't modify the Object global
XtraUtils.Object.addMethod('methods', (function(){
    /**
     * @method methods
     * @param {Object} obj The object to get the methods from
     * @returns {string[]} Array of methods
     * @memberof XtraUtils.Object
     */
    return function methods(myObject) {
      return reduce.call(myObject, (ret, merger) => {
        entries(merger).forEach( ([key,value]) => {
          if(value instanceof Function) {
            ret[`key`] = value;
          }
        });
        return ret;
      }, {});
Just... please... WORK
You lost me.
All I know about JS is it doesn't matter how much you look at it. If you want to know what it does, try it.
22:20
@Mast Well than the one thing you know is wrong
If it works? Good. If not? Try something else.
Wait this makes no sense either:
let obj = {
  geta: function(){}
}
obj; // {}
I don't know why you'd do that.
So... my original code was right
CONSOLE.LOG FAILED ME
console.log.failed = 1;
console.log(console.log.failed);
> 1
JS doesn't care.
22:29
I Know
@Mast Oh, shush
console.log.failed = 1;
console.log(console.log);
> { [Function: bound consoleCall] failed: 1 }
Yes! Once!
Its... an object function
Yes.
Ok... I got it to work...
Sleep deprived, my humour is doing the silly walk.
22:32
:P
Hey, if you don't mind writing JS tests up...
So, say you have a file like this:
'use strict';
if ( XtraUtils && XtraUtils.Utility ) {
  /**
   * @type {XtraUtils.Utility}
   * @name XtraUtils.Object
   * @property {function} aidsIn The Object class
   * @property {Object} aidsIn.prototype the Object prototype
   * @namespace XtraUtils.Object
   * @memberof XtraUtils
   */
  XtraUtils.Object = new XtraUtils.Utility(Object);

  const deepClone=(e)=>{let a=e;if(!a){return a;}[Number,String,Boolean].forEach(function(d){a instanceof d&&(b=d(a));});if('undefined'===typeof b){if('[object Array]'==={}.toString.call(a)){var b=[];a.forEach((a,c,e)=>{b[c]=deepClone(a);});}else if
Do you see this? :
/**
     * Merges 1 or more objects.
     * @method merge
     * @param {...Object} objects The objects to merge.
     * @returns {Object}
     * @memberof XtraUtils.Object
     * @static
     * @example
     * // returns { a: 1, b: 2 }
     * Object.merge({a:1},{b:2})
     */
All you need to do it write down in a text editor:
`let obj = Object.merge({a:1},{b:2});
  return obj.a === 1 && obj.b === 2;`,
@Mast Did I lose you?
Somewhere after if(a&&d){return b.toString()===c.toString();}d=keys(b);
There's plenty of people decent at JS. I'm not one of them.
Umm... don't read the code, just the comments in the code
@Mast Well then, what are you decent at?
I'm an electronics engineer dabbling in mechanics and software. I tell machine combinations what to do, when to do it and how to make sure they don't hinder each other.
I automate the crap out of crappy jobs so people can do something useful with their lives instead of a job nobody wanted anyway.
Hey... so Boolean Logic and Machine Specialist?
Officially, software application engineer. Since it's the software telling the machines what to do.
22:40
True.
But it's basically telling A to wait for B before doing C to D.
But then with over 50 segments behind each other just for the transport part of the process.
I see the big picture because I understand the details.
@Mast Than at that point you're better than a good portion of earth's population
Sounds quite interesting
Oh, it's interesting. And there's always plenty of problems ahead. Customers always do something with a machine you don't anticipate.
Context is bloody important when writing a spec.
@Mast LOL computers are like that lazy person who just doesn't want to get off the couch... but is fine with reaching a foot or two away to put a remote down
22:44
Up to the weight, width, height and length of what will be travelling over your contraption.
Spaces or tabs
Autoconvert tabs to 4 spaces.
I use 2 spaces for JS #Savage
Right, I did that when I wrote Basic.
I make ESLint change all your tabs and spaces into the right indentation level with an increment of 2 spaces
22:50
But I'll be the first one to admit I have forgot a couple of spaces here and there. Some of those mistakes will survive forever on the web.
@FreezePhoenix Got Atom for that.
Tab and Shift Tab are your friend.
Nah just press the UP + ENTER keys in the terminal every 20 spacing mistakes
What does that do, auto-indent everything?
Yep
./node_modules/.bin/eslint -c ./src/.eslintrc --fix ./src
UP key goes to the last command, enter... executes it
Naturally.
I used to make back-ups that way, separate terminal for back-ups.
`let pairs = [['a',1],['b',2],['c',{d:3}]],
     obj = Object.fromPairs(pairs);
     return obj.a === 1 && obj.b === 2 && obj.c.d === 3;`
Still a full green bar for me, with 15 tests
I love how it executes them all before the page loads
That is going to be removed
Running the build step:
pi@raspberrypi:~/Downloads/XtraUtils $ bash .build.sh
Compiling ./src to ./lib
Linting ./src
Linting ./lib
Documenting ./src
cp: ‘./src/Array.js’ and ‘./docs/scripts/Array.js’ are the same file
cp: ‘./src/Function.js’ and ‘./docs/scripts/Function.js’ are the same file
cp: ‘./src/Number.js’ and ‘./docs/scripts/Number.js’ are the same file
cp: ‘./src/Object.js’ and ‘./docs/scripts/Object.js’ are the same file
cp: ‘./src/String.js’ and ‘./docs/scripts/String.js’ are the same file
cp: ‘./src/Testers.js’ and ‘./docs/scripts/Testers.js’ are the same file
23:17
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 6544a874 to master: Removed onload execution
And linked files using ln -sf
23:34
[FreezePhoenix/XtraUtils] FreezePhoenix pushed commit 55914f8e to master: Apparently the previous commit broke the site build
23:45
200_success vs. rolfl: 31416 diff. Year: +3858. Quarter: +90. Month: +90. Week: +121. Day: +185.
200_success vs. janos: 27581 diff. Year: +2044. Quarter: -286. Month: -286. Week: -149. Day: +125.

« first day (1438 days earlier)      last day (2421 days later) »