« first day (1840 days earlier)      last day (1340 days later) » 
00:00 - 23:0023:00 - 00:00

12:01 AM
[banane-io/pdb-frontend] 1 commit. 40 additions. 7 deletions.
[rubberduck-vba/Rubberduck] 1 issue comment.
[rubberduck-vba/RubberduckWeb] 3 commits. 95 additions. 31 deletions.
[Minesweeper] Games Played: 109, Bombs Used: 78, Moves Performed: 15372, New Users: 18
1 hour later…
1:24 AM
Because of the discussion about SQL injection lately, I put out a stripped down PoC for reviews to see if it could be broke (hopefully not but I'll be happy to have it broken, better broken in CR than by black hats)
Q: Safe dynamic SQL for generic search

thisPrompted by discussion about SQL injection, I wanted to put a proof of concept forward to get feedback about whether this is in fact safe and protected against SQL injection or other malicious use. For good reference on the subject of constructing a dynamic search with dynamic SQL, I'd probably l...

1:46 AM
> Remember, you always have to talk to Google like it's a baby with an extensive knowledge of porn
2 hours later…
3:50 AM
@Hosch250 where you find that?
5 hours later…
8:49 AM
\o anyone in the pond?
1 hour later…
9:49 AM
Only insomniac Iven at this hour.
1 hour later…
11:13 AM
@IvenBach bwahahaha!
@MathieuGuindon I suggested submitting to one of those funniest video programs - may as well make some cash outta the program...
12:09 PM
@IvenBach Reddit.
Just exactly how dynamic can I make an SSIS file import?
I'm going to be receiving CSV/XLS files and I'd like to design a very simple interface for a very non-technical person to map columns in the file to appropriate columns in the table(s) in which the data is stored.
Is it possible to pass this mapping info into SSIS as parameters to allow it to import a (relatively) arbitrary file format?
(Some assumptions about the intelligence of the mapper must be made: i.e. not putting FirstName into the DateOfBirth column, etc.)
12:36 PM
by "very simple" interface, I know it will be "very complex", but I'm hoping it will be user friendly and, hopefully somewhat error resistant
Hmm. My position has been that if there's data massaging or manual intervention involved, SSIS isn't appropriate.
I'd use Access since that can be then used to preview the data, do the mapping and correct any issues before putting it in SQL Server table.
SSIS is perfect when you need to fully automate it without any human intervention.
The fact that you're asking about arbitrary file format worries me because that tend to require a human to look at it, no?
We get files from insurance carriers and usually the format is consistent from month-to-month, but sometimes it does change, usually without warning. So yes, a human would have to intervene when the format changes.
So, here's a hybrid approach.
You get a new format, you can set up the mapping in Access
The issue is that we get files from different carriers and they're all in different formats. We want to ingest them all, store the data, be able spit out the original in the original format if necessary (mostly to prove that I haven't lost any data), then export in a variety of formats for other purposes.
My intent was to do this all via Access, but my recent successful foray into SSIS got me wondering how much was possible with it.
Right - so what you really want to do is transform the inputs into a uniform format.
12:44 PM
Didn't EDI solve this?
Don't know about EDI - what is that?
I'd like one (non-technical) person to be able to scan the incoming file, ensure the format hasn't changed, then kick off the processing for that file. If it has changed, they can fire up the mapper and adjust for the new format
Electronic Data Interchange. Yeah - they email us a CSV file. Its data, it's interchanged, and it's done via electronic means, therefore EDI.
Gonna love dem high-tech solutions like that
To get really fancy, I think one or two providers actually have an SFTP site we use to download the data. That's super electronic!
12:48 PM
My thought was that this was beyond the capability/scope/purpose of SSIS, but I figured I would ask.
I'm trying to envision how you would provide a new mapping. The problem is that when you use a flat file provider, it hard-codes all the column metadata for downstream processing
As such, I do not think you can use a flat file source.
Rather you'd have to write a script task to read the file yourself and transform it into the format you want
So earlier I was saying that you could write a hybrid solution where you can use an Access application as a "viewer" and "mapper builder" to write metadata into a table
your SSIS package can then read off the same table to be then used in the script task to determine how to process the file
Don't count on doing it in a single Friday afternoon, though.
@this I'm counting on a month of single Friday afternoons, a couple of blue moons and Christmas before it's fully debugged and working.
@this Interesting concept. My initial intent was to use sprocs and/or parameterized queries to import the data directly from the Access app. Would you recommend this instead?
That would be less programming, yes but that mean you must have a human intervention.
this method would take more learning on my part and, therefore, more time, but learning
The hybrid concept is to support automation for all known file formats
e.g. you don't have to have someone to babysit the import all the time
@this which "that" would be less programming?
doing all imports via an Access application
I would think that once the mapping is set up, the only human intervention is saving the file from email into the correct location and manually kicking off the process.
assuming htere's no other errors but yes, that's correct but you'll have to do it even for a known file formats
Could have a file watcher, but we don't get enough that I think it would be practical to set that up up front.
Yeah, then fixing everything that went wrong if it blows up. ;)
12:56 PM
right - if you only have a handful of files a day, ROI probably won't be there for the hybrid solution.
Hybrid start to make sense when you have too many files of same file format that should just get processed straightaway
files a day? we're talking maybe 20 files/month...
Yeah, I wouldn't bother w/ hybrid then. ROI would be positively awful.
we seem to specialize in that 'round these parts...
thanks again for the feedback.
> Perfect @retailcoder.. will put together some pages and get back to you when I find some time đŸ™‚ I hope Office 365 is not too radically different!
@this it's a set of standardized "electronic data interchange" formats any vendor should be familiar with :)
Evidently not Freeman's....
I am also assuming that it's not a OOB source. There's probably a third party company that provides EDI as a source.
1:39 PM
> HL7 and its members provide a framework (and related standards) for the exchange, integration, sharing, and retrieval of electronic health information. These standards define how information is packaged and communicated from one party to another, setting the language, structure and data types required for seamless integration between systems.
HL7. Most of the software we use supports it, but our company (as I've understood it) doesn't want to implement it.
6 mins ago, by this
Evidently not Freeman's....
'cause that would make sense, and we're just not into that.
I know for a fact that there are 3rd party component selling HL7 as a source task in SSIS
It looks like this id10t posted a real person's info on a public forum.
@FreeMan Report it.
1:56 PM
Wow. I actually have a Windows Live account and it hasn't been deactivated. I have no idea how long it's been since I last logged in...
@Hosch250 Where's the "Report" option? I'm not seeing it.
Ah. Gotcha. I was looking at the live.com site to report it to them to have it cleaned up/genericized.
@FreeMan wah wtf
^Yeah, that's what I thought.
Is there somewhere on the ms site to report that to get it sanitized/cleaned up/removed? I looked at the HHS link @Hosch250 found, but I'm not sure that I want to go through all that, plus, they limit reporting to 180 from the event (waaaat?) or you'd better have a darn good reason for holding out on us!
@FreeMan You can report it, but you have to have a good reason to have waited that long.
2:07 PM
^ see edit :)
"I reported it when I saw it" isn't good enough?
dunno. They want all sorts of personal info to report it.
Guess I really should. There's enough in that post to make it look legit...
Dunno if they can go after the guy who posted, but they should be able to get MS to take down the post, censure the user and attempt to delete it from the wayback machine.
tomorrow's headline: "My life is now hell because everyone knows my SSN, thanks to a developer looking for help."
@this that’s no developer, that’s a Pineapple.
2:17 PM
Doesn't appear to be an SSN in there, but there are biometric values, dates and what appear to be actual names. No "Test Testerson" or "Cliff Claven" names.
> Discovered by accident in #5015; the Rubberduck code pane context menu is buried in the "Toggle" sub-menu in Office 365:


The context menu location is configured at the `AddIn` level, here:

2:41 PM
@Duga what other reason than "Microsoft decided to change control IDs for the heck of it" could there be for that?
I don't think control IDs are unique
within a parent menu?
My recollection is fuzzy but I remember that you had to specify both the menu and the control
um, I think it should be unique within a single menu/toolbar
Has to be but it's not globally unique
are you sure that the context menu is set up there?
I know for certain I hated the whole commandbars system. It's a hodge-podge
BTW, I just checked. I'm on Office365, and I don't have that
2:45 PM
it's getting weirder and weirder.
wtf.. we were using IDs because captions are localized
@MathieuGuindon Isn't that MS's favorite reason for changing things?
@FreeMan for renaming things, yes =)
where are we setting the ID?
2:50 PM
What do you mean?
@this we're not. They are hardcoded constants
Command bar IDs are an absolute PITA. from what I recall, we can't really guarantee where an insertion will occur, because the IDs are not unique, can change over releases, and the user may have customised their menus
it's kinda best-guess
I guess here is also used to insert: github.com/rubberduck-vba/Rubberduck/blob/…
the idea was "let's have a known built-in ID to insert our stuff immediately before"
2:55 PM
"... and cross our fingers"
I think we went with "cut" or "paste", or something highly unlikely to ever change. #YeahRight
@MathieuGuindon Change in general, in my experience/opinion
As I process my CSV files to import them, I'm going to be taking one wide denormalized row and breaking it down and inserting into multiple linked tables to normalize it.
They only way I know to do this is RBAR
1) Find "Person" info and see if he exists in `PersonTable`. if so, grab ID for future use, if not, insert & grab ID.
2) Find "Coverage" info and see if it exists in `CoverageTable. If not, insert
3) etc
4) lather, rinse, repeat for each row
Is there a better methodology?
3:21 PM
this looks reasonably promising.
4:17 PM
that was bizarre
i managed to lock up access as if i had a modal form open
without actually having one open
i could run code, but couldnt click on anything in the main window
it would chime at me
did you check if it's hidden behind another form?
this is a problem with newer Windows - lot of modal dialogs in various application just don't come in front.
a trick I do is to do Show Desktop then show the application. That usually gets the modal dialog in front again
4:33 PM
Q: Is it possible to remove the Careers banner with the dying starfish?

Boris TreukhovIs it possible to remove the annoying ad with the dying starfish? Certainly, this is not what my career should feel like.

I never knew there were so many ways to be "offended".
@this its a custom form, and i closed it
at least i can save it
4:57 PM
best response
A: Is it possible to remove the Careers banner with the dying starfish?

PëkkaYeah. And there's a lot more wrong with that ad than just that. The orange of the starfish is potentially offensive for people who don't like dutch royalty and/or victims of the Orange Free State. the Careers logo looks like the reception bars on your mobile phone; the fact that there's six bar...

man that whole thread is hilarious
This is what your career should feel like followed by a bottom bar in the colour of crap, yeah, nothing at fault with that. — yannis Aug 11 '12 at 11:38
5:17 PM
how did you guys even find that ancient question?
I don't know.
Just browsing questions on SE
@Hosch250 is having a very busy day at work lol
I've had nothing but very sporadic fires for the last week.
I have (I think) 4 tickets in my queue for the next release that are probably about 4 hours worth of work.
5:38 PM
@Hosch250 That's what's so great about America - we can be offended by any and everything. BTW - would you stop breathing, I find it offensive.
I am dutch, and I am offended by orange (especially during soccer season) — Toon Krijthe Aug 14 '12 at 9:45
and if you're a victim of the Orange Free State, you should be not only happy, but quite surprised to still be breathing and should no longer be taking offense at anything.
5:57 PM
so my co-worker sent me this.. if someone was to be offended, id say it be about this
20 hours ago, by IvenBach
yesterday, by IvenBach
Jun 7 at 16:44, by IvenBach
yesterday, by IvenBach
21 hours ago, by IvenBach
Sweet Jesus when will people learn?
after they die?
Darwin awards prove death doesn't mean learning occurred.
5:59 PM
to be fair, can you tell they didnt?
<smugly>I'm confident in my assessment they didn't.</smugly>
@KySoto Wait. "Loot Box" as in the random things that get dropped in some FPS games? People are so up in arms about that that governments are "investigating"? No wonder they can't do anything actually remotely useful. :(
@IvenBach Is it the same person or different people?
6:25 PM
@FreeMan This time it was a different person.
Indicating that there have been episodes of the same person hitting it more than once? Nope. No learning going on there at all!!
27 mins ago, by IvenBach
<smugly>I'm confident in my assessment they didn't.</smugly>
@KySoto ... We truly do live in A Brave New World now.
6:42 PM
@IvenBach 5 then? is the count accurate?
@MathieuGuindon It got messed up due to not properly locking access to prevent simultaneous updates ;P
@FreeMan I'd never heard of them either. But reading the wiki entry suggests that these things are paid for with real money, hence being a type of gambling.
> Currently, the Add button drop-down comes from the same resource entry as the Add context (sub) menu. If we add an entry for 'File...' there, it will show up in both places. That being so, the Import... menu item seems somewhat redundant. Did we want to keep it?
6:58 PM
@Duga wishes he'd persevered with refactoring menu \ command injections, it would have helped here
@mansellan who knew. Still a waste of time at the national government level.
> Indeed this makes the "Import..." menu item <s>somewhat</s> completely redundant, the "Existing Item..." menu item means to replace it, leaving "Export" close to "Remove", and effectively moving "Import" closer to the "Add" commands.
@mansellan The ones I've seen have all been "pay to look pretty".
7:16 PM
@Peilonrayz lol!
the calling function which is used to instantiate the class and call a method is a UDF called from the worksheet - sounds like the root of the problem: you're abusing UDFs and making them do something they're clearly not meant to be doing. UDFs are intended to be pure functions, not side-effecting hacks that schedule other calls to other side-effecting hacks. This has all ingredients of a classic X-Y problem. Instead of trying to hack up a solution for not-the-real-problem Y, why not tell us more about the actual problem (X) you're trying to solve? — Mathieu Guindon 1 min ago
like, sorry if this is a brutal awakening, but a UDF has no business scheduling member calls on anything whatsoever, be it in a standard module or an instance of some class
yep. Couldn't agree more.
wow just actually read the question, once I hit the UDF sentence ... wtf?
In other words: implement stuff in a macro rather than a UDF, and the "problem" poofs away in a glittering purple haze of magical unicorn dust. — Mathieu Guindon 10 secs ago
7:24 PM
haha the alliteration, problem poof purple, we need some more ps.
the "problem" poofs away in a pretty purple ploosh of potent pixie powder
aw but I wanted an excuse to use the word "glittering"
7:47 PM
pottering works.
or, po-glittering
the gaffe/glitch/god-awful gobbledygook of code glides away in a glittering green glow of gremlin gems... oh yuck, that went sideways quickly.
that was just an excuse to use "gobbledygook"
8:03 PM
Having a thought on my data import task: On the client side, I simply import the data into an appropriately shaped temp table, then kick off a big 'ol sproc on the server to parse its way through all the data, determine what's new and insert records as necessary.
Advantage: Once it's on the server, there's zero network latency involved, and the server hardware is (probably) beefier than our desktop machines.
Cons: It's all got to be written and maintained on the server in TSQL and I don't get to practice writing some good classes.
Q: Excel - Visual Basic For Applications - Mastermind Game

learnAsWeGoFor those who are unfamiliar with the game: https://en.wikipedia.org/wiki/Mastermind_(board_game) A link to the workbook: https://github.com/Evanml2030/Excel-Mastermind Had trouble getting the form and scroll bar to adjust based on the resolution of the monitor that it is inside. It does not...

Sure that's what I do typically, using staging tables.
@QuackExchange get yer brokeback code off to SO!
@this It can still be pretty modular, and I s'pose I can git my sql source code.
@MathieuGuindon There were a few that occurred before I officially created the backing field.
Another con: if the file format changes, I have to adjust the temp table. I guess on the client side I can confirm that the columns provided in this month's file matches what is expected prior to attempting to load and give a warning and abort if they don't
8:11 PM
that'd be a case where you do the massaging in the Access
e.g. let it filter what columns to put in the temp table until you actually need some new column for some reason
so if they're in habit of adding random columns that aren't interesting to you, that might make sense
Since I'll have a map of the CSV, I can confirm that it matches the current file and refuse to process if it doesn't. Then the user can go fix up the mapping & reprocess. If the temp table doesn't match the mapping, I can drop and rebuild the temp table on the fly.
@BigBen ♫great green globs of greasy grimy monkey guts, mutilated monkey nu...♪ yeah, never mind.
@FreeMan now that's stuck in my head lol
isn't it gopher guts?
My work here is complete.
oh, yeah, guess it is.
and on that fine ♪, my work is actually complete for the day. TTFN
and with that, freedom died.
8:43 PM
\o anyone mind answering a quick question regarding two versions of a short piece of code I have written?
Basically just wanna know what best practice is....or have I completely missed the point.....
Exhibit A: Original code using If Else to manage return of function
Public Function Bar(ByVal id As String) As String
    Dim json As Object
    With CreateObject("MSXML2.XMLHTTP")
        .Open "GET", "http://www.dhl.com.au/shipmentTracking?AWB=" & id & "&countryCode=au&languageCode=en&_=", False
        .setRequestHeader "Referer", "http://www.dhl.com.au/en/express/tracking.html?AWB=3010931254&brand=DHL"
        .setRequestHeader "User-Agent", "Mozilla/5.0"
        .setRequestHeader "X-Requested-With", "XMLHttpRequest"
        .setRequestHeader "Accept", "application/json, text/javascript, */*; q=0.01"
Exit B re-write as thought, do I really need the Else as I am only assigning as vbNullString
Public Function Foo(ByVal id As String) As String
    Dim json As Object
    With CreateObject("MSXML2.XMLHTTP")
        .Open "GET", "http://www.dhl.com.au/shipmentTracking?AWB=" & id & "&countryCode=au&languageCode=en&_=", False
        .setRequestHeader "Referer", "http://www.dhl.com.au/en/express/tracking.html?AWB=3010931254&brand=DHL"
        .setRequestHeader "User-Agent", "Mozilla/5.0"
        .setRequestHeader "X-Requested-With", "XMLHttpRequest"
        .setRequestHeader "Accept", "application/json, text/javascript, */*; q=0.01"
Do I need to have the Else? As in first version?
the first version does not have an End If for starters
also you could extract the json("results")(1) into a with block variable
Imagine I hadn't deleted the End If!
@Vogel612 Lemme take a look
AFAIK the default value for a String is vbNullString, if only because it can't be Variant/Empty
8:48 PM
Yeah... so I decided I didn't need the Else and could rely on that behaviour.
seems semi-reasonable
oh dear....
so better to be explicit?
almost always, yes
Thanks. With respect to the With statement.... how do you see that working? I can't . in front of the accessor?
8:51 PM
those are default member accesses in the first place, aren't they :)
So, I can't do:
With json("results")(1)
    if .("delivery")("status") = "banana" Then
        Bar = .("checkpoints")(1)("date")
       Bar = vbNullString
    End If
End With
but you are saying I don't need the "." ?
ParseJson returns an Object? I'd assume Items is the default member there
Yes it returns a dict
well, assign it to a Dict then
@MathieuGuindon double lol
8:56 PM
What I am not seeing is how it would work with a With as don't I still need . within With?
(I know I'm slow...)
9:12 PM
If .Items("delivery")("status") = "banana" Then
9:26 PM
FWIW, I'd insist on .Items("delivery").Value.Items("status").Value = "banana" or whatever it is.
ya, that's probably better, though it might miss a .Value in between, doesn't it?
probably - i was winging it a bit
The problem is that it's late-bound
No compile-time validation after the first Value
TFW you promise a PR and don't deliver... github.com/canton7/RestEase/issues/113#issuecomment-504207854
gosh, I suck
9:47 PM
it's not really cool to be stuck in the reverse situation, though
I have a PR that's been open for almost two years
eesh no. Yet to experience that one, still pretty new to OSS, not PR'd to anything except RD.
(and not PR'd to RD for far too long, hence picking up an up-for-grabs ;-) )
@Vogel612 would it be unseemly to comment :tumbleweed: to that PR? (kidding!)
that repo is basically abandoned anyways
well, it is Java </flamebait>
actually it's a google project
> Guice (pronounced 'juice') is a lightweight dependency injection framework for Java 6 and above
meh, next!
9:55 PM
Java 6 has been deprecated for literal years by now
@mansellan Not enough fire in your belly, eh?
this day has been a living hell
@this lol
it's madness to still target it with a DI framework that's being developed
Monday, I have to be at work at 00:30 (huge release)
fun times...
@this Oh?
@mansellan alt. pronunciation: "goose", I guess
10:00 PM
Murphy's being a particularly hardass today.
@MathieuGuindon Heh, the duck would kick the goose's ass :-)
@this bt;dt... I sympathise.
@mansellan wait, why would a goose have a donkey to begin with?
@this lmao!
10:08 PM
@this Aren't you Mr. belts-n-suspenders?
It must be really bad then.
@IvenBach I forgot my overalls and coveralls today.
Then you at least have your Suspenders, belt, pants waist button, and underwear (both boxers AND briefs) then. #YoureGoodToGo
@IvenBach Real risk-averters also add an elasticated waistband
may have to add hazmat to my daily clothing wear, too.
Can't have a beard with most breathing apparatus.
10:12 PM
i think you can have one in a hazmat
you're wearing a hood, after all
:thinks: did you have one in the picture with mug?
Those style yeah.
Of course you'd go for the full body style.
nah, just some scruffy scaggy hairs on my chin
Ergh my spelling is particularly bad today.
On the contrary, your speeling is particularly wünderkind.
I try. And in todays school system that means I pass.
I just made myself sad with that comment. Why has the bar been lowered so much.
10:19 PM
because their little Bobby is a special snowflake and nobody dares to say otherwise?
what with that weird name anyways
I blame King of the Hill
That boy sure ain't bright.
IIRC, Hank always said "that boy ain't right" or something like that.
I've not seen it in ~15years. Bound to mess up the quote.
10:35 PM
Tried watching it once, didn't see the appeal
And generally, I love American animation. Rick and Morty, omg...
fires up Netflix
I still haven't seen that show.
@IvenBach you have to see that show.
had to google it
Any episode, they're all good
Don't have the time. I barely have enough time with my family as it is.
10:39 PM
<-- a bit outdated
@this uh, wut?
^^ More so than I am.
I've at least heard about it.
seeing it's Adult Swim, probably why.
I don't have cable.
Just Netflix.
No cable, Hulu, Netflix, Prime. None
hmm, TIL... in the UK, adult swim, HBO stuff all turns up on Sky (satellite), which is $ - you have to pay $$$ for those?
10:41 PM
I win that outdated/hermitish contest.
@IvenBach I tip my hat to you, sir
@mansellan worse. You get ads, too.
@this yeah, knew that, seen some live streams... we get ads, but like every 15 mins. you get them every 5...
I mean, Netflix and Hulu at least make sense. Pay $, no ads. Cable wants you to pay $ and watch ads? Uh....
^ The purpose of paying for specialty channels was so you wouldn't have adds.
So yeah, can't see me paying for more ads.
10:43 PM
In the UK, BBC is ad-free (obvs), and so is Sky Movies (they'd love to, but its a big and historical selling point). Everything else has ads.
Don't care if they have great shows or whatnots. I don't want to be interrupted by some lame kid toy or some new candy or a creepy medical ads with mile-long disclaimer
American ads are creepy
ok, i have an excel spreadsheet with a column that's 65,530 rows tall.
CableCompany: We want to give you all these channels. It's blah blah blah...
Iven: You're making me pay to view shows that show ads?
CableCompany: But of course. It's our business model. Hello? hello?
It's TRUE/FALSE but of those, only 23 are false.
question: how do I find the 23 FALSE?
(short of using VBA)
10:45 PM
blargh. long day. dumb me.
Data tab>Sort & Filter group>Filter
@this It's 2019, and Hulu still don't sell into the UK. What's up with that?
00:00 - 23:0023:00 - 00:00

« first day (1840 days earlier)      last day (1340 days later) »