« first day (1365 days earlier)      last day (3602 days later) » 

user55340
 
user55340
4:24 AM
@gnat listen to the latest podcast. blog.stackoverflow.com/2014/05/… - you might like it.
 
4:46 AM
@MichaelT "Demonstrably good questions" hmm are they trying to promote what they ignore so thoroughly in the hot questions
56
Q: In “network hot” questions formula, discard answers when voting evidence indicates that these are not good data points

gnatTL;DR When votes of 20... 30... 100 users clearly indicate that only one or two answers are popular, it does not make sense to pretend that other answers are popular too. In current version of “network hot” questions formula (AnswerCount * Qscore) *, all answers up to 10 are assumed to equally...

 
 
10 hours later…
user41796
2:28 PM
0
A: If a duplicate question has a different accepted answer, does this imply the question is too opinion based?

GlenH7I recognize that comment.... In my opinion, the original question, as asked: Simplicity-efficiency tradeoff really is a duplicate of If my team has low skill, should I lower the skill of my code?. And we can use the OP's ending questions to prove that point. Do I have to keep it simple (s...

 
@MichaelT you got overtime and bonuses as a software dev? that's kinda neat :)
 
user55340
@enderland "this team is behind on its tasks... you are all required to work 48h/week until these tasks are done, don't worry... you'll be getting overtime for it."
 
user41796
@enderland From what I remember him saying before, the base wages were a bit screwy because of the bonus structure
 
@MichaelT yeah that's kinda how my current group works too actually, at this point in my life I'm ok with it but longer term??? pffffffffffffffffft
I'm curious if the team I'm interviewing for will even have overtime as an option, either, I'm guessing no
 
user55340
My team was on "mandatory 50" from July through the end of October to "support the POS" because other teams were up to par on supporting it yet.
 
2:38 PM
I'm technically on optional 50 right now, but it's a pain in the rear because I have to be at least 48 to get any paid OT
 
user55340
If you want to have some semblance of weekends, that means 5x10... which is utterly soul crushing. And if you have 1h of break in there for lunch, this means you are working from 8am to 7pm every day. Sure, the OT is nice...
 
@MichaelT I've been working through lunch more or less
Because 5x10 IS soul crushing, especially when I have a 40 min commute each way...
 
user55340
@enderland I did too... that and stocking snack food at the desk.
 
Yeah, I know it makes me less productive overall but... f that, my life is more important to me than my career :)
@MichaelT I guess I'm going to meet all of the team I'm interviewing for between the different interviews/lunch
 
user55340
OT as a developer is a double edged sword...
 
2:42 PM
I know I'm more effective/sharp when I'm rested
and sleep is the first thing to go when I work OT
 
user55340
That said, if Employer^^ had realized a bit more of OT law in Wisconsin, they could have screwed us over completely...
 
user41796
@MichaelT I'm sure they knew of it and just didn't out of generosity and compassion for the employee.
 
user55340
> Persons Exempt From Overtime in Certain Businesses and Circumstances
(15) Certain computer professionals. Any employee who is a computer programmer, software engineer, or other similarly skilled worker, who, in the case of an employee who is compensated on an hourly basis, is compensated at a rate of not less than $27.63 an hour, and whose primary duty is one of the following:
The application of systems analysis techniques and procedures, including consulting with users, to determine hardware, software, or system functional specifications.
 
I think most OT law only applies to people making less than probably all engineers/developers
I know federal law is similar to that as well
 
user55340
2:45 PM
Computer professionals that make more than $27.63 in WI don't need to be paid OT differentials.
 
user55340
@GlenH7 I suspect it was more of "you know, if we paid them more than $27.63, we'd have to create another classification in the payroll system... and that would take too much time... just leave it like it is - the same for everyone."
 
@MichaelT I do wonder why that is a specific exemption though
 
user41796
@MichaelT I was trying to give them the benefit of the doubt....
 
user55340
@enderland Because programmers will do those crazy hours when there something interesting. Startups doing LONG hours isn't uncommon. If they had to pay the programmer who worked all night several days in a row even more...
 
@MichaelT Well yeah. But there are other fields like that too, our facilities people are here 10+ hours a day and I'm pretty sure are not getting paid overtime (not to mention certain job classifications are simply not eligible for overtime at my company, once you are a supervisor for example)
 
user55340
2:49 PM
facilities types typically belong to strong unions (or strong at the time that was written).
 
user41796
@enderland In some states, professional engineers are exempt from overtime pay by state law.
 
@MichaelT I mean the engineers, sorry
@GlenH7 yeah overtime is a mess around the USA
would it be weird to ask the people doing this 2 hour technical interview for a rough idea of what they want to ask about, prior to the interview (for an internal interview)? I'm not sure how that would be received but am planning on doing so
 
user41796
The argument with engineers is that they should be paid for the job not the hours worked. The theory being that it eliminates a potential conflict of interest on the engineer's part.
 
user41796
@enderland given that it's an internal interview, that wouldn't be too far from the ordinary
 
user55340
Part of the ironic bit is that if they just upped the cross the board pay to $28 and then did it as 40h with flex (and no OT differential), they'd probably still have quite a few people who had left because of the stress... and able to hire more...
 
2:53 PM
I miss overtime at 40.1. I actually need to plan my life if I want OT. :(
 
@GlenH7 Yeah that's what I figure, though the turn around is about 1 working day so hopefully they either have a good feel or get back to me before the end of the day today :)
@GlenH7 I feel bad working overtime somewhat since if I'm doing actual work (rather than meetinsg/etc) then I am pretty sure working overtime makes me worse and as a result I have to work more hours, resulting in more overtime
But man oh man is it hard to convince managers that "hours in seat" doesn't always result in higher overall productivity
 
user41796
There are quite a few studies from the past and somewhat recently that show how productivity takes a nose dive with OT
 
@GlenH7 studies only exist for manual labor types of work, not knowledge work
There is a ton of anecdotal evidence that it happens for knowledge work, too, though, but no real research. Some persuasive articles but nothing definitive
 
user41796
No, the ones I'm referring to are knowledge workers
 
46
Q: Does working over 40 hours a week makes you less productive?

aitchnyuA few articles claim that working more than 40 hours per week makes you less productive. Longer workweeks eventually make you less productive than 40-hour work weeks. From http://www.inc.com/geoffrey-james/stop-working-more-than-40-hours-a-week.html ..there's a century of research establishi...

You should add an answer - I burned all my rep adding a bounty and no one added an answer which has any research with respect to knowledge workers
 
user41796
3:06 PM
Can't find the link I was thinking of. I'll try looking for it again this afternoon
 
@GlenH7 I'm legitimately curious, I spent a inordinate amount of time researching this about a year ago and couldn't find anything excepting tons of well written and convincing opinions (with no data)
 
user41796
The one I'm thinking of referenced the issues at EA, and had a bit of a history about why the 40 hour week came about in the first place. A lot of the material in that Skeptics -> Salon article was similar but wasn't quite the article I was thinking of.
 
user41796
And I'm pretty sure Yourdon or Brooks touches upon it in Death March or Mythical Man Month.
 
Yeah, I found a lot of "this just doesn't make sense" - but finding research supporting that was hard
 
user55340
MMM doesn't deal with OT. Peopleware does though.
 
user41796
3:18 PM
Then I think it was Yourdon with Death March when he talks about OT
 
user41796
Or maybe I'm just making that all up. :-(
 
user55340
(looking up my copy...)
 
user55340
Peopleware: Overtime: 'disturbances as cause of, 41-42', 'myths, 15-16', 'side effects, 152-154', and 'unpaid 14-16'
 
user55340
20 search results for 'overtime' in Deathmarch.
 
Hmm, does this mean we need to do studies on knowledge workers and overtime?
 
3:21 PM
@Zeroth the trick is quantifying knowledge work into a measurable and comparable metric. "lines of code!"
Blue collar work is much easier to do this with
 
Good point. Maybe quality of output?
and of course there's the... whatever that effect is called where productivity immediately rises whenever there's a change in the workplace
 
user55340
@Zeroth How do you measure quality of output?
 
user55340
And is perfection what is needed?
 
user55340
> For example, even if management insists on large amounts of involuntary overtime during the project, you'll find that the team members are speidnging the evening hours and weekends (times when the high-level managers who imposed the overtime are virtually certain not to be present) catching up with personal phone calls, writing letters to their family, or sitting around the coffee machine shooting the breeze with one another.
 
3:27 PM
@MichaelT Because that never happens during the workday, ever... ;)
 
user55340
> In many cases, the biggest factors in motivation/demotivation will revolve around the dynamics of the overall team; ... But there are two specific issues that also have a significant impact on motivation which are usually under the manager's direct control: rewards and overtime.
 
user55340
This was part of the problem at Employer^^, rewards weren't even under the manager's control.
 
@MichaelT I think any financial reward isn't here for me either, but perks are definitely
 
@Zeroth which means every day workplaces should have a totally different set of rules and organization structures.
 
@JimmyHoffa enjoy:
5
A: Write a program that makes 2 + 2 = 5

FlonkHaskell I just love how you can throw anything at ghci and it totally rolls with it. λ> let 2+2=5 in 2+2 5

 
3:43 PM
@durron597 yeah, Haskell will take basically anything you give it as a definition.
Prelude> succ 1
2
Prelude> let succ 1 = 42 in succ 1
42
(succ = successor, like increment)
let bindings live in their own top level scope, so technically in their scope they can override any other bindings
which is why, when you define succ like that, it only has one match in it's definition -> "1", so given a different value it errors because it has no match for others.
Prelude> let succ 1 = 42 in succ 2
*** Exception: <interactive>:7:5-15: Non-exhaustive patterns in function succ
 
does "in" define the scope then, presumably?
 
@JimmyHoffa Just thought you'd enjoy that more than anything else
 
@durron597 yeah, is fun, I wouldn't have thought of it
 
4:04 PM
I think I'm going to take up the practice that doctor's offices have and start charging people when they schedule meetings with me and then fail to show up.
 
user41796
@Dr.Ibb I like to just decline their invites
 
@GlenH7 I'll just set mine to auto-decline from now on.
 
user41796
I don't know if Outlook will let you generate a filter like that. It would be awesome if it did.
 
We use Google calendar, and there is a "Labs" plugin that will let you do it.
Too bad you can't set a custom message/reason, though.
 
user55340
0
A: Write a program that makes 2 + 2 = 5

MichaelTJava Reflection is indeed the right way to go with abusing Java... but you need to go deeper than just tweaking some values. You need to change it even deeper than you can typically access. Note that this is designed for Java 6 with no funky parameters passed in on the JVM that would otherwise...

 
4:08 PM
@MichaelT that's pretty disgusting
 
user55340
Favorite outlook thing was setting a vacation message... and then creating a specific rule for specific people that instead of having "in case of emergency contact ${mgr phone number}" you instead have "in case of emergency contact ${co-worker number}"
 
user55340
So you're on vacation and that person sends an email to you (or the group)... in case of emergency... wait, that's my phone number!
 
@MichaelT Haha. Nice. "In case of emergency, YOU take care of it."
 
user55340
@durron597 yep. But its also the clean way to do it. I didn't like the "change the value of two" - thats boring. I changed the thing behind it.
 
@MichaelT shrug I like both answers. And I didn't change the value of two, I printed it in advance!
 
4:12 PM
Could you just overload the "+" operator so that if both values are 2 you then increment the return value by 1? Or is that a really stupid way to do that?
 
user55340
@Dr.Ibb Can't overload operators in Java.
 
@MichaelT Gotcha.
 
user55340
Though that would be a very appropriate thing to do in Ruby.
 
> Doing this in real code would make people very unhappy.
that's an understatement if I ever saw one
 
@enderland "git commit -m 'Refactored so that all cases of 2+2 = 5, because screw you, buddy.'"
 
4:16 PM
Feedbot, go home, you are drunk
 
user41796
@Oded I've noticed the double entries too
 
user55340
@enderland The thing is, those bugs would be rather hard to track down. 2 + 2 = 4. But when boxed its 5? And Integer.valueOf(4) == Integer.valueOf(5) returns true?
 
user41796
Our DNS server is having issues today, so I didn't know if that was part of it and just chose to ignore it
 
user55340
@Oded You can fix it!
 
@GlenH7 perhaps it is learning book-keeping
 
user41796
4:17 PM
@Oded It ought to know to have two feeds then
 
@MichaelT nah. Too busy breaking stuff.
 
somethign tells me that last check would not exactly be high on my list of things to check when debugging
"here, let me check if 4=5"
 
UniverseOutOfKilterException
 
Integer[] array = (Integer[]) c.get(cache);
fisherYatesShuffle(array);
 
@enderland You mean you don't write assert( if (4) it(shouldequal(5))) tests?
 
4:22 PM
The best thing about that one is that your boxing produces different results every time!
 
user55340
4:37 PM
@Oded still haven't fixed that bottom bar in the middle of the review page... ;-) (I know...)
 
The... bottom bar... review page... right. Um. On it. um. like. any moment.
 
user55340
 
user55340
2
Q: Bottom bar floating in middle of the page

MichaelTThe bottom bar (that black almost a straight line thing) is floating in the middle of the page on reviews. This may be a regression of: Footer line floats up too high in the main review page Line in UI goes under review tasks Image covers the review page Safari (7.0.3 (9537.75.14)): Chrome...

 
Ha. Nice one. I tend to leave design bugs to Jin. Might look at it on Monday
 
user55340
Here's something fun for some 'back in history' (pinging @GregHewgill because its aviation related and he might enjoy it too)...
 
user55340
4:48 PM
The Transcontinental Airway System was an early navigational aid deployed in the United States during the 1920s. History In 1923, the United States Congress funded money for a sequential lighted airway along the transcontinental airmail route. The lighted airway was proposed by NACA, and deployed by the Department of Commerce. It was managed by the Bureau of Standards Aeronautical Branch. The first segment built was between Chicago and Cheyenne. It was situated in the middle of the airmail route to enable aircraft to depart from either coast in the daytime, and reach the lighted airway...
 
user55340
Think about that... a lighted emergency airfield from NYC to SF about every 20 miles.
 
user55340
correction... beacons every 20 miles... airfields were a bit more distant for each other.
 
user55340
5:03 PM
 
@durron597 I'm interested to see how this project goes. This and self-driving electric cars.
 
 
1 hour later…
6:05 PM
@MichaelT at first glance I read "Transactional Airway System" which gave me pause thinking about how to apply atomicity, so if your on a layover and your second flight get's cancelled, does that mean you're automatically teleported back to the initial airport?
I want transactional days. At the end of the day I just get to say "Fuck this" and rollback to the last committed day.
 
@JimmyHoffa I can't tell you how many times while playing an RPG I wished real life had save points
 
6:28 PM
okay folks. (p.s. if this would actually make a good question i'll turn it into one)
talk to me about the Visitor pattern
consider a class with method DataHandler handleData(Data someData)
then if (Data instanceof FooData) handleFoo((FooData) data); else if (Data instanceof BarData) handleBar((BarData) data);
the visitor pattern fixes this awfulness, obviously
HOWEVER
why should the Data interface know anything about DataVisitors?
to me that's kind of like having a Pie have a giveToNeighbor method instead of Neighbor having a receiveFood method
i suppose because DataVisitor is also an interface, that can really be anything, it doesn't actually know much about the rest of the architecture of the system except "hey! people care about my concrete type!!"
 
user55340
Whee! My Java 2+2=5 has beaten Haskell answer! (16 vs 13)
 
@MichaelT Unfortunately on that thread 13 > 16 has been modified to evaluate to true.
2
 
@MichaelT oo oo I just had inspiration: ideone.com/fXbxzL
I wish I could suggest an edit only to the author of a post
 
user55340
6:55 PM
Got another one on evil Ruby tricks...
 
@MichaelT Do you like my ideone suggestion?
@MichaelT I didn't mean "paste a link to ideone", i meant "use a print method" to make the autoboxing happen in the method invocation instead of the explicit Integer.valueOf
 
user55340
Ahh! Fixed.
 
user55340
And yes, I do like the implicit boxing.
 
7:11 PM
@MichaelT I didn't want to do it in a comment because I hate PPCG comment spoilers
@MichaelT Err that doesn't work because PrintStream has an overload for all the primitive types
@MichaelT If you don't want a static method, using System.out.printf("%d", 2+2); will work also
 
user55340
I do like the printf better - its more innocuous as to what is happening.
 
Yah
@MichaelT I get obsessed with improving Java answers on PPCG. It nearly always loses to golfscript and brainfuck
 
user55340
@durron597 Its a wordy language...
 
user55340
you need to write some rail sometimes and see people go huh for that.
 
@MichaelT It's pretty aggravating. This thread was my crowning achievement in Java, and Ruby was half the chars and GolfScript was 1/3
1
A: Print the prime factorization of the greatest common divisor of two numbers

durron597Java - 184 175 This is inspired by @Geobits (and a little of @Tal's answer) answer, but enough of it is different that I decided to create my own answer. class G{public static void main(String[]a){for(Integer i=1,q,n=i.valueOf(a[0]),m=i.valueOf(a[1]);m>=++i;System.out.print(q>0?i+"^"+q+" ":""))...

 
user55340
 
user55340
@durron597 Need to learn some apl I see...
 
@MichaelT Actually I'll learn Piet first esolangs.org/wiki/Piet
 
7:44 PM
Hello any Ideas for this? :
0
Q: How I can paralelleize a for loop with an external variable?

user2284570I am having difficulties for parallelizing that part of code where new_text is of type unicode : for old, new in self.replacements: new_text = pywikibot.replaceExcept( new_text, old, new, self.excsInside, self.site) if new_text != entry.text: yield pywikibot.Page(self.site, entry...

 
Is it possible to write object-oriented wrappers around a non object-oriented library?

http://stackoverflow.com/questions/23961629/light-weight-java-game-librayry-lots-of-static#23961912
 
user55340
@user2284570 Have you checked in the Python SO room? (I'm not a pythonista... not sure if there are any that frequent this room)
 
user55340
@MxyL Its possible, but it is more complex and means that future refactorings are difficult. OO tends to imply some state in the object, but if you are connecting to a back-end non OO lib, that concept of state in the library doesn't exist. Trying to force it to be would be unnatural.
 
@MichaelT seems like the "technical interview" is going to be very non technical. heh
 
user55340
Honestly, technical interviews are "do they know what they are talking about" and "can they figure out some problems" - the "fit" is more important than the technical aspect... especially for internal candidates.
 
7:53 PM
@MichaelT Yes and nobody really replied to my question...
 
@user2284570 Wait two days and then create a bounty imo
 
@durron597 Nope, it need to be finished before Monday. I'm already doing savings for 50K. I want to start a year period bounty for an another question.
 
@MichaelT yeah, thats what the email I got back seems like
I kinda thing I'm overqualified to some extent
 
user55340
@user2284570 The question you are asking is deeper than the python knowledge that I have... or that I am aware of other people that frequent here have.
 
@MichaelT REALLY. -( ....
 
7:58 PM
@user2284570 believe it or not the ppcg guys are really good at python generally
@user2284570 though i'm not sure they'd respond well to someone dumping an SO question in their chatroom :-/
 
@durron597 What does "ppcg" stand for?
 
user55340
@enderland remember to ask for a new desk: mwelab.com/index.php/en/products/emperor-1510
 
@user2284570 programming puzzles & code golf
 
user55340
And if they don't go for that one, ask for mwelab.com/index.php/en/products/emperor-LX instead
 
@MichaelT thanks, that makes sense.
 
8:01 PM
@MichaelT lol I had sent that to our ergo guy asking if I could get one
I'd gotten a good reaction out of him ;)
 
@durron597 Do you think it worth to ask on one of their room?
 
user55340
 
user55340
.. I rocked that game.
 
I'm trying to decide if 12k lines of code is really that much
I don't think it is that much at all, though it's a lot
 
user41796
8:18 PM
@enderland It's all relative
 
user41796
If that's the biggest program you've ever worked on.... I'd say you've only worked on small programs.
 
user41796
But the worst main() function I ever saw in C was several K lines long.
 
@enderland define "that much" - are you curious if it's a lot or too little for a single dev? A lot for a piece of software in general? A lot for ??
 
user55340
... I've been given methods that were 12k lines of code...
 
it's nothing in the space of enterprise software, it's a decent bit for a single dev to have made in the course of 3-6 months
 
8:20 PM
@JimmyHoffa I have no real standard of comparison, realistically
 
user41796
@MichaelT you win.
 
user55340
(that sound you hear in the background is me crying...)
 
@MichaelT dude where do you play RftG online?
 
@enderland You must have a comparison if you're curious about it being a "lot" - what is the purpose of your measuring it?
 
I just counted it for a coworker
 
user55340
8:21 PM
 
user55340
Note, thats me vs 2x AIs... but they're really good AIs.
 
user41796
@enderland recent project?
 
@JimmyHoffa total curiousity, no real practical purpose at all ha
@GlenH7 yeah
 
@enderland oh. Well 12kloc is really nothing. Depending on the dev, most could probably generate that in greenfield in the course of 3-6 months like I said.
 
@MichaelT dude you just made & ruined my weekend simultaneously :)
 
8:22 PM
many sooner, hell I can generate 12kloc in ~2-3 weeks if I really know what I'm putting together...
 
also VBA is shit for formatting a SQL query string since you have to wrap each line in "
 
but average is probably 3-6 months if I had to guess. Though I'm thinking C#, other languages have far more or far less
 
user55340
Ruined? I thought thats a made...
 
user55340
One of the things its really good for is just playing... being comfortable with the game. There can be so much going on in it that its not practical for someone to learn from scratch.
 
@MichaelT fixed
 
8:23 PM
@JimmyHoffa Yeah, idk, one of the main benefits of my project is going to be inspiring an official solution, so at some point in the future I'm going to basically go through every functionality with a coworker and document everything - thatll be the real "how much code" test hahah
 
user55340
I've read a number of BGG forum posts where people were "yea, I got the game, tried it, couldn't figure it out, set it aside... played rftgai and then figure it out... now its a standard game"
 
@MichaelT I played San Juan many times before RftG so it was easy
 
user55340
@durron597 I assume you're familiar with brettspielwelt.de ? and yucata.de/en and boardspace.net ?
 
I have not played on yucata.de yet but I've had many recommendations to do so
This is the first time I've heard of boardspace.net, but I don't really frequent BGG, so I'm not surprised I've missed it
Hm. Looks like I should play 3 more games of SanJuan ;)
 
8:49 PM
meeting, ttyl all
 
@durron597 friday afternoon meetings? that.... rough
 
9:45 PM
-2
A: Write biSp in point-free form using as few terms as possible

TimtechTI-BASIC, 8 terms I think I understand the question :) PROGRAM:BISP :OpenLib(HDEF :F (GX),(HY :ExecLib

No, you don't understand the question. It can't be answered in a purely imperative language. — Peter Taylor 13 hours ago
Pretty funny code golf there, got a bunch of close votes as unclear because people read it and are like "Uhh.. what's B? Combinator? What the hell are you talking about?"
 
Not even going to attempt to touch that one. -whoosh-
 
@Dr.Ibb I would have if somebody didn't already do an exhaustive test to identify the most minimal combinator possible (granted I don't know their exhaustive technique, they could have missed a path)
 
I mainly say that because I have no idea what any of that means. Haha.
 
@Dr.Ibb yeah, that's what everyone's saying in the comments, and why people were close voting it
I like that one answer in TI-Basic someone wrote though
"I think I get it <some random code that couldn't have less to do with the actual question>"
 
Yeah, I err on the side of "I have no idea what the hell I'm doing" instead of "I think I'm right so let me spit some code out there"
 
10:02 PM
@Dr.Ibb to be certain, it's actually a very simple golf. All you really need is something that reduces to: biSp g h f x y = f (g x) (h y)
or rather biSp = flip . ((flip . ((.) .)) .) . flip (.) which is C B ((C B ((B) B)) B) B C (B) <-- wayy more terms than necessary there
 
user55340
@durron597 IIRC, the author of BoardSpace is active on the SE network... but I can't seem to recall what his account is.
 
@Dr.Ibb easy, right?
 
@JimmyHoffa Uhhhh... If you say so.
 
@Dr.Ibb here, B and C are defined here, they're super simple:
The B, C, K, W system is a variant of combinatory logic that takes as primitive the combinators B, C, K, and W. This system was discovered by Haskell Curry in his doctoral thesis Grundlagen der kombinatorischen Logik, whose results are set out in Curry (1930). The combinators are defined as follows: * B x y z = x (y z) * C x y z = x z y * K x y = x * W x y = x y y Intuitively, * B x y is the composition of the arguments x and y; * C x y z swaps the arguments y and z; * K x y discards the argument y; * W x y duplicates the argument y. In recent decades, the SKI combinator calculus, with ...
B x y z = x (y z)
C x y z = x z y
@Dr.Ibb didn't you say you had like a philos degree or something?
 
@JimmyHoffa Yes. BS in Philosophy.
It's been awhile since I took formal logic.
 
10:07 PM
this stuff actually shouldn't be a stretch for you if so, truly. It's extra abstract shit
 
But now reading through that article It's making a bit more sense.
 
it's really simple: Combinators have a single operation: Function application. That's it.
B x y z = x (y z) means B is a function that takes 3 terms, apply the second to the third, and the first to the result.

3 terms: x y z
apply the second to the third:
y z
apply the first to the result of that:
x (y z)
 
So would you do something like succ (succ 5) ?
 
@Dr.Ibb sure, that would be B succ succ 5
@Dr.Ibb you remember math at all, remember that dot operator thing which means compose two functions that was like a period floating in mid-air?
 
Yeah, I remember that from Trigonmetry. f • g or whatever
 
10:12 PM
@Dr.Ibb BINGO!
that's B.
 
Ah, okay.
 
(succ • succ) 5
or
B succ succ 5
 
I mean, formally speaking it reminds of saying: If A then B, if B then C, therefore if A then C.
 
@Dr.Ibb that's just the B combinator. what does C / 1 2 reduce to?
 
/ 2 1?
 
10:15 PM
C x y z = x z y

C takes 3 terms: x y z
C applies the first term to the other two: x _ _
C reverses the order of the second and third terms being handed to the first: x z y
@Dr.Ibb bingo
@Dr.Ibb so, 2, as opposed to / 1 2 which is 0.5 -> in Haskell the function is called "flip" for this reason - it takes a function and returns a new function which executes the original one with the terms flipped
 
Ah, okay.
So if you had subtract 5 6 and then ran flip on it, it would return -1
 
@Dr.Ibb yes
Now that you see how to read and reduce a combinator, you would be able to derive some combinators that reduce to: biSp g h f x y = f (g x) (h y)
Combinator Calculus is very simple, just arcane and so people usually ignore it as likely complex
 
psr
@JimmyHoffa Voting to close 30% of @JimmyHoffa 's chat comments as "unclear what you're talking about".
3
 
@psr Seconded because I often confuse "monads" with "gonads"
 
@Dr.Ibb you mean buckets
 
10:22 PM
@JimmyHoffa Flavonoids, specifically.
Combinator Calculus is way too much for my brain at 3:30pm on a Friday.
 
@Dr.Ibb That's ok. At some point tonight it's going to pop into your head and you're going to be like "O I think I figured it out!"
 
@JimmyHoffa Yeah, probably.
 
Somewhere after your 4th drink
 
Brings back memories of doing countering and symbolic composition in my formal logic days.
And truth tables (which I still use to this day).
 
@MichaelT thanks by the way, I'm stuck watching all those true facts videos. Watched a few with my wife last night, the chameleon's my favorite so far. They're all hilarious though.
 
user55340
10:26 PM
Did you watch the Tapier one?
 
@Dr.Ibb not stupid. Visually representing stuff when it's complex and you're trying to make sure it's right is helpful. Whenever I'm working with discrete data I've a habit of diagramming timelines to make sure I get it all correct and don't have fencepost bugs and such
@Dr.Ibb I figured this stuff isn't a far stretch from some of what you've done in your degree program, wouldn't have actually bothered other than to annoy others with the explanations heh
@MichaelT Not yet...
 
@JimmyHoffa I appreciate the explanations. I'm always interested in learning about new/different things. Sometimes my brain just doesn't follow along with that desire.
Now I'm watching those videos..
The Mantis Shrimp one is hilarious.
 
user55340
Sam spotted...
 
user55340
62
Q: How can I make sure that I'm actually learning how to program rather than simply learning the details of a language?

RyanI often hear that a real programmer can easily learn any language within a week. Languages are just tools for getting things done, I'm told. Programming is the ultimate skill that must be learned and mastered. How can I make sure that I'm actually learning how to program rather than simply learn...

 
user55340
(@JimmyHoffa you've got the top one there...)
 
10:33 PM
whoa I might actually get arsed finally!
will probably just bring down my score. I don't know if my answer's right, definitely debatable.
also @MichaelT your answer is pretty great
 
user55340
I'm quite pleased with that one.
 
@Ampt if I get arsed - you are totally going over 3k. NYAHHH!
@MichaelT yeah, it's a great perspective on how the mind of a coder really looks at code
 
user55340
@JimmyHoffa btw, cat or dog?
 
@MichaelT ....zah?
 
user55340
 
user55340
10:36 PM
 
user55340
Btw, the dog one's audio isn't exactly safe for work...
 
@MichaelT I'll watch those tonight and let you know... I'ma be gone shortly.
 
@JimmyHoffa Your answer is pretty damn good. Coming from languages like JavaScript and C and trying to learn Scala and Haskell was a big "Holy crap I am not prepared for this" moment.
 
@Dr.Ibb aye, I'm still partial to @Telastyn's and @SK-Logic's arguments in comments that lambda calculus really is a core-cross-cutting-fundamental bit you can see pervasive throughout all languages and paradigms. In a sense.
@SK-logic I +1 your comment because frankly I'm not sure. The fact that there are things as disparate as Blub and fractran, or even in similar languages: Going from SML to fixing a bug caused by improper universal quantification in Haskell betrays many languages are more fundamentally divergent than they appear. At the same time I don't disagree with you that there are some fundamental concepts like term rewriting that marry many many things which would otherwise appear divergent. I'm not convinced it's a compact list, but +1 because people should read your comment and think about it. — Jimmy Hoffa Oct 10 '13 at 19:44
I stick with what I said there, the whole answer basically says there is too little commonality, but is that true? I really don't know, didn't then and don't know. I believe it's likely but maybe if I look closely enough I'll find there's not so many of those pervasive concepts
either way, I took a stance in my answer and argued for it well, so got that going for me
I'd still argue that the very fundamental set of concepts is pretty compact. Once you understand term rewriting, you have a tool for defining lambda calculus, SK calculus, Turing machine, Markov algorithm, etc. A small number of truly fundamental ideas can cover most of the computer science. But, of course, experience is required to be able to see the simple patterns in seemingly complex things. — SK-logic Oct 10 '13 at 18:32
In mathematics, computer science, and logic, rewriting covers a wide range of (potentially non-deterministic) methods of replacing subterms of a formula with other terms. What is considered are rewriting systems (also known as rewrite systems or reduction systems). In their most basic form, they consist of a set of objects, plus relations on how to transform those objects. Rewriting can be non-deterministic. One rule to rewrite a term could be applied in many different ways to that term, or more than one rule could be applicable. Rewriting systems then do not provide an algorithm for chan...
^-- a concept you can see clearly in the combinator stuff I was talking of earlier
^-- math, not Haskell
 
user55340
11:36 PM
o_O
 
user55340
 

« first day (1365 days earlier)      last day (3602 days later) »