« first day (294 days earlier)      last day (2886 days later) » 
00:00 - 20:0020:00 - 22:00

12:00 AM
RELOAD!
[retailcoder/Rubberduck] 8 commits. 2 opened issues. 7 issue comments.
3
[skiwi2/TCGHand] 2 commits.
 
12:22 AM
@SimonAndréForsberg @skiwi thank you for Duga. I love seeing that recap every day. It keeps me motivated. I hate days where no commits are up there.
2
 
^^ ditto!
 
12:35 AM
@RubberDuck Yeah, I'm also not a big fan about those days. It's been a while now since I pushed anything to github.
 
1:01 AM
@SimonAndréForsberg found the original public domain ducky image
 
oh, thanks!
 
I use a 15% tolerance magic want selection on the background in Paint.NET to remove the white background
16% is a bit cleaner
 
Hmm... I want a real life Van Hel Duck now.
There's something g about a Rubberduck with a crossbow that amuses me.
 
1:18 AM
I can't seem to reproduce the "vacuum" effect with the background code...
it was a combination of some blur and bulge effects IIRC
something like that
 
1:39 AM
I'm impressed, Mug!
 
:)
I should be coding instead!
 
2:19 AM
Marketing generally tends to bring in more money lol
I like the logo too @Mat'sMug
I also had the misfortune opportunity to call into our center on a product I own with coverage
Got to talk to a new person named Carolina (Spanish version) whom I just helped earlier today. Took about 35 minutes (groan) but eventually got it taken care of
 
thanks!
lol
 
2:58 AM
I can't figure out named parameters for now; parameters are scoped to the procedure they're declared in. I'll open an issue to document it.
 
> Say you have a function:

Public Function GetFoo(ByVal value As Integer) As String
GetFoo = "foo"
End Function

And then you have a function call that uses named parameter syntax:

result = GetFoo(value:=42)

When parameter `value` gets renamed, the function call gets broken because the named parameter doesn't get the new name.
> `IdentifierReferenceListener.EnterIdentifier` needs a way to figure out that when `context.Parent` is a `eCS_MemberProcedureCall` or `iCS_B_MemberProcedureCall`, and that that parent has an `ASSIGN` (`:=`) token, that the `context` is a parameter name that should be matched against the parameters list of the called procedure.

Yeah. Easier said than done.
 
3:56 AM
> minor changes
 
4:07 AM
merging...
 
 
4:38 AM
let's see if that shit works...
 
4:59 AM
registration is the same identical keys
 
> Looks like extending the VB6 IDE requires a different interface?

![vb6-rd-exception](https://cloud.githubusercontent.com/assets/5751684/6862835/78312c66-d41d-11e4-8adb-48da2d116097.png)
 
TTGTB
 
 
4 hours later…
10:23 AM
@RubberDuck Yay :)
 
 
1 hour later…
11:52 AM
Oops. Looks like the logic needs to be refined a bit.
 
> I'm displaying too many things. I need to exclude the `HEAD` branch from the list of published branches, and the branch selector should only display local branches.

![image](https://cloud.githubusercontent.com/assets/2716800/6867255/88ef8640-d456-11e4-9661-be807f9c5db0.png)
> published/unpublished tests pass
> wired up branches presenter into SourceControlPanel
 
12:41 PM
Nice!!
 
12:51 PM
Yeah... I mocked up the branch lists wrong in my tests.
But it's coming along.
Slow but sure. I noticed your new CR post this morning too @Mat'sMug. =)
 
@RubberDuck @Mat'sMug Do you know anything about how the random seed is initialized in VBA?
 
How to, or how it works under the hood?
 
in the spreadsheet that my friend Simon wrote, if you close it and re-open it, it generates the exactly same random
 
> Before calling Rnd, use the Randomize statement without an argument to initialize the random-number generator with a seed based on the system timer.
He's not initializing it properly.
It has a proper example in it.
 
Y U NO SAY THIS IN REVIEW!?
Thanks :)
had a feeling it was related to this
 
1:09 PM
@SimonAndréForsberg cuz I missed it.....
I'm just a duck.
I highly encourage him to come back and post a selfie regarding that. =)
 
1:23 PM
@downvoter: not liking VB6 is a lame reason for downvoting. — Mat's Mug 1 min ago
@Mat'sMug maybe you should include the error.
 
I thought it was clear it was a casting issue...
I'll add a stack trace tonight, I don't hace access to my laptop right now ;)
 
1:36 PM
It was 2AM, admittedly a quick-written question. I'll add more stuff tonight, like a screenshot showing what I'm seeing of the Application object in debug - it looks identical to what I see with Office.
 
@Mat'sMug do you remember why we wanted to do this?
10
Q: How to programmatically change conditional compilation properties of a VBA project

Peter AlbertI'm currently working on a VBA code generator/injector that adds VBA functionality to Excel workbooks by using the VBA Extensibility. This all works fine. However, the original code that is injected uses conditional compilation, referring to some global conditional compilation arguments: Is t...

 
1:50 PM
@RubberDuck not sure.. we wanted to read the declared constants, but I don't remember why!
it sucks that we have to actually bring up the dialog to do it :(
that approach might turn out being useful for other things though
 
@Mat'sMug I can't either. I'll have to dig through the chat log.
later though. Turning out to be a Monday of a Friday so far.
 
lol
@RubberDuck is the Microsoft.VBE.Interop namespace in the Extensibility library?
<Reference Include="extensibility, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
  <EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
7.0 might be why 6.0 has issues...
 
@Mat'sMug That's entirely possible.
 
2:06 PM
oh the other hand...
<COMReference Include="VBIDE">
  <Guid>{0002E157-0000-0000-C000-000000000046}</Guid>
  <VersionMajor>5</VersionMajor>
  <VersionMinor>3</VersionMinor>
  <Lcid>0</Lcid>
  <WrapperTool>primary</WrapperTool>
  <Isolated>False</Isolated>
  <EmbedInteropTypes>True</EmbedInteropTypes>
</COMReference>
 
Hmmm.... but VBIDE is the Microsoft Visual Basic for Applications Extensibility Library.
 
really?
 
Perhaps we need a different reference.
 
hmm
I've edited the SO post
I'm sure it's only missing a tiny little stupid thing to work
Microsoft.Vbe.Interop would be VBA-specific?
 
> Import the requisite extensibility type libraries msaddndr, office97, and dte:
import com.ms.vstudio6.dte.*;
import com.ms.vstudio6.msaddndr.*;
import com.ms.office97.*;
 
2:15 PM
that's not applicable, they're COM libraries - we need interop ones.
 
@Mat'sMug Yes. It comes from the PIAs
I understand that. It's for a VB6 built add-in, but we would still need vstudio6.dte I believe.
 
actually whatever managed assembly the interop types are located in
 
And I don't think we're going to find Interop ones. They're going to be COM. It's COM technology.
 
that's why there's .net COM interoperability tools ;)
regsvr32.exe creates an interop assembly out of a COM dll
or is it a regasm.exe switch...
or tlbimp..
 
> Visual Studio 6.0 Extensibility dte.olb The DTE add-in object model
Microsoft Add-In Designer msaddndr.olb The IDTExtensibility interface
I think those are what we need... maybe.
 
2:20 PM
we don't need the designer
just dte.olb then
tlbimp.exe generates a PIA
 
so shortly put: it's a bit more effort than what we'd like to put in
not impossible, just a bit of a PITA.
 
Yeah.
> The fastest way to get a feature implemented is to do it yourself.
 
and then we'd have to adapt our code to be more flexible on the types involved, perhaps using dynamic (which is meant for this)
 
Personally, I don't have a horse in this race. I'd rather spend my time improving the environment I actually work in.
 
2:24 PM
yeah
I'd just love to send a link to rubberduck-vba.com to my former colleagues and say "download this, and then run code inspections on your code base" ;)
"and enjoy the refactorings"
they're using SVN SC though
@RubberDuck don't worry about attaching the UI to GitHub-specifics, the UI control is meant to be for GitHub integration
 
....but it shouldn't be. Not really.
 
I guess...
 
I'm sure there will be changes when I implement SVN integration, but I'm trying to keep it minimal.
 
the settings tab is very github-specific...
 
That's why everything goes through an ISourceControlProvider instead of just using LigGit2's API.
 
2:28 PM
and the "status bar" too
and the GitHub icon next to the status label
 
I'm actually thinking I might break each of those tabs out into their own controls.
And then populate the tabs with the controls.
 
that's not crazy at all
it's actually a beautiful idea
 
Yeah.... the code behind of the control is getting a bit big to manage.
Even if it is pretty dumb back there.
 
it's not getting any thinner that's for sure
BTW I added a RubberduckUI.resx resource file in the Rubberduck.UI namespace
 
@Mat'sMug Okies. What's in it?
 
2:30 PM
only the "rename" window uses it for now
 
Strings?
 
yeah
 
Okay. Yeah.... I've gotta think about that more often.
 
then I'll add a RubberduckUI.fr.resx for the heck of it
and then RubberduckUI.sw.resx for @SimonAndréForsberg to fill up
it's sw right?
 
No idea. I've never localized anything. Ever.
 
2:33 PM
there's nothing to fear
it's just a matter of loading UI strings from resources instead of hard-coding them
 
No. It will be good experience.
I hate people who don't use chat at work.
 
and then we just assign RubberduckUI.ResourceManager.Culture to whatever CultureInfo we want, and the framework does the rest
@RubberDuck huh?
 
Oh. Nothing really. I just hate people that don't use google chat here at the office. Now I have to look up their phone number (it's not in their email signature) and call them.
 
Hey fellas
 
What could have taken 30 seconds will now take 10 minutes.
 
2:36 PM
lol
hey @Phrancis
 
@Phrancis Ho there!
Hey guys. ComIntern showed up.
1
A: Update on Weave Merging n lists into single list

CominternError Handling (and avoidance) First, I would either add error handling or replace code that can throw errors with code that can't. For example, on an empty Worksheet this line will throw an overflow error: songCount = sourceWs.Range("A1").End(xlDown).row - 1 ' total songs in destination sh...

 
nice!
 
Guy's good...
> When you approach an Excel VBA problem from within the context of Excel's (and VBA's) strengths and weaknesses, you end up with much more readable and less fragile code. It works with one Worksheet, sorts it in place, doesn't require a pivot table, and doesn't nuke the clipboard. It's also clear what it is doing, concise, and efficient.
 
> It works with one Worksheet, sorts it in place, doesn't require a pivot table, and doesn't nuke the clipboard.
haha
 
That ^^
 
3:04 PM
Nuke the clipboard...?
As in, eat up all the memory?
 
@Mat'sMug I think that's .sv actually.
Language codes
ISO 639-1	sv
ISO 639-2	swe
ISO 639-3	swe
 
@SimonAndréForsberg I'll look it up. They're maybe ISO 639-1 codes, but I'm not sure. Really they are CultureInfo codes, as in fr-CA and en-US.
 
This is an Office add-in, it can only run in-process inside an Office app like Excel or Word. Trying to use it from the VB6 IDE is not meaningful, it is not anything like an Office app. There's an ancient KB article still around that covers Office extension development in VB6. Your existing code will not be helpful with that. — Hans Passant 35 secs ago
@Duga wait ..forked, but not starred?
 
@Duga A fork!
 
@HansPassant cool, then I'll close the GitHub issue and that makes one less thing to worry about! ...although that made me curious about extending the VB6 IDE now... — Mat's Mug 32 secs ago
 
> I think I got a definitive answer from a trustworthy source: > This is an Office add-in, it can only run in-process inside an Office app like Excel or Word. Trying to use it from the VB6 IDE is not meaningful, it is not anything like an Office app. There's an ancient KB article still around that covers Office extension development in VB6. Your existing code will not be helpful with that. — Hans Passant 35 secs ago VB6 isn't going to happen, at least not without some major parts getting...
rewritten.
 
great. I don't need to buy rubberduck-vb6.com
2
 
3:33 PM
lol
 
@RubberDuck does MZT have a separate download for VS6?
 
There goes fixing SNAP.. XD
 
I think so, but certainly its not an entirely separate codebase.
 
@RubberDuck should I make a copy of that CD and ship it to Ohio?
 
When you declare a Const you need to assign a value in the same statement right?
 
3:40 PM
Yup
Otherwise... it's mutated and therefore invalid
 
Ah makes sense
 
@Mat'sMug lol..
 
Alright, time to actually use my code now to perform the big freaking clean-up!
 
4:14 PM
WHY does Access not let you modify a saved import/export...!?!?!?!!
Owait, looks like there's a trick to do it :D
Thanks, StackOverflow!
 
TokenRewriteStream just by the name of it, sounds exactly like what I'm after!!! I just hope it's in ANTLR4 and works in the C# target :) — Mat's Mug 5 mins ago
 
4:36 PM
So, I just found some very nice VB naming conventions in Code Complete. I like them. What I like more is it comes very close to the convention I already use. =;)-
 
g_RescopeMe
m_PutMeInSomePrivateType
I don't agree with suggested enum names
but I guess with VB it makes things easier
 
Exactly, and that's why I like it.
It's a great big screaming refactor me label.
I personally don't like the underscores. I don't use them.
 
we could implement and enforce naming styles in Rubberduck.
 
For the love of god.... why can't people mute their phones when there's a huge conference call?
 
5:04 PM
It's not....... — RubberDuck 26 mins ago
really?
_declarations.Items.Where(declaration =>
 
> _declarations.Items.Where(declaration =>
declaration.QualifiedName.QualifiedModuleName == selection.QualifiedName
&& (declaration.Selection.Contains(selection.Selection))
|| declaration.References.Any(r => r.Selection.Contains(selection.Selection)))
.ToList();
Love ya Mug, but you abuse linq sometimes.
 
they just... chain so easily! :)
 
I know they do. That's the problem with them.
As great as Linq is, it's also really easy to abuse.
 
I guess I could extract a method there
(and at several other places, too)
 
5:54 PM
You should make it such that the add-in shouts all todo's when you boot up the IDE
 
@skiwi that's certainly possible!
 
> TODO STUFF!!! TODO STUFF!!! TODO STUFF!!!
 
> Hey! Hey! Did you forget to fix this BUG:!?
 
6:07 PM
Rubberduck > Settings > Startup > [x] Display ToDo Explorer
Rubberduck > Settings > Startup > [x] Display Code Explorer
Rubberduck > Settings > Startup > [ ] Display Code Inspections
 
Let's put SNAP through its paces - I need to process a batch cancellation for 892 separate contracts
 
oh come on!
 
Apparently, someone already tried XD
 
where's the "SNAP" caption?!
 
IKR
Trolling finally stopped next door
 
6:17 PM
> jamais 2 sans 3
I already warned her twice
next warning is a kick-mute.
 
"C is the only real language" come on dude
 
I think that sealed it for good though:
in The 2nd Monitor, 27 mins ago, by Mat's Mug
a good programmer writes code that colleagues can read, understand, maintain, extend and debug. a good programmer knows what he's doing. a good programmer knows that the language is completely irrelevant
like, knock it off
 
I'm sure there are excellent PHP programmers. And I'm sure there are equally crappy C programmers.
 
@Mat'sMug Yes!
 
oh and Rubberduck > Settings > Startup > [x] Parse on startup
 
6:22 PM
@Phrancis woah woah now. Let's not get hasty. good php programmers?
Surely that's a myth.
Found something for the general settings at last. =;)-
 
troll has left the room
 
I'm sure if you and Mug wrote PHP it would be as good as PHP can get
 
I met a PHP "programmer" once. Wrote the worst VB I've ever seen.
And I hang out on SO.
 
^^ 3 minutes and that's the progress groan
 
programmers program. some are good, some are bad. like everything else
 
6:25 PM
Looks like it must be running a SELECT in a loop
 
But how else was he supposed to get that nice status bar?
Oh... wait. adExecuteASync.......
 
@Phrancis opening+closing a connection each time is probably the killer
 
VB6 + ODBC + hard-coded SQL queries = SUCKS
 
VB6 + ADODB + parameterized queries + single connection + transaction = win
 
Duck + Friday + Beer = Always Winning
 
6:28 PM
OMG another one!
 
Did that guy work for M$ in a previous life?
 
That one was just to "import" them. Now it's "submitting" them
 
Makes the bad status bar joke
 
@Mat'sMug YES PLEASE
Batch 1 of 2 processed...
10+ minutes to process 500 records. Ridiculous.
 
and I thought my ETL was painful
 
6:36 PM
Row
by
agonizing
row
 
sounds like my ex-colleagues wrote SNAP
gosh I like being a room owner ;)
 
Hey @cheezsteak!
You look too much like @Duga buddy.
 
lol
 
I should reupload my avatar
I had a two accounts that I merged and lost some things
 
@Duga needs a new avatar, too
gosh that's irritating
 
6:41 PM
May I recommend this one?
 
huh won't update
 
takes a while
a mod can force it I think
 
maybe it is updated?
the bottom left has the correct image
o well
 
> there are 2 hard things........
cache invalidation
 
I can see it @cheezsteak.
 
6:46 PM
me too
 
excellent
 
looks badly framed though
 
that's all that matters i geuss
it is meant to be like that.
 
oh
lol
 
haha
 
6:50 PM
@RubberDuck if the ANTLR "right way" requires important changes, I'll delay it to 1.4
Mar 24 at 17:21, by Duga
> No way rename isn't shipping in 1.3!
 
And that's okay.
remember?
Or does that mean it's not real programming? =;)-
Is it real programming if it's fun?
2
 
7:17 PM
Hey, I'm having tons of fun programming 3D things and seeing what the hell goes wrong whenever I make a slight mistake ;)
@Phrancis The worst part is when you finally get access to the SNAP source code (If it's still around, lol!) and then you see that it is just sleeping 1 second every time with a insert-I-hate-my-job comment applied to it
2
 
@skiwi LOL
 
ohhhhh I still have stars in here.
2
 
@RubberDuck Soon, I'll also be out of them here
 
Me too...
 
I could be like, not lazy, and try to compile a GWT version of my program
 
7:24 PM
@skiwi eh.. it's Friday
 
@RubberDuck It's weekend, you mean!
 
Where you at anyway?
 
The Netherlands
 
Dim contractNumber As String ' I hate this job
sqlCommand = "UPDATE dbo.Contract_Master" _
	"SET Contract_Status = 'CAN'" _
	"WHERE Contract_Number = '" & contractNumber "';" ' I hate my boss for making me do this
Application.Wait(Now + TimeValue("0:00:01"))
' Time for a beer.
 
I wish I had an adjustable desk
 
7:28 PM
@skiwi Oh! Hey, we have stores there!
 
what is your company?
 
@RubberDuck Of course, all cool companies have stores here
 
Ahold
@skiwi would know it as Albert Heijin though.
 
Yeah, the Appie is well known around here ;) Or maybe more known as Albert Heijn
 
You might know it as Stop & Shop or Giant @cheezsteak.
 
7:30 PM
@RubberDuck Thanks for the answer! I had a question; how do you early-bind FSO? Is there a reference in the VBE for it?
 
Wasn't or isn't the Ahold top Dutch?
 
Whenever I tried to Dim fso As New FileSystemObject VBE said it was an error
 
@Phrancis Microsoft Scripting Runtime
You had to have already references it to get that As File in there.
 
Oh, I see
 
@skiwi ??
 
7:32 PM
@RubberDuck The CEO of Ahold
 
Yeah. Can't remember his name.
 
> Koninklijke Ahold N.V. is a Dutch international retailer based in Zaandam, Netherlands. Ahold is an AEX-listed company on NYSE Euronext Amsterdam.
 
We're a child company of Ahold N.V.
 
Koninklijke Ahold N.V. is a Dutch international retailer based in Zaandam, Netherlands. Ahold is an AEX-listed company on NYSE Euronext Amsterdam. == History == === Growth in the Netherlands === The company started in 1887, with the founding of an Albert Heijn grocery store in Oostzaan, Netherlands. The grocery chain expanded through the first half of the 20th century, and went public in 1948. Under the leadership of the founder’s grandsons Albert and Gerrit Jan Heijn, the company continued to make a significant impact on food retail in the Netherlands in the next four decades, pioneeri...
 
So, different CEO (who reports back to that guy)
 
7:33 PM
Ah I see
 
> 38 + 18 downloads BTW
 
And no further complaints about it not working for those 18?
Nice.
 
00:00 - 20:0020:00 - 22:00

« first day (294 days earlier)      last day (2886 days later) »