« first day (1160 days earlier)      last day (2020 days later) » 

20:00
@FreeMan My day was just made knowing one other RD contributor knows that show.
sometimes, it's the simple things...
My kids don't appreciate it (yet) as much as the wife and I. OTOH, we were sitting at dinner last night with the 2 youngest singing songs from VeggieTales. The 2 youngest are Soph & Fresh. In college.
My wife doesn't appreciate it. She didn't grow up in USA so a lot of subtle humor is lost on her. All she see's are "Dumb rednecks" and I can't convince her otherwise.
Give it time. Some kids take a long time before they can relate to their parents on a non-parent-child level.
ah, but the subtle difference is "dumb Canadian rednecks" and that's an important distinction!
~.~ not to her...
Oh, we relate great, they just don't like Red Green
20:07
^ that almost ruined my day hearing that.
Everyone should like Red Green...
My wife did take me to one of his standups when we were first married. It was a pleasure to see him in person and thank him for all the laughs he'd give me and my dad over the years.
/back-on-topic-before-the-big-ducks-get-mad
I'm going through C# In Depth and have a question regarding a delegate and IComparer<> when dealing with List<T>.Sort().
Back off topic. Got my offer.
20:23
@Hosch250 congrats!!
65k. What do you think?
that's terrific!
well done!
Should I take it, or counter with 70?
Nice @Hosch250!
Counter with 70!
Worst case they say no
you take it means screw the masters?
20:24
My mom says worst case they retract it.
@Mat'sMug you have your C# in depth book available?
@Mat'sMug Taking that too. Got to pay for it...
@IvenBach Nope, at work.
Besides, learning is fun!
@IvenBach no now, no. it's still packed in a box, somewhere, along with a ton of other programming books
What do you think, @Mat'sMug?
I'd just take it
and then negotiate after the masters
OTOH you could counter for 70 and they settle for 67
#NothingToLose
20:28
The masters will mean nothing to them. I'm taking an IT masters, not a software engineer masters.
in any case, you have next to no expenses - make sure you stash as much as you can while you live with your parents
@Hosch250 While that's true, it's pretty unlikely over $5k. You ask for $90... they'll laugh at you. :)
65K is close to twice what they could have offered you as a junior dev
They are hiring me as a full-fledged "Software Engineer".
I'm making $60k already, and I could probably go out at $60 again within two weeks.
Of course, they have a really good benefit plan.
counter at 68K, they might just say "mmmkay"
but at 65K they're not lowballing you IMO
20:33
I'll just take it.
that's what I'd do
@Hosch250 Congrats BTW.
I don't like leaving an impression of "I might leave in a few months when I get an offer 5K higher than that"
I was working contract-to-hire, and the hire rate was 60-65. They were happy enough that they took me at the very top of the stated range already.
@Hosch250 That indicates something positive then.
20:35
My manager said she didn't consider me a junior dev.
And my coworkers are really happy with my work.
I presume they have annual revisions
(or semi-annual)
		//C#2
		List<Product> products = Product.GetSampleProducts();
		products.Sort(new ProductNameComparer());

		class ProductNameComparer: IComparer<Product>
		{
			public int Compare(Product x, Product y)
			{
				return x.Name.CompareTo(y.Name);
			}
		}
I have no idea.
		//C#3
		List<Product> products = Product.GetSampleProducts();
		products.Sort((x, y) => x.Name.CompareTo(y.Name));
that would be a good question to ask prior to accepting/countering
20:36
The contract just says "until termination"
@Mat'sMug or @Hosch250 if Sort takes in an IComparer<T> how does a delegate fit into that?
in a year's time you'll have a year's experience as a "software engineer" - if they don't re-evaluate your salary by then, you're losing money to inflation and to your increased market value.
@IvenBach IComparer<T> isn't a delegate, I don't understand the question
C# 3 takes a delegate.
LINQ's OrderBy sorts with a delegate
C# 2 takes an interface implementation.
20:39
hmm, haven't used List.Sort since LINQ came up lol
C# 3 has less code to keep track of and in more places.
That's why I was hoping you'd have the book handy.
@IvenBach C# 3 overloads the Sort method with a new signature that takes a delegate
So by looking msdn.microsoft.com/en-us/library/3da4abas(v=vs.110).aspx I'm looking in the wrong spot?
okay, I'm talking out of my ass ATM
no
Comparison<T> is a delegate
....and it was already there in C# 2
C# 3 just simplified the syntax for invoking the delegate overload, with the new lambda operator
20:46
No, that is .NET 2.0.
Does .NET 2 match C# 2?
They don't match anymore.
.net 3.5 / C# 3
haven't matched for quite a while ;-)
Ah, I knew they split around then.
20:58
Reviews in June/July, salary adjustment in July.
Signed and submitting.
awesome!
@Mat'sMug Comparison<T> is but what about List<T>.Sort(IComparer<T>)? That's what the example is implementing.
what about it?
It's pulling in an IComparer<T> which is just the interface.
IComparer<T> is an interface, yes
21:00
~.~ Oh sweet goodness... I feel smart...
so you'd implement it in a class, e.g. MyStringComparer : IComparer<string>, and give the Sort overload an instance of that class
@Hosch250 Over $5k for a programming job that was offered at $65k? Not likely.
@puzzlepiece87 too late, already accepted lol
When products.Sort((x, y) => x.Name.CompareTo(y.Name)); is executed the (x, y) => x.Name.CompareTo(y.Name) itself is the delegate which corresponds to List<T>.Sort(Comparison<T>)
and Comparison<T> is the delegate...
@Hosch250 I'm in the always negotiate camp.
21:03
I'm not dumb... Just slow.
@Mat'sMug Thanks for helping me #RD
Sometimes another ducker is needed to work out my misunderstanding.
@IvenBach correct
@Mat'sMug Too late, yeah :) Every rule has exceptions, but FYI, most studies have shown that negotiating doesn't have negative impact on employee standing after accepting the offer.
Gotta re state it in the correct form to make sure I understand it. Thanks for always being patient with my duckheadedness
Yeah, I almost countered, but meh. I'll see if I can't get 70k next July.
@Hosch250 no. see if you can get 75K next July
5K would be a 7.7% increase - not half bad. but if you're told all year how amazingly outstanding you are, a 15.4% increase isn't too much to ask
hmm
21:08
@Hosch250 ^ Is a good indicator.
to be fair 7.7% increase is likely already above what the standard yearly adjustment would be
I habitually undersell myself. I've seen experts at work and I aren't one right now.
I'm not one of them yet; maybe after I learn SQL and Mongo better.
You're well on your way from the work I've seen you do in RD and from apparent co-worked comments.
@Hosch250 you still don't know SQL?
21:12
Oh, I do.
I mean, sort of.
I know the basic select, including some nested query-structures. Insert, Delete, Update.
Temp tables, stored procs.
Cursors.
scalar vs table functions, CROSS APPLY, CROSS JOIN, CTE's?
cursors (and triggers) you can un-learn
#TIL foreach (Product product in products.OrderBy(p => p.Name)) doesn't actually sort the list, rather getting the list sorted.
Cross apply, yes. Not the others.
@Mat'sMug I only used them once.
Twice.
Once was when I was converting data back to JSON for a down migration.
The other was for a complicated stored proc; the SQL expert around here said he didn't like cursors, but it was one of the few places they were good.
@IvenBach none of LINQ queries do anything to modify the underlying data
I asked him for help on both issues, and he said to try a cursor.
@Mat'sMug Well...
You can modify the underlying data in a Select.
Nasty, but doable.
Heck, you can do it in a Where too, if you really try (using braced bodies makes it easier).
21:16
@Hosch250 my last experience with cursors was nuking one and turning a deadlocking-with-itself-for-3-days procedure into a completes-within-a-second procedure. if a cursor can die, kill it.
@Mat'sMug Correct. Seeing products.Sort(foo) and products.OrderBy(bar) helped me understand that.
@Mat'sMug You're going to get a big duck-filled thank you package from me one day.
@Mat'sMug Can't for one. It was in a migration.
And I'm not just talking about RD fixes either.
@Hosch250 okay, "none of LINQ queries should do anything to modify the underlying data"
Really, the cursor was my last resort.
For both things.
21:17
^ a last resort is all it is
And if I hadn't had to convert JSON data to SQL map tables and back, I wouldn't have had to use it.
you could probably have written a TVF an cross-applied the results
That's what I did to convert it to the tables.
It was converting it back to JSON that was a bloody horrible pain.
scalar function?
Not sure what that is, but I'll look it up.
21:23
returns a single value - here likely a nvarchar(max)
Well, I was just doing a select/from/where.
a function can take a table parameter
The problem was converting part of the table back.
Because I took data from N rows and put it in one table with the proper Guid's, and all.
eh, I don't have the full picture, talking out of my ass again :)
Hmm, I bet Group By might have worked.
21:24
hi @JH!
That's one point I'm really weak with.
@JH Welcome to the pond.
@M.Doerner On page 16 and already I'm glad I picked it up.
@IvenBach #ToldYa
I'm slow on the uptake. Once I do though watch out.
Still feel like I'm learning very slowly but I know I'm definitely progressing.
@IvenBach Took me about 4 years to really switch from learning slow to learning fast.
And that was just general learning.
Took me another year or two to learn to think like a programmer on top of that.
Or rather, learn to think like a program.
21:38
Gotta learn how to learn before you can learn anything worth learning.
Well, it isn't just that.
With long practice, your brain can train itself to store generic new information better.
Or maybe it learns to just store it all.
But somehow, my learning rate took quite the jump in middle school.
21:56
@ThunderFrame Most of your assertions are just nit picky squabble... VbLf is better than Chr(10) and String.Join better than concatenation, really!? Rigid assertions like that are harmful. vb constants are unique to vb type languages, variants of Chr() are not, so Chr() has broader recognition. And the performance gains from String.Join are negligible compared to readability for small strings. — u8it 24 mins ago
FML
your variant-infused, inefficient, misguided and misdirected, late-bound, uncompileable, error-prone, anti-pattern is probably fine then.
6
> accept that it's a creative diagnostic approach not too different than placing break points
cough, chokes, dies
@ThunderFrame suggestion: walk away slowly ;-)
I logged in just to downvote that.
inB4autoflagKicksIn
Tempted to flag this You Don't Understand Hungarian Notation with a link to the doc:
@ThunderFrame Hungarian naming was good enough for Microsoft and Run is a simple and obvious main proc. I used VB syntax in VBA and got some varients, boohoo, vbs only uses variants anyway. I won't address everything you mention, but most of it is just squabble... although I've got to admit. The Option Explicit typo catch was pretty good and made me laugh.... props to you for that :) Although I don't think it's worth a downvote. Do you really expect all SO answer to include option explicit and all other boiler plate code? — u8it 38 mins ago
Hi, @Ducka.
TTGH, bbl
22:10
Same here.
@ThunderFrame 'Do you really expect all SO answer to include option explicit' If it's VBA then yes, yes we do.
@Hosch250 so it won't work in VBS? FFS, it won't work in C#, JAVA or FORTRAN either. Neither will Set dic = New Dictionary
@ThunderFrame This gets a star simply for the depth of thesaurus work!
Sure, code patterns and optimizations are important, but so is experimenting and exploring. My opinion is that my original code is a little sloppy and that there should be more disclaimer in calling it error handling, but that the main point is relevant and the pattern has potential to be useful and informative. Maybe I'm wrong. But wouldn't it be more helpful to correct any typos or small errors you see and point out the limitations of this pattern and direct toward better release error handling, but accept that it's a creative diagnostic approach not too different than placing break points? — u8it 48 mins ago
"creative approach" - I'll give him that!
@FreeMan I'd tell him the meaning of "condescending", but I don't think he'd understand
22:26
You know, I logged back in to say something, but after reading the last 20 or so comments, I haven't the foggiest what it was. I'm sure it will come back to me.
22:41
sup gents
@FreeMan @puzzlepiece87 If you get into C# the In Depth book is really good.
@BrandonBarney You should pick it up too ^
 
1 hour later…
23:54
@Mat'sMug How does the COM collector determine if a member is part of <globals>?
@IvenBach While at face value it makes sense to me, it quickly loses its value. For example, a couple of months ago a cave-man definition would have helped a lot, and there were cave man definitions, but once I got past the initial what of interfaces, the nitty gritty of why and what they are really is what I needed.
That said though, if you think it would be valuable, start a blog for beginners where you explain in layman's terms, provide examples, and go into greater depth. At the least, it will help you reinforce the concepts. It will also be more visible than a nugget hidden within the RD wiki (lets be honest, most users go to a software's page just to download it. They dont often hang around).
True. I've been avoiding any impulses to do a blog. This may warrant it though.

« first day (1160 days earlier)      last day (2020 days later) »