« first day (1382 days earlier)      last day (1798 days later) » 

12:01 AM
RELOAD!
[Cardshifter/HTML-Client] 7 commits. 224 additions. 156 deletions.
[rubberduck-vba/Rubberduck] 2 issue comments.
[Zomis/Server2] 8 commits. 1113 additions. 11 deletions.
 
12:53 AM
ProTip: Do not ever write an installer if you can help. Especially not on Windows.
I wonder what it'd take to design a testable installer system.....
There fixed. But why, only the bit twiddlers at Microsoft know.
 
1:21 AM
@this now you know how I dreaded touching that installer script ;-)
 
I think I'm a sucker for punishment because that's not my first trip to that land. :(
(I've had the "luck" to write few installers for different projects. all ending in tears, heartbreak, ulcers. Next one might just kill me.)
 
1:35 AM
yeah installers are that kind of fun... InstallShield was something.
 
i just don't get how they do it with straight face "oh, to use our pro version, you gonna just plunk down.... 20K. That's a small charge for you guys, yeah?"
 
there is one thing I don't get -
in theory, if I reference Rubberduck.Main, I don't need to reference all dependent assemblies explicitly referenced by that?
if I only refer the Main, I am missing the inspection at install-time even though it's referenced already in the Main....
 
1:59 AM
Rubberuck.Inspections.dll is referencing Main, not the other way around.. no?
 
well, in my VS, Main lists Inspections as one of its references.
and are we using Plug-Ins directory?
 
not for inspections, no
not for anything actually
are we still doing that?
 
apparently it still creates a directory
it's empty, tho.
not sure where it's coming from
 
yeah but put any dll and it'll load it
 
i see. I'll leave it alone for now
at least so far it seems to be working all the around
 
2:09 AM
nice!
 
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3836?src=pr&el=h1) Report
> Merging [#3836](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3836?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/47af462d20db9a0310d6333ad08dcf72e5a42de4?src=pr&el=desc) will **increase** coverage by `0.04%`.
> The diff coverage is `n/a`.


```diff
@@ Coverage Diff @@
## next #3836 +/- ##
==========================
 
@this still WIP?
 
[rubberduck-vba/Rubberduck] build for commit 0bdc1ec9 on unknown branch: AppVeyor build failed
BUILD FAILURE!
> @rubberduck-vba/contributors

This is a special request - I need to test the new installer on as many machines as we can, to ensure I've not done anything insane and that it will in fact work across:

Per-user install
Admin-elevated install

32-bit install
64-bit install

As many different Windows versions as possible
As many different Office versions as possible

The installer already has been tested on for both per-user and admin-elevated:

Win 7
Office 2010 32-bit

If yo
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3836?src=pr&el=h1) Report
> Merging [#3836](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3836?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/47af462d20db9a0310d6333ad08dcf72e5a42de4?src=pr&el=desc) will **increase** coverage by `0.04%`.
> The diff coverage is `n/a`.


```diff
@@ Coverage Diff @@
## next #3836 +/- ##
==========================
 
2:25 AM
@MathieuGuindon i'd leave it as WIP yes. For one thing, i still have to troubleshoot why AV won't build it
 
[rubberduck-vba/Rubberduck] build for commit be107c31 on unknown branch: 55.98% (target 0%)
 
@Duga let me bring up that VM
 
but the more important is that I need to get it tested on other machines as noted in my last notes so I know the installer really does work.
:+1:
 
> Erm... maybe it'd help if I actually include the actual installer....

[Rubberduck.Setup.zip](https://github.com/rubberduck-vba/Rubberduck/files/1823523/Rubberduck.Setup.zip)
 
@Duga oh thanks! was going to pull your branch and build!
 
3:03 AM
oh crap. I was running it as admin...
hmm, didn't load/register
 
:(
btw running it as admin is fine, tho.
as the note says, it's kind of required to enable that Anyone option.
 
Computer\HKEY_CURRENT_USER\Software\Microsoft\VBA doesn't have a VBE subkey
 
clarify ---
 
i.e. the whole Computer\HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\Addins64 registration is missing
 
did you install as user using admin-elevated install?
I just realized I didn't test that combo
 
3:12 AM
yep
 
yeah, oops
 
then I ran it non-admin, per-user
 
#TooFrickinManyCombination
 
then admin, computer
yeah lol
 
and none of those worked?
 
3:13 AM
well I don't have the key..
 
hm.
and i thought it was installing that key.
wait
you only have 64-bit?
 
hmm not sure hold on
the VM is running 64-bit Win10 Pro, 2 virtual cores and anywhere between 1024 and 12288 MB RAM
 
hmm.
 
host is Office 365 Pro Plus... 32-bit
 
i just re-tested... installing as regular user, installing per-user
uh oh
they have their own registry....
not sure if that's a factor.
 
3:18 AM
Computer\HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\Addins64 is for 64-bit hosts; 32-bit hosts will be looking for add-ins under Computer\HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\Addins
 
in my test, I get the key I need in both AddIns and AddIns64. But I don't have a 64-bit host to test.
yeah, no problem. It's meant to install in both unconditionally
 
hmm then the script must have bailed out before that
 
the original would check the office install. Not anymore. It will always install for both 32 and 64 bit
 
that's a very good thing
 
did the install fail?
 
3:19 AM
no, no errors, nothing
 
then it should have created the key.
if you create the key manually will it load in 365?
 
probably. I have a Computer\HKEY_CLASSES_ROOT\Rubberduck.Extension\CLSID subkey
I'm not seeing Rubberduck in add/remove programs though
 
which should correspond to the HKCU\Software\Classes\Rubberduck.Extension\CLSID
huh
that's new one.
mine is Rubberduck version 2.1.6651.37488
maybe refresh?
 
nope, it's not there
 
......
are you looking at the "classic" ARP or the new "Windows-storized" ARP?
 
3:27 AM
^ created the addins key manually
the splash screen did show up
 
..... that's another new one.
 
sorry
:)
 
to which path did you put it in?
 
all defaults
 
and htat's still the installed-as-admin, configured-for-per-user, right?
 
3:29 AM
hmm at this point I don't know anymore lol
 
This was virgin PC?
 
never had RD installed, no - and hadn't had a chance to build RD on it either
fresh O365 install, too
 
that was the best environment. Building RD would have made it suspect, I fear.
hmm methinks it need more work.
3 hours ago, by this
ProTip: Do not ever write an installer if you can help. Especially not on Windows.
Anyway, thanks, @MathieuGuindon I'm going to call it a night, happy that I at least got it to work sometimes instead of not at all. :p
 
'night!
 
@MathieuGuindon BTW, I see that there's still some linkage to my directory in that path.... that's prolly why the error. #WorksOnMyComputer
 
3:35 AM
Night @this
 
3:53 AM
I'm going to call it a day as well..
'night @PeterMTaylor!
 
 
3 hours later…
7:19 AM
@Hosch250 looks like they might even consider remote...
Hey folks, want to work on my team in Visual Studio? We'll consider remote for strong senior candidates. https://twitter.com/Pilchie/status/973297544427069440
 
 
4 hours later…
11:47 AM
 
12:28 PM
> Erm... maybe it'd help if I actually include the actual installer....

~[Rubberduck.Setup.zip](https://github.com/rubberduck-vba/Rubberduck/files/1823523/Rubberduck.Setup.zip)~

Thanks to @retailcoder for trying it out - it's apparent it still needs more work.
 
12:40 PM
> After mulling over the results shared by @retailcoder there are few things I didn't anticipate. The work was based on the answer in the SO thread: https://stackoverflow.com/questions/34330668/inno-setup-custom-dialog-with-per-user-or-per-machine-installation?lq=1

However, this apparently didn't factor COM registration and permissions when running elevated.

As it is, if one runs the installer with "Run as administrator", and proceed to install for oneself only, the result is a broken inst
 
12:50 PM
@ThunderFrame Definitely not a "strong senior candidate".
I've only been programming professionally since May 2017.
 
@Hosch250 recall I've interviewed clowns who has been teaching courses on Microsoft technology and has multiple certifications and couldn't answer few basic questions about C#.
the word "senior" is very relative. If you have the chops, they'll see it.
 
@this FWIW, they have a few people in Texas. I'm going to ask if I can move down there if I have to relocate because it's so much cheaper than Washington.
 
It's relative, actually.
 
Yeah, a lot of houses in WA are rich-people houses. Must be more of a rich-person state than Texas.
 
It's just that I think that if you look for right neighborhood, you'll find what suits you well.
 
12:59 PM
FWIW, I'm still not confident about getting the position.
 
Even if you didn't, you'll have a better idea of what it takes to get there
 
Yup.
Ugh.
So, we are now selectively showing errors on a certain widget. One single error is supposed to be shown immediately and others of equal importance are not...
#CrappyUIFTW
 
1:31 PM
@Hosch250 - more than half of SO's survey respondents have <5 years professional experience:
so don't count yourself out too quickly...
 
that's kind of alarming, TBH.
It reinforces my perception that as they get more "experienced" the more set in stone they become.
I find that they are basically untrainable.
"I've coded it this way for 20 years! Ain't failed me yet!"
3
 
@this Your 20yo language is obsolete.
Or, I find your use of VBA disturbing (while choking them).
 
Yeah, that.
 
Or you can be like the guy who got choked and say something about their sad reliance on an ancient religion.
 
Given the choice, I think I'd rather be Darth Vader. That way I don't have to worry about getting promoted when my higher-up screws up.
 
1:36 PM
@this Ha, you just have to worry about young Skywalker.
You're dead either way.
 
Exactly. Much more safer. He's outside the organization, so no worries about getting stabbed in the back and I get to do all the backstabbing (recall how he turned on the emperor).
But yes, you're right. I die either way.
 
1:49 PM
@Hosch250 lol
 
Anecdotally, I watched Attack of the Clones and the first bit of Return of the Jedi yesterday.
First time watching them.
 
wait you're not watching them in order?
 
I found Jabba to be a little peculiar. You'd think he'd like worm-like chicks, not human-like chicks.
@MathieuGuindon They weren't made in order :P
Also, this gives me an excuse to watch them twice if I like them as a series enough :P
 
I know, but ROTJ must come after TESB, which must come after ANH...
 
Holy cow, janos is stepping down too?!
 
1:56 PM
yup
 
But re-running, I see?
 
should be, yeah
 
He should win easy.
So easily that I'll probably cast my last vote for him to give me a bigger say in the new candidates (just like I didn't vote for Jamal and 200 in the first election because I knew they'd win).
Better increase my activity on the site. Might want to consider running.
 
@Hosch250 but you've been very active, used multiple languages and frameworks.... And more importantly, you've been working on tools for MS IDEs and you've been heavily involved in code review.
multiple MS IDEs.
 
Hmm?
Oh, VBE?
That's barely more than an editor :P
 
2:09 PM
IDTExtensibility is the common interface, no?
Still, it's all the stuff behind the IDE... ASTs, Tool windows, teardown, inspections, quick fixes, etc...
 
That 0 line number is ambiguous - use line labels instead, e.g. BeginningOfLoop: - that way On Error GoTo 0 won't get your code into some weird funky state, or worse, into an unfortunate infinite loop. Line number 0 should be illegal to use... please loose that habit! — Mathieu Guindon 21 secs ago
we need an inspection for line number 0 apparently
4
tested and confirmed, it's a trap
 
unfortunately I use OEGT0. :( Usually after a OERN, within a child procedure where error handling belongs in calling procedure.
 
@MathieuGuindon It goes to line 0, or it OEGT0?
 
it goes to line 0
 
wait.... that's legal?!?
 
2:15 PM
Nice.
 
nnnooo way.
 
jaw on the floor
 
figured the colon was mandatory but....
omg
 
2:33 PM
> From [this SO post](https://stackoverflow.com/q/49364446/1188513):

```vb
For i = 2 To LR
0
If Cells(i, 1) <> x Then
Cells(ALR, 3) = x
ALR = ActiveSheet.Range("C" & Rows.Count).End(xlUp).Row + 1
x = x + 1
Else
x = x + 1
End If

If Cells(i, 1) > x Then GoTo 0

If Cells(i, 1) = x Then
x = x + 1
End If
Next i
```

That stray `0` is a fully legal line number, and it's dangerous. A beginner that makes it a habit of
 
@MathieuGuindon I'm thinking a separate inspection should exist for line numbers w/o colons? It just look horribly wrong...
 
line numbers never needed colons...
 
or at least convert them to a named label
yeah, that's what i really meant - line numbers shouldn't be used as a target for the GoTo
 
sure, but then how would that look on code that numbers every single line of code?
 
Use vbWatchDog.
:p
Seriously, if they have line numbers, they have bigger problems, I think.
 
2:40 PM
Almost sent a bunch of Git commands to the chatroom.
 
@this or they just didn't know any better
that one's a noob
Rubberduck should be their friend
 
you seem to be arguing my case....
 
friends don't let friends use line number 0
4
 
^
encouraging them to use descriptive label as target for the GoTo would be much better than doing GoTo 120 (what's 120? I dunno)
 
In other words, we need to "rename" them all to "Label_{x}"?
 
2:44 PM
IMO, yeah
 
IMO the quickfix should prompt for a label name
 
Hmm, good point. We already have quick fixes that do that.
 
and perhaps default to Label_0, sure
 
cos when they are doing that, they usually intend to restart the loop or something. So it's not just the line number 0 but potentially any line number used as the target.
line number 0 on itself is atrocious enough to have its own inspection.
 
except line numbers aren't problematic on their own
only line number 0 is
yeah
 
2:46 PM
yes, but GoTo 120 is not as self-documenting as GoTo StartOfLoop
 
agreed, but that's another battle :)
 
yes - that's why i think it's another inspection unrelated to the one you just opened
 
so we're exactly on the same page then
 
@Hosch250 Is that an actual video or a spoof? I can't tell because it feels like it's trying to be too over the top...
 
@IvenBach Actual video. They have a lot (about 20) videos on YouTube.
They've also got a FB page.
 
3:00 PM
@this Some of us old dogs can learn new tricks. Most don't want to, though.
 
I have no problem hiring old dogs - I do insist that they be trainable, however. We don't want any cowboys.
 
@MathieuGuindon Obligatory:
 
thanks :)
 
any time!
 
3:33 PM
OEG0 coupled with a 0 line label feels like that was an intentional oversight.
 
it's funny - if you consider that VBA was meant to be easy for noobs to get started programming. Yet they've made it equally easy for noobs to shoot their feet off.
 
You don't need to know about which member of this thing you should be using, we'll make it implicit for you...
15 years after having first used VBA I found out how harmful that was for me...
 
1
A: Putting down my mug

VityataThank you for explaining and showing to plenty of people (including me) that VBA is a normal language (and not a "funny" scripting thing or the bastard of programming languages) and writing a good code does not depend on the language, but on the one's abilities to program. Cheers!

 
@IvenBach To be fair, it's easy to riff on VBA but I honestly doubt anyone could have been able to write anything remotely similar to Rubberduck back in the 90s.
at least not without requiring a lot of horsepower that wasn't common back then.
 
Hindsight 20/20 buzzwords good-for-its-time
VBA got me into programming #DidItsJob
 
3:44 PM
ditto for me.
 
The day I hit the = key in excel after manually summing numbers... After that things were never the same.
 
@MathieuGuindon It's still "the bastard of programming languages".
 
@Hosch250 IDK. I think VBA is preferable to PHP.
 
@this that
 
Well, maybe not the bastard, but a bastard.
 
3:46 PM
aw didn't unfurl....
^ better.
 
Cute nail remover :)
 
Ok, I can deal with it being a bastard. Of that, it's in good companies with lot of languages.
 
ergh. VBA will let you define a numbered line/label as &hFFFFFFFF which the VBE resolves/autocorrects to -1. In that case, On Error Goto -1 actually goes to the line numbered with -1ThunderFrame Sep 20 '16 at 0:08
 
@this Pretty much the only non-bastards are C# and F#.
 
^ Why shoudn't that surprise me?
 
3:48 PM
@IvenBach @ThunderFrame you ain't helping VBA's case any.... :p
 
I'm pretty sure that spawned an inspection
 
I did comment earlier a need to replace all line numbers used as a target of GoTo -- that would cover that evil case, too
 
> Inspired by the issue #3846, this inspection should deal with the problem of using line numbers as target of `GoTo`. Normally `GoTo` is a big code smell but one common idiom is to use it as a mean to restart an iteration in a loop because VBA has no `Break` or `Continue` equivalent.

However, this is not helpful....

```
130 For i = 0 to 10
140 Debug.Print "Start of loop"
'... lot of code....
'380 If Lame Then
'390 GoTo 140
'400 End If
'... more code....
'590 Next
```
 
4:07 PM
I like the idea of transposing an ADODB recordset to C#... I'll try to take a moment to review your code later. So.. you know both VBA and C# huh... if you're ever looking for an open-source project to contribute to, I know one that could use your help! — Mathieu Guindon ♦ 29 secs ago
 
4:41 PM
@MathieuGuindon I wonder if you are ever going to get a C&D (cease and desist) letter.
 
@IvenBach From who?
 
From the powers-that-be at CR.
 
Oh, from SE?
 
It's all on-topic and applicable.
 
@IvenBach huh?
 
4:43 PM
Over your RD evangelism.
 
if I ever get annoying, I'd hope someone would tell me before I get spam-flagged to death
 
Your cheerful tone with RD always makes me laugh.
 
FWIW, we need more contributors, so....
those 600 issues aren't going to go away by themselves, are they?
 
@this well they would, if I nuked the org & repo
 
Weren't there a few more before? Or did rubberduck close down the source control ones?
 
4:47 PM
@MathieuGuindon blasphemy!
@IvenBach Yeah. About 30 or so.
 
I ought to move on from 01 duckling and good-first-issues now.
@SgtStens welcome to the pond
 
5:06 PM
Ok, i have a dumb question.... for Visual Studio configuration do I really need a Debug32 and Debug64 with the CPU hard-set, or do I just need a Debug and set the active CPU accordingly?
 
we've been building Any CPU for years without issues...
 
well, turns out that Any CPU lies. :(
i have a project that was built as a Any CPU and blows up when trying to using System.Diagnostic.Process on a 64-bit process, making it a total lie. (AIUI, Any CPU should have had made it run 64-bit on a 64-bit OS... but whatever.)
so now trying to figure the best way to explicitly build x86 & x64
 
if we're back to per-CPU builds, it's kind of a massive step backwards, despite per-user installs being awesome
 
no no no no
that's not RD
that is for my work project.
 
5:14 PM
BTW, RD has those configuration already, I think. That's why I was wondering if it was the best thing to do
 
(IMO they should be removed, they're just redundant and confusing)
 
yeah, hence my struggle
cos the solution-level cpu can be changed and it can affect project's setting. so it's possible to have a Debug32 with x64 which is .... what?
for now i'm going to lie and say x86 cos well, it's Debug32.... I really hope I don't end up shooting myself a year later. :\
 
a deceitful name, I guess
 
^
 
6:02 PM
Hello Pond... this may be more of SO question in which case I will slink off but I am trying to use evaluate to write a formula result to a range and am getting #value, maybe because of the relative references. The formulaR1C1 works
Sub Macro2()

Dim namedRange As Range
Set namedRange = Range("$A$109:$E$209")

With namedRange
.Offset(2, 1).Resize(.Rows.Count - 2, .Columns.Count - 1).FormulaR1C1 = "=LN(R[-103]C/R[-102]C)"
.Offset(2, 1).Resize(.Rows.Count - 2, .Columns.Count - 1) = Evaluate("=LN(R[-103]C/R[-102]C)")
End With

End Sub
Any pointers on how I can move from putting formulas in the range to simply evaluating the results and writing to the range? Without a loop?
Forgive the implicit ActiveSheet reference RD
 
@this Near as I can tell, that works out as a debugx48.
 
@QHarr "I don't use R1C1 often, but when I do, I don't use it with Evaluate" - Chuck Norris
 
The R1C1 was to leverage the relative aspect across the range.
 
yeah... I can't get a simple R1C1 eval to work... getting Error 2015
can't that be reworked to use Cells(R,C)?
mind you, Offset throws me off all the time
 
With evaluate? I can't see in the documentation that it can return an array of values
Which I am guessing is what it would need to do
was that an offset joke :-)
 
6:14 PM
lol, pun not intended
I must be doing something wrong:
?[A1]
Code
?[R1C1]
Error 2015
 
hummmm... that should work as single cell Evaluate
 
?Evaluate("A1")
Code
?Evaluate("R[1]C[1]")
Error 2015
I just can't get anything R1C1 working with Evaluate
 
@FreeMan well drats. I'm going to have a tough time finding a x48 cpu....
 
can a A1 work with multi cell range and Eval?
 
@this You might not have to look as far as you think.
 
6:18 PM
?typename([A1:C10])
Range
yup
 
great answer
 
@MathieuGuindon isn't there a setting that you have to change to enable R1C1?
 
@FreeMan maybe... as I said I don't use R1C1 much
in any case, tweaking Excel settings just to get Evaluate to work, instead of figuring out another way to code it, doesn't feel right :)
 
I don't want to switch over (File settings) to have that awful notation.....
no offence
 
@Hosch250 Yeah i saw that before but IDK if that mean I can throw around 48-bit pointers with abandon....
 
6:20 PM
@QHarr about R1C1 being awful? lol! none taken! I wouldn't have said it better myself!
 
it is the relative reference bit that I loved as I have to apply a formula to a range but only want to output the result :-(
So I am guessing read into array, loop the array and perform calc and spit out?
 
that should actually even be faster
 
hummmm.. that would work easily..... with a resized range to start with to account for the whole offsetting
TADA
Any quotes about being tied to a solution and not seeing something simpler?
 
> can't see the forest, for the trees
I guess..
 
can't clear the headache whilst hammering my head against the tree...
thanks for the sound chamber..... off to sort this....
 
6:27 PM
:+1:
come rubberduckin' anytime!
 
7:07 PM
@QHarr Talking about headaches, I blame mine for reading this as "off to snort this".
On the other hand, we smoke docs, so why not?
@MathieuGuindon Got VS 15.6 yet?
It has the sweet new test explorer.
 
dude give us a break... we barely got AV to build our stuff...
 
It doesn't have anything to do with AV.
More like almost-obsoleting R#'s test explorer.
 
haven't been able to use R# test explorer since we ditched MS-Tests
 
Then you definitely need to update.
It's got a better hierarchy system and doesn't need you to build to find the tests just to re-build to run them.
It finds the tests with a Roslyn analyzer.
 
'bout time!
 
7:14 PM
And it's pretty stable (15.6.2 is, anyway. Just updating to 15.6.3 with a few bug fixes, including one for NUnit tests and the new test explorer.)
 
 
2 hours later…
9:28 PM
 
 
2 hours later…
11:03 PM
I should make this my alarm:
 
@Hosch250 I opened this in the background and the only thing I could think of is the Benny Hill show.
 
I'm going to see if one of my European buddies can work with me to get one or two of their CDs.
Ah, the woman left the group in 2015. It's changed :(
 

« first day (1382 days earlier)      last day (1798 days later) »