« first day (1593 days earlier)      last day (1587 days later) » 

12:00 PM
ok, so you have this code:
 
so a lambda is like defining a variable, but instead of a single variable value, it's a function. I can now use that "lambda variable" anywhere it's in scope?
 
var subset = lotOfThings.Where(x => x.SomeThing = "foo")
you could do this instead:
var subset = FilterForFoo(lotOfThings);
and write a function for that.
 
a lambda is a variable that takes parameters to calculate its value
 
Now, do that 100x times.
pop quiz, what do you name the 100th FilterForX?
and that function is literally used in only one place
 
FilterForX100 ;)
 
12:02 PM
and do you really want to litter your codebase with all those one-shot functions?
 
is this more or less the right way of thinking about it?
1 min ago, by FreeMan
a lambda is a variable that takes parameters to calculate its value
 
no, lambda expression expects a function, and will execute that function when it needs to.
 
oh... :(
I thought I'd managed to grok that...
 
(parameter1, parameter2, parameter3) => { <function body> }
 
I'll put off a more indepth discussion until I'm at a place where I'm actually ready to use it.
 
12:04 PM
so back to the above example var subset = lotOfThings.Where(x => x.Something == "Foo"); is basically the same thing as doing:
 
any understanding I gain now will be lost in the dusty recesses of my brain when I need to use it and I'll have to go through 90+% of the learning again to pull it back out...
 
var subset = lotOfThings.Where(x => { return x.Something == "Foo"; });
 
I thought I saw a short-cut way of making sense out of it that I could grasp onto. I guess not...
no worries for now
 
As mentioned, it takes a bit of thinking to grok it
 
gonna try to get some actual work done today since I've got the rest of the week off.
@this yeah, that!
 
12:07 PM
I sure didn't grok it in the first minute when I saw it first time.
 
@FreeMan notes he didn't say "important", just the actual stuff he gets paid for...
 
 
2 hours later…
1:41 PM
@FreeMan Nice!
 
@Hosch250 the "doing actual work" part or the "rest of the week off" part? ;)
Building a deck at home while we've still got sunshine and not rain, so I won't be sleeping in and loafing around...
 
1:54 PM
i do not like powershell, sam-i-am. I do not like it at all.
 
2:05 PM
@this "uninstall" is a separate window, that doesn't have the ducky in the upper-right corner.. intended?
 
separate window? as in the context of running an installer?
 
yeah
I mean, when updating the install, uninstalling the previous one pops a new installer window without the ducky
also, nitpicking, but I think I'd drop the yellow background for the installer
 
for both images?
RE: uninstaller - Not sure if that was intended; it might just not be set. I'll check if there's a separate property for icons in the uinstaller
 
so there's no transparency support
I could make it white instead
white should work for the small icon in the upper right
 
2:14 PM
the rest of the banner is white anyway, no?
 
but on the left (the last page)? Will that be too much white?
@MathieuGuindon I hope so
(can't assume it'll always be white under all windows theme)
 
I was thinking the side image could be a zoomed-in (cropped a bit) outline of the duck, without the "Rubberduck" underneath. ...white tends to fit nicely with all themes.. except it might be a bit violent on a dark one though
 
That's actually the one I was a bit worried about. System background color that are white may be now dark and we'd be left with a blaring white box with duck going "Hi!"
and I'm not 100% sure if the banner is using system color or not
 
@FreeMan glad I could introduce something to you.
 
RE: the side image -- I can have it be big duck with some cropping but that implies keeping the yellow background; otherwise, it'll look funny. Agree?
 
2:20 PM
Yeah. Actually the yellow is only annoying in the corner icon, where it just doesn't "blend in". Side image could be anything really.
(unless some border is added - then the corner icon is fine with yellow background)
 
Ok, I'll find see what I can do about those images.
hmm. i was wrong. they do have transparency now.
that makes things easier.
(though, tbh the documentation there makes no sense whatsoever to me)
BTW, @MathieuGuindon just making sure - did you change the ducky.ico? I'm still using the same original one but I think the one from favicon looks different (and better)?
 
I did update it.
 
ok i must have missed it; will update it, too.
 
2:43 PM
This would probably be easier to keep track of everything if you used more meaningful names than coll1 and coll2. The variable coll2 falsely gives the impression that it is a Collection, but it isn't. — Comintern 7 secs ago
Hungarian notation fail.
@M.Doerner That's not a real test (yet) - I was just poking at the identifier reference resolver.
 
3:03 PM
morning
 
3:58 PM
wow, not a single post in here in an hour on a tuesday
 
:quack:
 
just installed windows 10 1803 to a vm
and it literally forced me to make a pin
im just like wtf
i would never... ever ever ever use a pin
 
oh, a PIN. I was thinking "why does it want to help you hold two pieces of fabric together?"
 
lol
im just glad i never prompted me on my current home use
its like i got grandfathered in so i wouldnt have to deal with that garbage
 
4:15 PM
WTH?! I think my first try got it correct. I'm scared at that.
The false sense of empowerment at making something work in C#/RD is cool. I've forgotten what that feeling of struggling for something for a long time was before succeeding at it was like.
Would it be wrong to force Option Explicit to be part of the declaration of every module that's imported?
The purist in me says yes while the questions on CR says no.
 
I think we should not force the Option Explicit onto the user.
 
Duck check: Does Attribute VBA_Name = "Foo" need to be the first line of a module?
 
It is a setting of the VBE; so adding it would have to be in sync with that setting.
It should not be necessary, but I would not mess with the attribute wall on top of exported modules.
Regarding the Option Explicit, I think the module to import should be left as-is. Don't we have an inspection for it not being there? In that case the user will be alerted, provided it is not ignored, and can use the quickfix.
 
4:31 PM
I'm trying to add the folder annotation to a module that didn't have one. Putting it as the first line apparently breaks the module. My guess was that the attribute name had to be first.
 
I think the VBE expects the attributes wall to be at the start of the module.
Personally, I would put it right after the Option section.
BTW, you should insert an addtional blank line after the folder annotation when inserting it.
Otherwise, you risk that it might not be recognized as a module annotation.
 
I made sure to do that. It's not the missing line break that's causing the issue.
 
You are using the rewriter to insert it, right?
 
d'oh. Not when it didn't originally have the annotation. Let me correct that.
 
You could get the last index of whatever section you want to insert is after from the parse tree and then use the rewriters insert affter method.
 
4:38 PM
> Calculating the content hash of the module on creation of a QMN is actively hurting their usability in hot-paths. The content hash was not really used and only was left there because it seemed to prevent some strange behaviour of COM components. Testing, I did no longer run into the strange behaviour. So, I think it is prudent to remove the content hash.
 
@Duga nice!
 
Duck check: What is a hot-path? Is it a portion of code that's frequently called?
 
yes
so if you have slow code in a hot path => world of pain
 
So any hit to performance ^
 
code that needs to run fast, yes
 
4:41 PM
Has Twitter/LinkedIn had a databreach more/less recently?
 
I usually think of it more like a path that is executed several times over.
 
Anything there needs to be designed for speed :+1:
 
Because a couple of our people got their Twitter passwords emailed to them the other week.
 
I haven't
 
Me either.
 
4:41 PM
If you have a piece of code that is executed only once every then like, 10 minutes, then it hardly matters if it takes 500ms or 600ms
 
But @Comintern said one of their people had gotten a raw text password emailed to them.
 
@Hosch250 Were the using them at work?
 
Not necessaryly called often, but either expected to return very fast (not noticable to the user) or a long running process noticable by the user.
 
Our people weren't, no.
They weren't work passwords, but Twitter/LinkedIn ones.
 
OTOH, when that piece of code is executed like 1000 times, then having the code running 6 ms instead of 5 ms becomes much more noticeable.
 
4:43 PM
@this or if you have a piece of code that needs to run between two keystrokes, it does matter whether it runs in 100ms vs 600ms, even if it's only called once
 
Watch it be LastPass that got hacked. That would be nightmarish.
 
@MathieuGuindon Yeah
@Comintern tbh, i'm dreading this. That's my main reason why I haven't trusted myself with a password manager, even if it's not in cloud.
 
I think it is still a hot-path if it is called every hour, but is long-running and noticable to the user experience. Then it really matters whether it is running 500s or 600s.
 
One pass to hold them, and in the darkness hose them all.
 
There has been talks about making biometrics the substitute for passwords but....
 
4:45 PM
That would open up new allays for law enforcement.
 
@this I don't want somebody coming to steal my fingertips or retinas...
 
You already have that with faceID.
 
Yeah, like Minority Report
 
@Comintern puts spoon & scissors back into drawer
 
if the society gets to that point, I'm totally going off grid.
 
4:46 PM
@MathieuGuindon LOL
 
At least in Germany, you can deny any help to law enforcement that is detrimental to yourself.
 
same in US
but with a face id, they can just hold it up to your face
 
To an extent.
 
However, putting your mobile in front of your face is currently not counted as active participation.
 
which I think is wrong.
 
4:47 PM
The fingerprint on the other hand is counted as active participation.
 
You know what? They brag about how hard it is to fool that.
 
the end is still the same even though the means were different.
 
It's not.
 
@Hosch250 I'm sure a photo or mask will work. That's scary, IMO.
 
They use facial heat signatures? Run wires in your cheeks, use heat-resistant lotions in patches, etc.
 
4:48 PM
In the U.S., what you look like would be considered publicly available information and not subject to protection. I'm guessing fingerprints would be the same - kind of like garbage.
 
esp considering how ubiquitous pictures are all over internet.
 
Retinas? Use contacts with funny patterns on the retina. You might go blind later, but it gets the job done.
 
[rubberduck-vba/Rubberduck] build for commit 16a406e0 on unknown branch: AppVeyor build succeeded
 
I really would prefer if they used passphrase instead, IMO.
 
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/4443?src=pr&el=h1) Report
> Merging [#4443](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/4443?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/de6f99412db1492eb938dd94fa9ce43044716e5a?src=pr&el=desc) will **decrease** coverage by `<.01%`.
> The diff coverage is `n/a`.


```diff
@@ Coverage Diff @@
## next #4443 +/- ##
==========================
[rubberduck-vba/Rubberduck] build for commit 16a406e0 on unknown branch: 63.75% (target 0%)
 
4:50 PM
DNA sequencing. Lick the phone to unlock.
 
too easily obtained
IMO, it has to be stored in a immaterial container.
read: the gray matter inside the skull of yours
 
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/4443?src=pr&el=h1) Report
> Merging [#4443](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/4443?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/de6f99412db1492eb938dd94fa9ce43044716e5a?src=pr&el=desc) will **decrease** coverage by `<.01%`.
> The diff coverage is `n/a`.


```diff
@@ Coverage Diff @@
## next #4443 +/- ##
==========================
 
Hehe, just had a thought.
You know that brain scanning thing, where they detect which button you'll press?
Maybe it only works with right handed people.
 
I'm safe then :woot:
 
@Hosch250 i really question if it can see what others think.
 
4:56 PM
@Hosch250 nah, works with ML models
 
They can't.
They can detect which arm you choose to move. Not what you think.
 
TBH, it's really only degrees of security theater. Physical access and rubber hoses...
 
@Hosch250 That makes sense - you'd have to make a conscious decision to move arm before you actually move it. But there's not necessarily a physical movement with just thinking up a picture or whatever.
 
They did a study with hammer/screwdriver images.
 
Makes me wonder about Dr. Strangelove's arm.
 
4:59 PM
@this the real ground-breaking application of this, is for cybernetics / amputees
 
They asked people to imagine picking the tool up and using it.
They could tell that too.
 
<~ lefty, throws off entire ML model training
 
Righty, but partially ambi if I need to be.
 
one day they'll make robotic arms that can play guitar with this tech. then Judgement Day won't be too far.
 
5:01 PM
What I'm curious about is "muscle memory". Would it get less effective with practice?
 
conceivably - "muscle memory" signals don't originate from the brain AFAIK
 
There are a lot of really repetitive tasks that I barely have to think about.
 
I don't think it's muscle memory. I think your brain recognizes patterns and just replays them faster.
Mat's thinking of reflex, IIRC.
Common-talk muscle memory (like touch typing) does come from the brain.
 
I thought I read a study somewhere that claimed muscle memory was similar to reflex.
 
5:03 PM
But, I don't have to think, say, T I O N, my brain can block that in to a TION block and send all the signals really fast.
 
@Hosch250 did you mean to say Tron?
 
No.
The T I O N sequence of letters, like in cauTION.
 
I can think T H E, but it often comes out T E H.
 
</failedjoke>
 
more like, playing a C major scale on a standard-tuned guitar, after 10K hours of practice: you don't even need to think, your fingers just place themselves
(well before 10K hours actually)
 
5:06 PM
Yep. Your brain is involved, but it's more subconscious because the brain rewired itself to make that bit more handy.
 
brain went #DEFINE CMajorScaleOnGuitar = {sequence}
so the only signal that the brain needs to send is CMajorScaleOnGuitar
"muscle memory" does the rest
 
Kind of.
Although, I'd guess it's more like it makes an array of the steps and streams the whole array right away.
Instead of going "get finger position for C; get finger position for D, etc".
It kind of sets itself up so it doesn't need to do the scan for the finger position--it just has it right there.
Like a database with an index vs a database without an index.
And a heck of a lot faster, because it can reorganize to reduce network time too.
 
Same with juggling too.
 
As in in-brain network, not brain-to-muscle network (although, possibly that too, which would be the "muscle memory").
 
In .NET is there an equivalent FIND function for strings?
 
5:18 PM
@IvenBach Be careful with that - it's case sensitive and culture specific.
 
I'm searching for either " or ). AFAIK they aren't affected by culture or case settings.
 
well this is slick
my work is going to recycle a nas with 16 1tb drives
and since its basically like throwing it away, i can haz
high fives self
 
nas?
 
Network Attached Storage
I was IT before i was a programmer.
 
Nice. I'm woefully ignorant of networking/IT.
 
5:26 PM
yeah, i learned all of that before i moved on to programming
i feel like having an understanding of things IT helps me be a better programmer
actually, i guess its probably a step in hte direction of a "Full Stack Programmer"
 
What is a full stack programmer?
 
best answer im going to be able to give you is a googled one.
 
@IvenBach an HR buzzword
 
@IvenBach basically a overworked IT guy who's asked to build a SQL database, manage a IIS server, hack up a web application and serve it on the IIS, then write some javascript for some widgets on the web application. All in a weekend.
 
5:38 PM
Yeah, they have to know frontend, backend, DB, and networking, and all that kind of stuff.
 
@this @Hosch250 - thanks, I was also wondering that...
 
aka "you're on your own, and you got two weeks"
 
on an application that's complex enough, that's insanity. Far too much technologies are involved to be reasonably proficient in them all; a good tech company would have a bunch of people specializing in javascript, in backend web server, in IT administration, in database, etc. and work as a team. But in smaller business, they might not have that convenience of having a team, So... it's usually the tech whizzy kid who was hired as a office boy but got railroaded.
(and most likely is still paid the office boy's wage)
 
maybe I can claim I'm a "full stack developer". I've developed the Access/SQL back end & the VBA front end. All I'm missing is the javascript!
frankly, I don't think I'm missing that much
and I'm still paid like the office boy. :/
 
Meh. There's a big difference between a internal LOB application vs a shrink-wrapped application.
 
5:41 PM
I should start referring to myself as a "short stack" developer.
 
@Comintern keep hanging out with @MathieuGuindon and you'll get maple syrup, too!
;)
 
lol
so right now im the sharepoint guy, DBA and access programming dude, with a side of VB.net
since vb.net is all we have been able to convince my boss to let us dev in
 
@KySoto Wut? Does your boss read VB.NET or something?
 
I'm C# backend, SQL (primarily) and Mongo (secondary) DB, JS/TS/HTML/CSS frontend, and eensy bits of dev ops here and there. I don't understand the vast majority of dev ops--just enough to know that some things can be done.
And enough to deploy an IIS website.
 
I could write COBOL for all my boss cares. Much more results oriented.
 
5:46 PM
@Comintern i took a VB.net class with him
thats how i networked in my current position
@Hosch250 The reason our work cares is we had an engineer who wrote all of the most important applications for testing parts in C++
and then one friday he said he wasnt coming back on monday
 
And?
C++ isn't the worst language.
 
and none of the other engineers could write c++
 
Then hire a new C++ guy.
 
If it works, you only have to be able to read it.
 
its been 6 or 7 years and they have been working this whole time trying to port it to labview
 
5:49 PM
@Comintern unless it's blowing up only sometimes, then you better understand it.
 
they had a C++ guy
or, they did hire a new c++ guy i should say
he just left last month though
the problem was, they were looking at business continuity should one of the super important testing applications take a crap
they had no way to really recover
 
Want me to work up a quote for porting them to c#?
Daddy needs a new pair of cars.
 
@Comintern #protip: generally one doesn't say this at a sales opportunity. ;-)
 
LOL
I would probably lessen the sticker shock a bit though.
 
6:04 PM
^ yes. Also, my youngest's initials... That did occur to me when we named him.
 
yeah - Microsoft's equivalent to apache
(please don't host it there!)
 
So the MS version of LAMP would be WISN - Windows, IIS, SQL Server, NET
Would make a great ad campaign - "WISN up!"
 
IIS... retro. Kestrel FTW :-)
 
#FunFacts
even better:
oddly, VBA passed VB.NET just around the time Rubberduck started
 
it will be a glorious day once VB.NET dies....
 
6:11 PM
I'd be curious to see the number of users with, say, 5K rep or more with an answer each month.
 
that would be for SEDE. I got that chart from SO Trends: insights.stackoverflow.com/trends?tags=vba%2Cvb6%2Cvb.net
 
Hopefully the the trickle of VB6 questions are along the lines of "How do I port this to .NET".
 
@MathieuGuindon it was probably the same day when everyone collectively went "Ok, Microsoft's never going to provide VBA.NET (or equivalent), so I'll just do the darned thing in VBA then"
 
I'm guessing those trends are unrelated.
 
@Comintern psh, don't talk nonsense. Everyone know that correlation implies causation.
 
6:14 PM
it's just the % of questions asked /month
 
Interestingly, the c# questions follow roughly the same graph as vb.net (much sharper decline though). Have all the .NET questions been answered?
Oh wait. Jon Skeet.
Yes. Yes they have.
Definitively.
 
@Comintern Someone should call Jon and let him there's a John imposing him.
 
:whistles innocently:
 
#FunFacts the #VBA tag passed http://VB.NET on @StackOverflow just around when the Rubberduck project was started. Also: no, VBA isn't dead. Or dying.
 
of course C# decline is sharper than VB.NET's
 
6:24 PM
Basically.
 
It's not dead, or dying--it just plain s***s.
 
Yet everyone has to use it.
Had Microsoft done the right thing and provided a sane migration path, VBA wouldn't be in this state, IMNSHO.
 
but for whatever reasons, silly softies thought that "just scrap it and rewrite it in X" was a sane migration path. Ha ha ha!
 
On the other hand, if it were Apple they just would have said "screw you" and changed languages every 2 years.
 
6:27 PM
if RD had an opt-in telemetry feature that aggregated various code metrics and library usage stats from its users, Microsoft would have a clearer picture of VBA-land
 
that would make for interesting data.
 
pretty sure they'd pay for this data
 
It would replace all the data from the SO questions that no longer needed to be asked.
Wow, double naming fail: Dim oWs As Workbook
 
6:31 PM
lulwut
 
Might as well be strRange As Workbook.
 
or dim itard as variant
since you can shove objects into variants
 
@Comintern Ow.
 
so in use

dim thing1 as variant
dim thing2 as variant
set thing1 = application.workbooks(1)
set thing2 = thing1.sheets(1)
i forgot, excel is 1based
there you go, some super duper readable code
 
:click: Semantic naming of tuples.
 
6:41 PM
wait a sec... thats basically vbscript, except that it has as variant
 
...and an uninitialized application variable.
 
yeah, we are trying to make the world burn
 
6:56 PM
@Hosch250 do you recall there's any way for CodeExplorerItemViewModel to know which folder it belongs to? I'm coming up empty with how to figure that out.
 
Walk up the tree.
Parent.
One of them will be a folder node.
 
Just don't walk up to the tree with an axe...
 
Didn't know there was CodeExplorerProjectViewModel :hangs-head: Looks like the Declaration member will make what I want to do a lot easier.
 
@FreeMan yeah. chainsaw is much less work.
 
@MathieuGuindon i think driving up to a tree with a tank would be much more fun
 
7:14 PM
Problem is finding the tank though
 
maybe for you.
just find one of those american tank graveyards
they probably wont miss one of them
updated from a youtube link to a better one
 
7:25 PM
> how many billions of dollars has Microsoft lost, in R&D, legal fees, and damage to reputation, because they decided that not only do they have to make a web browser, but they have to give it away free?
LOL...
 
7:40 PM
@MathieuGuindon what would be the safest way to slap Excel into its sense and stop treating account numbers as numbers and displaying them w/ scientific notation without losing any due to rounding or whatever nonsense Excel pulls.
 
@KySoto At the end of WWII, they had thousands of operational tanks, most of which hadn't ever seen battle. They disarmed them and sold them as tractors.
@this Tell it to treat them as strings?
Or maybe use shorter account numbers?
 
@Hosch250 yes, that would be the ideal outcome but I'm having trouble recall the correct command
Formatting isn't what I want, i think.
 
It is.
 
then i'm being extra dumb today.
 
Home tab>Number group>Text
Ctrl+1>Text on the range of cells you want to convert as text.
 
7:45 PM
Oh wow.
It doesn't covert them back--it keeps the text as 1.111111111111111111E+36.
Or whatever.
 
and that doesn't do any converting, right? it keeps the value as it is, right?
 
It converts it, but doesn't un-convert it when you say it converted it wrong.
 
that's what I hate the most about that stupid default of theirs to display in scientific notation. Look at it sideway and now you've lost the original data.
it's positively evilâ„¢.
 
@Hosch250 from stuff ive read, we are making a ton of tanks here, but just not really using them since we dont have much conventional warfare anymore
 
@this prefix with a single quote
 
7:52 PM
the files are provided externally
 
="'" & A1, fill down
 
hmm. that's helluva a lot of automation.
( not just one column)
Excel is really the worst when dealing with "not-a-number" data
 
worst is CSVs
got a nice CSV with not-numbers in it? don't open it in Excel. DON'T.
 
^^^^
 
MS Excel team ran a survey last year specifically about this.. pretty sure the overwhelming majority of the feedback was "STOP MESSING UP OUR CSV FILES FFS"
 
7:55 PM
oh helluva yeah
there's a UV item about it for which I voted on
last time, they are "looking into it"
 
@MathieuGuindon ^^
 
hmm I'm thinking that it might be simply unsafe to store any number with more 15 digits.
 

« first day (1593 days earlier)      last day (1587 days later) »