« first day (1378 days earlier)      last day (1802 days later) » 
00:00 - 16:0016:00 - 00:00

4:01 PM
Yup
Every single attempt at an alternative for VBA ended up a disaster
IMO they need to work on a serious VBA interop solution, whatever the "b-side" is
Only then will people be willing to port their stuff
 
they did have that.
 
Hmm
 
yeah it was a thing around in 2007 or so. Had a whole project for that
lets you call VBA from .NET and VBA to .NET
I think I conflated VSTA with VSTO.
 
@Mat'sMug Sort of...
 
I think this is more in line of what I was trying to remember: blogs.msdn.microsoft.com/eric_carter/2006/11/09/…
If you read, you see that they promise side by side VBA + .NET programming
 
4:27 PM
I want to make sure it's not just me.
 
wow. they have 43 PRs, some dating back to 2015....
 
I get the image of someone with a present at a front door that's never answered: "Hey guys, I'm here to help. Look at my contributions. I've fixed all these problems for you... Uh guys???"
 
@IvenBach i have no idea how one uses a PMW, so....
 
@IvenBach well at least I got paid for my work, soo ...
@this google's Guice is similar
 
4:40 PM
@this It's not much of an Access feature I'm assuming then.
 
Access is the oddball.
it doesn't really act like a "document"
 
Or do you have all your cool stuffs in an external DLL?
 
nope it's all in this file. More proper to think of it as an "application" rather than a "document"
so there's no equivalent of normal.dotx or .... personal.xslm?
@Vogel612 is it more active? I don't get why they don't just close off the older PR if they aren't going to pull it in?
it ain't going to get better with age.
 
apparently nobody really feels like they're responsible
they recently added support for JDK 9 on Guice
but they have 36 PRs open, also some dating back to 2015
it's like ... nobody has the backbone to close stuff
which is seriously bad
 
that's the trouble if there's no "maintainer" cough benevolent dictator cough for a OSS.
OSS projects that has those seems to do better, it seems.
 
4:45 PM
^ I'm so glad we got one of those. #ICodeForTheFatherMug
 
LOL pictured a propaganda picture with Mat.
 
uh..
 
pretty sure that the Mug doesn't want the BDFL role
 
I've fully accepted my duckling imprinting upon Mug.
 
Haha.
 
4:46 PM
<joke>It'll be a surprise to him when I show up at his doorstep.</joke>
My pilgrimage will then be complete.
 
Don't worry. I went through that phase before I realized that there were bigger ducks than Mug in the pond--and that not everyone knew everything.
 
^
 
Mat can't hold a candle to some of the ducks.
 
IOW, everyone has their personal BDFL
 
And some of them aren't even in the C# pond--they are in the *nix pond or the F# pond or something.
 
4:48 PM
Benevolent Dictator For Life (BDFL) is a title given to a small number of open-source software development leaders, typically project founders who retain the final say in disputes or arguments within the community. The phrase originated in 1995 with reference to Guido van Rossum, creator of the Python programming language. Shortly after van Rossum joined the Corporation for National Research Initiatives, the term appeared in a follow-up mail by Ken Manheimer to a meeting trying to create a semi-formal group that would oversee Python development and workshops; this initial use included the additional...
That's a new one for me.
 
And even the biggest ducks aren't afraid to refer you to someone else for somethings even if they are in the same pond.
 
That's how it should be though.
 
Exactly.
 
5:10 PM
Duck check: Is it normal that as testing in a project grows new folders are created for each subset of tests?
 
depends on how you want to organize.
 
Well, in a way. Usually you want each subset in a file.
Then groups of subsets in a folder.
Depending on the size of the project, it may make the most sense to not need any folders.
 
is this in VBA-landia?
 
This is in VBA. I'm adding worksheet properties and testing their results. What started as 2 tests has grown to 20. I can see even more at a future date but I don't want to be overthinking it.
 
if so, then I assuming since there's no "category" (is there?), you need folders then.
 
5:12 PM
category?
 
in RD's tests, we have categories as attributes
so that the test explorer can cateogrize the tests
without having actual folders
 
Ah.
 
and they can have multiple categories, IINM
can't really do that w/ a folder
but in VBA, it's moot because there are no... folders.
 
A lot of the creation of the tests are feeling natural. I want to make sure that as I change things I don't experience a regression or break something unintentionally.
That's happened way too often already.
@Vogel612 Do you know the limit off hand for the length on a test including the WB.Path with Module and MethodName?
I had to rename my file to get tests to run. IIRC 31 characters is the Module and/or MethodName limitation.
 
@IvenBach no clue, but we ran into that somewhen before as well
 
5:23 PM
mmmk. I'll open an issue for it.
 
IIRC there was some limit with 255 chars, but I'm not sure what it applied to
 
255 is the filename but I know I'm well below 200.
 
5:41 PM
[rubberduck-vba/Rubberduck] build for commit 1a5e59f1 on unknown branch: AppVeyor build succeeded
 
6:22 PM
> The workbook with tests is stored on network which causes the path to be lengthy. I renamed a test and running it resulted in an error message `Sorry, we couldn't find '<Path>.WBName.xlsm - [ModuleNa'. Is it possible it was moved, renamed or deleted?` Note that ModuleName is cut off. I counted 108 characters when the cutoff on the ModuleName occured. When this occurs all tests result as `Inconclusive`.

If I close the workbook entirely rename it to a shorter name `Foo.xlsm`, the tests run fi
 
@Duga Shortening the filename down made a lot of the issues and error a moot point.
 
Turns out one of the architects at works wrote their own version of GitHub before GitHub allowed private repos.
 
hrngh....
 
Found the CE command bug in the RubberduckIoCInstaller:
var codeExplorerCommands = Assembly.GetExecutingAssembly().GetTypes()
                .Where(type => type.IsClass && type.Namespace != null &&
                               type.CustomAttributes.Any(a => a.AttributeType == typeof(CodeExplorerCommandAttribute)));
 
6:27 PM
 
Note the GetExecutingAssembly.
 
@M.Doerner Ha.
 
now you say that it's painfully obvious, yea
2
 
Nice job.
 
@Vogel612 Something static with a return?
 
6:28 PM
must've slipped through the cracks
@IvenBach nah that's actually okay
 
Well, I also overlooked this when I reviewed the PR.
 
@Vogel612 What's the issue?
 
there's a ton of issues.
 
@IvenBach Perfectly OK. Just means there is no state.
public static int GetRandomNumber() => 42;  // look ma, no state!
 
- return type name should be `Database`
- first parameter name should be properly camel-cased
- either declare all parameters final or none
- don't declare you throw exceptions that you don't
- Using the rawtype `Class` instead of `Class<?>`
- using the deprecated `Class#newInstance` instead of correctly obtaining a Constructor instance first and using that
- catching Exception
- e.printStackTrace() used **at all**
- return null instead of throwing that exception you declared
- using property injection instead of ctor injection with `ret.setProperties`
@IvenBach ^^
and that's in one method. the whole effing codebase is written in a style similar to that one ...
obtw, ret could be declared final, while we're at it
 
6:34 PM
Dear Kim Jong Un...
 
note that the use of PropertyInjection forces implementors of the DB interface to keep effectively final state in non-final fields
makes everything so much more of a pain to work with
 
I would add that ret could be called database.
 
oh yea, and that
 
With modern IDEs, there is really no excuse not to use descriptive names.
 
obtw that exception there... it's never constructed. it's just cruft
serializable cruft at that
ugh.
 
6:43 PM
@M.Doerner Modern languages, you mean :)
 
7:11 PM
@Vogel612 newInstance is the deprecation indicator?
 
yeap
 
DB ret(Foo) instead of ret.setProperties(Foo)
Seems there's a lot wrong in just that little bit of code.
 
the problem is that that's basically one of the kernels of the codebase
there's literally a few KLOC hanging from that snippet
 
Dear Vogel,
    Please don't ever come near my codebase, you'll find many things wrong with it.

Sincerely,
    A coder that wants to remain oblivious.
#GottaStartSomewheres
My appreciation grows for CodeReviews even more...
 
oh I did that to someone on a student project...
if it were your code I'd explain why it's problematic
 
7:15 PM
Ask them not to review code?
 
no. the other way round
 
Ah
 
I asked them to review my code in exchange for me being allowed to review theirs
 
I'm all for exposing my code to those that are better. How else am I going to learn?
 
@IvenBach Not quickly.
But reading, reading, and more reading helps too.
 
7:17 PM
I'm just not really good at doing that in a manner that is conductive to interpersonal acceptance
 
@Hosch250 at all
 
I couldn't count the thousands of lines of articles I've read/skimmed to learn and get better.
 
I once actually just merged their code to be done with it and two weeks later I tore most of their stuff to shreds and reassembled it nicer
 
@Vogel612 I don't know of many good programmers that are :)
 
got quite a bit of justified flak for that
 
7:18 PM
@Vogel612 Did you see the question about lone rangers on CSE (I think)?
 
@Vogel612 @Hosch250 It's not that I don't think you're a terrible person, just a terrible coder.
 
@IvenBach Yep. You might be the nicest person in the world, but all I'm seeing is your code.
 
Double negatives hide the fact.
 
Because that's what I have to maintain 10 years after you are dead and gone.
Or what'll make me commit suicide 10 years before I should be dead and gone :P
 
I got fired/let-go/etc... from my previous place because they brought in developers to build an actual system and take it out of spreadsheets. Everyone there wanted me to stay but #HeAintGotTheSkillz
 
7:21 PM
Yup. Bet you are better than them now.
 
Nope.
 
Crap. I just made a query go from 7 seconds to milliseconds.
 
I still talk often with the coder that wanted to keep me and was trying to teach me C#.
 
Just by removing things from the select list.
 
That doesn't sound like a bad thing.
Should those things have been removed?
 
7:23 PM
@IvenBach FWIW, you could probably get them to re-hire you now.
@IvenBach Yep,
Also, the new query has triple-nested selects, LOL.
(EF for the win!)
 
@Hosch250 Not a chance. The Dept head has a #NoDegreeNoHire mentality.
 
@IvenBach Thank you for reminding me to never work there.
 
@Hosch250 EF?
 
Entity Framework. @this will scream as always.
It's awesome for managing a DB, but it doesn't always generate the nicest select queries.
 
@Hosch250 It's a really good company.
 
7:24 PM
@IvenBach Not with that mentality it isn't.
Also, let me know what kind of crap coders they hire with a degree...
 
I don't think they'll get the best coders. According to my previous coworker they pay less than what the should, again 2nd hand knowledge.
It made me laugh a little when he asked me if I could do a simple example of unit tests for RD since they still have several people in the office coding VBA.
 
Haha.
 
He writes unit tests galore for anything he writes.
 
Anyway, I'm not going to work for a company that has a "degree-only" mentality.
@IvenBach That's good.
 
I recently got put in touch with another ChemEng. So possibility of shifting into my desired field may come to pass in the next year or 2.
The only part I'd be hesitant to go for is not know if I'd be able to keep learning like I am from the pond and if I'd even have the requirement to code for work.
 
7:30 PM
@Hosch250 no, I didn't...
 
21
Q: How do you deal with Lone Rangers in group projects?

Judy OakleyWe all have them - students who want to write all the code themselves, who don't want to be part of a group project. They have poor social skills, or they don't know anyone else in the class, or they don't trust others, or they think other people "slow them down". So they go home after a group ...

 
@Hosch250 yeap. this happened to me during the "Rechnerorganisation" lab sessions.
with the small exception that I was doing the work in the lab and my partner sat next to me, dumbfounded at the speed
 
I only had one group project, but I ended up doing at least 66% of the outcome, and a good bit more of that what with organizing, research, et al.
I had 4 partners.
 
harsh ...
 
Bunch of IT people tasked with a programming project. I was the only one who had any clue.
 
^^ F5 tested with doubleclick onto treeitems in the CE
I assume that's indicative of a general fix
 
Right-click it and see if any of the context menu items work. That's proof.
I don't remember for-sure double-click, but if was broken before, that's proof too.
 
doubleclick was reported broken
 
OK, good job.
 
Max did all the heavy lifting
 
8:08 PM
As a computer science student, I have no interest in sinking countless hours into a lab class (which at my university are usually worth 1-2 credits despite always having a heavy workload). Should I be put into a class like this, I would do my best to sandbag and fake incompetence so that I don't get put on such a "dream team" and get a C- in the class for not exceeding expectations enough. — Plasma 16 hours ago
The truth is a harsh and bitter thing.
@Hosch250 At least you had partners. I had a sack of #$%^@ as a lab companion that couldn't calculate Volume [m^3] of an object.
#OnlyTheStrongSurvive
 
wow that's bad...
HTH did they graduate from HS with the idea to do something even remotely maths-related?
 
@Vogel612 They didn't.
They were probably a psychology student, like the one that tells me all his statistics troubles at church.
 
You've no idea... I started with what we were working on calculation wise and just kept going lower.
Me: Can you calculate the volume of a pipe for God sakes?!
Him: Uh.... no
Me: :packed up and left without a word:
 
And I'm sitting there wondering how the heck he is going to produce useful data as a psychologist if he can't even understand statistics.
 
@Hosch250 Sadly no... A ChemEng student. That entire group of sub-humans cheated their way through.
 
8:13 PM
Wow.
 
@IvenBach whoa there. dial it back a bit
 
I was thinking it was probably Physics 101, or something. The one everyone has to take.
 
[rubberduck-vba/Rubberduck] build for commit 98d275bb on unknown branch: AppVeyor build succeeded
 
@Vogel612 I'm a ChemEng myself. It was one sub group of our class that all cheated.
Those are the ones I despise.
 
still, watch what you're saying about people please. "sub-humans" is not something that should be an acceptable label for anyone
I don't really care whether you call them braindead morons, but that term is crossing a line
unrelated: it seems google can't be arsed to put in work into fixing their effed up algos.
 
8:18 PM
Which ones are those?
 
That seems ... wrong...
They shouldn't be allowed to add content to people's videos.
If they want to run ads related to the video, fine. But not altering it.
Or maybe I'm reading it wrong.
 
they're not altering the video itself IIUC
 
They bloody well better not be.
I hope that Google fails soon, but the only way that's remotely possible if ads suddenly stop working as a revenue source.
That would fix my two biggest enemies: Google and FB.
TIL: CSS classes are case-sensitive.
I just broke the coloring of the site by not using all-lowercase. Fortunately, I didn't commit anything yet.
 
@ThunderFrame updated the post. didn't include all the points, but thanks for the feedback anyway!
 
8:47 PM
@IvenBach Your inconclusive tests, is this on the stable release?
 
> Which version of RD is this happening with?

Judging from the details provided, the culprit is the `ProjectDisplayName`, which is no longer used for running the tests.
Register CodeExplorerCommands from the correct assembly

Thanks to MDoerner for finding the bug, fixes #3842
Merge pull request #3844 from Vogel612/whoopsie-cleanup

Emergency fix for Code Explorer commands.
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3825?src=pr&el=h1) Report
> Merging [#3825](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3825?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/7a05cc4d4a99fe8a0d514e5027fdc982edfb7ecf?src=pr&el=desc) will **increase** coverage by `<.01%`.
> The diff coverage is `85.71%`.


```diff
@@ Coverage Diff @@
## next #3825 +/- ##
=======================
[rubberduck-vba/Rubberduck] build for commit 58a5da93 on unknown branch: 55.99% (target 0%)
[rubberduck-vba/Rubberduck] build for commit 443a039b on next: AppVeyor build succeeded
 
9:19 PM
[rubberduck-vba/Rubberduck] build for commit 57ebbca2 on unknown branch: AppVeyor build succeeded
> # [Codecov](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3825?src=pr&el=h1) Report
> Merging [#3825](https://codecov.io/gh/rubberduck-vba/Rubberduck/pull/3825?src=pr&el=desc) into [next](https://codecov.io/gh/rubberduck-vba/Rubberduck/commit/443a039b294800b97b6061747ebb98b61cc1a160?src=pr&el=desc) will **increase** coverage by `<.01%`.
> The diff coverage is `85.71%`.


```diff
@@ Coverage Diff @@
## next #3825 +/- ##
=======================
[rubberduck-vba/Rubberduck] build for commit 57ebbca2 on unknown branch: 55.99% (target 0%)
 
@M.Doerner Master. Last stable release.
 
The problem should no longer exist since executing the tests switched to Wayn's API.
I think we actually already had a similar issue.
The base problem was ProjectDisplayName, which tries to read the document from the VBE`s window caption.
For some stupid reason, the API call only returns the first 210 characters of the caption, followed by utter garbage if this limit has been hit.
In that regards, it does not help that the caption always starts with Microsoft Visual Basic for Applications - , which is already 43 characters long.
 
 
1 hour later…
10:46 PM
@this I just successfully unregistered Rubberduck.dll but it didn't like .tlb
I've made sure to include the /codebase /u flags. Even with them the message I'm getting is Failed to load '<Path>\rubberduck.tlb' because it is not a valid .NET assembly
Having tried both Framework and Framework64 only rubberduck.dll is successfully un-registered.
I've made sure to open cmd.exe as an admin as well.
I'm hesitant to try and pull in the latest pre-release of RD since I'm not sure it wont have conflicts with the possible lingering Rubberduck.dll
 
11:46 PM
@IvenBach sounds like you're trying to unregister the tlb file itself
You don't.
 
I entirely misunderstood what you were saying.
 
You specify the dll file only but add the /tlb to the command, with the /u
IOW..... regasm.exe C:\foo\bar\baz.dll /tlb /codebase /u
that will unregister both baz.dll and baz.tlb
 
so just like /codebase and /u are flags so is /tlb?
 
sorta.
strictly speaking the /tlb expects a path to the file
but it can be optionally omitted
in which case, the regasm will just generate a new tlb file at the same path with same name as the dll
 
Because normally the tlb file will be in the same as the dll file, but it's not mandated.
 
11:50 PM
right. it could be anything else
 
So by un-registering the dll it also took care tlb. I'll try un-registering at home as well to see how it goes.
 
provided you've pass in the /tlb to your unregister command, yes
one telltale sign is what regasm output
when you /u without the /tlb, you only see Types un-registered successfully
 
Thanks for that explicit catch. I'll make sure that's included.
 
but when you /tlb /u then you get 2 lines... the above AND Type library unregistered successfully
 
00:00 - 16:0016:00 - 00:00

« first day (1378 days earlier)      last day (1802 days later) »